:root {
  /* Colors */
  --color-bg-primary: #EDE8E2;
  --color-bg-secondary: #F5F2EE;
  --color-text-primary: #2C2825;
  --color-text-secondary: #6B6560;
  --color-accent: #B8976B;
  --color-accent-hover: #A6845A;
  --color-border: #D5CEC6;
  --color-white: #FFFFFF;
  --color-overlay: rgba(44, 40, 37, 0.85);

  /* Typography */
  --font-heading: 'Cormorant Garamond', serif;
  --font-body: 'Jost', sans-serif;

  --fs-display: clamp(2.5rem, 5vw, 4.5rem);
  --fs-h1: clamp(2rem, 4vw, 3.5rem);
  --fs-h2: clamp(1.75rem, 3vw, 2.5rem);
  --fs-h3: clamp(1.25rem, 2vw, 1.75rem);
  --fs-body: 1rem;
  --fs-body-lg: 1.125rem;
  --fs-small: 0.875rem;
  --fs-xs: 0.75rem;

  --fw-light: 300;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;

  --lh-heading: 1.2;
  --lh-body: 1.7;

  --ls-wide: 0.15em;
  --ls-wider: 0.25em;

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

  /* Layout */
  --max-width: 1200px;
  --max-width-narrow: 800px;
  --max-width-text: 650px;
  --nav-height: 80px;

  /* Borders & Shadows */
  --radius-sm: 2px;
  --radius-md: 4px;
  --shadow-sm: 0 2px 8px rgba(44, 40, 37, 0.06);
  --shadow-md: 0 4px 16px rgba(44, 40, 37, 0.1);
  --shadow-lg: 0 8px 32px rgba(44, 40, 37, 0.12);

  /* Transitions */
  --transition-fast: 200ms ease;
  --transition-base: 300ms ease;
  --transition-slow: 600ms ease;
}
