@font-face{font-family:"NC Head";src:url(/assets/fonts/head.woff2) format("woff2");font-weight:400 900;font-display:swap}
@font-face{font-family:"NC Body";src:url(/assets/fonts/body.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:swap}
@font-face{font-family:"NC Body";src:url(/assets/fonts/body-italic.woff2) format("woff2");font-weight:200 900;font-style:italic;font-display:swap}
@font-face{font-family:"NC Mono";src:url(/assets/fonts/mono.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"NC Head Fallback";src:local("Arial");size-adjust:104%;ascent-override:92%}
@font-face{font-family:"NC Body Fallback";src:local("Arial");size-adjust:96%;ascent-override:100%}

:root{
  --bg:#FFFFFF;--bg-2:#F8FAFC;--card:#FFFFFF;--well:#F1F5F9;--mist:#EEF6F5;
  --ink:#0F172A;--text:#1E293B;--muted:#475569;--faint:#64748B;
  --rule:#E2E8F0;--rule-2:#CBD5E1;
  --signal:#115E59;--signal-ink:#0D4A46;--signal-soft:#E6F2F1;--on-signal:#FFFFFF;
  --volt:#2F7D4F;--volt-soft:#E7F4EC;--wave:#115E59;
  --heat:#C2410C;--heat-soft:#FFF1E8;--amber:#9A5B00;--alert:#B42318;--alert-soft:#FDECEA;
  --glow:transparent;--neon:#115E59;
  --shadow:0 1px 2px rgba(15,23,42,.06),0 4px 12px rgba(15,23,42,.06);
  --display:"NC Head","NC Head Fallback",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --sans:"NC Body","NC Body Fallback",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  --mono:"NC Mono",ui-monospace,"SFMono-Regular",Menlo,Consolas,monospace;
  --t-11:.75rem;--t-13:.875rem;--t-15:.9375rem;--t-17:1.0625rem;
  --t-read:1.125rem;--t-20:1.25rem;--t-26:1.5625rem;--t-36:1.953rem;
  --t-54:clamp(2rem,1.6rem + 2vw,2.75rem);--t-mega:clamp(2.4rem,1.7rem + 3vw,3.5rem);
  --s-1:4px;--s-2:8px;--s-3:12px;--s-4:16px;--s-5:24px;--s-6:32px;--s-7:48px;--s-8:64px;--s-9:96px;
  --shell:1200px;--pad:clamp(16px,4vw,24px);--measure:68ch;
  --r-1:6px;--r-2:10px;--r-3:10px;
  --ease:cubic-bezier(.2,.7,.2,1);
  color-scheme:light;
}
[data-theme="dark"]{
  --bg:#0F172A;--bg-2:#131C31;--card:#1E293B;--well:#1B2537;--mist:#132A2D;
  --ink:#F1F5F9;--text:#E2E8F0;--muted:#94A3B8;--faint:#8391A7;
  --rule:#263244;--rule-2:#334155;
  --signal:#2DD4BF;--signal-ink:#5EEAD4;--signal-soft:#10302E;--on-signal:#0F172A;
  --volt:#4ADE80;--volt-soft:#14301F;--wave:#5EEAD4;
  --heat:#FB923C;--heat-soft:#2E1C10;--amber:#FBBF24;--alert:#F87171;--alert-soft:#331818;
  --neon:#2DD4BF;
  --shadow:0 1px 2px rgba(0,0,0,.4),0 4px 12px rgba(0,0,0,.3);
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:80px}
body{margin:0;background:var(--bg);color:var(--text);font:400 var(--t-17)/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,svg,video{display:block;max-width:100%;height:auto}
[data-theme="dark"] img:not([src$=".svg"]){filter:brightness(.92)}
a{color:var(--wave);text-underline-offset:.2em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
button,input,select,textarea{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--signal);outline-offset:2px;border-radius:4px}
h1,h2,h3,h4{scroll-margin-top:80px}
.sr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-80px;z-index:40;padding:10px 14px;background:var(--ink);color:var(--bg);border-radius:var(--r-1);text-decoration:none}
.skip:focus{top:12px}
.wrap{width:min(var(--shell),100% - var(--pad)*2);margin-inline:auto}
.narrow{width:min(760px,100% - var(--pad)*2);margin-inline:auto}
.label{display:inline-block;font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.label b{color:var(--signal);font-weight:500}
.mono{font-family:var(--mono)}

.slats{display:block;height:24px;overflow:clip}
.slats svg{width:100%;height:24px}
.slats rect{fill:var(--rule-2)}
.slats rect.on{fill:var(--signal)}
.slat-icon{display:inline-flex;align-items:flex-end;gap:2px;height:18px}
.slat-icon i{display:block;width:3px;border-radius:1px;background:var(--c,var(--signal))}
.slat-icon i:nth-child(1){height:100%}.slat-icon i:nth-child(2){height:78%}.slat-icon i:nth-child(3){height:58%}.slat-icon i:nth-child(4){height:40%}.slat-icon i:nth-child(5){height:24%}

#loader{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:var(--bg);transition:opacity .2s linear,visibility .2s;animation:ld-off .01s .9s forwards}
html.seen #loader{display:none}
#loader.done{opacity:0;visibility:hidden}
#loader .ld{display:grid;justify-items:center;gap:16px;text-align:center;padding:24px}
#loader img{width:min(200px,56vw);height:auto}
#loader .bars{display:flex;align-items:flex-end;gap:4px;height:28px}
#loader .bars i{width:4px;border-radius:1px;background:var(--signal);transform-origin:bottom;animation:bar .8s var(--ease) both}
#loader .bars i:nth-child(1){height:100%}#loader .bars i:nth-child(2){height:86%;animation-delay:.05s}#loader .bars i:nth-child(3){height:70%;animation-delay:.1s}#loader .bars i:nth-child(4){height:56%;animation-delay:.15s}#loader .bars i:nth-child(5){height:42%;animation-delay:.2s}#loader .bars i:nth-child(6){height:30%;animation-delay:.25s}#loader .bars i:nth-child(7){height:20%;animation-delay:.3s}
#loader .who{font:700 1rem/1.2 var(--display);color:var(--ink)}
#loader .role{margin-top:4px;font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
@keyframes bar{from{transform:scaleY(.1)}to{transform:scaleY(1)}}
@keyframes ld-off{to{opacity:0;visibility:hidden}}

.hdr{position:sticky;top:0;z-index:10;background:var(--bg);border-bottom:1px solid var(--rule)}
.hdr .top{display:flex;align-items:center;gap:8px;min-height:60px}
.logo{display:flex;align-items:center;gap:10px;margin-right:auto;text-decoration:none;color:var(--ink)}
.logo img{width:32px;height:32px;border-radius:8px}
[data-theme="dark"] .logo img{background:#E9EFEE;padding:2px;filter:none}
.logo b{font:700 1.2rem/1 var(--display);letter-spacing:-.01em}
.logo b em{font-style:normal;color:var(--signal)}
.sq{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:var(--r-1);border:1px solid var(--rule);background:var(--bg);color:var(--ink);cursor:pointer;text-decoration:none;transition:border-color .15s}
.sq:hover{border-color:var(--signal)}
.sq svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.mode{display:inline-flex;align-items:center;width:auto;padding:0 12px;gap:8px;font:600 var(--t-13)/1 var(--sans)}
.mode .i-sun,.mode .t-light{display:none}
[data-theme="dark"] .mode .i-sun,[data-theme="dark"] .mode .t-light{display:block}
[data-theme="dark"] .mode .i-moon,[data-theme="dark"] .mode .t-dark{display:none}
.mode span{display:none}
.cats{display:none}
.menu{display:none}
.menu.open{display:block;position:fixed;inset:61px 0 0 0;z-index:20;overflow:auto;padding:8px var(--pad) 32px;background:var(--bg)}
.menu a{display:flex;align-items:center;justify-content:space-between;padding:16px 4px;border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink);font:600 1.05rem/1.2 var(--sans)}
.menu a[aria-current]{color:var(--signal)}
.menu h4{margin:24px 0 4px;font:500 var(--t-11)/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
body.menu-open{overflow:hidden}
@media (min-width:640px){.mode span{display:block}}
@media (min-width:1024px){
  .burger{display:none}
  .cats{display:flex;gap:2px;border-top:1px solid var(--rule);overflow-x:auto;scrollbar-width:none}
  .cats::-webkit-scrollbar{display:none}
  .cats a{flex:none;padding:12px 11px;text-decoration:none;color:var(--muted);font:600 var(--t-15)/1 var(--sans);border-bottom:2px solid transparent;margin-bottom:-1px}
  .cats a:hover{color:var(--ink)}
  .cats a[aria-current]{color:var(--ink);border-bottom-color:var(--signal)}
  .cats .sp{margin-left:auto}
  .menu.open{display:none}
}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 20px;border-radius:var(--r-1);border:1px solid transparent;font:600 var(--t-15)/1 var(--sans);text-decoration:none;cursor:pointer;transition:background-color .15s,border-color .15s,color .15s}
.btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.btn-go{background:var(--signal);color:var(--on-signal)}
.btn-go:hover{background:var(--signal-ink)}
.btn-line{background:var(--bg);color:var(--ink);border-color:var(--rule-2)}
.btn-line:hover{border-color:var(--signal);color:var(--signal)}
.btn[disabled]{opacity:.55;cursor:default}

.hero{padding:var(--s-7) 0 var(--s-8);border-bottom:1px solid var(--rule)}
.hero .in{display:grid;gap:var(--s-6);align-items:center}
.eyebrow{display:block;margin-bottom:var(--s-4);font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--signal)}
.mega{margin:0;max-width:18ch;font:700 var(--t-mega)/1.08 var(--display);letter-spacing:-.02em;color:var(--ink);text-wrap:balance}
.mega em{font-style:normal;color:var(--signal)}
.hero-lede{margin:var(--s-4) 0 var(--s-5);max-width:52ch;font:400 var(--t-20)/1.6 var(--sans);color:var(--muted)}
.hero-cta{display:flex;flex-wrap:wrap;gap:var(--s-3)}
.trust{display:flex;flex-wrap:wrap;gap:6px 16px;margin:var(--s-5) 0 0;padding:0;list-style:none;font-size:var(--t-13);color:var(--muted)}
.trust li{display:inline-flex;align-items:center;gap:6px}
.trust li::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--signal)}
.diagram{margin:0;border:1px solid var(--rule);border-radius:var(--r-2);background:var(--bg-2);padding:var(--s-5)}
.diagram svg{width:100%;height:auto}
.diagram figcaption{margin-top:var(--s-3);font-size:var(--t-13);color:var(--muted)}
.dg-bar{fill:var(--rule-2)}.dg-bar.hot{fill:var(--heat)}.dg-bar.mid{fill:var(--amber)}.dg-bar.cool{fill:var(--signal)}
.dg-t{fill:var(--muted);font:500 12px var(--mono)}.dg-h{fill:var(--ink);font:700 13px var(--display)}.dg-line{stroke:var(--rule-2);stroke-width:1}
@media (min-width:960px){.hero{padding:var(--s-8) 0 var(--s-9)}.hero .in{grid-template-columns:7fr 5fr;gap:var(--s-8)}}

