/* ============================================================
   TOKENS — all design tokens as CSS custom properties.
   Every colour, font, spacing, and easing value lives here.
   Never hard-code a value that belongs in this file.
   ============================================================ */

/* ---------- Fonts: self-hosted WOFF2 ---------- */
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:300;font-display:swap;src:url('/fonts/cormorant-garamond-300.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:300;font-display:swap;src:url('/fonts/cormorant-garamond-300italic.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/cormorant-garamond-400.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:400;font-display:swap;src:url('/fonts/cormorant-garamond-400italic.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/cormorant-garamond-500.woff2') format('woff2')}
@font-face{font-family:'Cormorant Garamond';font-style:italic;font-weight:500;font-display:swap;src:url('/fonts/cormorant-garamond-500italic.woff2') format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:300;font-display:swap;src:url('/fonts/jost-300.woff2') format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/jost-400.woff2') format('woff2')}
@font-face{font-family:'Jost';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/jost-500.woff2') format('woff2')}
@font-face{font-family:'DM Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/dm-mono-400.woff2') format('woff2')}
@font-face{font-family:'DM Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/dm-mono-500.woff2') format('woff2')}

:root{
  /* Grounds */
  --midnight:#0A0C10;
  --obsidian:#111520;
  --steel:#2A3045;
  --iron:#3A4258;         /* non-text dividers ONLY — fails AA as text */

  /* Gold — the sole accent, the architecture */
  --gold:#C9A84C;
  --gold-bright:#E2C170;  /* hover / focus */
  --gold-muted:#8A6E2F;   /* mobile reach-line gradient foot */

  /* Primary type */
  --ivory:#FAF8F4;

  /* Text opacity scale on midnight */
  --t-100:rgba(255,255,255,1);
  --t-90:rgba(255,255,255,.90);
  --t-80:rgba(255,255,255,.80);
  --t-60:rgba(255,255,255,.60);
  --t-40:rgba(255,255,255,.40);
  --t-30:rgba(255,255,255,.30);
  --t-12:rgba(255,255,255,.12);
  --t-08:rgba(255,255,255,.08);
  --t-06:rgba(255,255,255,.06);
  --legal:rgba(255,255,255,.50); /* footer — computed AA min on midnight ≈ 4.6:1 */

  /* Type stacks */
  --serif:'Cormorant Garamond',Garamond,'Times New Roman',serif;
  --sans:'Jost','Helvetica Neue',Arial,sans-serif;
  --mono:'DM Mono','Courier New',monospace;

  /* Layout */
  --maxw:1280px;
  --gutter:80px;
  --gutter-t:48px;
  --gutter-m:24px;

  /* Motion */
  --ease-out:cubic-bezier(.16,1,.3,1);
  --ease:cubic-bezier(.4,0,.2,1);
}
