:root {
  /* Colors — Classic Chess: Black, White & Gold */
  --color-bg: #ffffff;
  --color-bg-alt: #f7f7f5;
  --color-bg-dark: #0a0a0a;
  --color-bg-elevated: rgba(255, 255, 255, 0.8);
  --color-text: #111111;
  --color-text-light: #636363;
  --color-text-inverse: #ffffff;
  --color-accent-warm: #7B5B3A;
  --color-accent-warm-light: #96764E;
  --color-accent-hot: #9f6f3c;
  --color-border: #e2e2e2;
  --color-border-light: #f0f0f0;
  --color-error: #c0392b;
  --color-success: #27ae60;

  /* Gradients */
  --gradient-gold: linear-gradient(135deg, #7B5B3A, #96764E, #6B4B2A);
  --gradient-dark: linear-gradient(135deg, #0a0a0a 0%, #1a1a1a 100%);
  --gradient-hero: radial-gradient(ellipse at 20% 50%, rgba(123, 91, 58, 0.06) 0%, transparent 60%),
                   radial-gradient(ellipse at 80% 20%, rgba(123, 91, 58, 0.04) 0%, transparent 50%);
  --gradient-section: linear-gradient(180deg, var(--color-bg) 0%, var(--color-bg-alt) 100%);

  /* Typography */
  --font-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --font-heading: 'Cardo', 'Georgia', 'Times New Roman', serif;

  --fs-xs: 0.75rem;
  --fs-sm: 0.875rem;
  --fs-base: 1rem;
  --fs-md: 1.125rem;
  --fs-lg: 1.25rem;
  --fs-xl: 1.5rem;
  --fs-2xl: 2rem;
  --fs-3xl: 2.5rem;
  --fs-4xl: 3.5rem;
  --fs-hero: clamp(2.75rem, 5vw + 1rem, 5rem);

  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;

  --lh-tight: 1.15;
  --lh-normal: 1.6;
  --lh-loose: 1.8;

  --tracking-tight: -0.02em;
  --tracking-wide: 0.12em;

  /* Spacing */
  --space-xs: 0.25rem;
  --space-sm: 0.5rem;
  --space-md: 1rem;
  --space-lg: 1.5rem;
  --space-xl: 2rem;
  --space-2xl: 3rem;
  --space-3xl: 4rem;
  --space-4xl: 6rem;
  --space-5xl: 8rem;
  --space-section: clamp(5rem, 10vw, 9rem);

  /* Layout */
  --container-max: 1200px;
  --container-padding: 1.5rem;

  /* Borders & Radius */
  --radius-sm: 6px;
  --radius-md: 10px;
  --radius-lg: 20px;
  --radius-xl: 28px;
  --radius-full: 9999px;

  /* Shadows — modern layered approach */
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.04);
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.06), 0 1px 2px rgba(0, 0, 0, 0.04);
  --shadow-md: 0 4px 6px rgba(0, 0, 0, 0.04), 0 10px 15px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 25px rgba(0, 0, 0, 0.06), 0 20px 48px rgba(0, 0, 0, 0.05);
  --shadow-xl: 0 20px 40px rgba(0, 0, 0, 0.08), 0 30px 64px rgba(0, 0, 0, 0.06);
  --shadow-hover: 0 14px 32px rgba(0, 0, 0, 0.10), 0 4px 8px rgba(0, 0, 0, 0.06);
  --shadow-gold: 0 4px 20px rgba(123, 91, 58, 0.25);

  /* Transitions — modern easing */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --ease-in-out: cubic-bezier(0.65, 0, 0.35, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);
  --transition-fast: 150ms var(--ease-out);
  --transition-normal: 350ms var(--ease-out);
  --transition-slow: 600ms var(--ease-out);
  --transition-slower: 800ms var(--ease-out);

  /* Z-index */
  --z-nav: 100;
  --z-overlay: 200;
  --z-modal: 300;
}