.sec{padding:var(--s-8) 0}
.sec.soft{background:var(--bg-2);border-block:1px solid var(--rule)}
.band{padding:var(--s-4) 0}
.head{display:grid;gap:var(--s-2);margin-bottom:var(--s-6)}
.head .no{font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--signal)}
.head h2{margin:0;font:700 var(--t-36)/1.2 var(--display);letter-spacing:-.015em;color:var(--ink);text-wrap:balance}
.head p{margin:0;max-width:60ch;color:var(--muted)}
.head .more{justify-self:start;font:600 var(--t-15)/1 var(--sans);color:var(--signal);text-decoration:none}
.head .more:hover{text-decoration:underline}
@media (min-width:960px){.sec{padding:var(--s-9) 0}.head{grid-template-columns:1fr auto;align-items:end}.head .no,.head p{grid-column:1}.head h2{grid-column:1}.head .more{grid-column:2;grid-row:1/span 3;align-self:end;justify-self:end}}

.hubs{display:grid;gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,15rem),1fr))}
.hub{display:grid;gap:var(--s-3);align-content:start;padding:var(--s-5);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--card);text-decoration:none;color:var(--text);transition:border-color .15s,box-shadow .15s}
.hub:hover{border-color:var(--signal);box-shadow:var(--shadow)}
.hub .ic{display:grid;place-items:center;width:44px;height:44px;border-radius:var(--r-1);background:var(--signal-soft)}
.hub h3{margin:0;font:700 var(--t-20)/1.25 var(--display);color:var(--ink)}
.hub p{margin:0;font-size:var(--t-15);color:var(--muted)}
.hub .label{color:var(--signal)}

