:root{
  --night:#0e1316; --panel:#151c20; --panel-2:#1b2429; --line:#26323a;
  --text:#e8e1d0; --muted:#9aa59f; --brass:#c9a24b; --brass-dim:#8f7432;
  --rust:#b8503a; --sage:#7fa38a; --sky:#7ea6c2;
  --slab:'Zilla Slab',Georgia,serif; --sans:'IBM Plex Sans',system-ui,sans-serif; --mono:'IBM Plex Mono',ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;color-scheme:dark}
body{background:var(--night);color:var(--text);font:400 1.0625rem/1.65 var(--sans);-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;
  background:radial-gradient(60rem 30rem at 85% -10%,rgba(201,162,75,.10),transparent 60%),radial-gradient(40rem 30rem at -10% 40%,rgba(126,166,194,.06),transparent 60%)}
a{color:inherit}
:focus-visible{outline:2px solid var(--brass);outline-offset:3px;border-radius:4px}
.wrap{max-width:74rem;margin:0 auto;padding:0 1.5rem}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--brass);color:#111;padding:.5rem 1rem;z-index:99}

/* nav */
.nav{position:sticky;top:0;z-index:20;background:rgba(14,19,22,.85);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;height:4rem;gap:1rem}
.brand{font:700 1.35rem var(--slab);text-decoration:none;letter-spacing:.01em;display:flex;align-items:center;gap:.6rem}
.brand svg{width:1.6rem;height:1.6rem}
.nav ul{display:flex;gap:1.6rem;list-style:none;font-size:.95rem}
.nav ul a{text-decoration:none;color:var(--muted)}.nav ul a:hover{color:var(--text)}
.btn{display:inline-block;text-decoration:none;font-weight:600;font-size:.98rem;padding:.7rem 1.25rem;border-radius:6px;border:1px solid var(--line);transition:background .15s,border-color .15s}
.btn.primary{background:var(--brass);color:#14110a;border-color:var(--brass)}
.btn.primary:hover{background:#d8b256}
.btn.ghost:hover{border-color:var(--brass-dim);background:var(--panel)}
.nav .btn{padding:.5rem 1rem}

/* hero */
.hero{padding:5rem 0 4.5rem}
.hero .wrap{display:grid;grid-template-columns:1fr 1.05fr;gap:3.5rem;align-items:center}
h1{font:700 clamp(2.8rem,6vw,4.9rem)/1.02 var(--slab);letter-spacing:-.015em}
.lede{margin-top:1.5rem;font-size:1.2rem;color:var(--muted);max-width:34rem}
.cta{display:flex;flex-wrap:wrap;gap:.9rem;margin-top:2rem}
.facts{display:flex;flex-wrap:wrap;gap:.5rem 1.6rem;margin-top:2.2rem;color:var(--muted);font-size:.95rem;list-style:none}
.facts li::before{content:"";display:inline-block;width:.5rem;height:.5rem;background:var(--brass);border-radius:50%;margin-right:.55rem}

/* code explorer */
.explorer{background:var(--panel);border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:0 30px 60px -30px #000}
.tabs{display:flex;overflow-x:auto;background:var(--panel-2);border-bottom:1px solid var(--line)}
.tabs button{background:none;border:0;color:var(--muted);font:500 .9rem var(--mono);padding:.85rem 1.1rem;cursor:pointer;border-bottom:2px solid transparent;white-space:nowrap}
.tabs button:hover{color:var(--text)}
.tabs button[aria-selected=true]{color:var(--brass);border-bottom-color:var(--brass);background:var(--panel)}
.panel{padding:1.2rem 1.3rem 1.4rem;min-height:19.5rem}
.panel[hidden]{display:none}
.panel p{font-size:.92rem;color:var(--muted);margin-bottom:.9rem}
pre{font:400 .86rem/1.7 var(--mono);overflow-x:auto;color:#d9d3c2}
.k{color:#d08b6b}.s{color:var(--sage)}.c{color:#6c7a80;font-style:italic}.f{color:var(--sky)}.n{color:var(--brass)}

/* sections */
section{padding:5rem 0;border-top:1px solid var(--line)}
h2{font:700 clamp(2rem,4vw,3rem)/1.1 var(--slab);letter-spacing:-.01em;max-width:40rem}
.sub{margin-top:1rem;color:var(--muted);max-width:38rem}
h3{font:700 1.35rem/1.25 var(--slab);margin-bottom:.5rem}
code{font:.88em var(--mono);background:var(--panel-2);border:1px solid var(--line);padding:.08em .4em;border-radius:4px;color:var(--brass)}

/* features: uneven layout, not identical cards */
.features{display:grid;grid-template-columns:repeat(6,1fr);gap:1px;margin-top:3rem;background:var(--line);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.feat{background:var(--night);padding:2rem 1.8rem}
.feat:hover{background:var(--panel)}
.feat p{color:var(--muted);font-size:1rem}
.feat ul{margin-top:.9rem;list-style:none;font-size:.93rem;color:var(--muted)}
.feat li{padding:.28rem 0;border-top:1px dashed var(--line)}
.w2{grid-column:span 2}.w3{grid-column:span 3}.w4{grid-column:span 4}
.money{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1rem}
.money span{font:500 .85rem var(--mono);padding:.3rem .7rem;border:1px solid var(--brass-dim);border-radius:99px;color:var(--brass)}

/* security split */
.split{display:grid;grid-template-columns:1fr 1.1fr;gap:3.5rem;align-items:start}
.rules{list-style:none;margin-top:0}
.rules li{padding:1.1rem 0;border-bottom:1px solid var(--line)}
.rules li:first-child{padding-top:0}
.rules strong{display:block;font:700 1.1rem var(--slab);margin-bottom:.15rem}
.rules span{color:var(--muted);font-size:.98rem}

/* ecosystem */
.eco{margin-top:3rem;display:grid;grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));gap:2.4rem 2rem}
.eco h3{font-size:1.15rem;color:var(--brass);border-bottom:1px solid var(--line);padding-bottom:.6rem;margin-bottom:.8rem}
.eco ul{list-style:none;font:400 .93rem/1.9 var(--mono);color:var(--muted)}
.eco a{text-decoration:none}.eco a:hover{color:var(--text)}
.note{margin-top:2rem;color:var(--muted);font-size:.95rem}

/* languages */
.langs{display:flex;flex-wrap:wrap;gap:.6rem;margin-top:2rem}
.langs span{padding:.45rem .95rem;background:var(--panel);border:1px solid var(--line);border-radius:6px;font-size:.95rem}

/* start */
.steps{list-style:none;counter-reset:s;margin-top:2.5rem;display:grid;gap:1.4rem;max-width:46rem}
.steps li{counter-increment:s;display:grid;grid-template-columns:2.6rem 1fr;gap:1rem}
.steps li::before{content:counter(s);font:700 1.5rem var(--slab);color:var(--brass);border:1px solid var(--brass-dim);border-radius:50%;width:2.6rem;height:2.6rem;display:grid;place-items:center}
.steps b{font-family:var(--slab);font-size:1.15rem}
.steps p{color:var(--muted);font-size:.98rem}
.terminal{margin-top:2rem;max-width:46rem;background:var(--panel);border:1px solid var(--line);border-radius:10px;padding:1.2rem 1.4rem}

footer{border-top:1px solid var(--line);padding:2.5rem 0 3rem;color:var(--muted);font-size:.93rem}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem}
footer a{text-decoration:none;margin-right:1.4rem}footer a:hover{color:var(--text)}

@media(max-width:60rem){
  .hero .wrap,.split{grid-template-columns:1fr}
  .w2,.w3,.w4{grid-column:span 6}
  .nav ul{display:none}
  .hero{padding-top:3rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
