:root {
  /* Brand Palette from Reference */
  --color-forest: #164030;
  --color-forest-rgb: 22, 64, 48;
  --color-golden: #D09020;
  --color-golden-rgb: 208, 144, 32;
  --color-cream: #F0F0E0;
  --color-cream-rgb: 240, 240, 224;
  --color-ivory: #F0E0D0;
  --color-ivory-rgb: 240, 224, 208;
  --color-beige: #E0C090;
  --color-beige-rgb: 224, 192, 144;
  --color-white: #FFFFFF;
  --color-white-rgb: 255, 255, 255;

  /* Functional Semantics */
  --bg-primary: var(--color-cream);
  --bg-secondary: var(--color-ivory);
  --bg-surface: var(--color-white);
  --bg-dark: var(--color-forest);
  --bg-accent: var(--color-golden);
  --bg-tint: rgba(var(--color-beige-rgb), 0.35);

  --text-primary: var(--color-forest);
  --text-muted: rgba(var(--color-forest-rgb), 0.72);
  --text-faint: rgba(var(--color-forest-rgb), 0.48);
  --text-inverse: var(--color-cream);
  --text-accent: var(--color-golden);

  --border-subtle: rgba(var(--color-forest-rgb), 0.12);
  --border-medium: rgba(var(--color-forest-rgb), 0.22);
  --border-beige: var(--color-beige);
  --border-accent: var(--color-golden);

  /* Typography */
  --font-serif: 'Newsreader', 'Playfair Display', Georgia, serif;
  --font-sans: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-mono: 'JetBrains Mono', 'SF Mono', Consolas, monospace;

  /* Fluid Spacing */
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;
  --space-3xl: 4.5rem;
  --space-4xl: 6rem;

  /* Layout */
  --container-max: 1200px;
  --container-narrow: 840px;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;

  /* Elevation & Shadows */
  --shadow-subtle: 0 2px 8px rgba(var(--color-forest-rgb), 0.04);
  --shadow-card: 0 8px 24px -4px rgba(var(--color-forest-rgb), 0.08);
  --shadow-float: 0 20px 40px -10px rgba(var(--color-forest-rgb), 0.12);
  --shadow-dropdown: 0 12px 32px rgba(var(--color-forest-rgb), 0.15);

  /* Transitions */
  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-normal: 250ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-smooth: 400ms cubic-bezier(0.16, 1, 0.3, 1);
}
