:root {
  --brand: #FFD60A;
  --brand-hover: #F0C800;
  --ink: #111111;
  --page: #E9E9E9;
  --card: #3a3a3a;
  --white: #ffffff;
  --text-soft: rgba(255,255,255,.9);
  --text-faint: rgba(255,255,255,.75);
  --radius-card: 22px;
  --radius: 6px;
  --shadow-card: 0 30px 90px rgba(0,0,0,.12);
  --sans: 'Plus Jakarta Sans', ui-sans-serif, system-ui, sans-serif;
  --dark: #0E0E0E;
  --dark-card: #1A1A1A;
  --dark-border: #2a2a2a;
  --muted: #666666;
  --muted-2: #777777;
  --muted-3: #aaaaaa;
  --grey-text: #8a8a8a;
  --surface: #F4F4F4;
  --placeholder: #DADADA;
  --line: #E0E0E0;
  --gold-ink: #8a7a10;
}

html, body {
  margin: 0;
  padding: 0;
  background: var(--page);
  color: var(--ink);
  font-family: var(--sans);
  -webkit-font-smoothing: antialiased;
  text-wrap: pretty;
}

* { box-sizing: border-box; }
a { color: var(--ink); text-decoration: none; }
a:hover { color: #6b5a00; }

.btn { display:inline-flex; gap:10px; align-items:center; padding:14px 20px; border-radius:var(--radius); font-size:11px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; transition:background .15s, border-color .15s; }
.btn-brand { background:var(--brand); color:var(--ink); }
.btn-brand:hover { background:var(--brand-hover); color:var(--ink); }
.btn-white { background:#fff; color:var(--ink); }
.btn-white:hover { background:var(--page); color:var(--ink); }
.eyebrow { font-size:10px; letter-spacing:.14em; font-weight:700; text-transform:uppercase; }
.h2 { font-size:clamp(28px,3.2vw,38px); font-weight:700; letter-spacing:-.03em; margin:14px 0 0; }
.foot-link { color:var(--muted-3); }
.foot-link:hover { color:var(--brand); }
@media (prefers-reduced-motion: reduce) { * { transition:none !important; } }