:root {
  /* ── Brand Colors ── */
  --color-forest:       #1A3A2A;
  --color-forest-light: #2A5A40;
  --color-cream:        #F5F0E8;
  --color-cream-dark:   #EAE4D6;
  --color-terracotta:   #D97B4A;
  --color-terracotta-dark: #C0672F;
  --color-teal:         #2E7D8A;
  --color-teal-light:   #3E9DAE;
  --color-marigold:     #F2C46B;
  --color-marigold-dark: #D4A040;
  --color-offwhite:     #FAFAF7;

  /* ── Text ── */
  --text-primary:   #1C1C1A;
  --text-secondary: #6B6760;
  --text-muted:     #9B9890;
  --text-inverse:   #FAFAF7;

  /* ── Surfaces ── */
  --surface-base:   #FAFAF7;
  --surface-card:   #FFFFFF;
  --surface-warm:   #F5F0E8;
  --surface-dark:   #1A3A2A;

  /* ── Borders ── */
  --border-light:  rgba(28, 28, 26, 0.08);
  --border-medium: rgba(28, 28, 26, 0.15);
  --border-strong: rgba(28, 28, 26, 0.25);

  /* ── Typography ── */
  --font-display: 'Playfair Display', Georgia, serif;
  --font-body:    'DM Sans', system-ui, sans-serif;
  --font-accent:  'Bebas Neue', Impact, sans-serif;

  /* ── Type Scale ── */
  --text-xs:   12px;
  --text-sm:   14px;
  --text-base: 16px;
  --text-lg:   18px;
  --text-xl:   22px;
  --text-2xl:  28px;
  --text-3xl:  36px;
  --text-4xl:  48px;
  --text-5xl:  60px;

  /* ── Font Weights ── */
  --weight-regular: 400;
  --weight-medium:  500;
  --weight-bold:    700;

  /* ── Line Heights ── */
  --leading-tight:  1.2;
  --leading-snug:   1.35;
  --leading-normal: 1.5;
  --leading-relaxed:1.7;

  /* ── Letter Spacing ── */
  --tracking-tight:  -0.02em;
  --tracking-normal:  0em;
  --tracking-wide:    0.08em;
  --tracking-widest:  0.15em;

  /* ── Spacing (4px base unit) ── */
  --space-1:  4px;
  --space-2:  8px;
  --space-3:  12px;
  --space-4:  16px;
  --space-5:  20px;
  --space-6:  24px;
  --space-8:  32px;
  --space-10: 40px;
  --space-12: 48px;
  --space-16: 64px;
  --space-20: 80px;
  --space-24: 96px;

  /* ── Border Radius ── */
  --radius-sm:   6px;
  --radius-md:   12px;
  --radius-lg:   16px;
  --radius-xl:   24px;
  --radius-full: 9999px;

  /* ── Shadows ── */
  --shadow-sm:  0 1px 3px rgba(26, 58, 42, 0.08);
  --shadow-md:  0 4px 16px rgba(26, 58, 42, 0.10);
  --shadow-lg:  0 8px 32px rgba(26, 58, 42, 0.14);
  --shadow-xl:  0 16px 48px rgba(26, 58, 42, 0.18);

  /* ── Transitions ── */
  --ease-default: cubic-bezier(0.4, 0, 0.2, 1);
  --duration-fast:   150ms;
  --duration-base:   300ms;
  --duration-slow:   400ms;

  /* ── Layout ── */
  --max-width:       1280px;
  --max-width-text:  780px;
  --nav-height:      72px;
  --bottom-bar-height: 68px;
}
