:root{
  --bg:#081713; --bg2:#0d211b; --card:#10271f; --line:#1f3d32;
  --text:#eff5e8; --muted:#b4cabe; --accent:#cbff92; --accent-ink:#0b1a12;
  --glow:rgba(76,170,120,.22);
  --sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
}
@media (prefers-color-scheme:light){
  :root{
    --bg:#f4f8ef; --bg2:#e8f0e0; --card:#ffffff; --line:#d3e1cc;
    --text:#0d1f18; --muted:#47604f; --accent:#2f7a3b; --accent-ink:#ffffff;
    --glow:rgba(76,170,120,.18);
  }
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font:17px/1.6 var(--sans);-webkit-font-smoothing:antialiased;
  background-image:radial-gradient(900px 600px at 75% 10%,var(--glow),transparent 70%)}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent)}
.wrap{max-width:1140px;margin:0 auto;padding:0 24px}

.nav{display:flex;justify-content:space-between;align-items:center;padding-top:22px;padding-bottom:22px}
.logo{font-weight:700;font-size:1.6rem;letter-spacing:-.04em;color:var(--text);text-decoration:none}
.logo span{color:var(--accent)}

.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:.78rem;color:var(--accent);margin:0 0 14px}
h1,h2{letter-spacing:-.045em;line-height:1.02;margin:0 0 18px;font-weight:700}
h1{font-size:clamp(2.8rem,6.4vw,5.2rem)}
h2{font-size:clamp(2rem,4.2vw,3.2rem)}
h3{font-family:var(--serif);font-weight:600;font-size:1.45rem;color:var(--accent);margin:0 0 8px;letter-spacing:-.01em}
.lede{font-size:1.3rem;color:var(--text);margin:0 0 12px}
.sub,p{color:var(--muted)}
.fine{font-size:.85rem;color:var(--muted);opacity:.85}

.btn{display:inline-block;background:var(--accent);color:var(--accent-ink);font-weight:650;text-decoration:none;
  padding:13px 24px;border-radius:999px;transition:transform .15s ease,box-shadow .15s ease}
.btn:hover{transform:translateY(-1px);box-shadow:0 8px 24px var(--glow)}
.btn:focus-visible{outline:3px solid var(--text);outline-offset:3px}
.btn-sm{padding:9px 18px;font-size:.92rem}
.btn-lg{padding:16px 34px;font-size:1.1rem}
.chip{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:9px 16px;font-size:.92rem;color:var(--text)}
.cta-row{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:26px}

.hero{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center;padding-top:48px;padding-bottom:88px}
.shot{margin:0;border-radius:20px;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.35),0 0 0 1px var(--line)}
.hero-shot{transform:perspective(1400px) rotateY(-6deg) rotateX(2deg)}

.band{background:var(--bg2);border-block:1px solid var(--line);padding:88px 0}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px}
.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:26px}
.card p{margin:0}
.card .note{margin-top:12px;color:var(--text);font-size:.92rem}
.tags{list-style:none;padding:0;margin:16px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.tags li{font-size:.8rem;border:1px solid var(--line);border-radius:999px;padding:4px 12px;color:var(--text)}

.split{display:grid;grid-template-columns:.9fr 1.4fr;gap:56px;align-items:center;padding-top:96px;padding-bottom:16px}
.split.reverse{grid-template-columns:1.4fr .9fr}
.split.reverse>div{order:2}

.download{text-align:center;padding-top:120px;padding-bottom:96px}
.download h2{font-size:clamp(3.2rem,9vw,6rem)}
.download .dot{color:var(--accent)}
.download .btn{margin:18px 0 14px}

.disclaimer{border-top:1px solid var(--line);padding-top:28px;padding-bottom:28px}
.disclaimer p{font-size:.85rem;max-width:880px;margin:0}
.disclaimer strong{color:var(--text)}

.foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;
  padding-top:24px;padding-bottom:40px;color:var(--muted);font-size:.9rem}
.foot .logo{font-size:1.2rem}

@media (max-width:860px){
  .hero,.split,.split.reverse{grid-template-columns:1fr;gap:32px}
  .split.reverse>div{order:0}
  .hero{padding-top:32px;padding-bottom:64px}
  .hero-shot{transform:none}
  .grid{grid-template-columns:1fr}
  .band{padding:64px 0}
  .split{padding-top:64px}
  .download{padding-top:88px}
}
@media (max-width:420px){ .wrap{padding:0 16px} }
@media (prefers-reduced-motion:reduce){ html{scroll-behavior:auto} .btn{transition:none} }
.first-open{max-width:560px;margin:18px auto 0;text-align:left;border:1px solid var(--line);border-radius:14px;padding:12px 18px;background:var(--card)}
.first-open summary{cursor:pointer;color:var(--text);font-weight:600}
.first-open p{font-size:.92rem;margin:10px 0 4px}
.btn-ghost{background:transparent;color:var(--text);box-shadow:inset 0 0 0 1.5px var(--line)}
.dl-row{display:flex;justify-content:center;gap:28px;flex-wrap:wrap;margin-top:6px}
.dl .btn{margin:18px 0 10px}
