:root {
  /* Colors - Base palette */
  --color-black: #000000;
  --color-gold: #9A7B4F;
  --color-gold-light: #B8956E;
  --color-gold-dark: #7D6340;
  --color-beige: #9A7B4F;
  --color-beige-dark: #BFB193;
  --color-beige-light: #E8DCCA;

  /* Gray shades for sections */
  --color-gray-darkest: #0A0A0A;
  --color-gray-dark: #121212;
  --color-gray-medium: #1A1A1A;
  --color-gray-light: #222222;

  /* Semantic color aliases */
  --color-bg-primary: var(--color-black);
  --color-text-primary: #FFFFFF;
  --color-text-secondary: #E0E0E0;
  --color-accent: var(--color-gold);

  /* Component colors */
  --color-button-bg: var(--color-beige);
  --color-button-text: var(--color-black);
  --color-button-border: var(--color-beige);
  --color-button-bg-hover: var(--color-beige-light);

  /* Typography - Fluid scales with clamp() */
  --font-size-sm: clamp(0.875rem, 0.31vw + 0.813rem, 1rem);
  --font-size-base: clamp(1rem, 0.31vw + 0.938rem, 1.19rem);
  --font-size-lg: clamp(1.25rem, 0.625vw + 1.125rem, 1.5rem);
  --font-size-xl: clamp(1.5rem, 1.25vw + 1.25rem, 2rem);
  --font-size-2xl: clamp(2rem, 2.5vw + 1.5rem, 3rem);
  --font-size-3xl: clamp(2.5rem, 4vw + 1.75rem, 4rem);

  /* Spacing scale */
  --space-xs: 0.5rem;   /* 8px */
  --space-sm: 1rem;     /* 16px */
  --space-md: 1.5rem;   /* 24px */
  --space-lg: 2rem;     /* 32px */
  --space-xl: 3rem;     /* 48px */
  --space-2xl: 4rem;    /* 64px */

  /* Transitions */
  --transition-fast: 0.15s ease-out;
  --transition-base: 0.2s ease-out;
  --transition-slow: 0.3s ease-out;

  /* Design enhancement tokens */
  --gradient-gold: linear-gradient(135deg, var(--color-gold-dark) 0%, var(--color-gold-light) 100%);
  --shadow-card: 0 2px 16px rgba(0, 0, 0, 0.45), 0 0 0 1px rgba(154, 123, 79, 0.06) inset;
  --shadow-elevated: 0 8px 32px rgba(0, 0, 0, 0.5);
  --shadow-glow-gold: 0 0 48px rgba(154, 123, 79, 0.12);
}
