:root{
  --bg:#0E0917; --bg-deep:#080510; --surface:#160E21; --surface2:#1E1733;
  --ink:#F2F3FB; --body:#C9CCE6; --mute:#8B8EA8; --primary:#CEEC97;
  --border:rgba(217,219,241,.11); --glow:rgba(206,236,151,.22); --radius:0.85rem;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg-deep);color:var(--body);
  font-family:"Hanken Grotesk",system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  line-height:1.65;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.bg{position:fixed;inset:0;z-index:-1;background-color:var(--bg-deep);
  background-image:
    radial-gradient(40% 46% at 12% 2%, var(--glow), transparent 66%),
    radial-gradient(46% 52% at 90% 0%, color-mix(in oklab, var(--primary) 8%, transparent), transparent 64%),
    radial-gradient(60% 60% at 84% 98%, color-mix(in oklab, var(--surface2) 90%, transparent), transparent 70%),
    radial-gradient(80% 70% at 20% 100%, color-mix(in oklab, var(--surface) 80%, transparent), transparent 72%)}
.wrap{max-width:820px;margin:0 auto;padding:0 24px}
header.site{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:26px 0}
.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;color:var(--ink)}
.brand .mark{flex:0 0 auto;display:block}
.brand span{display:inline-flex;flex-direction:column;line-height:1}
.brand b{font-family:"Sora",system-ui,sans-serif;font-weight:700;font-size:20px;letter-spacing:-.01em;color:var(--ink)}
.brand small{color:var(--mute);font-size:10px;letter-spacing:.28em;text-transform:uppercase;margin-top:4px;font-family:"Geist",system-ui,sans-serif}
nav.top a{color:var(--mute);text-decoration:none;font-size:14px;margin-left:20px;transition:color .18s}
nav.top a:hover{color:var(--primary)}
main{padding:20px 0 8px}
h1{font-family:"Sora",system-ui,sans-serif;font-weight:800;font-size:clamp(30px,5.2vw,46px);line-height:1.06;letter-spacing:-.02em;margin:10px 0 8px;color:var(--ink)}
h2{font-family:"Sora",system-ui,sans-serif;font-weight:700;font-size:21px;letter-spacing:-.01em;margin:38px 0 10px;color:var(--ink)}
h3{font-family:"Sora",system-ui,sans-serif;font-weight:600;font-size:16px;margin:22px 0 6px;color:var(--ink)}
.updated{color:var(--mute);font-size:13px;margin:0 0 30px}
p,li{color:var(--body)}
.lead{font-size:18px;color:var(--ink);max-width:64ch;font-weight:400}
a{color:var(--primary);text-decoration:none}
a:hover{text-decoration:underline}
.card{background:color-mix(in oklab,var(--surface) 78%, transparent);border:1px solid var(--border);
  border-radius:var(--radius);padding:26px 30px;backdrop-filter:blur(8px)}
.card + .card{margin-top:16px}
ul{padding-left:22px}li{margin:5px 0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:30px 0 8px}
.tile{background:color-mix(in oklab,var(--surface) 82%, transparent);border:1px solid var(--border);border-radius:var(--radius);
  padding:18px 20px;text-decoration:none;color:var(--ink);transition:border-color .2s,transform .2s,background .2s}
.tile:hover{border-color:color-mix(in oklab,var(--primary) 55%,var(--border));transform:translateY(-2px);text-decoration:none;background:color-mix(in oklab,var(--surface2) 70%, transparent)}
.tile b{display:block;font-family:"Sora",system-ui,sans-serif;font-weight:700;font-size:16px;margin-bottom:5px;color:var(--ink)}
.tile span{color:var(--mute);font-size:13px;line-height:1.5}
.addr{background:var(--surface2);border:1px solid var(--border);border-radius:12px;padding:14px 18px;
  font-style:normal;color:var(--ink);display:inline-block;line-height:1.7}
hr{border:none;border-top:1px solid var(--border);margin:30px 0}
strong{color:var(--ink);font-weight:600}
footer.site{border-top:1px solid var(--border);margin-top:52px;padding:26px 0 46px;color:var(--mute);
  font-size:13px;display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;align-items:center}
footer.site .legal-nav{display:flex;flex-wrap:wrap;gap:16px}
footer.site a{color:var(--mute)}
footer.site a:hover{color:var(--primary);text-decoration:none}
@media(max-width:560px){nav.top a{margin:0 14px 0 0}}