.finder{display:grid;gap:var(--s-3);grid-template-columns:repeat(auto-fill,minmax(min(100%,21rem),1fr))}
.find{display:grid;grid-template-columns:auto 1fr auto;gap:var(--s-4);align-items:center;padding:var(--s-4) var(--s-5);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--card);text-decoration:none;color:var(--text);transition:border-color .15s}
.find:hover{border-color:var(--signal)}
.find .ic{display:grid;place-items:center;width:40px;height:40px;border-radius:var(--r-1);background:var(--signal-soft)}
.find .ic svg{width:22px;height:22px;fill:none;stroke:var(--signal);stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.find h3{margin:0;font:700 var(--t-17)/1.3 var(--display);color:var(--ink)}
.find p{margin:2px 0 0;font-size:var(--t-13);color:var(--muted)}
.find .go svg{width:18px;height:18px;fill:none;stroke:var(--faint);stroke-width:2}

.bento{display:grid;gap:var(--s-5)}
@media (min-width:880px){.bento{grid-template-columns:1.4fr 1fr;align-items:start}}
.story{display:grid;gap:var(--s-3);text-decoration:none;color:inherit}
.story .pic{position:relative;aspect-ratio:3/2;overflow:hidden;border-radius:var(--r-2);border:1px solid var(--rule);background:var(--bg-2)}
.story .pic img{width:100%;height:100%;object-fit:cover}
.story h3{margin:var(--s-2) 0 0;font:700 var(--t-26)/1.25 var(--display);letter-spacing:-.01em;color:var(--ink)}
.story:hover h3{color:var(--signal)}
.story p{margin:0;color:var(--muted)}
.story .meta{font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--faint)}
.ph{position:absolute;inset:0;display:grid;place-items:center;background:var(--bg-2)}
.ph svg{width:46%;height:auto}
.ph rect{fill:var(--rule-2)}
.ph rect:nth-child(1),.ph rect:nth-child(2){fill:var(--signal);opacity:.55}
.minis{display:grid;gap:0;border-top:1px solid var(--rule)}
.mini{display:grid;grid-template-columns:88px 1fr;gap:var(--s-4);align-items:center;padding:var(--s-4) 0;border-bottom:1px solid var(--rule);text-decoration:none;color:inherit}
.mini .pic{position:relative;aspect-ratio:1/1;overflow:hidden;border-radius:var(--r-1);background:var(--bg-2);border:1px solid var(--rule)}
.mini .pic img{width:100%;height:100%;object-fit:cover}
.mini h4{margin:0 0 4px;font:700 var(--t-17)/1.3 var(--display);color:var(--ink)}
.mini:hover h4{color:var(--signal)}
.mini span{font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--faint)}

