@font-face{font-family:"Inter Tight";src:url("fonts/inter-tight.woff2") format("woff2");font-weight:400 800;font-style:normal;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("fonts/jetbrains-mono.woff2") format("woff2");font-weight:400 700;font-style:normal;font-display:swap}
@font-face{font-family:Orbitron;src:url('fonts/orbitron.woff2') format('woff2');font-weight:700 900;font-display:swap}
:root{--bg:#0b1012;--surface:#151d20;--text:#eef4ef;--muted:#a4b4af;--lime:#d4ff00;--line:#2a3739;--cyan:#76ded2;--amber:#ffbf69;color-scheme:dark;font-family:var(--font-sans);scroll-behavior:smooth;scroll-padding-top:100px}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.6}a{color:inherit}button,input{font:inherit}button,a,input{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:wait;opacity:.5}img{max-width:100%;display:block}.wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}.section{padding-block:94px}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(58px,6.5vw,88px);font-weight:650}h2{font-size:clamp(34px,4vw,52px);font-weight:600}h3{font-size:25px;font-weight:600}em{font-style:normal;color:var(--lime)}.eyebrow{font:600 10px/1.5 var(--font-mono);letter-spacing:2px;color:var(--cyan);margin-bottom:22px}.header{height:90px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:20px}.brand{text-decoration:none;display:flex;align-items:center;gap:10px;font-size:19px;font-weight:700;letter-spacing:-.5px}.tag{background:#25321c;color:var(--lime);border:1px solid #44532a;border-radius:5px;font:600 9px/1.4 var(--font-mono);padding:5px 7px;letter-spacing:1px}.header nav{display:flex;gap:28px}.header nav a{font-size:13px;text-decoration:none;color:var(--muted)}a:hover{color:var(--lime)}.button{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:50px;background:var(--lime);color:#192000;padding:12px 21px;border:1px solid var(--lime);border-radius:7px;text-decoration:none;font-size:14px;font-weight:700;transition:transform .18s,background .18s}.button:hover{transform:translateY(-2px);color:#192000;background:#e2ff65}.button.small{min-height:42px;padding:8px 16px;font-size:12px}.text-link{border:0;background:transparent;color:var(--text);font-size:13px;text-decoration:none;padding:10px 0;display:inline-flex;gap:14px;align-items:center}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;padding-block:80px 72px}.status-dot{display:inline-block;width:6px;height:6px;background:var(--lime);border-radius:50%;margin-right:7px;box-shadow:0 0 0 4px #d4ff0014}.lede{font-size:17px;color:var(--muted);max-width:440px;margin-top:26px}.actions{display:flex;gap:24px;margin-top:32px;align-items:center;flex-wrap:wrap}.hero-note{font-size:11px;color:var(--muted);margin-top:15px}.surface-strip{display:flex;gap:24px;border-top:1px solid var(--line);padding-top:23px;margin-top:32px;font-size:11px;color:var(--muted)}.hero-visual{position:relative;background:#101719;border:1px solid var(--line);border-radius:16px;padding:20px;overflow:hidden;transform:rotate(2deg)}.visual-top,.visual-bottom{display:flex;justify-content:space-between;gap:10px;color:var(--muted);font:9px/1.6 var(--font-mono);letter-spacing:1px}.hero-visual>img{width:100%;height:300px;object-fit:cover;border-radius:7px;margin-top:18px}.signal-ticket{display:flex;gap:12px;align-items:center;padding:18px;background:#1b2626;border:1px solid #3a4b40;margin: -16px 6px 22px;position:relative;transform:rotate(-3deg);border-radius:9px}.signal-ticket b{font-size:14px;font-weight:600}.signal-ticket span:not(.ticket-mark){display:block;font-size:11px;color:var(--muted);margin-top:4px}.ticket-icon{background:var(--lime);color:#1c2400;font-size:24px;border-radius:6px;width:40px;height:40px;display:grid;place-items:center}.ticket-mark{font-size:30px;color:var(--lime);margin-left:auto}.principles{border-block:1px solid var(--line);background:#101719}.principles>.wrap{display:flex;justify-content:space-between;gap:24px;padding-block:20px}.principles p{font-size:12px;color:var(--muted)}.principles b{font:11px var(--font-mono);color:var(--lime);margin-right:12px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:40px}.section-heading>p{max-width:355px;color:var(--muted);font-size:14px}.lab{display:grid;grid-template-columns:1.1fr 1fr;border:1px solid var(--line);border-radius:16px;overflow:hidden;background:#101719}.controls{padding:32px 38px}.lab-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.reset{background:transparent;color:var(--muted);border:0;min-height:44px;font-size:12px}.slider-label{display:flex;justify-content:space-between;align-items:center;font-size:13px;margin-top:18px}.slider-label small,.check small{display:block;font-size:10px;color:var(--muted);margin-top:3px}.slider-label output{font:600 14px var(--font-mono);color:var(--lime)}input[type=range]{width:100%;accent-color:var(--lime);cursor:pointer;min-height:30px;margin:6px 0 0}.check{display:flex;gap:10px;align-items:start;margin-top:20px;font-size:12px;cursor:pointer;min-height:44px}.check input{width:17px;height:17px;accent-color:var(--lime);flex-shrink:0}.demo-result{padding:28px 38px;background:var(--surface);border-left:1px solid var(--line)}.result-header{display:flex;align-items:center;gap:10px;font:10px var(--font-mono);letter-spacing:1px}.demo-tag{margin-left:auto;color:var(--muted);font-size:9px}.gauge{--score:0;--gauge-color:var(--lime);width:174px;height:174px;margin:28px auto 12px;background:conic-gradient(var(--gauge-color) calc(var(--score)*1%),#2b373a 0);border-radius:50%;padding:9px;transform:rotate(-35deg)}.gauge>div{background:var(--surface);height:100%;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(35deg)}.gauge strong{font:700 43px Orbitron,var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:-3px}.gauge span{text-transform:uppercase;color:var(--muted);font:10px var(--font-mono);letter-spacing:2px;margin-top:5px}.coverage{text-align:center;font-size:11px;color:var(--muted);margin-bottom:24px}.factor{display:grid;grid-template-columns:120px 1fr 34px;align-items:center;gap:10px;font-size:11px;margin:10px 0;color:var(--muted)}.factor>span:last-child{text-align:right;font-family:var(--font-mono)}.factor-track{height:4px;background:#304043;border-radius:4px;overflow:hidden}.factor-fill{height:100%;background:var(--lime);border-radius:4px}.demo-warnings p{padding:9px 11px;border:1px solid #6b5030;background:#34291c;border-radius:5px;color:#ffcf8e;font-size:11px;margin-top:8px}.result-note{font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;margin-top:20px}.feature-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:18px}.feature{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:26px;display:flex;flex-direction:column}.feature-wide{background:#1a2420;border-color:#3c4c35}.feature-number{font:10px var(--font-mono);letter-spacing:1.5px;color:var(--muted)}.feature h3{margin-top:22px;min-height:58px}.feature p{color:var(--muted);font-size:13px;margin-top:14px;margin-bottom:26px}.feature-foot{margin-top:auto;padding-top:16px;border-top:1px solid #35433b;font:9px var(--font-mono);letter-spacing:1.5px;color:var(--lime)}.feature-art,.tweet-demo,.watch-demo{height:150px;display:flex;justify-content:center;align-items:center;gap:22px;margin-top:20px}.outline-ring{width:92px;height:92px;border:9px solid var(--lime);border-right-color:#394735;border-radius:50%;display:grid;place-items:center;color:var(--lime);font-size:35px;transform:rotate(-20deg)}.art-lines{display:grid;gap:12px;width:60px}.art-lines span{height:5px;background:#d4ff0055}.art-lines span:nth-child(2){width:65%}.art-lines span:nth-child(3){width:85%}.tweet-demo,.watch-demo{flex-direction:column;gap:10px;background:#0c1315;border:1px solid #2a3739;padding:16px;border-radius:8px;font-size:11px;color:var(--muted)}.tweet-demo code{color:var(--text);font-size:15px}.tweet-demo b{display:inline-grid;place-items:center;border:2px solid var(--lime);border-radius:50%;width:34px;height:34px;margin-left:7px;font-size:11px}.tweet-demo small,.watch-demo small{font-size:9px}.watch-demo{align-items:stretch;font-size:10px;gap:12px}.watch-demo>div{display:flex;align-items:center;gap:8px;color:var(--text)}.watch-demo b{margin-left:auto;color:var(--lime)}.watch-demo i{width:15px;height:15px;border-radius:4px;background:#648f80}.watch-demo div:nth-child(3) i{background:#8e764f}.truth{display:grid;grid-template-columns:1fr 1fr;gap:90px;border-top:1px solid var(--line)}.truth>div>p:last-child{color:var(--muted);font-size:14px;margin-top:24px;max-width:410px}.truth-list article{display:flex;gap:20px;padding:22px 0;border-bottom:1px solid var(--line)}.truth-list article:first-child{padding-top:0}.truth-list article>span{color:var(--cyan);font-size:24px}.truth-list h3{font-size:18px;letter-spacing:-.02em}.truth-list p{color:var(--muted);font-size:13px;margin-top:10px}.install-box{display:grid;grid-template-columns:1fr 1fr;gap:80px;background:#d4ff00;color:#1a230a;border-radius:16px;padding:54px}.install-box .eyebrow{color:#3a4d0b}.install-box>div>p:not(.eyebrow){font-size:14px;margin-top:20px;color:#3d501b}.install-box .button{background:#18220d;color:#eff9da;border-color:#18220d;margin-top:26px}.install-box .install-note{font-size:11px!important}.install-steps{padding:0;margin:0;list-style:none}.install-steps li{display:flex;gap:20px;padding-block:22px;border-bottom:1px solid #8aa819}.install-steps li:first-child{padding-top:0}.install-steps li>span{font:12px var(--font-mono);margin-top:3px}.install-steps h3{font-size:19px;letter-spacing:-.02em}.install-steps p{font-size:13px;margin-top:9px}.install-steps code{font-size:11px;background:#c1e728;padding:3px 5px;border-radius:4px;overflow-wrap:anywhere}.install-steps .text-link{color:#1a230a;text-decoration:underline}#copyStatus{font-size:11px;margin-left:10px}.faq{max-width:820px;padding-top:20px}.faq h2{margin-bottom:32px}.faq details{border-top:1px solid var(--line);padding:0 4px}.faq summary{cursor:pointer;padding:22px 0;font-size:15px;font-weight:600}.faq details p{color:var(--muted);font-size:14px;padding:0 20px 24px 0}.footer{border-top:1px solid var(--line);padding-block:32px 40px}.footer-top{display:flex;justify-content:space-between;gap:24px;align-items:center}.footer-top>p,.footer-top>a:last-child{color:var(--muted);font-size:12px}.disclaimer{font-size:10px;color:var(--muted);margin-top:25px}.skip{position:fixed;top:-100px;left:16px;z-index:99;background:var(--lime);color:#111;padding:10px}.skip:focus{top:10px}:where(a,button,input,summary):focus-visible{outline:3px solid var(--cyan);outline-offset:5px}[hidden]{display:none!important}
@media(min-width:1400px){.hero{padding-block:100px 90px}.hero-visual>img{height:340px}}
@media(max-width:950px){.wrap{width:calc(100% - 40px)}.hero{gap:24px}h1{font-size:62px}.hero-visual{padding:14px}.hero-visual>img{height:270px}.visual-bottom{font-size:7px}.signal-ticket{padding:12px;gap:9px}.ticket-mark{display:none}.signal-ticket b{font-size:12px}.signal-ticket span:not(.ticket-mark){font-size:10px}.feature-grid{grid-template-columns:1fr 1fr}.feature-wide{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px 30px}.feature-wide .feature-art{grid-column:2;grid-row:1/5;height:100%}.feature-wide h3{margin:0}.feature-wide .feature-foot{grid-column:1/-1}.truth{gap:40px}.install-box{gap:35px;padding:36px}.controls,.demo-result{padding:26px}.factor{grid-template-columns:110px 1fr 30px}}
@media(max-width:700px){.header{height:76px}.header nav{display:none}.brand{font-size:17px}.brand .tag{display:none}.hero{grid-template-columns:1fr;padding-top:48px;gap:42px}.hero-copy{max-width:500px}h1{font-size:70px}.hero-visual{max-width:500px;width:calc(100% - 8px);margin:auto}.hero-visual>img{height:auto}.principles>.wrap{flex-wrap:wrap;gap:10px 24px}.principles p{font-size:11px}.section{padding-block:62px}.section-heading{align-items:start;flex-direction:column;gap:22px}.section-heading>p{max-width:100%}.lab{grid-template-columns:1fr}.demo-result{border-left:0;border-top:1px solid var(--line)}.feature-grid{grid-template-columns:1fr}.feature-wide{display:flex;grid-column:auto;gap:0}.feature-wide .feature-art{height:150px}.feature h3{min-height:0}.truth{grid-template-columns:1fr;gap:36px}.install-box{grid-template-columns:1fr;padding:28px;gap:36px}.install-box h2 br{display:none}.footer-top{align-items:start;flex-wrap:wrap}.faq{padding-top:10px}.footer-top>p{width:100%;order:3}}
@media(max-width:380px){.wrap{width:calc(100% - 32px)}h1{font-size:59px}.controls,.demo-result{padding:20px}.surface-strip{gap:16px}.result-header{font-size:9px;gap:6px}}
@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}

