/* Drip Upgrade — base: tokens, fonts, reset, type, controls */
@font-face{font-family:"Barlow Condensed";src:url("../fonts/barlow-condensed-latin-600-normal.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Barlow Condensed";src:url("../fonts/barlow-condensed-latin-800-normal.woff2") format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Inter";src:url("../fonts/inter-latin-400-normal.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Inter";src:url("../fonts/inter-latin-600-normal.woff2") format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"JetBrains Mono";src:url("../fonts/jetbrains-mono-latin-500-normal.woff2") format("woff2");font-weight:500;font-display:swap}

:root{
  --ground:#14151a;
  --panel:#1c1e26;
  --panel-2:#23252f;
  --ink:#f1eee6;
  --ink-2:#b9b5ab;      /* 8.9:1 on ground, 8.0:1 on panel */
  --ink-3:#8f8b82;      /* 5.3:1 on ground — labels only */
  --line:#34363f;
  --line-2:#4a4c56;
  --gold:#d9b45a;
  --gold-ink:#14151a;
  --rose:#d08a8a;
  --display:"Barlow Condensed","Bahnschrift","Arial Narrow",sans-serif;
  --body:"Inter",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --mono:"JetBrains Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;
  --gutter:48px;
  --max:1344px;
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}
body{margin:0;background:var(--ground);color:var(--ink);font:400 17px/1.55 var(--body);overflow-x:hidden}
img{display:block}
a{color:inherit}
h1,h2,h3,p{margin:0}
ul,ol{margin:0;padding:0;list-style:none}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:16px;top:-60px;background:var(--gold);color:var(--gold-ink);padding:10px 14px;font-weight:600;z-index:20}
.skip:focus{top:12px}

/* pixel art: only 256/512/768/1024 css px, never scaled by layout */
.px{image-rendering:pixelated;image-rendering:crisp-edges;flex:none;max-width:none;background:var(--panel-2)}
.px-256{width:256px;height:256px}
.px-512{width:512px;height:512px}
.px-768{width:768px;height:768px}
.window{overflow:hidden;display:flex;justify-content:center;align-items:flex-start;flex:none}

.wrap{max-width:calc(var(--max) + var(--gutter)*2);margin:0 auto;padding:0 var(--gutter)}
.mono,.num{font-family:var(--mono);font-weight:500;font-variant-numeric:tabular-nums;letter-spacing:0}
.label{font:500 12px/1.4 var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}
.display{font-family:var(--display);font-weight:800;text-transform:uppercase;line-height:.88;letter-spacing:.005em}
.h2{font:800 clamp(48px,6.2vw,96px)/.9 var(--display);text-transform:uppercase}
.lede{color:var(--ink-2);max-width:40ch}
.gold{color:var(--gold)}
.rose{color:var(--rose)}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 26px;border:1px solid var(--ink);background:transparent;color:var(--ink);font:600 20px/1 var(--display);letter-spacing:.08em;text-transform:uppercase;text-decoration:none;cursor:pointer;border-radius:0}
.btn:hover{background:var(--ink);color:var(--ground)}
.btn-gold{background:var(--gold);border-color:var(--gold);color:var(--gold-ink)}
.btn-gold:hover{background:var(--ink);border-color:var(--ink);color:var(--ground)}
.btn[disabled]{cursor:not-allowed;background:var(--panel-2);border-color:var(--line-2);color:var(--ink-2)}

/* steps() reveal — only added when JS runs and motion is allowed */
.reveal-ready .rv{clip-path:inset(0 0 100% 0)}
.reveal-ready .rv.in{animation:rv 560ms steps(7,end) forwards}
@keyframes rv{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal-ready .rv{clip-path:none}
  .reveal-ready .rv.in{animation:none}
}
[hidden]{display:none!important}
