/* Proof marketing site — matches the app's default "Charcoal & Cyan" theme. */
:root{
  --bg:#0b0f14;--bg2:#0d131a;--panel:#111821;--panel2:#141d28;--line:#1d2834;--line2:#26364a;
  --txt:#dfe7ef;--hi:#f4f8fb;--mut:#7d8b99;--mut2:#5c6b7a;
  --ac:#22d3ee;--ac2:#0e7490;--acg:rgba(34,211,238,.14);--neg:#f87171;--pos:#22d3ee;--warn:#f5a524;
  --r:18px;--rs:12px;--max:1180px;
  --sans:'Inter',system-ui,-apple-system,'Segoe UI',sans-serif;--mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--txt);font:16px/1.6 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
::selection{background:var(--ac);color:#03141a}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.mono{font-family:var(--mono);font-feature-settings:'zero' 1}
.ac{color:var(--ac)}.neg{color:var(--neg)}.mut{color:var(--mut)}

/* ── nav ── */
.nav{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 78%,transparent);backdrop-filter:saturate(140%) blur(16px);-webkit-backdrop-filter:saturate(140%) blur(16px);border-bottom:1px solid transparent;transition:border-color .3s}
.nav.scrolled{border-bottom-color:var(--line)}
.nav .wrap{display:flex;align-items:center;gap:28px;height:68px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:18px;letter-spacing:-.01em;color:var(--hi)}
.brand img{width:30px;height:30px}
.nav-links{display:flex;gap:26px;margin-left:12px;font-size:14px;color:var(--mut)}
.nav-links a:hover{color:var(--hi)}
.nav-cta{margin-left:auto;display:flex;align-items:center;gap:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:44px;padding:0 20px;border-radius:12px;font:600 15px var(--sans);border:1px solid var(--line2);color:var(--hi);background:transparent;cursor:pointer;transition:transform .15s,background .2s,border-color .2s,box-shadow .2s;white-space:nowrap}
.btn:hover{border-color:var(--mut2);background:rgba(255,255,255,.03)}
.btn.pri{background:var(--ac);color:#03141a;border-color:var(--ac);box-shadow:0 0 0 1px rgba(34,211,238,.25),0 10px 30px -10px rgba(34,211,238,.55)}
.btn.pri:hover{transform:translateY(-1px);box-shadow:0 0 0 1px rgba(34,211,238,.35),0 14px 36px -10px rgba(34,211,238,.7)}
.btn.sm{height:38px;padding:0 14px;font-size:14px;border-radius:10px}
.btn.lg{height:54px;padding:0 28px;font-size:16px;border-radius:14px}
.burger{display:none;margin-left:auto;background:none;border:1px solid var(--line2);border-radius:10px;width:42px;height:42px;color:var(--hi);cursor:pointer}

/* ── hero ── */
.hero{position:relative;padding:84px 0 40px;overflow:hidden}
.hero::before{content:'';position:absolute;inset:-20% -10% auto;height:720px;background:radial-gradient(60% 55% at 50% 30%,rgba(34,211,238,.16),transparent 70%),radial-gradient(40% 40% at 85% 10%,rgba(14,116,144,.25),transparent 70%);pointer-events:none}
.hero::after{content:'';position:absolute;inset:0;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:64px 64px;mask-image:radial-gradient(70% 60% at 50% 20%,#000 0%,transparent 75%);-webkit-mask-image:radial-gradient(70% 60% at 50% 20%,#000 0%,transparent 75%);opacity:.35;pointer-events:none}
.hero .wrap{position:relative;z-index:1;text-align:center}
.pill{display:inline-flex;align-items:center;gap:8px;padding:6px 14px 6px 8px;border:1px solid var(--line2);border-radius:999px;background:rgba(17,24,33,.7);font-size:13px;color:var(--mut)}
.pill b{background:var(--acg);color:var(--ac);border-radius:999px;padding:2px 9px;font-size:12px;font-weight:600}
h1{font-size:clamp(40px,6.4vw,76px);line-height:1.02;letter-spacing:-.035em;margin:22px auto 0;max-width:15ch;color:var(--hi);font-weight:750}
h1 em{font-style:normal;background:linear-gradient(100deg,#7ee8f7,var(--ac) 45%,#38bdf8);-webkit-background-clip:text;background-clip:text;color:transparent}
.lede{font-size:clamp(17px,2vw,20px);color:var(--mut);max-width:620px;margin:22px auto 0;line-height:1.55}
.hero-cta{display:flex;gap:12px;justify-content:center;margin-top:34px;flex-wrap:wrap}
.hero-note{margin-top:14px;font-size:13px;color:var(--mut2)}
.shot{position:relative;margin:64px auto 0;max-width:1120px}
.frame{border:1px solid var(--line2);border-radius:20px;background:var(--panel);padding:10px;box-shadow:0 40px 120px -30px rgba(0,0,0,.8),0 0 0 1px rgba(34,211,238,.06),0 30px 80px -40px rgba(34,211,238,.35)}
.frame .bar{display:flex;gap:6px;padding:4px 6px 10px}.frame .bar i{width:10px;height:10px;border-radius:50%;background:var(--line2)}
.frame img{border-radius:12px;width:100%}
.phone{position:absolute;right:-36px;bottom:-56px;width:17%;min-width:140px;border:1px solid var(--line2);border-radius:30px;padding:7px;background:#05080b;box-shadow:0 30px 80px -20px rgba(0,0,0,.9)}
.phone img{border-radius:24px}
.glow-line{height:1px;background:linear-gradient(90deg,transparent,var(--line2),transparent);margin:0}

/* ── proof strip ── */
.strip{padding:56px 0 24px}
.strip .wrap{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.stat{padding:18px 20px;border:1px solid var(--line);border-radius:var(--rs);background:linear-gradient(180deg,var(--panel),var(--bg2))}
.stat b{display:block;font:700 26px/1.1 var(--mono);color:var(--hi);letter-spacing:-.02em}
.stat span{font-size:13px;color:var(--mut)}

/* ── sections ── */
section{scroll-margin-top:80px}
.sec{padding:104px 0}
.eyebrow{font:600 12px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ac)}
h2{font-size:clamp(30px,4.2vw,50px);line-height:1.08;letter-spacing:-.03em;margin:14px 0 0;color:var(--hi);font-weight:720;max-width:22ch}
.sec-head{margin-bottom:52px}.sec-head p{color:var(--mut);font-size:18px;max-width:640px;margin:16px 0 0}
.center{text-align:center}.center h2,.center p{margin-left:auto;margin-right:auto}

/* pain cards */
.pains{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.pain{padding:26px;border:1px solid var(--line);border-radius:var(--r);background:var(--panel)}
.pain .q{font-size:19px;color:var(--hi);font-weight:600;letter-spacing:-.01em;line-height:1.35}
.pain p{color:var(--mut);margin:12px 0 0;font-size:15px}
.pain .x{display:inline-grid;place-items:center;width:34px;height:34px;border-radius:10px;background:rgba(248,113,113,.1);color:var(--neg);margin-bottom:16px;font-weight:700}

/* feature rows */
.feat{display:grid;grid-template-columns:1fr 1.25fr;gap:56px;align-items:center;padding:56px 0;border-top:1px solid var(--line)}
.feat:first-of-type{border-top:0}
.feat.rev{grid-template-columns:1.25fr 1fr}.feat.rev .ft{order:2}
.ft h3{font-size:clamp(24px,2.8vw,34px);line-height:1.15;letter-spacing:-.025em;margin:12px 0 0;color:var(--hi);font-weight:700}
.ft p{color:var(--mut);font-size:17px;margin:16px 0 0}
.ticks{list-style:none;padding:0;margin:22px 0 0;display:grid;gap:10px}
.ticks li{position:relative;padding-left:30px;font-size:15px;color:var(--txt)}
.ticks li::before{content:'';position:absolute;left:0;top:4px;width:18px;height:18px;border-radius:6px;background:var(--acg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 8.5l2.5 2.5L12 5.5' fill='none' stroke='%2322d3ee' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.fv{position:relative}
.fv .frame{padding:8px;border-radius:16px}
.fv .frame img{border-radius:10px}

/* bento */
.bento{display:grid;grid-template-columns:repeat(6,1fr);gap:16px}
.cell{grid-column:span 2;padding:24px;border:1px solid var(--line);border-radius:var(--r);background:linear-gradient(180deg,var(--panel),var(--bg2));position:relative;overflow:hidden}
.cell.w3{grid-column:span 3}
.cell h4{margin:14px 0 0;font-size:18px;color:var(--hi);letter-spacing:-.01em}
.cell p{margin:8px 0 0;font-size:14.5px;color:var(--mut)}
.ico{width:38px;height:38px;border-radius:11px;display:grid;place-items:center;background:var(--acg);border:1px solid rgba(34,211,238,.22)}
.ico svg{width:20px;height:20px;stroke:var(--ac);fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}

/* news mock */
.news{margin-top:18px;display:grid;gap:8px}
.nrow{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--bg);font-size:13px}
.nrow .t{font-family:var(--mono);color:var(--mut);width:64px}
.chip{font:600 10.5px var(--mono);letter-spacing:.06em;padding:3px 7px;border-radius:6px;border:1px solid var(--line2);color:var(--mut)}
.chip.hi{color:var(--neg);border-color:rgba(248,113,113,.4);background:rgba(248,113,113,.08)}
.chip.ok{color:var(--ac);border-color:rgba(34,211,238,.35);background:var(--acg)}
.nrow .s{margin-left:auto;font-family:var(--mono);font-size:12px;color:var(--neg)}

/* vera mock */
.vera{margin-top:18px;border:1px solid var(--line);border-radius:14px;background:var(--bg);padding:16px}
.vq{margin-left:auto;max-width:80%;background:var(--panel2);border:1px solid var(--line2);padding:9px 13px;border-radius:12px 12px 4px 12px;font-size:14px;width:fit-content}
.va{margin-top:12px;font-size:14px;color:var(--txt);line-height:1.55}
.va b{color:var(--hi)}
.va .lv{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}

/* case study */
.case{border:1px solid var(--line2);border-radius:24px;background:radial-gradient(80% 120% at 0% 0%,rgba(34,211,238,.08),transparent 60%),var(--panel);padding:44px;display:grid;grid-template-columns:1.1fr 1fr;gap:48px}
.case h3{font-size:clamp(24px,3vw,34px);letter-spacing:-.025em;line-height:1.15;color:var(--hi);margin:12px 0 0}
.case p{color:var(--mut);font-size:16px}
.kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:26px}
.kpi{padding:16px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.kpi small{display:block;font:600 10.5px var(--mono);letter-spacing:.12em;color:var(--mut);text-transform:uppercase}
.kpi b{display:block;margin-top:6px;font:700 24px/1.1 var(--mono);color:var(--hi)}
.kpi b.ac{color:var(--ac)}
.caught{display:grid;gap:12px}
.catch{padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--bg)}
.catch .h{display:flex;gap:10px;align-items:baseline}
.catch .h b{font:700 20px var(--mono);color:var(--neg)}
.catch .h span{color:var(--hi);font-weight:600}
.catch p{margin:6px 0 0;font-size:14px;color:var(--mut)}
.disclaim{margin-top:18px;font-size:12.5px;color:var(--mut2)}

/* compare */
.cmp{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--panel)}
.cmp table{width:100%;border-collapse:collapse;font-size:14.5px}
.cmp th,.cmp td{padding:15px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.cmp thead th{font:600 13px var(--sans);color:var(--mut);background:var(--bg2)}
.cmp thead th.us{color:var(--hi)}
.cmp td.us{background:rgba(34,211,238,.045);color:var(--hi)}
.cmp tbody tr:last-child td{border-bottom:0}
.y{color:var(--ac);font-weight:600}.n{color:var(--mut2)}
.cmp-note{font-size:12.5px;color:var(--mut2);margin-top:14px}
.cmp-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}

/* pricing */
.price-card{max-width:560px;margin:0 auto;border:1px solid rgba(34,211,238,.45);border-radius:26px;background:radial-gradient(90% 70% at 50% 0%,rgba(34,211,238,.13),transparent 70%),var(--panel);padding:40px;box-shadow:0 30px 100px -40px rgba(34,211,238,.45);text-align:center}
.price-card .tag{display:inline-block;font:600 12px var(--mono);letter-spacing:.14em;color:#03141a;background:var(--ac);padding:5px 12px;border-radius:999px}
.amt{display:flex;align-items:baseline;justify-content:center;gap:10px;margin:22px 0 4px}
.amt b{font:750 76px/1 var(--sans);letter-spacing:-.04em;color:var(--hi)}
.amt s{color:var(--mut2);font-size:24px}
.amt span{color:var(--mut);font-size:16px}
.price-card .ticks{text-align:left;margin:28px auto 30px;max-width:380px}
.pay-alt{margin-top:18px;display:grid;gap:8px}
.pay-alt a{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid var(--line2);border-radius:12px;font-size:14px;transition:border-color .2s,background .2s}
.pay-alt a:hover{border-color:var(--ac);background:var(--acg)}
.pay-alt a small{color:var(--mut)}
.secure{display:flex;gap:16px;justify-content:center;flex-wrap:wrap;margin-top:22px;font-size:12.5px;color:var(--mut)}
.secure span{display:inline-flex;align-items:center;gap:6px}
.byok{max-width:560px;margin:18px auto 0;font-size:13.5px;color:var(--mut);text-align:center}

/* faq */
.faq{max-width:820px;margin:0 auto}
.faq details{border-bottom:1px solid var(--line);padding:4px 0}
.faq summary{list-style:none;cursor:pointer;padding:20px 40px 20px 0;font-size:17px;font-weight:600;color:var(--hi);position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:'+';position:absolute;right:4px;top:16px;font:400 26px var(--sans);color:var(--ac);transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq details p{margin:0 0 20px;color:var(--mut);font-size:15.5px}

/* final cta */
.final{text-align:center;padding:110px 0;position:relative;overflow:hidden}
.final::before{content:'';position:absolute;inset:auto 0 -40% 0;height:520px;background:radial-gradient(50% 60% at 50% 100%,rgba(34,211,238,.2),transparent 70%)}
.final .wrap{position:relative}
.final h2{margin:0 auto;max-width:18ch}
.final p{color:var(--mut);font-size:18px;margin:18px auto 30px;max-width:520px}

/* footer */
footer{border-top:1px solid var(--line);padding:44px 0 56px;font-size:13.5px;color:var(--mut)}
footer .wrap{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
footer h5{margin:0 0 12px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mut2)}
footer a{display:block;padding:3px 0}footer a:hover{color:var(--hi)}
.risk{grid-column:1/-1;border-top:1px solid var(--line);padding-top:22px;font-size:12px;line-height:1.6;color:var(--mut2)}

/* legal pages */
.doc{max-width:760px;margin:0 auto;padding:72px 24px 96px}
.doc h1{font-size:clamp(34px,5vw,48px);text-align:left;margin:0;max-width:none}
.doc .upd{color:var(--mut2);font-size:13px;margin-top:10px}
.doc h2{font-size:22px;margin:40px 0 0;max-width:none}
.doc p,.doc li{color:var(--txt);font-size:15.5px}
.doc ul{padding-left:20px}
.doc .note{border:1px solid var(--line2);border-radius:12px;padding:14px 16px;background:var(--panel);color:var(--mut);font-size:14px;margin-top:22px}

/* reveal */
.rv{opacity:0;transform:translateY(18px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.rv.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* responsive */
@media(max-width:980px){
  .nav-links{display:none}
  .feat,.feat.rev{grid-template-columns:1fr;gap:28px}.feat.rev .ft{order:0}
  .case{grid-template-columns:1fr;padding:28px;gap:28px}
  .bento{grid-template-columns:1fr 1fr}.cell,.cell.w3{grid-column:span 1}
  .strip .wrap{grid-template-columns:1fr 1fr}
  .pains{grid-template-columns:1fr}
  footer .wrap{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .wrap{padding:0 16px}
  .nav-cta .btn:not(.pri){display:none}
  .hero{padding:56px 0 24px}
  .phone{display:none}
  .shot{margin-top:40px}
  .sec{padding:72px 0}
  .bento{grid-template-columns:1fr}
  .kpis{grid-template-columns:1fr 1fr}
  .price-card{padding:28px 20px}.amt b{font-size:60px}
  footer .wrap{grid-template-columns:1fr}
  .cmp th,.cmp td{padding:12px 12px;font-size:13.5px}
}
@media(max-width:640px){
  .shot .frame{display:none}
  .shot .phone{display:block;position:relative;right:auto;bottom:auto;width:72%;max-width:300px;margin:0 auto}
  .nrow{flex-wrap:wrap;row-gap:4px}
  .nrow .t{width:auto}
  .nrow .s{margin-left:0;width:100%}
}
.brand .bt{display:flex;flex-direction:column;line-height:1.1}
.brand .bt b{font-size:18px;font-weight:700}
.brand .bt small{font-size:11px;font-weight:500;font-style:italic;color:var(--mut);letter-spacing:0;margin-top:2px}
.brand img{width:34px;height:34px}

/* plan cards */
.plans{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1040px;margin:0 auto;align-items:stretch}
.plan{position:relative;display:flex;flex-direction:column;gap:6px;border:1px solid var(--line2);border-radius:22px;background:var(--panel);padding:30px 26px;text-align:center}
.plan.best{border-color:rgba(34,211,238,.55);background:radial-gradient(90% 70% at 50% 0%,rgba(34,211,238,.13),transparent 70%),var(--panel);box-shadow:0 30px 100px -40px rgba(34,211,238,.45)}
.plan .tag{align-self:center;font:600 11px var(--mono);letter-spacing:.14em;color:#03141a;background:var(--ac);padding:5px 12px;border-radius:999px}
.plan .tag.dim{background:transparent;color:var(--ac);border:1px solid rgba(34,211,238,.45)}
.plan h3{margin:14px 0 0;font-size:20px;color:var(--hi)}
.plan .amt{margin:10px 0 0}.plan .amt b{font-size:56px}
.plan .later{font-size:13px;color:var(--mut2)}
.plan .pnote{color:var(--mut);font-size:14px;margin:8px 0 18px;flex:1}
.plan .btn{width:100%;justify-content:center}
.plan-ticks{max-width:620px;margin:34px auto 6px;columns:2;column-gap:28px;text-align:left}
@media (max-width:900px){.plans{grid-template-columns:1fr;max-width:460px}.plan-ticks{columns:1}}

/* launching soon + lead capture */
.plan .soon{position:absolute;top:14px;right:14px;font:600 10px var(--mono);letter-spacing:.1em;color:var(--mut)}
.lead,.lead-in{display:grid;gap:10px;text-align:left}
.lead input[type=email],.lead input[type=text],.lead-in input[type=email],.lead-in input[type=text]{height:50px;border-radius:12px;border:1px solid var(--line2);background:var(--bg2);color:var(--hi);font:500 15px var(--sans);padding:0 16px;outline:none;transition:border-color .2s,box-shadow .2s;width:100%}
.lead input:focus,.lead-in input:focus{border-color:var(--ac);box-shadow:0 0 0 3px var(--acg)}
.lead .hp,.lead-in .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.mk{border:0;padding:0;margin:2px 0;display:flex;flex-wrap:wrap;gap:8px}.mk legend{font-size:13px;color:var(--mut);margin-bottom:8px;padding:0}
.mk label{cursor:pointer}.mk input{position:absolute;opacity:0;pointer-events:none}
.mk span{display:inline-flex;align-items:center;height:34px;padding:0 13px;border:1px solid var(--line2);border-radius:999px;font-size:13px;color:var(--mut);transition:all .15s}
.mk input:checked+span{border-color:var(--ac);color:var(--hi);background:var(--acg)}.mk input:focus-visible+span{box-shadow:0 0 0 3px var(--acg)}
.fine{font-size:12px;color:var(--mut2);margin:2px 0 0;text-align:center}.fine a{color:var(--mut);text-decoration:underline}
.err{color:#f87171;font-size:13px;margin:0;min-height:1em;text-align:center}
.lead-ok{text-align:center;display:grid;gap:14px;justify-items:center;padding:8px 0}.lead-ok h4{margin:0;font-size:18px;color:var(--hi)}
.lead-ok .tick{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;background:var(--acg);color:var(--ac);font:800 24px var(--sans);border:1px solid rgba(34,211,238,.4)}
.lead-modal{position:fixed;inset:0;z-index:100;background:rgba(3,7,12,.72);backdrop-filter:blur(6px);display:grid;place-items:center;padding:16px;animation:lmf .2s ease}
.lm-card{position:relative;width:100%;max-width:460px;max-height:calc(100vh - 32px);overflow:auto;background:radial-gradient(90% 60% at 50% 0%,rgba(34,211,238,.12),transparent 70%),var(--panel);border:1px solid var(--line2);border-radius:22px;padding:30px 26px 22px;text-align:center;box-shadow:0 40px 120px -30px rgba(0,0,0,.7);animation:lmu .25s ease}
.lm-card h3{margin:14px 0 6px;font-size:22px;color:var(--hi);letter-spacing:-.02em}.lm-card>p{color:var(--mut);font-size:14.5px;margin:0 0 20px;line-height:1.5}
.lm-x{position:absolute;top:12px;right:12px;width:36px;height:36px;border-radius:10px;border:1px solid var(--line2);background:transparent;color:var(--mut);font-size:22px;cursor:pointer}.lm-x:hover{color:var(--hi);border-color:var(--mut2)}
@keyframes lmf{from{opacity:0}}@keyframes lmu{from{opacity:0;transform:translateY(10px) scale(.98)}}

/* free tools */
.tools{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1080px;margin:0 auto}
.tool{display:flex;flex-direction:column;border:1px solid var(--line2);border-radius:20px;background:var(--panel);overflow:hidden;transition:border-color .2s,transform .2s}
.tool:hover{border-color:rgba(34,211,238,.45);transform:translateY(-2px)}
.tool .tv{aspect-ratio:16/10;background:radial-gradient(80% 90% at 50% 0%,rgba(34,211,238,.16),transparent 70%),var(--bg2);border-bottom:1px solid var(--line);display:grid;place-items:center;overflow:hidden}
.tool .tv img{width:62%;height:auto;border-radius:8px;box-shadow:0 20px 50px -20px rgba(0,0,0,.8);transform:translateY(14%)}
.tool .tb{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}.tool h4{margin:0;font-size:18px;color:var(--hi)}.tool p{margin:0;color:var(--mut);font-size:14px;line-height:1.55;flex:1}
.tool .kind{font:600 10.5px var(--mono);letter-spacing:.12em;color:var(--ac)}.tool .btn{margin-top:10px;width:100%}
@media (max-width:900px){.tools{grid-template-columns:1fr;max-width:460px}}

/* landing pages + calculator */
.lp{padding:120px 0 70px}.lp-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:start;max-width:1080px;margin:0 auto}
.lp h1{font-size:clamp(34px,5vw,54px);line-height:1.05;letter-spacing:-.035em;margin:14px 0 16px;color:var(--hi)}.lp .sub{color:var(--mut);font-size:18px;line-height:1.6;margin:0 0 22px}
.lp-card{border:1px solid rgba(34,211,238,.4);border-radius:22px;background:radial-gradient(90% 60% at 50% 0%,rgba(34,211,238,.12),transparent 70%),var(--panel);padding:26px;position:sticky;top:96px}
.lp-card h3{margin:0 0 6px;font-size:20px;color:var(--hi)}.lp-card>p{color:var(--mut);margin:0 0 18px;font-size:14.5px}
.lp-prev{margin-top:26px;border-radius:14px;border:1px solid var(--line2);overflow:hidden;box-shadow:0 30px 80px -40px rgba(0,0,0,.8)}.lp-prev img{display:block;width:100%;height:auto}
.prose{max-width:760px;margin:0 auto}.prose h2{font-size:26px;letter-spacing:-.02em;color:var(--hi);margin:44px 0 12px}.prose h3{font-size:18px;color:var(--hi);margin:26px 0 8px}.prose p,.prose li{color:var(--mut);line-height:1.7;font-size:16px}.prose ul{padding-left:20px}
.crumbs{font-size:13px;color:var(--mut2)}.crumbs a{color:var(--mut)}
.calc{border:1px solid var(--line2);border-radius:22px;background:var(--panel);padding:26px;display:grid;gap:16px}
.calc .mrow{display:flex;flex-wrap:wrap;gap:8px}.calc .mrow button{height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line2);background:transparent;color:var(--mut);font:500 13.5px var(--sans);cursor:pointer}.calc .mrow button.on{border-color:var(--ac);color:var(--hi);background:var(--acg)}
.calc .g{display:grid;grid-template-columns:1fr 1fr;gap:12px}.calc label{display:grid;gap:6px;font-size:12.5px;color:var(--mut)}
.calc input,.calc select{height:48px;border-radius:12px;border:1px solid var(--line2);background:var(--bg2);color:var(--hi);font:500 16px var(--sans);padding:0 14px;outline:none;width:100%;min-width:0}.calc input:focus,.calc select:focus{border-color:var(--ac);box-shadow:0 0 0 3px var(--acg)}
.calc .riskrow{display:grid;grid-template-columns:1fr 92px;gap:8px}
.res{border-radius:16px;background:var(--bg2);border:1px solid var(--line);padding:18px;display:grid;gap:12px}
.res .big{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.res .big b{font:750 44px/1 var(--sans);color:var(--hi);letter-spacing:-.03em}.res .big span{color:var(--mut);font-size:16px}
.res .kv{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.res .kv div{font-size:12px;color:var(--mut2)}.res .kv b{display:block;color:var(--hi);font-size:16px;margin-top:3px;font-weight:600}
.res .warn{color:#fbbf24;font-size:13px}.calc .hint{font-size:12.5px;color:var(--mut2)}
@media (max-width:900px){.lp{padding:96px 0 50px}.lp-grid{grid-template-columns:1fr;gap:30px}.lp-card{position:static}.res .kv{grid-template-columns:1fr 1fr}}
@media (max-width:420px){.calc{padding:18px}.calc .g{grid-template-columns:1fr}}

.lp-grid{grid-template-areas:"main card" "prev card"}.lp-grid>div:first-child{grid-area:main}.lp-grid>.lp-card{grid-area:card}.lp-grid>.lp-pv{grid-area:prev;margin-top:0}
@media (max-width:900px){.lp-grid{grid-template-areas:"main" "card" "prev"}}
