/* ============================================================
   Modeljury — "Neon Verdict" design system
   Gold/dark brand fused with RB2B-style neon energy.
   Used by: index.html, dashboard.html, pricing.html
   ============================================================ */
*{box-sizing:border-box}
:root{
  --bg:#0A0B0E; --bg2:#0E1014; --panel:#14161D; --panel2:#191C24;
  --line:rgba(255,255,255,.09); --line2:rgba(255,255,255,.15);
  --ink:#F3F5F8; --muted:#99A2B2; --faint:#646E7E;
  --gold:#F2871E; --gold2:#FFA340; --goldsoft:rgba(var(--gold-rgb),.14); --gold-rgb:242,135,30;
  --neon:#C9FF3D; --neon2:#A6E62B; --neonsoft:rgba(201,255,61,.12); --neon-ink:var(--neon);
  --cyan:#3BE3FF; --pink:#FF4D8D;
  --sans:'Inter',system-ui,-apple-system,sans-serif;
  --disp:'Schibsted Grotesk','Inter',sans-serif;
  --mono:'JetBrains Mono',ui-monospace,monospace;
  --r:14px; --rsm:10px; --rlg:22px; --ease:cubic-bezier(.2,.7,.2,1);
  --glow:0 0 0 1px rgba(201,255,61,.35),0 0 22px rgba(201,255,61,.28);
  --maxw:1180px;
}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;
  -webkit-font-smoothing:antialiased;overflow-x:hidden;
  background-image:radial-gradient(1100px 560px at 78% -8%,rgba(var(--gold-rgb),.10),transparent 60%),radial-gradient(900px 520px at 8% 4%,rgba(201,255,61,.07),transparent 55%);
  background-attachment:fixed;}
a{color:inherit;text-decoration:none}
img,svg{display:block}
::selection{background:rgba(242,135,30,.20);color:var(--ink)}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}
.mono{font-family:var(--mono)}
.neon{color:var(--neon-ink)}
.gold{color:var(--gold2)}

/* glow scanline texture overlay (very subtle) */
.grain{position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.5;
  background-image:repeating-linear-gradient(0deg,rgba(255,255,255,.018) 0 1px,transparent 1px 3px);
  mix-blend-mode:overlay}

/* ---------- nav ---------- */
.nv{position:sticky;top:0;z-index:60;background:rgba(10,11,14,.72);backdrop-filter:blur(14px);
  border-bottom:1px solid var(--line)}