.rows{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}
.rowi{border-bottom:1px solid var(--rule)}
.rowi a,.rowi .row-off{display:grid;grid-template-columns:1fr;gap:4px;padding:var(--s-5) 0;text-decoration:none;color:inherit}
.rowi .n{display:none}
.rowi .tg{display:block;margin-bottom:4px;font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--signal)}
.rowi h3{margin:0;font:700 var(--t-20)/1.3 var(--display);color:var(--ink)}
.rowi a:hover h3{color:var(--signal)}
.rowi p{margin:4px 0 0;color:var(--muted);font-size:var(--t-15);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.rowi .rt{font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.05em;text-transform:uppercase;color:var(--faint)}
.rowi.hub h3::after{content:"Start here";display:inline-block;margin-left:10px;vertical-align:3px;padding:2px 8px;border-radius:999px;border:1px solid var(--signal);color:var(--signal);font:500 .65rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase}
@media (min-width:720px){.rowi a,.rowi .row-off{grid-template-columns:56px 1fr auto;gap:var(--s-5);align-items:baseline}.rowi .n{display:block;font:500 var(--t-13)/1 var(--mono);color:var(--faint)}}
.load{display:flex;justify-content:center;margin-top:var(--s-6)}

.scale-card{padding:var(--s-5);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--card)}
.scale{position:relative;height:100px;margin:0 16px}
.scale .track{position:absolute;left:0;right:0;top:46px;height:6px;border-radius:3px;background:linear-gradient(90deg,var(--volt),var(--signal) 50%,var(--amber) 70%,var(--alert))}
.scale .limit{position:absolute;top:24px;height:50px;width:2px;background:var(--ink)}
.scale .limit span{position:absolute;top:-22px;left:50%;transform:translateX(-50%);white-space:nowrap;font:500 var(--t-11)/1 var(--mono);color:var(--ink)}
.scale .tick{position:absolute;top:80px;transform:translateX(-50%);font:500 var(--t-11)/1 var(--mono);color:var(--faint)}
.mark{position:absolute;top:33px;width:32px;height:32px;margin-left:-16px;border-radius:50%;border:2px solid var(--signal);background:var(--card);cursor:pointer;display:grid;place-items:center;font:500 .62rem/1 var(--mono);color:var(--ink);transition:background-color .15s,color .15s}
.mark:hover,.mark[aria-pressed="true"]{background:var(--signal);color:var(--on-signal)}
@media (max-width:560px){.mark:nth-of-type(odd){display:none}.scale .tick:nth-of-type(even){display:none}}
.ladder-out{display:grid;grid-template-columns:auto 1fr;gap:4px var(--s-5);align-items:center;margin-top:var(--s-4);padding-top:var(--s-4);border-top:1px solid var(--rule)}
.ladder-out .big{grid-row:span 2;font:700 var(--t-54)/1 var(--mono);color:var(--signal)}
.ladder-out h3{margin:0;font:700 var(--t-20)/1.2 var(--display);color:var(--ink)}
.ladder-out p{margin:0;color:var(--muted);font-size:var(--t-15)}
.ladder-out .safe{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;margin-top:var(--s-3);padding:var(--s-3) var(--s-4);border-radius:var(--r-1);background:var(--signal-soft);color:var(--ink)}
.ladder-out .safe b{font:500 var(--t-17)/1 var(--mono)}

.topics{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,13rem),1fr));gap:var(--s-3)}
.topic{display:grid;grid-template-columns:auto 1fr;gap:4px var(--s-3);align-items:center;padding:var(--s-4);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--card);text-decoration:none;color:inherit;transition:border-color .15s}
.topic:hover{border-color:var(--signal)}
.topic i{grid-row:span 2}
.topic b{font:700 var(--t-17)/1.25 var(--display);color:var(--ink)}
.topic span{font:500 var(--t-11)/1.3 var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--faint)}

.index{display:grid;gap:var(--s-3)}
.idx{display:grid;grid-template-columns:1fr auto;gap:4px var(--s-4);align-items:center;padding:var(--s-5);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--card);text-decoration:none;color:inherit;transition:border-color .15s}
.idx:hover{border-color:var(--signal)}
.idx .n,.idx .go,.meter .lv{display:none}
.idx h3{margin:0;font:700 var(--t-20)/1.25 var(--display);color:var(--ink)}
.idx p{grid-column:1/-1;margin:0;font-size:var(--t-15);color:var(--muted)}
.meter{grid-row:1;grid-column:2}
.meter .label{color:var(--signal)}
@media (min-width:880px){.index{grid-template-columns:1fr 1fr}}

.panels{display:grid;gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr))}
.panel{display:grid;gap:var(--s-3);align-content:start;padding:var(--s-5);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--card);text-decoration:none;color:var(--text);transition:border-color .15s,box-shadow .15s}
.panel:hover{border-color:var(--signal);box-shadow:var(--shadow)}
.panel .viz{height:80px;display:grid;place-items:center;border-radius:var(--r-1);background:var(--bg-2);border:1px solid var(--rule)}
.panel .viz svg{width:78%;height:66%}
.panel h3{margin:0;font:700 var(--t-20)/1.25 var(--display);color:var(--ink)}
.panel p{margin:0;font-size:var(--t-15);color:var(--muted)}
.panel .label{color:var(--signal)}

.paths{display:grid;gap:var(--s-4);grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr))}
.pth{display:block;padding:var(--s-5);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--card);text-decoration:none;color:inherit;transition:border-color .15s}
.pth:hover{border-color:var(--signal)}
.pth h3{margin:var(--s-2) 0;font:700 var(--t-20)/1.25 var(--display);color:var(--ink)}
.pth p{margin:0 0 var(--s-4);font-size:var(--t-15);color:var(--muted)}
.steps{display:flex;align-items:center}
.steps i{width:8px;height:8px;border-radius:50%;border:2px solid var(--signal);background:var(--card)}
.steps i:first-child{background:var(--signal)}
.steps b{flex:1;height:1px;background:var(--rule-2)}

