:root {
  /* Color System */
  --color-primary: #23272f;
  --color-accent: #bfa76a;  /* Golden brown */
  --color-accent-dark: #a88d4a;
  --color-accent-light: #e7d7b6;
  --color-background: #fff;
  --color-background-alt: #f5f6fa;
  --color-border: #bfa76a;  /* Golden brown for borders */
  --color-text: #333;
  --color-text-light: #666;
  --color-text-lighter: #999;
  --color-success: #2e7d32;
  --color-error: #dc3545;
  --color-white: #fff;
  --color-black: #000;
  --color-blue: #007bff;  /* Blue for Call button */
  --color-description: #bfa76a;  /* Golden brown for description text */

  /* Typography */
  --font-primary: 'Montserrat', sans-serif;
  --font-size-base: 1rem;
  --font-size-sm: 0.95rem;
  --font-size-lg: 1.1rem;
  --font-size-xl: 1.2rem;
  --font-size-2xl: 1.5rem;
  --font-size-3xl: 2.5rem;
  --font-size-4xl: 3.5rem;
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --line-height-base: 1.6;
  --line-height-tight: 1.2;

  /* Spacing System */
  --spacing-xs: 4px;
  --spacing-sm: 8px;
  --spacing-md: 16px;
  --spacing-lg: 24px;
  --spacing-xl: 32px;
  --spacing-2xl: 40px;
  --spacing-3xl: 48px;
  --spacing-4xl: 80px;

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

  /* Shadows */
  --shadow-sm: 0 1px 4px rgba(44,21,87,0.04);
  --shadow-md: 0 2px 12px rgba(44,21,87,0.06);
  --shadow-lg: 0 4px 20px rgba(44,21,87,0.12);
  --shadow-xl: 0 8px 32px rgba(44,21,87,0.18);

  /* Transitions */
  --transition-fast: 0.2s;
  --transition-normal: 0.3s;
  --transition-slow: 0.4s;
  --transition-timing: cubic-bezier(0.4, 0, 0.2, 1);

  /* Z-index Layers */
  --z-base: 1;
  --z-above: 2;
  --z-modal: 1000;
  --z-overlay: 1001;
  --z-popup: 99999;

  /* Layout */
  --container-max-width: 1300px;
  --container-padding: 20px;
  --navbar-height: 80px;
  --footer-padding: 80px 0 20px;

  /* Grid */
  --grid-gap: 30px;
  --grid-columns: 3;

  /* Components */
  --card-padding: 24px;
  --card-radius: 16px;
  --button-padding: 10px 20px;
  --button-radius: 5px;
  --input-padding: 8px;
  --input-radius: 6px;
} 