/* ==========================================================================
   Beyond the Grid — design system
   Graphite + papaya. Archivo (expanded) display, Inter body, JetBrains Mono HUD.
   ========================================================================== */
@font-face{font-family:'Archivo';font-style:normal;font-weight:100 900;font-stretch:62% 125%;font-display:swap;src:url(fonts/archivo.woff2) format('woff2')}
@font-face{font-family:'Inter';font-style:normal;font-weight:300 700;font-display:swap;src:url(fonts/inter.woff2) format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 700;font-display:swap;src:url(fonts/jbmono.woff2) format('woff2')}

:root{
  --bg:#060709;
  --bg2:#0a0c0f;
  --panel:#0e1014;
  --panel2:#13161b;
  --line:rgba(255,255,255,.08);
  --line2:rgba(255,255,255,.14);
  --ink:#f3f2ee;
  --ink2:#c9cbd0;
  --muted:#8a8e97;
  --dim:#5b5f68;
  --pa:#ff8000;         /* papaya */
  --pa2:#ff9a3d;
  --pa-glow:rgba(255,128,0,.35);
  --accent:var(--pa);   /* swapped per industry in the showroom */
  --gutter:clamp(20px,5vw,96px);
  --maxw:1520px;
  --ease:cubic-bezier(.16,1,.3,1);
  --display:'Archivo','Arial Black',system-ui,sans-serif;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:'JetBrains Mono',ui-monospace,'SFMono-Regular',Consolas,monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{background:var(--bg);color-scheme:dark;-webkit-text-size-adjust:100%}
html.lenis,html.lenis body{height:auto}
.lenis.lenis-smooth{scroll-behavior:auto!important}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden}
::selection{background:var(--pa);color:#000}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:0;padding:0}
img,svg,canvas{display:block}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--pa);outline-offset:3px;border-radius:4px}
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
.mono{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
.display{font-family:var(--display);font-stretch:125%;font-weight:850;letter-spacing:-.02em;text-transform:uppercase;line-height:.9}
.pa{color:var(--accent)}
.dim{color:var(--dim)}
.outline{color:transparent;-webkit-text-stroke:1.5px var(--ink)}
b{font-weight:600;color:var(--ink)}

/* grain + cursor trail */
.trail{position:fixed;inset:0;width:100%;height:100%;z-index:80;pointer-events:none;mix-blend-mode:screen}

/* ---------- intro: five lights, then lights out ---------- */
.intro{position:fixed;inset:0;z-index:200;background:#030304;display:none;place-items:center;cursor:pointer}
.js .intro.on{display:grid}
.intro-gantry{display:flex;gap:clamp(10px,2.4vw,28px);padding:clamp(14px,2vw,22px);background:#0b0c0e;border:1px solid #1b1d21;border-radius:14px;box-shadow:0 40px 120px #000}
.lamp{display:flex;flex-direction:column;gap:clamp(8px,1.4vw,16px);padding:clamp(8px,1.2vw,14px);background:#050506;border-radius:999px;border:1px solid #17181b}
.lamp i{width:clamp(30px,5vw,58px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#2a1414,#120909 60%);box-shadow:inset 0 2px 6px #000;transition:background .05s,box-shadow .05s}
.lamp.lit i:last-child,.lamp.lit i:first-child{background:radial-gradient(circle at 35% 30%,#ff8a8a,#ff1e1e 45%,#a10000);box-shadow:0 0 28px #ff2a2a,0 0 80px #ff000088,inset 0 -3px 8px #7a0000}
.intro-meta{position:absolute;bottom:clamp(24px,5vh,56px);left:var(--gutter);right:var(--gutter);display:flex;justify-content:space-between;color:var(--muted);gap:16px}
.intro-status{color:var(--ink)}
.intro-skip{position:absolute;top:28px;right:var(--gutter);color:var(--dim)}

/* ---------- view wipe ---------- */
.wipe{position:fixed;inset:0;z-index:150;pointer-events:none;background:var(--pa);transform:scaleX(0);transform-origin:left;display:grid;place-items:center}
.wipe-inner{display:flex;flex-direction:column;align-items:center;gap:14px;color:#000;opacity:0}
.wipe-bar{width:160px;height:2px;background:#00000033;overflow:hidden}
.wipe-bar i{display:block;height:100%;width:100%;background:#000;transform:scaleX(0);transform-origin:left}

/* ---------- top bar ---------- */
.topbar{position:fixed;top:0;left:0;right:0;z-index:100;height:72px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:0 var(--gutter);background:linear-gradient(#060709f2,#060709b3);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:12px;justify-self:start;color:var(--ink)}
.brand-mark{width:34px;height:34px}
.brand-text{font-family:var(--display);font-stretch:125%;font-weight:800;font-size:12px;letter-spacing:.06em;line-height:1.25}
.brand-text small{display:block;font-family:var(--mono);font-stretch:normal;font-size:9px;font-weight:500;letter-spacing:.16em;color:var(--muted)}
.switch{position:relative;display:flex;padding:4px;border:1px solid var(--line2);border-radius:999px;background:#ffffff06}
.switch-pill{position:absolute;top:4px;bottom:4px;left:4px;border-radius:999px;background:var(--ink);box-shadow:0 6px 24px #0008;z-index:0}
.switch-btn{position:relative;z-index:1;padding:9px 18px;border-radius:999px;font-size:13px;font-weight:600;color:var(--muted);white-space:nowrap;transition:color .35s var(--ease)}
.switch-btn .mono{font-size:10px;margin-right:6px;opacity:.6}
.switch-btn:hover{color:var(--ink)}
.switch-btn.active{color:#0b0c0e}
.topbar-meta{justify-self:end;display:flex;align-items:center;gap:14px;color:var(--muted)}
.live-dot{width:7px;height:7px;border-radius:50%;background:var(--pa);box-shadow:0 0 0 0 var(--pa-glow);animation:pulse 2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 var(--pa-glow)}70%{box-shadow:0 0 0 10px transparent}100%{box-shadow:0 0 0 0 transparent}}
.chap{color:var(--ink);padding:6px 10px;border:1px solid var(--line2);border-radius:6px;min-width:64px;text-align:center}
.progress{position:absolute;left:0;right:0;bottom:-1px;height:1px}
.progress i{display:block;height:100%;background:linear-gradient(90deg,transparent,var(--pa));transform-origin:left;transform:scaleX(0);box-shadow:0 0 12px var(--pa)}

/* ---------- chapter rail ---------- */
.rail{position:fixed;left:18px;top:50%;transform:translateY(-50%);z-index:60;display:flex;flex-direction:column;gap:2px}
.rail a{display:flex;align-items:center;gap:12px;padding:6px 0;color:var(--dim);font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.rail a i{width:14px;height:1px;background:currentColor;transition:width .5s var(--ease),background .3s}
.rail a span{opacity:0;transform:translateX(-6px);transition:opacity .35s,transform .45s var(--ease);white-space:nowrap}
.rail:hover a span{opacity:1;transform:none}
.rail:hover{background:linear-gradient(90deg,#060709f0 60%,transparent);padding-right:40px}
.rail a.active{color:var(--ink)}
.rail a.active i{width:34px;background:var(--pa)}
.rail a:hover{color:var(--ink2)}
@media (max-width:1180px){.rail{display:none}}

/* ---------- layout primitives ---------- */
main{position:relative;z-index:1}
.view{display:none}
.view.active{display:block}
.section{position:relative;max-width:var(--maxw);margin:0 auto;padding:clamp(96px,14vh,170px) var(--gutter);scroll-margin-top:72px}
.section+.section{border-top:1px solid var(--line)}
.kicker{display:flex;align-items:center;gap:14px;color:var(--muted);margin-bottom:28px}
.kicker span{color:var(--pa);padding:4px 7px;border:1px solid #ff800055;border-radius:4px;background:#ff800010}
.h-xxl{font-size:clamp(50px,9.6vw,168px)}
.h-xl{font-size:clamp(40px,6.6vw,116px)}
.h-lg{font-size:clamp(34px,4.7vw,80px)}
.body{font-size:clamp(16px,1.35vw,19px);color:var(--ink2);line-height:1.65;max-width:620px}
.body.narrow{max-width:680px;margin-top:28px}
.fine{font-size:12.5px;color:var(--dim);line-height:1.6;max-width:820px;margin-top:40px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,110px);align-items:center}
.split-head{align-items:end;margin-bottom:clamp(48px,6vw,80px)}
.split-head .body{justify-self:end}
.split-head h2{margin:0}
h2{margin:0}
@media (max-width:900px){.split{grid-template-columns:1fr}.split-head .body{justify-self:start}}

/* split-text masks */
.word-clip{display:inline-block}
[data-split] .line-wrap{display:block}

/* ---------- buttons ---------- */
.btn{position:relative;display:inline-flex;align-items:center;gap:14px;height:54px;padding:0 24px 0 26px;border-radius:999px;font-size:14px;font-weight:600;letter-spacing:.01em;isolation:isolate;overflow:hidden;will-change:transform}
.btn svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .5s var(--ease)}
.btn:hover svg{transform:translate(2px,-2px)}
.btn-primary{background:var(--pa);color:#0a0a0a;box-shadow:0 10px 40px -10px var(--pa-glow),inset 0 1px 0 #ffffff55}
.btn-primary::before{content:'';position:absolute;inset:0;z-index:-1;background:linear-gradient(110deg,transparent 30%,#ffffff70 50%,transparent 70%);transform:translateX(-120%);transition:transform .9s var(--ease)}
.btn-primary:hover::before{transform:translateX(120%)}
.btn-ghost{border:1px solid var(--line2);color:var(--ink);background:#ffffff05;backdrop-filter:blur(8px)}
.btn-ghost:hover{border-color:#ffffff40;background:#ffffff0c}
.btn-xl{height:66px;padding:0 30px 0 34px;font-size:16px;margin-top:56px}

/* ---------- hero ---------- */
.hero{position:relative;min-height:100svh;display:flex;align-items:center;overflow:hidden;padding:120px var(--gutter) 110px;isolation:isolate}
.hero::before{content:'';position:absolute;inset:0;z-index:-2;background:
  radial-gradient(60% 50% at 72% 55%,#ff80001a,transparent 70%),
  radial-gradient(40% 40% at 15% 10%,#ffffff08,transparent 70%),
  linear-gradient(180deg,#07080a,#0a0c10 60%,#060709)}
.hero::after{content:'';position:absolute;inset:0;z-index:-1;opacity:.5;background-image:linear-gradient(#ffffff0a 1px,transparent 1px),linear-gradient(90deg,#ffffff0a 1px,transparent 1px);background-size:80px 80px;mask-image:radial-gradient(70% 60% at 60% 50%,#000,transparent)}
.hero-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:0}
.hero-vignette{position:absolute;inset:0;z-index:0;pointer-events:none;background:linear-gradient(90deg,#060709 0%,#06070999 32%,transparent 60%),linear-gradient(0deg,#060709 0%,transparent 22%)}
.hero-center .hero-vignette{background:radial-gradient(80% 70% at 50% 45%,transparent 40%,#060709 100%),linear-gradient(0deg,#060709 0%,transparent 25%)}
.hero-inner{position:relative;z-index:2;max-width:var(--maxw);width:100%;margin:0 auto;pointer-events:none}
.hero-inner a,.hero-inner button{pointer-events:auto}
.hero-inner.center{display:flex;flex-direction:column;align-items:center;text-align:center;min-height:calc(100svh - 230px);justify-content:space-between}
.eyebrow{display:flex;align-items:center;gap:14px;color:var(--ink2)}
.tick{width:8px;height:8px;background:var(--pa);box-shadow:0 0 14px var(--pa)}
.rule{width:56px;height:1px;background:var(--line2)}
.hero-title{font-size:clamp(44px,5.7vw,112px);margin:28px 0 32px;max-width:9.5em}
.hero-title .line{display:block}
.hero-lede{max-width:540px;font-size:clamp(16px,1.35vw,19px);color:var(--ink2);margin:0}
.hero-center .hero-lede{max-width:760px;margin:18px auto 0;text-wrap:balance}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:40px}
.hero-center .hero-actions{justify-content:center}
.hero-spacer{flex:1}
.kick{font-size:clamp(18px,2vw,28px);font-stretch:110%;font-weight:700;color:var(--ink);margin:0}
.hud{position:absolute;z-index:2;color:var(--muted)}
.hud-bl{left:var(--gutter);bottom:32px}
.hud-br{right:var(--gutter);bottom:32px;display:flex;align-items:center;gap:12px}
.hud-tr{right:var(--gutter);top:104px;display:flex;flex-direction:column;align-items:flex-end;gap:4px;padding:10px 14px;border:1px solid var(--line2);border-radius:8px;background:#06070999;backdrop-filter:blur(8px)}
.hud-tr b{color:var(--ink);font-weight:700;letter-spacing:.1em}
.scroll-line{width:1px;height:38px;background:var(--line2);overflow:hidden;position:relative}
.scroll-line i{position:absolute;left:0;width:1px;height:40%;background:var(--pa);animation:scrollcue 1.8s var(--ease) infinite}
@keyframes scrollcue{0%{top:-40%}100%{top:100%}}
@media (max-width:800px){
  .hero{align-items:flex-end;padding-bottom:96px}
  .hero-vignette{background:linear-gradient(0deg,#060709 30%,#06070966 60%,transparent)}
  .hud-tr{display:none}
  .hud-bl{display:none}
  #bha-hero{padding-top:300px}
  #bha-hero .eyebrow{display:none}
  #show-hero{padding-top:270px}
  .hero-inner.center{min-height:0}
  .hero-spacer{display:none}
  #show-hero .eyebrow{display:none}
  .switch-btn{padding:8px 12px;font-size:12px}
  .switch-btn .mono{display:none}
}

/* ---------- stats ---------- */
.stats{max-width:var(--maxw);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.stat{padding:40px var(--gutter) 40px 32px;border-left:1px solid var(--line);display:flex;flex-direction:column;gap:10px}
.stat:first-child{border-left:0;padding-left:var(--gutter)}
.stat .label{color:var(--muted)}
.stat strong{font-size:clamp(48px,5.6vw,92px);font-variant-numeric:tabular-nums;line-height:.9}
.stat strong em{font-style:normal;color:var(--pa)}
.stat small{color:var(--dim);font-size:13px}
@media (max-width:900px){.stats{grid-template-columns:1fr 1fr}.stat{padding:28px 20px}.stat:nth-child(3){border-left:0;padding-left:var(--gutter)}.stat:nth-child(n+3){border-top:1px solid var(--line)}}

/* ---------- thesis ---------- */
.thesis-grid{display:grid;grid-template-columns:1.6fr 1fr;gap:clamp(40px,6vw,110px);margin-top:clamp(56px,7vw,100px);align-items:end}
.scrub{margin:0;font-family:var(--display);font-stretch:100%;font-weight:600;text-transform:none;letter-spacing:-.015em;font-size:clamp(24px,2.7vw,42px);line-height:1.22}
.scrub .w{color:var(--dim);transition:color .2s}
.scrub .w.on{color:var(--ink)}
.thesis-side{border-left:1px solid var(--line2);padding-left:28px;color:var(--ink2)}
.thesis-side p{margin:0 0 22px}
.textlink{display:inline-flex;gap:8px;color:var(--pa);font-weight:600;border-bottom:1px solid #ff800055;padding-bottom:3px}
.textlink:hover{border-color:var(--pa)}
@media (max-width:900px){.thesis-grid{grid-template-columns:1fr}}

/* ---------- facts list / asks ---------- */
.facts,.asks{list-style:none;margin:40px 0 0;padding:0}
.facts li,.asks li{display:grid;grid-template-columns:56px 1fr;gap:16px;align-items:baseline;padding:20px 0;border-top:1px solid var(--line)}
.facts li span,.asks li span{color:var(--pa)}
.facts p,.asks p{margin:0;font-size:17px;color:var(--ink)}

/* ---------- route map ---------- */
.mapcard{margin:0;border:1px solid var(--line2);border-radius:20px;background:linear-gradient(180deg,#0d0f13,#08090b);overflow:hidden;box-shadow:0 50px 120px -40px #000}
.mapcard-head,.mapcard-foot{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;color:var(--muted)}
.mapcard-head{border-bottom:1px solid var(--line)}
.mapcard-foot{border-top:1px solid var(--line);flex-wrap:wrap;gap:10px}
.mapcard-foot strong{font-size:clamp(22px,2.2vw,34px)}
.mapcard-foot strong small{font-size:.5em;color:var(--muted);letter-spacing:.06em}
.routemap{width:100%;height:auto}
.routemap .grat{stroke:#ffffff0a;stroke-width:1;fill:none}
.routemap .us-land{fill:#ffffff07;stroke:#ffffff38;stroke-width:1.2;stroke-linejoin:round}
.routemap .us-borders{fill:none;stroke:#ffffff17;stroke-width:.9;stroke-linejoin:round}
.routemap .grat-label{fill:#ffffff40;font-family:var(--mono);font-size:16px;letter-spacing:.1em}
.routemap .route-bg{fill:none;stroke:#ffffff1c;stroke-width:2;stroke-dasharray:2 8;stroke-linecap:round}
.routemap .route{fill:none;stroke:var(--pa);stroke-width:2.5;stroke-linecap:round;filter:drop-shadow(0 0 6px #ff8000aa)}
.routemap .route.off{stroke:#ffffff26;filter:none}
.routemap .node-ring{fill:none;stroke:var(--pa);stroke-width:1.5;opacity:.0;transform-box:fill-box;transform-origin:center}
.routemap .node{fill:#0b0c0f;stroke:var(--ink);stroke-width:2;transition:fill .3s,stroke .3s}
.routemap .node-g{cursor:default}
.routemap[data-routemap=interactive] .node-g{cursor:pointer}
.routemap .node-g.active .node,.routemap .node-g:hover .node{fill:var(--pa);stroke:var(--pa)}
.routemap .node-g.active .node-ring{opacity:1;animation:ring 1.8s var(--ease) infinite}
@keyframes ring{0%{transform:scale(.6);opacity:1}100%{transform:scale(2.6);opacity:0}}
.routemap .node-label{fill:var(--ink);font-family:var(--display);font-stretch:125%;font-weight:800;font-size:26px;letter-spacing:.02em;text-transform:uppercase}
.routemap .node-sub{fill:var(--muted);font-family:var(--mono);font-size:16px;letter-spacing:.12em}
.routemap .node-g.active .node-label{fill:var(--pa)}
.routemap .comet{fill:#fff;filter:drop-shadow(0 0 8px #fff) drop-shadow(0 0 16px var(--pa))}

/* ---------- spotlight cards ---------- */
.spot{position:relative;isolation:isolate;--mx:50%;--my:50%}
.spot::before{content:'';position:absolute;inset:0;border-radius:inherit;z-index:-1;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(420px circle at var(--mx) var(--my),#ff80001c,transparent 45%)}
.spot::after{content:'';position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;opacity:0;transition:opacity .4s;background:radial-gradient(300px circle at var(--mx) var(--my),#ff8000cc,transparent 50%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.spot:hover::before,.spot:hover::after{opacity:1}

.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:clamp(48px,6vw,84px)}
.card{border:1px solid var(--line2);border-radius:20px;padding:30px 30px 34px;background:linear-gradient(180deg,#0f1115,#0a0b0e);min-height:380px;display:flex;flex-direction:column;transform-style:preserve-3d;will-change:transform}
.card-top{display:flex;justify-content:space-between;align-items:flex-start;color:var(--muted)}
.glyph{width:46px;height:46px;fill:none;stroke:var(--pa);stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.card h3{font-size:clamp(30px,2.8vw,46px);margin:auto 0 18px;padding-top:60px}
.card p{margin:0;color:var(--ink2);font-size:15.5px}
@media (max-width:900px){.cards3{grid-template-columns:1fr}.card{min-height:0}}

/* ---------- stacking vertical cards ---------- */
.stack{margin-top:clamp(56px,7vw,100px);display:flex;flex-direction:column;gap:28px}
.stack-card{position:sticky;top:calc(110px + var(--i) * 26px);display:grid;grid-template-columns:1.15fr 1fr;min-height:min(560px,72vh);border:1px solid var(--line2);border-radius:28px;overflow:hidden;background:linear-gradient(135deg,#111318,#0a0b0e 60%);box-shadow:0 -30px 80px -20px #000;transform-origin:center top;will-change:transform}
.stack-copy{position:relative;z-index:1;padding:clamp(30px,4vw,60px);display:flex;flex-direction:column}
.stack-tag{color:var(--muted)}
.stack-copy h3{font-size:clamp(40px,5.2vw,86px);margin:auto 0 22px;padding-top:40px}
.stack-copy p{color:var(--ink2);max-width:520px;margin:0 0 26px;font-size:16.5px}
.stack-copy small{color:var(--dim);margin-top:22px;font-size:10px}
.pills{display:flex;flex-wrap:wrap;gap:8px}
.pills span{font-family:var(--mono);font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;padding:8px 12px;border:1px solid var(--line2);border-radius:999px;color:var(--ink2);background:#ffffff05}
.stack-art{position:relative;border-left:1px solid var(--line);background:radial-gradient(70% 70% at 50% 50%,#ff800014,transparent 70%),repeating-linear-gradient(90deg,#ffffff06 0 1px,transparent 1px 40px),repeating-linear-gradient(0deg,#ffffff06 0 1px,transparent 1px 40px);display:grid;place-items:center}
.stack-art svg{width:min(80%,420px);height:auto;overflow:visible}
.stack-num{position:absolute;right:28px;bottom:-.12em;font-size:clamp(120px,16vw,260px);color:transparent;-webkit-text-stroke:1px #ffffff14;pointer-events:none;line-height:1}
.art-ai .orbits circle{fill:none;stroke:#ffffff1f;stroke-dasharray:3 7}
.art-ai .orbits{animation:spin 60s linear infinite;transform-origin:200px 200px}
.art-ai .links path{stroke:#ff800066;stroke-width:1.2;fill:none}
.art-ai .nodes circle{fill:var(--ink)}
.art-ai .core{fill:var(--pa);filter:drop-shadow(0 0 18px var(--pa))}
.art-fin .gridlines path{stroke:#ffffff10}
.art-fin .candles rect{fill:#ffffff1c;stroke:#ffffff3a}
.art-fin .candles rect:nth-child(n+5){fill:#ff80002a;stroke:var(--pa)}
.art-fin .trend{fill:none;stroke:var(--pa);stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 10px var(--pa))}
.art-tech .chip rect{fill:#0d0f12;stroke:#ffffff40}
.art-tech .chip rect+rect{fill:#ff800018;stroke:var(--pa)}
.art-tech .traces path{fill:none;stroke:#ffffff26;stroke-width:1.5}
.art-tech .pulses circle{fill:var(--pa);filter:drop-shadow(0 0 6px var(--pa))}
@keyframes spin{to{transform:rotate(360deg)}}
@media (max-width:900px){.stack-card{grid-template-columns:1fr;position:relative;top:auto;min-height:0}.stack-art{border-left:0;border-top:1px solid var(--line);height:260px}.stack-num{display:none}}

/* ---------- bento ---------- */
.bento{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.tile{border:1px solid var(--line2);border-radius:22px;padding:30px;background:linear-gradient(180deg,#0f1115,#0a0b0e);min-height:280px;display:flex;flex-direction:column;overflow:hidden}
.tile.t-wide{grid-column:span 2}
.tile .mono{color:var(--pa)}
.tile h3{font-family:var(--display);font-stretch:125%;font-weight:800;text-transform:uppercase;font-size:clamp(22px,2vw,30px);letter-spacing:-.01em;margin:auto 0 12px;line-height:1;padding-top:40px}
.tile p{margin:0;color:var(--ink2);max-width:460px;font-size:15.5px}
.tile.t-wide{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr auto;column-gap:30px}
.tile.t-wide>.mono{grid-column:1}
.tile.t-wide h3{grid-column:1}
.tile.t-wide p{grid-column:1}
.tile-viz{grid-column:2;grid-row:1/4;align-self:stretch;display:flex;gap:6px;align-items:flex-end;min-height:180px}
.viz-film i{flex:1;height:100%;border-radius:8px;background:linear-gradient(180deg,#ffffff10,#ffffff04);border:1px solid var(--line);position:relative;overflow:hidden}
.viz-film i::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent,#ff800044);transform:translateY(100%);animation:film 3.2s var(--ease) infinite;animation-delay:calc(var(--d,0) * 1s)}
.viz-film i:nth-child(1){--d:.0}.viz-film i:nth-child(2){--d:.15}.viz-film i:nth-child(3){--d:.3}.viz-film i:nth-child(4){--d:.45}.viz-film i:nth-child(5){--d:.6}.viz-film i:nth-child(6){--d:.75}.viz-film i:nth-child(7){--d:.9}.viz-film i:nth-child(8){--d:1.05}
@keyframes film{0%{transform:translateY(100%)}50%{transform:translateY(0)}100%{transform:translateY(-100%)}}
.viz-bars i{flex:1;height:calc(var(--h) * 100%);border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,var(--pa),#ff800022);transform-origin:bottom;transform:scaleY(var(--grow,0));transition:transform 1.2s var(--ease)}
.viz-bars.in i{--grow:1}
.viz-bars i:nth-child(2){transition-delay:.06s}.viz-bars i:nth-child(3){transition-delay:.12s}.viz-bars i:nth-child(4){transition-delay:.18s}.viz-bars i:nth-child(5){transition-delay:.24s}.viz-bars i:nth-child(6){transition-delay:.3s}.viz-bars i:nth-child(7){transition-delay:.36s}.viz-bars i:nth-child(8){transition-delay:.42s}
@media (max-width:900px){.bento{grid-template-columns:1fr}.tile.t-wide{grid-column:auto;grid-template-columns:1fr}.tile-viz{grid-column:1;grid-row:auto;min-height:120px;margin-top:24px}}

/* ---------- model path + economics ---------- */
.path{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:clamp(56px,7vw,96px)}
.path-line{position:absolute;left:0;right:0;top:7px;height:1px;background:var(--line2)}
.path-line i{display:block;height:100%;background:var(--pa);box-shadow:0 0 12px var(--pa);transform-origin:left;transform:scaleX(0)}
.path-step{position:relative;padding-top:40px}
.path-dot{position:absolute;top:0;left:0;width:15px;height:15px;border-radius:50%;background:var(--bg);border:2px solid var(--pa);box-shadow:0 0 0 6px var(--bg)}
.path-step .mono{color:var(--muted)}
.path-step h3{font-family:var(--display);font-stretch:125%;font-weight:800;text-transform:uppercase;font-size:clamp(22px,2.1vw,32px);line-height:1;margin:14px 0 12px}
.path-step p{margin:0;color:var(--ink2);max-width:360px}
@media (max-width:900px){.path{grid-template-columns:1fr}.path-line{display:none}}

.econ{display:grid;grid-template-columns:1.1fr 1fr;gap:16px;margin-top:clamp(64px,8vw,110px)}
.econ-card{border:1px solid var(--line2);border-radius:22px;padding:clamp(26px,3vw,40px);background:linear-gradient(180deg,#0f1115,#0a0b0e)}
.econ-head{display:flex;flex-direction:column;gap:8px;margin-bottom:28px}
.econ-head .mono{color:var(--muted)}
.econ-head strong{font-size:clamp(46px,5.4vw,84px);color:var(--ink)}
.econ-head strong::before{content:'$';color:var(--pa);font-size:.6em;vertical-align:.45em;margin-right:4px}
.econ-head small{color:var(--muted)}
.econ-rows{display:flex;flex-direction:column}
.econ-axis{display:grid;grid-template-columns:170px 1fr 110px;gap:18px;padding-top:10px;border-top:1px solid var(--line)}
.econ-axis div{display:flex;justify-content:space-between;color:var(--dim);font-size:9.5px}
@media (max-width:900px){.econ-axis{grid-template-columns:1fr}.econ-axis>span{display:none}}
.econ-row{display:grid;grid-template-columns:170px 1fr 110px;gap:18px;align-items:center;padding:16px 0;border-top:1px solid var(--line);font-size:14.5px;color:var(--ink2)}
.econ-row b{text-align:right;color:var(--ink);font-weight:500;font-size:12px}
.range{position:relative;height:10px;border-radius:99px;background:#ffffff0a}
.range i{position:absolute;top:0;bottom:0;left:calc(var(--a) * 100%);width:calc((var(--b) - var(--a)) * 100%);border-radius:99px;background:linear-gradient(90deg,#ff800066,var(--pa));box-shadow:0 0 14px #ff800066;transform-origin:left;transform:scaleX(var(--grow,0));transition:transform 1.3s var(--ease)}
.econ-card.in .range i{--grow:1}
.econ-row:nth-child(2) .range i{transition-delay:.12s}.econ-row:nth-child(3) .range i{transition-delay:.24s}
.formula-card{display:flex;flex-direction:column}
.formula-card>.mono{color:var(--muted)}
.formula-card h3{font-size:clamp(28px,2.8vw,44px);margin:18px 0 30px}
.formula{display:flex;flex-direction:column;gap:8px;margin-top:auto}
.f-chip{padding:14px 18px;border:1px solid var(--line2);border-radius:12px;font-size:14.5px;color:var(--ink);background:#ffffff05}
.f-chip.dim{color:var(--ink2)}
.f-chip.result{background:var(--pa);color:#0a0a0a;font-weight:700;border-color:var(--pa);box-shadow:0 10px 40px -10px var(--pa-glow)}
.f-op{font-family:var(--mono);color:var(--pa);padding-left:18px;font-size:16px;line-height:1}
@media (max-width:900px){.econ{grid-template-columns:1fr}.econ-row{grid-template-columns:1fr auto;}.econ-row .range{grid-column:1/-1;grid-row:2}}

/* ---------- ask ---------- */
.has-fibre{isolation:isolate}
.has-fibre>*:not(.fibre){position:relative;z-index:1}
.fibre{position:absolute;top:0;bottom:0;left:50%;width:100vw;height:100%;margin-left:-50vw;z-index:0;pointer-events:none;mix-blend-mode:screen;
  -webkit-mask-image:linear-gradient(180deg,transparent,#000 16%,#000 82%,transparent),linear-gradient(90deg,#0002 0%,#0005 38%,#000 66%);-webkit-mask-composite:source-in;
  mask-image:linear-gradient(180deg,transparent,#000 16%,#000 82%,transparent),linear-gradient(90deg,#0002 0%,#0005 38%,#000 66%);mask-composite:intersect}
.has-fibre .body,.has-fibre .asks p{text-shadow:0 0 18px #060709,0 0 4px #060709}
.js .fibre{opacity:0;transition:opacity 2s var(--ease)}
.js .fibre.on{opacity:1}
@media (max-width:700px){.js .fibre.on{opacity:.9}}
.finale{min-height:100svh;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.ask{overflow:hidden}
.ask-lights{display:flex;gap:14px;margin-bottom:40px}
.ask-lights i{width:18px;height:18px;border-radius:50%;background:#1a0d0d;border:1px solid #2a1515;transition:background .15s,box-shadow .15s}
.ask-lights.lit i{background:#ff2020;box-shadow:0 0 18px #ff2020,0 0 50px #ff000066;border-color:#ff5050}
.ask-lights.go i{background:#16110d;box-shadow:none}
.asks{max-width:900px}

/* ---------- showroom: hero ---------- */
.hero-center .eyebrow{justify-content:center}

/* ---------- segmented control ---------- */
.seg{position:relative;display:inline-flex;flex-wrap:wrap;padding:5px;border:1px solid var(--line2);border-radius:999px;margin:44px 0 28px;background:#ffffff04}
.seg-pill{position:absolute;top:5px;left:5px;bottom:5px;border-radius:999px;background:var(--accent);box-shadow:0 8px 30px -8px var(--accent);transition:background .5s}
.seg-btn{position:relative;z-index:1;padding:13px 22px;border-radius:999px;font-weight:600;font-size:14px;color:var(--muted);transition:color .35s}
.seg-btn .mono{font-size:10px;margin-right:6px;opacity:.7}
.seg-btn:hover{color:var(--ink)}
.seg-btn.active{color:#0a0a0a}
.ind{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.ind-copy{padding:clamp(8px,2vw,20px) 0}
.ind-tag{color:var(--accent);transition:color .5s}
.ind-head{font-size:clamp(44px,6vw,104px);margin:22px 0 24px;min-height:1.8em}
.ind-copy p{color:var(--ink2);max-width:540px;font-size:17px;margin:0 0 34px}
.ind-kpis{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line)}
.ind-kpis div{padding:20px 20px 0 0;display:flex;flex-direction:column;gap:8px}
.ind-kpis div+div{padding-left:20px;border-left:1px solid var(--line)}
.ind-kpis .mono{color:var(--muted)}
.ind-kpis strong{font-family:var(--display);font-stretch:115%;font-weight:700;text-transform:uppercase;font-size:17px;letter-spacing:.01em}
.ind-board{border:1px solid var(--line2);border-radius:24px;padding:clamp(26px,3vw,40px);background:radial-gradient(80% 60% at 100% 0%,color-mix(in srgb,var(--accent) 16%,transparent),transparent 70%),linear-gradient(180deg,#101216,#0a0b0e);display:flex;flex-direction:column;min-height:460px;transition:background .6s}
.board-label{color:var(--muted)}
.ind-quote{font-size:clamp(24px,2.5vw,38px);font-stretch:100%;font-weight:700;text-transform:none;letter-spacing:-.02em;line-height:1.12;margin:26px 0 28px}
.ind-list{list-style:none;margin:auto 0 0;padding:0}
.ind-list li{display:flex;align-items:center;gap:14px;padding:15px 0;border-top:1px solid var(--line);font-family:var(--display);font-stretch:115%;font-weight:700;text-transform:uppercase;font-size:15px;letter-spacing:.02em}
.ind-list li::before{content:'';width:8px;height:8px;border-radius:2px;background:var(--accent);box-shadow:0 0 12px var(--accent);flex:none}
.board-foot{color:var(--dim);margin-top:18px;font-size:9.5px}
@media (max-width:900px){.ind{grid-template-columns:1fr}.ind-head{min-height:0}.seg{display:flex}.seg-btn{flex:1;padding:12px 10px;font-size:13px}.seg-btn .mono{display:none}}

/* ---------- season ---------- */
.season-grid{display:grid;grid-template-columns:1.25fr 1fr;border:1px solid var(--line2);border-radius:26px;overflow:hidden;background:linear-gradient(180deg,#0d0f13,#08090b)}
.season-map{border-right:1px solid var(--line);padding:10px}
.race-panel{display:flex;flex-direction:column}
.race-tabs{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid var(--line)}
.race-tab{padding:18px 8px 16px;text-align:left;border-left:1px solid var(--line);color:var(--muted);position:relative;transition:color .3s,background .3s}
.race-tab:first-child{border-left:0}
.race-tab b{display:block;font-family:var(--display);font-stretch:115%;font-weight:800;font-size:13px;letter-spacing:.02em;text-transform:uppercase;color:inherit;margin-top:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.race-tab .mono{font-size:9.5px;letter-spacing:.08em;white-space:nowrap}
.race-tab::after{content:'';position:absolute;left:0;right:0;bottom:-1px;height:2px;background:var(--pa);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.race-tab:hover{color:var(--ink);background:#ffffff04}
.race-tab.active{color:var(--ink)}
.race-tab.active::after{transform:scaleX(1)}
.race-body{padding:clamp(26px,3vw,44px);display:flex;flex-direction:column;flex:1}
.race-event{color:var(--pa)}
.race-name{font-size:clamp(28px,2.7vw,44px);margin:18px 0 22px;line-height:.95}
.race-body p{color:var(--ink2);margin:0 0 30px;max-width:460px}
.race-act{display:flex;flex-direction:column;gap:8px;padding:20px 22px;border:1px solid var(--line2);border-radius:14px;background:#ffffff05}
.race-act .mono{color:var(--muted)}
.race-act strong{font-weight:600;font-size:17px}
.race-meta{display:flex;justify-content:space-between;color:var(--dim);margin-top:auto;padding-top:28px}
@media (max-width:1000px){.season-grid{grid-template-columns:1fr}.season-map{border-right:0;border-bottom:1px solid var(--line)}.race-tabs{order:-1}}
@media (max-width:560px){.race-tab{padding:14px 4px 12px;text-align:center;min-width:0}.race-tab .mono{display:none}.race-tab b{font-size:10.5px;margin:0}}

/* ---------- builder ---------- */
.builder-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:16px;align-items:start}
.goals{display:flex;flex-direction:column;gap:10px}
.goal{display:grid;grid-template-columns:auto 1fr auto;gap:18px;align-items:center;padding:20px 22px;border:1px solid var(--line2);border-radius:16px;cursor:pointer;background:#ffffff03;transition:border-color .3s,background .3s,transform .4s var(--ease)}
.goal:hover{border-color:#ffffff33;transform:translateX(4px)}
.goal input{position:absolute;opacity:0;pointer-events:none}
.goal-box{width:22px;height:22px;border-radius:7px;border:1.5px solid #ffffff40;position:relative;transition:background .25s,border-color .25s}
.goal-box::after{content:'';position:absolute;left:6.5px;top:2.5px;width:5px;height:10px;border:solid #0a0a0a;border-width:0 2px 2px 0;transform:rotate(45deg) scale(0);transition:transform .35s var(--ease)}
.goal input:checked~.goal-box{background:var(--pa);border-color:var(--pa);box-shadow:0 0 18px var(--pa-glow)}
.goal input:checked~.goal-box::after{transform:rotate(45deg) scale(1)}
.goal input:focus-visible~.goal-box{outline:2px solid var(--pa);outline-offset:3px}
.goal:has(input:checked){border-color:#ff800066;background:linear-gradient(90deg,#ff80000d,transparent)}
.goal-txt b{display:block;font-weight:600;font-size:16px}
.goal-txt small{color:var(--muted);font-size:13px}
.goal-n{color:var(--dim)}
.brief{border:1px solid var(--line2);border-radius:24px;padding:clamp(24px,3vw,38px);background:linear-gradient(180deg,#101216,#0a0b0e);position:sticky;top:100px}
.brief-head{display:flex;justify-content:space-between;color:var(--muted)}
.brief-id{color:var(--pa)}
.brief h3{font-size:clamp(30px,3vw,48px);margin:16px 0 24px}
.scope{display:grid;grid-template-columns:1fr 1fr;gap:12px 20px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:8px}
.scope div{display:flex;flex-direction:column;gap:6px}
.scope .mono{color:var(--muted);font-size:9.5px}
.scope strong{font-family:var(--display);font-stretch:115%;font-weight:800;text-transform:uppercase;font-size:20px}
.scope #scopeRange{color:var(--pa)}
.scope-meter{grid-column:1/-1;flex-direction:row!important;gap:5px!important}
.scope-meter i{flex:1;height:5px;border-radius:2px;background:#ffffff12;transition:background .4s,box-shadow .4s}
.scope-meter i.on{background:var(--pa);box-shadow:0 0 10px var(--pa-glow)}
.brief-lines{min-height:120px}
.brief-line{display:grid;grid-template-columns:40px 1fr;gap:12px;padding:16px 0;border-bottom:1px solid var(--line)}
.brief-line .mono{color:var(--pa);padding-top:3px}
.brief-line strong{display:block;font-family:var(--display);font-stretch:115%;font-weight:800;text-transform:uppercase;font-size:14.5px;letter-spacing:.02em;margin-bottom:4px}
.brief-line p{margin:0;color:var(--ink2);font-size:14px}
.brief-line.empty{display:block;color:var(--muted);font-size:14px}
.brief-foot{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin-top:26px}
.brief-foot small{color:var(--dim)}
@media (max-width:900px){.builder-grid{grid-template-columns:1fr}.brief{position:relative;top:auto}}

/* ---------- tiers ---------- */
.tiers{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:clamp(48px,6vw,84px);align-items:stretch}
.tier{border:1px solid var(--line2);border-radius:24px;padding:32px;background:linear-gradient(180deg,#0f1115,#0a0b0e);display:flex;flex-direction:column;min-height:440px}
.tier>.mono{color:var(--muted)}
.tier h3{font-size:clamp(30px,2.8vw,44px);margin:28px 0 auto}
.tier strong{font-size:clamp(34px,3.3vw,54px);margin:40px 0 16px;color:var(--ink);white-space:nowrap}
.tier p{color:var(--ink2);margin:0 0 22px;font-size:15px}
.tier small{color:var(--dim);padding-top:18px;border-top:1px solid var(--line)}
.tier.featured{border-color:transparent;background:linear-gradient(180deg,#16110c,#0b0a09) padding-box,conic-gradient(from var(--ang,0deg),#ff800000 0deg,var(--pa) 70deg,#ff800000 140deg,#ff800000 360deg) border-box;border:1px solid transparent;animation:spinang 6s linear infinite}
.tier.featured strong{color:var(--pa)}
.tier.featured>.mono{color:var(--pa)}
@property --ang{syntax:'<angle>';inherits:false;initial-value:0deg}
@keyframes spinang{to{--ang:360deg}}
@media (max-width:900px){.tiers{grid-template-columns:1fr}.tier{min-height:0}}

/* ---------- proof ---------- */
.proof-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(48px,6vw,84px);border-top:1px solid var(--line2)}
.proof-item{padding:30px 26px 10px 0}
.proof-item+.proof-item{padding-left:26px;border-left:1px solid var(--line)}
.proof-item .mono{color:var(--pa)}
.proof-item h3{font-size:clamp(24px,2.2vw,34px);margin:60px 0 14px}
.proof-item p{color:var(--ink2);margin:0;font-size:15px}
@media (max-width:900px){.proof-grid{grid-template-columns:1fr 1fr}.proof-item:nth-child(3){padding-left:0;border-left:0}.proof-item{padding-bottom:30px}}
@media (max-width:520px){.proof-grid{grid-template-columns:1fr}.proof-item+.proof-item{padding-left:0;border-left:0;border-top:1px solid var(--line)}}

/* ---------- finale / footer ---------- */
.finale,.ask{padding-bottom:clamp(120px,18vh,220px)}
.footer{position:relative;z-index:1;border-top:1px solid var(--line);padding:70px var(--gutter) 40px;max-width:var(--maxw);margin:0 auto}
.footer-mark{font-size:clamp(60px,12vw,200px);color:#ffffff10;line-height:.85;margin-bottom:50px}
.footer-mark .pa{color:#ff800030}
.footer-cols{display:grid;grid-template-columns:1fr 1fr 1.4fr;gap:40px}
.footer-cols .mono{color:var(--muted);display:block;margin-bottom:14px}
.footer-cols p{color:var(--dim);font-size:13px;margin:0 0 10px}
.footer-src a{display:block;color:var(--ink2);font-size:14px;padding:5px 0;transition:color .2s}
.footer-src a:hover{color:var(--pa)}
.footer-keys{display:flex;gap:24px;color:var(--dim);margin-top:50px}
kbd{display:inline-block;font-family:var(--mono);font-size:10px;padding:3px 7px;border:1px solid var(--line2);border-bottom-width:2px;border-radius:5px;margin-right:4px;color:var(--ink2)}
@media (max-width:900px){.footer-cols{grid-template-columns:1fr}.footer-keys{display:none}}
@media (max-width:640px){.topbar{grid-template-columns:auto 1fr;height:64px}.brand-text{display:none}.switch{justify-self:end}.topbar-meta{display:none}.section{scroll-margin-top:64px}}
@media (max-width:420px){.switch-btn{padding:8px 10px;font-size:11.5px}}


/* ---------- platform: photo mosaic + credentials ---------- */
.mosaic{display:grid;grid-template-columns:1fr 1fr 1fr;grid-template-rows:380px 300px;gap:12px}
.mosaic figure{position:relative;margin:0;border-radius:20px;overflow:hidden;border:1px solid var(--line2);background:var(--panel)}
.mosaic .m-a{grid-column:1/3}
.mosaic .m-d{grid-column:2/4}
.mosaic .m-a img{object-position:50% 72%}
.mosaic .ph{position:absolute;inset:0;overflow:hidden}
.mosaic img{position:absolute;left:0;top:-8%;width:100%;height:116%;object-fit:cover;filter:saturate(.92) contrast(1.04);transition:transform 1.4s var(--ease),filter .6s}
.mosaic figure:hover img{transform:scale(1.04);filter:saturate(1.05) contrast(1.06)}
.mosaic figure::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,#060709e6);pointer-events:none}
.mosaic figcaption{position:absolute;left:18px;bottom:16px;z-index:1;color:var(--ink);font-size:10px}
.creds{display:grid;grid-template-columns:repeat(4,1fr);margin-top:16px;border:1px solid var(--line2);border-radius:20px;overflow:hidden;background:linear-gradient(180deg,#0f1115,#0a0b0e)}
.creds div{padding:26px 26px 24px;display:flex;flex-direction:column;gap:10px}
.creds div+div{border-left:1px solid var(--line)}
.creds strong{font-size:clamp(40px,4vw,64px);line-height:.9}
.creds strong em{font-style:normal;color:var(--pa)}
.creds span{color:var(--ink2);font-size:14px;line-height:1.45}
@media (max-width:900px){.mosaic{grid-template-columns:1fr 1fr;grid-template-rows:260px 180px 180px}.mosaic .m-a{grid-column:1/3}.mosaic .m-d{grid-column:1/3}.creds{grid-template-columns:1fr 1fr}.creds div:nth-child(3){border-left:0}.creds div:nth-child(n+3){border-top:1px solid var(--line)}}

/* ---------- delivery matrix ---------- */
.raci{border:1px solid var(--line2);border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#0f1115,#0a0b0e)}
.raci-row{display:grid;grid-template-columns:1.25fr 1fr 1fr 1fr;border-top:1px solid var(--line)}
.raci-row:first-child{border-top:0}
.raci-row span{padding:17px 22px;font-size:14.5px;color:var(--ink2);display:flex;align-items:center;gap:10px}
.raci-row span:first-child{color:var(--ink);font-weight:600}
.raci-row span+span{border-left:1px solid var(--line)}
.raci-head span{font-family:var(--mono);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)!important;font-weight:500!important;background:#ffffff04}
.raci-head span:nth-child(2){color:var(--pa)!important}
.raci .lead{color:var(--ink);background:linear-gradient(90deg,#ff800012,transparent)}
.raci .lead::before,.raci .ok::before,.raci .opt::before{content:'';flex:none;width:8px;height:8px;border-radius:50%}
.raci .lead::before{background:var(--pa);box-shadow:0 0 10px var(--pa)}
.raci .ok::before{border:1.5px solid var(--ink2)}
.raci .opt::before{border:1.5px dashed var(--dim)}
.raci .na{color:var(--dim)}
.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:16px}
.principle{border:1px solid var(--line2);border-radius:20px;padding:26px 28px;background:linear-gradient(180deg,#0f1115,#0a0b0e)}
.principle .mono{color:var(--pa)}
.principle h3{font-family:var(--display);font-stretch:120%;font-weight:800;text-transform:uppercase;font-size:20px;margin:14px 0 10px;line-height:1.05}
.principle p{margin:0;color:var(--ink2);font-size:15px}
@media (max-width:900px){
  .raci-row{grid-template-columns:1fr;padding:6px 0 10px}
  .raci-row span{padding:7px 18px;border-left:0!important}
  .raci-row span:first-child{padding-top:12px}
  .raci-row .na{display:none}
  .raci-row span:nth-child(n+2)::after{margin-left:auto;padding-left:12px;font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);white-space:nowrap}
  .raci-row span:nth-child(2)::after{content:'D2G'}
  .raci-row span:nth-child(3)::after{content:'BHA'}
  .raci-row span:nth-child(4)::after{content:'Series'}
  .raci .lead{background:none}
  .raci-head{display:none}.principles{grid-template-columns:1fr}}

/* ---------- livery studio ---------- */
.studio{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:16px;align-items:start}
.stage{position:relative;width:100%;aspect-ratio:16/9;border-radius:24px;overflow:hidden;border:1px solid var(--line2);background:radial-gradient(70% 60% at 50% 60%,#1a1209,#07080a);--reveal:0}
.stage .car{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.car-base{transition:filter .8s var(--ease),transform 1.2s var(--ease)}
.stage.scanning .car-base{filter:brightness(.55) saturate(.6)}
.car-render{clip-path:inset(0 calc((1 - var(--reveal)) * 100%) 0 0);opacity:1;transition:opacity .6s var(--ease)}
.stage:not(.scanning):not(.rendered) .car-render{opacity:0}
.stage.show-base .car-render{opacity:0}
.scan{position:absolute;top:0;bottom:0;left:calc(var(--reveal) * 100%);width:2px;margin-left:-1px;background:#fff;box-shadow:0 0 14px #fff,0 0 40px var(--pa),0 0 90px var(--pa);opacity:0;pointer-events:none}
.stage.scanning .scan{opacity:1}
.stage.scanning::after{content:'';position:absolute;inset:0;pointer-events:none;background:repeating-linear-gradient(0deg,#ff800010 0 1px,transparent 1px 4px);mix-blend-mode:screen}
.stage-missing{position:absolute;inset:0;display:none;place-items:center;color:var(--muted)}
.stage.no-base .stage-missing{display:grid}
.stage.scanning .stage-missing,.stage.rendered:not(.show-base) .stage-missing{display:none}
.stage.no-base .car-base{opacity:0}
.stage-hud{position:absolute;left:18px;right:18px;top:16px;display:flex;justify-content:space-between;color:#ffffffcc;font-size:10px;text-shadow:0 1px 8px #000}
.stage-toggle{position:absolute;right:16px;bottom:16px;display:flex;padding:4px;border-radius:999px;background:#06070999;backdrop-filter:blur(10px);border:1px solid var(--line2)}
.stage-toggle button{padding:7px 12px;border-radius:999px;font-size:10px;color:var(--muted)}
.stage-toggle button.active{background:var(--ink);color:#0a0a0a}
.stage-toggle button:disabled{opacity:.35;cursor:default}
.studio-panel{border:1px solid var(--line2);border-radius:24px;padding:22px;background:linear-gradient(180deg,#101216,#0a0b0e);display:flex;flex-direction:column;gap:16px}
.url-form{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 16px;border:1px solid var(--line2);border-radius:999px;background:#ffffff05;transition:border-color .3s,box-shadow .3s}
.url-form:focus-within{border-color:#ff800099;box-shadow:0 0 0 4px #ff800018}
.url-form>.mono{color:var(--dim);font-size:11px;letter-spacing:.02em;text-transform:none}
.url-form input{flex:1;min-width:0;background:none;border:0;outline:0;color:var(--ink);font:500 15px var(--sans);padding:10px 0}
.url-form .btn{height:44px;padding:0 18px 0 20px}
.samples{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.samples>.mono{color:var(--dim)}
.samples button{padding:7px 12px;border:1px solid var(--line2);border-radius:999px;color:var(--ink2);text-transform:none;letter-spacing:.02em;transition:border-color .2s,color .2s}
.samples button:hover{border-color:var(--pa);color:var(--ink)}
.pipeline{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.pipeline li{display:grid;grid-template-columns:18px 1fr auto;gap:12px;align-items:center;padding:11px 0;border-bottom:1px solid var(--line);color:var(--dim);font-size:14px;transition:color .3s}
.pipeline li i{width:10px;height:10px;border-radius:50%;border:1.5px solid #ffffff30;justify-self:center}
.pipeline li em{font-style:normal;color:var(--muted);font-size:10px;letter-spacing:.06em;text-transform:none;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pipeline li.run{color:var(--ink)}
.pipeline li.run i{border-color:var(--pa);border-top-color:transparent;width:12px;height:12px;animation:spin .7s linear infinite}
.pipeline li.done{color:var(--ink2)}
.pipeline li.done i{background:var(--pa);border-color:var(--pa);box-shadow:0 0 10px var(--pa-glow)}
.pipeline li.warn{color:var(--ink2)}
.pipeline li.warn i{background:#e6b85c;border-color:#e6b85c}
.brand-card{border:1px solid var(--line2);border-radius:16px;padding:16px;background:#ffffff04}
.brand-top{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.brand-top strong{font-size:22px}
.brand-top .mono{color:var(--muted);font-size:9.5px}
.chips{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}
.chip{display:grid;grid-template-columns:22px 1fr;grid-template-rows:auto auto;column-gap:10px;align-items:center}
.chip i{grid-row:1/3;width:22px;height:22px;border-radius:6px;border:1px solid #ffffff26}
.chip b{font-size:10.5px;color:var(--ink);letter-spacing:.06em}
.chip small{color:var(--muted);font-size:11.5px}
.brand-fit{display:flex;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid var(--line);font-size:14px}
.brand-fit .mono{color:var(--muted);font-size:9.5px}
.studio-msg{margin:0;font-size:13.5px;color:var(--ink2);padding:12px 14px;border:1px solid #e6b85c55;border-radius:12px;background:#e6b85c0d}
.studio-msg b{color:var(--ink)}
@media (max-width:1000px){.studio{grid-template-columns:minmax(0,1fr)}}
@media (max-width:480px){.url-form>.mono{display:none}.url-form .btn{padding:0 14px}}

/* ---------- industry board livery link ---------- */
.livery-link{margin-top:18px;align-self:flex-start;font-size:14px;color:var(--accent);border-color:color-mix(in srgb,var(--accent) 40%,transparent)}

/* ---------- race weekend ---------- */
.days{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.day{border:1px solid var(--line2);border-radius:20px;padding:22px 22px 20px;background:linear-gradient(180deg,#0f1115,#0a0b0e);display:flex;flex-direction:column}
.day-top{display:flex;align-items:baseline;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--line)}
.day-top span{font-family:var(--display);font-stretch:125%;font-weight:850;font-size:34px;letter-spacing:-.01em;color:var(--ink)}
.day-top b{color:var(--muted);font-weight:500}
.day-race{background:radial-gradient(90% 70% at 100% 0%,#ff80001f,transparent 70%),linear-gradient(180deg,#14100c,#0a0b0e);border-color:#ff800055}
.day-race .day-top span{color:var(--pa)}
.day ul{list-style:none;margin:16px 0 22px;padding:0;display:flex;flex-direction:column;gap:11px}
.day li{position:relative;padding-left:18px;color:var(--ink);font-size:15px;line-height:1.35}
.day li::before{content:'';position:absolute;left:0;top:.5em;width:8px;height:2px;background:var(--pa)}
.day small{margin-top:auto;color:var(--dim);font-size:9.5px}
.offweek{display:grid;grid-template-columns:auto repeat(4,1fr);gap:0;margin-top:12px;border:1px solid var(--line2);border-radius:20px;overflow:hidden}
.offweek>.mono{display:grid;place-items:center;padding:0 22px;color:var(--pa);background:#ff80000d;border-right:1px solid var(--line)}
.offweek div{padding:18px 20px;display:flex;flex-direction:column;gap:4px}
.offweek div+div{border-left:1px solid var(--line)}
.offweek b{font-size:15px}
.offweek small{color:var(--muted);font-size:13px}
@media (max-width:1000px){.days{grid-template-columns:1fr 1fr}.offweek{grid-template-columns:1fr 1fr}.offweek>.mono{grid-column:1/-1;padding:12px;border-right:0;border-bottom:1px solid var(--line)}.offweek div:nth-child(4){border-left:0}.offweek div:nth-child(n+4){border-top:1px solid var(--line)}}
@media (max-width:560px){.days{grid-template-columns:1fr}}

/* ---------- builder groups ---------- */
.goals{gap:18px}
.goal-group{display:flex;flex-direction:column;gap:8px}
.goal-g{color:var(--pa);padding-left:4px}
.goal{padding:14px 18px;gap:16px}
.goal-txt b{font-size:15px}
.goal-txt small{display:block;font-size:12.5px;line-height:1.45;margin-top:2px}
.brief-line{grid-template-columns:40px 1fr auto;align-items:start}
.brief-line .who{font-style:normal;font-size:9px;color:var(--ink2);border:1px solid var(--line2);border-radius:999px;padding:4px 8px;white-space:nowrap;margin-top:1px}


/* ---------- bio ---------- */
.bio-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,80px);align-items:start}
.bio-portrait{margin:0;border-radius:24px;overflow:hidden;border:1px solid var(--line2);aspect-ratio:4/5;background:#0d0f13;position:sticky;top:100px}
.bio-portrait img{width:100%;height:100%;object-fit:cover;object-position:50% 30%;filter:grayscale(1) contrast(1.12) brightness(.92)}
.bio-portrait::before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,transparent 45%,#060709 100%),linear-gradient(120deg,#ff800038,transparent 45%);pointer-events:none}
.bio-portrait::after{content:'';position:absolute;inset:0;z-index:1;background:var(--pa);mix-blend-mode:color;opacity:.18;pointer-events:none}
.bio-portrait figcaption{position:absolute;z-index:2;left:20px;right:20px;bottom:18px;display:flex;justify-content:space-between;color:var(--ink);font-size:10px}
.bio-copy h2{margin-bottom:22px}
.bio-role{color:var(--pa);margin:0 0 26px}
.bio-copy p{color:var(--ink2);font-size:16.5px;line-height:1.7;margin:0 0 16px;max-width:640px}
.bio-copy .bio-lede{font-size:clamp(19px,1.6vw,23px);line-height:1.5;color:var(--ink);font-weight:500}
.bio-note{margin:26px 0 0;padding:20px 24px;border-left:2px solid var(--pa);background:linear-gradient(90deg,#ff80000f,transparent);border-radius:0 14px 14px 0;color:var(--ink);font-size:15.5px;line-height:1.65;max-width:640px}
.bio-stats{display:grid;grid-template-columns:repeat(4,1fr);margin-top:clamp(40px,5vw,64px);border-top:1px solid var(--line2);border-bottom:1px solid var(--line2)}
.bio-stats div{padding:24px 20px 22px 0;display:flex;flex-direction:column;gap:8px}
.bio-stats div+div{padding-left:22px;border-left:1px solid var(--line)}
.bio-stats strong{font-size:clamp(30px,3.2vw,52px)}
.bio-stats strong em{font-style:normal;color:var(--pa)}
.bio-stats span{color:var(--muted);font-size:13.5px}
.reach{margin-top:16px;border:1px solid var(--line2);border-radius:20px;padding:20px 24px;background:linear-gradient(180deg,#0f1115,#0a0b0e)}
.reach-head{display:flex;justify-content:space-between;color:var(--muted);padding-bottom:12px;border-bottom:1px solid var(--line)}
.reach-row{display:grid;grid-template-columns:110px 1fr 90px 64px;gap:18px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.reach-row:last-child{border-bottom:0;padding-bottom:2px}
.reach-row b{text-align:right;color:var(--ink);font-weight:500;font-size:12px}
.reach-row em{text-align:right;font-style:normal;color:var(--muted);font-size:11px}
.reach .bar{height:8px;border-radius:99px;background:#ffffff0a;overflow:hidden}
.reach .bar i{display:block;height:100%;width:calc(max(var(--v),.012) * 100%);border-radius:99px;background:linear-gradient(90deg,#ff800066,var(--pa));box-shadow:0 0 12px #ff800055;transform-origin:left;transform:scaleX(0);transition:transform 1.4s var(--ease)}
.reach.in .bar i{transform:scaleX(1)}
.reach-row:nth-child(3) .bar i{transition-delay:.1s}.reach-row:nth-child(4) .bar i{transition-delay:.2s}.reach-row:nth-child(5) .bar i{transition-delay:.3s}
@media (max-width:900px){.bio-grid{grid-template-columns:1fr}.bio-portrait{position:relative;top:auto;max-width:420px;aspect-ratio:1}.bio-stats{grid-template-columns:1fr 1fr}.bio-stats div:nth-child(3){border-left:0;padding-left:0}.bio-stats div:nth-child(n+3){border-top:1px solid var(--line)}.reach-row{grid-template-columns:80px 1fr 70px;gap:12px}.reach-row em,.reach-head span:last-child{display:none}}

/* ---------- tiers: inclusions ---------- */
.tier-list{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:8px}
.tier-list li{position:relative;padding-left:18px;font-size:14px;color:var(--ink)}
.tier-list li::before{content:'';position:absolute;left:0;top:.55em;width:8px;height:2px;background:var(--pa)}
.tier strong{margin:28px 0 14px}

/* ---------- builder: value + tier badges ---------- */
.goal{grid-template-columns:auto 1fr auto}
.goal-meta{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.goal-tier{font-style:normal;font-size:8.5px;padding:3px 7px;border-radius:999px;border:1px solid var(--line2);color:var(--muted);white-space:nowrap}
.goal-season .goal-tier{color:var(--ink2);border-color:#ffffff40}
.goal-anchor .goal-tier{color:#0a0a0a;background:var(--pa);border-color:var(--pa)}
.goal-val{color:var(--dim);font-size:10px;letter-spacing:.06em}
.goal-anchor{border-color:#ff800040}
.scope-why{grid-column:1/-1;color:var(--muted);font-size:9.5px;min-height:1em}
.brief[data-tier=anchor] #scopeName{color:var(--pa)}


/* ---------- ask: next 30 days + founding partner ---------- */
.asks li p b{color:var(--ink);font-weight:700}
.asks li p{color:var(--ink2)}
.next{margin-top:48px;max-width:1100px}
.next-label{color:var(--pa);display:block;margin-bottom:14px}
.next-steps{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line2);border-radius:18px;overflow:hidden;background:#0a0b0ecc;backdrop-filter:blur(6px)}
.next-steps div{padding:18px 20px;display:flex;flex-direction:column;gap:6px;position:relative}
.next-steps div+div{border-left:1px solid var(--line)}
.next-steps div::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--pa),transparent)}
.next-steps .mono{color:var(--muted);font-size:9.5px}
.next-steps b{font-family:var(--display);font-stretch:118%;font-weight:800;text-transform:uppercase;font-size:17px}
.next-steps small{color:var(--ink2);font-size:13px}
.founding{margin-top:16px;max-width:1100px;padding:22px 26px;border-left:2px solid var(--pa);border-radius:0 16px 16px 0;background:linear-gradient(90deg,#ff800014,#0a0b0e99 70%)}
.founding .mono{color:var(--pa)}
.founding p{margin:8px 0 0;font-size:17px;line-height:1.6;color:var(--ink2);max-width:860px}
.founding b{color:var(--ink)}
@media (max-width:800px){.next-steps{grid-template-columns:1fr 1fr}.next-steps div:nth-child(3){border-left:0}.next-steps div:nth-child(n+3){border-top:1px solid var(--line)}}


/* ---------- team: what BHA delivers ---------- */
.delivers{margin-top:16px;border:1px solid var(--line2);border-radius:20px;padding:22px 26px;background:linear-gradient(180deg,#0f1115,#0a0b0e)}
.delivers>.mono{color:var(--pa);display:block;margin-bottom:14px}
.delivers ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.delivers b{display:block;font-family:var(--display);font-stretch:118%;font-weight:800;text-transform:uppercase;font-size:16px;margin-bottom:6px}
.delivers small{color:var(--ink2);font-size:14px;line-height:1.5;display:block}
@media (max-width:900px){.delivers ul{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.delivers ul{grid-template-columns:1fr}}
.finale .btn-xl+.btn-xl{margin-top:14px}

.partner-lock{justify-self:center;color:var(--ink2);white-space:nowrap}
.partner-lock span{color:var(--pa);margin:0 6px}
@media (max-width:640px){.partner-lock{justify-self:end;font-size:9px;letter-spacing:.08em}}

/* ---------- choose your advantage: other industries ---------- */
.seg-btn .lbl-sm{display:none}
.more-picks{display:flex;flex-wrap:wrap;gap:8px;margin:-12px 0 28px}
.pick{padding:9px 14px;border-radius:999px;border:1px solid var(--line2);color:var(--ink2);font-size:13.5px;font-weight:600;background:#ffffff04;transition:border-color .25s,color .25s,background .25s}
.pick::before{content:'';display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--c);margin-right:8px;vertical-align:1px}
.pick:hover{color:var(--ink);border-color:#ffffff40}
.pick[aria-pressed="true"]{color:var(--ink);border-color:var(--c);background:color-mix(in srgb,var(--c) 14%,transparent)}
.more-note{margin-top:20px;color:var(--ink2);font-size:15.5px;display:flex;flex-wrap:wrap;gap:6px 14px;align-items:baseline}
.more-note b{color:var(--ink)}
@media (max-width:900px){.seg-btn .lbl-lg{display:none}.seg-btn .lbl-sm{display:inline}}

/* ---------- contact ---------- */
.contact{margin-top:40px;padding:26px 28px;border:1px solid var(--line2);border-radius:20px;background:#0a0b0ecc;backdrop-filter:blur(8px);max-width:760px}
.contact>.mono{color:var(--pa);display:block;margin-bottom:12px}
.contact-row{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px}
.contact-email{font-size:clamp(22px,3vw,38px);font-stretch:110%;text-transform:none;letter-spacing:-.01em;color:var(--ink);border-bottom:2px solid var(--pa);padding-bottom:4px;word-break:break-all;user-select:all}
.contact-email:hover{color:var(--pa)}
.contact small{display:block;margin-top:14px;color:var(--muted);font-size:13.5px}
.contact .btn{height:46px}
.footer-contact a{color:var(--pa)}
.top-contact{padding:8px 14px;border-radius:999px;background:var(--pa);color:#0a0a0a;font-family:var(--sans);font-weight:700;font-size:12px;letter-spacing:.02em;text-transform:none}
.finale .contact+.btn-xl{margin-top:28px}
/* ---------- socials ---------- */
.socials{display:flex;align-items:center;gap:8px;margin-top:14px;flex-wrap:wrap}
.socials .mono,.footer-cols .socials .mono{color:var(--muted);margin:0 6px 0 0;display:inline}
.socials a{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;border:1px solid var(--line2);color:var(--ink2);transition:color .2s,border-color .2s,background .2s,transform .3s var(--ease)}
.socials a:hover{color:#0a0a0a;background:var(--pa);border-color:var(--pa);transform:translateY(-2px)}
.socials svg{width:17px;height:17px}
.socials-lg{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.socials-lg a{width:46px;height:46px}
.socials-lg svg{width:20px;height:20px}
/* ---------- pitch arc: stage stats ---------- */
.stage-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--line2);border-radius:20px;overflow:hidden;background:linear-gradient(180deg,#0f1115,#0a0b0e);margin-bottom:16px}
.stage-stats div{padding:22px 24px;display:flex;flex-direction:column;gap:8px}
.stage-stats div+div{border-left:1px solid var(--line)}
.stage-stats strong{font-size:clamp(36px,3.8vw,58px);line-height:.9}
.stage-stats strong em{font-style:normal;color:var(--pa)}
.stage-stats span{color:var(--ink2);font-size:14px;line-height:1.45}
@media (max-width:900px){.stage-stats{grid-template-columns:1fr 1fr}.stage-stats div:nth-child(3){border-left:0}.stage-stats div:nth-child(n+3){border-top:1px solid var(--line)}}

/* ---------- pitch arc: ambition ---------- */
.ambition{margin-top:clamp(36px,4vw,56px);padding:26px clamp(22px,3vw,36px);border-radius:22px;border:1px solid #ff800055;background:radial-gradient(80% 120% at 0% 0%,#ff80001a,transparent 60%),linear-gradient(180deg,#14100c,#0a0b0e);display:grid;gap:12px}
.ambition>.mono{color:var(--pa)}
.ambition p{margin:0;font-size:clamp(24px,3vw,44px);line-height:1.02;max-width:26ch}
.bench{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;padding-top:14px;border-top:1px solid var(--line)}
.bench strong{font-size:clamp(28px,3vw,44px);color:var(--pa)}
.bench span{color:var(--ink2)}

/* ---------- pitch arc: season story chapters ---------- */
.chapters{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;counter-reset:ch}
.chapter{border:1px solid var(--line2);border-radius:20px;padding:20px 20px 24px;background:linear-gradient(180deg,#0f1115,#0a0b0e);display:flex;flex-direction:column;gap:10px;position:relative;overflow:hidden}
.chapter::before{content:'';position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--pa),transparent);opacity:calc(.35 + var(--k,0) * .65)}
.chapter:nth-child(1){--k:0}.chapter:nth-child(2){--k:.25}.chapter:nth-child(3){--k:.5}.chapter:nth-child(4){--k:.75}.chapter:nth-child(5){--k:1;border-color:#ff800066;background:radial-gradient(90% 70% at 100% 0%,#ff80001f,transparent 70%),linear-gradient(180deg,#14100c,#0a0b0e)}
.ch-top{display:flex;justify-content:space-between;gap:8px;color:var(--muted);font-size:9.5px}
.chapter h3{font-size:clamp(18px,1.6vw,24px);font-stretch:100%;margin:28px 0 0}
.chapter b{color:var(--pa);font-weight:500;font-size:9.5px}
.chapter p{margin:0;color:var(--ink2);font-size:14.5px;line-height:1.5}
@media (max-width:1240px){.chapters{grid-template-columns:1fr 1fr}.chapter:last-child{grid-column:1/-1}}
@media (max-width:560px){.chapters{grid-template-columns:1fr}}

/* ---------- pitch arc: F1 comparison ---------- */
.compare{border:1px solid var(--line2);border-radius:22px;overflow:hidden;margin-bottom:16px;background:linear-gradient(180deg,#0f1115,#0a0b0e)}
.cmp-row{display:grid;grid-template-columns:.8fr 1fr 1.2fr;border-top:1px solid var(--line)}
.cmp-row:first-child{border-top:0}
.cmp-row span{padding:16px 20px;font-size:14.5px;color:var(--muted)}
.cmp-row span+span{border-left:1px solid var(--line)}
.cmp-row [role=rowheader]{color:var(--ink);font-weight:600}
.cmp-row .win{color:var(--ink);background:linear-gradient(90deg,#ff800012,transparent)}
.cmp-head span{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)!important;background:#ffffff04}
.cmp-head span:last-child{color:var(--pa)!important}
@media (max-width:760px){.cmp-row{grid-template-columns:1fr 1fr}.cmp-row [role=rowheader]{grid-column:1/-1;border-bottom:1px solid var(--line);padding-bottom:8px}.cmp-row span:nth-child(2){border-left:0}.cmp-head span:first-child{display:none}}

/* ---------- reveal initial states (only with JS) ---------- */
.js [data-reveal]{opacity:0}
.js [data-hero]{opacity:0}
.js [data-split]{visibility:hidden}
.js [data-hero-title]{visibility:hidden}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}
  .js [data-reveal],.js [data-hero]{opacity:1}
  .js [data-split],.js [data-hero-title]{visibility:visible}
}