.promise{display:grid;gap:var(--s-5);grid-template-columns:repeat(auto-fill,minmax(min(100%,16rem),1fr))}
.promise div{padding-top:var(--s-4);border-top:2px solid var(--signal)}
.promise svg{display:none}
.promise h3{margin:0 0 var(--s-2);font:700 var(--t-20)/1.25 var(--display);color:var(--ink)}
.promise p{margin:0;font-size:var(--t-15);color:var(--muted)}
.sources-band{display:flex;flex-wrap:wrap;gap:8px 20px;align-items:center;margin-top:var(--s-6);padding-top:var(--s-4);border-top:1px solid var(--rule);font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.sources-band span{color:var(--ink)}

.letter{display:grid;gap:var(--s-5);padding:var(--s-6);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--bg-2)}
.letter h2{margin:0 0 var(--s-2);font:700 var(--t-26)/1.2 var(--display);color:var(--ink)}
.letter p{margin:0;color:var(--muted)}
.letter form{display:flex;flex-wrap:wrap;gap:var(--s-3);align-self:center}
.letter input[type=email]{flex:1 1 220px;min-height:48px;padding:0 16px;border-radius:var(--r-1);border:1px solid var(--rule-2);background:var(--bg);color:var(--text)}
@media (min-width:880px){.letter{grid-template-columns:1fr 1fr;align-items:center}}

.phead{padding:var(--s-7) 0 var(--s-6);border-bottom:1px solid var(--rule)}
.crumbs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--s-4);font-size:var(--t-13);color:var(--faint)}
.crumbs a{color:var(--muted);text-decoration:none}
.crumbs a:hover{color:var(--signal);text-decoration:underline}
.phead h1{margin:0 0 var(--s-3);max-width:24ch;font:700 var(--t-54)/1.12 var(--display);letter-spacing:-.02em;color:var(--ink);text-wrap:balance}
.phead .lede{margin:0;max-width:62ch;font:400 var(--t-20)/1.6 var(--sans);color:var(--muted)}
.chnum{display:inline-block;margin-bottom:var(--s-3);font:500 var(--t-11)/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--signal)}

