:root {
  /* ─── Color ─── */
  --bg:      #F0EDE6;
  --ink:     #1A1A1A;
  --orange:  #D4622B;
  --blue:    #1B2D4F;
  --cream:   #F5F0E1;
  --red:     #C4391D;
  --grey:    #8A8578;
  --white:   #FAFAF7;

  /* Functional aliases */
  --color-text:       var(--ink);
  --color-text-muted: var(--grey);
  --color-bg:         var(--bg);
  --color-surface:    var(--cream);
  --color-accent:     var(--orange);
  --color-accent-alt: var(--blue);

  /* ─── Typography ─── */
  --font-display: 'Space Grotesk', 'Arial Black', sans-serif;
  --font-body:    'Inter', 'Helvetica Neue', Arial, sans-serif;
  --font-mono:    'JetBrains Mono', 'SF Mono', 'Consolas', monospace;

  --text-xs:      0.75rem;
  --text-sm:      0.875rem;
  --text-base:    1rem;
  --text-lg:      1.25rem;
  --text-xl:      1.5rem;
  --text-2xl:     2rem;
  --text-3xl:     3rem;
  --text-display: clamp(3rem, 8vw, 7rem);

  --leading-tight:  1.1;
  --leading-snug:   1.3;
  --leading-normal: 1.6;

  --tracking-tight:  -0.03em;
  --tracking-normal:  0;
  --tracking-wide:    0.05em;
  --tracking-mono:    0.02em;

  /* ─── Spacing ─── */
  --space-xs:   0.25rem;   /* 4px */
  --space-sm:   0.5rem;    /* 8px */
  --space-md:   1rem;      /* 16px */
  --space-lg:   1.5rem;    /* 24px */
  --space-xl:   2rem;      /* 32px */
  --space-2xl:  3rem;      /* 48px */
  --space-3xl:  4rem;      /* 64px */
  --space-4xl:  6rem;      /* 96px */
  --space-5xl:  8rem;      /* 128px */

  /* ─── Layout ─── */
  --container-max:   1200px;
  --container-narrow: 680px;
  --gutter:          clamp(1rem, 3vw, 2rem);

  /* ─── Motion ─── */
  --ease-out:    cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --duration-fast:   150ms;
  --duration-normal: 300ms;
  --duration-slow:   600ms;

  /* ─── Borders & Radius ─── */
  --radius-sm: 3px;
  --radius-md: 6px;
  --radius-lg: 12px;

  /* ─── Z-index ─── */
  --z-base:    1;
  --z-above:   10;
  --z-nav:     100;
  --z-overlay: 200;
  --z-cursor:  9999;
}
