:root {
  /* ---- Foundation ---- */
  --charcoal: #100D0B;
  --charcoal-cold: #0C171C;
  --espresso: #211712;
  --ivory: #F2E9DA;
  --ivory-dim: #B8A98F;

  /* ---- Warm pole ---- */
  --gold: #C9A24B;
  --copper: #B06A3A;
  --ember: #E89A4C;

  /* ---- Cold pole ---- */
  --frost: #9FB8C4;
  --ice: #D6E6EC;

  /* ---- Seasoning ---- */
  --burgundy: #5A1E26;
  --forest: #2C3B2E;
  --navy: #18233A;

  /* ---- Hairlines ---- */
  --hair: rgba(242, 233, 218, 0.08);
  --hair-strong: rgba(242, 233, 218, 0.16);

  /* ---- Live drift (set by gauge.js; default = warm pole) ---- */
  --bg: var(--charcoal);
  --accent: var(--gold);
  --glow: 232, 154, 76;

  /* ---- Typography ---- */
  --font-serif: "Fraunces", Georgia, "Times New Roman", serif;
  --font-sans: "Manrope", system-ui, -apple-system, sans-serif;
  --font-mono: "Space Mono", ui-monospace, "Courier New", monospace;

  --fs-hero: clamp(3rem, 9.5vw, 8.2rem);
  --fs-display: clamp(2.4rem, 6vw, 4.5rem);
  --fs-h2: clamp(2rem, 4.4vw, 3.4rem);
  --fs-h3: clamp(1.3rem, 2.2vw, 1.6rem);
  --fs-lead: clamp(1rem, 1.5vw, 1.18rem);
  --fs-body: 1.0625rem;
  --fs-small: 0.8125rem;
  --fs-eyebrow: 0.75rem;

  --lh-display: 0.98;
  --lh-body: 1.7;

  /* ---- Spacing & layout ---- */
  --space-xs: 0.5rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2.5rem;
  --space-xl: 4rem;
  --pad-page: 7vw;
  --maxw: 1180px;
  --block-pad: 11vh;

  /* ---- Motion ---- */
  --ease: cubic-bezier(0.2, 0.8, 0.2, 1);
  --dur-micro: 240ms;
  --dur-reveal: 700ms;
  --dur-hero: 1000ms;
  --dur-bg: 0.4s;
}