.meterbar{position:fixed;left:0;top:0;z-index:11;height:3px;width:100%;transform-origin:0 50%;transform:scaleX(0);background:var(--signal)}
.a-head{padding:var(--s-6) 0 var(--s-5)}
.a-head .tagline{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:var(--s-4)}
.pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;border:1px solid var(--rule-2);color:var(--muted);font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;text-decoration:none}
.pill:first-child{border-color:var(--signal);color:var(--signal)}
.pill.ymyl{border-color:var(--alert);color:var(--alert)}
.a-head h1{margin:0;max-width:26ch;font:700 var(--t-54)/1.14 var(--display);letter-spacing:-.02em;color:var(--ink);text-wrap:balance}
.a-head .dek{margin:var(--s-4) 0 0;max-width:62ch;font:400 var(--t-20)/1.6 var(--sans);color:var(--muted)}
.byl{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin-top:var(--s-5);padding:var(--s-3) 0;border-block:1px solid var(--rule);font-size:var(--t-13);color:var(--muted)}
.byl a{color:var(--ink);font-weight:600;text-decoration:none}
.byl a:hover{text-decoration:underline}
.byl .rev{color:var(--volt);font-weight:600}
.tools{display:flex;flex-wrap:wrap;gap:8px;margin-top:var(--s-4)}
.act{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 12px;border-radius:var(--r-1);border:1px solid var(--rule-2);background:var(--bg);font:600 var(--t-13)/1 var(--sans);color:var(--ink);cursor:pointer;text-decoration:none;transition:border-color .15s}
.act:hover{border-color:var(--signal)}
.act[aria-pressed="true"]{background:var(--signal);color:var(--on-signal);border-color:var(--signal)}
.act svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.cover{margin:0 0 var(--s-6);border-radius:var(--r-2);overflow:hidden;border:1px solid var(--rule);background:var(--bg-2)}
.cover img{width:100%;aspect-ratio:16/9;object-fit:cover}
.cover figcaption{padding:var(--s-3) var(--s-4);font-size:var(--t-13);color:var(--muted);border-top:1px solid var(--rule);background:var(--bg)}
.a-grid{display:grid;gap:var(--s-6);padding:0 0 var(--s-8)}
.a-main{min-width:0}
.rail{display:none}
.otp{order:-1}
.otp details{border:1px solid var(--rule);border-radius:var(--r-2);background:var(--bg-2)}
.otp summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;padding:var(--s-3) var(--s-4);font:600 var(--t-15)/1 var(--sans);color:var(--ink)}
.otp summary::-webkit-details-marker{display:none}
.otp summary::after{content:"+";font:500 1.2rem/1 var(--mono);color:var(--signal)}
.otp details[open] summary::after{content:"–"}
.otp ol{list-style:none;margin:0;padding:0 var(--s-2) var(--s-3);counter-reset:t;display:grid;gap:2px}
.otp li{counter-increment:t}
.otp a{display:grid;grid-template-columns:24px 1fr;gap:6px;padding:6px 8px;border-radius:var(--r-1);text-decoration:none;color:var(--muted);font-size:var(--t-13);line-height:1.4}
.otp a::before{content:counter(t,decimal-leading-zero);font:500 var(--t-11)/1.6 var(--mono);color:var(--faint)}
.otp a:hover{background:var(--bg);color:var(--ink)}
.otp a.on{background:var(--signal-soft);color:var(--ink)}
.otp a.on::before{color:var(--signal)}
@media (min-width:1024px){
  .a-grid{grid-template-columns:220px minmax(0,1fr);gap:var(--s-7)}
  .otp{position:sticky;top:120px;align-self:start}
  .otp details{background:transparent;border:0}
  .otp summary{pointer-events:none;padding:0 0 var(--s-3);border-bottom:1px solid var(--rule);font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
  .otp summary::after{display:none}
  .otp ol{padding:var(--s-3) 0 0}
}
@media (min-width:1240px){
  .a-grid{grid-template-columns:200px minmax(0,1fr) 300px;gap:var(--s-7)}
  .rail{display:grid;gap:var(--s-5);align-content:start;position:sticky;top:120px;align-self:start}
}
.rail .card{padding:var(--s-5);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--bg-2)}
.rail h4{margin:0 0 var(--s-3);font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.rail a.tl{display:block;padding:var(--s-3) 0;border-top:1px solid var(--rule);text-decoration:none;color:var(--ink);font:600 var(--t-15)/1.35 var(--sans)}
.rail a.tl:hover{color:var(--signal)}
.rail .ad-slot{margin:0;min-height:600px}

.short{margin:0 0 var(--s-6);padding:var(--s-5);border:1px solid var(--rule);border-left:3px solid var(--signal);border-radius:var(--r-2);background:var(--bg-2)}
.short .label{display:block;margin-bottom:var(--s-2);color:var(--signal)}
.short p{margin:0;font:400 var(--t-read)/1.65 var(--sans);color:var(--ink)}

.prose{font:400 var(--t-read)/1.72 var(--sans);color:var(--text)}
.prose>*{max-width:var(--measure)}
.prose h2{margin:2em 0 .6em;font:700 var(--t-36)/1.22 var(--display);letter-spacing:-.015em;color:var(--ink);text-wrap:balance}
.prose h3{margin:1.6em 0 .45em;font:700 var(--t-20)/1.35 var(--display);color:var(--ink)}
.prose h4{margin:1.4em 0 .4em;font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.prose p{margin:0 0 1.15em}
.prose strong{color:var(--ink);font-weight:700}
.prose ul,.prose ol{margin:0 0 1.3em;padding-left:1.3em}
.prose li{margin:.4em 0;padding-left:.2em}
.prose li::marker{color:var(--signal)}
.prose blockquote{margin:1.6em 0;padding:var(--s-4) var(--s-5);border-left:3px solid var(--signal);background:var(--bg-2);border-radius:0 var(--r-1) var(--r-1) 0;color:var(--ink)}
.prose blockquote p:last-child{margin:0}
.prose hr{border:0;height:1px;background:var(--rule);margin:2.4em 0}
.prose img{border-radius:var(--r-2)}
.prose figure{margin:2em 0}
.prose figcaption{margin-top:8px;font-size:var(--t-13);color:var(--muted)}
.prose code{font:500 .86em var(--mono);background:var(--well);padding:.12em .4em;border-radius:4px}
.prose a{color:var(--wave);font-weight:600}
.table-wrap{max-width:100%!important;overflow-x:auto;margin:1.6em 0;border:1px solid var(--rule);border-radius:var(--r-2)}
.prose table{width:100%;border-collapse:collapse;font:400 var(--t-15)/1.5 var(--sans)}
.prose thead th{padding:12px 16px;text-align:left;background:var(--bg-2);color:var(--ink);font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--rule-2)}
.prose td{padding:12px 16px;border-top:1px solid var(--rule);vertical-align:top}
.callout{margin:1.6em 0;padding:var(--s-4) var(--s-5);border:1px solid var(--rule-2);border-radius:var(--r-2);background:var(--bg-2);font-size:.97em}
.callout-t{margin:0 0 6px!important;font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink)}
.callout>*:last-child{margin-bottom:0}
.callout-tip,.callout-note{border-left:3px solid var(--volt)}
.callout-tip .callout-t,.callout-note .callout-t{color:var(--volt)}
.callout-warning,.callout-warn{border-left:3px solid var(--amber);background:var(--heat-soft)}
.callout-warning .callout-t,.callout-warn .callout-t{color:var(--amber)}
.callout-danger,.callout-urgent{border-left:3px solid var(--alert);background:var(--alert-soft)}
.callout-danger .callout-t{color:var(--alert)}
.callout-support{border:2px solid var(--signal);background:var(--bg)}
.ad-slot{max-width:var(--measure);min-height:280px;margin:2em 0;display:grid;place-items:center;border:1px solid var(--rule);border-radius:var(--r-1);background:var(--bg-2);contain:layout}
.ad-slot:empty::before{content:"Advertisement";font:500 .68rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}

