:root {
  /* Color Palette - Authoritative Editorial */
  --color-ink: #0A0A0A;        /* Deep black for main text */
  --color-charcoal: #2D2D2D;   /* Secondary text */
  --color-parchment: #F9F8F6;  /* Warm off-white background */
  --color-paper: #FFFFFF;      /* Pure white for cards/contrast */
  --color-crimson: #8B0000;    /* Legal crimson for accents/primary actions */
  --color-crimson-hover: #600000;
  --color-navy: #0F1C2E;       /* Deep navy for contrast sections */
  --color-slate: #E0DFDB;      /* Borders and subtle backgrounds */

  /* Typography */
  --font-display: 'Crimson Pro', serif;
  --font-body: 'Public Sans', system-ui, -apple-system, sans-serif;

  /* Typographic Scale */
  --text-xs: 0.75rem;     /* 12px */
  --text-sm: 0.875rem;    /* 14px */
  --text-base: 1.125rem;  /* 18px */
  --text-lg: 1.25rem;     /* 20px */
  --text-xl: 1.5rem;      /* 24px */
  --text-2xl: 2rem;       /* 32px */
  --text-3xl: 2.5rem;     /* 40px */
  --text-4xl: 3.5rem;     /* 56px */
  --text-5xl: 4.5rem;     /* 72px */

  /* Spacing Scale */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-24: 6rem;
  --space-32: 8rem;

  /* Layout */
  --container-max: 1200px;
  --container-narrow: 800px;
  --radius-sm: 2px; /* Sharp, authoritative edges */
  --radius-md: 4px;
}

@font-face {
  font-family: 'Crimson Pro';
  src: url('/assets/fonts/CrimsonPro-Variable.woff2') format('woff2');
  font-weight: 200 900;
  font-display: swap;
}

@font-face {
  font-family: 'Public Sans';
  src: url('/assets/fonts/PublicSans-Variable.woff2') format('woff2');
  font-weight: 100 900;
  font-display: swap;
}