.nv-in{display:flex;align-items:center;justify-content:space-between;height:62px;max-width:var(--maxw);margin:0 auto;padding:0 24px}
.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--disp);font-weight:800;font-size:19px;letter-spacing:-.02em;color:var(--ink)}
.brand b{color:var(--gold2);font-weight:800}
.brand .mk{width:30px;height:30px;border-radius:9px;flex:none}
.nv-links{display:flex;align-items:center;gap:4px}
.nv-links a{padding:8px 13px;border-radius:8px;font-size:13.5px;font-weight:600;color:var(--muted);transition:.15s var(--ease)}
.nv-links a:hover{color:#fff;background:rgba(255,255,255,.05)}
.nv-links a.on{color:#fff}
.nv-cta{margin-left:6px;background:var(--gold);color:#120A02 !important;font-weight:800 !important;
  box-shadow:0 0 0 1px rgba(var(--gold-rgb),.4),0 8px 22px -8px rgba(var(--gold-rgb),.6)}
.nv-cta:hover{background:var(--gold2);transform:translateY(-1px)}
.nv-burger{display:none;background:none;border:1px solid var(--line2);border-radius:9px;color:#fff;width:40px;height:36px;font-size:17px;cursor:pointer}
@media(max-width:860px){
  .nv-links{position:fixed;inset:62px 0 auto 0;flex-direction:column;align-items:stretch;gap:2px;
    background:var(--bg2);border-bottom:1px solid var(--line);padding:12px 16px 18px;transform:translateY(-130%);transition:.3s var(--ease)}
  .nv-links.open{transform:none}
  .nv-links a{padding:11px 12px;font-size:15px}
  .nv-burger{display:inline-flex;align-items:center;justify-content:center}
}

/* ---------- buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:9px;border:none;border-radius:11px;font-family:var(--sans);
  font-weight:800;font-size:15px;padding:13px 22px;cursor:pointer;transition:.16s var(--ease);text-decoration:none;line-height:1}
.btn-gold{background:var(--gold);color:#160B02;box-shadow:0 0 0 1px rgba(var(--gold-rgb),.45),0 14px 34px -14px rgba(var(--gold-rgb),.75)}
.btn-gold:hover{background:var(--gold2);transform:translateY(-2px)}
.btn-neon{background:var(--gold);color:#160B02;box-shadow:0 0 0 1px rgba(var(--gold-rgb),.45),0 14px 34px -14px rgba(var(--gold-rgb),.75)}
.btn-neon:hover{background:var(--gold2);transform:translateY(-2px)}
.btn-ghost{background:rgba(255,255,255,.03);color:#fff;border:1px solid var(--line2)}
.btn-ghost:hover{border-color:var(--neon-ink);color:var(--neon-ink)}
.btn-lg{padding:16px 28px;font-size:16px}

/* ---------- ticker / marquee (signature) ---------- */
.ticker{position:relative;display:flex;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  background:linear-gradient(180deg,rgba(201,255,61,.05),transparent);overflow:hidden}
.ticker:before,.ticker:after{content:"";position:absolute;top:0;bottom:0;width:90px;z-index:2;pointer-events:none}
.ticker:before{left:0;background:linear-gradient(90deg,var(--bg),transparent)}
.ticker:after{right:0;background:linear-gradient(270deg,var(--bg),transparent)}
.tk-track{display:flex;flex:none;width:max-content;align-items:center;padding:11px 0;animation:tk 55s linear infinite;will-change:transform}
.ticker:hover .tk-track{animation-play-state:paused}
.tk-i{flex:none;display:inline-flex;align-items:center;gap:9px;margin-right:34px;white-space:nowrap;font-family:var(--mono);font-size:12.5px;font-weight:600;color:var(--muted);letter-spacing:.01em}
.tk-i .nm{color:#D7DCE4}
.tk-i .ok{color:var(--neon-ink);font-weight:700}
.tk-i .no{color:var(--faint);text-decoration:line-through}
.tk-i .pr{color:var(--gold2)}
.tk-dot{width:5px;height:5px;border-radius:50%;background:var(--neon);box-shadow:0 0 8px var(--neon)}
@keyframes tk{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ---------- hero ---------- */
.hero{position:relative;z-index:1;padding:62px 0 30px;text-align:center}
.hero-grid{position:absolute;inset:0;z-index:-1;opacity:.5;
  background-image:linear-gradient(rgba(255,255,255,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.04) 1px,transparent 1px);
  background-size:52px 52px;mask-image:radial-gradient(820px 460px at 50% 24%,#000,transparent 75%)}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-size:11.5px;font-weight:600;
  letter-spacing:.14em;text-transform:uppercase;color:var(--neon-ink);background:var(--neonsoft);
  border:1px solid rgba(201,255,61,.28);border-radius:99px;padding:6px 14px}
.eyebrow .lv{width:6px;height:6px;border-radius:50%;background:var(--neon);box-shadow:0 0 9px var(--neon);animation:pulse 1.7s var(--ease) infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.h1{font-family:var(--disp);font-weight:900;letter-spacing:-.035em;line-height:1;
  font-size:clamp(33px,6vw,68px);text-wrap:balance;margin:20px 0 0}
.h1 .g{color:var(--gold2)}
.h1 .nx{position:relative;color:var(--neon-ink)}
.h1 .nx:after{content:"";position:absolute;left:0;right:0;bottom:.08em;height:.07em;background:var(--neon);box-shadow:0 0 14px var(--neon);opacity:.85}
.sub{max-width:660px;margin:20px auto 0;font-size:clamp(16px,2.1vw,19px);color:var(--muted);font-weight:450}
.sub b{color:var(--ink);font-weight:700}

/* prompt box */
.prompt{max-width:720px;margin:28px auto 0;text-align:left;background:var(--panel);border:1px solid var(--line2);
  border-radius:var(--rlg);padding:8px;box-shadow:0 30px 80px -40px rgba(0,0,0,.9);transition:.2s var(--ease)}
.prompt:focus-within{border-color:rgba(201,255,61,.5);box-shadow:0 0 0 4px rgba(201,255,61,.12),0 30px 80px -40px rgba(0,0,0,.9)}
.prompt textarea{width:100%;background:transparent;border:none;resize:none;color:#fff;font-family:var(--sans);
  font-size:17px;line-height:1.5;padding:15px 15px 6px;outline:none}
.prompt textarea::placeholder{color:#5A6472}
.p-bar{display:flex;flex-wrap:wrap;gap:9px;align-items:center;padding:7px 7px 5px}
.p-run{flex:1;min-width:200px;justify-content:center;background:var(--gold);color:#160B02;border:none;border-radius:13px;
  font-family:var(--sans);font-weight:800;font-size:15.5px;padding:14px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;
  box-shadow:0 0 0 1px rgba(var(--gold-rgb),.45),0 12px 30px -12px rgba(var(--gold-rgb),.7);transition:.16s var(--ease)}
.p-run:hover{background:var(--gold2);transform:translateY(-1px)}
.p-mic{background:rgba(255,255,255,.04);border:1px solid var(--line2);color:#D7DCE4;border-radius:13px;
  font-family:var(--sans);font-weight:600;font-size:13.5px;padding:13px 15px;cursor:pointer;transition:.15s var(--ease)}
.p-mic:hover{border-color:var(--neon-ink);color:var(--neon-ink)}
.p-mic.rec{border-color:var(--pink);color:var(--pink)}
.chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;align-items:center;margin:18px auto 0;max-width:660px}
.chips .lab{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.chip{background:rgba(255,255,255,.04);border:1px solid var(--line2);border-radius:99px;padding:7px 14px;
  font-size:13px;font-weight:600;color:var(--muted);cursor:pointer;transition:.15s var(--ease)}
.chip:hover{border-color:var(--neon-ink);color:var(--neon-ink);background:var(--neonsoft)}
.trust{margin:20px 0 0;font-size:13px;color:var(--faint)}
.trust b{color:var(--neon-ink);font-weight:700}

/* ---------- sections ---------- */
.sec{position:relative;z-index:1;padding:74px 0}
.sec.tight{padding:48px 0}
.kicker{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11.5px;font-weight:600;
  letter-spacing:.13em;text-transform:uppercase;color:var(--gold2)}
.kicker:before{content:"";width:22px;height:1px;background:var(--gold)}
.h2{font-family:var(--disp);font-weight:800;letter-spacing:-.03em;line-height:1.04;
  font-size:clamp(28px,4.4vw,46px);margin:14px 0 0}
.lead{max-width:680px;margin:16px 0 0;color:var(--muted);font-size:17px}
.center{text-align:center}.center .kicker:before{display:none}
.center .lead{margin-left:auto;margin-right:auto}

/* reveal */
.rv{opacity:0;transform:translateY(18px);transition:.7s var(--ease)}
.rv.in{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none}.tk-track{animation:none}}

/* ---------- steps (how it works) ---------- */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:34px}
.step{position:relative;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:22px 18px 20px;overflow:hidden;transition:.18s var(--ease)}
.step:hover{border-color:var(--line2);transform:translateY(-3px)}
.step:before{content:"";position:absolute;left:0;top:0;height:3px;width:100%;background:linear-gradient(90deg,var(--gold),transparent)}
.step.s2:before{background:linear-gradient(90deg,var(--neon),transparent)}
.step.s3:before{background:linear-gradient(90deg,var(--cyan),transparent)}
.step.s4:before{background:linear-gradient(90deg,var(--gold2),var(--neon))}
.step .n{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--faint);letter-spacing:.1em}
.step h3{font-family:var(--disp);font-weight:800;font-size:18px;letter-spacing:-.01em;margin:12px 0 7px;color:#fff}
.step p{margin:0;font-size:13.5px;color:var(--muted);line-height:1.55}
.step .ic{font-size:20px;line-height:1}
@media(max-width:860px){.steps{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.steps{grid-template-columns:1fr}}

/* ---------- sample verdict card ---------- */
.vcard{max-width:560px;margin:34px auto 0;background:linear-gradient(180deg,var(--panel2),var(--panel));
  border:1px solid var(--line2);border-radius:var(--rlg);padding:22px;position:relative;overflow:hidden;
  box-shadow:0 40px 90px -50px rgba(0,0,0,.9)}
.vcard:before{content:"";position:absolute;inset:0;border-radius:var(--rlg);padding:1px;
  background:linear-gradient(135deg,rgba(201,255,61,.5),transparent 40%,rgba(var(--gold-rgb),.4));
  -webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.vc-head{display:flex;justify-content:space-between;align-items:center;font-size:12px}
.vc-tag{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--neon-ink)}
.vc-tag .d{width:6px;height:6px;border-radius:50%;background:var(--neon);box-shadow:0 0 8px var(--neon)}
.vc-task{color:var(--faint);font-family:var(--mono);font-size:11.5px}
.vc-plot{margin:18px 0 6px;display:flex;flex-direction:column;gap:9px;position:relative}
.vc-row{display:grid;grid-template-columns:104px 1fr 42px;align-items:center;gap:11px}
.vc-name{font-size:12.5px;font-weight:600;color:var(--muted)}
.vc-track{height:10px;border-radius:6px;background:rgba(255,255,255,.06);overflow:hidden}
.vc-track i{display:block;height:100%;width:var(--w);background:linear-gradient(90deg,#3a4150,#586173);border-radius:6px;transition:width 1s var(--ease)}
.vc-score{font-family:var(--mono);font-size:12px;color:var(--muted);text-align:right}
.vc-row.win .vc-name{color:#fff;font-weight:700}
.vc-row.win .vc-track i{background:linear-gradient(90deg,var(--neon2),var(--neon));box-shadow:0 0 16px rgba(201,255,61,.5)}
.vc-row.win .vc-score{color:var(--neon-ink);font-weight:700}
.vc-bar{position:absolute;top:-4px;bottom:-4px;left:calc(104px + 11px + (1fr));width:0}
.vc-thr{position:absolute;top:0;bottom:26px;left:calc((100% - 42px - 11px) * .92 + 0px);border-left:1.5px dashed var(--gold);opacity:.7}
.vc-verdict{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:16px;padding-top:15px;border-top:1px solid var(--line)}
.vc-v-l{display:flex;align-items:center;gap:11px}
.vc-chip{font-family:var(--mono);font-size:10.5px;font-weight:700;color:#0A0B0E;background:var(--neon);border-radius:6px;padding:3px 8px;letter-spacing:.04em}
.vc-v-txt b{font-family:var(--disp);font-size:17px;color:#fff;display:block;line-height:1.1}
.vc-v-meta{font-size:11.5px;color:var(--muted)}
.vc-cost{text-align:right}
.vc-cost b{font-family:var(--disp);font-size:24px;color:var(--gold2)}
.vc-cost span{font-size:11px;color:var(--faint);display:block;margin-top:-2px}
.vc-foot{margin-top:14px;font-size:11.5px;color:var(--faint);display:flex;align-items:center;gap:8px}
.vc-foot .d{width:6px;height:6px;border-radius:50%;background:var(--neon);box-shadow:0 0 7px var(--neon)}

/* ---------- cards row ---------- */
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:30px}
.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:20px}
.card h3{font-family:var(--disp);font-weight:800;font-size:17px;color:#fff;margin:0 0 6px}
.card p{margin:0;font-size:13.5px;color:var(--muted);line-height:1.55}
.card .tag{font-family:var(--mono);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--gold2);display:block;margin-bottom:9px}
@media(max-width:780px){.cards{grid-template-columns:1fr}}

/* use-case pills */
.ucs{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}
.uc{flex:1 1 180px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:15px 16px;transition:.16s var(--ease)}
.uc:hover{border-color:var(--neon-ink)}
.uc .dept{font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}
.uc b{display:block;font-family:var(--disp);font-size:16px;color:#fff;margin:6px 0 3px}
.uc .t{font-size:11.5px;color:var(--neon-ink)}

/* ---------- pricing ---------- */
.price-wrap{display:grid;grid-template-columns:1.15fr 1fr;gap:16px;margin-top:36px;align-items:stretch}
@media(max-width:820px){.price-wrap{grid-template-columns:1fr}}
.pcard{position:relative;background:var(--panel);border:1px solid var(--line2);border-radius:var(--rlg);padding:28px;overflow:hidden}
.pcard.hot{background:linear-gradient(180deg,rgba(201,255,61,.08),var(--panel) 42%);border-color:rgba(201,255,61,.4);
  box-shadow:0 0 0 1px rgba(201,255,61,.18),0 40px 90px -50px rgba(201,255,61,.35)}
.pcard .ptag{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;
  text-transform:uppercase;color:var(--neon-ink);margin-bottom:14px}
.pcard.base .ptag{color:var(--gold2)}
.pnum{display:flex;align-items:flex-end;gap:6px;line-height:1}
.pnum .cur{font-family:var(--disp);font-weight:800;font-size:30px;color:#fff;margin-bottom:6px}
.pnum .big{font-family:var(--disp);font-weight:900;font-size:74px;letter-spacing:-.04em;color:#fff}
.pcard.hot .pnum .big{color:var(--neon-ink);text-shadow:0 0 30px rgba(201,255,61,.4)}
.pnum .per{font-size:15px;color:var(--muted);margin-bottom:12px}
.padd{margin-top:10px;font-size:14px;color:var(--ink)}
.padd b{color:var(--neon-ink)}
.pcard.base .padd b{color:var(--gold2)}
.pdesc{margin:8px 0 18px;font-size:14px;color:var(--muted);line-height:1.5}
.plist{list-style:none;margin:0 0 22px;padding:0;display:flex;flex-direction:column;gap:10px}
.plist li{display:flex;gap:10px;font-size:14px;color:#D7DCE4;line-height:1.45}
.plist li:before{content:"✓";color:var(--neon-ink);font-weight:800;flex:none}
.pcard.base .plist li:before{color:var(--gold2)}
.pcard .btn{width:100%;justify-content:center}
.pnote{margin-top:14px;font-size:12px;color:var(--faint);text-align:center}

/* ---------- dashboards teaser ---------- */
.dash2{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:34px}
@media(max-width:820px){.dash2{grid-template-columns:1fr}}
.dpre{background:var(--panel);border:1px solid var(--line);border-radius:var(--rlg);padding:20px;transition:.18s var(--ease)}
.dpre:hover{border-color:var(--line2);transform:translateY(-3px)}
.dpre .dh{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.dpre .dh b{font-family:var(--disp);font-weight:800;font-size:17px;color:#fff}
.dpre .dh .pp{font-family:var(--mono);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--neon-ink);
  background:var(--neonsoft);border:1px solid rgba(201,255,61,.28);border-radius:99px;padding:3px 9px}
.dpre p{font-size:13px;color:var(--muted);margin:12px 0 0;line-height:1.5}
.dpre .more{display:inline-flex;align-items:center;gap:6px;margin-top:14px;font-weight:700;font-size:13px;color:var(--neon-ink)}

/* mini spark + mini leaderboard inside teasers */
.mspark{height:74px;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.02);padding:8px}
.mlead{display:flex;flex-direction:column;gap:7px}
.mrow{display:grid;grid-template-columns:18px 1fr auto;align-items:center;gap:9px;font-size:12.5px;
  background:rgba(255,255,255,.02);border:1px solid var(--line);border-radius:9px;padding:8px 11px}
.mrow .rk{font-family:var(--mono);color:var(--faint);font-size:11px}
.mrow .tn{color:#D7DCE4;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mrow .mw{font-family:var(--mono);font-size:11px;color:var(--neon-ink)}
.mrow.top{border-color:rgba(201,255,61,.3);background:var(--neonsoft)}

/* ---------- faq ---------- */
.faq{margin-top:30px;display:flex;flex-direction:column;gap:10px;max-width:840px}
.faq details{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.faq summary{cursor:pointer;list-style:none;padding:16px 18px;font-family:var(--disp);font-weight:700;font-size:15.5px;color:#fff;
  display:flex;justify-content:space-between;align-items:center;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:after{content:"+";color:var(--neon-ink);font-weight:700;font-size:20px;transition:.2s}
.faq details[open] summary:after{transform:rotate(45deg)}
.faq details[open] summary{color:var(--neon-ink)}
.faq .a{padding:0 18px 17px;font-size:14px;color:var(--muted);line-height:1.6}

/* ---------- cta band ---------- */
.ctaband{position:relative;text-align:center;background:linear-gradient(180deg,var(--panel2),var(--panel));
  border:1px solid var(--line2);border-radius:var(--rlg);padding:50px 30px;overflow:hidden;margin-top:14px}
.ctaband:before{content:"";position:absolute;inset:0;background:radial-gradient(600px 240px at 50% 0%,rgba(var(--gold-rgb),.13),transparent 70%)}
.ctaband h2{position:relative;font-family:var(--disp);font-weight:900;letter-spacing:-.03em;font-size:clamp(28px,4.4vw,42px);margin:0;color:var(--ink)}
.ctaband p{position:relative;color:var(--muted);font-size:17px;margin:14px auto 24px;max-width:520px}
.ctaband .btn{position:relative}

/* ---------- footer ---------- */
.ft{border-top:1px solid var(--line);background:var(--bg2);margin-top:74px;padding:46px 0 40px;position:relative;z-index:1}
.ft-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:40px;align-items:start}
@media(max-width:760px){.ft-grid{grid-template-columns:1fr;gap:30px}}
.ft .links{display:flex;flex-wrap:wrap;gap:6px 8px;margin-top:14px}
.ft .links a{font-size:13px;color:var(--muted);padding:5px 10px;border-radius:99px;transition:.15s}
.ft .links a:hover{color:#fff;background:rgba(255,255,255,.06)}
.ft .tagline{margin-top:16px;font-size:12.5px;color:var(--faint)}
/* contact form (dark) */
.fc h3{font-family:var(--disp);font-weight:800;font-size:18px;color:#fff;margin:0 0 6px}
.fc .intro{font-size:13px;color:var(--muted);margin:0 0 16px}
.fc .intro a{color:var(--neon-ink)}
.fc-form{display:grid;gap:10px}
.fc-row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
@media(max-width:520px){.fc-row{grid-template-columns:1fr}}
.fc-form input,.fc-form textarea{width:100%;background:rgba(255,255,255,.04);border:1px solid var(--line2);border-radius:11px;
  padding:12px 14px;font-family:var(--sans);font-size:14px;color:#fff;transition:.15s var(--ease)}
.fc-form input::placeholder,.fc-form textarea::placeholder{color:#5C6675}
.fc-form input:focus,.fc-form textarea:focus{outline:none;border-color:var(--neon-ink);background:rgba(201,255,61,.05);box-shadow:0 0 0 3px rgba(201,255,61,.12)}
.fc-form textarea{resize:vertical;min-height:90px;line-height:1.5}
.fc-form .btn{width:100%;justify-content:center}
.fc-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}

/* shared focus visibility */
a:focus-visible,button:focus-visible,textarea:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--neon);outline-offset:2px}

/* ===== Surface themes (set via data-surface on <html>; default = ink/dark) ===== */
:root[data-surface="navy"]{--bg:#070B16;--bg2:#0A1020;--panel:#101A30;--panel2:#15213B;--line:rgba(150,178,255,.12);--line2:rgba(150,178,255,.20);--ink:#EAEFFB;--muted:#94A4C6;--faint:#687695}
:root[data-surface="slate"]{--bg:#0F1216;--bg2:#14181C;--panel:#1A1F25;--panel2:#212730;--line:rgba(255,255,255,.09);--line2:rgba(255,255,255,.16);--ink:#EEF1F5;--muted:#99A3B0;--faint:#6A7480}
:root[data-surface="paper"]{--neon-ink:#3C7A12;--bg:#F7F8FA;--bg2:#FFFFFF;--panel:#FFFFFF;--panel2:#F1F3F6;--line:rgba(18,22,28,.10);--line2:rgba(18,22,28,.14);--ink:#16181D;--muted:#565E6B;--faint:#8A929E}
:root[data-surface="paper"] .grain{opacity:.4;background-image:repeating-linear-gradient(0deg,rgba(0,0,0,.022) 0 1px,transparent 1px 3px)}

:root[data-surface="navy"] .nv{background:rgba(7,11,22,.72)}
:root[data-surface="slate"] .nv{background:rgba(15,18,22,.74)}
:root[data-surface="paper"] .nv{background:rgba(247,248,250,.80)}
:root[data-surface="paper"] .nv-links a:hover{color:var(--ink);background:rgba(18,22,28,.05)}
:root[data-surface="paper"] .nv-links a.on{color:var(--ink)}
:root[data-surface="paper"] .nv-burger{color:var(--ink)}

/* Paper surface: text that was hardcoded white sits on light cards/footer here,
   so it must follow the ink colour or it renders white-on-white (invisible). */
:root[data-surface="paper"] .step h3,
:root[data-surface="paper"] .card h3,
:root[data-surface="paper"] .uc b,
:root[data-surface="paper"] .vc-row.win .vc-name,
:root[data-surface="paper"] .vc-v-txt b,
:root[data-surface="paper"] .pnum .cur,
:root[data-surface="paper"] .pnum .big,
:root[data-surface="paper"] .dpre .dh b,
:root[data-surface="paper"] .faq summary,
:root[data-surface="paper"] .fc h3,
:root[data-surface="paper"] .btn-ghost{color:var(--ink)}
:root[data-surface="paper"] .ft{background:var(--bg2)}
:root[data-surface="paper"] .ft .sub input,
:root[data-surface="paper"] .fc-form input,
:root[data-surface="paper"] .fc-form textarea{color:var(--ink)}
:root[data-surface="paper"] .ft .links a:hover{color:var(--ink)}
