:root {
  /* Colors - Luxury Executive Palette */
  --bg-primary: #FAFAF8;
  /* Warm White */
  --bg-secondary: #F5F2EB;
  /* Soft Ivory */
  --bg-tertiary: #FFFFFF;
  /* Pure White */

  --text-primary: #1E293B;
  /* Deep Navy */
  --text-secondary: #64748B;
  /* Slate Gray */
  --text-muted: #94A3B8;
  /* Lighter Slate */

  --accent-primary: #D4AF37;
  /* Luxury Gold */
  --accent-secondary: #C9A227;
  /* Rich Gold */
  --accent-tertiary: #E5C76B;
  /* Soft Gold */
  --accent-glow: rgba(212, 175, 55, 0.2);
  /* Soft Gold Glow */

  --border-color: rgba(30, 41, 59, 0.1);
  /* Subtle Navy Border */
  --border-hover: rgba(212, 175, 55, 0.5);
  /* Gold Border on Hover */

  /* Typography */
  --font-main: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --font-mono: 'Fira Code', 'Courier New', Courier, monospace;
  --font-heading: 'Playfair Display', serif;
  --font-accent: 'Playfair Display', serif;
  --font-button: 'Playfair Display', serif;

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

  /* Transitions */
  --transition-fast: 0.2s ease-out;
  --transition-normal: 0.3s ease-out;
  --transition-slow: 0.5s ease-out;

  /* Border Radius - Elegant */
  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-lg: 8px;
  --radius-xl: 12px;
  --radius-2xl: 16px;
  --radius-full: 9999px;

  /* Shadows - Soft and Elegant */
  --shadow-sm: 0 2px 4px rgba(30, 41, 59, 0.05);
  --shadow-md: 0 4px 12px rgba(30, 41, 59, 0.08);
  --shadow-lg: 0 10px 25px rgba(30, 41, 59, 0.1);
  --shadow-glow: 0 10px 20px rgba(212, 175, 55, 0.15);
  /* Soft gold shadow */

  /* Z-index */
  --z-negative: -1;
  --z-elevate: 1;
  --z-dropdown: 1000;
  --z-sticky: 1020;
  --z-fixed: 1030;
  --z-modal: 1040;
  --z-popover: 1050;
  --z-tooltip: 1060;

  /* Layout */
  --max-width-sm: 640px;
  --max-width-md: 768px;
  --max-width-lg: 1024px;
  --max-width-xl: 1280px;
}