:root{--base:#0A0A0B;--surf:#101216;--surf2:#15181D;--text:#F2F4F7;--mut:#9097A1;--sig:#49AEBA;--sig-d:#2E7C86;--line:rgba(255,255,255,.09);
--disp:"Oswald",system-ui,sans-serif;--body:"Hanken Grotesk",system-ui,sans-serif;--max:1240px;--ez:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:84px}
body{background:var(--base);color:var(--text);font-family:var(--body);font-size:clamp(15px,1.5vw,17px);line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:hidden}
.w{max-width:var(--max);margin:0 auto;padding:0 clamp(20px,4vw,44px)}
a{color:inherit;text-decoration:none}
.lab{display:block;font-family:var(--disp);font-weight:500;font-size:clamp(10px,1.05vw,11.5px);letter-spacing:.18em;text-transform:uppercase;color:var(--sig);margin-bottom:16px}
.rv{opacity:0;transform:translateY(20px);transition:opacity 1s ease,transform 1s var(--ez)}
.rv.in{opacity:1;transform:none}
.rv2{opacity:0;transition:opacity .85s ease .1s}.rv2.in{opacity:1}

header{position:fixed;top:0;left:0;right:0;z-index:80;transition:background .4s,backdrop-filter .4s,border-color .4s;border-bottom:1px solid transparent}
header.stuck{background:rgba(10,10,11,.86);backdrop-filter:blur(16px);border-bottom-color:var(--line)}
.mast{display:flex;align-items:center;height:76px;gap:clamp(14px,3vw,38px)}
.brand img{height:25px;display:block}
.mast nav{display:flex;gap:clamp(14px,2.2vw,28px);margin-left:auto;font-family:var(--disp);font-size:12.5px;letter-spacing:.13em;text-transform:uppercase}
.mast nav a{color:var(--mut);transition:color .22s;padding:6px 0;border-bottom:1px solid transparent}
.mast nav a:hover{color:var(--text);border-bottom-color:var(--sig)}
.cta{border:1px solid var(--sig);color:var(--sig);padding:9px 19px;font-family:var(--disp);font-weight:500;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;transition:.25s;white-space:nowrap}
.cta:hover{background:var(--sig);color:var(--base)}
.burger{display:none;background:none;border:0;color:var(--text);font-size:20px;margin-left:auto;cursor:pointer}

.hero{position:relative;min-height:100svh;display:flex;align-items:flex-end;overflow:hidden}
.hero video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.6s ease}
.hero video.on{opacity:.44}
.hero .grad{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,11,.92) 0,rgba(10,10,11,.44) 26%,rgba(10,10,11,.86) 66%,rgba(10,10,11,.98) 88%,var(--base) 100%)}
.hero .in-w{position:relative;width:100%;padding-bottom:clamp(52px,9vh,100px)}
h1{font-family:var(--disp);font-weight:300;font-size:clamp(2.2rem,5.9vw,4.9rem);line-height:1;letter-spacing:-.012em;text-transform:uppercase;max-width:17ch}
.hero p{margin-top:22px;font-size:clamp(15px,1.6vw,18px);max-width:52ch;color:#C6CCD3}
.hero-cta{margin-top:32px;display:flex;gap:12px;flex-wrap:wrap}
.btn{display:inline-block;background:var(--sig);color:var(--base);padding:13px 26px;font-family:var(--disp);font-weight:600;font-size:12.5px;letter-spacing:.14em;text-transform:uppercase;transition:.25s}
.btn:hover{background:#5EC6D2}
.btn.ghost{background:none;color:var(--text);border:1px solid var(--line)}
.btn.ghost:hover{border-color:var(--sig);color:var(--sig)}

section{padding:clamp(64px,10vh,124px) 0}
h2{font-family:var(--disp);font-weight:300;font-size:clamp(1.75rem,4.2vw,3.2rem);line-height:1.04;letter-spacing:-.008em;text-transform:uppercase;max-width:20ch}
.hd{margin-bottom:clamp(34px,5.5vh,58px)}
.lede{margin-top:16px;color:var(--mut);max-width:56ch}

.svc{border-top:1px solid var(--line)}
.s{display:grid;grid-template-columns:56px 1fr 1.55fr;gap:clamp(10px,2vw,26px);padding:clamp(18px,2.8vh,28px) 0;border-bottom:1px solid var(--line);align-items:baseline;transition:background .3s}
.s:hover{background:rgba(255,255,255,.022)}
.s .n{font-family:var(--disp);font-size:12px;letter-spacing:.13em;color:var(--sig)}
.s h3{font-family:var(--disp);font-weight:500;font-size:clamp(16px,1.9vw,22px);letter-spacing:.01em;text-transform:uppercase}
.s h3 em{font-style:normal;color:var(--mut);font-weight:300}
.s p{color:var(--mut);font-size:clamp(14px,1.4vw,15.5px)}
.s.out{opacity:.72}

.ev{position:relative;min-height:clamp(360px,62vh,600px);display:flex;align-items:flex-end;overflow:hidden}
.ev video,.ev img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.3s ease}
.ev video.on,.ev img.on{opacity:.58}
.ev .g{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,10,11,.5) 0,rgba(10,10,11,.15) 34%,rgba(10,10,11,.92) 100%)}
.ev .c{position:relative;width:100%;padding-bottom:clamp(28px,5vh,50px)}
.ev h3{font-family:var(--disp);font-weight:300;font-size:clamp(1.7rem,4.4vw,3.2rem);line-height:1;text-transform:uppercase}
.ev .cap{margin-top:14px;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;padding-top:12px;border-top:1px solid rgba(255,255,255,.18)}
.ev .cap span{font-family:var(--disp);font-size:10.5px;letter-spacing:.15em;text-transform:uppercase;color:var(--mut)}
.ev .cap b{color:var(--sig);font-weight:500}

