:root{
  --ink:#16161D;
  --ink-panel:#1E1E27;
  --ink-line:#2C2C38;
  --acid:#E8FE5A;
  --paper:#F5F2EA;
  --grey:#9A9AA0;
  --fuchsia:#FB48C4;
  --display:'Archivo',system-ui,sans-serif;
  --body:'Space Grotesk',system-ui,sans-serif;
  --gutter:clamp(1.25rem,5vw,4.5rem);
  --rule:1px solid var(--ink-line);
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html,body{max-width:100%;overflow-x:hidden}
body{
  background:var(--ink);color:var(--paper);
  font-family:var(--body);font-size:clamp(1rem,.95rem + .25vw,1.125rem);
  line-height:1.6;font-weight:400;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--acid);text-decoration-color:rgba(232,254,90,.4)}
a:hover{text-decoration-color:var(--acid)}
:focus-visible{outline:2px solid var(--acid);outline-offset:3px}
.wrap{max-width:1180px;margin:0 auto;padding-inline:var(--gutter);width:100%}
h1,h2{font-family:var(--display);text-transform:uppercase;line-height:.95;letter-spacing:-.02em}
h1{font-weight:900;font-size:clamp(2rem,1.3rem + 3vw,3.5rem)}
h2{font-weight:900;font-size:clamp(1.35rem,1.1rem + 1vw,1.75rem);margin:2.75rem 0 1rem}

/* ── Header ─────────────────────────────── */
.top{
  border-bottom:var(--rule);position:sticky;top:0;z-index:20;
  background:rgba(22,22,29,.88);backdrop-filter:blur(10px);
}
.top .inner{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem var(--gutter)}
.logo{display:flex;align-items:center;text-decoration:none;line-height:0}
.logo img{height:34px;width:auto;display:block}
@media(max-width:720px){.logo img{height:30px}}
.top nav{display:flex;gap:1.75rem;font-family:var(--body);font-size:.8rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.top nav a{text-decoration:none;color:var(--grey);transition:color .18s}
.top nav a:hover{color:var(--paper)}

/* ── Page head ──────────────────────────── */
.page-head{border-bottom:var(--rule);padding-block:clamp(2.5rem,6vw,4rem)}
.eyebrow{
  display:block;font-family:var(--body);font-size:.85rem;font-weight:700;
  letter-spacing:.18em;text-transform:uppercase;color:var(--acid);margin-bottom:1rem;
}
.updated{color:var(--grey);font-size:.85rem;margin-top:1rem}
.intro{margin-top:1.25rem;max-width:52ch;color:#D8D5CD;font-size:clamp(1rem,.95rem + .3vw,1.15rem)}

/* ── Body copy ──────────────────────────── */
main{padding-block:clamp(2.5rem,6vw,4rem)}
main .wrap{max-width:840px}
main p,main ul,main ol{max-width:68ch}
main p{margin-top:1rem}
main ul,main ol{margin-top:1rem;padding-left:1.4rem}
main li{margin-top:.6rem}
main li::marker{color:var(--acid)}
table{width:100%;max-width:none;border-collapse:collapse;margin-top:1.5rem;font-size:.95rem}
th,td{text-align:left;padding:.75rem 1rem;border-bottom:var(--rule);vertical-align:top}
th{font-family:var(--display);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.8rem;color:var(--acid)}
@media(max-width:600px){table,thead,tbody,th,td,tr{display:block}thead{display:none}td{border-bottom:none;padding:.4rem 0}tr{padding:.75rem 0;border-bottom:var(--rule)}}
.lede-term{font-family:var(--display);font-weight:900;text-transform:uppercase;color:var(--acid)}
.callout{
  border:1px solid var(--acid);background:var(--ink-panel);
  padding:1.25rem 1.5rem;margin-top:1.5rem;
}
.callout p{margin-top:0}
.callout p + p{margin-top:.75rem}

/* ── Footer ─────────────────────────────── */
footer{padding-block:clamp(2.5rem,5vw,3.5rem);font-size:.85rem;color:var(--grey);border-top:var(--rule)}
.foot-line{
  font-family:var(--display);font-weight:900;text-transform:uppercase;
  color:var(--paper);font-size:clamp(1.1rem,1rem + 1vw,1.75rem);margin-bottom:2rem;letter-spacing:-.01em;
}
.foot-meta{display:flex;flex-wrap:wrap;gap:.5rem 2rem;justify-content:space-between;border-top:var(--rule);padding-top:1.5rem}
.foot-meta a{color:inherit}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{transition:none!important;animation:none!important}
}
