:root {
  /* Brand and semantic color */
  --color-ink: #1d1e23;
  --color-paper: #f6f5f1;
  --color-lime: #d8ff52;
  --color-brand: var(--color-lime);
  --color-background: var(--color-ink);
  --color-text: var(--color-paper);
  --color-blue: #9edcf5;
  --color-mint: #cce8da;
  --color-surface: #ffffff;
  --color-muted: #5a5c60;
  --color-line: rgba(29, 30, 35, .18);
  --color-focus: #315fca;

  /* Type */
  --font-sans: Manrope, Arial, sans-serif;
  --font-mono: 'DM Mono', monospace;
  --font-editorial: Georgia, serif;
  --text-xs: .6875rem;
  --text-sm: .875rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-display: clamp(3.75rem, 9.1vw, 8.6875rem);

  /* Layout and shape */
  --space-1: .25rem;
  --space-2: .5rem;
  --space-3: .75rem;
  --space-4: 1rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-24: 6rem;
  --container-max: 80rem;
  --radius-sm: .25rem;
  --radius-md: .875rem;
  --radius-pill: 999px;

  /* Legacy aliases used by the portfolio and case pages. */
  --ink: var(--color-ink);
  --paper: var(--color-paper);
  --lime: var(--color-lime);
  --blue: var(--color-blue);
  --mint: var(--color-mint);
  --line: var(--color-line);
}