.m{display:grid;grid-template-columns:64px 1fr;gap:clamp(12px,2.2vw,24px);padding:clamp(16px,2.4vh,24px) 0;border-bottom:1px solid var(--line)}
.steps{border-top:1px solid var(--line)}
.m .n{font-family:var(--disp);font-size:12px;letter-spacing:.13em;color:var(--sig);padding-top:4px}
.m h4{font-family:var(--disp);font-weight:500;font-size:clamp(15px,1.7vw,19px);letter-spacing:.01em;text-transform:uppercase;margin-bottom:5px}
.m p{color:var(--mut);font-size:clamp(14px,1.4vw,15.5px);max-width:64ch}

.scope{background:var(--surf)}
.builder{display:grid;grid-template-columns:1.15fr 1fr;gap:clamp(16px,3vw,40px);align-items:start}
.picks label{display:flex;align-items:center;gap:14px;padding:20px 22px;border:1px solid var(--line);margin-bottom:10px;cursor:pointer;transition:.25s;background:var(--surf2)}
.picks label:hover{border-color:var(--sig-d)}
.picks label:has(input:checked){border-color:var(--sig);background:rgba(73,174,186,.07)}
.picks input{appearance:none;width:19px;height:19px;border:1px solid var(--mut);flex:none;cursor:pointer;transition:.2s;position:relative}
.picks input:checked{background:var(--sig);border-color:var(--sig)}
.picks input:checked::after{content:'';position:absolute;left:6px;top:2px;width:5px;height:10px;border:solid var(--base);border-width:0 2px 2px 0;transform:rotate(45deg)}
.picks span{flex:1;font-family:var(--disp);font-size:clamp(14px,1.55vw,17px);letter-spacing:.02em;text-transform:uppercase;font-weight:500}
.picks b{font-family:var(--disp);color:var(--sig);font-weight:500;font-size:clamp(13px,1.4vw,15px);white-space:nowrap}
.readout{border:1px solid var(--line);padding:clamp(22px,3vw,32px);background:var(--surf2);position:sticky;top:100px}
.ro-lab{font-family:var(--disp);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--mut)}
.ro-num{font-family:var(--disp);font-weight:300;font-size:clamp(1.7rem,4vw,2.9rem);color:var(--sig);margin:8px 0 2px;line-height:1.05}
.ro-sub{font-size:13.5px;color:var(--mut);min-height:20px}
#inc{list-style:none;margin:20px 0 24px;border-top:1px solid var(--line);padding-top:16px}
#inc li{font-size:14px;color:var(--mut);padding:5px 0 5px 18px;position:relative}
#inc li::before{content:'';position:absolute;left:0;top:12px;width:6px;height:6px;background:var(--sig)}
#inc:empty{display:none}
.fine{margin-top:16px;font-size:12.5px;color:var(--mut);line-height:1.55}