.after{max-width:var(--measure);margin-top:var(--s-7);display:grid;gap:var(--s-7)}
.after h2{margin:0 0 var(--s-4);font:700 var(--t-26)/1.25 var(--display);color:var(--ink)}
.faq details{border-top:1px solid var(--rule)}
.faq details:last-child{border-bottom:1px solid var(--rule)}
.faq summary{position:relative;list-style:none;cursor:pointer;padding:var(--s-4) 40px var(--s-4) 0;font:700 var(--t-17)/1.45 var(--display);color:var(--ink)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:14px;font:500 1.3rem/1 var(--mono);color:var(--signal)}
.faq details[open] summary::after{content:"–"}
.faq .a{padding:0 0 var(--s-4);color:var(--text)}
.faq .a p{margin:0 0 .8em}
.srcs ol{margin:0;padding-left:1.4em;display:grid;gap:var(--s-2);font-size:var(--t-15);color:var(--muted)}
.srcs li::marker{font:500 .85em var(--mono);color:var(--signal)}
.srcs a{color:var(--ink);font-weight:600}
.srcs .ok{margin-left:8px;padding:1px 6px;border-radius:999px;border:1px solid var(--volt);color:var(--volt);font:500 .62rem/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;vertical-align:2px}
.notes{padding:var(--s-4) var(--s-5);border:1px solid var(--rule);border-radius:var(--r-2);background:var(--bg-2);font-size:var(--t-13);color:var(--muted)}
.notes p{margin:0 0 6px}.notes p:last-child{margin:0}
.nextup{display:grid;grid-template-columns:1fr auto;gap:var(--s-4);align-items:center;padding:var(--s-5);border:1px solid var(--signal);border-radius:var(--r-2);background:var(--signal-soft);color:var(--ink);text-decoration:none}
.nextup .label{color:var(--signal)}
.nextup b{display:block;margin-top:6px;font:700 var(--t-20)/1.3 var(--display)}
.nextup svg{width:24px;height:24px;fill:none;stroke:var(--signal);stroke-width:2}
.byline{display:grid;grid-template-columns:56px 1fr;gap:var(--s-4);align-items:center;padding:var(--s-5);border:1px solid var(--rule);border-radius:var(--r-2)}
.byline .av{width:56px;height:56px;border-radius:var(--r-1);overflow:hidden;background:var(--signal-soft);display:grid;place-items:center;font:700 1.3rem/1 var(--display);color:var(--signal)}
.byline .av img{width:100%;height:100%;object-fit:cover}
.byline h3{margin:0 0 2px;font:700 var(--t-17)/1.3 var(--display);color:var(--ink)}
.byline h3 a{color:inherit}
.byline p{margin:4px 0 0;font-size:var(--t-13);color:var(--muted)}
.share{display:flex;flex-wrap:wrap;gap:8px}
.share a,.share button{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border-radius:var(--r-1);border:1px solid var(--rule-2);background:var(--bg);font:600 var(--t-13)/1 var(--sans);color:var(--ink);text-decoration:none;cursor:pointer}
.share a:hover{border-color:var(--signal)}
.pinbox{display:grid;grid-template-columns:100px 1fr;gap:var(--s-4);align-items:center;padding:var(--s-4);border:1px solid var(--rule);border-radius:var(--r-2)}
.pinbox img{border-radius:var(--r-1);aspect-ratio:2/3;object-fit:cover}

body.focus .hdr,body.focus footer,body.focus .ad-slot,body.focus .otp,body.focus .rail,body.focus .more-reads,body.focus .share,body.focus .pinbox{display:none!important}
body.focus .a-grid{grid-template-columns:minmax(0,1fr)!important}
body.fs-lg .prose{--t-read:1.25rem}
body.fs-xl .prose{--t-read:1.375rem}

.body{padding:var(--s-7) 0 var(--s-8)}
.form{display:grid;gap:var(--s-4);max-width:560px}
.form label{display:grid;gap:6px;font:600 var(--t-13)/1.2 var(--sans);color:var(--ink)}
.form input,.form select,.form textarea{min-height:48px;padding:10px 14px;border-radius:var(--r-1);border:1px solid var(--rule-2);background:var(--bg)}
.form textarea{min-height:160px;resize:vertical}
.hp{position:absolute;left:-9999px}
.notice{margin:0 0 var(--s-4);padding:var(--s-4);border-radius:var(--r-1);font-size:var(--t-15)}
.notice.ok{background:var(--volt-soft);color:var(--ink)}
.notice.err{background:var(--alert-soft);color:var(--ink)}
.searchbox{display:flex;flex-wrap:wrap;gap:8px;max-width:640px;margin-top:var(--s-5)}
.searchbox input{flex:1 1 220px;min-height:52px;padding:0 18px;border-radius:var(--r-1);border:1px solid var(--rule-2);background:var(--bg);font-size:var(--t-17)}

