/* Antony Butts — Futures away from the mean. No external assets or font downloads. */
:root{--paper:#f6f4ed;--ink:#1c211d;--muted:#65695f;--line:#d9dacf;--acid:#e7f66c;--forest:#26382c;--lime:#e4efaa;--lavender:#d9d4f1;--blue:#cddfe5;--orange:#f1bd98;--pink:#edcbd0;--cream:#e9e5d6;--radius:3px;--gutter:clamp(22px,5.4vw,88px);--max:1450px;--sans:Arial,Helvetica,sans-serif;--serif:Georgia,'Times New Roman',serif;--mono:'SFMono-Regular',Consolas,'Liberation Mono',monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}::selection{background:var(--acid);color:var(--ink)}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #658309;outline-offset:5px}button:disabled{cursor:default}button{border-radius:0}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:1.05;font-weight:500}h1,h2{letter-spacing:-.052em}h3{letter-spacing:-.032em}p+p{margin-top:1em}img,svg{max-width:100%;display:block}main{min-height:65vh}main:focus{outline:none}main [hidden], [hidden]{display:none!important}.wrap{max-width:var(--max);margin:auto;padding-left:var(--gutter);padding-right:var(--gutter)}.skip{position:fixed;top:-100px;left:20px;padding:12px 20px;background:var(--acid);z-index:200}.skip:focus{top:12px}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;line-height:1.5}.kicker{font-size:13px;line-height:1.45}.muted{color:var(--muted)}.serif{font-family:var(--serif);font-style:italic;letter-spacing:-.04em}.arrow{display:inline-block;line-height:1;transition:transform .2s ease}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:14px;font-weight:600;border-bottom:1px solid;padding-bottom:5px}.text-link:hover .arrow{transform:translate(3px,-3px)}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:15px 21px;background:var(--ink);border:1px solid var(--ink);color:var(--paper);font-size:13px;font-weight:600;line-height:1.4;min-height:51px}.btn:hover{background:var(--forest)}.btn:hover .arrow{transform:translate(3px,-3px)}.btn-acid{background:var(--acid);border-color:var(--acid);color:var(--ink)}.btn-acid:hover{background:#f0ff89}.btn-outline{color:var(--ink);background:transparent;border-color:var(--line)}.btn-outline:hover{background:var(--cream);color:var(--ink)}.btn-small{min-height:40px;padding:10px 15px;font-size:12px}.actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.section{padding-top:90px;padding-bottom:90px;border-top:1px solid var(--line)}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:36px}.section-head .eyebrow{margin-bottom:18px}.section-head h2{font-size:clamp(34px,4.1vw,60px);max-width:900px}.section-head>p{max-width:330px;color:var(--muted);font-size:15px}.section-head>.text-link{flex:none}.lede{font-size:clamp(18px,1.5vw,23px);line-height:1.5;max-width:700px}.pill{display:inline-flex;align-items:center;gap:7px;border:1px solid currentColor;border-radius:30px;padding:5px 10px;font-family:var(--mono);font-size:10px;letter-spacing:.015em;line-height:1.3}.pill .dot{width:5px;height:5px;display:block;background:currentColor;border-radius:50%}.tags{display:flex;flex-wrap:wrap;gap:7px}.tag{font-size:10px;line-height:1.4;border:1px solid var(--line);border-radius:40px;padding:6px 10px;transition:background .2s}.tag:hover{background:var(--cream)}.color-lime{background:var(--lime)}.color-lavender{background:var(--lavender)}.color-blue{background:var(--blue)}.color-orange{background:var(--orange)}.color-pink{background:var(--pink)}.color-cream{background:var(--cream)}
/* Navigation */
.header{position:sticky;top:0;z-index:60;background:rgba(246,244,237,.96);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.header-inner{height:83px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;flex-direction:column;gap:3px;line-height:1}.brand-name{font-size:20px;font-weight:700;letter-spacing:-.06em}.brand-sub{font-family:var(--mono);font-size:9px;text-transform:uppercase;letter-spacing:.065em;color:var(--muted)}.desktop-nav{display:flex;align-items:center;gap:27px}.desktop-nav>a:not(.btn){font-size:12px;padding:10px 0;position:relative}.desktop-nav>a:not(.btn)::after{content:'';position:absolute;left:0;bottom:3px;width:0;height:2px;background:var(--ink);transition:width .2s}.desktop-nav>a:hover::after,.desktop-nav>a[aria-current]::after{width:100%}.desktop-nav .btn{margin-left:7px}.nav-toggle{display:none;background:none;border:1px solid var(--line);padding:10px 13px;font-size:12px}.mobile-nav{display:none}
/* Home hero */
.hero{padding-top:58px;padding-bottom:60px;display:grid;grid-template-columns:1.15fr 1fr;gap:60px;align-items:center}.hero-copy .eyebrow{display:flex;align-items:center;gap:10px}.hero-copy .eyebrow:before{content:'';width:7px;height:7px;border-radius:50%;background:#778c26}.hero h1{font-size:clamp(57px,6.85vw,103px);line-height:.94;letter-spacing:-.068em;margin:24px 0 28px;max-width:720px}.hero h1 em{font-family:var(--serif);font-weight:400;letter-spacing:-.065em}.hero-copy .lede{font-size:18px;max-width:470px}.hero-copy .actions{margin-top:29px}.hero-footnote{margin-top:22px;font-size:11px;color:var(--muted);max-width:425px}.hero-lab{background:var(--forest);color:var(--paper);padding:26px 28px 20px;min-height:506px;position:relative;overflow:hidden;border-radius:var(--radius)}.lab-head{display:flex;justify-content:space-between;align-items:center;gap:12px;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.lab-head .lab-dot{width:6px;height:6px;border-radius:50%;background:var(--acid);display:inline-block;margin-right:6px}.lab-main{padding-top:30px}.lab-expected{display:flex;align-items:center;gap:14px;font-size:12px;color:#b9c7b8}.lab-expected:before{content:'';width:19px;height:1px;background:#90a38f}.lab-poster{margin:21px 0 23px 12px;padding:20px 24px 18px;color:var(--ink);background:var(--acid);transform:rotate(-3deg);box-shadow:7px 10px 0 rgba(0,0,0,.18);position:relative;min-height:249px;display:flex;flex-direction:column;justify-content:space-between;transition:background .3s}.lab-poster::before{content:'';position:absolute;top:0;right:26px;width:27px;height:11px;background:var(--forest);border-radius:0 0 20px 20px}.lab-poster .eyebrow{font-size:10px}.lab-poster h2{font-size:clamp(42px,4.65vw,69px);line-height:.95;letter-spacing:-.06em;text-transform:uppercase;font-weight:700;margin:16px 0 20px;white-space:pre-line;max-width:100%}.lab-ticket{display:flex;justify-content:space-between;align-items:center;border-top:1px dashed rgba(28,33,29,.55);padding-top:10px;font-size:10px;font-family:var(--mono);gap:10px}.lab-story{font-size:12px;max-width:330px;line-height:1.5;min-height:36px;color:#dee7da}.lab-switch{display:flex;gap:6px;margin-top:22px}.lab-switch button{font-family:var(--mono);font-size:10px;flex:1;padding:10px 8px;color:var(--paper);background:none;border:1px solid #5a6d5d}.lab-switch button[aria-pressed=true]{background:var(--paper);color:var(--ink);border-color:var(--paper)}.proof-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.proof-inner{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;align-items:center;min-height:88px;gap:24px}.proof-inner>div{padding-left:24px;border-left:1px solid var(--line)}.proof-inner>div:first-child{padding-left:0;border:0}.proof-inner strong{display:block;font-size:14px;font-weight:600;letter-spacing:-.02em}.proof-inner span{display:block;font-size:11px;color:var(--muted);margin-top:4px}.intro-section{display:grid;grid-template-columns:.7fr 2fr;gap:70px;padding-top:80px;padding-bottom:82px}.intro-section .eyebrow{padding-top:10px;max-width:150px}.intro-section h2{font-size:clamp(28px,3.3vw,49px);line-height:1.16}.intro-section p{max-width:820px;margin-top:20px;color:var(--muted);font-size:16px}.intro-section .text-link{margin-top:24px;color:var(--ink)}
/* Cards */
.case-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 22px}.case-card{min-width:0;position:relative}.case-art{min-height:257px;padding:22px;position:relative;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;border:1px solid rgba(28,33,29,.04);transition:transform .2s}.case-card:hover .case-art{transform:translateY(-4px)}.case-art:after{content:'↗';position:absolute;right:19px;bottom:17px;font-size:25px;line-height:1}.art-meta{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:9px;text-transform:uppercase;letter-spacing:.055em;line-height:1.4;gap:10px}.art-meta .art-mark{width:16px;height:16px;border:1px solid;border-radius:50%;position:relative;flex-shrink:0}.art-meta .art-mark:after{content:'';position:absolute;width:6px;height:6px;background:currentColor;border-radius:50%;left:4px;top:4px}.art-type{white-space:pre-line;text-transform:uppercase;font-weight:700;font-size:clamp(30px,3vw,46px);letter-spacing:-.055em;line-height:.97;padding:21px 0 28px;position:relative;z-index:1;overflow-wrap:normal}.case-art .art-bottom{font-family:var(--mono);font-size:9px;text-transform:uppercase;letter-spacing:.05em;border-top:1px solid rgba(28,33,29,.27);padding-top:10px;max-width:85%}.case-card h3{font-size:21px;margin:16px 0 6px;line-height:1.13}.case-card p{font-size:13px;line-height:1.5;color:var(--muted);margin-bottom:12px}.case-card .tags{margin-top:14px}.case-card a.card-main{display:block}.selected-grid .case-card:nth-child(2) .case-art{background:var(--lavender)}.section-note{display:flex;justify-content:space-between;gap:25px;margin-top:30px;color:var(--muted);font-size:12px}.section-note>p{max-width:600px}.featured-world{background:var(--forest);color:var(--paper);padding:64px 0 70px}.featured-world .eyebrow{color:#becdbb}.featured-world .section-head h2{max-width:870px}.featured-world .section-head p{color:#c1cdbf}.featured-world .text-link{color:var(--acid)}
/* Generative worldbuilding / interactive steps */
.world-demo{display:grid;grid-template-columns:.72fr 1.28fr;gap:28px;margin-top:38px}.world-stepper{display:flex;flex-direction:column}.step-button{background:none;border:0;border-top:1px solid #526655;color:var(--paper);text-align:left;padding:18px 0;display:grid;grid-template-columns:30px 1fr 15px;align-items:center;font-size:14px;gap:10px}.step-button:last-child{border-bottom:1px solid #526655}.step-button .step-num{font-family:var(--mono);font-size:10px;color:#bbccb7}.step-button[aria-selected=true]{color:var(--acid)}.step-button[aria-selected=true] .step-num{color:var(--acid)}.step-button[aria-selected=true] .step-indicator{transform:rotate(-45deg)}.world-stage{padding:32px 36px;background:var(--acid);color:var(--ink);min-height:310px;display:flex;flex-direction:column;justify-content:space-between}.world-stage h3{font-size:clamp(28px,3.4vw,49px);max-width:600px;line-height:1.07;margin:20px 0}.world-stage p{font-size:16px;max-width:580px}.world-stage .stage-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:25px;border-top:1px solid #bac75c;padding-top:15px}.stage-footer .text-link{font-size:12px;color:var(--ink)}.stage-progress{display:flex;gap:5px}.stage-progress i{display:block;width:22px;height:3px;background:#bac75c}.stage-progress i.active{background:var(--ink)}
/* Hiring selector */
.capability-layout{display:grid;grid-template-columns:1fr 1.35fr;border:1px solid var(--line)}.capability-tabs{border-right:1px solid var(--line)}.cap-tab{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:19px 25px;text-align:left;background:transparent;border:0;border-bottom:1px solid var(--line);font-size:15px}.cap-tab:last-child{border-bottom:0}.cap-tab[aria-selected=true]{background:var(--ink);color:var(--paper)}.cap-tab:hover:not([aria-selected=true]){background:var(--cream)}.cap-panel{padding:36px 39px;display:flex;flex-direction:column;justify-content:center;background:#eeece3}.cap-panel .eyebrow{color:var(--muted)}.cap-panel h3{font-size:38px;margin:17px 0 20px;line-height:1.09}.cap-panel p{font-size:15px;line-height:1.65;max-width:620px}.cap-example{border-left:2px solid var(--ink);margin:22px 0;padding:0 0 0 17px;font-family:var(--serif);font-size:20px;line-height:1.5}.mini-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}.mini-links a{font-size:11px;padding:7px 10px;border:1px solid #b7b9ac}.mini-links a:hover{background:var(--acid)}
/* Paradigms */
.paradigm-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;border:1px solid var(--line);background:var(--line)}.paradigm-card{padding:27px 25px 24px;background:var(--paper);display:flex;flex-direction:column;min-height:235px;transition:background .2s}.paradigm-card:hover{background:var(--cream)}.paradigm-card:first-child{background:var(--lime)}.paradigm-card .eyebrow{display:flex;justify-content:space-between;color:var(--muted)}.paradigm-card h3{font-size:28px;margin:24px 0 12px;line-height:1.05}.paradigm-card p{font-size:13px;color:var(--muted);line-height:1.5;margin-bottom:20px}.paradigm-card .paradigm-bottom{margin-top:auto;display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:10px}.connection-note{display:grid;grid-template-columns:1fr 2fr;gap:50px;margin-top:40px;padding-top:30px;border-top:1px solid var(--line)}.connection-note h3{font-size:23px}.connection-note p{font-size:15px;color:var(--muted)}
/* Proof and other routes */
.proof-feature{display:grid;grid-template-columns:1fr 1.08fr;gap:65px;align-items:center}.proof-visual{background:var(--ink);color:var(--paper);padding:28px;min-height:345px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.proof-visual .eyebrow{color:#b9c1b6}.proof-visual .proof-title{font-size:clamp(45px,4.7vw,70px);font-weight:700;letter-spacing:-.055em;line-height:.96;max-width:400px;margin:27px 0}.proof-visual .proof-footer{border-top:1px solid #53604f;padding-top:16px;display:flex;justify-content:space-between;gap:15px;font-size:11px;color:var(--acid)}.proof-copy h2{font-size:clamp(33px,3.3vw,48px);line-height:1.05;margin:18px 0 22px}.proof-copy p{font-size:16px;color:var(--muted);max-width:590px}.proof-copy .text-link{margin-top:26px}.route-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.route-card{padding:34px;background:var(--cream);display:flex;flex-direction:column;min-height:264px}.route-card:nth-child(2){background:var(--lavender)}.route-card h3{font-size:37px;margin:24px 0 14px}.route-card p{font-size:15px;color:#53584d;max-width:430px}.route-card .text-link{align-self:flex-start;margin-top:27px}
/* General page headings */
.page-head{padding-top:58px;padding-bottom:57px}.page-head .eyebrow{color:var(--muted);margin-bottom:24px}.page-head h1{font-size:clamp(45px,6.2vw,91px);line-height:.98;max-width:1100px}.page-head .lede{margin-top:27px;max-width:800px}.page-head .actions{margin-top:27px}.breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:9px;font-family:var(--mono);font-size:10px;color:var(--muted);margin-bottom:28px;line-height:1.5}.breadcrumb a:hover{text-decoration:underline}.page-summary{padding-top:30px;padding-bottom:30px;border-top:1px solid var(--line);display:flex;align-items:center;gap:40px}.page-summary p{font-size:15px;color:var(--muted);max-width:840px}.page-summary .eyebrow{flex:none}.tabs-bar{display:flex;gap:28px;border-bottom:1px solid var(--line);margin-bottom:26px}.tabs-bar a{padding:12px 0;font-size:13px;border-bottom:2px solid transparent}.tabs-bar a:hover,.tabs-bar a.active{border-color:var(--ink)}
/* Catalogue */
.catalog-tools{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:15px;margin:0 0 17px}.field-small label{display:block;font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px}.field-small input,.field-small select{width:100%;height:48px;border:1px solid #c7c9ba;border-radius:0;background:var(--paper);padding:12px 13px;font-size:13px;min-width:0}.catalog-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:30px;font-family:var(--mono);font-size:10px;color:var(--muted)}.reset-filters{padding:4px 0;background:none;border:0;border-bottom:1px solid;font-size:11px}.catalog-actions{display:flex;justify-content:center;margin-top:40px}.empty-state{padding:50px 20px;text-align:center;border:1px solid var(--line);background:var(--cream)}.empty-state h3{font-size:26px;margin-bottom:12px}.empty-state p{font-size:14px;color:var(--muted)}
/* Scenario detail */
.case-hero{padding-top:42px;padding-bottom:55px}.case-head{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;align-items:center}.case-head-copy h1{font-size:clamp(43px,5.2vw,77px);line-height:1.01;margin:21px 0 23px;overflow-wrap:break-word}.case-head-copy .case-deck{font-family:var(--serif);font-size:clamp(23px,2.3vw,33px);line-height:1.3;margin-bottom:25px;max-width:580px}.case-head-copy .tags{margin-top:24px}.case-head .case-art{min-height:355px;padding:27px}.case-head .art-type{font-size:clamp(42px,4.6vw,67px)}.case-head .case-art::after{display:none}.reversal{display:grid;grid-template-columns:1fr 44px 1fr;align-items:center;gap:28px;padding-top:33px;padding-bottom:35px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.reversal .eyebrow{color:var(--muted);margin-bottom:10px;font-size:9px}.reversal p{font-size:21px;letter-spacing:-.03em;line-height:1.22}.reversal .old p{color:#727669}.reversal .turn-arrow{font-size:29px}.case-content{display:grid;grid-template-columns:.7fr 2fr;gap:70px;padding-top:58px;padding-bottom:65px}.case-content aside .eyebrow{color:var(--muted);margin-bottom:19px}.case-content aside p{font-size:13px;color:var(--muted);max-width:240px;line-height:1.6}.case-content aside .text-link{font-size:12px;margin-top:22px}.prose{max-width:785px;font-size:18px;line-height:1.8}.prose p+p{margin-top:1.25em}.prose h2{font-size:35px;margin:0 0 25px}.prose h3{font-size:25px;margin:34px 0 16px}.prose .quote{font-family:var(--serif);font-size:clamp(25px,2.65vw,38px);line-height:1.3;margin:36px 0;border-left:3px solid var(--ink);padding:4px 0 4px 25px;letter-spacing:-.025em}.headline-block{padding:30px;background:var(--cream);margin:35px 0}.headline-block .eyebrow{margin-bottom:15px;font-size:9px}.headline-block p{font-family:var(--serif);font-size:29px;line-height:1.24}.story-excerpt{padding:34px 36px;margin-top:35px;background:#eeece3}.story-excerpt h3{font-size:31px;margin:15px 0 25px}.story-excerpt p{font-family:var(--serif);font-size:20px;line-height:1.65}.story-excerpt p+p{margin-top:1em}.story-excerpt .eyebrow{font-size:10px}.story-excerpt summary{font-family:var(--mono);font-size:11px;cursor:pointer;margin-top:23px;border-top:1px solid var(--line);padding-top:16px}.story-excerpt .story-full{padding-top:17px}.application-strip{padding:27px 32px;border:1px solid var(--line);margin-top:35px}.application-strip .eyebrow{margin-bottom:17px}.application-strip .tags .tag{background:var(--paper);font-size:11px}.case-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:25px;padding-bottom:25px;border-top:1px solid var(--line)}.case-nav a{font-size:13px}.paradigm-intro{display:grid;grid-template-columns:.7fr 2fr;gap:70px;margin-top:32px}.paradigm-intro .prose{font-size:18px}.paradigm-band{padding:35px;border:1px solid var(--line);margin-bottom:40px}.paradigm-band h2{font-size:33px;margin:15px 0}.paradigm-band .tags{margin-top:20px}.connections-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:32px 0}.connection-item{border:1px solid var(--line);padding:19px 16px;background:var(--paper);position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:18px;min-height:132px}.connection-item strong{font-weight:500;font-size:17px;letter-spacing:-.02em;line-height:1.2}.connection-item span{font-size:10px;color:var(--muted)}.connection-item:hover{background:var(--lime)}.connection-item:after{content:'↗';position:absolute;right:12px;bottom:11px;font-size:16px}
/* Work together */
.engagement-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.engagement{padding:27px 23px;border:1px solid var(--line);display:flex;flex-direction:column}.engagement .eyebrow{color:var(--muted)}.engagement h3{font-size:26px;margin:23px 0 16px;line-height:1.06}.engagement p{font-size:14px;line-height:1.65;color:var(--muted);margin-bottom:23px}.engagement .text-link{margin-top:auto;font-size:11px;align-self:flex-start;gap:10px}.method-list{counter-reset:method;border-top:1px solid var(--line)}.method-row{display:grid;grid-template-columns:60px .8fr 1.3fr;gap:25px;padding:29px 0;border-bottom:1px solid var(--line);align-items:start}.method-row:before{counter-increment:method;content:'0' counter(method);font-family:var(--mono);font-size:10px;margin-top:5px;color:var(--muted)}.method-row h3{font-size:26px;line-height:1.15}.method-row p{font-size:15px;line-height:1.65;color:var(--muted)}.method-row p a{text-decoration:underline;text-underline-offset:3px}.wide-callout{padding:35px;background:var(--acid);margin-top:35px}.wide-callout h3{font-size:28px;margin-bottom:15px}.wide-callout p{font-size:16px;max-width:900px}.wide-callout .text-link{margin-top:24px}.workshop-day{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:40px}.workshop-half{border:1px solid var(--line);padding:32px}.workshop-half h3{font-size:30px;margin:18px 0}.workshop-half p{font-size:15px;line-height:1.7;color:var(--muted)}.workshop-half ul{padding-left:19px;margin:23px 0 0;display:grid;gap:13px;font-size:14px;line-height:1.6}
/* Films & about */
.film-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px 26px}.film-card .case-art{min-height:330px}.film-card .art-type{font-size:clamp(34px,4vw,57px)}.film-card h3{font-size:27px;margin-top:19px;line-height:1.1}.film-card .film-role{font-family:var(--mono);font-size:9px;text-transform:uppercase;color:var(--muted);margin:10px 0 12px;line-height:1.65;letter-spacing:.02em}.film-card .film-strap{font-size:15px;color:var(--muted);max-width:580px;margin-bottom:14px}.film-links{display:flex;flex-wrap:wrap;gap:10px}.film-links .text-link{font-size:11px;gap:10px}.film-recognition{font-size:12px;border-left:2px solid;padding-left:15px;margin-top:20px;line-height:1.6}.about-layout{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:start}.about-layout .prose{font-size:20px}.bio-card{padding:30px;background:var(--ink);color:var(--paper);position:sticky;top:115px}.bio-card h2{font-size:48px;margin:26px 0}.bio-card p{font-size:14px;color:#c8d2c2}.bio-line{border-top:1px solid #59644f;margin-top:24px;padding-top:18px}.bio-line strong{display:block;font-size:21px;margin-bottom:6px}.bio-line span{font-size:12px;color:#c8d2c2}.record-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.record-card{border-top:1px solid var(--ink);padding-top:23px}.record-card h3{font-size:25px;margin:18px 0}.record-card p{font-size:14px;color:var(--muted);line-height:1.7}.record-card .text-link{font-size:12px;margin-top:25px}.award-list{display:grid;grid-template-columns:1fr 1fr;gap:0 45px}.award-row{display:grid;grid-template-columns:70px 1fr;gap:20px;border-top:1px solid var(--line);padding:24px 0}.award-row>span{font-family:var(--mono);font-size:11px;color:var(--muted);padding-top:3px}.award-row h3{font-size:18px;line-height:1.25;letter-spacing:-.02em}.award-row p{font-size:12px;color:var(--muted);margin-top:8px;line-height:1.65}
/* Contact: intentionally email based, no fake server */
.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:85px;padding-bottom:80px}.contact-copy h2{font-size:35px;margin-bottom:22px}.contact-copy p{font-size:16px;color:var(--muted);max-width:470px}.email-display{display:inline-block;font-size:clamp(18px,2.05vw,30px);letter-spacing:-.04em;border-bottom:1px solid;margin:30px 0 16px;overflow-wrap:anywhere}.contact-copy .copy-button{padding:0 0 3px;font-size:11px;background:none;border:0;border-bottom:1px solid;display:block}.copy-status{font-size:11px;min-height:20px;margin-top:8px;color:var(--muted)}.contact-form{border:1px solid var(--line);background:#eeece3;padding:31px}.contact-form .form-note{font-size:12px;color:var(--muted);line-height:1.6;margin-bottom:23px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-field{margin-bottom:20px}.form-field label{font-size:12px;font-weight:600;display:block;margin-bottom:8px}.form-field label span{font-weight:400;color:var(--muted);font-size:10px}.form-field input,.form-field textarea,.form-field select{display:block;width:100%;background:var(--paper);border:1px solid #c2c5b6;padding:12px 13px;font-size:14px;border-radius:0;min-height:45px}.form-field textarea{resize:vertical;min-height:150px}.form-footer-note{font-size:11px;color:var(--muted);line-height:1.6;margin-top:16px}.email-preview{margin-top:25px;background:var(--paper);padding:20px;border:1px solid var(--line)}.email-preview pre{white-space:pre-wrap;font:13px/1.6 var(--sans);overflow-wrap:anywhere;margin:17px 0}.email-preview .actions{gap:14px}.email-preview button{font-size:11px}.privacy-note{font-size:12px;color:var(--muted);max-width:750px}
/* Footer */
.contact-band{background:var(--acid);padding:57px 0}.contact-band-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.contact-band h2{font-size:clamp(34px,4.4vw,64px);max-width:780px;line-height:1.04}.contact-band p{font-size:14px;margin-top:17px;max-width:620px}.contact-band .btn{flex:none}.footer{background:var(--ink);color:var(--paper);padding-top:38px;padding-bottom:28px}.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:30px;padding-bottom:35px}.footer-brand{font-size:23px;letter-spacing:-.05em;line-height:1.2}.footer-top p{font-size:12px;color:#bfc7b8;margin-top:10px}.footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:25px;font-size:12px}.footer-links a:hover{color:var(--acid)}.footer-bottom{display:flex;justify-content:space-between;gap:25px;border-top:1px solid #46513f;padding-top:22px;font-size:10px;color:#bec6b7}.footer-bottom p{max-width:760px}.footer-bottom a{text-decoration:underline;text-underline-offset:3px}.back-top{white-space:nowrap}.tiny-note{font-size:11px;color:var(--muted);line-height:1.6}.simple-notes{max-width:870px;padding-top:20px;padding-bottom:90px}.simple-notes h2{font-size:28px;margin:36px 0 17px}.simple-notes p{font-size:16px;line-height:1.8}.simple-notes a{border-bottom:1px solid}.noscript-note{padding:12px var(--gutter);background:var(--acid);font-size:13px}
/* Responsive */
@media(min-width:1500px){.hero{gap:86px}.hero-lab{min-height:525px}.lab-poster{min-height:270px}.lab-main{padding-top:35px}}
@media(max-width:1150px){.desktop-nav{gap:19px}.desktop-nav>a:not(.btn){font-size:11px}.hero{gap:32px}.hero h1{font-size:7.15vw}.hero-lab{padding:24px 22px 20px;min-height:480px}.lab-poster{padding:20px;min-height:234px}.lab-poster h2{font-size:4.85vw}.hero-copy .lede{font-size:16px}.hero-copy .actions{gap:18px}.hero-copy .actions .btn{padding:14px 17px;gap:20px;font-size:12px}.case-head{gap:40px}.cap-panel h3{font-size:34px}.engagement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.case-art{min-height:240px;padding:19px}.art-type{font-size:3vw}.proof-feature{gap:40px}.connections-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.contact-layout{gap:45px}}
@media(max-width:860px){.header-inner{height:73px}.desktop-nav{display:none}.nav-toggle{display:block}.mobile-nav.is-open{display:grid;padding:8px var(--gutter) 20px;border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0 25px}.mobile-nav a{padding:13px 0;border-bottom:1px solid var(--line);font-size:14px}.hero{gap:27px;padding-top:40px;padding-bottom:40px;grid-template-columns:1.05fr 1fr}.hero h1{font-size:7.25vw;line-height:.97;margin:20px 0 24px}.hero-copy .eyebrow{font-size:9px}.hero-copy .lede{font-size:15px}.hero-lab{padding:19px 18px;min-height:446px}.lab-main{padding-top:24px}.lab-poster{margin-left:4px;min-height:213px;padding:17px}.lab-poster h2{font-size:5.4vw;margin:12px 0}.lab-poster .eyebrow{font-size:8px}.lab-ticket{font-size:8px}.lab-head{font-size:8px}.lab-expected{font-size:10px;gap:8px}.lab-story{font-size:11px}.lab-switch{gap:4px;margin-top:15px}.lab-switch button{font-size:9px;padding:8px 4px}.proof-inner{grid-template-columns:1fr 1fr;gap:18px 30px;padding-top:23px;padding-bottom:23px}.proof-inner>div:nth-child(3){padding-left:0;border-left:0}.proof-inner>div:nth-child(4){padding-left:24px}.intro-section,.case-content,.paradigm-intro{grid-template-columns:1fr;gap:25px}.intro-section .eyebrow{max-width:none}.section{padding-top:65px;padding-bottom:65px}.intro-section{padding-top:55px;padding-bottom:55px}.case-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}.selected-grid .case-card:last-child{display:none}.case-art{min-height:267px}.art-type{font-size:4.3vw}.paradigm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.section-head{gap:22px}.section-head>p{max-width:280px;font-size:13px}.capability-layout{grid-template-columns:.9fr 1.2fr}.cap-panel{padding:27px}.cap-panel h3{font-size:30px}.cap-tab{padding:17px 19px;font-size:13px}.cap-example{font-size:18px}.world-demo{gap:22px}.world-stage{padding:26px;min-height:310px}.world-stage h3{font-size:32px}.world-stage p{font-size:14px}.step-button{font-size:12px;padding:18px 0;gap:7px;grid-template-columns:22px 1fr 12px}.proof-feature{gap:30px}.proof-visual{padding:24px;min-height:320px}.proof-visual .proof-title{font-size:43px}.proof-copy h2{font-size:35px}.proof-copy p{font-size:14px}.route-card{padding:27px}.route-card h3{font-size:31px}.catalog-tools{grid-template-columns:1fr 1fr}.catalog-tools .field-small:first-child{grid-column:1/-1}.case-head{grid-template-columns:1.1fr 1fr;gap:25px}.case-head-copy h1{font-size:42px}.case-head .case-art{min-height:340px;padding:21px}.case-head .art-type{font-size:4.75vw}.case-head-copy .case-deck{font-size:23px}.case-head .pill{font-size:8px}.reversal{gap:22px}.reversal p{font-size:18px}.case-content aside{display:flex;align-items:flex-start;gap:25px}.case-content aside p{max-width:500px}.case-content aside .eyebrow{min-width:115px}.case-content aside .text-link{display:none}.connection-note{grid-template-columns:1fr;gap:17px}.about-layout{gap:35px;grid-template-columns:1.2fr 1fr}.about-layout .prose{font-size:18px}.bio-card{padding:25px}.bio-card h2{font-size:37px}.record-grid{grid-template-columns:1fr;gap:35px}.record-card{display:grid;grid-template-columns:1fr 2fr;gap:10px 35px}.record-card .eyebrow{grid-column:1}.record-card h3{grid-column:1;margin:0}.record-card p{grid-column:2;grid-row:1/4}.record-card .text-link{grid-column:2;justify-self:start;margin-top:8px}.contact-layout{grid-template-columns:1fr;gap:35px}.contact-copy .email-display{margin-top:20px}.footer-top{flex-direction:column}.footer-links{gap:22px}.contact-band-inner{align-items:flex-start;flex-direction:column;gap:25px}.contact-band h2{max-width:700px}.method-row{grid-template-columns:40px .85fr 1.3fr;gap:20px}.method-row h3{font-size:23px}.film-card .case-art{min-height:300px}}
@media(max-width:600px){:root{--gutter:22px}.header-inner{height:68px}.brand-name{font-size:20px}.brand-sub{font-size:8px}.hero{grid-template-columns:1fr;gap:33px;padding-top:30px;padding-bottom:34px}.hero h1{font-size:clamp(59px,12.5vw,78px);max-width:550px;line-height:.96;margin:20px 0 23px}.hero-copy .eyebrow{font-size:10px}.hero-copy .lede{font-size:17px;max-width:510px}.hero-copy .actions{margin-top:25px;gap:16px}.hero-copy .actions .btn{font-size:12px;padding:15px 18px}.hero-footnote{margin-top:15px;font-size:10px}.hero-lab{min-height:0;padding:21px 23px 20px}.lab-main{padding-top:21px}.lab-poster{min-height:239px;margin:18px 8px 23px;padding:22px}.lab-poster h2{font-size:57px;margin:16px 0 18px}.lab-poster .eyebrow{font-size:10px}.lab-head{font-size:9px}.lab-expected{font-size:12px}.lab-ticket{font-size:9px}.lab-story{font-size:12px;max-width:390px;min-height:36px}.lab-switch button{font-size:10px;padding:10px 6px}.proof-inner{gap:19px 18px;padding-top:22px;padding-bottom:22px}.proof-inner>div{padding-left:17px}.proof-inner>div:nth-child(4){padding-left:17px}.proof-inner strong{font-size:12px}.proof-inner span{font-size:10px}.intro-section{padding-top:42px;padding-bottom:43px;gap:20px}.intro-section h2{font-size:33px}.intro-section p{font-size:15px;margin-top:18px}.section{padding-top:48px;padding-bottom:48px}.section-head{flex-direction:column;align-items:flex-start;gap:18px;margin-bottom:26px}.section-head h2{font-size:36px}.section-head .eyebrow{margin-bottom:13px;font-size:10px}.section-head>p{max-width:none;font-size:14px}.section-head>.text-link{font-size:12px}.case-grid{grid-template-columns:1fr;gap:30px}.selected-grid .case-card:last-child{display:block}.case-art{min-height:266px;padding:23px}.art-type{font-size:45px;padding:24px 0}.art-meta{font-size:9px}.case-card h3{font-size:23px;margin-top:15px}.case-card p{font-size:14px}.case-card .tags{margin-top:13px}.section-note{flex-direction:column;gap:12px;font-size:11px}.featured-world{padding-top:45px;padding-bottom:48px}.world-demo{grid-template-columns:1fr;gap:18px;margin-top:28px}.world-stepper{flex-direction:row;overflow-x:auto;gap:0;scrollbar-width:thin;scrollbar-color:#92a387 transparent}.step-button{border-bottom:1px solid #526655;display:flex;flex-direction:column;align-items:flex-start;gap:7px;flex:1;min-width:62px;padding:12px 6px;font-size:10px}.step-button .step-indicator{display:none}.step-button[aria-selected=true]{border-bottom:3px solid var(--acid);padding-bottom:10px}.world-stage{padding:24px;min-height:292px}.world-stage h3{font-size:33px;margin:21px 0 18px}.world-stage p{font-size:14px}.stage-footer .text-link{font-size:11px;gap:10px}.stage-progress i{width:14px}.capability-layout{grid-template-columns:1fr}.capability-tabs{display:flex;overflow-x:auto;border-right:0;border-bottom:1px solid var(--line);scrollbar-width:thin}.cap-tab{width:auto;flex:none;border-bottom:0;border-right:1px solid var(--line);padding:16px 18px;font-size:12px;gap:12px}.cap-tab:last-child{border-right:0}.cap-panel{padding:25px;min-height:397px}.cap-panel h3{font-size:31px;max-width:400px}.cap-panel p{font-size:14px}.cap-example{font-size:18px;margin:20px 0}.mini-links{margin-top:18px}.mini-links a{font-size:10px}.paradigm-grid{grid-template-columns:1fr}.paradigm-card{padding:25px;min-height:210px}.paradigm-card h3{font-size:29px;margin:22px 0 13px}.paradigm-card p{font-size:14px}.proof-feature{grid-template-columns:1fr;gap:30px}.proof-visual{min-height:327px;padding:27px}.proof-visual .proof-title{font-size:51px}.proof-copy h2{font-size:35px;margin:15px 0 20px}.proof-copy p{font-size:15px}.route-grid{grid-template-columns:1fr;gap:18px}.route-card{padding:28px;min-height:260px}.route-card h3{font-size:36px}.page-head{padding-top:35px;padding-bottom:35px}.page-head h1{font-size:48px}.page-head .eyebrow{font-size:10px;margin-bottom:20px}.page-head .lede{font-size:17px;margin-top:23px}.page-summary{flex-direction:column;align-items:flex-start;gap:15px;padding-top:25px;padding-bottom:25px}.page-summary p{font-size:14px}.tabs-bar{gap:24px;overflow-x:auto;white-space:nowrap}.tabs-bar a{font-size:12px}.catalog-tools{gap:13px 9px}.field-small select{font-size:12px;padding:9px}.field-small input{font-size:14px}.catalog-meta{font-size:9px}.case-head{grid-template-columns:1fr;gap:26px}.case-hero{padding-top:28px;padding-bottom:29px}.breadcrumb{font-size:9px;margin-bottom:24px}.case-head-copy h1{font-size:45px;margin:18px 0 20px}.case-head-copy .case-deck{font-size:25px;margin-bottom:19px}.case-head-copy .tags{margin-top:20px}.case-head .case-art{min-height:312px;padding:25px}.case-head .art-type{font-size:47px}.case-head .pill{font-size:9px}.reversal{grid-template-columns:1fr;gap:17px;padding-top:27px;padding-bottom:27px}.reversal .turn-arrow{transform:rotate(90deg);justify-self:start;font-size:22px}.reversal p{font-size:22px}.reversal .eyebrow{font-size:9px}.case-content{padding-top:33px;padding-bottom:40px;gap:25px}.case-content aside{display:block;border-bottom:1px solid var(--line);padding-bottom:20px}.case-content aside .eyebrow{margin-bottom:12px}.case-content aside p{font-size:12px}.prose{font-size:17px;line-height:1.8}.prose h2{font-size:32px}.prose .quote{font-size:29px;margin:29px 0;padding-left:20px}.headline-block{padding:25px}.headline-block p{font-size:27px}.story-excerpt{padding:25px}.story-excerpt h3{font-size:30px}.story-excerpt p{font-size:19px}.application-strip{padding:24px}.case-nav a{font-size:11px;max-width:46%}.paradigm-intro{margin-top:20px}.paradigm-intro .prose{font-size:17px}.connections-grid{grid-template-columns:1fr 1fr;gap:8px;padding-top:23px;padding-bottom:24px}.connection-item{padding:16px 13px;min-height:130px}.connection-item strong{font-size:16px}.connection-item span{font-size:9px}.connection-note{gap:14px;margin-top:27px;padding-top:23px}.connection-note p{font-size:14px}.paradigm-band{padding:24px}.paradigm-band h2{font-size:29px}.engagement-grid{grid-template-columns:1fr;gap:15px}.engagement{padding:26px}.engagement h3{font-size:29px;margin:19px 0 15px}.engagement p{font-size:15px}.method-row{grid-template-columns:27px 1fr;gap:12px;padding:24px 0}.method-row h3{font-size:26px;grid-column:2}.method-row p{grid-column:2;font-size:14px}.wide-callout{padding:26px;margin-top:27px}.wide-callout h3{font-size:28px}.wide-callout p{font-size:15px}.workshop-day{grid-template-columns:1fr;gap:20px;margin-top:25px}.workshop-half{padding:27px}.film-grid{grid-template-columns:1fr;gap:33px}.film-card .case-art{min-height:307px}.film-card .art-type{font-size:46px}.film-card h3{font-size:28px}.film-card .film-role{font-size:9px}.film-card .film-strap{font-size:14px}.about-layout{grid-template-columns:1fr;gap:31px}.about-layout .prose{font-size:18px}.bio-card{position:static;padding:28px}.bio-card h2{font-size:49px}.record-grid{gap:28px}.record-card{display:block}.record-card h3{margin:16px 0;font-size:29px}.record-card p{font-size:15px}.record-card .text-link{margin-top:20px}.award-list{grid-template-columns:1fr}.award-row{grid-template-columns:53px 1fr;gap:18px}.contact-layout{padding-bottom:48px;gap:30px}.contact-copy h2{font-size:31px}.contact-copy p{font-size:15px}.email-display{font-size:27px}.contact-form{padding:23px}.form-grid{grid-template-columns:1fr;gap:0}.form-field input,.form-field textarea,.form-field select{font-size:16px}.form-field{margin-bottom:18px}.contact-band{padding:40px 0}.contact-band h2{font-size:39px}.contact-band p{font-size:13px}.contact-band-inner{gap:25px}.footer{padding-top:30px;padding-bottom:24px}.footer-top{gap:27px;padding-bottom:26px}.footer-links{display:grid;grid-template-columns:1fr 1fr;gap:17px 24px;width:100%;font-size:12px}.footer-bottom{flex-direction:column;gap:15px;font-size:10px}.back-top{align-self:flex-start}.simple-notes{padding-bottom:55px}.simple-notes h2{font-size:27px}.simple-notes p{font-size:15px}}
@media(max-width:365px){.hero h1{font-size:55px}.hero-copy .actions{flex-direction:column;align-items:flex-start}.lab-poster h2{font-size:48px}.hero-lab{padding:18px}.art-type{font-size:39px}.case-head .art-type{font-size:41px}.world-stage h3{font-size:29px}.email-display{font-size:23px}.case-head-copy h1{font-size:39px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{.header,.footer,.contact-band,.catalog-tools,.catalog-meta,.catalog-actions,.lab-switch,.world-stepper,.contact-form,.capability-tabs,.case-nav{display:none!important}body{background:white;color:black}.wrap{padding-left:0;padding-right:0}.section{padding:25px 0}.case-head,.case-content,.about-layout,.hero{display:block}.case-head .case-art{display:none}.prose{max-width:none}.case-grid{grid-template-columns:1fr 1fr}.case-card{break-inside:avoid}a{text-decoration:underline}.page-head h1{font-size:40px}.page-head{padding:20px 0}.case-head-copy h1{font-size:40px}.hero h1{font-size:50px}.hero-lab{display:none}.story-excerpt details>*{display:block!important}}

/* Keep poster words inside their own card, including very narrow phones. */
.case-art{container-type:inline-size}
.case-art .art-type,.case-head .case-art .art-type,.film-card .case-art .art-type{font-size:clamp(27px,13.6cqw,70px)}
.featured-world .world-stage .eyebrow{color:#495228}
@media(min-width:601px) and (max-width:860px){.selected-grid .case-card:last-child{display:block}}

/* Version 2 — personal voice, cumulative worldbuilding and progressive enhancement. */
.entry-routes{display:grid;grid-template-columns:1fr;gap:0;margin-top:27px;max-width:485px;border-top:1px solid var(--line)}
.entry-routes a{padding:11px 0;display:grid;grid-template-columns:170px 1fr;gap:12px;border-bottom:1px solid var(--line);align-items:baseline}
.entry-routes strong{font-size:12px;font-weight:600}.entry-routes span{font-size:11px;color:var(--muted)}.entry-routes a:hover strong{text-decoration:underline;text-underline-offset:4px}
.world-demo-v2{display:grid;grid-template-columns:.62fr 1.7fr;gap:42px;margin-top:30px;align-items:start}.world-controls>.eyebrow{color:#c8d5c2;margin-bottom:21px}
.chain-stepper{display:grid;border-top:1px solid #62745f}.chain-step{display:flex;gap:12px;align-items:center;text-align:left;background:transparent;color:var(--paper);border:0;border-bottom:1px solid #62745f;padding:16px 0;font-size:14px}.chain-step>span:first-child{font:11px var(--mono);color:#bfd1b5}.chain-tick{margin-left:auto;opacity:0}.chain-step.is-added .chain-tick{opacity:1}.chain-step[aria-current]{color:var(--acid)}.world-premise{font-size:12px;color:#c8d5c2;max-width:245px;margin-top:22px}
.world-chain{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.world-node{padding:25px;background:#334936;color:var(--paper);border:1px solid #61765b;min-width:0}.world-node.newest{background:var(--acid);color:var(--ink);border-color:var(--acid)}.world-node:only-of-type{grid-column:1/-1}.world-node h3{font-size:28px;line-height:1.1;margin:17px 0}.world-node p:not(.eyebrow):not(.world-actors){font-size:14px;line-height:1.7}.world-node .eyebrow{color:inherit;font-size:10px}.world-node .world-actors{font-family:var(--mono);font-size:10px;line-height:1.8;border-top:1px solid currentColor;padding-top:14px;margin-top:20px}.world-node:last-child{grid-column:1/-1}.world-chain:not(:has([data-world-node="1"]:not([hidden]))) .world-node:first-child{grid-column:1/-1}.world-related{display:flex;gap:14px;flex-wrap:wrap;margin-top:20px}.world-related .text-link{font-size:12px;color:inherit}.world-actions{display:flex;gap:16px;flex-wrap:wrap;align-items:center;margin-top:20px}.world-status{font-size:11px;color:#d2dfc8;line-height:1.5;width:100%}.world-text-button{padding:9px 0;background:none;border:0;border-bottom:1px solid;color:var(--paper);font-size:12px}.world-destination{display:flex;gap:23px;flex-wrap:wrap;margin-top:20px}.world-destination .text-link{font-size:12px}.world-demo-v2:not(.is-enhanced) .world-controls,.world-demo-v2:not(.is-enhanced) .world-actions{display:none}.world-demo-v2:not(.is-enhanced){display:block}
.cap-panels{min-width:0}.capability-layout:not(.is-enhanced) .capability-tabs{display:none}.capability-layout:not(.is-enhanced){grid-template-columns:1fr}.capability-layout:not(.is-enhanced) .cap-panel{border-top:1px solid var(--line)}.capability-layout.is-enhanced .cap-panel{height:100%}
.case-content .author-link{color:var(--ink);font-size:16px;text-decoration:underline;text-underline-offset:4px}.case-contents{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin-top:25px}.case-contents .text-link{font-size:12px!important;margin-top:0!important}.case-reading-link{padding-bottom:28px}.case-reading-link .text-link{font-size:13px}.source-scene{border-left:3px solid var(--ink);padding:20px 0 20px 24px;margin:28px 0}.source-scene .eyebrow{font-size:10px;color:var(--muted);margin-bottom:13px}.source-scene p:last-child{font-family:var(--serif);font-size:24px;line-height:1.6}.development-notes{border-top:1px solid var(--line);padding-top:32px;margin-top:38px}.development-notes>.eyebrow{margin-bottom:20px;font-size:10px}.development-notes h2{margin-bottom:25px}.story-excerpt h2{margin:20px 0 28px;font-size:34px}.story-feature-body{display:grid;grid-template-columns:1.5fr .7fr;gap:60px;align-items:start}.story-feature-body .prose{font-family:var(--serif);font-size:22px}.story-feature-body>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:24px}.story-feature-body .text-link{font-size:13px}.film-watch-bar{display:flex;gap:20px;flex-wrap:wrap;padding-bottom:30px}.film-watch-bar .text-link{font-size:12px}
@media(max-width:1150px){.entry-routes a{grid-template-columns:148px 1fr}.world-demo-v2{gap:26px;grid-template-columns:.65fr 1.65fr}.world-node{padding:21px}.world-node h3{font-size:26px}}
@media(max-width:860px){.world-demo-v2{grid-template-columns:1fr}.world-controls>.eyebrow,.world-premise{display:none}.chain-stepper{grid-template-columns:repeat(5,1fr)}.chain-step{flex-direction:column;align-items:flex-start;gap:7px;padding:11px 6px;font-size:11px}.chain-tick{display:none}.entry-routes a{grid-template-columns:1fr;gap:3px}.case-content aside{display:block}.case-content aside>.text-link{display:none}.case-contents .text-link{display:inline-flex!important}.case-contents{flex-direction:row;flex-wrap:wrap;gap:20px;margin-top:17px}.story-feature-body{gap:32px}.navigation-ready .mobile-nav:not(.is-open){display:none}.nav-toggle{display:none}.navigation-ready .nav-toggle{display:block}html:not(.navigation-ready) .mobile-nav{display:grid;padding:10px var(--gutter);grid-template-columns:1fr 1fr;gap:10px;font-size:13px;border-top:1px solid var(--line)}}
@media(max-width:600px){.entry-routes{margin-top:21px}.entry-routes a{grid-template-columns:145px 1fr;gap:10px;padding:10px 0}.entry-routes strong{font-size:11px}.entry-routes span{font-size:10px}.hero{gap:27px}.world-chain{grid-template-columns:1fr}.world-node h3{font-size:29px}.world-node{padding:23px}.world-node p:not(.eyebrow):not(.world-actors){font-size:14px}.world-actions{gap:14px}.world-actions .btn{width:100%;justify-content:space-between}.world-destination{gap:17px}.world-status{font-size:10px}.story-feature-body{grid-template-columns:1fr;gap:27px}.story-feature-body .prose{font-size:20px}.source-scene{padding-left:20px}.source-scene p:last-child{font-size:23px}.story-excerpt h2{font-size:29px}.cap-panel{min-height:0}.cap-tab{min-height:48px}.film-watch-bar{gap:16px;flex-direction:column;align-items:flex-start}.film-watch-bar .text-link{font-size:12px}}
@media print{.world-controls,.world-actions,.world-destination,.entry-routes{display:none!important}.world-demo-v2,.world-chain{display:block!important}.world-node[hidden],.cap-panel[hidden]{display:block!important}.world-node{background:white!important;color:black!important;border:1px solid #aaa!important;margin:15px 0;break-inside:avoid}.world-node p{color:black!important}}

/* ==========================================================================
   Version 3 layer: futures beyond the mean.
   Loaded after styles.css and overrides it. Palette: briefing paper, navy ink,
   grey for the mean (what everyone expects), magenta for the tails (what Antony finds).
   Type: Archivo (variable width) throughout; Newsreader for long reading.
   ========================================================================== */
:root{
  --paper:#f3f4f0;--paper-2:#e7e9e2;--ink:#13203b;--muted:#566074;--line:#d2d6dc;
  --mean:#98a0ad;--tail:#e0127a;--tail-ink:#b3005f;--tail-on-band:#ff6eb6;
  --band:#13203b;--on-band:#f3f4f0;--band-muted:#aab4c7;--band-line:#2f3d5e;
  --acid:var(--tail);--forest:var(--band);--cream:#e6e4da;
  --lime:#dbe5c6;--lavender:#dcd8f0;--blue:#cfe0ea;--orange:#f2cdb4;--pink:#f3cfe1;
  --sans:'Archivo','Arial Narrow',Arial,sans-serif;--serif:'Newsreader',Georgia,'Times New Roman',serif;--mono:var(--sans);
  --display:66%;
  color-scheme:light;
  box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --paper:#0f1830;--paper-2:#17223f;--ink:#e8ebf2;--muted:#a2abbe;--line:#29354f;
    --mean:#717a93;--tail:#ff4fa8;--tail-ink:#ff8cc5;--tail-on-band:#ff8cc5;
    --band:#0a1124;--on-band:#e8ebf2;--band-muted:#9ba5b9;--band-line:#26324d;
    --cream:#232b40;--lime:#243222;--lavender:#2a2746;--blue:#1c3242;--orange:#3b281d;--pink:#3d1f31;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --paper:#0f1830;--paper-2:#17223f;--ink:#e8ebf2;--muted:#a2abbe;--line:#29354f;
  --mean:#717a93;--tail:#ff4fa8;--tail-ink:#ff8cc5;--tail-on-band:#ff8cc5;
  --band:#0a1124;--on-band:#e8ebf2;--band-muted:#9ba5b9;--band-line:#26324d;
  --cream:#232b40;--lime:#243222;--lavender:#2a2746;--blue:#1c3242;--orange:#3b281d;--pink:#3d1f31;
  color-scheme:dark;
}
html{scroll-padding-top:calc(96px + env(safe-area-inset-top,0px))}
body{font-family:var(--sans);font-size:17px;line-height:1.55;background:var(--paper);color:var(--ink)}
::selection{background:var(--tail);color:#fff}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--tail);outline-offset:4px}
h1,h2,h3,h4{font-family:var(--sans);font-weight:760;font-stretch:var(--display);letter-spacing:-.01em}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.eyebrow{font-family:var(--sans);font-size:13px;letter-spacing:0;text-transform:none;font-weight:650;color:var(--muted);line-height:1.4}
.arrow{display:none}
.serif{font-family:var(--serif);font-style:normal}
.text-link{gap:8px;font-size:15px;font-weight:650;border-bottom:2px solid var(--tail);padding-bottom:3px}
.text-link:hover{color:var(--tail-ink)}
.btn{gap:12px;justify-content:center;border-radius:2px;background:var(--ink);border:1px solid var(--ink);color:var(--paper);font-size:15px;font-weight:650;min-height:50px;padding:13px 22px;text-align:center}
.btn:hover{background:var(--tail);border-color:var(--tail);color:#fff}
.btn-outline{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-outline:hover{background:var(--paper-2);color:var(--ink);border-color:var(--ink)}
.btn-light{background:var(--on-band);border-color:var(--on-band);color:var(--band)}
.btn-light:hover{background:var(--tail);border-color:var(--tail);color:#fff}
.btn-tail{background:var(--tail);border-color:var(--tail);color:#fff}
.btn-tail:hover{background:var(--on-band);border-color:var(--on-band);color:var(--band)}
.btn-small{min-height:40px;padding:8px 16px;font-size:14px}
.actions{gap:14px 24px}
.lede{font-size:clamp(19px,1.6vw,23px);line-height:1.5}
.section{padding-top:clamp(56px,7vw,96px);padding-bottom:clamp(56px,7vw,96px);border-top:1px solid var(--line)}
.section-head{margin-bottom:clamp(26px,3.4vw,40px)}
.section-head h2{font-size:clamp(36px,4.6vw,68px);line-height:.96}
.section-head>p{font-size:16px;max-width:400px;color:var(--muted)}
.pill{font-family:var(--sans);font-size:13px;border-radius:2px;padding:5px 10px;font-weight:650}
.pill .dot{display:none}
.tag{font-size:12px;border-radius:2px;padding:5px 9px;border-color:var(--line)}
.tag:hover{background:var(--paper-2)}
.tiny-note{font-size:13px;color:var(--muted)}
.skip{background:var(--tail);color:#fff}

/* Header */
.header{top:env(safe-area-inset-top,0px);background:color-mix(in srgb,var(--paper) 94%,transparent);border-bottom:1px solid var(--line)}
.header-inner{height:76px}
.brand{flex-direction:row;align-items:center;gap:12px}
.brand-mark svg{width:40px;height:24px;display:block;overflow:visible}
.brand-mark path{fill:none;stroke:var(--ink);stroke-width:2.4;stroke-linecap:round}
.brand-mark circle{fill:var(--tail)}
.brand-text{display:flex;flex-direction:column;gap:2px;line-height:1.05}
.brand-name{font-size:21px;font-weight:820;font-stretch:78%;letter-spacing:-.005em}
.brand-sub{font-family:var(--sans);font-size:12px;text-transform:none;letter-spacing:0;color:var(--muted)}
.desktop-nav>a:not(.btn){font-size:15px}
.desktop-nav>a:not(.btn)::after{background:var(--tail)}
.nav-toggle{font-size:15px;border-radius:2px;border-color:var(--line);color:var(--ink)}
.mobile-nav a{font-size:16px;border-color:var(--line)}

/* Hero: the curve */
.hero{display:block;padding:clamp(30px,5vw,68px) 0 0}
.hero-top{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);align-items:end}
.hero h1{font-size:clamp(60px,9vw,146px);line-height:.84;font-weight:840;font-stretch:62%;letter-spacing:-.015em;margin:0;max-width:none}
.hero-side .lede{font-size:clamp(18px,1.55vw,22px);max-width:520px}
.hero-side .actions{margin-top:24px}
.curve{margin-top:clamp(18px,3vw,36px)}
.curve-svg{width:100%;height:auto;display:block;overflow:visible}
.body-fill{fill:var(--mean);opacity:.2}
.tail-fill{fill:var(--tail);opacity:.17}
.curve-line{fill:none;stroke:var(--ink);stroke-width:2.4;stroke-linejoin:round}
.baseline{stroke:var(--ink);stroke-width:1.2}
.mean-line{stroke:var(--muted);stroke-width:1.4;stroke-dasharray:3 6}
.mean-label{font:650 18px var(--sans);fill:var(--muted);text-anchor:middle}
.tail-label{font:700 15px var(--sans);fill:var(--tail-ink)}
.tail-label.end{text-anchor:end}
.tick{stroke:var(--ink);stroke-width:1.2}
.tick-label{font:500 13px var(--sans);fill:var(--muted);text-anchor:middle}
.pin-stem{stroke:var(--tail);stroke-width:2}
.pin-head{fill:var(--paper);stroke:var(--tail);stroke-width:3;transform-box:fill-box;transform-origin:center;transition:transform .2s ease,fill .2s ease}
.pin-hit{fill:transparent;cursor:pointer}
.pin:hover .pin-head{transform:scale(1.2)}
.pin.is-active .pin-head{fill:var(--tail);transform:scale(1.4)}
.pin-label{font:800 21px var(--sans);font-stretch:78%;fill:var(--ink);text-anchor:middle;pointer-events:none;paint-order:stroke;stroke:var(--paper);stroke-width:7px;stroke-linejoin:round}
@media (prefers-reduced-motion:no-preference){.curve.is-enhanced .pin-label{opacity:0;animation:ab-rise .5s ease-out 1.9s forwards}}
.curve-foot{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);padding-top:22px;margin-top:6px;border-top:1px solid var(--line)}
.cc-label{display:block;font-size:14px;font-weight:650;color:var(--muted);margin-bottom:4px}
.cc-expect [data-curve-expect]{font-size:19px;color:var(--muted)}
.cc-flip{margin-top:14px}
.cc-flip .cc-label{color:var(--tail-ink)}
.cc-flip [data-curve-flip]{display:block;font-size:clamp(28px,3.2vw,46px);font-weight:820;font-stretch:66%;line-height:1;color:var(--ink)}
.curve-caption .text-link{margin-top:18px}
.curve-chips-label{font-size:14px;font-weight:650;color:var(--muted);margin-bottom:10px}
.curve-chip{display:inline-block;margin:0 6px 8px 0;padding:7px 11px;border:1px solid var(--line);background:transparent;color:var(--ink);font-size:14px;line-height:1.2;border-radius:2px}
.curve-chip:hover{border-color:var(--ink)}
.curve-chip[aria-pressed=true]{background:var(--tail);border-color:var(--tail);color:#fff}
@media (prefers-reduced-motion:no-preference){
  .curve.is-enhanced .curve-line{stroke-dasharray:1500;stroke-dashoffset:1500;animation:ab-draw 1.6s cubic-bezier(.3,.7,.2,1) .1s forwards}
  .curve.is-enhanced .pin{opacity:0;animation:ab-rise .5s ease-out forwards;animation-delay:calc(1.1s + var(--i) * 70ms)}
}
@keyframes ab-draw{to{stroke-dashoffset:0}}
@keyframes ab-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.doors{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:clamp(36px,5vw,64px);border-top:2px solid var(--ink)}
.door{display:flex;flex-direction:column;gap:6px;padding:22px 24px 30px 0;border-right:1px solid var(--line)}
.door+.door{padding-left:24px}
.door:last-child{border-right:0}
.door-name{font-size:15px;font-weight:650;color:var(--muted)}
.door-tag{font-size:clamp(25px,2.4vw,36px);font-weight:820;font-stretch:66%;line-height:1}
.door-text{font-size:15px;color:var(--muted);max-width:360px}
.door:hover .door-tag{color:var(--tail-ink)}
.proof-strip{border-color:var(--line);margin-top:0}
.proof-inner>div{border-color:var(--line)}
.proof-inner strong{font-size:16px;font-weight:720}
.proof-inner span{font-size:13px}

/* Why bring Antony in */
.why-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(28px,5vw,80px);align-items:start}
.why h2{font-size:clamp(40px,5vw,76px);line-height:.92}
.why-copy p{font-size:19px;line-height:1.6;max-width:640px}
.why-copy p+p{margin-top:1em}
.why-copy .why-note{color:var(--muted);font-size:16px}
.why-copy .text-link{margin-top:24px}
.references{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:52px}
.reference{margin:0;border-top:2px solid var(--tail);padding-top:18px}
.reference blockquote{margin:0;font-family:var(--serif);font-size:24px;line-height:1.35}
.reference figcaption{margin-top:12px;font-size:14px;color:var(--muted)}

/* Worldbuilding demo */
.featured-world{background:var(--band);color:var(--on-band);padding:clamp(56px,7vw,96px) 0}
.featured-world .section-head h2{color:var(--on-band)}
.featured-world .section-head p,.featured-world .eyebrow{color:var(--band-muted)}
.featured-world .text-link{color:var(--on-band)}
.world-tabs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 30px}
.world-tabs-label{font-size:15px;color:var(--band-muted);margin-right:6px}
.world-tab{background:transparent;color:var(--on-band);border:1px solid var(--band-line);padding:10px 18px;font-size:15px;font-weight:650;border-radius:2px}
.world-tab:hover{border-color:var(--on-band)}
.world-tab[aria-selected=true]{background:var(--tail);border-color:var(--tail);color:#fff}
.world-switcher:not(.is-enhanced) .world-tabs{display:none}
.world-switcher:not(.is-enhanced) .world-panel+.world-panel{margin-top:56px;padding-top:40px;border-top:1px solid var(--band-line)}
.world-instruction{font-size:15px;color:var(--band-muted);margin-bottom:16px}
.chain-stepper{border-top:1px solid var(--band-line)}
.chain-step{color:var(--on-band);border-bottom:1px solid var(--band-line);font-size:16px;gap:12px}
.chain-step .step-num{font:700 13px var(--sans);color:var(--band-muted);min-width:18px}
.chain-step[aria-current]{color:var(--tail-on-band)}
.world-premise{color:var(--band-muted);font-size:14px}
.world-node{background:color-mix(in srgb,var(--on-band) 6%,transparent);border:1px solid var(--band-line);color:var(--on-band);border-radius:2px}
.world-node.newest{background:var(--on-band);color:var(--band);border-color:var(--on-band)}
.world-node .node-label{font-size:14px;font-weight:650;opacity:.75}
.world-node h3{font-size:clamp(26px,2.4vw,34px);line-height:1.02;margin:10px 0 12px}
.world-node p:not(.node-label):not(.world-actors){font-size:15px;line-height:1.65}
.world-node .world-actors{font-family:var(--sans);font-size:13px;opacity:.8}
.world-node.newest .text-link{color:var(--band)}
.world-status{color:var(--band-muted);font-size:13px}
.world-text-button{color:var(--on-band);font-size:14px;border-color:var(--band-muted)}

/* Five reasons */
.capability-layout{border-color:var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.5fr)}
.capability-tabs{border-color:var(--line)}
.cap-tab{flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;padding:17px 24px;border-color:var(--line);font-size:inherit;color:var(--ink)}
.cap-tab-name{font-size:20px;font-weight:760;font-stretch:78%;line-height:1.1}
.cap-tab-short{font-size:14px;color:var(--muted)}
.cap-tab[aria-selected=true]{background:var(--ink);color:var(--paper)}
.cap-tab[aria-selected=true] .cap-tab-short{color:color-mix(in srgb,var(--paper) 72%,transparent)}
.cap-tab:hover:not([aria-selected=true]){background:var(--paper-2)}
.cap-panel{background:var(--paper-2);padding:clamp(26px,3.2vw,46px)}
.cap-panel h3{font-size:clamp(30px,3.1vw,46px);line-height:1;margin:0 0 18px}
.cap-panel p{font-size:17px}
.cap-example{border-left:3px solid var(--tail);font-family:var(--serif);font-size:21px}
.mini-links{align-items:center;gap:8px}
.mini-links>span{font-size:14px;color:var(--muted);margin-right:4px}
.mini-links a{font-size:14px;border:1px solid var(--line);border-radius:2px;padding:7px 11px}
.mini-links a:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.section-note{font-size:14px;color:var(--muted)}

/* The new offer */
.proposition{background:var(--paper-2);padding:clamp(56px,7vw,100px) 0;border-top:1px solid var(--line)}
.prop-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:start}
.prop-head h2{font-size:clamp(42px,5.4vw,84px);line-height:.9}
.prop-lede p{font-size:19px;line-height:1.6}
.prop-lede p+p{margin-top:1em;font-weight:650}
.formats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:clamp(36px,5vw,64px)}
.format{border-top:4px solid var(--tail);padding-top:20px;display:flex;flex-direction:column}
.format h3{font-size:clamp(26px,2.4vw,34px);margin-bottom:12px}
.format p{font-size:16px;color:var(--muted);margin-bottom:18px}
.format .text-link{margin-top:auto;align-self:flex-start}
.prop-why{margin-top:clamp(32px,4vw,52px);font-family:var(--serif);font-size:clamp(20px,1.8vw,26px);line-height:1.45;max-width:1020px}
.proposition .actions{margin-top:28px}

/* Paradigms */
.paradigm-grid{border-color:var(--line);background:var(--line)}
.paradigm-card{min-height:190px;padding:24px 22px;background:var(--paper)}
.paradigm-card:first-child{background:var(--paper)}
.paradigm-card:hover{background:var(--paper-2)}
.paradigm-card h3{font-size:clamp(26px,2.3vw,32px);margin:0 0 10px;line-height:1}
.paradigm-card p{font-size:15px}
.paradigm-count{margin-top:auto;font-size:13px;font-weight:650;color:var(--tail-ink)}
.paradigm-grid:has(> :nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}
.paradigm-grid:has(> :only-child){grid-template-columns:minmax(0,1fr)}

/* Future cards: hover or focus reveals the world */
.case-grid{gap:38px 24px}
.case-card .card-main{position:relative;display:block}
.case-art{height:250px;min-height:0;border:0;border-radius:2px;padding:22px;justify-content:flex-end;color:var(--ink)}
.case-art:after{content:none}
.case-art .art-type,.case-head .case-art .art-type{font-size:clamp(26px,11.2cqw,60px);letter-spacing:-.01em}
.case-card:hover .case-art{transform:none}
.art-type{font-family:var(--sans);font-weight:860;font-stretch:62%;font-size:clamp(28px,2.6vw,46px);line-height:.9;letter-spacing:0;padding:0;text-transform:uppercase}
.case-card h3{font-size:24px;margin:16px 0 6px;line-height:1.05}
.case-card .card-flip{font-size:16px;color:var(--ink);margin:0}
.card-reveal{margin-top:10px}
.case-card .card-expect{font-size:14px;color:var(--muted);margin:0}
.card-expect span{display:block;font-weight:650;font-size:12px}
.card-world,.card-more{display:none}
.case-card .tags{margin-top:14px}
@media (hover:hover) and (pointer:fine){
  .card-reveal{position:absolute;top:0;left:0;right:0;height:250px;margin:0;padding:22px;background:var(--band);color:var(--on-band);display:flex;flex-direction:column;gap:12px;opacity:0;transition:opacity .22s ease;border-radius:2px;pointer-events:none}
  .case-card .card-expect{color:var(--band-muted)}
  .case-card .card-world{display:block;font-size:15px;line-height:1.5;color:var(--on-band);margin:0}
  .card-more{display:block;margin-top:auto;font-size:14px;font-weight:650;color:var(--tail-on-band)}
  .case-card:hover .card-reveal,.case-card .card-main:focus-visible .card-reveal{opacity:1}
}

/* Films */
.film-grid{gap:46px 26px}
.film-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.film-card{position:relative}
.film-main{display:block}
.film-frame{aspect-ratio:16/10;background:var(--band);color:var(--on-band);display:flex;align-items:center;justify-content:center;padding:12% 7%;position:relative;border-radius:2px;overflow:hidden}
.film-frame:before,.film-frame:after{content:'';position:absolute;left:0;right:0;height:9%;background:#000;opacity:.5}
.film-frame:before{top:0}
.film-frame:after{bottom:0}
.film-frame span{font-weight:860;font-stretch:62%;font-size:clamp(24px,2.3vw,36px);line-height:.94;text-transform:uppercase;text-align:center}
.film-grid:not(.film-grid-4) .film-frame span{font-size:clamp(30px,3.3vw,50px)}
.film-card .film-topic{margin:16px 0 6px;font-size:14px;color:var(--muted)}
.film-topic span{display:block;font-size:12px;font-weight:650}
.film-card h3{font-size:24px;margin:0 0 6px;line-height:1.05}
.film-card .film-story{font-size:16px;color:var(--ink);margin:0;max-width:none}
.film-reveal{margin-top:14px}
.film-card .film-role{font-family:var(--sans);font-size:13px;text-transform:none;letter-spacing:0;font-weight:650;color:var(--ink);margin:0 0 8px}
.film-quote{font-family:var(--serif);font-size:17px;line-height:1.35;margin:0 0 10px}
.film-quote span{display:block;font-family:var(--sans);font-size:12px;color:var(--muted);margin-top:2px}
.film-awards{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.film-awards li{font-size:13px;line-height:1.4;padding-left:14px;position:relative;color:var(--muted)}
.film-awards li:before{content:'';position:absolute;left:0;top:.48em;width:6px;height:6px;background:var(--tail);border-radius:50%}
@media (hover:hover) and (pointer:fine){
  .film-reveal{position:absolute;top:0;left:0;right:0;aspect-ratio:16/10;margin:0;padding:18px 20px;background:var(--band);color:var(--on-band);overflow:hidden;opacity:0;transition:opacity .22s ease;pointer-events:none;border-radius:2px}
  .film-card .film-reveal .film-role{color:var(--on-band)}
  .film-reveal .film-quote span,.film-reveal .film-awards li{color:var(--band-muted)}
  .film-card:hover .film-reveal,.film-card:focus-within .film-reveal{opacity:1}
  .film-grid-4 .film-quote{font-size:15px}
  .film-grid-4 .film-awards li:nth-child(n+3){display:none}
  .film-awards li:nth-child(n+5){display:none}
}
.pretty{padding-bottom:28px}
.pretty p{font-family:var(--serif);font-size:clamp(22px,2.1vw,30px);line-height:1.4;max-width:980px}
.more-films{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:34px 44px}
.more-film{border-top:1px solid var(--line);padding-top:18px}
.more-film h3{font-size:26px;margin:0 0 4px;line-height:1.05}
.more-meta{font-size:13px;font-weight:650;color:var(--muted);margin:0 0 10px}
.more-film .film-story{font-size:16px}
.more-rec{font-size:14px;color:var(--tail-ink);font-weight:650;margin-top:10px}
.more-film .text-link{margin-top:12px;font-size:14px}
.filmed-in{margin-top:28px;font-size:15px;color:var(--muted);max-width:820px}

/* Home doors for films and writers */
.door-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,4vw,72px);align-items:end;margin-bottom:clamp(28px,4vw,48px)}
.door-head h2{font-size:clamp(42px,5vw,78px);line-height:.92}
.door-intro{font-family:var(--serif);font-size:clamp(19px,1.6vw,23px);line-height:1.5}
.door-actions{margin-top:34px}

/* Newsletter and full reports */
.newsletter{background:var(--paper-2);padding:clamp(52px,6vw,88px) 0;border-top:1px solid var(--line)}
.newsletter-inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(24px,4vw,72px);align-items:start}
.newsletter h2{font-size:clamp(56px,7.4vw,118px);line-height:.84;font-stretch:62%;font-weight:860}
.newsletter-strap{font-size:20px;font-weight:650;color:var(--tail-ink);margin-top:12px}
.newsletter-inner p{font-size:18px;line-height:1.6}
.newsletter .actions{margin-top:22px}
.newsletter .tiny-note{margin-top:12px}
.full-report{margin:8px 0 56px;padding:28px;background:var(--paper-2);border-left:4px solid var(--tail);display:grid;gap:12px;max-width:900px}
.full-report h3{font-size:clamp(24px,2.4vw,32px)}
.full-report p{font-size:16px;color:var(--muted)}
.full-report .btn{justify-self:start}

/* Bands and footer */
.contact-band{background:var(--band);color:var(--on-band);padding:clamp(48px,6vw,84px) 0}
.contact-band h2{font-size:clamp(38px,4.9vw,74px);line-height:.94;max-width:920px}
.contact-band p{color:var(--band-muted);font-size:17px}
.footer{background:var(--band);color:var(--on-band);border-top:1px solid var(--band-line)}
.footer-brand{font-size:24px;font-weight:820;font-stretch:78%}
.footer-top p{color:var(--band-muted);font-size:14px}
.footer-top .footer-tagline{color:var(--tail-on-band);font-weight:650}
.footer-links{font-size:14px}
.footer-links a:hover{color:var(--tail-on-band)}
.footer-bottom{border-color:var(--band-line);color:var(--band-muted);font-size:13px}

/* Page heads and detail pages */
.page-head{padding-top:clamp(36px,5vw,72px);padding-bottom:clamp(36px,5vw,64px)}
.page-head h1{font-size:clamp(54px,8vw,128px);line-height:.86;font-weight:840;font-stretch:62%;max-width:1250px}
.page-head .lede{max-width:820px}
.breadcrumb{font-family:var(--sans);font-size:13px}
.case-head .case-art{height:auto;min-height:340px}
.case-head .art-type{font-size:clamp(36px,4vw,64px)}
.case-head-copy h1{font-size:clamp(48px,6.4vw,96px);line-height:.88;font-weight:840;font-stretch:62%}
.case-head-copy .case-deck{font-family:var(--serif);font-size:clamp(22px,2.2vw,30px)}
.case-head .film-frame span{font-size:clamp(36px,3.8vw,58px)}
.reversal{border-color:var(--line)}
.reversal .eyebrow{font-size:13px}
.reversal p{font-size:clamp(20px,1.9vw,27px);font-weight:700;font-stretch:84%;letter-spacing:0}
.reversal .old p{color:var(--muted);font-weight:500}
.reversal>div:last-child p{color:var(--tail-ink)}
.reversal .turn-arrow{color:var(--tail)}
.prose{font-family:var(--serif);font-size:20px;line-height:1.65;max-width:740px}
.prose h2,.prose h3{font-family:var(--sans)}
.story-excerpt,.headline-block,.contact-form{background:var(--paper-2)}
.source-scene{border-color:var(--tail)}
.prose .quote{border-color:var(--tail)}
.case-content aside p{font-size:14px}
.case-content aside .film-awards{margin:6px 0 18px}
.film-press{display:grid;gap:18px;margin:32px 0 10px;padding:24px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.film-press figure{margin:0}
.film-press blockquote{margin:0;font-size:25px;line-height:1.3}
.film-press figcaption{font-family:var(--sans);font-size:14px;color:var(--muted);margin-top:4px}
.film-links .text-link,.film-watch-bar .text-link{font-size:14px}
.connection-item{border-color:var(--line)}
.connection-item:after{content:none}
.connection-item:hover{background:var(--paper-2)}
.connection-item span{font-size:13px}
.application-strip{border-color:var(--line)}
.proof-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center}
.proof-visual{display:block;background:none;padding:0;min-height:0;color:inherit}
.proof-copy h2{font-size:clamp(32px,3.6vw,54px);line-height:.96;margin-bottom:16px}
.proof-copy p{font-size:17px}
.proof-copy .text-link{margin-top:18px}

/* Ways to work */
.engagement{border-color:var(--line);border-radius:2px}
.engagement-kind{font-size:14px;font-weight:650;color:var(--tail-ink)}
.engagement h3{font-size:clamp(24px,2.2vw,30px);margin:10px 0 12px;line-height:1.02}
.engagement p{font-size:15px}
.wide-callout{background:var(--paper-2);border-left:4px solid var(--tail)}
.wide-callout h3{font-size:clamp(26px,2.6vw,38px);line-height:1;max-width:940px}
.wide-callout p{font-size:17px}
.method-list{list-style:none;padding:0;margin:0}
.method-row:before{font-family:var(--sans);font-size:14px;font-weight:700;color:var(--tail-ink)}
.method-row h3{font-size:clamp(24px,2.2vw,30px)}
.method-row p{font-size:16px}
.workshop-half{border-color:var(--line)}
.workshop-half h3{font-size:clamp(26px,2.6vw,34px);margin:8px 0 14px;line-height:1.02}
.workshop-half p,.workshop-half ul{font-size:16px}

/* About */
.about-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:start}
.about-layout .prose{font-size:20px}
.bio-card{background:var(--band);color:var(--on-band);border-radius:2px;top:calc(96px + env(safe-area-inset-top,0px))}
.bio-card h2{font-size:clamp(42px,4vw,58px);line-height:.9;margin:0 0 10px;font-stretch:62%;font-weight:860}
.bio-card p{color:var(--band-muted);font-size:15px}
.bio-line{border-color:var(--band-line)}
.bio-line strong{font-size:20px;font-stretch:80%}
.bio-line span{color:var(--band-muted);font-size:14px}
.record-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}
.record-card{border-top:2px solid var(--ink)}
.record-card .eyebrow{color:var(--tail-ink)}
.record-card h3{font-size:clamp(24px,2.2vw,30px);margin:10px 0 12px}
.record-card p{font-size:15px}
.award-row{grid-template-columns:84px 1fr;border-color:var(--line)}
.award-row>span{font-family:var(--sans);font-size:14px;font-weight:700;color:var(--tail-ink)}
.award-row h3{font-size:19px;font-stretch:90%;letter-spacing:0;line-height:1.2}
.award-row p{font-size:14px}
.press-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.press-item{margin:0;border-top:1px solid var(--line);padding-top:18px}
.press-item blockquote{margin:0;font-family:var(--serif);font-size:clamp(22px,2vw,28px);line-height:1.25}
.press-item figcaption{margin-top:12px;font-size:14px;font-weight:650}
.press-item figcaption span{display:block;font-weight:400;color:var(--muted)}
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,72px)}
.plain-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.plain-list li{padding:14px 0;border-bottom:1px solid var(--line);display:grid;gap:3px}
.plain-list strong{font-size:17px;font-weight:700}
.plain-list span{font-size:15px;color:var(--muted)}
.two-col .actions{margin-top:24px}
.partner-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px}
.partner-list li{padding:9px 14px;border:1px solid var(--line);font-size:15px;font-weight:650;border-radius:2px}
.connection-note{border-color:var(--line)}
.connection-note h3{font-size:clamp(24px,2.4vw,32px)}
.connection-note p{font-size:17px}

/* Forms and catalogue */
.email-display{font-weight:720;font-stretch:85%}
.form-field input,.form-field textarea,.form-field select{border-color:var(--line);background:var(--paper);color:var(--ink);border-radius:2px}
.field-small label{font-family:var(--sans);font-size:13px;text-transform:none;letter-spacing:0;font-weight:650}
.field-small input,.field-small select{border-color:var(--line);background:var(--paper);color:var(--ink);font-size:15px;border-radius:2px}
.catalog-meta{font-family:var(--sans);font-size:14px}
.reset-filters{font-size:14px}
.empty-state{background:var(--paper-2)}

/* The flagship argument: question, distinction, mechanism, worlds, decisions */
.q-pair{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);gap:22px;align-items:center;padding:26px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.q-pair p:not(.eyebrow),.q-stack p:not(.eyebrow){font-size:clamp(22px,2.2vw,32px);font-weight:760;font-stretch:72%;line-height:1.08}
.q-old p:not(.eyebrow){color:var(--muted)}
.q-new p:not(.eyebrow){color:var(--tail-ink)}
.q-pair .turn-arrow{font-size:28px;color:var(--tail)}
.q-stack{display:grid;gap:16px;margin-bottom:22px;padding-left:18px;border-left:3px solid var(--tail)}
.why-punch{font-size:clamp(26px,2.6vw,38px)!important;font-weight:820;font-stretch:66%;line-height:1.02!important;margin-bottom:6px}
.why-copy .actions{margin-top:24px}
.ntp-block{margin-top:clamp(48px,6vw,84px)}
.ntp-block>h2{font-size:clamp(34px,4vw,60px);line-height:.95;margin-bottom:24px}
.ocv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.ocv>div{border-top:4px solid var(--ink);padding-top:16px}
.ocv>div:last-child{border-color:var(--tail)}
.ocv h3{font-size:clamp(28px,2.8vw,40px);margin-bottom:6px}
.ocv p{font-size:17px;color:var(--muted)}
.ntp-lede{margin-top:28px;font-family:var(--serif);font-size:clamp(20px,1.8vw,25px);line-height:1.5;max-width:960px}
.worlds-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.worlds-2 article{background:var(--paper-2);padding:clamp(22px,3vw,36px);border-top:4px solid var(--tail);display:flex;flex-direction:column}
.worlds-2 h3{font-size:clamp(28px,2.8vw,42px);line-height:1;margin:6px 0 14px}
.worlds-2 p:not(.eyebrow){font-size:17px;margin-bottom:18px}
.worlds-2 .text-link{margin-top:auto;align-self:flex-start}
.decision-list{list-style:none;padding:0;margin:24px 0 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px}
.decision-list li{font-size:18px;font-weight:650;padding-left:18px;position:relative}
.decision-list li:before{content:'';position:absolute;left:0;top:.5em;width:8px;height:8px;background:var(--tail);border-radius:50%}

/* Always-visible call to action and ways to work */
.header-cta{display:none}
.brand-name,.header-cta,.nav-toggle{white-space:nowrap}
.cta-ways{display:flex;flex-wrap:wrap;gap:10px 22px;align-items:baseline;margin-top:30px;padding-top:22px;border-top:1px solid var(--band-line)}
.cta-ways span{font-size:14px;color:var(--band-muted)}
.cta-ways a{font-size:15px;font-weight:650;color:var(--on-band);border-bottom:1px solid var(--band-muted);padding-bottom:2px}
.cta-ways a:hover{color:var(--tail-on-band);border-color:var(--tail-on-band)}
.ntp-note{margin-top:22px;font-size:15px;color:var(--muted);max-width:760px}

/* Big ideas: four featured with a thesis, five compact */
.paradigm-featured,.paradigm-rest{background:transparent;border:0;gap:14px}
.paradigm-featured{grid-template-columns:repeat(2,minmax(0,1fr))}
.paradigm-rest{grid-template-columns:repeat(5,minmax(0,1fr));margin-top:14px}
.paradigm-featured .paradigm-card,.paradigm-rest .paradigm-card{border:1px solid var(--line)}
.paradigm-card.is-featured{min-height:250px;background:var(--paper-2)}
.paradigm-card.is-featured h3{font-size:clamp(30px,3vw,46px)}
.paradigm-card.is-featured .paradigm-thesis{font-family:var(--serif);font-size:19px;color:var(--ink);line-height:1.45;margin:-4px 0 18px}
.paradigm-rest .paradigm-card{min-height:170px;padding:20px 18px}
.paradigm-rest .paradigm-card h3{font-size:22px}
.paradigm-rest .paradigm-card p{font-size:14px}

/* Design fiction: a story told through documents */
.case-content>*{min-width:0}
.df,.df-body{max-width:100%;min-width:0}
.df-sequence{margin-top:52px;padding-top:34px;border-top:1px solid var(--line)}
.df-sequence h2{font-size:clamp(36px,4.4vw,60px);line-height:.95;margin:6px 0 24px}
.df{margin:0 0 20px;border:1px solid var(--line);background:var(--paper);border-radius:2px;overflow:hidden}
.df figcaption{font-family:var(--sans);font-size:13px;font-weight:650;color:var(--muted);padding:10px 16px;border-bottom:1px solid var(--line);background:var(--paper-2)}
.df-body{white-space:pre-wrap;padding:16px 18px;font-size:18px;line-height:1.55;overflow-wrap:anywhere}
.df-log .df-body,.df-statement .df-body{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,'Liberation Mono',monospace;font-size:13.5px;line-height:1.6}
.df-statement .df-body{white-space:pre;overflow-x:auto;overflow-wrap:normal}
.df-log{background:var(--band);border-color:var(--band)}
.df-log figcaption{background:transparent;color:var(--band-muted);border-color:var(--band-line)}
.df-log .df-body{color:var(--on-band)}
.df-page .df-body{font-family:var(--sans);font-size:16px}

/* Lego stacks: red problems, green solutions */
:root{--brick-problem:#cf1760;--brick-solution:#1d8657}
.hero-sub{font-size:clamp(22px,2.1vw,30px);font-weight:760;font-stretch:80%;line-height:1.15;color:var(--ink);margin:0 0 12px}
.brick-demo{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.5fr);gap:clamp(24px,4vw,56px);align-items:start}
.brick-side{position:sticky;top:110px}
.brick-premise{font-size:clamp(24px,2.4vw,34px);font-weight:800;font-stretch:72%;line-height:1.08;color:var(--on-band);margin:0 0 22px}
.brick-actions{display:flex;flex-wrap:wrap;gap:12px 18px;align-items:center}
.brick-demo:not(.is-enhanced) .brick-actions{display:none}
.brick-key{display:flex;gap:16px;margin-top:22px}
.key{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--band-muted)}
.key:before{content:'';width:18px;height:12px;border-radius:2px;background:var(--brick-problem)}
.key-solution:before{background:var(--brick-solution)}
.brick-stack{list-style:none;margin:0;padding:12px 0 0;display:flex;flex-direction:column-reverse;gap:16px}
.brick{position:relative;padding:16px 20px 15px;border-radius:5px;color:#fff;box-shadow:inset 0 -4px 0 rgba(0,0,0,.18)}
.brick:before,.brick:after{content:'';position:absolute;top:-9px;width:34px;height:10px;border-radius:5px 5px 0 0;background:inherit}
.brick:before{left:24px}.brick:after{left:74px}
.brick-problem{background:var(--brick-problem)}
.brick-solution{background:var(--brick-solution)}
.brick-kind{display:block;font-size:12px;font-weight:700;opacity:.9}
.brick h3{font-size:clamp(21px,2vw,27px);line-height:1.1;margin:3px 0 6px;color:#fff}
.brick p{font-size:15px;line-height:1.5;margin:0;color:#fff}
.brick.newest{outline:3px solid var(--on-band);outline-offset:3px}
.brick-outcome{margin-top:26px}
.brick-outcome-line{font-size:clamp(24px,2.6vw,36px);font-weight:820;font-stretch:66%;line-height:1.05;color:var(--on-band);margin:0 0 14px}
@media (prefers-reduced-motion:no-preference){.brick.newest{animation:brickIn .35s ease-out}}
@keyframes brickIn{from{transform:translateY(-14px);opacity:0}to{transform:none;opacity:1}}

/* Six ways to work */
.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.offer{border:1px solid var(--line);padding:24px 22px;background:var(--paper)}
.offer h3{font-size:clamp(24px,2.2vw,32px);margin:0 0 8px}
.offer h3 a{color:var(--ink);text-decoration:none}
.offer h3 a:hover{color:var(--tail)}
.offer p{font-size:16px;line-height:1.5;color:var(--muted);margin:0 0 12px}
.offer .offer-eg{font-size:14px;margin:0}
.sub-head{font-size:clamp(22px,2vw,28px);margin:34px 0 14px}
.archaeology{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:clamp(24px,4vw,56px);align-items:start}
.arch-figure{margin:0}
.arch-figure img{width:100%;height:auto;display:block;border:1px solid var(--line)}
.arch-figure figcaption{font-size:13px;color:var(--muted);margin-top:8px}
.arch-copy h2{font-size:clamp(40px,5vw,72px);line-height:.95;margin:6px 0 14px}
.workshop-sub{font-family:var(--serif);font-size:21px;color:var(--ink);margin:0 0 12px}
.format-list{list-style:none;padding:0;margin:24px 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.format-list li{border-top:2px solid var(--ink);padding-top:12px}
.format-list strong{display:block;font-size:20px;margin-bottom:6px}
.format-list span{font-size:15px;color:var(--muted)}
#team .engagement-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.film-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ntp-headline{font-size:clamp(30px,3.4vw,48px);font-weight:820;font-stretch:66%;line-height:1.02;margin:0;color:var(--ink)}
.ntp-caption{font-size:14px;color:var(--muted);margin:8px 0 18px}
.premise-note{font-size:14px;color:var(--muted);font-style:italic}
.worlds-2 .world-card{border-top:2px solid var(--ink);padding-top:14px}
.shift{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:12px 0 22px}
.shift p{font-size:clamp(22px,2.2vw,30px);font-weight:780;line-height:1.1;margin:0}
.shift span{display:block;font-size:13px;font-weight:650;color:var(--muted);margin-bottom:4px}
@media (max-width:1150px){.offer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.film-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.brick-demo,.archaeology,.format-list,#team .engagement-grid,.shift{grid-template-columns:1fr}.brick-side{position:static}}
@media (max-width:600px){.offer-grid,.film-grid-3{grid-template-columns:1fr}}

/* Permission Economy: four kinds of permission */
.perm-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin:8px 0 22px}
.perm{border-top:2px solid var(--ink);padding-top:12px}
.perm h3{font-size:22px;margin:0 0 8px}
.perm p{font-size:15px;line-height:1.5;color:var(--muted);margin:0 0 10px}
@media (max-width:1150px){.perm-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.perm-grid{grid-template-columns:1fr}}

/* Two ways in: films and futures */
.hero-split{padding:clamp(34px,5vw,70px) 0 clamp(30px,4vw,56px)}
.hero-split .split-h1{font-size:clamp(36px,4.6vw,74px);line-height:.98;max-width:21ch;margin:0 0 clamp(30px,3.6vw,52px);padding-bottom:.06em}
.ways{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2vw,24px)}
.way{border:1px solid var(--line);background:var(--paper-2);padding:clamp(22px,2.6vw,34px);display:flex;flex-direction:column}
.way-kind{font-size:14px;font-weight:700;color:var(--tail);margin:0 0 6px}
.way h2{font-size:clamp(30px,3.3vw,50px);line-height:.95;margin:0 0 12px}
.way-lede{font-size:17px;line-height:1.5;color:var(--ink);margin:0 0 18px;max-width:48ch}
.way-pair{margin:0 0 16px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.way-pair p{margin:0}
.way-pair .pl{display:block;font-size:13px;font-weight:650;color:var(--muted);margin-top:10px}
.way-pair p:first-child .pl{margin-top:0}
.way-pair .p-old{display:block;font-size:17px;color:var(--muted)}
.way-pair .p-new{display:block;font-size:clamp(20px,1.9vw,26px);font-weight:800;line-height:1.15;color:var(--ink)}
.way-for{font-size:14px;color:var(--muted);margin:0 0 18px}
.way .actions{margin-top:auto}
.writers-line{margin:18px 0 0;font-size:15px;color:var(--muted)}
.records-line{font-size:15px;color:var(--muted);margin:18px 0 0}
.proof-inner{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.ways-overview{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(18px,3vw,44px)}
.ways-col h3{font-size:clamp(26px,2.4vw,34px);margin:0 0 10px}
.ways-list{list-style:none;padding:0;margin:0;display:grid}
.ways-list li{border-top:1px solid var(--line);padding:12px 0}
.ways-list a{font-weight:750;font-size:18px;color:var(--ink);text-decoration:none}
.ways-list a:hover{color:var(--tail)}
.ways-list span{display:block;font-size:15px;line-height:1.45;color:var(--muted);margin-top:2px}
.ways-col-futures .ways-list{grid-template-columns:1fr 1fr;column-gap:26px}
.ways-both{margin-top:22px;border:1px solid var(--ink);padding:20px 22px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center}
.ways-both h3{margin:0 0 4px;font-size:clamp(22px,2vw,28px)}
.ways-both h3 a{color:var(--ink);text-decoration:none}
.ways-both p{margin:0;color:var(--muted)}
@media (max-width:1150px){.proof-inner{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.ways,.ways-overview,.ways-col-futures .ways-list,.ways-both{grid-template-columns:1fr}}
@media (max-width:600px){.proof-inner{grid-template-columns:1fr}}

/* Responsive */
@media (max-width:1150px){
  .film-grid-4,.record-grid-4,.press-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .paradigm-rest{grid-template-columns:repeat(3,minmax(0,1fr))}
  .header-cta{display:inline-flex;margin-left:auto;margin-right:8px}
}
@media (max-width:860px){
  .hero-top,.curve-foot,.why-grid,.prop-head,.door-head,.newsletter-inner,.about-layout,.two-col,.proof-feature{grid-template-columns:1fr}
  .doors{grid-template-columns:1fr}
  .door,.door+.door{padding:18px 0 22px;border-right:0;border-bottom:1px solid var(--line)}
  .door:last-child{border-bottom:0}
  .formats,.more-films,.ocv,.worlds-2,.decision-list,.paradigm-featured,.paradigm-rest{grid-template-columns:1fr}
  .q-pair{grid-template-columns:1fr;gap:10px}
  .q-pair .turn-arrow{transform:rotate(90deg);justify-self:start}
  .capability-layout{grid-template-columns:1fr}
  .capability-tabs{border-right:0;border-bottom:1px solid var(--line)}
  .bio-card{position:static}
  .references{grid-template-columns:1fr}
  .header-inner{height:66px}
  .world-demo-v2{grid-template-columns:minmax(0,1fr)}
  .world-node{min-width:0}
  .chain-step{font-size:12px}
}
@media (max-width:600px){
  .hero h1{font-size:clamp(54px,18vw,96px)}
  .film-grid,.film-grid-4,.record-grid-4,.press-grid{grid-template-columns:1fr}
  .tick-label,.pin-label{display:none}
  .mean-label{font-size:40px}
  .tail-label{font-size:36px}
  .award-row{grid-template-columns:1fr;gap:6px}
  .brand-sub{display:none}
  .brand-mark svg{width:30px}
  .header-cta{padding:7px 12px;font-size:13px;min-height:36px}
  .nav-toggle{padding:7px 10px;font-size:13px}
  .curve-chips{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding-bottom:8px}
  .curve-chip{flex:none;margin:0}
  .curve-chips-label{flex:none;align-self:center;margin:0 4px 0 0}
  .cc-expect [data-curve-expect]{font-size:17px}
  .chain-stepper,.world-instruction{display:none}
  .page-head h1,.case-head-copy h1{font-size:clamp(40px,12.5vw,64px)}
  h1,h2,h3{hyphens:auto;overflow-wrap:break-word}
  .world-node h3{overflow-wrap:anywhere}
}
@media (max-width:380px){
  .brand-mark{display:none}
  .nav-toggle span{display:none}
  .brand-name{font-size:18px}
  .header-cta{padding:7px 10px}
  .header-inner{gap:8px}
}
@media print{
  .curve-chips,.world-tabs{display:none!important}
  .card-reveal,.film-reveal{position:static!important;opacity:1!important;background:none!important;color:inherit!important}
}


/* ===== Calmer scale: more whitespace, smaller type ===== */
body{font-size:17px;line-height:1.6}
.lede{font-size:clamp(17px,1.35vw,20px);line-height:1.55}
.prose{font-size:19px;line-height:1.7}
.section{padding-top:clamp(64px,8vw,124px);padding-bottom:clamp(64px,8vw,124px)}
.section-head{margin-bottom:clamp(32px,3.4vw,52px);gap:40px}
.section-head h2,.door-head h2,.prop-head h2,.why h2,.ntp-block>h2,.df-sequence h2,.arch-copy h2,.proof-copy h2,.intro-section h2{font-size:clamp(26px,2.7vw,40px);line-height:1.08;letter-spacing:-.025em}
.section-head>p{font-size:16px;max-width:360px}
.featured-world{padding:clamp(72px,8.5vw,128px) 0}
.contact-band{padding:clamp(64px,7.5vw,112px) 0}
.contact-band h2{font-size:clamp(28px,3vw,46px);line-height:1.06}
.contact-band p{font-size:16px}
.newsletter h2{font-size:clamp(30px,3.4vw,52px)}
.page-head h1{font-size:clamp(36px,4.6vw,66px);line-height:1}
.case-head-copy h1{font-size:clamp(34px,4.2vw,60px);line-height:1}
.bio-card h2{font-size:clamp(30px,3vw,44px)}
.hero-split{padding:clamp(56px,7vw,112px) 0 clamp(56px,6.5vw,104px)}
.hero-split .split-h1{font-size:clamp(32px,3.7vw,56px);line-height:1.04;letter-spacing:-.035em;max-width:22ch;margin:0 0 clamp(36px,4vw,60px)}
.ways{gap:clamp(18px,2.4vw,32px)}
.way{padding:clamp(28px,3.2vw,48px);background:transparent}
.way h2{font-size:clamp(24px,2.3vw,34px);line-height:1.05}
.way-lede{font-size:16px}
.way-pair .p-old{font-size:16px}
.way-pair .p-new{font-size:clamp(18px,1.6vw,22px)}
.hero-sub{font-size:clamp(19px,1.7vw,24px)}
.q-old p:not(.eyebrow),.q-new p:not(.eyebrow){font-size:clamp(18px,1.8vw,24px)}
.ntp-headline{font-size:clamp(24px,2.6vw,36px)}
.shift p{font-size:clamp(19px,1.8vw,24px)}
.brick-premise{font-size:clamp(20px,1.9vw,27px)}
.brick-outcome-line{font-size:clamp(20px,2vw,28px)}
.brick h3{font-size:clamp(18px,1.6vw,22px)}
.paradigm-card.is-featured{min-height:0}
.paradigm-card.is-featured h3{font-size:clamp(24px,2.2vw,32px)}
.offer h3,.ways-col h3{font-size:clamp(20px,1.8vw,26px)}
.world-stage h3{font-size:clamp(22px,2.2vw,32px)}
.proof-strip{padding-top:clamp(28px,3vw,44px);padding-bottom:clamp(28px,3vw,44px)}
.ways-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(24px,3vw,44px)}
.films-pointer{margin:28px 0 0;font-size:15px;color:var(--muted)}
.format-list-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:1150px){.ways-grid,.format-list-4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.section{padding-top:56px;padding-bottom:56px}.featured-world{padding:60px 0}}
@media (max-width:600px){.section{padding-top:44px;padding-bottom:44px}.ways-grid,.format-list-4{grid-template-columns:1fr}}
.curve-caption .cc-flip{font-size:clamp(22px,2.3vw,32px);line-height:1.12}
.curve-caption .cc-expect{font-size:clamp(16px,1.3vw,19px)}

/* ===== Self-assembling bricks ===== */
h1,h2,h3,.split-h1{-webkit-hyphens:manual;hyphens:manual}
.brick-demo.is-enhanced .brick.pending,.brick-demo.is-enhanced .brick-outcome.pending{visibility:hidden}
.brick-demo:not(.is-enhanced) .brick-tray{display:none}
.brick-outcome{margin:0 0 26px}
.brick{padding:13px 18px 12px}
.brick h3{font-size:clamp(17px,1.45vw,20px);margin:2px 0 4px}
.brick p{font-size:14px}
.brick-stack{gap:14px}
@keyframes brickDrop{0%{transform:translateY(-150px) rotate(-3deg);opacity:0}55%{transform:translateY(5px) rotate(.4deg);opacity:1}72%{transform:translateY(-3px)}100%{transform:none;opacity:1}}
@keyframes brickLand{0%,55%{box-shadow:inset 0 -4px 0 rgba(0,0,0,.18),0 0 0 0 rgba(255,255,255,.55)}100%{box-shadow:inset 0 -4px 0 rgba(0,0,0,.18),0 0 0 14px rgba(255,255,255,0)}}
@keyframes futureArrive{0%{transform:translateY(-24px) scale(.98);opacity:0}100%{transform:none;opacity:1}}
.brick.dropping{animation:brickDrop .75s cubic-bezier(.2,.8,.3,1) both,brickLand 1s ease-out both}
.brick-outcome.arriving{animation:futureArrive .8s cubic-bezier(.2,.8,.3,1) both}
.brick-tray{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin-top:22px}
.tray-label{font-size:12px;color:var(--band-muted);margin-right:4px}
.mini{position:relative;width:22px;height:11px;border-radius:2px;background:var(--brick-problem);transition:opacity .45s ease,transform .45s ease}
.mini-solution{background:var(--brick-solution)}
.mini:before,.mini:after{content:'';position:absolute;top:-4px;width:6px;height:4px;border-radius:2px 2px 0 0;background:inherit}
.mini:before{left:3px}.mini:after{left:13px}
.mini.used{opacity:.14;transform:translateY(-6px)}
.steps3{list-style:none;counter-reset:s;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;padding:0;margin:8px 0 30px}
.steps3 li{counter-increment:s;border-top:2px solid var(--ink);padding-top:12px}
.steps3 li:before{content:counter(s);display:block;font-weight:800;color:var(--tail);margin-bottom:6px}
.steps3 strong{display:block;font-size:19px;margin-bottom:4px}
.steps3 span{font-size:15px;color:var(--muted)}
@media (max-width:860px){.brick-demo.is-enhanced .brick.pending,.brick-demo.is-enhanced .brick-outcome.pending{display:none}.steps3{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.brick.dropping,.brick-outcome.arriving{animation:none}.mini{transition:none}}

/* ==========================================================================
   Expedition layer (round nine). Loaded after styles-v3.css and overrides it.
   Palette from Antony's portrait: the navy of the studio backdrop, a field
   notebook's cream, the leather of the hat, map-route red, and brass for awards.
   Archivo stays for headings and labels, set condensed like expedition posters.
   Newsreader carries Antony's voice: the hero line, ledes, body and quotes.
   ========================================================================== */
:root{
  --backdrop:#152535;--backdrop-deep:#0e1a28;
  --paper:#f3ede1;--paper-2:#e9e0cf;--ink:#1f1a17;--muted:#665a4f;--line:#d8cdb9;
  --mean:#a69b8b;--tail:#c0432b;--tail-ink:#9c3320;--tail-on-band:#ee7a60;
  --band:#152535;--on-band:#f3ede1;--band-muted:#b4bec8;--band-line:#2c3e52;
  --brass:#c9a045;--brass-ink:#7d5f17;--saddle:#8a5a3c;
  --btn:#b23a24;--btn-hover:#8f2e1c;
  --cream:#e6dcc8;--lime:#dcdcc0;--lavender:#d9d5df;--blue:#cfdbe1;--orange:#ecd1b8;--pink:#e8cdc4;
  --brick-problem:#b23a24;--brick-solution:#2e6b4e;
  --typewriter:ui-monospace,SFMono-Regular,Menlo,Consolas,'Liberation Mono',monospace;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --paper:#0f1a26;--paper-2:#152434;--ink:#eee7da;--muted:#b3aa9c;--line:#2a3a4c;
    --mean:#6f7c8b;--tail:#e7694f;--tail-ink:#f28e76;--tail-on-band:#f28e76;
    --band:#0b141f;--on-band:#eee7da;--band-muted:#a3afbc;--band-line:#24354a;
    --brass:#d8b45a;--brass-ink:#d8b45a;--saddle:#c9976f;
    --btn:#c0432b;--btn-hover:#d9583d;
    --cream:#26231e;--lime:#23261b;--lavender:#25243a;--blue:#172a36;--orange:#30241a;--pink:#33211e;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --paper:#0f1a26;--paper-2:#152434;--ink:#eee7da;--muted:#b3aa9c;--line:#2a3a4c;
  --mean:#6f7c8b;--tail:#e7694f;--tail-ink:#f28e76;--tail-on-band:#f28e76;
  --band:#0b141f;--on-band:#eee7da;--band-muted:#a3afbc;--band-line:#24354a;
  --brass:#d8b45a;--brass-ink:#d8b45a;--saddle:#c9976f;
  --btn:#c0432b;--btn-hover:#d9583d;
  --cream:#26231e;--lime:#23261b;--lavender:#25243a;--blue:#172a36;--orange:#30241a;--pink:#33211e;
  color-scheme:dark;
}

/* Voice and buttons */
body{background:var(--paper);color:var(--ink)}
.prose,.lede,.panel-lede,.case-deck,.film-card .film-story,.find-desc,.newsletter-inner p,.bridge-copy p{font-family:var(--serif)}
.btn{background:var(--btn);border-color:var(--btn);color:#fff}
.btn:hover{background:var(--btn-hover);border-color:var(--btn-hover);color:#fff}
.btn-light{background:var(--on-band);border-color:var(--on-band);color:var(--backdrop)}
.btn-light:hover{background:var(--btn);border-color:var(--btn);color:#fff}
.btn-outline{background:transparent;color:var(--ink);border-color:var(--line)}
.btn-outline:hover{background:var(--paper-2);color:var(--ink);border-color:var(--ink)}

/* Home: the header joins the hero, so the first screen is one navy frame */
body:has(main[data-page="index"]) .header{--ink:#f3ede1;--muted:#b4bec8;--line:#2c3e52;background:var(--backdrop);border-bottom-color:transparent;color:var(--ink)}
body:has(main[data-page="index"]) .header .brand-sub{color:#b4bec8}

/* Hero: the portrait melts into its own backdrop colour */
.hero-expedition{background:var(--backdrop);color:#f3ede1;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(20px,3vw,48px);align-items:end}
.hero-copy{padding:clamp(44px,6.5vw,104px) 0 clamp(40px,5.5vw,84px);align-self:center}
.hero-name{font-size:15px;font-weight:650;color:#d8b45a;margin:0 0 18px}
.hero-expedition .hero-line{font-family:var(--serif);font-weight:400;font-stretch:normal;font-size:clamp(34px,4.3vw,64px);line-height:1.06;letter-spacing:-.012em;margin:0 0 clamp(28px,3.4vw,44px);max-width:20ch;color:#f3ede1}
.hero-portrait{margin-right:calc(-1*var(--gutter));align-self:end}
.hero-portrait img{display:block;width:100%;height:auto;max-height:720px;object-fit:cover;object-position:50% 20%;-webkit-mask-image:radial-gradient(82% 115% at 66% 38%,#000 50%,transparent 80%);mask-image:radial-gradient(82% 115% at 66% 38%,#000 50%,transparent 80%)}

/* Futures or films: two links that become tabs */
.view-switch{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:540px}
.view-option{display:flex;flex-direction:column;gap:4px;padding:14px 18px 15px;border:1px solid rgba(243,237,225,.34);border-radius:3px;color:#f3ede1;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s}
.view-option:hover{border-color:#f3ede1}
.view-name{font-family:var(--sans);font-weight:820;font-stretch:78%;font-size:clamp(22px,2vw,28px);line-height:1}
.view-note{font-family:var(--serif);font-style:italic;font-size:15px;line-height:1.3;color:#c3ccd5}
.view-switch.is-enhanced .view-option[aria-selected="true"]{background:#f3ede1;border-color:#f3ede1;color:var(--backdrop);box-shadow:inset 0 -4px 0 var(--tail)}
.view-switch.is-enhanced .view-option[aria-selected="true"] .view-note{color:#5f5348}
.view-option:focus-visible{outline:3px solid #d8b45a;outline-offset:3px}
[data-view][hidden],[data-stream][hidden],[data-film-group][hidden]{display:none!important}

/* Awards: brass, always visible, each with the role and a link to the evidence */
.awards-band{background:var(--backdrop-deep);color:#f3ede1;border-top:1px solid #23364b;padding:clamp(22px,2.6vw,34px) 0}
.awards-grid{list-style:none;margin:0 auto;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px clamp(20px,3vw,44px)}
.award{display:block;color:inherit;text-decoration:none;border-top:2px solid rgba(201,160,69,.5);padding-top:10px}
.award:hover{border-top-color:#d8b45a}
.award-name{display:block;font-weight:750;font-stretch:84%;font-size:clamp(17px,1.35vw,20px);line-height:1.15;color:#d8b45a}
.award-role{display:block;font-family:var(--serif);font-size:15px;line-height:1.35;color:#bcc6d0;margin-top:4px}

/* Panel intros */
.panel-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);align-items:end;padding-top:clamp(52px,6.5vw,104px)}
.panel-intro h2{font-size:clamp(30px,3.5vw,52px);line-height:1;margin:0 0 16px;max-width:17ch}
.panel-lede{font-size:clamp(18px,1.5vw,21px);line-height:1.5;margin:0 0 12px;max-width:46ch}
.panel-intro .actions{margin-top:22px}
.panel-intro .way-pair{margin:0}
.panel-intro .way-pair .p-old{font-family:var(--serif);font-size:18px}
.panel-intro .way-pair .p-new{font-family:var(--serif);font-weight:400;font-size:clamp(24px,2.4vw,34px);line-height:1.15}

/* Finds: design fiction shown like museum pieces */
.finds-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(18px,2.4vw,32px);align-items:start}
.finds-home{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr)}
.finds-wide-row{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:clamp(22px,2.8vw,36px)}
.finds-pair{grid-template-columns:repeat(var(--n,3),minmax(0,1fr))}
.finds-pair .find{width:100%;max-width:400px;justify-self:center}
.finds-phase h3{font-size:clamp(22px,2vw,28px);line-height:1.1;margin:0 0 6px}
.finds-phase-text{font-family:var(--serif);font-style:italic;font-size:17px;color:var(--muted);margin:0 0 20px}
.finds-phase+.finds-phase{margin-top:clamp(44px,5vw,76px);padding-top:clamp(28px,3vw,40px);border-top:1px solid var(--line)}
.find{margin:0;min-width:0}
.find img{display:block;width:100%;height:auto;border:1px solid var(--line);background:var(--paper-2)}
.find-label{margin-top:12px;padding:12px 14px 13px;border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 55%,var(--paper-2))}
.find-title{font-weight:780;font-stretch:84%;font-size:clamp(18px,1.4vw,21px);line-height:1.15;margin:0 0 4px}
.find-desc{font-size:15.5px;line-height:1.45;margin:0 0 10px}
.find-meta{display:flex;flex-wrap:wrap;gap:4px 18px;margin:0;font-family:var(--typewriter);font-size:12px}
.find-meta div{display:flex;gap:6px}
.find-meta dt{color:var(--muted)}
.find-meta dd{margin:0;color:var(--saddle)}
.finds-note{margin:20px 0 0;font-size:14px;color:var(--muted);max-width:72ch}
.case-hero-find{margin:0;justify-self:end;width:100%;max-width:400px}
.case-hero-find img{display:block;width:100%;height:auto;border:1px solid var(--line)}
.case-hero-find figcaption{font-family:var(--typewriter);font-size:12px;line-height:1.5;color:var(--muted);margin-top:8px}

/* Films always show their credits; the awards are brass */
.film-reveal{position:static!important;opacity:1!important;background:none!important;color:inherit!important;pointer-events:auto!important;aspect-ratio:auto!important;padding:0!important;margin:12px 0 0!important;overflow:visible!important}
.film-card .film-reveal .film-role{color:var(--ink)!important}
.film-reveal .film-quote span{color:var(--muted)!important}
.film-card .film-awards li{color:var(--brass-ink)!important;font-weight:650;font-size:14px;line-height:1.4}

/* Where I've lived: passport stamps */
.stamps{list-style:none;padding:0;margin:0 0 24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(16px,2.4vw,32px)}
.stamp{border:2px solid var(--tail);border-radius:10px;padding:16px 18px 18px;color:var(--tail-ink);transform:rotate(-1.4deg)}
.stamp:nth-child(2){transform:rotate(1deg);border-color:var(--saddle);color:var(--saddle)}
.stamp:nth-child(3){transform:rotate(-.5deg)}
.stamp-place{display:block;font-weight:850;font-stretch:70%;font-size:clamp(28px,2.6vw,38px);line-height:1}
.stamp-time{display:block;font-family:var(--typewriter);font-size:13px;margin:6px 0 10px}
.stamp-note{display:block;font-family:var(--serif);font-size:16px;line-height:1.4;color:var(--ink)}

/* A film from a future */
.bridge-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center}
.bridge-copy h2{font-size:clamp(28px,3vw,44px);line-height:1.02;margin:0 0 14px}
.bridge-copy p{font-size:19px;line-height:1.55;margin:0 0 18px}

/* The statistician's note under the curve */
.curve-quant{font-family:var(--serif);font-style:italic;font-size:17px;line-height:1.55;color:var(--muted);max-width:72ch;margin:26px 0 0;padding-top:16px;border-top:1px solid var(--line)}

/* About: portrait in the bio card, redactions, press photos */
.bio-card{background:var(--backdrop)!important;color:#f3ede1;overflow:hidden;padding:0 28px 28px}
.bio-photo{margin:0 -28px 22px}
.bio-photo img{display:block;width:100%;height:auto;-webkit-mask-image:linear-gradient(to bottom,#000 74%,transparent);mask-image:linear-gradient(to bottom,#000 74%,transparent)}
.bio-card h2{color:#f3ede1}
.bio-card p,.bio-line span{color:#bcc6d0}
.bio-line{border-top-color:#2c3e52}
.redaction{margin:14px 0 6px}
.redaction-bars{display:grid;gap:7px;margin:0 0 10px}
.redaction-bars span{display:block;height:13px;background:var(--ink);border-radius:1px}
.redaction-note{font-family:var(--typewriter);font-size:12.5px;line-height:1.5;color:var(--muted);margin:0}
.press-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2.4vw,32px)}
.press-photo{margin:0}
.press-photo img{display:block;width:100%;height:auto;border-radius:2px}
.press-photo figcaption{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px 12px;margin-top:10px;font-size:15px}

/* Speaking, with the serious portrait */
.speaking-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:start}
.speaking-photo{margin:0}
.speaking-photo img{display:block;width:100%;height:auto;border-radius:2px}
.format-list-2{grid-template-columns:repeat(2,minmax(0,1fr))}

/* Brick stacks build from the top, where the visitor is looking */
.brick-demo.is-enhanced .brick.pending,.brick-demo.is-enhanced .brick-outcome.pending{display:none}

@media (max-width:1150px){
  .awards-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:860px){
  .panel-intro,.bridge-grid,.speaking-layout{grid-template-columns:1fr}
  .finds-home,.finds-grid:not(.finds-wide-row){display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:14px;margin-right:calc(-1*var(--gutter));padding-right:var(--gutter);padding-bottom:10px}
  .finds-home .find,.finds-grid:not(.finds-wide-row) .find{flex:0 0 78%;scroll-snap-align:start}
  .finds-wide-row{grid-template-columns:1fr}
  .stamps{grid-template-columns:1fr;max-width:480px}
  .speaking-photo{max-width:420px}
  .case-hero-find{justify-self:start}
}
@media (max-width:760px){
  .hero-grid{grid-template-columns:1fr;gap:0}
  .hero-portrait{order:-1;margin:0 calc(-1*var(--gutter))}
  .hero-portrait img{aspect-ratio:4/3;max-height:none;object-position:50% 24%;-webkit-mask-image:linear-gradient(to bottom,#000 72%,transparent);mask-image:linear-gradient(to bottom,#000 72%,transparent)}
  .hero-copy{padding:4px 0 34px}
  .hero-expedition .hero-line{font-size:clamp(29px,8.2vw,44px)}
}
@media (max-width:600px){
  .awards-grid,.press-photos,.format-list-2{grid-template-columns:1fr}
  .view-option{padding:12px 14px 13px}
}
@media (prefers-reduced-motion:reduce){.view-option{transition:none}}

/* The reel: design fiction flicking past, just too fast to read (round ten) */
.panel-intro.has-reel{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(28px,4.5vw,80px)}
.panel-intro.has-reel h2{max-width:none;font-size:clamp(28px,3vw,46px);line-height:1.04}
.reel{margin:0;min-width:0}
.reel-track{list-style:none;margin:0;padding:0}
.reel-slide{margin:0;min-width:0}
.reel-frame{display:flex;align-items:center;justify-content:center;aspect-ratio:1/1;background:var(--backdrop-deep);padding:clamp(12px,2.2vw,26px);border-radius:3px;overflow:hidden}
.reel-frame img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 12px 32px rgba(0,0,0,.4)}
.reel-caption{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:12px 0 0;min-height:2.9em}
.reel-title{font-weight:780;font-stretch:84%;font-size:clamp(18px,1.5vw,22px);line-height:1.15}
.reel-meta{font-family:var(--typewriter);font-size:12px;color:var(--saddle)}
.reel-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px 12px;margin-top:6px}
.reel-progress{flex:1 1 100%;height:3px;background:var(--line);overflow:hidden}
.reel-progress span{display:block;height:100%;background:var(--tail);transform:scaleX(0);transform-origin:left center}
.reel-btn{background:none;border:1px solid var(--line);border-radius:2px;color:var(--ink);font:inherit;font-size:14px;font-weight:650;padding:6px 12px;cursor:pointer}
.reel-btn:hover{border-color:var(--ink)}
.reel-count{font-family:var(--typewriter);font-size:12px;color:var(--muted)}
.reel-bar .text-link{margin-left:auto}
.reel-note{font-size:13px;color:var(--muted);margin:12px 0 0}
.reel.is-enhanced .reel-track{display:grid}
.reel.is-enhanced .reel-slide{grid-area:1/1;opacity:0;visibility:hidden;transition:opacity .22s ease,visibility 0s linear .22s}
.reel.is-enhanced .reel-slide.is-current{opacity:1;visibility:visible;transition:opacity .22s ease}
.reel:not(.is-enhanced) .reel-track{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}
.reel:not(.is-enhanced) .reel-slide{flex:0 0 78%;scroll-snap-align:start}
.reel:not(.is-enhanced) .reel-progress,.reel:not(.is-enhanced) .reel-btn,.reel:not(.is-enhanced) .reel-count{display:none}
@media (max-width:860px){.panel-intro.has-reel{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.reel.is-enhanced .reel-slide{transition:none}}
.panel-intro .h-line,.panel-intro-split .h-line{display:block;text-wrap:balance}

/* Films are their own stream: a screening room, not the futures archive (round eleven) */
.stream-films{--paper:#0b1118;--paper-2:#121c28;--ink:#eee7da;--muted:#b3aa9c;--line:#26354a;--mean:#6f7c8b;--tail:#e7694f;--tail-ink:#f28e76;--tail-on-band:#f28e76;--band:#152535;--on-band:#eee7da;--band-muted:#a3afbc;--band-line:#2c3e52;--brass-ink:#d8b45a;--saddle:#c9976f;--btn:#c0432b;--btn-hover:#d9583d;background:var(--paper);color:var(--ink)}
body:has(main > .stream-films){background:#0b1118}
body:has(main > .stream-films) .header{--ink:#eee7da;--muted:#b3aa9c;--line:#26354a;background:#0b1118;border-bottom-color:#1c2836;color:var(--ink)}
.stream-films .film-frame{box-shadow:0 0 0 1px #22344a}
.film-filter{display:none;flex-wrap:wrap;align-items:center;gap:8px 10px;margin:0 0 clamp(22px,2.6vw,34px)}
.film-filter.is-enhanced{display:flex}
.filter-btn{background:none;border:1px solid var(--line);border-radius:999px;color:var(--ink);font:inherit;font-size:15px;font-weight:650;padding:8px 16px;cursor:pointer}
.filter-btn:hover{border-color:var(--ink)}
.filter-btn[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.filter-count{font-family:var(--typewriter);font-size:12px;color:var(--muted);margin-left:6px}
.more-films-group{margin-top:clamp(36px,4vw,56px)}
.film-hero{padding:clamp(24px,3vw,40px) 0 clamp(40px,5vw,72px)}
.film-hero-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:center;margin-top:clamp(16px,2vw,28px)}
.film-hero .film-frame span{font-size:clamp(30px,3.4vw,54px)}
.film-type{font-family:var(--typewriter);font-size:13px;color:var(--brass-ink);margin:0 0 12px}
.film-hero h1{font-size:clamp(36px,4.4vw,64px);line-height:1;margin:0 0 18px}
.film-pair p{margin:0}
.film-pair .pl{display:block;font-size:13px;font-weight:650;color:var(--muted);margin-top:12px}
.film-pair p:first-child .pl{margin-top:0}
.film-pair .p-old{display:block;font-family:var(--serif);font-size:18px;color:var(--muted)}
.film-pair .p-new{display:block;font-family:var(--serif);font-size:clamp(20px,1.9vw,26px);line-height:1.25}
.film-hero-role{font-weight:700;color:var(--brass-ink);margin:18px 0 8px}
.film-hero-awards{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:5px}
.film-hero-awards li{font-size:15px;line-height:1.4;padding-left:18px;position:relative}
.film-hero-awards li:before{content:'';position:absolute;left:0;top:.5em;width:8px;height:8px;border-radius:50%;background:var(--brass-ink)}
.film-body{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:clamp(28px,5vw,88px);padding-top:clamp(40px,5vw,72px);padding-bottom:clamp(56px,6vw,96px);border-top:1px solid var(--line);align-items:start}
.film-credits{border:1px solid var(--line);padding:22px 24px;background:var(--paper-2)}
.film-credits h2{font-size:22px;margin:0 0 6px}
.film-credits .eyebrow{margin:16px 0 4px}
.film-credits p{margin:0;font-size:15px}
.film-credits .film-awards li{color:var(--ink)!important;font-size:14px;line-height:1.45;margin-bottom:6px;font-weight:400}
@media (max-width:860px){.film-hero-grid,.film-body{grid-template-columns:1fr}}

/* A grid of futures, one open portal (rounds twelve and thirteen) */
.panel-intro-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,4vw,72px);align-items:end;padding-top:clamp(52px,6.5vw,104px)}
.panel-intro-split h2{font-size:clamp(28px,3vw,46px);line-height:1.04;margin:0}
.futures-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(26px,2.4vw,38px) clamp(18px,2vw,26px);grid-auto-flow:dense}
.futures-grid .case-card.is-featured{grid-column:span 2;grid-row:span 2;display:flex;flex-direction:column}
.futures-grid .case-card.is-featured .card-main{flex:1;display:flex;flex-direction:column}
.futures-grid .case-card.is-featured .case-live{flex:1;height:auto;min-height:380px}
.futures-grid .case-card.is-featured h3{font-size:clamp(28px,2.6vw,38px)}
.futures-grid .case-card.is-featured .card-flip{font-family:var(--serif);font-size:clamp(18px,1.5vw,22px)}
.case-card.is-live{position:relative}
.case-live{position:relative;height:250px;background:var(--backdrop-deep);border-radius:2px;overflow:hidden}
.live-track{list-style:none;margin:0;padding:0;position:absolute;inset:0}
.live-slide{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:44px 14px 40px;opacity:0;transition:opacity .2s ease}
.live-slide:first-child,.case-live.is-enhanced .live-slide.is-current{opacity:1}
.case-live.is-enhanced .live-slide:not(.is-current){opacity:0}
.live-slide img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 10px 26px rgba(0,0,0,.45)}
.live-caption{position:absolute;left:14px;right:14px;bottom:12px;font-weight:750;font-stretch:84%;font-size:15px;line-height:1.2;color:#f3ede1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.live-badge{position:absolute;top:12px;left:12px;z-index:2;font-family:var(--typewriter);font-size:12px;color:#d8b45a;background:rgba(14,26,40,.88);padding:4px 9px;border-radius:2px}
.live-badge:before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:#e7694f;margin-right:7px;vertical-align:1px;animation:livePulse 1.6s ease-in-out infinite}
@keyframes livePulse{0%,100%{opacity:1}50%{opacity:.2}}
.live-count{font-family:var(--typewriter);font-size:12px;color:var(--saddle);margin:8px 0 0}
.live-pause{position:absolute;top:8px;right:8px;z-index:3;width:36px;height:36px;border-radius:50%;border:1px solid rgba(243,237,225,.55);background:rgba(14,26,40,.85);cursor:pointer;opacity:0;pointer-events:none}
.live-pause span{display:block;width:10px;height:12px;margin:auto;border-left:3px solid #f3ede1;border-right:3px solid #f3ede1}
.live-pause[aria-pressed="true"] span{width:0;height:0;border-style:solid;border-width:7px 0 7px 11px;border-color:transparent transparent transparent #f3ede1;margin-left:13px}
.live-pause:focus-visible{opacity:1;pointer-events:auto}
@media (hover:none){.live-pause{opacity:1;pointer-events:auto}}
@media (max-width:1150px){.futures-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.futures-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-intro-split{grid-template-columns:1fr}}
@media (max-width:600px){.futures-grid{grid-template-columns:1fr}.futures-grid .case-card.is-featured{grid-column:auto;grid-row:auto}.futures-grid .case-card.is-featured .case-live{min-height:420px}}
@media (prefers-reduced-motion:reduce){.live-slide{transition:none}.live-badge:before{animation:none}}
.futures-grid-section .section-head h2{text-wrap:balance}
/* The portal: a glow and a ring behind whatever is coming through; each find arrives with a flash */
.case-live{background:radial-gradient(closest-side,rgba(126,178,230,.24),rgba(126,178,230,.07) 60%,transparent 61%),radial-gradient(closest-side,transparent 64%,rgba(216,180,90,.45) 65.2%,transparent 67%),var(--backdrop-deep)}
.live-badge{color:#cfe3f7}
.live-badge:before{background:#7eb2e6;box-shadow:0 0 7px #7eb2e6}
.case-live.is-enhanced .live-slide.is-current img{animation:portalIn .32s cubic-bezier(.2,.8,.3,1) both}
@keyframes portalIn{from{opacity:0;transform:scale(.9);filter:blur(2px) brightness(1.35)}to{opacity:1;transform:none;filter:none}}
@media (prefers-reduced-motion:reduce){.case-live.is-enhanced .live-slide.is-current img{animation:none}}

/* A carousel of portals (round fourteen): every find seen through its own gate, always circling */
.portal-scene{position:relative;height:250px;overflow:hidden;border-radius:2px;isolation:isolate;background:radial-gradient(55% 45% at 50% 50%,rgba(98,150,210,.30),transparent 72%),radial-gradient(120% 90% at 50% 60%,#132840,#08111b 78%)}
.portal-scene:before{content:'';position:absolute;inset:-20%;z-index:0;background:radial-gradient(35% 25% at 30% 60%,rgba(140,190,240,.18),transparent 70%),radial-gradient(30% 22% at 70% 40%,rgba(216,180,90,.12),transparent 70%);filter:blur(10px);animation:portalMist 14s ease-in-out infinite alternate}
@keyframes portalMist{from{transform:translate(-4%,2%) scale(1)}to{transform:translate(4%,-3%) scale(1.08)}}
.futures-grid .case-card.is-featured .portal-scene{flex:1;height:auto;min-height:440px}
.portal-ring{list-style:none;margin:0;padding:0;position:absolute;inset:0;z-index:1}
.portal{position:absolute;left:0;top:0;width:120px;height:120px;transform-origin:50% 50%;will-change:transform,filter}
.portal-window{position:absolute;inset:0;border-radius:50%;overflow:hidden;background:#0a1420;box-shadow:0 0 0 1.5px rgba(207,227,247,.75),0 0 18px 3px rgba(126,178,230,.6),0 0 54px 12px rgba(126,178,230,.18),inset 0 0 22px 8px rgba(8,16,26,.9)}
.portal-window img{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--fx,50%) var(--fy,45%)}
.portal-window:after{content:'';position:absolute;inset:-10%;border-radius:50%;background:repeating-radial-gradient(circle,rgba(200,228,255,.10) 0 2px,transparent 2px 10px),radial-gradient(circle,transparent 48%,rgba(150,200,245,.34) 64%,transparent 74%);mix-blend-mode:screen;animation:portalHorizon 3.6s linear infinite}
@keyframes portalHorizon{0%{transform:scale(.96) rotate(0deg);opacity:.75}50%{transform:scale(1.04) rotate(180deg);opacity:1}100%{transform:scale(.96) rotate(360deg);opacity:.75}}
.portal:before{content:'';position:absolute;inset:-9%;border-radius:50%;z-index:2;background:conic-gradient(from 0deg,rgba(126,178,230,0) 0deg,rgba(207,227,247,.95) 40deg,rgba(216,180,90,.9) 80deg,rgba(126,178,230,0) 150deg,rgba(126,178,230,.85) 220deg,rgba(255,255,255,.9) 260deg,rgba(126,178,230,0) 320deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px),#000 calc(100% - 1px),transparent);mask:radial-gradient(farthest-side,transparent calc(100% - 6px),#000 calc(100% - 5px),#000 calc(100% - 1px),transparent);animation:portalRim 3.2s linear infinite;filter:drop-shadow(0 0 6px rgba(126,178,230,.9))}
@keyframes portalRim{to{transform:rotate(360deg)}}
.portal-sparks{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:2}
.portal-caption{position:absolute;left:12px;right:12px;bottom:12px;z-index:3;margin:0;text-align:center;font-weight:780;font-stretch:84%;font-size:clamp(15px,1.4vw,19px);line-height:1.2;color:#f3ede1;text-shadow:0 1px 10px rgba(8,16,26,.95);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portal-scene:not(.is-enhanced) .portal-ring{display:flex;flex-wrap:wrap;justify-content:center;align-content:center;gap:12px;padding:18px}
.portal-scene:not(.is-enhanced) .portal{position:relative;width:76px;height:76px}
.portal-scene:not(.is-enhanced) .portal-sparks{display:none}
@media (max-width:600px){.futures-grid .case-card.is-featured .portal-scene{min-height:400px}}
@media (prefers-reduced-motion:reduce){.portal:before,.portal-window:after,.portal-scene:before{animation:none}}
/* Portals fade with distance so the front one leads; the caption sits on its own tab */
.portal-window{box-shadow:0 0 0 1.5px rgb(207 227 247 / calc(.2 + .6 * var(--depth,1))),0 0 18px 3px rgb(126 178 230 / calc(.1 + .55 * var(--depth,1))),0 0 54px 12px rgb(126 178 230 / calc(.2 * var(--depth,1))),inset 0 0 22px 8px rgba(8,16,26,.9)}
.portal:before{opacity:calc(.1 + .9 * var(--depth,1))}
.portal-caption{left:50%;right:auto;transform:translateX(-50%);max-width:calc(100% - 24px);padding:5px 12px;background:rgba(8,16,26,.66);border-radius:2px}
.portal-scene .portal-caption{color:#f3ede1}

/* ==========================================================================
   Round fifteen: 1936, properly. Garamond and a Futura-style sans (Jost), the
   expedition palette (parchment, espresso leather, khaki, oxblood, gold), and
   cool blue kept only for the portals' supernatural light.
   ========================================================================== */
:root{
  --sans:'Jost','Futura','Century Gothic','Avenir Next',system-ui,sans-serif;--serif:'EB Garamond','Garamond','Georgia',serif;--display:100%;
  --paper:#eee4ce;--paper-2:#e3d5b8;--ink:#2a1d14;--muted:#6b5643;--line:#d1bf9c;--mean:#a8957a;
  --tail:#9e2f1f;--tail-ink:#8a2718;--tail-on-band:#e3876a;
  --band:#2a1c13;--on-band:#f1e6cf;--band-muted:#cdb995;--band-line:#4a3526;
  --brass:#c9a24b;--brass-ink:#7a5a16;--saddle:#7e4e2d;--btn:#8f2a1c;--btn-hover:#6e1f14;
  --backdrop:#1e140d;--backdrop-deep:#150e09;
  --cream:#e2d1aa;--lime:#b8ad7a;--lavender:#aab3ad;--blue:#a2b3b4;--orange:#cfa36e;--pink:#c99482;
  --brick-problem:#9a2e1e;--brick-solution:#4e6b35;
}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){
  --paper:#17110c;--paper-2:#21180f;--ink:#efe3cb;--muted:#bba98c;--line:#3a2c20;--mean:#7d6d58;
  --tail:#e07a5a;--tail-ink:#ec9273;--tail-on-band:#ec9273;--band:#0f0a06;--on-band:#efe3cb;--band-muted:#bba98c;--band-line:#33261b;
  --brass:#d8b45a;--brass-ink:#d8b45a;--saddle:#c9976f;--btn:#b23a24;--btn-hover:#c9472e;
  --cream:#3a2f22;--lime:#37361f;--lavender:#2f3634;--blue:#26343a;--orange:#4a3420;--pink:#4a2c24}}
:root[data-theme="dark"]{
  --paper:#17110c;--paper-2:#21180f;--ink:#efe3cb;--muted:#bba98c;--line:#3a2c20;--mean:#7d6d58;
  --tail:#e07a5a;--tail-ink:#ec9273;--tail-on-band:#ec9273;--band:#0f0a06;--on-band:#efe3cb;--band-muted:#bba98c;--band-line:#33261b;
  --brass:#d8b45a;--brass-ink:#d8b45a;--saddle:#c9976f;--btn:#b23a24;--btn-hover:#c9472e;
  --cream:#3a2f22;--lime:#37361f;--lavender:#2f3634;--blue:#26343a;--orange:#4a3420;--pink:#4a2c24}
.stream-films{--paper:#100b07;--paper-2:#1a120c;--ink:#efe3cb;--muted:#bba98c;--line:#33261b;--band:#24180f;--on-band:#efe3cb;--band-muted:#bba98c;--band-line:#3a2c20;--brass-ink:#d8b45a;--saddle:#c9976f;--tail:#e07a5a;--tail-ink:#ec9273;--tail-on-band:#ec9273;--btn:#b23a24;--btn-hover:#c9472e}
body:has(main > .stream-films){background:#100b07}
body:has(main > .stream-films) .header{background:#100b07;border-bottom-color:#2a1e14}

/* Type: Garamond carries headings and reading; the sans carries labels, buttons and navigation */
h1,h2,h3,h4,h1[class],h2[class],h3[class],h4[class]{font-family:var(--serif)!important;font-weight:500;font-stretch:normal!important;letter-spacing:-.012em}
h3,h4,h3[class],h4[class]{font-weight:600}
.prose{font-size:20px;line-height:1.62}
.panel-lede,.lede{font-size:clamp(19px,1.6vw,23px)}
.brand-name{font-family:var(--serif);font-weight:600;font-size:23px;letter-spacing:-.005em}
.brand-mark circle{fill:var(--brass)}
.btn,.filter-btn,.reel-btn,.text-link,.pill,.tag,.eyebrow,.way-for,.pl,.desktop-nav a,.mobile-nav a{font-family:var(--sans);font-weight:500;font-stretch:normal;letter-spacing:.01em}
.btn{font-weight:600;letter-spacing:.03em}
.award-name,.view-name,.find-title,.portal-caption,.live-caption,.reel-title,.bridge-copy h2{font-family:var(--serif);font-weight:600;font-stretch:normal}
.award-name{font-size:clamp(18px,1.45vw,21px)}
.view-name{font-size:clamp(24px,2.1vw,30px);letter-spacing:-.01em}
.stamp-place{font-family:var(--sans);font-weight:600;font-stretch:normal;text-transform:uppercase;letter-spacing:.14em;font-size:clamp(20px,1.9vw,26px)}

/* Title cards become vintage travel labels: earth tones, a double rule, tracked capitals */
.case-art{border:0;box-shadow:inset 0 0 0 1px rgba(42,29,20,.25),inset 0 0 0 7px transparent,inset 0 0 0 8px rgba(42,29,20,.16)}
.case-art:after{content:none!important}
.art-type{font-family:var(--sans)!important;font-weight:500!important;font-stretch:normal!important;letter-spacing:.07em!important;line-height:1.22!important;font-size:clamp(16px,1.45vw,21px)!important}
.film-frame span{font-family:var(--serif);font-weight:500;font-stretch:normal;letter-spacing:.09em;line-height:1.14;font-size:clamp(19px,1.8vw,28px)}
.film-hero .film-frame span{font-size:clamp(24px,2.6vw,40px)}

/* Hero and bio card: espresso leather with torchlight, the portraits' backdrops warmed to match */
.hero-expedition{background:radial-gradient(46% 72% at 74% 46%,rgba(196,132,58,.20),transparent 70%),var(--backdrop)}
body:has(main[data-page="index"]) .header{--line:#3a2a1d;background:var(--backdrop)}
.view-option{border-color:rgba(241,230,207,.32)}
.view-note{color:#cdb995}
.awards-band{border-top-color:#3a2a1d}
.award{border-top-color:rgba(201,162,75,.5)}
.award-role{color:#cdb995}
.bio-line{border-top-color:#3a2a1d}
.bio-card p,.bio-line span{color:#cdb995}

/* The parade: every future as a small block around the carousel of portals */
.futures-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:22px 14px}
.futures-grid .case-card.is-featured{grid-column:span 3;grid-row:span 3}
.futures-grid .case-card.is-featured .portal-scene{min-height:360px}
.mini-future{min-width:0}
.mini-future a{display:block;color:inherit;text-decoration:none}
.mini-art{aspect-ratio:4/3;display:flex;align-items:flex-end;padding:12px 12px 13px;border-radius:2px;box-shadow:inset 0 0 0 1px rgba(42,29,20,.25),inset 0 0 0 5px transparent,inset 0 0 0 6px rgba(42,29,20,.14);transition:transform .18s ease}
.mini-art span{font-family:var(--sans);font-weight:500;text-transform:uppercase;letter-spacing:.06em;font-size:11.5px;line-height:1.3;color:var(--ink)}
.mini-future h3{font-size:17px;line-height:1.15;margin:9px 0 2px}
.mini-future p{font-family:var(--serif);font-style:italic;font-size:15px;line-height:1.3;color:var(--muted);margin:0}
.mini-future a:hover .mini-art,.mini-future a:focus-visible .mini-art{transform:translateY(-3px)}
.mini-future a:hover h3{text-decoration:underline;text-decoration-color:var(--tail);text-underline-offset:3px}
.mini-all{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:4px;min-height:140px;border:1px dashed var(--line);border-radius:2px;color:inherit;text-decoration:none;padding:12px}
.mini-all-title{font-family:var(--serif);font-weight:600;font-size:20px}
.mini-all-note{font-family:var(--serif);font-style:italic;font-size:14.5px;color:var(--muted)}
.mini-all:hover{border-color:var(--ink)}
@media (max-width:1150px){.futures-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.futures-grid .case-card.is-featured{grid-column:span 2;grid-row:span 3}}
@media (max-width:860px){.futures-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.futures-grid .case-card.is-featured{grid-column:1/-1;grid-row:auto}.futures-grid .case-card.is-featured .portal-scene{min-height:400px}}
@media (max-width:600px){.futures-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.futures-grid .mini-future:nth-of-type(n+14){display:none}}

/* Portals, second version: brass gates standing in a night plaza, energy swirling at each rim */
.portal-scene{background:radial-gradient(70% 42% at 50% 30%,rgba(70,110,170,.22),transparent 70%),linear-gradient(to bottom,#04070c 0%,#0a1220 54%,#0e1828 55%,#070b12 100%)}
.portal-window{box-shadow:inset 0 0 30px 10px rgba(5,10,18,.85),0 0 calc(34px * var(--depth,1)) calc(6px * var(--depth,1)) rgb(150 200 255 / calc(.12 + .5 * var(--depth,1)))}
.portal-window img{filter:saturate(calc(.55 + .45 * var(--depth,1)))}
.portal-window:before{content:'';position:absolute;inset:-25%;z-index:1;border-radius:50%;background:conic-gradient(from 0deg,rgba(190,225,255,0),rgba(190,225,255,.55),rgba(120,170,235,0) 25%,rgba(210,235,255,.5) 45%,rgba(120,170,235,0) 60%,rgba(190,225,255,.55) 80%,rgba(190,225,255,0));-webkit-mask:radial-gradient(circle,transparent 38%,#000 60%);mask:radial-gradient(circle,transparent 38%,#000 60%);mix-blend-mode:screen;opacity:calc(var(--depth,1) * var(--depth,1));animation:portalVortex 2.6s linear infinite}
@keyframes portalVortex{to{transform:rotate(360deg)}}
.portal-window:after{inset:0;background:radial-gradient(circle,transparent 38%,rgba(170,215,255,.4) 45%,transparent 52%);mix-blend-mode:screen;animation:portalRipple 2.4s ease-out infinite;opacity:calc(.15 + .85 * var(--depth,1))}
@keyframes portalRipple{from{transform:scale(.35);opacity:.9}to{transform:scale(1.25);opacity:0}}
.portal:before{inset:-9%;animation:none;background:conic-gradient(from 210deg,#6b4c1c,#e7c977 12%,#9a7330 25%,#f2dc96 38%,#7a5a22 52%,#d9b866 66%,#5f4418 80%,#caa452 92%,#6b4c1c);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 9%),#000 calc(100% - 8.4%));mask:radial-gradient(farthest-side,transparent calc(100% - 9%),#000 calc(100% - 8.4%));filter:drop-shadow(0 0 calc(10px * var(--depth,1)) rgb(150 200 255 / calc(.75 * var(--depth,1))));opacity:calc(.35 + .65 * var(--depth,1))}
.portal:after{content:'';position:absolute;inset:-9%;z-index:3;border-radius:50%;background:conic-gradient(from 0deg,transparent 0 6deg,#eaf6ff 9deg,transparent 13deg 126deg,#eaf6ff 129deg,transparent 133deg 246deg,#eaf6ff 249deg,transparent 253deg);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 7%),#000 calc(100% - 6%),#000 calc(100% - 2.5%),transparent calc(100% - 1.5%));mask:radial-gradient(farthest-side,transparent calc(100% - 7%),#000 calc(100% - 6%),#000 calc(100% - 2.5%),transparent calc(100% - 1.5%));filter:blur(.8px) drop-shadow(0 0 6px #bfe3ff);opacity:var(--depth,1);animation:portalRim 3s linear infinite}
.portal-floor{position:absolute;left:-18%;right:-18%;top:97%;height:24%;border-radius:50%;background:radial-gradient(closest-side,rgb(150 200 255 / calc(.5 * var(--depth,1))),transparent);filter:blur(5px);pointer-events:none}
@media (prefers-reduced-motion:reduce){.portal:after,.portal-window:before,.portal-window:after{animation:none}}
/* Portals, performance pass: no per-frame or blur filters; the vortex, ripple and travelling
   energy run only on the nearest gates, where they can be seen */
.portal{will-change:transform,opacity}
.portal:before{filter:none}
.portal:after,.portal-window:before,.portal-window:after{display:none}
.portal.is-near:after,.portal.is-near .portal-window:before,.portal.is-near .portal-window:after{display:block}
.portal:after{filter:none}
.portal-window:before,.portal-window:after{mix-blend-mode:normal}
.portal-window img{filter:none}
.portal-floor{filter:none;background:radial-gradient(closest-side,rgb(150 200 255 / calc(.42 * var(--depth,1))),rgb(150 200 255 / 0))}
/* Portals, performance pass two: nothing repaints per frame. Only transform and opacity change,
   which the compositor handles; glows and rings are fixed and dim with the portal's opacity */
.portal-window{box-shadow:inset 0 0 30px 10px rgba(5,10,18,.85),0 0 30px 5px rgba(150,200,255,.5)}
.portal:before{opacity:1;filter:none}
.portal:after{opacity:1}
.portal-window:before{opacity:.85}
.portal-window:after{opacity:1}
.portal-floor{background:radial-gradient(closest-side,rgba(150,200,255,.4),rgba(150,200,255,0))}
/* Phones: the Garamond brand name stays compact so the header never pushes the menu off-screen */
@media (max-width:600px){.brand-name{font-size:19px}}
@media (max-width:360px){.brand-name{font-size:17px}.header-cta{padding-left:10px;padding-right:10px}}

/* Round sixteen: testimonial, flip the script, newsletter teasers, Speculative Edge stages */
.testimonial-section{padding-top:clamp(36px,4vw,56px);padding-bottom:0}
.testimonial{margin:0;padding:clamp(26px,3.2vw,40px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.testimonial blockquote{margin:0}
.testimonial blockquote p{font-family:var(--serif);font-style:italic;font-size:clamp(21px,2.1vw,29px);line-height:1.38;margin:0 0 14px;max-width:52ch}
.testimonial figcaption{font-family:var(--sans);font-size:15px}
.testimonial .t-name{font-weight:600}
.testimonial .t-role{color:var(--muted)}
.flip-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(16px,2vw,28px)}
.flip-card{display:block;color:inherit;text-decoration:none;border:1px solid var(--line);padding:18px 20px 20px;background:color-mix(in srgb,var(--paper) 55%,var(--paper-2));transition:border-color .15s}
.flip-card:hover{border-color:var(--ink)}
.flip-card .pl{display:block;font-size:13px;color:var(--muted);margin-top:12px}
.flip-card .pl:first-child{margin-top:0}
.flip-card .p-old{display:block;font-family:var(--serif);font-size:18px;line-height:1.3;color:var(--muted)}
.flip-card .p-new{display:block;font-family:var(--serif);font-size:21px;line-height:1.25}
.flip-card .flip-to{display:inline-block;margin-top:14px;font-size:14px;font-weight:600;border-bottom:2px solid var(--tail)}
.flip-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(36px,4vw,60px) clamp(24px,4vw,64px)}
.flip-move{border-top:2px solid var(--ink);padding-top:16px;min-width:0}
.flip-num{font-family:var(--sans);font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--saddle);margin:0 0 6px}
.flip-move h2{font-size:clamp(25px,2.3vw,33px);line-height:1.08;margin:0 0 8px}
.flip-how{font-family:var(--serif);font-style:italic;font-size:18px;color:var(--muted);margin:0 0 14px}
.flip-move .prose{font-size:18.5px}
.flip-move .prose p{margin:0 0 12px}
.flip-link-row{margin-top:-12px;margin-bottom:12px}
.news-teasers{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px}
.news-teasers a{display:block;color:inherit;text-decoration:none;font-family:var(--serif);font-size:17.5px;line-height:1.4;border-bottom:1px solid var(--line);padding-bottom:9px}
.news-teasers a:hover{color:var(--tail-ink);border-bottom-color:var(--tail)}
.se-stages{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;counter-reset:se}
.se-stages li{border-top:2px solid var(--ink);padding-top:12px;counter-increment:se;min-width:0}
.se-stages li:before{content:counter(se);display:block;font-family:var(--sans);font-size:13px;color:var(--saddle);margin-bottom:6px}
.se-stages strong{display:block;font-family:var(--serif);font-size:20px;font-weight:600;line-height:1.15;margin-bottom:6px}
.se-stages span{display:block;font-family:var(--serif);font-size:16.5px;line-height:1.45}
.rollout-prose{max-width:72ch}
@media (max-width:1150px){.se-stages{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:860px){.flip-cards,.flip-list{grid-template-columns:1fr}}
@media (max-width:700px){.se-stages{grid-template-columns:1fr}}
@keyframes brickDrop{from{transform:translateY(-36px);opacity:0}to{transform:none;opacity:1}}

.portfolio-note{max-width:72ch;margin:0 0 24px;font-size:17px;line-height:1.6;color:var(--muted)}
.commission-story{padding-bottom:28px;margin-bottom:28px;border-bottom:1px solid var(--line)}
.commission-story section+section{margin-top:24px}
.commission-story h2{font-size:clamp(24px,2.1vw,32px);margin:0 0 10px}

/* Commissioning pages and clear routes through the two bodies of work. */
.hero-expedition .hero-line{margin-bottom:18px;max-width:19ch}
.hero-service-line{font-size:clamp(20px,2vw,27px);line-height:1.3;color:#e8d7b3;margin:0 0 18px;max-width:30ch}
.hero-brand-line{font-family:var(--serif);font-size:clamp(17px,1.6vw,22px);line-height:1.45;color:#c3ccd5;max-width:38ch;margin:0 0 28px}
.service-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:20px;margin:28px 0}
.service-card{display:flex;flex-direction:column;gap:14px;padding:26px;border:1px solid var(--line);border-radius:3px;text-decoration:none;min-width:0}
.service-card:hover{border-color:var(--ink);background:var(--wash,transparent)}
.service-card strong{font-family:var(--serif);font-size:clamp(25px,2.2vw,34px);font-weight:500;line-height:1.12}
.service-card span{font-size:16px;line-height:1.65;color:var(--muted)}
.service-breadcrumb{padding-top:24px}
.service-breadcrumb .breadcrumb{margin-bottom:0}
.service-content{padding-bottom:55px}
.service-section{display:grid;grid-template-columns:minmax(190px,.75fr) minmax(0,1.7fr);gap:clamp(24px,5vw,85px);padding:38px 0;border-top:1px solid var(--line)}
.service-section h2{font-size:clamp(27px,3vw,41px);line-height:1.14;margin:0}
.service-section .prose>p:first-child{margin-top:0}
.service-section .prose ul{padding-left:1.2em}
.service-section .prose li+li{margin-top:12px}
.service-section .actions{flex-wrap:wrap;gap:18px 26px}
.futures-intro{padding-bottom:28px;max-width:var(--max)}
.futures-intro>p{max-width:850px;font-size:19px;line-height:1.65}
.brand-line{font-family:var(--serif);font-style:italic;font-size:clamp(25px,2.6vw,36px)!important;margin:0 0 18px}
.commission-link{border-top:1px solid var(--line);margin-top:36px;padding-top:30px}
.commission-link h2{font-size:30px}
.footer-links{max-width:650px;flex-wrap:wrap}
.desktop-nav{gap:18px}
.film-watch{padding-top:28px;padding-bottom:30px;max-width:1120px}
.film-watch h2{font-size:clamp(28px,3.5vw,42px);margin:0 0 22px}
.video-player{aspect-ratio:16/9;background:#17110c;overflow:hidden}
.video-player iframe{width:100%;height:100%;border:0;display:block}
.video-caption{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;font-size:14px;color:var(--muted)}
@media(max-width:1100px){
  .desktop-nav{display:none}
  .header-cta{display:inline-flex}
  .navigation-ready .nav-toggle{display:block}
  .navigation-ready .mobile-nav:not(.is-open){display:none}
  .mobile-nav.is-open,html:not(.navigation-ready) .mobile-nav{display:grid;grid-template-columns:1fr 1fr;gap:15px;padding:18px var(--gutter);border-top:1px solid var(--line)}
}
@media(max-width:700px){
  .service-section{grid-template-columns:1fr;gap:20px;padding:28px 0}
  .service-card{padding:23px}
  .hero-brand-line{margin-bottom:22px}
}