.proof .logos{display:flex;flex-wrap:wrap;gap:12px}
.proof .logos span{font-family:var(--disp);font-size:clamp(14px,1.7vw,19px);letter-spacing:.03em;text-transform:uppercase;padding:12px 20px;border:1px solid var(--line);color:#CBD2D8}

.end{padding:clamp(70px,11vh,130px) 0 clamp(26px,4vh,44px)}
.mail{display:inline-block;margin-top:24px;font-family:var(--disp);font-weight:300;font-size:clamp(1.3rem,3.6vw,2.4rem);color:var(--sig);border-bottom:1px solid rgba(73,174,186,.3);padding-bottom:4px;transition:border-color .3s}
.mail:hover{border-bottom-color:var(--sig)}
footer{border-top:1px solid var(--line);padding:34px 0 50px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:28px}
footer .fl{display:block;font-family:var(--disp);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--sig);margin-bottom:12px}
footer p,footer a{display:block;color:var(--mut);font-size:14px;margin-bottom:6px;max-width:38ch}
footer a:hover{color:var(--sig)}
footer .c{margin-top:14px;font-size:12.5px;opacity:.7}

@media(max-width:900px){.builder{grid-template-columns:1fr}.readout{position:static}footer{grid-template-columns:1fr 1fr}}
@media(max-width:720px){
 .mast nav{display:none;position:absolute;top:76px;left:0;right:0;background:rgba(10,10,11,.97);backdrop-filter:blur(14px);flex-direction:column;gap:0;padding:8px 24px 20px;border-bottom:1px solid var(--line)}
 .mast nav.open{display:flex}.mast nav a{padding:13px 0}
 .burger{display:block}.cta{display:none}
 .s{grid-template-columns:38px 1fr}.s p{grid-column:1/-1;padding-top:7px}
 .m{grid-template-columns:40px 1fr}
 footer{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}.rv,.rv2{opacity:1;transform:none}}

.process .lede{color:var(--mut)}
.m.last{border-bottom:none}
.m.last h4{color:var(--sig)}

/* ============ v2: card system aligned to the house guideline (Recoup radii + soft surfaces) ============ */
:root{--r:14px;--r-sm:10px;--card:rgba(242,244,247,.035);--card-b:rgba(242,244,247,.10);--ez2:cubic-bezier(.16,1,.3,1)}
.card{background:var(--card);border:1px solid var(--card-b);border-radius:var(--r);transition:transform .25s var(--ez2),border-color .25s,box-shadow .25s}
.card:hover{border-color:rgba(73,174,186,.42);transform:translateY(-3px);box-shadow:0 18px 44px rgba(0,0,0,.42)}
.picks label,.readout{border-radius:var(--r)}
.proof .logos span{border-radius:100px}
.btn,.cta{border-radius:100px}
.media{border-radius:var(--r)}

