@font-face { font-family: "Geist"; src: url("/assets/fonts/Geist-Regular.ttf") format("truetype"); font-weight: 400; font-display: swap; }
@font-face { font-family: "Geist"; src: url("/assets/fonts/Geist-SemiBold.ttf") format("truetype"); font-weight: 600; font-display: swap; }
@font-face { font-family: "Geist Mono"; src: url("/assets/fonts/GeistMono-Regular.ttf") format("truetype"); font-weight: 400; font-display: swap; }

:root {
  --bg: #0a0a0a; --surface: #141413; --line: #262624;
  --text: #f2f2f0; --soft: #c9c9c5; --muted: #8a8a86; --signal: #ff5a1f; --stamp: #ff9440;
}
* { box-sizing: border-box; }
html { background: var(--bg); color: var(--text); }
body { margin: 0; font: 17px/1.6 "Geist", system-ui, sans-serif; -webkit-font-smoothing: antialiased; }
a { color: var(--signal); text-underline-offset: 3px; }
a:hover { color: #ff8a5c; }
.wrap { max-width: 720px; margin: 0 auto; padding: 0 20px; }
.mono { font-family: "Geist Mono", ui-monospace, monospace; font-size: 12px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
header.top { display: flex; justify-content: space-between; align-items: center; padding: 22px 0; }
header.top a { color: var(--text); text-decoration: none; }
header.top nav a { margin-left: 18px; color: var(--muted); }
header.top nav a:hover { color: var(--text); }
h1 { font-weight: 600; letter-spacing: -.03em; line-height: 1.05; margin: 0; }
h2 { font-weight: 600; letter-spacing: -.01em; font-size: 22px; margin: 40px 0 8px; }
p, li { color: var(--soft); }
.hero { position: relative; margin: 8px 0 0; border-radius: 6px; overflow: hidden; aspect-ratio: 3 / 4; max-height: 70vh; width: 100%; background: #000; }
.hero img { width: 100%; height: 100%; object-fit: cover; display: block; }
.stamp { position: absolute; right: 22px; bottom: 18px; font-family: "Geist Mono", monospace; font-size: 20px; color: var(--stamp); text-shadow: 0 0 6px rgba(255, 110, 30, .9); }
.lead h1 { font-size: clamp(40px, 9vw, 64px); margin-top: 36px; }
.lead p { font-size: 19px; color: var(--muted); max-width: 34em; }
.store { display: inline-block; margin: 18px 8px 0 0; padding: 14px 26px; border-radius: 999px; background: var(--signal); color: var(--bg); font-weight: 600; text-decoration: none; }
.store[aria-disabled="true"] { opacity: .55; pointer-events: none; }
.grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; margin-top: 24px; }
.cart { border: 1px solid var(--line); background: var(--surface); border-radius: 10px; padding: 12px; }
.cart b { display: block; font-weight: 400; color: var(--text); margin-top: 6px; }
.points { list-style: none; padding: 0; }
.points li { padding: 14px 0; border-top: 1px solid var(--line); }
footer { margin: 64px 0 40px; padding-top: 20px; border-top: 1px solid var(--line); display: flex; flex-wrap: wrap; gap: 18px; justify-content: space-between; }
footer a { color: var(--muted); }
.doc h1 { font-size: 40px; margin-top: 24px; }
.doc .updated { margin-top: 10px; }