.tool-card{border:1px solid var(--rule);border-radius:var(--r-2);background:var(--card);padding:clamp(18px,4vw,32px)}
.tool-q{margin:0 0 6px;font:700 var(--t-26)/1.25 var(--display);color:var(--ink)}
.tool-sub{margin:0 0 var(--s-4);color:var(--muted)}
.prog{height:6px;border-radius:3px;background:var(--well);overflow:hidden;margin-bottom:var(--s-5)}
.prog i{display:block;height:100%;width:0;background:var(--signal);transition:width .3s var(--ease)}
.opts{display:grid;gap:var(--s-2)}
.opt{display:block;width:100%;padding:var(--s-4);text-align:left;border:1px solid var(--rule-2);border-radius:var(--r-1);background:var(--bg);cursor:pointer;transition:border-color .15s,background-color .15s}
.opt:hover,.opt:focus-visible{border-color:var(--signal);background:var(--signal-soft)}
.opt b{display:block;color:var(--ink);font-weight:700}
.opt span{font-size:var(--t-13);color:var(--muted)}
.linkish{margin-top:var(--s-4);padding:0;border:0;background:none;color:var(--muted);text-decoration:underline;cursor:pointer}
.verdict{margin-bottom:var(--s-4);padding-left:var(--s-4);border-left:3px solid var(--signal)}
.verdict.hard{border-left-color:var(--alert)}
.verdict .v1{margin-bottom:6px;font:500 var(--t-11)/1 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.verdict .v2{margin-bottom:6px;font:700 var(--t-26)/1.2 var(--display);color:var(--ink)}
.metric{display:inline-flex;gap:8px;align-items:baseline;margin:4px 0 var(--s-4);padding:8px 14px;border-radius:var(--r-1);background:var(--signal-soft);font-family:var(--mono)}
.metric b{font-size:1.2rem;color:var(--ink)}
.steps-list{padding-left:1.2em}.steps-list li{margin:.5em 0}
.box-warn{margin:var(--s-4) 0;padding:var(--s-3) var(--s-4);border-left:3px solid var(--amber);border-radius:0 var(--r-1) var(--r-1) 0;background:var(--heat-soft)}
.box-hard{margin:var(--s-4) 0;padding:var(--s-3) var(--s-4);border-left:3px solid var(--alert);border-radius:0 var(--r-1) var(--r-1) 0;background:var(--alert-soft)}
.db-row{display:grid;grid-template-columns:64px 1fr;gap:6px var(--s-4);align-items:center;padding:var(--s-3) 0;border-bottom:1px solid var(--rule)}
.db-row .db{grid-row:span 2;font:500 1.25rem/1 var(--mono);color:var(--ink)}
.db-row .bar{height:8px;border-radius:4px;background:var(--well);overflow:hidden}
.db-row .bar i{display:block;height:100%;border-radius:4px}
.db-row .safe{grid-column:2;font:500 var(--t-11)/1.3 var(--mono);color:var(--muted)}
@media (min-width:720px){.db-row{grid-template-columns:78px 1fr auto}.db-row .db{grid-row:auto}.db-row .safe{grid-column:auto;min-width:92px;text-align:right}}
.range{width:100%;accent-color:var(--signal)}
.big-num{font:500 var(--t-54)/1 var(--mono);color:var(--ink)}
.grid-2{display:grid;gap:var(--s-5)}
@media (min-width:760px){.grid-2{grid-template-columns:1fr 1fr}}
table.tbl{width:100%;border-collapse:collapse;font-size:var(--t-15)}
table.tbl th,table.tbl td{padding:11px 12px;border-bottom:1px solid var(--rule);text-align:left;vertical-align:top}
table.tbl th{background:var(--bg-2);color:var(--ink);font:500 var(--t-11)/1.3 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.tag{display:inline-block;margin:4px 4px 0 0;padding:2px 8px;border-radius:999px;border:1px solid var(--rule-2);color:var(--muted);font:500 .66rem/1.5 var(--mono)}
.tag.yes{border-color:var(--volt);color:var(--volt)}
.tag.no{border-color:var(--alert);color:var(--alert)}
.chip{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border-radius:var(--r-1);border:1px solid var(--rule-2);background:var(--bg);font:600 var(--t-13)/1 var(--sans);color:var(--ink);cursor:pointer}
.chip[aria-pressed="true"]{background:var(--signal);color:var(--on-signal);border-color:var(--signal)}
select{background:var(--bg);color:var(--text)}

footer{margin-top:0;padding:var(--s-8) 0 var(--s-5);background:var(--bg-2);border-top:1px solid var(--rule);color:var(--muted)}
.f-big{display:none}
.f-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-6)}
.f-grid>div:first-child{grid-column:1/-1}
.f-grid h4{margin:0 0 var(--s-3);font:500 var(--t-11)/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink)}
.f-grid ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.f-grid a,.f-grid button{color:var(--muted);text-decoration:none;font-size:var(--t-15);background:none;border:0;padding:0;cursor:pointer;text-align:left}
.f-grid a:hover,.f-grid button:hover{color:var(--signal);text-decoration:underline}
.f-grid p{margin:var(--s-3) 0 0;max-width:40ch;font-size:var(--t-15)}
.f-base{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-3);margin-top:var(--s-7);padding-top:var(--s-4);border-top:1px solid var(--rule);font-size:var(--t-13);color:var(--faint)}
@media (min-width:880px){.f-grid{grid-template-columns:1.5fr repeat(3,1fr)}.f-grid>div:first-child{grid-column:auto}}

.consent{position:fixed;left:12px;right:12px;bottom:12px;z-index:30;display:none;max-width:560px;margin-inline:auto;padding:var(--s-5);border-radius:var(--r-2);background:var(--card);border:1px solid var(--rule-2);box-shadow:var(--shadow);font-size:var(--t-15)}
.consent.show{display:block}
.consent p{margin:0 0 var(--s-3)}
.consent .rowb{display:flex;flex-wrap:wrap;gap:8px}
.consent .btn{min-height:44px}

@media print{.hdr,footer,.otp,.rail,.ad-slot,.share,.more-reads,.consent,#loader,.meterbar,.pinbox,.tools{display:none!important}body{background:#fff;color:#000}.a-grid{display:block}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