/* ---- logo marquee ---- */
.marq{padding:clamp(26px,4vh,44px) 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden;background:var(--surf)}
.marq .lab{text-align:center;margin-bottom:22px}
.mrow{display:flex;gap:clamp(38px,6vw,76px);align-items:center;width:max-content;animation:slide 38s linear infinite}
.marq:hover .mrow{animation-play-state:paused}
.mrow img{height:clamp(26px,3.4vw,40px);width:auto;filter:grayscale(1) brightness(0) invert(1);opacity:.5;transition:opacity .3s,filter .3s;flex:none}
.mrow img:hover{opacity:1;filter:grayscale(0) brightness(1) invert(0)}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---- interactive process flow ---- */
.flow{display:grid;grid-template-columns:300px 1fr;gap:clamp(16px,3vw,44px);align-items:start}
.fnav{display:flex;flex-direction:column;gap:5px}
.fnav button{all:unset;cursor:pointer;display:flex;align-items:center;gap:13px;padding:13px 16px;border-radius:var(--r-sm);color:var(--mut);font-family:var(--disp);font-size:13.5px;letter-spacing:.05em;text-transform:uppercase;transition:.22s var(--ez2);border:1px solid transparent}
.fnav button:hover{color:var(--text);background:rgba(255,255,255,.03)}
.fnav button.on{color:var(--text);background:rgba(73,174,186,.1);border-color:rgba(73,174,186,.45)}
.fnav button i{font-style:normal;font-size:11px;color:var(--sig);min-width:20px}
.fpane{min-height:330px;padding:clamp(24px,3.4vw,40px);position:relative;overflow:hidden}
.fstep{display:none;animation:fin .55s var(--ez2)}
.fstep.on{display:block}
@keyframes fin{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.fstep h4{font-family:var(--disp);font-weight:300;font-size:clamp(1.5rem,3.4vw,2.4rem);text-transform:uppercase;line-height:1.05;margin-bottom:14px}
.fstep h4 b{color:var(--sig);font-weight:500}
.fstep p{color:var(--mut);max-width:50ch;font-size:clamp(14.5px,1.5vw,16.5px)}
.fstep .out{margin-top:22px;padding-top:16px;border-top:1px solid var(--line);display:flex;gap:10px;flex-wrap:wrap}
.fstep .out span{font-family:var(--disp);font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:var(--sig);border:1px solid rgba(73,174,186,.3);border-radius:100px;padding:6px 13px}
.fbar{height:2px;background:var(--line);margin-top:20px;border-radius:2px;overflow:hidden}
.fbar i{display:block;height:100%;background:var(--sig);width:12.5%;transition:width .5s var(--ez2)}

/* ---- conversion engine ---- */
.engine{display:grid;grid-template-columns:1fr 1fr;gap:clamp(14px,2.4vw,28px)}
.eng-card{padding:clamp(22px,3vw,32px);position:relative;overflow:hidden}
.eng-lab{font-family:var(--disp);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--sig);margin-bottom:14px}
.eng-num{font-family:var(--disp);font-weight:300;font-size:clamp(2.2rem,6vw,4rem);line-height:1;letter-spacing:-.01em;font-variant-numeric:tabular-nums}
.eng-sub{color:var(--mut);font-size:14px;margin-top:8px}
.bars{display:flex;align-items:flex-end;gap:6px;height:110px;margin-top:20px}
.bars i{flex:1;background:linear-gradient(180deg,var(--sig),rgba(73,174,186,.18));border-radius:4px 4px 0 0;height:8%;transition:height .9s var(--ez2)}
.dial{display:flex;gap:8px;margin-top:24px;flex-wrap:wrap}
.dial button{all:unset;cursor:pointer;font-family:var(--disp);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--mut);border:1px solid var(--card-b);border-radius:100px;padding:8px 16px;transition:.2s}
.dial button.on,.dial button:hover{color:var(--sig);border-color:var(--sig)}

@media(max-width:900px){.flow{grid-template-columns:1fr}.fnav{flex-direction:row;overflow-x:auto;gap:6px;padding-bottom:6px}.fnav button{white-space:nowrap;padding:10px 14px}.engine{grid-template-columns:1fr}}

/* ============ GLASS LAYER — adapted from Scovo's "you look through your footage" ============ */
.backdrop{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none}
.backdrop video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  filter:blur(52px) saturate(.85) brightness(.34);transform:scale(1.3);opacity:0;transition:opacity 2s ease}
.backdrop video.on{opacity:1}
.grade{position:fixed;inset:0;z-index:0;pointer-events:none;background:
  radial-gradient(1200px 760px at 78% -8%, rgba(73,174,186,.13), transparent 56%),
  radial-gradient(900px 620px at 8% 108%, rgba(73,174,186,.07), transparent 60%),
  linear-gradient(180deg, rgba(10,10,11,.5), rgba(10,10,11,.86))}
header,.hero,section,.ev,.end,.marq,footer,.w{position:relative;z-index:2}

/* glass panel — hairline + inset highlight, the Scovo signature */
.card,.fpane,.eng-card,.readout,.picks label{
  background:linear-gradient(180deg,rgba(242,244,247,.055),rgba(242,244,247,.022));
  border:1px solid rgba(242,244,247,.11);
  backdrop-filter:blur(18px) saturate(1.15);-webkit-backdrop-filter:blur(18px) saturate(1.15);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.10), inset 0 -1px 0 rgba(0,0,0,.22), 0 14px 34px rgba(0,0,0,.30)}
