:root{
  --bg:#0f1115; --panel:#161922; --ink:#e8eaf0; --muted:#9aa3b2;
  --accent:#6ea8fe; --line:#262b36; --band:#12151c; --good:#3fb950;
  --max:1040px; --radius:14px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0; background:var(--bg); color:var(--ink);
  font:16px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  -webkit-font-smoothing:antialiased;
}
.wrap{max-width:var(--max); margin:0 auto; padding:0 24px}
a{color:var(--accent); text-decoration:none}
a:hover{text-decoration:underline}
code{background:#0c0e13; border:1px solid var(--line); border-radius:6px; padding:1px 6px; font-size:.9em}

/* nav */
.nav{position:sticky; top:0; z-index:10; background:rgba(15,17,21,.85); backdrop-filter:blur(8px); border-bottom:1px solid var(--line)}
.nav .wrap{display:flex; align-items:center; justify-content:space-between; height:60px}
.brand{font-weight:700; letter-spacing:.5px; color:var(--ink)}
.nav nav a{margin-left:22px; color:var(--muted); font-size:.95rem}
.nav nav a:hover{color:var(--ink); text-decoration:none}
.nav .ghost{border:1px solid var(--line); padding:6px 12px; border-radius:8px}

/* hero */
.hero{padding:96px 24px 72px}
.eyebrow{color:var(--accent); text-transform:uppercase; letter-spacing:.18em; font-size:.78rem; font-weight:600; margin:0 0 18px}
h1{font-size:clamp(2.1rem,5vw,3.4rem); line-height:1.1; margin:0 0 22px; letter-spacing:-.02em}
.lede{font-size:1.2rem; color:var(--muted); max-width:660px; margin:0 0 32px}
.lede em{color:var(--ink); font-style:normal; border-bottom:2px solid var(--accent)}
.cta{display:flex; gap:14px; flex-wrap:wrap; margin-bottom:18px}
.btn{display:inline-block; background:var(--accent); color:#08111f; font-weight:600; padding:12px 22px; border-radius:10px}
.btn:hover{text-decoration:none; filter:brightness(1.08)}
.btn.ghost{background:transparent; color:var(--ink); border:1px solid var(--line)}
.btn.small{padding:8px 16px; font-size:.92rem}
.fineprint{color:var(--muted); font-size:.86rem; margin-top:10px}

/* sections */
section{padding:64px 0}
.band{background:var(--band); border-top:1px solid var(--line); border-bottom:1px solid var(--line)}
h2{font-size:clamp(1.5rem,3vw,2.1rem); margin:0 0 18px; letter-spacing:-.01em}
h3{font-size:1.1rem; margin:0 0 8px}
p{max-width:720px}
.claim{border-left:3px solid var(--accent); padding-left:16px}
.pending{color:#d29922; font-size:.82em; font-weight:600}

/* grid + cards */
.grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); gap:18px; margin-top:24px}
.card{background:var(--panel); border:1px solid var(--line); border-radius:var(--radius); padding:22px}
.card p{color:var(--muted); margin:0}

/* proof list */
.proof{list-style:none; padding:0; max-width:760px}
.proof li{padding:12px 0 12px 28px; border-bottom:1px solid var(--line); position:relative}
.proof li::before{content:"✓"; color:var(--good); position:absolute; left:0; font-weight:700}

/* demo */
.video-placeholder{margin-top:18px; aspect-ratio:16/9; background:var(--panel); border:1px dashed var(--line); border-radius:var(--radius); display:flex; align-items:center; justify-content:center; color:var(--muted)}

/* footer */
footer{border-top:1px solid var(--line); padding:48px 24px 64px}
.foot-grid{display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:24px; margin-bottom:24px}
.muted{color:var(--muted)}
.small{font-size:.85rem}

/* email capture (whitepaper / launch-updates form) */
.signup{display:flex; gap:10px; flex-wrap:wrap; margin-top:20px; max-width:520px}
.signup input[type=email]{flex:1 1 240px; min-width:0; padding:12px 14px; border-radius:10px;
  border:1px solid var(--line); background:var(--panel); color:var(--ink); font-size:1rem}
.signup input[type=email]:focus{outline:none; border-color:var(--accent)}
.signup .btn{cursor:pointer; border:0; font-family:inherit; font-size:1rem}