/* Signal identity: flat geometry, quieter framing, clearer typography. */
.brand { font-size:21px; letter-spacing:-.8px; gap:11px; }
.brand > img { border-radius:9px; }
.hero h1 { font-weight:600; letter-spacing:-.065em; }
.hero-copy .eyebrow { font-size:10px; letter-spacing:1.6px; }
.signal-canvas { transform:none; padding:24px; background:#11191b; border:1px solid #303d3b; border-radius:18px; }
.signal-canvas .visual-top { align-items:center; letter-spacing:1.2px; }
.visual-chip { color:#d4ff00; border:1px solid #394732; border-radius:4px; padding:4px 6px; font-size:8px; }
.identity-stage { position:relative; height:280px; display:grid; place-items:center; overflow:hidden; margin:6px 0 0; }
.identity-stage .hero-mark { position:relative; width:110px; height:110px; z-index:2; }
.hero-squad, .install-squad { position:relative; z-index:2; display:flex; align-items:flex-end; justify-content:center; gap:4%; }
.identity-stage .hero-squad { width:94%; max-width:400px; filter:drop-shadow(0 18px 26px #00000066); }
.identity-stage .vs-character-slot { max-width:112px; }
.identity-stage .vs-character-slot.vs-character-lead { max-width:140px; }
.identity-stage { height:320px; place-items:end center; padding-bottom:16px; }
.install-squad { width:min(100%,260px); margin-top:26px; }
.vs-character-slot { width:30%; max-width:92px; }
.vs-character-slot.vs-character-lead { width:38%; max-width:116px; }
.vs-character { width:100%; height:auto; display:block; }
@media(max-width:700px) { .identity-stage .hero-squad { width:80%; } }
.orbit { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); border:1px solid #293734; border-radius:50%; pointer-events:none; }
.feature-mascot { width:84px; height:auto; }
.feature-mascot .vs-character { filter:drop-shadow(0 10px 18px #00000055); }
.orbit-one { width:178px; height:178px; }
.orbit-two { width:252px; height:252px; }
.orbit-three { width:328px; height:328px; border-style:dashed; border-color:#25312f; }
.axis { position:absolute; background:#263330; }
.axis-x { height:1px; width:100%; }
.axis-y { width:1px; height:100%; }
.signal-coordinate { position:absolute; font:8px var(--font-mono); letter-spacing:1px; color:#8c9e97; z-index:1; background:#11191b; padding:4px 0; }
.coordinate-a { left:0; top:66px; }
.coordinate-b { right:0; top:66px; }
.insight-ticket { position:relative; z-index:3; background:#1a2425; border:1px solid #38463f; border-radius:11px; padding:18px; margin:-4px 0 22px; }
.insight-title { display:flex; gap:7px; align-items:center; font:9px var(--font-mono); letter-spacing:1px; }
.signal-dot { height:5px; width:5px; border-radius:50%; background:var(--lime); }
.sample-label { margin-left:auto; color:var(--muted); font-size:8px; }
.insight-summary { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:14px 0 18px; }
.insight-summary strong { display:block; font-size:48px; line-height:1.1; font-weight:500; letter-spacing:-2px; font-variant-numeric:tabular-nums; }
.insight-summary strong>span { font-size:14px; letter-spacing:0; color:var(--muted); margin-left:5px; }
.insight-grade { font-size:10px; color:var(--muted); }
.insight-summary svg { width:44%; max-width:160px; height:52px; }
.insight-footer { border-top:1px solid #35423e; padding-top:11px; display:flex; gap:10px; justify-content:space-between; font-size:9px; color:var(--muted); }
.insight-footer a { color:var(--lime); text-decoration:none; }
.gauge strong { font-family:var(--font-sans); font-weight:500; font-size:53px; letter-spacing:-3px; }
.section-heading h2,.truth h2,.install-box h2 { letter-spacing:-.055em; }
.feature { transition:border-color .2s,transform .2s; }
.feature:hover { border-color:#52644f; transform:translateY(-3px); }
@media(max-width:950px) { .signal-canvas { padding:18px; }.identity-stage { height:300px; }.insight-title { font-size:8px; letter-spacing:.5px; }.insight-ticket { padding:14px; }.insight-footer { font-size:8px; } }
@media(max-width:700px) { .signal-canvas { padding:20px; }.identity-stage { height:310px; }.signal-canvas .visual-bottom { font-size:8px; }.hero { padding-top:54px; }.hero h1 { font-size:74px; }.insight-title { font-size:9px; }.insight-footer { font-size:9px; } }
@media(max-width:380px) { .hero h1 { font-size:64px; }.insight-footer { font-size:8px; } }
@media(prefers-reduced-motion:reduce) { .feature { transition:none; }.feature:hover { transform:none; } }

.brand-name { font-weight:650; }.brand-name>span { font-weight:400; color:var(--muted); }
/* Scenarios are useful entry points into the score, not separate demos. */
.scenario-rail { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.scenario-rail button { min-height:52px; padding:12px 14px; border:1px solid var(--line); border-radius:8px; background:#101719; color:var(--muted); text-align:left; font-size:12px; transition:border-color .18s,background .18s; }
.scenario-rail button>span { font:9px var(--font-mono); margin-right:8px; color:var(--muted); }
.scenario-rail button[aria-pressed=true] { border-color:#71873a; background:#24301a; color:#edfac9; }
.scenario-rail button:hover { border-color:#6a8051; }
.scenario-caption { margin:14px 0 22px; font-size:12px; color:var(--muted); min-height:38px; max-width:760px; }
.demo-explanation { text-align:center; font-size:10px; color:var(--muted); max-width:290px; margin:-12px auto 22px; line-height:1.6; }
.factor { grid-template-columns:125px 1fr 36px; margin:13px 0; }
.factor small { display:block; font-size:8px; margin-top:3px; color:#91a29c; }
.factor-unknown .factor-track { background:repeating-linear-gradient(90deg,#52615b 0 3px,transparent 3px 7px); height:2px; }
.demo-warnings .demo-neutral { border:1px solid #34443c; background:#1b2923; color:#bbcec0; }
.hero-signals { display:flex; align-items:end; gap:8px; height:55px; width:120px; }
.hero-signal { position:relative; height:100%; flex:1; border-radius:3px; background:#2b3934; overflow:hidden; }
.hero-signal>span { position:absolute; bottom:0; left:0; width:100%; background:var(--lime); border-radius:3px; }
.hero-signal.unknown { border:1px dashed #64756c; background:none; }
.insight-summary strong>#heroScore { font-size:48px; letter-spacing:-2px; color:var(--text); margin:0; }
@media(max-width:700px) { .scenario-rail { grid-template-columns:1fr 1fr; gap:8px; }.scenario-rail button { font-size:11px; padding:10px; }.scenario-caption { min-height:0; }.factor { grid-template-columns:125px 1fr 36px; } }
@media(prefers-reduced-motion:reduce) { .scenario-rail button { transition:none; } }
.playground .gauge { width:148px; height:148px; margin:18px auto 12px; }
.playground .factor { margin:10px 0; }
.playground .factor small { line-height:1.3; }
/* Live research workspace */
.research { border-top:1px solid var(--line); }
.research-workspace { display:grid; grid-template-columns:minmax(0,1fr) 280px; gap:24px; align-items:start; }
.research-main { min-width:0; }
.research-form { padding:24px; border:1px solid #455338; border-radius:12px; background:#141e19; }
.research-form label { display:block; font-size:12px; color:var(--muted); margin-bottom:10px; }
.research-input-row { display:flex; gap:10px; }
.research-input-row input { width:0; flex:1; min-width:0; min-height:50px; background:#0b1212; border:1px solid #405045; border-radius:7px; padding:12px; color:var(--text); font:12px var(--font-mono); }
.research-input-row input[aria-invalid=true] { border-color:var(--amber); }
.research-input-row .button { white-space:nowrap; font-size:12px; padding-inline:16px; }
.research-network { display:flex; gap:8px; align-items:center; color:#c6d5c2; margin-top:14px; font-size:10px; }
.research-network>span:last-child { margin-left:auto; color:var(--muted); }
.research-network .status-dot { margin-right:0; }
.research-status { font-size:12px; line-height:1.7; color:var(--muted); margin:14px 2px 22px; overflow-wrap:anywhere; }
.research-empty { min-height:360px; border:1px dashed #34423d; border-radius:12px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:36px; }
.research-empty>img { filter:invert(1); opacity:.8; margin-bottom:20px; }
.research-empty h3 { font-size:24px; }.research-empty p { color:var(--muted); font-size:13px; max-width:350px; margin-top:12px; }
.research-empty>div { display:flex; flex-wrap:wrap; justify-content:center; gap:18px; margin-top:28px; font:9px var(--font-mono); color:var(--muted); }
.research-empty.is-loading { background:repeating-linear-gradient(135deg,#1e2a211c 0 12px,transparent 12px 24px); }
.research-result { border:1px solid #34433b; border-radius:12px; background:#121b1c; padding:26px; }
.research-result-header { display:flex; align-items:start; justify-content:space-between; gap:18px; }.research-result-header>div { min-width:0; }.research-result-header .eyebrow { font-size:9px; margin-bottom:8px; }
.research-result-header h3 { font-size:28px; overflow-wrap:anywhere; }.research-result-header code { display:block; font-size:10px; color:var(--muted); overflow-wrap:anywhere; margin-top:10px; }
.quiet-button { background:#202e22; color:var(--lime); border:1px solid #4a5b34; border-radius:7px; min-height:42px; padding:9px 13px; font-size:11px; white-space:nowrap; }
.research-verdict { display:grid; grid-template-columns:150px 1fr; gap:30px; align-items:center; margin:28px 0; border-block:1px solid #2b3934; padding:24px 0; }
.research-score>span { display:block; font:10px var(--font-mono); text-transform:uppercase; letter-spacing:1px; color:var(--muted); }.research-score strong { display:block; font-size:66px; line-height:1.15; font-weight:500; letter-spacing:-4px; }.research-score>b { display:block; font-size:11px; color:var(--muted); font-weight:500; }
.evidence-label { display:flex; justify-content:space-between; gap:12px; font-size:10px; color:var(--muted); flex-wrap:wrap; }.evidence-label b { font-weight:500; color:var(--text); }.evidence-track { background:#2c3a33; height:5px; border-radius:3px; margin:12px 0; overflow:hidden; }.evidence-track>div { height:100%; background:var(--lime); }.research-evidence p { font-size:12px; color:var(--muted); }.research-evidence small { display:block; font-size:9px; color:#9ab0a2; margin-top:10px; }
.research-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:9px; }.research-metrics>div { background:#182322; border:1px solid #2c3c33; border-radius:8px; padding:12px; }.research-metrics span { display:block; color:var(--muted); font-size:9px; line-height:1.5; }.research-metrics b { display:block; font-weight:500; font-size:20px; margin-top:6px; font-variant-numeric:tabular-nums; }
.research-result summary { min-height:48px; padding-block:15px; color:#d1ded2; font-size:12px; cursor:pointer; }.research-breakdown,.research-checks { margin-top:18px; border-top:1px solid #304037; }
.research-factor { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(40px,1fr) 68px; align-items:center; gap:14px; margin:14px 0; font-size:12px; }.research-factor small { display:block; font-size:9px; color:var(--muted); margin-top:3px; }.research-factor>b { text-align:right; font:11px var(--font-mono); }.research-factor.is-unknown { color:var(--muted); }.research-factor.is-unknown .factor-track { background:#3b4541; }
.research-alerts { margin:22px 0; display:grid; gap:8px; }.research-alerts>p { font-size:12px; line-height:1.7; border:1px solid #655032; border-radius:7px; background:#30291e; color:#f1cf9a; padding:11px 13px; }
#researchChecks>div { display:flex; justify-content:space-between; align-items:start; gap:20px; border-top:1px solid #26372e; padding:10px 0; font-size:11px; }#researchChecks span { color:var(--muted); }#researchChecks b { font-weight:500; text-align:right; max-width:55%; }
.research-basis { font-size:10px; color:var(--muted); line-height:1.8; margin-top:16px; }
.research-result-footer { display:flex; gap:12px; justify-content:space-between; flex-wrap:wrap; border-top:1px solid #304037; margin-top:22px; padding-top:15px; }.research-result-footer>div { display:flex; align-items:center; gap:16px; }.research-result-footer a { font-size:11px; color:var(--lime); text-decoration:none; }.research-result-footer button { background:none; color:var(--text); border:0; padding:8px 0; min-height:40px; font-size:11px; }
.research-sidebar { background:#11191a; border:1px solid #2f3d36; border-radius:12px; padding:20px; position:sticky; top:24px; }.research-watch-header { display:flex; align-items:center; justify-content:space-between; }.research-watch-header h3 { font-size:18px; letter-spacing:-.5px; }.research-watch-header>span { color:var(--lime); background:#263421; border-radius:5px; padding:1px 7px; font:10px var(--font-mono); }.research-sidebar>p { font-size:10px; line-height:1.8; color:var(--muted); margin-top:10px; }.research-watch-tools { display:flex; gap:7px; margin:18px 0; }.research-watch-tools input { width:0; flex:1; min-width:0; }.research-watch-tools input,.research-watch-tools select { min-height:40px; padding:8px; color:var(--text); background:#0c1413; border:1px solid #34473b; border-radius:6px; font-size:10px; }
.web-watch-item { display:flex; align-items:center; gap:8px; border-top:1px solid #2c3a33; padding:10px 0; }.web-watch-open { display:flex; align-items:center; gap:10px; width:0; flex:1; min-width:0; border:0; background:none; color:var(--text); text-align:left; padding:5px 0; min-height:44px; }.web-watch-open>b { font-size:19px; font-weight:500; color:var(--lime); min-width:28px; }.web-watch-open>span { min-width:0; overflow-wrap:anywhere; font-size:11px; }.web-watch-open small { display:block; color:var(--muted); font:8px/1.8 var(--font-mono); margin-top:5px; }.web-watch-remove { width:32px; min-height:44px; background:none; border:0; color:var(--muted); font-size:18px; }
.research-policy { border-top:1px solid #304037; margin-top:26px; padding-top:18px; }.research-policy>b { font-size:12px; color:var(--lime); }.research-policy p { font-size:10px; color:var(--muted); line-height:1.8; margin-top:8px; }
@media(max-width:1050px) { .research-workspace { grid-template-columns:minmax(0,1fr) 250px; gap:18px; }.research-result { padding:20px; }.research-input-row { flex-wrap:wrap; }.research-input-row input { width:100%; flex-basis:100%; }.research-input-row .button { width:100%; }.research-network { flex-wrap:wrap; }.research-network>span:last-child { margin-left:0; }.research-verdict { grid-template-columns:120px 1fr; gap:18px; } }
@media(max-width:750px) { .research-workspace { grid-template-columns:1fr; }.research-sidebar { position:static; }.research-form { padding:18px; }.research-result-header h3 { font-size:23px; }.research-verdict { grid-template-columns:1fr; gap:16px; }.research-score { display:flex; gap:14px; flex-wrap:wrap; align-items:baseline; }.research-score>span { flex-basis:100%; }.research-score strong { font-size:58px; }.research-metrics { grid-template-columns:repeat(2,minmax(0,1fr)); }.research-factor { grid-template-columns:minmax(0,1fr) 54px; }.research-factor .factor-track { display:none; }.research-result-header { flex-wrap:wrap; }.research-result-footer>div { flex-wrap:wrap; } }
:where(select):focus-visible { outline:3px solid var(--cyan); outline-offset:4px; }
.research-source-failure { margin:12px 0 22px; color:var(--muted); font-size:11px; border:1px solid #5c4b31; background:#2c261b; padding:12px; border-radius:7px; }
.research-source-failure summary { cursor:pointer; min-height:30px; }.research-source-failure p { overflow-wrap:anywhere; margin-top:10px; }
.playground .factor { grid-template-columns:125px minmax(0,1fr) 58px; }.playground .gauge span { font-size:8px; letter-spacing:.8px; max-width:120px; text-align:center; line-height:1.5; }

/* Motion & character: idle life for the squad, scroll reveals, tactile hovers. */
@keyframes vsFloat { 0%,100% { transform:translateY(0) rotate(0deg); } 50% { transform:translateY(-10px) rotate(-.6deg); } }
@keyframes vsBlink { 0%,92%,100% { opacity:1; } 96% { opacity:.35; } }
@keyframes vsShadow { 0%,100% { transform:scaleX(1); opacity:.9; } 50% { transform:scaleX(.7); opacity:.45; } }
@keyframes vsRing { 0% { transform:scale(.4); opacity:.9; } 100% { transform:scale(2.4); opacity:0; } }
@keyframes vsLed { 0%,45% { opacity:1; } 55%,100% { opacity:.25; } }
.vs-character-slot, .feature-mascot { position:relative; isolation:isolate; --d:0s; }
.vs-character-slot { transition:transform .25s ease; }
.vs-character-slot:nth-child(1) { --d:-.6s; }
.vs-character-slot:nth-child(2) { --d:-2.1s; }
.vs-character-slot:nth-child(3) { --d:-3.4s; }
.vs-character-slot .vs-character, .feature-mascot .vs-character { animation:vsFloat 5.5s ease-in-out infinite; animation-delay:var(--d); }
.vs-character-slot::after, .feature-mascot::after { content:''; position:absolute; z-index:-1; left:16%; right:16%; bottom:-3px; height:9px; border-radius:50%; background:radial-gradient(closest-side,rgba(0,0,0,.5),transparent); animation:vsShadow 5.5s ease-in-out infinite; animation-delay:var(--d); }
.vsc-ring { transform-box:fill-box; transform-origin:center; animation:vsRing 2.2s ease-out infinite; }
.vsc-ring-2 { animation-delay:-1.1s; }
.vsc-led { animation:vsLed 1.4s steps(1) infinite; }
.vsc-led-2 { animation-delay:-.7s; }
.vsc-look { transition:transform .18s ease-out, opacity .15s ease; }
.vs-bubble { position:absolute; z-index:6; left:50%; bottom:calc(100% + 4px); display:grid; gap:2px; min-width:max-content; transform:translate(-50%,4px); opacity:0; pointer-events:none; background:#0c1315ee; border:1px solid #3a4b40; border-left:2px solid var(--lime); border-radius:5px; padding:6px 9px; transition:opacity .18s ease, transform .2s ease; }
.vs-bubble b { font:700 9px/1.2 var(--font-mono); letter-spacing:1.4px; color:var(--lime); }
.vs-bubble span { font:9px/1.3 var(--font-mono); color:var(--muted); }
:is(.vs-character-slot,.feature-mascot):hover .vs-bubble { opacity:1; transform:translate(-50%,0); }
.feature-mascot .vs-bubble { display:none; }
.vs-character-slot:first-child .vs-bubble { left:0; transform:translate(0,4px); }
.vs-character-slot:last-child .vs-bubble { left:auto; right:0; transform:translate(0,4px); }
.vs-character-slot:is(:first-child,:last-child):hover .vs-bubble { transform:translate(0,0); }
@keyframes vsEq { 0%,100% { transform:scaleY(1); } 35% { transform:scaleY(.55); } 70% { transform:scaleY(1.12); } }
@keyframes vsNeedle { 0%,100% { transform:rotate(-55deg); } 45% { transform:rotate(48deg); } 70% { transform:rotate(22deg); } }
.vsc-antenna-tip { animation:vsBlink 1.9s ease-in-out infinite; }
.vsc-pupil,.vsc-glint,.vsc-bar,.vsc-needle { transform-box:fill-box; }
.vsc-pupil,.vsc-glint { transform-origin:center; transition:transform .08s ease; }
.vsc-bar { transform-origin:50% 100%; animation:vsEq 1.6s ease-in-out infinite; }
.vsc-bar-2 { animation-delay:-.5s; }
.vsc-bar-3 { animation-delay:-1s; }
.vsc-needle { transform-origin:50% 100%; animation:vsNeedle 4.2s cubic-bezier(.5,0,.3,1) infinite; }
.feature-mascot { transition:transform .35s cubic-bezier(.2,.8,.3,1.4); }
.feature-wide:hover .feature-mascot { transform:translateY(-6px) scale(1.06) rotate(-3deg); }
.vs-character-slot:hover { transform:translateY(-5px) scale(1.07); }
.button { position:relative; overflow:hidden; }
.button::after { content:''; position:absolute; inset:0; background:linear-gradient(115deg,transparent 30%,#ffffff6b 48%,transparent 64%); transform:translateX(-120%); transition:transform .55s ease; }
.button:hover::after { transform:translateX(120%); }
.scroll-progress { position:fixed; top:0; left:0; height:3px; width:0%; background:linear-gradient(90deg,var(--cyan),var(--lime)); z-index:100; transition:width .08s linear; }
.reveal { opacity:0; transform:translateY(22px); transition:opacity .6s ease,transform .6s ease; }
.reveal.is-visible { opacity:1; transform:none; }
.signal-dot,.status-dot { animation:vsBlink 2.6s ease-in-out infinite; }
.scenario-rail button[aria-pressed="true"] { animation:none; }
.gauge { transition:filter .3s ease; }
.demo-result:has(#gauge) .gauge:hover { filter:drop-shadow(0 0 16px #d4ff0055); }
@media(prefers-reduced-motion:reduce) {
  .vs-character,.vs-character-slot::after,.feature-mascot::after,.vsc-antenna-tip,.vsc-bar,.vsc-needle,.vsc-ring,.vsc-led,.signal-dot,.status-dot { animation:none !important; }
  .vsc-ring { opacity:0; }
  .feature-mascot,.install-squad,.button::after,.reveal { transition:none !important; }
  .reveal { opacity:1; transform:none; }
}

/* Halftone wordmark footer (vanilla port of halftone-wordmark-footer). */
.hwf-root { --hwf-bg:#0b1012; --hwf-ink:#dfe7e1; --hwf-warm:#d4ff00; --hwf-mono:"JetBrains Mono","SF Mono",ui-monospace,Menlo,var(--font-mono); position:relative; width:100%; height:560px; overflow:hidden; isolation:isolate; margin-top:40px; background:var(--hwf-bg); color:var(--hwf-ink); border-top:1px solid var(--line); -webkit-font-smoothing:antialiased; }
.hwf-root canvas { position:absolute; inset:0; width:100%; height:100%; display:block; max-width:none; }
.hwf-top { position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.4fr) repeat(3,minmax(0,1fr)); gap:24px; width:min(1180px,calc(100% - 64px)); margin:0 auto; padding-top:clamp(24px,3.4vw,44px); font-family:var(--hwf-mono); font-size:10.5px; letter-spacing:.18em; text-transform:uppercase; line-height:1.75; }
.hwf-brand strong { display:block; font-weight:600; color:var(--lime); }
.hwf-brand span { display:block; opacity:.55; }
.hwf-brand .hwf-fine { max-width:380px; margin-top:12px; font-size:9px; letter-spacing:.08em; text-transform:none; opacity:.42; }
.hwf-col h3 { margin:0; font:inherit; opacity:.4; font-weight:500; letter-spacing:inherit; }
.hwf-col ul { list-style:none; margin:0; padding:0; }
.hwf-col a, .hwf-up { color:inherit; text-decoration:none; opacity:.8; background:none; border:0; padding:0; font:inherit; letter-spacing:inherit; text-transform:inherit; cursor:pointer; background-image:linear-gradient(currentColor,currentColor); background-size:0% 1px; background-repeat:no-repeat; background-position:0 100%; transition:opacity .25s ease, background-size .35s cubic-bezier(.2,.7,.1,1), color .25s ease; min-height:28px; display:inline-flex; align-items:center; }
.hwf-col a:hover, .hwf-up:hover { opacity:1; color:var(--lime); background-size:100% 1px; }
.hwf-col a:focus-visible, .hwf-up:focus-visible { outline:1px solid currentColor; outline-offset:3px; opacity:1; }
.hwf-rule { position:relative; z-index:1; display:flex; justify-content:space-between; align-items:center; gap:16px; width:min(1180px,calc(100% - 64px)); margin:clamp(18px,2.6vw,30px) auto 0; padding-top:12px; border-top:.5px solid color-mix(in srgb,var(--hwf-ink) 16%,transparent); font-family:var(--hwf-mono); font-size:10.5px; letter-spacing:.18em; text-transform:uppercase; }
.hwf-note { opacity:.45; }
.hwf-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
@media (max-width:720px) { .hwf-root { height:520px; } .hwf-top { grid-template-columns:minmax(0,1fr) minmax(0,1fr); row-gap:18px; width:calc(100% - 40px); } .hwf-brand { grid-column:1/-1; } .hwf-rule { width:calc(100% - 40px); } }
@media (prefers-reduced-motion:reduce) { .hwf-col a, .hwf-up { transition:none; } }

/* Print edition: the whole site speaks the footer's language — tracked mono
   labels, hairline rules, numbered sections, squarer surfaces, halftone + grain. */
:root { --mono:"JetBrains Mono","SF Mono",ui-monospace,Menlo,var(--font-mono); --hair:color-mix(in srgb,#dfe7e1 14%,transparent); }
body::after { content:''; position:fixed; inset:0; z-index:90; pointer-events:none; opacity:.07; mix-blend-mode:overlay; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E"); }
h1,h2 { font-family:var(--font-sans); font-weight:700; letter-spacing:-.055em; }
.hero h1 { font-weight:700; }

/* Hero halftone gauge, printed behind the content and reacting to the pointer. */
.hero { position:relative; isolation:isolate; }
.hero-halftone { position:absolute; inset:0 -32px; z-index:-1; pointer-events:none; --hwf-bg:transparent; --hwf-ink:#26342f; --hwf-warm:#d4ff00; }
.hero-halftone canvas { position:absolute; inset:0; width:100%; height:100%; display:block; max-width:none; }
.signal-canvas { background:color-mix(in srgb,#11191b 80%,transparent); backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px); }

/* Labels: tracked mono caps, like the footer columns. */
.eyebrow, .principles p, .feature-number, .feature-foot, .visual-top, .visual-bottom, .surface-strip, .hero-note, .tag, .demo-tag, .research-network, .signal-coordinate { font-family:var(--mono); letter-spacing:.18em; text-transform:uppercase; }
.eyebrow { font-size:10.5px; font-weight:500; color:var(--muted); }
.hero-copy .eyebrow { color:var(--cyan); }
.surface-strip, .hero-note { font-size:10px; }
main { counter-reset:vs-sec; }
:is(.section-heading,.truth>div,.install-box>div,.faq) > .eyebrow:first-child::before, .section-heading > div > .eyebrow:first-child::before { counter-increment:vs-sec; content:counter(vs-sec,decimal-leading-zero) " / "; color:var(--lime); }
.install-box .eyebrow::before { color:#1a230a !important; }
.section-heading { border-top:.5px solid var(--hair); padding-top:18px; }
.truth, .principles, .header { border-color:var(--hair); }

/* Navigation and links: mono caps with a hairline that draws in on hover. */
.header nav a { font-family:var(--mono); font-size:10.5px; letter-spacing:.18em; text-transform:uppercase; background-image:linear-gradient(currentColor,currentColor); background-size:0% 1px; background-repeat:no-repeat; background-position:0 100%; transition:background-size .35s cubic-bezier(.2,.7,.1,1), color .25s ease; padding-bottom:2px; }
.header nav a:hover { background-size:100% 1px; }
.text-link { font-family:var(--mono); font-size:11px; letter-spacing:.14em; text-transform:uppercase; }

/* Buttons: flat, squarer, tracked caps. */
.button { border-radius:4px; font-family:var(--mono); font-size:11.5px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.button.small { font-size:10.5px; }

/* Surfaces: hairlines and small radii instead of soft rounded cards. */
.signal-canvas, .insight-ticket, .lab, .feature, .install-box, .research-form, .research-result, .research-sidebar, .research-empty, .scenario-rail button, .research-metrics>div, .tweet-demo, .watch-demo, .quiet-button, .research-alerts>p, .demo-warnings p { border-radius:6px; }
.feature, .lab, .research-sidebar, .research-result, .signal-canvas, .insight-ticket { border-color:var(--hair); }
.feature:hover { border-color:color-mix(in srgb,var(--lime) 40%,transparent); }
.faq details { border-color:var(--hair); }
.faq summary { font-family:var(--font-sans); letter-spacing:-.01em; }

/* Numbers: print-style tabular figures. */
.insight-summary strong, .research-score strong, .gauge strong { font-family:var(--font-sans); font-weight:700; font-variant-numeric:tabular-nums; }
@media (prefers-reduced-motion:reduce) { .header nav a { transition:none; } }

/* Type system — one sans (Inter Tight) and one mono (JetBrains Mono), self-hosted,
   on a fixed scale. Everything below reads from these tokens. */
:root {
  --font-sans:"Inter Tight","Segoe UI",system-ui,-apple-system,sans-serif;
  --font-mono:"JetBrains Mono","SF Mono",ui-monospace,Consolas,monospace;
  --mono:var(--font-mono);
  --t-display:clamp(54px,7vw,100px); --t-h2:clamp(34px,4.1vw,54px); --t-h3:21px;
  --t-lede:18px; --t-body:15px; --t-small:13.5px; --t-label:10.5px; --t-micro:9.5px;
  --ink-2:#b7c5bf; --ink-3:#86968f;
  --frame:color-mix(in srgb,#dfe7e1 13%,transparent); --frame-strong:color-mix(in srgb,#dfe7e1 30%,transparent);
  font-family:var(--font-sans);
}
body { font-size:var(--t-body); line-height:1.6; text-rendering:optimizeLegibility; font-kerning:normal; }
h1, .hero h1 { font-family:var(--font-sans); font-size:var(--t-display); font-weight:700; line-height:.96; letter-spacing:-.045em; }
h2, .section-heading h2, .truth h2, .install-box h2, .faq h2 { font-family:var(--font-sans); font-size:var(--t-h2); font-weight:700; line-height:1.04; letter-spacing:-.038em; }
h3, .feature h3, .truth-list h3, .install-steps h3, .research-empty h3 { font-family:var(--font-sans); font-size:var(--t-h3); font-weight:600; line-height:1.2; letter-spacing:-.025em; }
.truth-list h3, .install-steps h3 { font-size:18px; }
.lede { font-size:var(--t-lede); line-height:1.55; color:var(--ink-2); max-width:46ch; }
.section-heading > p, .truth > div > p:last-child { font-size:var(--t-body); line-height:1.6; color:var(--ink-2); max-width:42ch; }
.feature p, .truth-list p, .faq details p, .install-steps p, .research-empty p, .scenario-caption { font-size:var(--t-small); line-height:1.65; color:var(--ink-2); }
.faq summary { font-size:17px; font-weight:600; letter-spacing:-.02em; }
.eyebrow, .feature-number, .visual-top, .visual-bottom, .principles p, .signal-coordinate, .result-header, .insight-title, .research-network, .tag, .demo-tag, .sample-label { font-family:var(--font-mono); font-size:var(--t-label); font-weight:500; letter-spacing:.16em; text-transform:uppercase; }
.eyebrow, .feature-number, .principles p { color:var(--ink-3); }
.feature-foot, .hero-note, .surface-strip, .research-basis, .result-note, .research-sidebar > p, .research-policy p { font-family:var(--font-mono); font-size:var(--t-micro); letter-spacing:.06em; line-height:1.8; }
.feature-foot { letter-spacing:.16em; text-transform:uppercase; }
code, output, .slider-label output, .research-factor > b, .factor > span:last-child { font-family:var(--font-mono); font-variant-numeric:tabular-nums; }
.insight-summary strong, .research-score strong, .gauge strong, .web-watch-open > b { font-family:var(--font-sans); font-weight:700; letter-spacing:-.05em; font-variant-numeric:tabular-nums; }
.button, .header nav a, .text-link { font-family:var(--font-mono); }
input, select, button { font-family:inherit; }
.research-input-row input { font-family:var(--font-mono); font-size:13px; letter-spacing:.02em; }

/* Frame system — every panel is the same object: surface, hairline border,
   6px radius, and print crop marks just outside its corners. */
.signal-canvas, .lab, .research-form, .research-result, .research-sidebar, .feature {
  position:relative; border:1px solid var(--frame); border-radius:6px; box-shadow:0 1px 0 color-mix(in srgb,#ffffff 4%,transparent) inset, 0 24px 48px -32px #00000080;
}
.signal-canvas::before, .lab::before, .research-form::before, .research-result::before, .research-sidebar::before, .feature::before {
  content:''; position:absolute; inset:-7px; pointer-events:none;
  --m:var(--frame-strong);
  background:
    linear-gradient(var(--m),var(--m)) top left/12px 1px, linear-gradient(var(--m),var(--m)) top left/1px 12px,
    linear-gradient(var(--m),var(--m)) top right/12px 1px, linear-gradient(var(--m),var(--m)) top right/1px 12px,
    linear-gradient(var(--m),var(--m)) bottom left/12px 1px, linear-gradient(var(--m),var(--m)) bottom left/1px 12px,
    linear-gradient(var(--m),var(--m)) bottom right/12px 1px, linear-gradient(var(--m),var(--m)) bottom right/1px 12px;
  background-repeat:no-repeat; transition:inset .3s cubic-bezier(.2,.7,.1,1);
}
.feature:hover::before, .lab:hover::before, .research-result:hover::before { inset:-10px; --m:color-mix(in srgb,var(--lime) 60%,transparent); }
.lab, .research-result { overflow:visible; }
.lab { background:#0f1618; }
.feature { background:#111a1c; }
.feature-wide { background:#152018; border-color:color-mix(in srgb,var(--lime) 18%,transparent); }
.insight-ticket, .research-metrics > div, .tweet-demo, .watch-demo, .scenario-rail button { border:1px solid var(--frame); border-radius:4px; }
.install-box { border-radius:6px; }
.visual-top, .result-header, .lab-heading { padding-bottom:12px; border-bottom:1px solid var(--frame); }
@media (prefers-reduced-motion:reduce) { .signal-canvas::before, .lab::before, .research-form::before, .research-result::before, .research-sidebar::before, .feature::before { transition:none; } }
.signal-canvas { overflow:visible; }
.demo-result { border-radius:0 6px 6px 0; }
@media (max-width:700px) { .demo-result { border-radius:0 0 6px 6px; } }

/* Decorative layers (hero halftone) may bleed past the content edge; never let them cause horizontal scroll. */
html, body { overflow-x:clip; }
/* The frame system sets position:relative; keep the research list sticky on desktop (sticky also anchors the crop marks). */
@media (min-width:751px) { .research-sidebar { position:sticky; } }

/* Holder map in the live report */
.research-holders { margin-top:18px; border-top:1px solid var(--frame); padding-top:14px; }
.research-holders h4 { margin:0 0 10px; font:500 var(--t-label)/1.4 var(--font-mono); letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3); }
.research-holders h4 span { letter-spacing:.04em; text-transform:none; margin-left:8px; opacity:.8; }
.research-holder { display:grid; grid-template-columns:minmax(150px,auto) 1fr 64px; align-items:center; gap:14px; padding:5px 6px; margin:0 -6px; border-radius:4px; text-decoration:none; color:var(--ink-2); font:11.5px var(--font-mono); }
.research-holder:hover { background:rgba(255,255,255,.035); color:var(--text); }
.research-holder > b { text-align:right; font-weight:500; font-variant-numeric:tabular-nums; }
.research-holder.is-launcher { color:#ffbf69; }
.research-holder.is-launcher .factor-fill { background:#ffbf69; }
@media (max-width:750px) { .research-holder { grid-template-columns:1fr 60px; } .research-holder .factor-track { display:none; } }

/* Halftone dial for every score number (shared halftone-gauge.js) */
.gauge { background:none; padding:0; transform:none; position:relative; width:200px; height:200px; }
.gauge > .gauge-dots { position:absolute; inset:0; }
.gauge > div:last-child { position:relative; background:transparent; transform:none; height:100%; margin-top:-6px; }
.gauge[data-painted] .hg-on { animation:none; }
.research-dial { position:relative; width:132px; height:132px; display:grid; place-items:center; margin:4px 0; }
.research-dial-dots { position:absolute; inset:0; }
.research-dial #researchScore { position:relative; font-size:48px; margin-top:-6px; }
@media (max-width:750px) { .research-dial { width:116px; height:116px; } .research-dial #researchScore { font-size:42px; } }

/* Our own token */
.token-card { position:relative; display:grid; grid-template-columns:220px 1fr; gap:44px; align-items:center; padding:36px 40px; background:#111a1c; border:1px solid var(--frame); border-radius:6px; }
.token-card::before { content:''; position:absolute; inset:-7px; pointer-events:none; --m:var(--frame-strong);
  background: linear-gradient(var(--m),var(--m)) top left/12px 1px, linear-gradient(var(--m),var(--m)) top left/1px 12px, linear-gradient(var(--m),var(--m)) top right/12px 1px, linear-gradient(var(--m),var(--m)) top right/1px 12px, linear-gradient(var(--m),var(--m)) bottom left/12px 1px, linear-gradient(var(--m),var(--m)) bottom left/1px 12px, linear-gradient(var(--m),var(--m)) bottom right/12px 1px, linear-gradient(var(--m),var(--m)) bottom right/1px 12px; background-repeat:no-repeat; }
.token-dial { position:relative; width:200px; height:200px; display:grid; place-items:center; }
.token-dial > div { position:absolute; inset:0; }
.token-dial strong { position:relative; font:700 56px/1 var(--font-sans); letter-spacing:-.05em; color:var(--ink-3); }
.token-kicker { font:500 var(--t-label)/1.4 var(--font-mono); letter-spacing:.16em; text-transform:uppercase; color:var(--lime); margin-bottom:10px; }
.token-info h3 { font-size:34px; letter-spacing:-.04em; }
.token-status { color:var(--ink-2); margin-top:10px; max-width:52ch; }
.token-contract { margin-top:8px; font:500 12px/1.4 var(--font-mono); color:var(--ink-3); word-break:break-all; }
.install-store { display:inline-flex; align-items:center; gap:10px; margin:0; }
.install-store[aria-disabled="true"] { opacity:.62; cursor:not-allowed; pointer-events:none; }
.install-store small { font:500 10px/1 var(--font-mono); letter-spacing:.14em; text-transform:uppercase; padding:4px 6px; border:1px solid currentColor; border-radius:3px; }
.install-actions { display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.token-rules { margin:18px 0 0; padding:0; list-style:none; display:grid; gap:8px; }
.token-rules li { position:relative; padding-left:20px; font-size:var(--t-small); color:var(--ink-2); }
.token-rules li::before { content:''; position:absolute; left:0; top:.65em; width:8px; height:1px; background:var(--lime); }
.token-actions { display:flex; gap:22px; align-items:center; flex-wrap:wrap; margin-top:22px; }
@media (max-width:760px) { .token-card { grid-template-columns:1fr; gap:20px; padding:24px; } .token-dial { width:160px; height:160px; } }

/* Docs */
.docs-layout { display:grid; grid-template-columns:220px minmax(0,1fr); gap:64px; padding-block:56px 96px; align-items:start; }
.docs-nav { position:sticky; top:24px; font-family:var(--font-mono); }
.docs-nav-title { font-size:var(--t-label); letter-spacing:.16em; text-transform:uppercase; color:var(--ink-3); margin-bottom:14px; }
.docs-nav ol { list-style:none; margin:0; padding:0; counter-reset:dn; border-left:1px solid var(--frame); }
.docs-nav li { counter-increment:dn; }
.docs-nav a { display:block; padding:6px 0 6px 14px; margin-left:-1px; border-left:1px solid transparent; font-size:11.5px; color:var(--ink-3); text-decoration:none; transition:color .2s ease, border-color .2s ease; }
.docs-nav a::before { content:counter(dn,decimal-leading-zero) "  "; color:var(--ink-3); opacity:.6; }
.docs-nav a:hover, .docs-nav a[aria-current] { color:var(--text); border-left-color:var(--lime); }
.docs-nav a[aria-current]::before { color:var(--lime); opacity:1; }
.docs-body { max-width:780px; }
.docs-hero { padding-bottom:36px; border-bottom:1px solid var(--frame); margin-bottom:8px; }
.docs-hero h1 { font-size:clamp(44px,5.4vw,72px); margin-top:4px; }
.docs-hero .lede { max-width:62ch; margin-top:20px; }
.docs-body section { padding-top:48px; scroll-margin-top:24px; }
.docs-body h2 { font-size:clamp(28px,3vw,38px); display:flex; align-items:baseline; gap:14px; margin-bottom:18px; }
.docs-body h2 span { font:500 13px var(--font-mono); letter-spacing:.1em; color:var(--lime); }
.docs-body h3 { font-size:19px; margin:26px 0 10px; }
.docs-body p, .docs-body li, .docs-body dd { color:var(--ink-2); font-size:15px; line-height:1.7; }
.docs-body p + p { margin-top:12px; }
.docs-body code { font:12.5px var(--font-mono); background:#16201f; border:1px solid var(--frame); border-radius:3px; padding:1px 5px; color:var(--text); }
.docs-body a { color:var(--lime); }
.note { margin-top:18px; padding:14px 16px; border:1px solid color-mix(in srgb,var(--lime) 30%,transparent); border-left:2px solid var(--lime); border-radius:4px; background:#141d16; }
.docs-grid-2 { display:grid; grid-template-columns:1fr 1fr; gap:14px; margin:18px 0; }
.docs-card { padding:18px 20px; background:#111a1c; border:1px solid var(--frame); border-radius:6px; }
.docs-card h3 { margin-top:0; font-size:16px; }
.docs-card ul, .docs-list { margin:10px 0 0; padding-left:18px; display:grid; gap:6px; }
.docs-steps { margin:12px 0; padding-left:20px; display:grid; gap:10px; }
.docs-formula { margin:14px 0; padding:12px 16px; font:13px/1.6 var(--font-mono); color:var(--text); background:#0e1517; border:1px solid var(--frame); border-radius:4px; overflow-x:auto; white-space:nowrap; }
.docs-formula b { color:var(--lime); }
.docs-table-wrap { overflow-x:auto; margin:14px 0; border:1px solid var(--frame); border-radius:6px; }
.docs-table { width:100%; border-collapse:collapse; font-size:13.5px; }
.docs-table th { text-align:left; font:500 var(--t-label)/1.4 var(--font-mono); letter-spacing:.12em; text-transform:uppercase; color:var(--ink-3); background:#0f1618; padding:10px 14px; border-bottom:1px solid var(--frame); }
.docs-table td { padding:10px 14px; border-bottom:1px solid color-mix(in srgb,#dfe7e1 7%,transparent); color:var(--ink-2); vertical-align:top; }
.docs-table tr:last-child td { border-bottom:0; }
.docs-table td:first-child { color:var(--text); }
.docs-table-compact { max-width:360px; }
.sev-high { color:#ff9a6b !important; font-family:var(--font-mono); font-size:12px; }
.sev-med { color:#ffcf8e !important; font-family:var(--font-mono); font-size:12px; }
.sev-heur { color:var(--ink-3) !important; font-family:var(--font-mono); font-size:12px; }
.docs-factor, .docs-mech { margin-top:18px; padding:20px 22px; background:#101819; border:1px solid var(--frame); border-radius:6px; }
.docs-factor h3, .docs-mech h3 { margin:0 0 6px; display:flex; align-items:baseline; gap:10px; }
.docs-factor h3 em { font:500 12px var(--font-mono); font-style:normal; color:var(--lime); border:1px solid color-mix(in srgb,var(--lime) 35%,transparent); border-radius:3px; padding:1px 6px; }
.docs-mech h3 span { font:600 12px var(--font-mono); color:#0b1012; background:var(--lime); border-radius:3px; padding:1px 7px; }
.docs-mech-off h3 span { background:var(--ink-3); }
.docs-limit { font-size:13.5px !important; color:var(--ink-3) !important; border-top:1px dashed var(--frame); padding-top:10px; margin-top:12px !important; }
.docs-glossary { display:grid; grid-template-columns:180px 1fr; gap:10px 24px; margin:14px 0 0; }
.docs-glossary dt { font:500 13px var(--font-mono); color:var(--text); }
.docs-glossary dd { margin:0; }
.docs-changelog { list-style:none; padding:0; margin:12px 0 0; display:grid; gap:8px; }
.docs-changelog b { display:inline-block; min-width:52px; font:600 12px var(--font-mono); color:var(--lime); }
@media (max-width:900px) { .docs-layout { grid-template-columns:1fr; gap:28px; } .docs-nav { position:static; } .docs-nav ol { columns:2; } }
@media (max-width:600px) { .docs-grid-2, .docs-glossary { grid-template-columns:1fr; } .docs-nav ol { columns:1; } }
.docs-table-wrap:has(.docs-table-compact) { max-width:360px; }

/* Crew perched on frames: feet on the frame's top line, each where its job is. */
.vs-perch { position:absolute; bottom:100%; margin-bottom:-3px; width:64px; z-index:3; cursor:default; transition:transform .25s cubic-bezier(.3,.7,.4,1.4); }
.vs-perch-right { right:32px; }
.vs-perch-left { left:32px; }
.vs-perch .vs-character { display:block; width:100%; height:auto; filter:drop-shadow(0 6px 10px #0008); }
.vs-perch:hover { transform:translateY(-3px); }
.vs-perch:hover .vs-bubble { opacity:1; transform:translate(-50%,0); }
.vs-perch-right .vs-bubble { left:auto; right:0; transform:translate(0,4px); }
.vs-perch-right:hover .vs-bubble { transform:translate(0,0); }
.vs-perch-left .vs-bubble { left:0; transform:translate(0,4px); }
.vs-perch-left:hover .vs-bubble { transform:translate(0,0); }
.research-form, .token-card { margin-top:58px; }
.lab { margin-top:64px; }
.vsc-pupil { transition:fill .4s ease; }
.vs-character[data-role="gauge"] .vsc-pupil polygon { fill:var(--vsc-eye, var(--vsc-eye-base)); transition:fill .4s ease; }
@media (max-width:700px) { .vs-perch { width:52px; } .vs-perch-right { right:18px; } .vs-perch-left { left:18px; } }

/* Docs hero crew */
.docs-hero { position:relative; }
.docs-crew { position:absolute; right:0; top:-8px; display:flex; align-items:flex-end; gap:6px; width:210px; }
.docs-crew .vs-character-slot { width:30%; max-width:62px; }
.docs-crew .vs-character-slot.vs-character-lead { width:38%; max-width:78px; }
.docs-crew .vs-bubble { display:none; }
@media (max-width:1100px) { .docs-crew { position:static; margin-bottom:18px; width:170px; } }
.research-form > .vs-perch { right:auto; left:54%; }
@media (max-width:1050px) { .research-form > .vs-perch { left:auto; right:18px; } }
.token-card > .vs-perch { right:auto; left:54%; }
@media (max-width:1050px) { .token-card > .vs-perch { left:auto; right:18px; } }
.docs-crew { position:static; margin:0 0 16px; width:180px; }

/* Evidence remains legible beside the score; severity is also written in text. */
.risk-summary { border-left:3px solid #e7bb73; background:#242419; padding:12px; color:#f5deb5; line-height:1.65; }
.risk-summary[data-level="High observed risk"] { border-color:#ff957f; background:#2c1d1c; color:#ffd0c6; }
.risk-summary[data-level="Unresolved"] { border-color:#91b7cb; background:#19262c; color:#c8dfeb; }
button:focus-visible, a:focus-visible, summary:focus-visible { outline:2px solid #d4ff00; outline-offset:3px; }
button:disabled { cursor:not-allowed; opacity:.6; }

.risk-label { display:inline-block; margin:6px 0; padding:5px 8px; border:1px solid #9e8153; border-radius:4px; color:#f5deb5; background:#242419; font:600 12px/1.4 sans-serif; letter-spacing:0; }
.risk-label[data-level="High observed risk"] { color:#ffd0c6; border-color:#b66f61; background:#2c1d1c; }
.risk-label[data-level="Unresolved"] { color:#c8dfeb; border-color:#527c91; background:#19262c; }

/* One crew scene in the landing hero; individual guides elsewhere. */
.vs-character { overflow:visible; }
.vs-character-solo { position:relative; display:block; width:86px; flex:none; }
.install-guide { display:flex; align-items:center; gap:20px; margin-top:28px; }
.install-guide p { font-size:14px; color:var(--text); }
.install-guide small { color:var(--muted); font-size:12px; }
.install-guide .vs-bubble, .docs-guide .vs-bubble { display:none; }
.docs-guide { margin-bottom:20px; }
.docs-guide .vs-character-solo { width:74px; }
.vsc-pupil { animation:vsEyeBlink 5.4s infinite; }
.vs-character[data-role="scan"] .vsc-pupil { animation-delay:-1.1s; }
.vs-character[data-role="bars"] .vsc-pupil { animation-delay:-2.7s; }
@keyframes vsEyeBlink { 0%,93%,97%,100% { transform:scaleY(1); } 95% { transform:scaleY(.12); } }
@media(prefers-reduced-motion:reduce) { .vsc-pupil { animation:none; } .vsc-look { transition:none; } }

/* Section guides reserve their own space; only the hero shows the full crew. */
[data-vs-character]:not(.is-character-visible) :is(.vs-character,.vsc-pupil,.vsc-bar,.vsc-needle,.vsc-antenna-tip) { animation-play-state:paused; }
[data-vs-character]:not(.is-character-visible)::after { animation-play-state:paused; }
.vs-perch { max-width:20%; }
.research-form, .token-card { margin-top:88px; }
.lab { margin-top:96px; }
.evidence-art .outline-ring { font:600 30px var(--font-mono); }
@media(max-width:700px) { .research-form, .token-card { margin-top:80px; } .lab { margin-top:84px; } }

/* Scout communicates request progress, never an investment/safety verdict. */
.research-phase { padding:4px 8px; border:1px solid var(--line); border-radius:4px; color:var(--muted); font-size:10px; letter-spacing:.03em; }
.research-form[data-state="loading"] .research-phase { color:#c8dfeb; border-color:#527c91; }
.research-form[data-state="partial"] .research-phase { color:#f5deb5; border-color:#9e8153; }
.research-form[data-state="error"] .research-phase { color:#ffd0c6; border-color:#b66f61; }
.research-form[data-state="complete"] .research-phase { color:#c8dfeb; border-color:#527c91; }
[data-vs-character][data-state="loading"] .vsc-screen { animation:vsReadPulse 1.4s ease-in-out infinite; }
[data-vs-character][data-state="partial"] .vsc-screen polygon { fill:#e7bb73; }
[data-vs-character][data-state="error"] .vsc-screen polygon { fill:#dc9281; }
[data-vs-character][data-state="complete"] .vsc-screen polygon { fill:#a5cdd7; }
@keyframes vsReadPulse { 0%,100% { opacity:1; } 50% { opacity:.4; } }
@media(prefers-reduced-motion:reduce) { .vsc-screen { animation:none !important; } }

.research-network { flex-wrap:wrap; }

@media(max-width:420px) { .research-network { gap:8px 6px; letter-spacing:.06em; } .research-phase { flex-basis:100%; margin-left:0 !important; width:fit-content; } }

/* Character acts (set by characters.js as data-act). Origin at the feet so every move reads as weight. */
[data-vs-character] .vs-character { transform-origin:50% 100%; }
[data-vs-character]:not([data-entered]) .vs-character { opacity:0; }
[data-vs-character][data-act] .vs-character { animation-duration:var(--vs-act-ms,.65s); animation-timing-function:cubic-bezier(.3,.7,.4,1); animation-iteration-count:1; animation-fill-mode:both; }
[data-vs-character][data-act="enter"] .vs-character { --vs-act-ms:.9s; animation-name:vsActEnter; }
[data-vs-character][data-act="hop"] .vs-character { animation-name:vsActHop; }
[data-vs-character][data-act="nod"] .vs-character { animation-name:vsActNod; }
[data-vs-character][data-act="scan"] .vs-character { --vs-act-ms:1.7s; animation-name:vsActScan; animation-timing-function:ease-in-out; }
[data-vs-character][data-act="cheer"] .vs-character { --vs-act-ms:1.2s; animation-name:vsActCheer; }
@keyframes vsActEnter { 0% { opacity:0; transform:translateY(-34px) scale(.9); } 55% { opacity:1; transform:translateY(0) scale(1.06,.9); } 75% { transform:translateY(-5px) scale(.98,1.03); } 100% { opacity:1; transform:none; } }
@keyframes vsActHop { 0%,100% { transform:none; } 15% { transform:scale(1.05,.92); } 45% { transform:translateY(-16px) scale(.97,1.04); } 80% { transform:scale(1.04,.94); } }
@keyframes vsActNod { 0%,100% { transform:none; } 30% { transform:rotate(-6deg); } 65% { transform:rotate(4deg); } }
@keyframes vsActScan { 0%,100% { transform:none; } 20% { transform:translateX(-4px) rotate(-4deg); } 50% { transform:translateX(4px) rotate(4deg); } 80% { transform:translateX(-2px) rotate(-2deg); } }
@keyframes vsActCheer { 0%,100% { transform:none; } 12% { transform:scale(1.06,.9); } 30% { transform:translateY(-18px) rotate(-5deg); } 48% { transform:scale(1.05,.93); } 66% { transform:translateY(-12px) rotate(5deg); } 84% { transform:scale(1.03,.96); } }
[data-vs-character] { cursor:pointer; -webkit-tap-highlight-color:transparent; }
[data-vs-character].vs-bubble-on .vs-bubble { opacity:1; }
@media (prefers-reduced-motion:reduce) { [data-vs-character] .vs-character { opacity:1 !important; animation:none !important; } }

/* Research report: compact summary in the page, full report in a modal dialog. */
.research-summary { display:grid; grid-template-columns:96px minmax(0,1fr) auto; gap:20px; align-items:center; margin-top:18px; border:1px solid #34433b; border-radius:12px; background:#121b1c; padding:18px 22px; }
.research-summary-dial { position:relative; width:96px; height:96px; display:grid; place-items:center; }
.research-summary-dial > div { position:absolute; inset:0; } .research-summary-dial svg { width:100%; height:100%; }
.research-summary-dial strong { position:relative; font:700 30px/1 var(--font-sans); letter-spacing:-.04em; }
.research-summary-info h3 { font-size:20px; margin:4px 0 2px; overflow-wrap:anywhere; } .research-summary-info p:last-child { color:var(--muted); font-size:13px; margin:0; }
@media(max-width:750px) { .research-summary { grid-template-columns:72px minmax(0,1fr); } .research-summary-dial { width:72px; height:72px; } .research-summary .button { grid-column:1/-1; } }
.research-dialog { width:min(920px,calc(100vw - 32px)); max-height:calc(100dvh - 48px); padding:0; border:1px solid #3a4b40; border-radius:14px; background:#0e1617; color:var(--text); overflow:auto; overscroll-behavior:contain; box-shadow:0 30px 80px #000c; }
.research-dialog::backdrop { background:#050909cc; backdrop-filter:blur(4px); }
.research-dialog[open] { animation:vsDialogIn .22s cubic-bezier(.2,.8,.3,1); }
@keyframes vsDialogIn { from { opacity:0; transform:translateY(14px) scale(.985); } }
.research-dialog-bar { position:sticky; top:0; z-index:5; display:flex; justify-content:space-between; align-items:center; gap:12px; padding:10px 14px 10px 22px; background:#0e1617f2; border-bottom:1px solid #2a3832; font:500 11px/1 var(--font-mono); letter-spacing:.14em; text-transform:uppercase; color:var(--muted); }
.research-dialog-bar > div { display:flex; gap:8px; align-items:center; }
.research-close { width:40px; height:40px; border-radius:8px; border:1px solid #34433b; background:none; color:var(--text); font-size:15px; cursor:pointer; }
.research-close:hover, .research-close:focus-visible { border-color:var(--lime); color:var(--lime); }
.research-dialog .research-result { border:0; border-radius:0; background:none; }
@media(prefers-reduced-motion:reduce) { .research-dialog[open] { animation:none; } }
@media print {
  html.vs-print-report body > *:not(main), html.vs-print-report main > *:not(#research), html.vs-print-report #research > *:not(.research-workspace), html.vs-print-report .research-sidebar, html.vs-print-report .research-main > *:not(dialog), html.vs-print-report .research-dialog-bar, html.vs-print-report .scroll-progress { display:none !important; }
  html.vs-print-report .research-dialog { position:static; display:block; width:auto; max-height:none; overflow:visible; border:0; box-shadow:none; }
  html.vs-print-report, html.vs-print-report body { background:#0e1617 !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
  html.vs-print-report .research-breakdown, html.vs-print-report .research-checks { break-inside:avoid; }
}
.tw-caret { display:inline-block; width:.07em; height:.82em; margin-left:.05em; vertical-align:-.04em; background:var(--lime); animation:vsCaret 1s steps(1) infinite; }
@keyframes vsCaret { 50% { opacity:0; } }
.hero h1 { position:relative; }
.tw-ghost { visibility:hidden; display:block; }
.tw-live { position:absolute; inset:0; }

/* Hero line-up: lit pads, name plates and a staggered arrival. */
.hero-squad .vs-character-slot { display:flex; flex-direction:column; align-items:center; padding-bottom:34px; }
.hero-squad .vs-character-slot::before { content:''; position:absolute; z-index:-2; left:2%; right:2%; bottom:26px; height:22px; border-radius:50%; background:radial-gradient(closest-side, color-mix(in srgb, var(--vsc-tone, #d4ff00) 42%, transparent), transparent); border:1px solid color-mix(in srgb, var(--vsc-tone, #d4ff00) 35%, transparent); }
.hero-squad .vs-character-slot::after { bottom:29px; }
.hero-squad .vs-character-slot:nth-child(2) { --vs-enter-delay:.14s; }
.hero-squad .vs-character-slot:nth-child(3) { --vs-enter-delay:.28s; }
.hero-squad [data-act="enter"] .vs-character { animation-delay:var(--vs-enter-delay,0s); }
.vs-nameplate { position:absolute; bottom:0; left:50%; transform:translateX(-50%); display:grid; justify-items:center; gap:1px; white-space:nowrap; font-family:var(--font-mono); pointer-events:none; }
.vs-nameplate b { font-size:9px; letter-spacing:.2em; color:var(--vsc-tone, var(--lime)); }
.vs-nameplate small { font-size:8px; letter-spacing:.08em; color:var(--muted); text-transform:uppercase; }
.hero-squad .vs-bubble { display:none; }
.identity-stage .hero-squad { filter:none; }
.hero-squad .vs-character { filter:drop-shadow(0 14px 18px #0009); }
@media(max-width:700px) { .vs-nameplate small { display:none; } .hero-squad .vs-character-slot { padding-bottom:22px; } .hero-squad .vs-character-slot::before { bottom:16px; } .hero-squad .vs-character-slot::after { bottom:19px; } }
.hero-squad { transition:transform .6s cubic-bezier(.2,.8,.2,1); will-change:transform; }