.card:hover,.picks label:hover{border-color:rgba(73,174,186,.4);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14), 0 18px 44px rgba(0,0,0,.36), 0 0 0 3px rgba(73,174,186,.07)}
.picks label:has(input:checked){border-color:rgba(73,174,186,.62);box-shadow:inset 0 1px 0 rgba(255,255,255,.14),0 0 0 3px rgba(73,174,186,.1)}
.btn{background:linear-gradient(180deg,#55BECA,#3B98A4);box-shadow:inset 0 1px 0 rgba(255,255,255,.22),0 10px 26px rgba(0,0,0,.3)}
.btn.ghost{background:linear-gradient(180deg,rgba(255,255,255,.09),rgba(255,255,255,.025));box-shadow:inset 0 1px 0 rgba(255,255,255,.09)}
.scope{background:transparent}
.marq{background:rgba(16,18,22,.42);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}

/* sliders */
.sl{display:block;margin-top:18px}
.sl span{font-family:var(--disp);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut)}
.sl b{float:right;font-family:var(--disp);color:var(--sig);font-weight:500;font-size:13px}
.sl input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:3px;margin-top:11px;border-radius:3px;
  background:linear-gradient(90deg,var(--sig) var(--p,20%),rgba(242,244,247,.14) var(--p,20%));cursor:pointer}
.sl input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:17px;height:17px;border-radius:50%;
  background:var(--sig);border:2px solid var(--base);box-shadow:0 2px 10px rgba(0,0,0,.5);cursor:pointer}
.sl input[type=range]::-moz-range-thumb{width:15px;height:15px;border-radius:50%;background:var(--sig);border:2px solid var(--base)}

/* nav + logo polish */
.brand img{height:31px}
.mast{gap:clamp(16px,3vw,44px)}
.mast nav a{position:relative;font-size:12px}
.mast nav a.here{color:var(--sig)}
.mast nav a::after{content:'';position:absolute;left:0;right:0;bottom:0;height:1px;background:var(--sig);transform:scaleX(0);transform-origin:left;transition:transform .28s var(--ez2)}
.mast nav a:hover::after,.mast nav a.here::after{transform:scaleX(1)}
.mast nav a{border-bottom:none}

/* ---- the loop: orbit flow ---- */
.loop{display:grid;grid-template-columns:minmax(300px,420px) 1fr;gap:clamp(20px,4vw,52px);align-items:center}
.ring{position:relative;width:100%;aspect-ratio:1;max-width:420px;margin:0 auto}
.ring svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.ring .track{fill:none;stroke:rgba(242,244,247,.09);stroke-width:1}
.ring .arc{fill:none;stroke:var(--sig);stroke-width:2;stroke-linecap:round;transition:stroke-dasharray .6s var(--ez2);filter:drop-shadow(0 0 6px rgba(73,174,186,.5))}
.node{position:absolute;width:38px;height:38px;margin:-19px 0 0 -19px;border-radius:50%;cursor:pointer;
  display:grid;place-items:center;font-family:var(--disp);font-size:11.5px;color:var(--mut);
  background:linear-gradient(180deg,rgba(242,244,247,.07),rgba(242,244,247,.02));
  border:1px solid rgba(242,244,247,.13);backdrop-filter:blur(10px);transition:.3s var(--ez2)}
