:root{--bg:hsl(24 14% 96%);--fg:hsl(0 0% 12%);--primary:hsl(3 64% 22%);--primary-fg:hsl(40 30% 96%);--accent:hsl(2 75% 54%);--accent-dark:hsl(2 75% 46%);--muted-fg:hsl(3 20% 40%);--border:hsl(6 18% 86%);--serif:"Instrument Serif",Georgia,serif;--mono:"IBM Plex Mono",ui-monospace,monospace}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--fg);font-family:var(--mono);font-size:14px;line-height:1.6;min-height:100vh;display:flex;flex-direction:column;-webkit-font-smoothing:antialiased}
a{color:var(--accent)}
.cs{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:48px 24px;gap:18px}
.logo{height:72px;width:auto}
.eyebrow{display:flex;align-items:center;gap:12px;font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.eyebrow::before,.eyebrow::after{content:"";height:1px;width:28px;background:var(--accent);opacity:.6}
h1{font-family:var(--serif);font-weight:400;color:var(--primary);font-size:clamp(48px,10vw,96px);line-height:1}
.lead{max-width:440px;color:var(--muted-fg)}
.btn{display:inline-flex;background:var(--accent);color:#fff;border:1px solid var(--accent);padding:12px 22px;font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none;font-family:var(--mono);cursor:pointer}
.btn:hover{background:var(--accent-dark)}
.foot{border-top:1px solid var(--border);padding:20px 24px;text-align:center;font-size:11px;color:var(--muted-fg)}
.priv{margin-top:8px;opacity:.8}
.age-locked body{overflow:hidden}
.age-gate{position:fixed;inset:0;z-index:9999;background:var(--primary);color:var(--primary-fg);display:flex;align-items:center;justify-content:center;padding:24px}
.age-gate-box{max-width:440px;width:100%;text-align:center}
.age-gate-brand{letter-spacing:.2em;text-transform:uppercase;font-size:12px;opacity:.75;margin-bottom:12px}
.age-gate h2{font-family:var(--serif);font-weight:400;font-size:40px;line-height:1.1;margin-bottom:12px}
.age-gate p{margin-bottom:20px}
.age-gate-btns{display:flex;flex-direction:column;gap:10px;margin-bottom:20px}
.age-gate .btn{width:100%;justify-content:center}
.age-gate .btn.ghost{background:transparent;color:var(--primary-fg);border-color:currentColor}
.age-gate-small{font-size:11px;opacity:.75}
