@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:100 900;src:url(fonts/inter-variable.woff2) format('woff2');}
@font-face{font-family:'Anton';font-style:normal;font-display:swap;font-weight:400;src:url(fonts/anton-regular.woff2) format('woff2');}

:root{
  --black:#05090C;--ink:#0B1217;--tile-d:#10181E;--s900:#16252F;--slate:#29404F;--t2:#4E6675;--t2d:#8FA3AD;--hair:#D6DFE2;--hair-d:#22313A;
  --mist:#EFF3F1;--white:#fff;--green:#32CC33;--green-ink:#167A2E;--cyan:#0EC1F5;--cyan-ink:#07729B;--amber:#F59E0B;
  --grad:linear-gradient(90deg,#32CC33,#0EC1F5);--ease:cubic-bezier(.2,.7,.2,1);
  --wrap:1200px;--pad:24px;--nav:52px;--r-tile:28px;--r-panel:36px;
  --font:-apple-system,BlinkMacSystemFont,"SF Pro Display","Inter",system-ui,"Helvetica Neue",Arial,sans-serif;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--nav) + 56px)}
body{margin:0;background:var(--white);color:var(--s900);font-family:var(--font);font-size:19px;line-height:1.47;font-weight:400;letter-spacing:-.011em;font-optical-sizing:auto;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
img,svg{display:block;max-width:100%}
a{color:inherit}
sub{font-size:.68em;line-height:0}
sup{font-size:.55em;line-height:0;vertical-align:super;font-weight:500;margin-left:.08em}
sup a{text-decoration:none;color:inherit;opacity:.75}
:focus-visible{outline:3px solid var(--cyan);outline-offset:3px;border-radius:6px}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--pad)}
.narrow{max-width:860px}
.center{text-align:center;margin-left:auto;margin-right:auto}
.skip{position:absolute;left:-999px;top:0;background:#fff;color:#000;padding:10px 14px;z-index:200;border-radius:8px}
.skip:focus{left:12px;top:12px}
[hidden]{display:none!important}

/* type */
h1,h2,h3,p{margin:0}
h1{font-size:clamp(2.5rem,6.2vw,5.25rem);line-height:1.04;font-weight:650;letter-spacing:-.034em}
h2{font-size:clamp(2rem,4.4vw,3.6rem);line-height:1.06;font-weight:650;letter-spacing:-.03em}
h3{font-size:clamp(1.5rem,2.2vw,1.85rem);line-height:1.12;font-weight:620;letter-spacing:-.02em}
.eyebrow{font-size:clamp(1.05rem,1.5vw,1.3rem);font-weight:620;letter-spacing:-.012em;margin-bottom:14px;color:var(--green-ink)}
.dark .eyebrow,.eyebrow.grad{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}
.intro{font-size:clamp(1.2rem,1.9vw,1.6rem);line-height:1.32;font-weight:500;letter-spacing:-.016em;color:var(--t2);margin-top:22px}
.dark .intro{color:var(--t2d)}
.big{font-size:clamp(1.5rem,3.1vw,2.6rem);line-height:1.2;font-weight:620;letter-spacing:-.025em;color:#8A9AA3}
.big b{color:var(--s900);font-weight:620}
.dark .big{color:#6F838E}.dark .big b{color:#F2F6F7}
.cap{font-size:.92rem;line-height:1.45;color:var(--t2)}
.dark .cap{color:var(--t2d)}
.num{font-variant-numeric:tabular-nums}

/* surfaces */
section{position:relative}
.dark{background:var(--black);color:#F2F6F7}
.mist{background:var(--mist)}
.sec{padding:clamp(84px,11vw,150px) 0}
.head{max-width:900px;margin:0 auto clamp(44px,6vw,80px);text-align:center}
.head.left{text-align:left;margin-left:0}

/* nav */
.nav{position:sticky;top:0;z-index:100;height:var(--nav);margin-bottom:calc(-1 * var(--nav));background:rgba(5,9,12,.72);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(255,255,255,.08);color:#fff}
.nav .wrap{display:flex;align-items:center;height:100%;gap:30px}
.logo{display:inline-flex;flex-direction:column;line-height:1;text-decoration:none}
.logo b{font-family:'Anton',Impact,sans-serif;font-weight:400;font-size:1.28rem;letter-spacing:.01em}
.logo .g{color:var(--green)}.logo .s{color:var(--cyan)}
.logo small{font-size:.36rem;letter-spacing:.48em;color:#9AA9B1;margin-top:2px;padding-left:.15em;font-weight:500}
.nav ul{display:flex;gap:30px;list-style:none;margin:0 auto;padding:0}
.nav ul a{font-size:.8rem;text-decoration:none;color:rgba(255,255,255,.8);letter-spacing:-.005em;padding:6px 0;transition:color .25s}
.nav ul a:hover,.nav ul a[aria-current]{color:#fff}
.pill{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 28px;border-radius:980px;background:var(--green);color:var(--s900);font-weight:600;font-size:1.06rem;letter-spacing:-.012em;text-decoration:none;border:0;cursor:pointer;transition:transform .35s var(--ease),background .25s}
.pill:hover{background:#45D646;transform:scale(1.03)}
.pill.sm{min-height:32px;padding:0 15px;font-size:.78rem}
.pill.ghost{background:transparent;box-shadow:inset 0 0 0 1.5px currentColor;color:inherit}
.more{display:inline-flex;align-items:center;gap:7px;font-size:1.12rem;font-weight:500;color:var(--cyan-ink);text-decoration:none;letter-spacing:-.012em}
.dark .more,.tile.d .more{color:var(--cyan)}
.more svg{width:7px;height:12px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s var(--ease)}
.more:hover svg{transform:translateX(4px)}
.more:hover{text-decoration:underline;text-underline-offset:.2em}
.actions{display:flex;flex-wrap:wrap;gap:16px 30px;align-items:center;justify-content:center;margin-top:36px}
.menu{display:none;margin-left:auto;background:none;border:0;color:#fff;font:inherit;font-size:.85rem;font-weight:500;min-height:44px;padding:0 4px;cursor:pointer}
.protobar{background:#0F1A21;color:#9AA9B1;font-size:.72rem;text-align:center;padding:6px 12px;letter-spacing:0}

/* hero */
.hero{padding:calc(var(--nav) + clamp(64px,9vw,120px)) 0 0;text-align:center}
.hero h1{max-width:15em;margin:0 auto}
.hero .intro{max-width:30em;margin-left:auto;margin-right:auto}

/* scroll story */
.scrolly{height:360vh}
.sticky{position:sticky;top:var(--nav);height:calc(100vh - var(--nav));display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}
.stage{position:relative;width:min(1320px,100%);padding:0 var(--pad)}
.stage svg{width:100%;height:auto;max-height:calc(100vh - var(--nav) - 190px)}
.stage::after{content:"";position:absolute;left:0;right:0;bottom:0;height:16%;pointer-events:none;background:linear-gradient(180deg,transparent,var(--black))}
.mlab{font-family:var(--font);font-size:19px;font-weight:620;fill:#F2F6F7;letter-spacing:-.01em}
.mlab2{font-family:var(--font);font-size:14.5px;fill:#8FA3AD}
.caps{list-style:none;margin:0;padding:0 var(--pad);position:relative;width:100%;max-width:900px;height:118px;text-align:center}
.caps li{position:absolute;left:0;right:0;top:0;opacity:0;transform:translateY(18px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.caps li.on{opacity:1;transform:none}
.caps .k{display:block;font-size:.95rem;font-weight:600;color:var(--t2d);margin-bottom:6px}
.caps .h{display:block;font-size:clamp(1.5rem,3vw,2.4rem);font-weight:640;letter-spacing:-.028em;line-height:1.12;color:#F2F6F7}
.dots{display:flex;gap:9px;justify-content:center;margin-top:6px}
.dots i{width:7px;height:7px;border-radius:50%;background:#2A3A44;transition:background .4s,transform .4s}
.dots i.on{background:#F2F6F7;transform:scale(1.25)}
.pulse{transform-box:fill-box;transform-origin:center;animation:pulse 2.4s ease-out infinite}
@keyframes pulse{0%{transform:scale(.6);opacity:.9}100%{transform:scale(2.6);opacity:0}}

/* manifesto */
.manifesto{padding:clamp(90px,12vw,170px) 0}

/* bento */
.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:20px}
.tile{position:relative;overflow:hidden;border-radius:var(--r-tile);background:var(--white);padding:40px 40px 0;min-height:440px;display:flex;flex-direction:column}
.tile.d{background:var(--tile-d);color:#F2F6F7}
.tile.g{background:linear-gradient(135deg,#32CC33,#0EC1F5);color:var(--s900)}
.tile h3{max-width:13em}
.tile .cap{margin-top:12px;max-width:27em}
.tile.g .cap{color:#0F2A1A}
.tile .art{margin-top:auto;padding-top:22px;display:flex;justify-content:center;align-items:flex-end}
.tile .art svg{width:100%;height:auto}
.c7{grid-column:span 7}.c5{grid-column:span 5}.c4{grid-column:span 4}.c12{grid-column:span 12}
.huge{font-size:clamp(4.2rem,9.5vw,8.2rem);line-height:.95;font-weight:680;letter-spacing:-.055em;margin-bottom:10px}
.huge small{font-size:.34em;letter-spacing:-.02em;font-weight:620;margin-left:.12em;color:var(--t2)}
.t1{flex-direction:row;padding:0;min-height:460px}
.t1 .txt{padding:44px 0 44px 44px;flex:1 1 52%;display:flex;flex-direction:column;justify-content:center}
.t1 .art{flex:1 1 48%;margin:0;padding:24px 20px 0 0;align-items:center}
.t6{flex-direction:row;align-items:center;padding:0 0 0 56px;min-height:400px}
.t6 .txt{flex:1 1 55%;padding:56px 0}
.t6 .art{flex:1 1 45%;margin:0;padding:40px 40px 0;align-self:flex-end}
.t6 .more{margin-top:26px}

/* blend */
.blend .head{margin-bottom:40px}
.seg{display:inline-flex;padding:4px;border-radius:980px;background:#151F26;border:1px solid #22313A;margin:0 auto 18px}
.seg button{appearance:none;border:0;background:transparent;color:#C5D1D6;font:inherit;font-size:.98rem;font-weight:550;padding:0 24px;min-height:44px;border-radius:980px;cursor:pointer;transition:background .35s var(--ease),color .35s}
.seg button[aria-pressed="true"]{background:#F2F6F7;color:var(--s900)}
.mixwrap{max-width:720px;margin:0 auto}
.mix{display:flex;height:10px;border-radius:980px;overflow:hidden;background:#151F26;gap:3px}
.mix i{display:block;height:100%;border-radius:980px;transition:width .9s var(--ease)}
.mix .sc{background:#9FB1BA}.mix .gi{background:var(--green)}
.mixlab{display:flex;justify-content:space-between;font-size:.9rem;color:var(--t2d);margin-top:12px}
.chip{display:inline-block;font-size:.7rem;font-weight:600;padding:3px 9px;border-radius:980px;border:1px solid #34454F;color:#9FB1BA;margin-left:8px;vertical-align:middle}
.furnace{max-width:1180px;margin:10px auto 0}
.furnace svg{width:100%;height:auto}
.out{max-width:720px;margin:6px auto 0;text-align:center;font-size:1.12rem;color:#C5D1D6;min-height:3.2em}
.out b{color:#fff;font-weight:600}
.flab{font-family:var(--font);fill:#F2F6F7;font-weight:600;letter-spacing:-.01em}
.flab2{font-family:var(--font);fill:#8FA3AD}

/* steel */
.cols3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.prod{text-decoration:none;display:flex;flex-direction:column}
.prod .pic{background:var(--mist);border-radius:var(--r-tile);height:340px;display:flex;align-items:center;justify-content:center;padding:44px;transition:transform .6s var(--ease)}
.prod:hover .pic{transform:scale(1.015)}
.prod .pic svg{height:100%;width:auto}
.prod h3{margin-top:28px}
.prod .tag{font-size:1.12rem;color:var(--t2);margin-top:6px;font-weight:500}
.specs{list-style:none;margin:22px 0 0;padding:0;font-size:.92rem}
.specs li{display:flex;justify-content:space-between;gap:16px;padding:11px 0;border-top:1px solid var(--hair)}
.specs li span:first-child{color:var(--t2)}
.specs li span:last-child{font-weight:550;text-align:right}
.prod .more{margin-top:20px;font-size:1.02rem}

/* carbon */
.split{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(36px,6vw,90px);align-items:center}
.split p+p{margin-top:16px}
.chart{background:var(--white);border-radius:var(--r-tile);padding:40px 44px 32px}
.chart h3{font-size:1.18rem;letter-spacing:-.014em}
.bars{margin-top:30px;display:grid;gap:22px}
.bar .l{display:flex;justify-content:space-between;font-size:.92rem;margin-bottom:8px}
.bar .l b{font-weight:600}
.bar .track{height:12px;border-radius:980px;background:#EEF2F2;overflow:hidden}
.bar .fill{display:block;height:100%;border-radius:980px;background:#B7C4CA;width:var(--w);transform-origin:left;transition:transform 1.3s var(--ease)}
.js .bar .fill{transform:scaleX(0)}
.js .in .bar .fill,.js .bar.in .fill{transform:none}
.bar.ours .fill{background:repeating-linear-gradient(135deg,rgba(50,204,51,.55) 0 6px,rgba(14,193,245,.35) 6px 12px)}
.bar.ours .l b{color:var(--green-ink)}
.fn{font-size:.74rem;line-height:1.5;color:var(--t2);margin-top:26px;padding-top:16px;border-top:1px solid var(--hair)}

/* sovereign */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:10px}
.stat{border-top:1px solid var(--hair-d);padding-top:26px}
.stat .v{white-space:nowrap;font-size:clamp(3rem,5.4vw,4.9rem);line-height:1;font-weight:680;letter-spacing:-.05em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block;padding-right:.06em}
.stat .v small{font-size:.42em;letter-spacing:-.02em}
.stat p{margin-top:14px;color:#C5D1D6;font-size:1.05rem;max-width:20em}

/* router + insights */
.cards4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.go{background:var(--mist);border-radius:var(--r-tile);padding:32px 30px 30px;text-decoration:none;display:flex;flex-direction:column;min-height:270px;transition:transform .5s var(--ease),background .3s}
.go:hover{transform:translateY(-6px);background:#E6ECE9}
.go svg.ic{width:38px;height:38px;stroke:var(--s900);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;margin-bottom:auto}
.go h3{font-size:1.4rem;margin-top:30px}
.go p{font-size:.95rem;color:var(--t2);margin-top:8px}
.ins{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.art-card{background:var(--white);border-radius:var(--r-tile);overflow:hidden;text-decoration:none;display:flex;flex-direction:column;transition:transform .5s var(--ease)}
.art-card:hover{transform:translateY(-6px)}
.art-card .cover{height:220px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.art-card .cover svg{width:100%;height:100%}
.art-card .b{padding:26px 30px 32px}
.art-card .k{font-size:.8rem;font-weight:600;color:var(--t2)}
.art-card h3{font-size:1.32rem;margin-top:8px}

/* closing + footer */
.closing{padding:clamp(100px,13vw,180px) 0;text-align:center}
.closing h2{font-size:clamp(3rem,8vw,7rem);letter-spacing:-.045em}
footer{background:var(--mist);color:var(--t2);font-size:.76rem;line-height:1.55;padding:34px 0 40px}
footer ol{margin:0;padding:0 0 22px 1.3em;border-bottom:1px solid var(--hair)}
footer ol li{margin-bottom:5px}
footer .cols{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:26px 0;border-bottom:1px solid var(--hair)}
footer h4{margin:0 0 9px;font-size:.76rem;color:var(--s900);font-weight:600}
footer ul{list-style:none;margin:0;padding:0;display:grid;gap:7px}
footer a{text-decoration:none}footer a:hover{text-decoration:underline}
footer .legal{padding-top:18px}

/* corridor page */
#corridor{padding-top:var(--nav);background:var(--black)}
#corridor>section:not(.dark){background:var(--white)}#corridor>section.mist{background:var(--mist)}
.subnav{position:sticky;top:var(--nav);z-index:90;background:rgba(255,255,255,.82);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(22,37,47,.1)}
.subnav .wrap{display:flex;align-items:center;gap:22px;height:52px}
.subnav b{font-size:1.05rem;font-weight:620;letter-spacing:-.015em;white-space:nowrap}
.subnav ul{display:flex;gap:22px;list-style:none;margin:0 0 0 auto;padding:0;overflow-x:auto;scrollbar-width:none}
.subnav ul::-webkit-scrollbar{display:none}
.subnav a{font-size:.78rem;text-decoration:none;color:var(--t2);white-space:nowrap;padding:6px 0;transition:color .25s}
.subnav a.on,.subnav a:hover{color:var(--s900)}
.subnav .prog{position:absolute;left:0;bottom:-1px;height:2px;width:100%;background:var(--grad);transform-origin:left;transform:scaleX(0)}
.chero{padding:clamp(70px,9vw,120px) 0 0;text-align:center}
.chero h1{max-width:13em;margin:0 auto}
.chero .stage{margin:40px auto 0}
.scene{padding:clamp(84px,10vw,140px) 0}
.scene .head{margin-bottom:clamp(36px,5vw,64px)}
.scene .k{font-size:.95rem;font-weight:600;color:var(--t2);margin-bottom:14px}
.dark .k{color:var(--t2d)}
.scene .big{margin-top:24px;max-width:24em;margin-left:auto;margin-right:auto;font-size:clamp(1.3rem,2.3vw,1.9rem)}
.panel{border-radius:var(--r-panel);overflow:hidden;background:var(--mist)}
.mist .panel{background:var(--white)}
.panel.d{background:var(--ink)}
.panel svg{width:100%;height:auto}
.dark .panel{background:transparent;border-radius:0}
.gets{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.gets div{border-top:1px solid var(--hair-d);padding-top:22px}
.gets h3{font-size:1.4rem}
.gets p{font-size:.98rem;color:var(--t2d);margin-top:10px}

/* reveal */
.js [data-r]{opacity:0;transform:translateY(30px);transition:opacity 1s var(--ease) var(--d,0s),transform 1s var(--ease) var(--d,0s)}
.js [data-r].in{opacity:1;transform:none}

@media (max-width:1000px){
  .nav ul{display:none}.nav .pill{display:none}.menu{display:block}
  .nav ul.open{display:flex;flex-direction:column;gap:0;position:absolute;left:0;right:0;top:var(--nav);background:#05090C;padding:10px var(--pad) 28px;margin:0;height:calc(100vh - var(--nav));overflow:auto}
  .nav ul.open a{display:block;font-size:1.7rem;font-weight:620;letter-spacing:-.025em;color:#F2F6F7;padding:13px 0;border-bottom:1px solid #1C2830}
  .nav ul.open .m{margin-top:24px}.nav ul.open .m a{border:0;display:inline-flex;font-size:1.06rem;color:var(--s900);padding:0 28px}
  .c7,.c5,.c4{grid-column:span 12}
  .t1,.t6{flex-direction:column;padding:0}
  .t1 .txt,.t6 .txt{padding:36px 30px 0}.t1 .art{padding:10px 20px 0}.t6 .art{padding:24px 30px 0;align-self:center}
  .tile{min-height:0;padding:36px 30px 0}
  .cols3,.ins{grid-template-columns:1fr;gap:44px}.ins{gap:20px}
  .split{grid-template-columns:minmax(0,1fr)}
  .stats,.gets{grid-template-columns:1fr;gap:34px}
  .cards4{grid-template-columns:1fr 1fr}
  footer .cols{grid-template-columns:1fr 1fr}
  .subnav b{display:none}.subnav ul{margin-left:0}
}
.nav ul .m{display:none}
@media (max-width:1000px){.nav ul.open .m{display:block}}
@media (max-width:640px){
  :root{--pad:20px;--r-tile:24px;--r-panel:26px}
  body{font-size:17px}
  .cards4{grid-template-columns:1fr}.go{min-height:0}.go svg.ic{margin-bottom:26px}
  .mlab,.mlab2{display:none}
  .prod .pic{height:270px}
  .chart{padding:30px 24px 26px}
  .seg button{padding:0 17px;font-size:.92rem}
  .actions{flex-direction:column;gap:18px}
  .caps{height:132px}
  .stage svg{max-height:none}
}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .js [data-r]{opacity:1;transform:none;transition:none}
  .js .bar .fill{transform:none;transition:none}
  .scrolly{height:auto}.sticky{position:static;height:auto;padding:30px 0 90px}
  .caps{height:auto;max-width:var(--wrap);display:grid;grid-template-columns:repeat(5,1fr);gap:22px;margin-top:26px;text-align:left}
  .caps li{position:static;opacity:1;transform:none;border-top:1px solid var(--hair-d);padding-top:16px}
  .caps .h{font-size:1.18rem;letter-spacing:-.015em}
  .dots{display:none}.pulse{animation:none;opacity:0}
  .mix i,.pill,.go,.art-card,.prod .pic{transition:none}
}
@media (prefers-reduced-motion:reduce) and (max-width:1000px){.caps{grid-template-columns:1fr;gap:0}.caps li{padding:14px 0}}

.art-card .cover.trio{gap:26px;padding:34px 30px}
.art-card .cover.trio svg{width:auto;height:100%;flex:0 1 auto}
.art-card .cover.trio .dim,.art-card .cover.trio .dimt{display:none}
@media (max-width:640px){br.dk{display:none}}

/* v3 */
.caps{height:136px;max-width:1000px}
.caps li{display:flex;align-items:center;justify-content:center;gap:24px;text-align:left}
.caps .tx{display:block}
.lens{flex:0 0 104px;width:104px;height:104px;border-radius:50%;background:#0B1217;border:1px solid rgba(255,255,255,.16);display:flex;align-items:center;justify-content:center;overflow:hidden}
.lens svg{width:68%;height:68%}
.stage svg{max-height:calc(100vh - var(--nav) - 215px)}
.forgedp{position:relative;margin-bottom:clamp(44px,6vw,80px)}
.forgedp .over{position:absolute;left:clamp(24px,4.4vw,60px);bottom:clamp(22px,4vw,54px);color:#F2F6F7;max-width:24em}
.forgedp .over h3{font-size:clamp(1.7rem,3.8vw,3.1rem);letter-spacing:-.032em;line-height:1.04}
.forgedp .over p{color:#8FA3AD;font-size:1.05rem;margin-top:10px}
.skyline{max-width:1040px;margin:clamp(50px,7vw,96px) auto 0}
.skyline svg{width:100%;height:auto}
@media (max-width:640px){
  .caps{height:200px}
  .caps li{flex-direction:column;text-align:center;gap:12px}
  .lens{flex-basis:76px;width:76px;height:76px}
  .stage svg{max-height:none}
  .forgedp .over{position:static;padding:20px 22px 26px}
}
@media (prefers-reduced-motion:reduce){
  .caps{height:auto}
  .caps li{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:14px;text-align:left}
  .lens{flex-basis:72px;width:72px;height:72px}
}

/* ===== v4 cinematic ===== */
.film::after{content:"";position:absolute;inset:0;pointer-events:none;z-index:3;opacity:.06;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='240' height='240' filter='url(%23n)'/%3E%3C/svg%3E");background-size:240px 240px}
.hero{position:relative;padding-bottom:0}
.hero::before{content:"";position:absolute;left:50%;top:-10%;width:120vw;height:60%;transform:translateX(-50%);background:radial-gradient(ellipse at center,rgba(14,193,245,.13),rgba(50,204,51,.05) 40%,transparent 62%);pointer-events:none}
.hero .wrap{position:relative;z-index:1}
.hero h1{font-size:clamp(3rem,8.4vw,7.4rem);letter-spacing:-.045em;line-height:.98;max-width:none}
.hero .cine{margin-top:clamp(40px,6vw,72px)}
h2{font-size:clamp(2.2rem,5vw,4.2rem);letter-spacing:-.034em}
.cine{position:relative;overflow:hidden;border-radius:var(--r-panel);background:#05090C;aspect-ratio:21/10;color:#F2F6F7}
.cine.fur{aspect-ratio:1200/620}
.cine>svg{position:absolute;inset:0;width:100%;height:100%;display:block}
.cine::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(180deg,rgba(5,9,12,0) 48%,rgba(5,9,12,.66) 100%)}
.cine .over{position:absolute;left:clamp(24px,4.4vw,60px);right:clamp(24px,4.4vw,60px);bottom:clamp(22px,4vw,54px);z-index:2;max-width:26em}
.cine .over h3{font-size:clamp(1.7rem,3.8vw,3.1rem);letter-spacing:-.032em;line-height:1.04}
.cine .over p{color:#C5D1D6;font-size:1.05rem;margin-top:10px}
.slate{position:absolute;left:clamp(24px,4.4vw,60px);top:clamp(22px,4vw,44px);z-index:2;display:inline-flex;align-items:center;gap:10px;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:#C5D1D6;margin:0}
.slate i{width:8px;height:8px;border-radius:50%;background:var(--grad)}
.cine.full,.dark .cine.full{border-radius:0}
.scene .k,.caps .k{display:inline-flex;align-items:center;gap:12px;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--t2);margin-bottom:16px}
.scene .k .n,.caps .k .n{font-variant-numeric:tabular-nums;color:var(--green-ink)}
.dark .k,.caps .k{color:var(--t2d)}
.dark .k .n,.caps .k .n{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.caps .k{margin-bottom:8px}
.cam{transform-origin:23.8% 8.8%;will-change:transform,opacity}
.mlab,.mlab2{transition:opacity .5s var(--ease)}
.zoomed .mlab,.zoomed .mlab2{opacity:0}
.tile.d .huge small{color:var(--t2d)}
.tile.d .cap{color:var(--t2d)}
.tile .art.sm svg{max-width:280px}
.ledger{max-width:1000px;margin:clamp(48px,7vw,84px) auto 0;border-top:1px solid #F2F6F7}
.ledger>div{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding:22px 0;border-bottom:1px solid var(--hair-d)}
.ledger .lh{padding:14px 0;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--t2d)}
.ledger .lr span:first-child{color:#8FA3AD;font-size:1.05rem}
.ledger .lr span:last-child{color:#F2F6F7;font-size:1.14rem;font-weight:550;letter-spacing:-.012em}
.gets{grid-template-columns:repeat(3,1fr);gap:28px 20px}
.closing h2{font-size:clamp(2.6rem,7vw,6.2rem)}
.js .tw{animation:tw 2.8s ease-in-out infinite alternate}
.js .br{animation:br 4.6s ease-in-out infinite alternate}
@keyframes tw{from{opacity:.12}to{opacity:.95}}
@keyframes br{from{opacity:.4}to{opacity:.7}}
@media (max-width:1000px){.gets{grid-template-columns:1fr 1fr}}
@media (max-width:640px){
  .cine,.cine.fur{aspect-ratio:auto}.cine>svg{position:static;height:auto}.cine::before{display:none}
  .cine .over{position:static;padding:18px 22px 26px}.slate{position:static;margin:14px 22px 0}
  .ledger>div{grid-template-columns:1fr;gap:8px}.ledger .lh span:last-child{display:none}
  .gets{grid-template-columns:1fr}
  .hero .cine{margin-top:36px}
}
@media (prefers-reduced-motion:reduce){.tw,.br{animation:none!important}.cam{transform:none!important;opacity:1!important}}

.cine.fur .slate{top:auto;bottom:clamp(22px,4vw,44px)}
.t1 .huge small{white-space:nowrap}
@media (max-width:640px){.cine.fur .slate{margin:14px 22px 0}}

/* ===== v5 ===== */
.gets.three{grid-template-columns:repeat(3,1fr);margin-top:clamp(36px,5vw,60px)}
.tile .art.trio{display:flex;gap:16px;align-items:flex-end;justify-content:center;padding:14px 8px 26px}
.tile .art.trio svg{width:29%;max-height:150px}
.builds{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.builds>div{background:#fff;border-radius:var(--r-tile);padding:30px 28px 28px;box-shadow:0 1px 0 rgba(22,37,47,.04)}
.builds .ic{width:44px;height:44px;stroke:var(--green-ink);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-bottom:18px;display:block}
.builds h3{font-size:1.3rem;letter-spacing:-.022em;line-height:1.15}
.builds p{color:var(--t2);margin-top:9px;font-size:1rem;line-height:1.45}
.fn.center{text-align:center;max-width:44em;margin-left:auto;margin-right:auto}
.bar.ours .fill{background:var(--grad);opacity:1}
.bar.ours .l b:last-child{color:var(--green-ink)}
#iron .panel{padding:0}
@media (max-width:1000px){.builds{grid-template-columns:1fr 1fr}.gets.three{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.builds{grid-template-columns:1fr}.gets.three{grid-template-columns:1fr}.hero h1{font-size:clamp(2.6rem,11vw,3.4rem)}}

/* ===== v6 ===== */
.steps{list-style:none;margin:clamp(40px,6vw,64px) auto 0;max-width:1000px;display:grid;grid-template-columns:repeat(4,1fr);position:relative;padding:0}
.steps::before{content:"";position:absolute;left:12.5%;right:12.5%;top:11px;height:2px;background:#D6DFE2}
.steps::after{content:"";position:absolute;left:12.5%;width:13%;top:11px;height:2px;background:var(--grad)}
.steps li{position:relative;text-align:center;padding-top:44px}
.steps li i{position:absolute;left:50%;top:0;width:24px;height:24px;margin-left:-12px;border-radius:50%;background:#fff;border:2px solid #C9D4D8;z-index:1}
.steps li.now i{background:var(--grad);border-color:transparent;box-shadow:0 0 0 7px rgba(50,204,51,.16)}
.steps li b{display:block;font-size:1.12rem;letter-spacing:-.015em;color:var(--t1)}
.steps li span{display:block;color:var(--t2);font-size:.92rem;margin-top:4px}
.steps li.now span{color:var(--green-ink);font-weight:600}
@media (max-width:640px){.steps{grid-template-columns:1fr;gap:20px}.steps::before,.steps::after{display:none}.steps li{text-align:left;padding:0 0 0 38px}.steps li i{left:0;margin-left:0;top:1px}}

.hero h1{font-size:clamp(3rem,7vw,6.2rem)}
@media (max-width:640px){.hero h1{font-size:clamp(2.5rem,11vw,3.3rem)}}

/* ===== v7 five pages ===== */
.pcards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.pcard{display:block;background:#fff;border:1px solid var(--hair);border-radius:var(--r-tile);overflow:hidden;color:inherit;text-decoration:none;transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.pcard:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(22,37,47,.10)}
.pcard .cover{aspect-ratio:4/3;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:0}
.pcard .cover>svg{width:80%;height:auto;max-height:84%}
.pcard .cover.trio{gap:10px;padding:18px}.pcard .cover.trio>svg{width:27%}
.pcard .cover.uk>svg{width:auto;height:88%}
.pcard .b{padding:20px 22px 24px}
.pcard .k{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:var(--green-ink);display:block;margin-bottom:8px}
.pcard h3{font-size:1.35rem;letter-spacing:-.024em;line-height:1.1}
.pcard p{color:var(--t2);font-size:.95rem;line-height:1.45;margin-top:8px}
.chero{padding-bottom:clamp(48px,6vw,84px)}
.chero .cine,.chero .panel{margin-top:clamp(36px,5vw,64px);text-align:left}
.chero .gets{text-align:left}
.mist .gets,.mist .gets>div{border-color:var(--hair)}.mist .gets h3{color:var(--t1)}.mist .gets p{color:var(--t2)}
.next{padding:clamp(40px,6vw,72px) 0;text-align:center;background:var(--white);border-top:1px solid var(--hair)}
.next a{font-size:clamp(1.4rem,2.6vw,2rem);font-weight:650;letter-spacing:-.025em;color:var(--t1);text-decoration:none}
.next a span{color:var(--t2);font-weight:600;display:block;font-size:.74rem;letter-spacing:.16em;text-transform:uppercase;margin-bottom:8px}
#data .bento{grid-template-columns:1fr}
#range{padding-top:clamp(40px,5vw,64px)}
.k .n{font-variant-numeric:tabular-nums}
.split .k{margin-bottom:14px}
@media (max-width:1000px){.pcards{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.pcards{grid-template-columns:1fr}}

/* ===== v8 ===== */
.hero h1 .g{display:block;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;padding-bottom:.08em}
.tag{display:inline-flex;align-items:center;gap:8px;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:600;color:#C5D1D6;margin-top:20px}
.tag i{width:8px;height:8px;border-radius:50%;background:var(--grad)}
.tag.center{display:flex;justify-content:center}
.head.split2{display:grid;grid-template-columns:1.15fr .85fr;gap:40px;align-items:end;text-align:left;max-width:none;margin-left:0;margin-right:0}
.head.split2 h2{max-width:none;text-align:left}
.head.split2 .aside{color:var(--t2);font-size:1.05rem;line-height:1.5;padding-bottom:8px;max-width:26em}
.dark .head.split2 .aside{color:var(--t2d)}
.shapes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;background:#fff;border-radius:var(--r-tile);padding:30px 26px 26px}
.shapes .pro svg{width:100%;height:auto;max-width:230px;display:block;margin:0 auto}
.shapes h3{font-size:1.25rem;letter-spacing:-.02em;margin-top:8px}
.shapes p{color:var(--t2);font-size:.9rem;margin-top:4px}
.apps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:18px}
.apps>div{background:#fff;border-radius:var(--r-tile);padding:26px 24px}
.apps .ic{width:40px;height:40px;stroke:var(--green-ink);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;margin-bottom:14px;display:block}
.apps h3{font-size:1.15rem;letter-spacing:-.02em}
.apps p{color:var(--t2);font-size:.95rem;line-height:1.45;margin-top:6px}
.split3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:28px;margin-top:30px;align-items:start}
.split3 .cap{font-size:1rem;line-height:1.55}
.split3 .big2{font-size:1.45rem;letter-spacing:-.022em;line-height:1.2;margin:0}
.dark .split3 .big2{color:#F2F6F7}
.trio3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.trio3>div{background:var(--mist);border-radius:var(--r-tile);padding:28px 26px}
.trio3.lined>div{background:transparent;border-top:1px solid var(--hair);border-radius:0;padding:22px 0 0}
.trio3 h3{font-size:1.25rem;letter-spacing:-.02em}
.trio3 p{color:var(--t2);margin-top:8px;line-height:1.5}
.trio3 .more{margin-top:14px;display:inline-flex}
.psel{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-bottom:36px}
.psel button{border:1px solid var(--hair);background:#fff;color:var(--t1);font:inherit;font-weight:600;font-size:1rem;padding:12px 22px;border-radius:999px;cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease)}
.psel button[aria-selected=true]{background:var(--t1);color:#fff;border-color:var(--t1)}
.pv{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.pv[hidden]{display:none}
.pv .pic{background:var(--mist);border-radius:var(--r-panel);padding:36px}
.pv .pic svg{width:100%;height:auto;display:block}
.pv .ptx h2{text-align:left;margin:8px 0 12px}
.pv .ptx .big{text-align:left;margin:0 0 22px;font-size:1.2rem;max-width:none}
.pv .ptx .specs{margin:0 0 24px}
.pv .ptx .k{text-align:left}
.narrow2{max-width:880px}
.faqi{border-top:1px solid var(--hair);padding:4px 0}
.faqi summary{cursor:pointer;font-weight:600;font-size:1.15rem;letter-spacing:-.015em;padding:16px 0;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}
.faqi summary::-webkit-details-marker{display:none}
.faqi summary::after{content:"+";font-weight:500;color:var(--green-ink);font-size:1.5rem;line-height:1}
.faqi[open] summary::after{content:"\2212"}
.faqi p{color:var(--t2);padding:0 0 18px;max-width:42em;line-height:1.55}
.enq .lbl{font-weight:600;margin-bottom:12px}
.enq .seg.wide{justify-content:flex-start;flex-wrap:wrap;margin:0 0 28px}
.enq .fields{display:grid;grid-template-columns:1fr 1fr;gap:18px 22px}
.enq label{display:flex;flex-direction:column;font-weight:600;font-size:.95rem;gap:6px}
.enq label span{font-weight:400;color:var(--t2);font-size:.85rem}
.enq input,.enq textarea{font:inherit;padding:12px 14px;border:1px solid var(--hair);border-radius:12px;background:#fff;color:var(--t1)}
.enq .full{grid-column:1/-1}
.enq .fn{margin:18px 0;text-align:left}
.enq .pill{border:0;cursor:pointer;font:inherit}
.tile.d.t6 .txt h3{font-size:clamp(1.5rem,2.6vw,2.1rem)}
.bar.ours .fill.hatch{background:repeating-linear-gradient(135deg,#C9D4D8 0 6px,transparent 6px 12px);opacity:1}
.split .tile.t6{min-height:auto}
.closing .eyebrow{margin-bottom:14px}
@media (max-width:1000px){.shapes{grid-template-columns:1fr 1fr}.apps,.trio3,.split3{grid-template-columns:1fr}.pv{grid-template-columns:1fr;gap:28px}.head.split2{grid-template-columns:1fr;gap:12px}}
@media (max-width:640px){.shapes{grid-template-columns:1fr 1fr;padding:18px 14px;gap:12px}.enq .fields{grid-template-columns:1fr}.hero h1{font-size:clamp(2.3rem,10vw,3rem)}}

:root{--t1:#16252F}
.sec .head .k,.split .k,.pv .k,.center .k{display:inline-flex;align-items:center;gap:12px;font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--t2);margin-bottom:14px}
.sec .head .k .n,.split .k .n,.pv .k .n,.center .k .n{color:var(--green-ink)}
.dark .head .k,.dark .center .k{color:var(--t2d)}.dark .head .k .n,.dark .center .k .n{background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .cine .over{max-width:40em}.hero .cine .over h3{font-size:clamp(1.5rem,3vw,2.5rem)}

/* ===== v9 ===== */
.shapes .ltr{display:block;font-size:2rem;font-weight:700;letter-spacing:-.04em;color:var(--green-ink);line-height:1;margin:0 0 -14px 4px}
.cue{text-align:center;margin:26px 0 0}.cue a{color:#8FA3AD;font-size:.92rem;text-decoration:none;letter-spacing:.01em}.cue a span{display:inline-block;margin-left:6px}
footer .ftag{font-weight:650;font-size:1.15rem;letter-spacing:-.015em;color:var(--t1);margin:0 0 22px}

/* ===== v10 ===== */
.two{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.two>div{background:#fff;border-radius:var(--r-tile);padding:28px 26px 18px}
.two h3{font-size:1.2rem;letter-spacing:-.02em;margin-bottom:10px}
.two ul{list-style:none;margin:0;padding:0}
.two li{padding:10px 0;border-top:1px solid var(--hair);color:var(--t2);font-size:1rem;line-height:1.45}
.two li:first-child{border-top:0}
@media (max-width:760px){.two{grid-template-columns:1fr}}

.shapes .ltr{display:none}

/* ===== v12 UK-only ===== */
.hero h1{font-size:clamp(2.8rem,6vw,5.4rem)}
.stats.four{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.stats.four .v{font-size:clamp(2.4rem,4.2vw,3.6rem)}
.flow{background:#0B1217;border-radius:var(--r-panel);padding:clamp(22px,3vw,36px);color:#F2F6F7}
.flow .fk{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:650;color:#8FA3AD;margin:0 0 12px}
.flow-in{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fin{background:#15251E;border:1px solid #22453A;border-radius:16px;padding:16px 18px}
.fin.alt{background:#111A20;border-color:#22303A}
.fin b{display:block;font-size:1.05rem;letter-spacing:-.01em}
.fin span{display:block;color:#A9BAC2;font-size:.88rem;margin-top:4px;line-height:1.4}
.flow-steps{list-style:none;margin:18px 0;padding:24px;border:1px solid #22303A;border-radius:20px;display:grid;grid-template-columns:repeat(5,1fr);gap:26px}
.flow-steps li{position:relative}
.flow-steps li:not(:last-child)::after{content:"";position:absolute;right:-17px;top:34px;width:8px;height:8px;border-top:2px solid #32CC33;border-right:2px solid #32CC33;transform:rotate(45deg)}
.flow-steps .n{display:block;font-size:.72rem;font-weight:650;color:#32CC33;letter-spacing:.08em}
.flow-steps b{display:block;font-size:1.12rem;margin:8px 0 6px;letter-spacing:-.015em;line-height:1.2}
.flow-steps .d{display:block;color:#A9BAC2;font-size:.88rem;line-height:1.45}
.flow-out{background:#15251E;border:1px solid #22453A;border-radius:16px;padding:16px 18px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:baseline}
.flow-out b{font-size:1.15rem}.flow-out span{color:#32CC33;font-size:.88rem}
.loop{max-width:980px;margin:clamp(16px,3vw,36px) auto 0}
.loop svg{width:100%;height:auto;display:block}
.js .loop .arcs path{stroke-dasharray:200;stroke-dashoffset:200;transition:stroke-dashoffset 1s var(--ease)}
.js .loop.in .arcs path{stroke-dashoffset:0}
.loop .arcs path:nth-of-type(2){transition-delay:.18s}.loop .arcs path:nth-of-type(3){transition-delay:.36s}.loop .arcs path:nth-of-type(4){transition-delay:.54s}.loop .arcs path:nth-of-type(5){transition-delay:.72s}
.loop-list{display:none;list-style:none;margin:20px 0 0;padding:0}
.loop-list li{position:relative;padding:0 0 22px 32px;color:#A9BAC2;line-height:1.45}
.loop-list li::before{content:"";position:absolute;left:4px;top:5px;width:10px;height:10px;border-radius:50%;border:2px solid #32CC33}
.loop-list li::after{content:"";position:absolute;left:10px;top:21px;bottom:2px;width:2px;background:#22303A}
.loop-list li:last-child::after{display:none}
.loop-list b{display:block;color:#F2F6F7;font-size:1.08rem;margin-bottom:2px}
.stepsd{list-style:none;margin:12px 0 0;padding:0;border-top:1px solid var(--hair)}
.stepsd li{display:grid;grid-template-columns:64px 280px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--hair);align-items:baseline}
.stepsd .n{font-weight:650;color:var(--green-ink);font-size:.85rem;letter-spacing:.08em}
.stepsd b{font-size:1.25rem;letter-spacing:-.02em}
.stepsd span:last-child{color:var(--t2);line-height:1.5}
.sec:not(.mist):not(.dark) .two>div,.sec:not(.mist):not(.dark) .builds>div{background:var(--mist)}
@media (max-width:1000px){.stats.four{grid-template-columns:1fr 1fr}}
@media (max-width:900px){.flow-in{grid-template-columns:1fr}.flow-steps{grid-template-columns:1fr;gap:18px}.flow-steps li{padding-left:20px;border-left:2px solid #22303A}.flow-steps li::after{display:none}.stepsd li{grid-template-columns:1fr;gap:6px}}
@media (max-width:640px){.stats.four{grid-template-columns:1fr}.loop svg{display:none}.loop-list{display:block}.hero h1{font-size:clamp(2.3rem,10vw,3rem)}}
@media (prefers-reduced-motion:reduce){.js .loop .arcs path{stroke-dasharray:none;stroke-dashoffset:0;transition:none}}

/* ===== v14 ===== */
.hero h1.tri span{display:block}
.head.left .intro{margin-left:0;text-align:left}
.fam{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.fam>article{background:#fff;border-radius:var(--r-tile);padding:26px 26px 22px}
.fam .pro svg{width:100%;max-width:230px;height:auto;display:block;margin:0 auto 8px}
.fam h3{font-size:1.4rem;letter-spacing:-.022em}
.fam p{color:var(--t2);margin-top:6px;line-height:1.45}
.fam ul{list-style:none;margin:16px 0 0;padding:0;border-top:1px solid var(--hair)}
.fam li{padding:9px 0;border-bottom:1px solid var(--hair);font-size:.95rem;color:var(--t1)}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:stretch;margin-top:clamp(28px,4vw,48px)}
.passport{position:relative;background:linear-gradient(160deg,#101B22,#05090C 70%);color:#F2F6F7;border-radius:var(--r-tile);padding:26px 28px 28px;border:1px solid #1C2A33;box-shadow:0 30px 60px rgba(5,9,12,.22);min-height:340px}
.pp-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.pp-logo b{font-weight:800;letter-spacing:-.02em;font-size:1.1rem}.pp-logo .g{color:#32CC33}.pp-logo .s{color:#0EC1F5}
.pp-k{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:#8FA3AD;font-weight:650}
.pp-id{font-size:1.9rem;font-weight:650;letter-spacing:-.01em;margin:22px 0 14px}
.pp-id small{display:block;font-size:.7rem;color:#8FA3AD;letter-spacing:.14em;text-transform:uppercase;font-weight:600;margin-top:4px}
.passport dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 20px;max-width:calc(100% - 124px)}
.passport dl>div{padding:9px 0;border-top:1px solid #1F2E38}
.passport dl .w{grid-column:1/-1}
.passport dt{font-size:.72rem;color:#8FA3AD;letter-spacing:.04em}
.passport dd{margin:2px 0 0;font-size:.98rem;font-weight:600}
.passport dd.gr{color:#32CC33}
.pp-qr{position:absolute;right:28px;bottom:28px;width:100px}
.pp-qr svg{width:100%;height:auto;display:block}
.split .passport{align-self:center}
.tile .art.sm svg{max-width:220px;margin:0 auto;display:block}
@media (max-width:900px){.fam{grid-template-columns:1fr}.duo{grid-template-columns:1fr}}
@media (max-width:560px){.passport dl{grid-template-columns:1fr;max-width:none}.pp-qr{position:static;width:92px;margin-top:16px}.passport{min-height:0}}

#h-case .head h2{max-width:24em}

/* ===== v15 ===== */
.ev{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;margin-top:clamp(28px,4vw,48px)}
.ev>div{border-top:2px solid var(--t1);padding-top:18px}
.ev .v{font-size:clamp(2.4rem,4.2vw,3.6rem);font-weight:650;letter-spacing:-.03em;line-height:1;color:var(--t1)}
.ev .v small{font-size:.45em;font-weight:600;color:var(--t2);margin-left:3px;letter-spacing:0}
.ev p{color:var(--t2);margin-top:12px;line-height:1.5;font-size:.98rem}
.pq{margin:clamp(36px,5vw,60px) 0 0;padding:30px 34px;background:var(--mist);border-radius:var(--r-tile);font-size:clamp(1.3rem,2.2vw,1.8rem);letter-spacing:-.02em;line-height:1.3;color:var(--t1);font-weight:600}
.pq b{color:var(--green-ink)}
.pq cite{display:block;margin-top:12px;font-size:.78rem;font-style:normal;letter-spacing:.14em;text-transform:uppercase;color:var(--t2);font-weight:650}
@media (max-width:1000px){.ev{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.ev{grid-template-columns:1fr}}

/* ===== v16 cinematic ===== */
.prog{position:fixed;left:0;right:0;top:0;height:2px;z-index:200;pointer-events:none}
.prog i{display:block;height:100%;background:linear-gradient(90deg,#32CC33,#0EC1F5);transform:scaleX(var(--sp,0));transform-origin:0 50%}
[data-page].enter{animation:pagein .7s cubic-bezier(.2,.7,.2,1)}
@keyframes pagein{from{opacity:0}to{opacity:1}}
section{scroll-margin-top:calc(var(--nav) + 56px)}
.js .head[data-r] h2{transition:filter 1.2s var(--ease)}
.js .head[data-r]:not(.in) h2{filter:blur(12px)}
.cinema{position:relative;min-height:100vh;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden;background:#05090C;color:#F2F6F7;padding:calc(var(--nav) + 40px) 0 clamp(64px,10vh,120px)}
.cinema-bg{position:absolute;inset:0;transform:scale(calc(1 + var(--hp,0) * .08));transform-origin:62% 50%;will-change:transform}
.cinema-bg .kb{position:absolute;inset:-2%;animation:kb 26s ease-in-out infinite alternate}
.cinema-bg .kb svg{width:100%;height:100%;display:block}
@keyframes kb{from{transform:scale(1.03)}to{transform:scale(1.11) translate3d(-1.5%,-1%,0)}}
.shimmer{position:absolute;inset:-10%;background:radial-gradient(40% 30% at 30% 55%,rgba(245,158,11,.30),transparent 70%),radial-gradient(30% 25% at 46% 40%,rgba(255,193,77,.18),transparent 70%);mix-blend-mode:screen;filter:blur(30px);animation:shim 7s ease-in-out infinite alternate}
@keyframes shim{from{transform:translate3d(-2%,1%,0) scale(1)}to{transform:translate3d(2%,-1%,0) scale(1.08)}}
.sparks i{position:absolute;left:var(--x);bottom:var(--b);width:3px;height:3px;border-radius:50%;background:#FFD27A;box-shadow:0 0 8px 2px rgba(255,190,90,.8);opacity:0;animation:rise var(--t) linear infinite;animation-delay:var(--dl)}
@keyframes rise{0%{transform:translate3d(0,0,0);opacity:0}8%{opacity:1}100%{transform:translate3d(var(--dx),-46vh,0);opacity:0}}
.cinema-veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,9,12,.94) 0%,rgba(5,9,12,.74) 38%,rgba(5,9,12,.2) 72%,rgba(5,9,12,.06) 100%),linear-gradient(0deg,rgba(5,9,12,.88) 0%,rgba(5,9,12,0) 44%),linear-gradient(180deg,rgba(5,9,12,.72) 0%,rgba(5,9,12,0) 22%)}
.cinema-copy{position:relative;z-index:2;opacity:calc(1 - var(--hp,0) * 1.4);transform:translate3d(0,calc(var(--hp,0) * -60px),0)}
.cinema .eyebrow{text-align:left;margin:0}
.cinema h1{font-size:clamp(3rem,6.6vw,6.4rem);line-height:.98;letter-spacing:-.045em;max-width:11.5em;margin:14px 0 0;text-align:left}
.cinema h1 .g{display:block;background:linear-gradient(90deg,#32CC33,#0EC1F5 85%);-webkit-background-clip:text;background-clip:text;color:transparent}
.cinema .intro{max-width:33em;text-align:left;margin:24px 0 0;color:#C9D4D8;font-size:clamp(1.05rem,1.4vw,1.25rem)}
.cinema .actions{justify-content:flex-start}
.cinema .tag{justify-content:flex-start;text-align:left}
.cinema-note{position:absolute;right:clamp(20px,4vw,48px);bottom:24px;z-index:2;margin:0;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:rgba(242,246,247,.42)}
.cue{position:absolute;left:50%;bottom:22px;margin-left:-14px;z-index:3;width:28px;height:44px;border-radius:16px;border:1.5px solid rgba(242,246,247,.5);background:transparent;cursor:pointer;padding:0}
.cue span{position:absolute;left:50%;top:9px;width:3px;height:8px;margin-left:-1.5px;border-radius:2px;background:#F2F6F7;animation:cue 1.8s ease-in-out infinite}
@keyframes cue{0%{transform:translateY(0);opacity:1}70%{transform:translateY(14px);opacity:0}100%{opacity:0}}
.lit{position:relative;height:180vh;background:#05090C;color:#F2F6F7}
.lit-stage{position:sticky;top:0;height:100vh;height:100svh;display:flex;align-items:center}
.lit-kicker{font-size:clamp(2.6rem,6vw,5.6rem);font-weight:650;letter-spacing:-.045em;line-height:1;margin:0 0 .5em;background:linear-gradient(90deg,#F2F6F7 0%,#F2F6F7 45%,#8FA3AD 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.lit-text{font-size:clamp(1.5rem,3.1vw,2.7rem);font-weight:600;letter-spacing:-.03em;line-height:1.22;margin:0;color:#F2F6F7}
.js .lit:not(.static) .lit-text .w{opacity:.16;transition:opacity .35s ease}
.js .lit .lit-text .w.on{opacity:1}
.lit-text sup{font-size:.4em;opacity:.7}
.lit-end{margin:.9em 0 0;font-size:clamp(1.5rem,3.1vw,2.7rem);font-weight:650;letter-spacing:-.03em;background:linear-gradient(90deg,#32CC33,#0EC1F5);-webkit-background-clip:text;background-clip:text;color:transparent;transition:opacity .9s var(--ease),transform .9s var(--ease)}
.js .lit:not(.static):not(.done) .lit-end{opacity:0;transform:translateY(18px)}
.lit.static{height:auto}.lit.static .lit-stage{position:relative;height:auto;padding:clamp(90px,12vw,170px) 0}
.tour{position:relative;height:320vh;background:var(--mist)}
.tour-stage{position:sticky;top:0;height:100vh;height:100svh;display:flex;align-items:center;overflow:hidden}
.tour-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,5vw,80px);align-items:center;width:100%}
.tour-copy h2{font-size:clamp(2.4rem,4.6vw,4.2rem);letter-spacing:-.04em;line-height:1.02;margin:10px 0 16px}
.tour-copy .aside{max-width:26em;color:var(--t2);font-size:1.1rem;line-height:1.5}
.tour-copy .fn{margin-top:22px;text-align:left}
.tour-dots{list-style:none;margin:30px 0 26px;padding:0;border-left:2px solid var(--hair)}
.tour-dots li{padding:9px 0 9px 18px;margin-left:-2px;border-left:2px solid transparent;color:var(--t2);font-weight:600;transition:color .4s,border-color .4s}
.tour-dots li.on{color:var(--t1);border-left-color:#32CC33}
.tour-slides{position:relative;height:min(74vh,600px)}
.ts{position:absolute;inset:0;background:#fff;border-radius:32px;padding:clamp(24px,3vw,40px);display:flex;flex-direction:column;justify-content:flex-end;opacity:0;transform:translate3d(0,48px,0) scale(.97);transition:opacity .7s var(--ease),transform .9s var(--ease);box-shadow:0 40px 80px rgba(22,37,47,.08)}
.ts.on{opacity:1;transform:none}
.ts.past{opacity:0;transform:translate3d(0,-48px,0) scale(.97)}
.ts .pro{flex:1;display:flex;align-items:center;justify-content:center;min-height:0}
.ts .pro svg{width:min(100%,380px);height:auto;max-height:100%;transform:rotate(-10deg) scale(.86);transition:transform 1.1s var(--ease)}
.ts.on .pro svg{transform:none}
.ts h3{font-size:clamp(1.6rem,2.4vw,2.2rem);letter-spacing:-.03em;margin:0}
.ts p{color:var(--t2);margin:6px 0 0}
.ts ul{list-style:none;margin:16px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.ts li{font-size:.86rem;padding:7px 12px;border-radius:999px;background:var(--mist);color:var(--t1)}
.tour.static{height:auto}.tour.static .tour-stage{position:relative;height:auto;padding:clamp(80px,10vw,140px) 0;overflow:visible}
.tour.static .tour-grid{grid-template-columns:1fr}
.tour.static .tour-slides{height:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tour.static .ts{position:relative;opacity:1;transform:none;min-height:500px}
.tour.static .ts .pro svg{transform:none}
.tour.static .tour-dots{display:none}
.loop .orbit{transform-box:view-box;transform-origin:500px 300px;animation:orbit 16s linear infinite}
@keyframes orbit{to{transform:rotate(360deg)}}
.passport{transition:transform .5s var(--ease);will-change:transform}
.passport::after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(520px circle at var(--mx,28%) var(--my,18%),rgba(255,255,255,.11),transparent 42%)}
.passport::before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;background:linear-gradient(135deg,rgba(50,204,51,.7),rgba(14,193,245,.45) 35%,transparent 65%);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.pp-qr::after{content:"";position:absolute;left:-4px;right:-4px;height:2px;top:6%;background:linear-gradient(90deg,transparent,#32CC33,transparent);box-shadow:0 0 12px #32CC33;animation:scan 2.8s ease-in-out infinite}
@keyframes scan{0%,100%{top:6%}50%{top:90%}}
.cmp{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:clamp(28px,4vw,48px)}
.cmp-col{background:#fff;border-radius:var(--r-tile);padding:28px 26px}
.cmp-col.hl{background:linear-gradient(160deg,#101B22,#05090C 70%);color:#F2F6F7;box-shadow:0 30px 60px rgba(5,9,12,.2)}
.cmp-h h3{font-size:1.3rem;letter-spacing:-.02em;margin:14px 0 4px}
.cmp-h p{color:var(--t2);font-size:.82rem;margin:0;letter-spacing:.12em;text-transform:uppercase;font-weight:650}
.cmp-col.hl .cmp-h p{color:#32CC33}
.cmp-ic{display:inline-flex;width:44px;height:44px;border-radius:12px;align-items:center;justify-content:center;background:var(--mist)}
.cmp-col.hl .cmp-ic{background:#15251E}
.cmp dl{margin:20px 0 0}
.cmp dl>div{padding:12px 0;border-top:1px solid var(--hair)}
.cmp-col.hl dl>div{border-top-color:#1F2E38}
.cmp dt{font-size:.74rem;letter-spacing:.03em;color:var(--t2)}
.cmp-col.hl dt{color:#8FA3AD}
.cmp dd{margin:3px 0 0;font-weight:600;font-size:1rem}
.cmp dd.big{font-size:2rem;letter-spacing:-.03em;font-weight:650}
.cmp dd.gr{color:#32CC33;font-size:1.15rem}
.lnav{position:sticky;top:var(--nav);z-index:40;background:rgba(5,9,12,.74);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(255,255,255,.08)}
.lnav .wrap{display:flex;align-items:center;gap:24px;height:52px}
.lnav b{color:#F2F6F7;font-size:1.1rem;font-weight:650;letter-spacing:-.02em}
.lnav-links{margin-left:auto;display:flex;gap:22px}
.lnav-links a{color:#A9BAC2;font-size:.82rem;text-decoration:none}
.lnav-links a:hover{color:#F2F6F7}
.pill.sm2{padding:6px 14px;font-size:.78rem;min-height:0}
@media (max-width:900px){.tour.static .tour-slides{grid-template-columns:1fr}.tour.static .ts{min-height:0}.cmp{grid-template-columns:1fr}}
@media (max-width:760px){.cinema-veil{background:linear-gradient(0deg,rgba(5,9,12,.96) 0%,rgba(5,9,12,.8) 48%,rgba(5,9,12,.35) 100%)}.cinema h1{font-size:clamp(2.5rem,11vw,3.4rem)}.lit{height:170vh}.lnav-links{display:none}.lnav .pill.sm2{margin-left:auto}}
@media (prefers-reduced-motion:reduce){.cinema-bg .kb,.shimmer,.cue span,.loop .orbit,.pp-qr::after{animation:none}.sparks,.loop .orbit{display:none}.cinema-bg,.cinema-copy{transform:none;opacity:1}}

.cinema h1{max-width:9.6em}
.cinema .actions{align-items:flex-start}
@media (max-width:760px){.cinema h1{max-width:none}}

/* ===== v17 real-time 3D ===== */
.stage3d{position:relative}
.stage3d canvas.gl{position:absolute;inset:0;width:100%;height:100%;display:block}
.stage3d.ok>svg{visibility:hidden}
.hero3d{position:absolute;inset:0;z-index:1}
.cinema-bg.ok3d{transform:none;background:linear-gradient(180deg,#05090C 0%,#0a1520 34%,#18212a 56%,#34291f 69%,#2b2521 74%,#15191c 100%)}
.cinema-bg.ok3d .kb,.cinema-bg.ok3d .shimmer,.cinema-bg.ok3d .sparks{display:none}
.anno{position:absolute;left:0;top:0;z-index:3;pointer-events:none;display:inline-flex;align-items:center;gap:8px;font-size:.78rem;font-weight:600;letter-spacing:-.005em;color:#16252F;background:rgba(255,255,255,.88);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(22,37,47,.08);padding:6px 12px 6px 8px;border-radius:999px;white-space:nowrap;box-shadow:0 8px 22px rgba(22,37,47,.14);transition:opacity .4s}
.anno i{width:8px;height:8px;border-radius:50%;background:#32CC33;box-shadow:0 0 0 4px rgba(50,204,51,.2)}
.anno.off{opacity:0}
.ts .pro.stage3d{align-self:stretch;margin:-8px -8px 0;border-radius:24px;overflow:hidden}
.tour.static .ts .pro.stage3d{min-height:300px}

/* ===== v18 why steel ===== */
.why{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:clamp(28px,4vw,48px)}
.why>article{background:var(--mist);border-radius:var(--r-tile);padding:28px 26px}
.why .k{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;font-weight:650;color:var(--green-ink);margin:0 0 18px}
.race{display:grid;gap:14px;margin-bottom:20px}
.rb{display:grid;grid-template-columns:1fr auto;gap:7px 12px;align-items:baseline}
.rb span{font-size:.86rem;color:var(--t2)}
.rb b{font-size:1.1rem;letter-spacing:-.01em;color:var(--t1)}
.rb i{grid-column:1/-1;display:block;height:12px;border-radius:999px;background:linear-gradient(90deg,#32CC33,#0EC1F5);width:var(--w);transform-origin:0 50%}
.rb.c i{background:#B8C3C8}
.js .why [data-r]:not(.in) .rb i,.js .why article:not(.in) .rb i{transform:scaleX(0)}
.js .rb i{transition:transform 1.4s var(--ease) .2s}
.why .big{font-size:clamp(2.8rem,4.8vw,4rem);font-weight:650;letter-spacing:-.035em;line-height:1;color:var(--t1);margin:4px 0 16px}
.why .big small{font-size:.4em;color:var(--t2);font-weight:600;letter-spacing:0;margin-left:4px}
.why p{color:var(--t2);line-height:1.5;margin:0;font-size:.97rem}
#h-why .fn{margin-top:22px}
@media (max-width:900px){.why{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.rb i{transform:none!important;transition:none}}

#h-why .head h2{max-width:24em}

/* ===== v19 company, contact, legal ===== */
.cdet{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:0 0 clamp(36px,5vw,56px)}
.cdet>div{background:var(--mist);border-radius:var(--r-tile);padding:22px 22px 18px}
.cdet .k{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:650;color:var(--green-ink);margin:0 0 8px}
.cdet p{margin:0;line-height:1.5;color:var(--t1)}
.cdet a{color:var(--t1);text-decoration:none;border-bottom:1px solid var(--hair)}
.muted{color:var(--t2);font-size:.9rem}
.doc h2{font-size:clamp(1.35rem,2.2vw,1.7rem);letter-spacing:-.02em;margin:34px 0 10px}
.doc h2:first-child,.doc .draft+h2{margin-top:0}
.doc p,.doc li{color:var(--t2);line-height:1.6;font-size:1.02rem}
.doc ul{padding-left:1.1em}.doc li{margin:0 0 8px}
.doc a{color:var(--t1)}
.draft{display:inline-block;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:650;color:#8a5a00;background:#FFF4DB;border-radius:999px;padding:6px 12px;margin:0 0 26px}
.kv{width:100%;border-collapse:collapse;margin-top:6px}
.kv th,.kv td{text-align:left;padding:12px 0;border-top:1px solid var(--hair);vertical-align:top;font-size:1rem}
.kv th{width:36%;color:var(--t2);font-weight:600}
.kv td{color:var(--t1)}
footer .legal a{color:inherit}
@media (max-width:760px){.cdet{grid-template-columns:1fr}}

/* ===== v20 grid and solar ===== */
.gcard{position:relative;background:#fff;border-radius:32px;overflow:hidden;margin-top:clamp(28px,4vw,48px);box-shadow:0 40px 80px rgba(0,0,0,.35)}
.gridstage{height:clamp(420px,52vw,640px)}
.gridstage>svg{position:absolute;left:50%;top:50%;width:180px;height:auto;transform:translate(-50%,-50%)}
.gnote{position:absolute;right:20px;bottom:14px;margin:0;font-size:.66rem;letter-spacing:.18em;text-transform:uppercase;color:#8FA3AD;z-index:4}
.terms{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:22px}
.terms>article{background:#0E171D;border:1px solid #1C2A33;border-radius:var(--r-tile);padding:26px 24px}
.terms h3{color:#F2F6F7;font-size:1.25rem;letter-spacing:-.02em;margin:0 0 8px}
.terms .lead{color:#A9BAC2;margin:0 0 14px;line-height:1.5;font-size:.95rem}
.terms dl{margin:0}.terms dl>div{padding:11px 0;border-top:1px solid #1F2E38}
.terms dt{color:#32CC33;font-weight:650;font-size:.92rem}
.terms dd{margin:3px 0 0;color:#C9D4D8;font-size:.9rem;line-height:1.45}
#grid .fn{color:#8FA3AD;margin-top:20px;text-align:left}
@media (max-width:900px){.terms{grid-template-columns:1fr}.gridstage{height:460px}}

/* ===== v21 ===== */
#h-why .head,#h-why .head h2{max-width:none!important}
#h-grid .fn,#grid .fn{color:#8FA3AD}
.replay{position:absolute;left:20px;bottom:12px;z-index:4;border:1px solid rgba(22,37,47,.12);background:rgba(255,255,255,.9);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#16252F;font:inherit;font-size:.78rem;font-weight:600;padding:8px 14px;border-radius:999px;cursor:pointer;min-height:36px}
.replay:hover{background:#fff}
.replay:focus-visible{outline:2px solid #32CC33;outline-offset:2px}
@media (prefers-reduced-motion:reduce){.replay{display:none}}
@media (max-width:760px){.gnote{bottom:auto;top:14px}}

/* ===== v22 four families, jobs ===== */
.tour{height:420vh}
.tour.static .tour-slides{grid-template-columns:repeat(2,1fr)}
.terms.light>article{background:#fff;border:1px solid var(--hair)}
.terms.light h3{color:var(--t1)}.terms.light .lead{color:var(--t2)}
.terms.light dl>div{border-top-color:var(--hair)}.terms.light dt{color:var(--green-ink)}.terms.light dd{color:var(--t2)}
#h-terms .fn{color:var(--t2);text-align:left}
#h-terms{padding-top:clamp(40px,6vw,72px)}
.jfig{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:clamp(24px,4vw,40px) 0}
.jfig>div{border-top:2px solid var(--t1);padding-top:16px}
.jfig .v{font-size:clamp(2.6rem,4.6vw,4rem);font-weight:650;letter-spacing:-.035em;line-height:1;color:var(--t1)}
.jfig .v small{font-size:.42em;color:var(--t2);font-weight:600;letter-spacing:0;margin:0 4px}
.jfig p{color:var(--t2);margin:10px 0 0;line-height:1.5}
.jobs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.jobs>article{background:#fff;border-radius:var(--r-tile);padding:26px 24px}
.jobs .k,.sov .k{font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;font-weight:650;color:var(--green-ink);margin:0 0 10px}
.jobs h3{font-size:1.3rem;letter-spacing:-.02em;margin:0 0 8px}
.jobs p{color:var(--t2);line-height:1.5;margin:0}
.sov{margin-top:18px;background:linear-gradient(160deg,#101B22,#05090C 70%);color:#F2F6F7;border-radius:var(--r-tile);padding:clamp(26px,4vw,44px)}
.sov .k{color:#32CC33}
.sovq{font-size:clamp(1.5rem,3vw,2.4rem);font-weight:650;letter-spacing:-.03em;line-height:1.2;margin:0 0 14px;max-width:26em}
.sovn{color:#A9BAC2;margin:0 0 16px;max-width:52em;line-height:1.55}
@media (max-width:900px){.jfig,.jobs,.tour.static .tour-slides{grid-template-columns:1fr}}

/* ===== v23 premium pass ===== */
.tstrip{background:#fff;border-radius:28px;padding:clamp(24px,3.5vw,40px);display:grid;grid-template-columns:1.1fr 3fr auto;gap:28px;align-items:center}
.tsk{margin:0;font-weight:650;font-size:1.1rem;color:var(--t1);letter-spacing:-.015em;line-height:1.25}
.tsg{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.tsg h3{margin:0 0 4px;font-size:1rem;color:var(--green-ink);letter-spacing:-.01em}
.tsg p{margin:0;color:var(--t2);font-size:.93rem;line-height:1.45}
#h-terms{padding-top:0}
.pflow{display:flex;align-items:center;justify-content:space-between;margin:clamp(36px,5vw,64px) 0 clamp(32px,4vw,52px)}
.pn{display:flex;flex-direction:column;align-items:center;gap:12px;flex:0 0 auto;width:136px;text-align:center}
.pn svg{width:60px;height:60px;padding:16px;border-radius:22px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.12);fill:none;stroke:#DDE6EA;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;box-sizing:content-box}
.pn b{font-size:.86rem;font-weight:600;color:#DDE6EA}
.pn.hot svg{border-color:rgba(245,158,11,.5);box-shadow:0 0 44px rgba(245,158,11,.28)}
.pn.hot .arc{stroke:#F59E0B}
.pc{flex:1 1 auto;height:2px;margin:0 4px 34px;background:repeating-linear-gradient(90deg,#32CC33 0 8px,transparent 8px 16px);background-size:32px 2px;animation:pflow 1.1s linear infinite}
@keyframes pflow{from{background-position:0 0}to{background-position:32px 0}}
@keyframes pflowy{from{background-position:0 0}to{background-position:0 32px}}
.pw3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;text-align:left}
.pw3>div{border-top:1px solid rgba(255,255,255,.14);padding-top:18px}
.pw3 h3{color:#F2F6F7;font-size:1.2rem;letter-spacing:-.02em;margin:0 0 6px}
.pw3 p{color:#A9BAC2;margin:0;line-height:1.5}
.evx{display:grid;grid-template-columns:1.35fr 1fr;gap:clamp(28px,5vw,80px);align-items:start;margin-top:clamp(28px,4vw,48px)}
.race.big{gap:24px}.race.big .rb span{font-size:1rem}.race.big .rb b{font-size:1.5rem}.race.big .rb i{height:18px}
.js .race[data-r]:not(.in) .rb i{transform:scaleX(0)}
.src{margin:4px 0 0;color:var(--t2);font-size:.82rem}
.evs{display:grid;gap:26px}.evs>div{border-top:2px solid var(--t1);padding-top:14px}
.evs .v{font-size:clamp(2.4rem,4vw,3.4rem);font-weight:650;letter-spacing:-.035em;line-height:1;color:var(--t1)}
.evs p{margin:8px 0 0;color:var(--t2);line-height:1.45}
.why.two{grid-template-columns:1fr 1fr}
.whyline{font-size:clamp(1.35rem,2.5vw,2rem);font-weight:620;letter-spacing:-.025em;line-height:1.3;margin:clamp(28px,4vw,44px) 0 0;max-width:28em;color:var(--t1)}
.whyline span{color:var(--green-ink)}
.jfig .v{font-size:clamp(2.4rem,4.4vw,3.8rem)}
.ppl{list-style:none;margin:0;padding:0;display:grid;gap:22px;align-self:center}
.ppl li{border-top:1px solid var(--hair);padding-top:16px;color:var(--t2);line-height:1.5}
.ppl b{display:block;color:var(--t1);font-size:1.15rem;letter-spacing:-.01em;margin-bottom:4px}
.gains{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:clamp(28px,4vw,48px);text-align:left}
.gains>div{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.1);border-radius:28px;padding:clamp(24px,3.5vw,40px)}
.gains h3{margin:0 0 12px;font-size:1.35rem;letter-spacing:-.02em;color:#F2F6F7}
.gains ul{list-style:none;margin:0;padding:0}
.gains li{padding:13px 0 13px 28px;border-top:1px solid rgba(255,255,255,.08);color:#C9D4D8;position:relative}
.gains li::before{content:"";position:absolute;left:0;top:23px;width:14px;height:2px;background:linear-gradient(90deg,#32CC33,#0EC1F5)}
.tline{list-style:none;padding:0;margin:clamp(32px,5vw,56px) 0;display:grid;grid-template-columns:repeat(4,1fr);position:relative}
.tline::before{content:"";position:absolute;left:0;right:0;top:7px;height:2px;background:linear-gradient(90deg,#32CC33,#0EC1F5)}
.tline li{position:relative;padding:32px 18px 0 0}
.tline li::before{content:"";position:absolute;left:0;top:0;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid #32CC33;box-sizing:border-box}
.tline li.now::before{background:#32CC33;box-shadow:0 0 0 6px rgba(50,204,51,.18)}
.tline b{display:block;font-size:1.05rem;color:var(--t1);letter-spacing:-.01em}
.tline span{display:block;color:var(--t2);margin-top:4px}
.tline li.goal span{font-size:clamp(2.8rem,6vw,5rem);font-weight:650;letter-spacing:-.045em;line-height:1;margin-top:8px;background:linear-gradient(90deg,#32CC33,#0EC1F5);-webkit-background-clip:text;background-clip:text;color:transparent}
.thanks{border-left:3px solid #32CC33;padding:4px 0 4px 22px;margin:0 0 28px;max-width:46em}
.thanks p{margin:0;font-size:clamp(1.05rem,1.6vw,1.2rem);color:var(--t2);line-height:1.6}
@media (max-width:900px){.tstrip,.tsg,.pw3,.evx,.gains,.why.two{grid-template-columns:1fr}}
@media (max-width:760px){.pflow{flex-direction:column}.pn{width:auto}.pc{width:2px;height:30px;flex:0 0 30px;margin:8px 0;background:repeating-linear-gradient(180deg,#32CC33 0 8px,transparent 8px 16px);background-size:2px 32px;animation:pflowy 1.1s linear infinite}
.tline{grid-template-columns:1fr;gap:22px}.tline::before{left:7px;right:auto;top:0;bottom:0;width:2px;height:auto;background:linear-gradient(180deg,#32CC33,#0EC1F5)}.tline li{padding:0 0 0 36px}}
@media (prefers-reduced-motion:reduce){.pc{animation:none}}

/* ===== v24 FAQ, glance ===== */
.qa details{border-top:1px solid var(--hair);padding:20px 0}
.qa details:last-child{border-bottom:1px solid var(--hair)}
.qa summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:20px}
.qa summary::-webkit-details-marker{display:none}
.qa summary h2{font-size:clamp(1.15rem,2vw,1.45rem);margin:0;letter-spacing:-.02em;line-height:1.3}
.qa summary::after{content:"+";font-size:1.6rem;font-weight:300;color:var(--green-ink);flex:0 0 auto}
.qa details[open] summary::after{content:"\2212"}
.qa p{color:var(--t2);line-height:1.6;margin:12px 0 0;max-width:46em;font-size:1.05rem}
.glance{display:grid;grid-template-columns:repeat(2,1fr);gap:0 28px;margin:0 0 12px}
.glance>div{border-top:1px solid var(--hair);padding:12px 0}
.glance dt{font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;color:var(--green-ink);font-weight:650}
.glance dd{margin:4px 0 0;color:var(--t1)}
@media (max-width:760px){.glance{grid-template-columns:1fr}}

.lab{font-family:var(--font);font-size:19px;font-weight:620;fill:#16252F}.lab2{font-family:var(--font);font-size:15px;fill:#4E6675}.dim{stroke:#4E6675;stroke-width:1;fill:none}.dimt{font-family:var(--font);font-size:13px;fill:#4E6675}
@media (max-width:640px){.lab,.lab2{display:none}}

.logo img{display:block;height:30px;width:auto}
.ph{position:relative;margin:clamp(28px,4vw,48px) 0 0;border-radius:32px;overflow:hidden;aspect-ratio:21/9;background:#0b1217 center/cover no-repeat;box-shadow:0 40px 80px rgba(0,0,0,.35)}
.ph figcaption{position:absolute;right:16px;bottom:12px;font-size:.72rem;letter-spacing:.04em;color:rgba(255,255,255,.85);background:rgba(5,9,12,.45);padding:4px 10px;border-radius:999px}
.ph-wind{background-image:url(source-f73a6149b34fad8e.jpg)}
.chero.ph-hills{position:relative;background:linear-gradient(180deg,rgba(5,9,12,.72),rgba(5,9,12,.55) 60%,rgba(5,9,12,.8)),url(source-6a1f63bd1c17f550.jpg) center/cover no-repeat}
.chero.ph-hills .cap{position:absolute;right:16px;bottom:12px;font-size:.72rem;color:rgba(255,255,255,.7);z-index:4}
@media (max-width:760px){.ph{aspect-ratio:4/3;border-radius:22px}}
.builds>div{transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.builds>div.in:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(22,37,47,.12)}
.builds .icw{position:relative;display:grid;place-items:center;width:64px;height:64px;border-radius:18px;margin-bottom:20px;background:linear-gradient(135deg,#32CC33,#0EC1F5);background-size:200% 200%;box-shadow:0 10px 24px rgba(14,193,245,.28);transition:transform .35s var(--ease)}
.builds .icw::after{content:"";position:absolute;inset:-6px;border-radius:22px;border:2px solid rgba(50,204,51,.45);opacity:0;pointer-events:none}
.builds .icw .ic{width:38px;height:38px;margin:0;stroke:#fff;stroke-width:2.2}
.builds .ic *{stroke-dasharray:1;stroke-dashoffset:1}
.builds .in .ic *{animation:icDraw 1.3s var(--ease) calc(var(--d,0s) + .35s) forwards}
.builds .in .icw{animation:icPop .7s var(--ease) calc(var(--d,0s) + .15s) both,icShift 6s ease-in-out calc(var(--d,0s) + 1.5s) infinite}
.builds .in .icw::after{animation:icRing 1.2s var(--ease) calc(var(--d,0s) + 1.2s) 1}
.builds>div:hover .icw{transform:scale(1.08) rotate(-4deg)}
@keyframes icDraw{to{stroke-dashoffset:0}}
@keyframes icPop{0%{transform:scale(.6);opacity:0}60%{transform:scale(1.08);opacity:1}100%{transform:scale(1);opacity:1}}
@keyframes icShift{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes icRing{0%{opacity:.9;transform:scale(.9)}100%{opacity:0;transform:scale(1.25)}}
@media (prefers-reduced-motion:reduce){.builds .ic *{stroke-dashoffset:0;animation:none!important}.builds .icw,.builds .icw::after{animation:none!important}}
.tour:not(.static){height:auto}
.tour:not(.static) .tour-stage{position:relative;height:auto;padding:clamp(80px,10vw,140px) 0}
.tour-dots li{position:relative;cursor:pointer}
.tour-dots li:hover{color:var(--t1)}
.tour-dots li.on::before{content:"";position:absolute;left:-2px;top:0;width:2px;height:100%;background:#0EC1F5;transform-origin:top;transform:scaleY(0);animation:dotFill var(--dur,9000ms) linear forwards}
.tour.paused .tour-dots li.on::before{animation-play-state:paused}
@keyframes dotFill{to{transform:scaleY(1)}}
.cinema::after{content:"";position:absolute;left:0;right:0;bottom:0;height:30%;background:linear-gradient(0deg,#05090C 8%,rgba(5,9,12,0));z-index:1;pointer-events:none}
.pflow+.ph{margin-top:0}
.lit,.lit.static{height:auto;background:var(--mist);color:#0B1217}
.lit .lit-stage,.lit.static .lit-stage{position:relative;height:auto;padding:clamp(80px,10vw,140px) 0}
.lit-kicker{background:linear-gradient(90deg,#0B1217 0%,#0B1217 45%,#5E717C 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.lit-text{color:#0B1217}
.lit-end{background:linear-gradient(90deg,#1E9E1F,#0891B2);-webkit-background-clip:text;background-clip:text;color:transparent}
.cinema::after{height:22%}
.cinema{padding-bottom:clamp(120px,21vh,230px)}
#h-gains .gains>div{background:#fff;border:1px solid var(--hair)}
#h-gains .gains h3{color:var(--t1,#0B1217)}
#h-gains .gains li{color:var(--t2,#29404F);border-top-color:rgba(22,37,47,.1)}
#h-products .tour-copy h2{font-size:clamp(2.2rem,3.6vw,3.4rem)}
.subh{font-size:clamp(1.3rem,2vw,1.7rem);letter-spacing:-.02em;margin:clamp(28px,4vw,44px) 0 0}
:root{--nav:72px}
.nav>.wrap{height:var(--nav)}
.logo img{height:38px}
.nav ul:not(.open) a{font-size:.95rem;letter-spacing:0;padding:10px 0}
.nav ul:not(.open){gap:40px}
.nav>.wrap>.pill.sm{min-height:42px;padding:0 22px;font-size:.92rem}
.nav .menu{font-size:1rem}
@media (max-width:760px){:root{--nav:62px}.logo img{height:32px}}
.pv .pic.pic-img{padding:0;overflow:hidden;height:auto;background:#E6E7E7}
.pv .pic.pic-img img{display:block;width:100%;height:auto}
.lnav .lnav-links{margin-left:0}
.lnav .wrap>.pill{margin-left:auto!important}
#products .chero h1{font-size:clamp(2.4rem,5vw,4.4rem);max-width:16em}
#standards .tile .art.trio{gap:0;padding:6px 0 18px;margin-left:-6%;margin-right:-6%}
#standards .tile .art.trio svg{width:40%;max-height:none;height:auto;margin:0 -3%}
#specifiers{padding-bottom:clamp(36px,5vw,64px)}
#specifiers .head{margin-bottom:0}
#standards{padding-top:0}
#standards .bento{margin-top:0}
#s-power{padding-top:clamp(8px,2vw,24px)}
#eaf{padding-bottom:clamp(40px,5vw,64px)}
#s-power .subhd{font-size:clamp(1.6rem,3vw,2.4rem);letter-spacing:-.03em;line-height:1.1;margin:10px auto 0;color:#F2F6F7}
#s-power .intro.sm{font-size:clamp(1rem,1.3vw,1.12rem);max-width:38em;margin-left:auto;margin-right:auto}
.ph-britain{aspect-ratio:auto;background:#dfe5e8}
.ph-britain img{display:block;width:100%;height:auto}
.cinema-bg.has-video{background:#05090C url(source-269023f1fd2f1f1a.jpg) center/cover no-repeat}
.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:1;opacity:0;transition:opacity 1s ease}
.hero-video.on{opacity:1}
.cinema-bg.has-video .sparks,.cinema-bg.has-video .shimmer,.cinema-bg.has-video .kb{display:none}
.lit-kicker{line-height:1.06;padding-bottom:.14em;margin-bottom:.36em}
.lit-end{padding-bottom:.12em}