.node:hover{color:var(--text);border-color:rgba(73,174,186,.5);transform:scale(1.12)}
.node.on{color:var(--base);background:var(--sig);border-color:var(--sig);transform:scale(1.2);box-shadow:0 0 0 6px rgba(73,174,186,.14),0 8px 22px rgba(0,0,0,.4)}
.ring-mid{position:absolute;inset:34%;border-radius:50%;display:grid;place-items:center;text-align:center;pointer-events:none}
.ring-mid b{font-family:var(--disp);font-weight:300;font-size:clamp(2rem,5vw,3.4rem);color:var(--sig);line-height:1}
.ring-mid span{font-family:var(--disp);font-size:9.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);display:block;margin-top:4px}
.lpane{position:relative;overflow:hidden;border-radius:var(--r)}
.lvis{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:var(--r) var(--r) 0 0;background:#0d0f12}
.lvis video,.lvis img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .7s ease}
.lvis .shown{opacity:.85}
.lvis::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 40%,rgba(10,10,11,.85))}
.lbody{padding:clamp(20px,2.8vw,30px)}
.lbody h4{font-family:var(--disp);font-weight:300;font-size:clamp(1.4rem,3.2vw,2.2rem);text-transform:uppercase;line-height:1.05;margin-bottom:10px}
.lbody p{color:var(--mut);max-width:52ch;font-size:15px}
.lbody .out{margin-top:16px;display:flex;gap:8px;flex-wrap:wrap}
.lbody .out span{font-family:var(--disp);font-size:10px;letter-spacing:.13em;text-transform:uppercase;color:var(--sig);border:1px solid rgba(73,174,186,.3);border-radius:100px;padding:5px 12px}
@media(max-width:880px){.loop{grid-template-columns:1fr}.ring{max-width:320px}}
.pghero{padding:calc(76px + clamp(48px,8vh,92px)) 0 clamp(24px,4vh,44px)}
.pghero h1{font-size:clamp(2rem,5.2vw,4.2rem);max-width:18ch}
.pglede{margin-top:18px;color:var(--mut);max-width:56ch}
.navcards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:clamp(12px,2vw,20px)}
.nc{padding:clamp(22px,3vw,30px);display:block;transition:.3s var(--ez2)}
.nc-n{font-family:var(--disp);font-size:11px;letter-spacing:.14em;color:var(--sig)}
.nc h3{font-family:var(--disp);font-weight:500;font-size:clamp(17px,2vw,22px);text-transform:uppercase;margin:12px 0 8px}
.nc p{color:var(--mut);font-size:14.5px;margin-bottom:16px}
.nc em{font-style:normal;font-family:var(--disp);font-size:11px;letter-spacing:.13em;text-transform:uppercase;color:var(--sig)}
/* tapered ring trail */
.ring .seg{fill:none;stroke:var(--sig);stroke-linecap:round;filter:drop-shadow(0 0 4px rgba(73,174,186,.45))}
/* punchier cards + copy */
.nc h3{font-size:clamp(21px,2.6vw,30px)}
.nc p{font-size:clamp(15px,1.6vw,16.5px);line-height:1.6;color:#AEB6BD}
.nc em{font-size:12px}
.nc{padding:clamp(26px,3.4vw,36px)}
.lbody h4{font-size:clamp(1.6rem,3.6vw,2.5rem)}
.lbody p{font-size:clamp(15px,1.65vw,17.5px);color:#AEB6BD;line-height:1.62}
.lede{font-size:clamp(15px,1.6vw,17.5px);color:#A8B0B8;max-width:64ch}
.pglede{font-size:clamp(15.5px,1.7vw,18.5px);color:#AEB6BD;max-width:62ch}
.s p{font-size:clamp(14.5px,1.5vw,16px);color:#A5ADB5}
.bmk{margin-top:22px}
.bmk-row{display:flex;align-items:center;gap:12px;margin-bottom:9px}
.bmk-row span{font-family:var(--disp);font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:var(--mut);min-width:104px}
.bmk-track{flex:1;height:7px;background:rgba(242,244,247,.07);border-radius:6px;overflow:hidden}
.bmk-track i{display:block;height:100%;background:linear-gradient(90deg,var(--sig),#6FD3DE);border-radius:6px;transition:width .6s var(--ez2)}
.bmk-row.ghost .bmk-track i{background:rgba(242,244,247,.26)}
.verdict{margin-top:16px;font-size:14.5px;line-height:1.55;padding-left:13px;border-left:2px solid var(--mut);color:#AEB6BD}
.verdict.good{border-left-color:var(--sig);color:#CFE9EC}
.verdict.mid{border-left-color:#C9A227}
.verdict.low{border-left-color:#C8564A}
.dial button em{font-style:normal;display:block;font-size:9px;letter-spacing:.08em;opacity:.62;margin-top:2px}
.dial button{padding:9px 15px;line-height:1.15}
.sl span em{font-style:normal;color:var(--mut);opacity:.7;margin-left:6px;letter-spacing:.06em}
.nc{padding:0;overflow:hidden;display:flex;flex-direction:column}
.ncvis{position:relative;aspect-ratio:16/9;overflow:hidden;background:#0d0f12;flex:none}
.ncvis .ncv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1s ease,transform 1.4s var(--ez2);transform:scale(1.04)}
.ncvis .ncv.on{opacity:.72}
.nc:hover .ncvis .ncv{opacity:.95;transform:scale(1.09)}
.ncvis::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(10,10,11,.9))}
.nc .nc-n{display:block;padding:clamp(20px,2.6vw,26px) clamp(22px,2.8vw,30px) 0}
.nc h3{margin:10px clamp(22px,2.8vw,30px) 10px}
.nc p{margin:0 clamp(22px,2.8vw,30px) 18px}
.nc em{display:block;padding:0 clamp(22px,2.8vw,30px) clamp(22px,2.8vw,28px);margin-top:auto}
/* ---- calculator v2 ---- */
.calc{padding:clamp(24px,3.4vw,42px)}
.calc-top{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(20px,3.5vw,50px);align-items:center;padding-bottom:clamp(22px,3vh,32px);border-bottom:1px solid var(--line)}
.sl.big span{font-size:12px;letter-spacing:.15em}
.sl.big b{font-size:clamp(20px,2.6vw,28px);float:none;display:block;margin-top:6px}
.sl.big input[type=range]{height:5px;margin-top:18px}
.sl.big input[type=range]::-webkit-slider-thumb{width:24px;height:24px}
.big-num{font-family:var(--disp);font-weight:300;font-size:clamp(2.6rem,7vw,5rem);line-height:1;letter-spacing:-.015em;color:var(--sig);font-variant-numeric:tabular-nums}
.big-num.tick{animation:tick .35s var(--ez2)}
@keyframes tick{0%{transform:translateY(5px);opacity:.5}100%{transform:none;opacity:1}}
.gain{font-family:var(--disp);font-size:clamp(14px,1.7vw,18px);letter-spacing:.03em;text-transform:uppercase;margin-top:8px}
.gain.up{color:#6FD3DE}.gain.down{color:#C8564A}
.plain{margin-top:12px;color:#AEB6BD;font-size:clamp(15px,1.6vw,17px)}
.plain b{color:var(--text);font-weight:600}
.chain{display:flex;align-items:center;gap:clamp(6px,1.4vw,16px);padding:clamp(20px,3vh,30px) 0;flex-wrap:wrap}
.ch{flex:1;min-width:104px}
.ch-l{display:block;font-family:var(--disp);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--mut);margin-bottom:6px}
.ch b{font-family:var(--disp);font-weight:400;font-size:clamp(17px,2.2vw,26px);color:#D7DEE3;font-variant-numeric:tabular-nums}
.ch.on b{color:var(--sig)}
.ch-a{width:22px;height:1px;background:linear-gradient(90deg,rgba(73,174,186,.15),rgba(73,174,186,.65));position:relative;flex:none}
.ch-a::after{content:'';position:absolute;right:-1px;top:-3px;border:3.5px solid transparent;border-left-color:rgba(73,174,186,.65)}
.bmk-row em{font-style:normal;font-family:var(--disp);font-size:12px;color:var(--mut);min-width:48px;text-align:right}
.adv-t{all:unset;cursor:pointer;margin-top:22px;font-family:var(--disp);font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--sig);border-bottom:1px solid rgba(73,174,186,.3);padding-bottom:3px}
.adv-t i{font-style:normal;display:inline-block;transition:transform .3s}
.adv-t.open i{transform:rotate(180deg)}
.adv{max-height:0;overflow:hidden;transition:max-height .55s var(--ez2)}
.adv.open{max-height:640px}
.adv .sl:first-child{margin-top:24px}
@media(max-width:820px){.calc-top{grid-template-columns:1fr}.ch{min-width:80px}.ch-a{display:none}}
a.s{text-decoration:none;position:relative}
a.s .s-go{position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--sig);opacity:0;transition:.28s var(--ez2);font-size:19px}
a.s:hover .s-go{opacity:1;right:-4px}
a.s:hover h3{color:var(--sig)}
a.s h3{transition:color .22s}
.svd{padding:clamp(46px,7vh,84px) 0;border-bottom:1px solid var(--line)}
.svd .hd{margin-bottom:22px}
.svd-body p{color:#AEB6BD;max-width:62ch;font-size:clamp(15px,1.6vw,17px);line-height:1.65}
