:root {
  --color-primary-50: #F0F6F8;
  --color-primary-100: #D7E8EE;
  --color-primary-200: #AECFD8;
  --color-primary-300: #7FAFBD;
  --color-primary-400: #4F8B9C;
  --color-primary-500: #2A6F8E;
  --color-primary-600: #205770;
  --color-primary-700: #194557;
  --color-primary-800: #11313D;
  --color-primary-900: #091C24;
  --color-secondary-50: #F4F8F4;
  --color-secondary-100: #E1EBE0;
  --color-secondary-300: #9CBD9B;
  --color-secondary-500: #5B8C5A;
  --color-secondary-700: #3A5C3A;
  --color-secondary-900: #1F3220;
  --color-accent-500: #E8B852;
  --color-accent-600: #C99A35;
  --color-accent-contrast: #1A1A1A;
  --color-neutral-50: #FAFBFC;
  --color-neutral-100: #F2F4F6;
  --color-neutral-200: #E2E6EA;
  --color-neutral-300: #C7CDD3;
  --color-neutral-400: #9AA3AB;
  --color-neutral-500: #6C7680;
  --color-neutral-600: #4A525A;
  --color-neutral-700: #333A41;
  --color-neutral-800: #1F2429;
  --color-neutral-900: #0F1316;
  --color-semantic-success: #2D8659;
  --color-semantic-warning: #C49A2C;
  --color-semantic-danger: #B83A3A;
  --color-semantic-info: #2F6AA8;
  --color-surface-background: #FAFBFC;
  --color-surface-elevated: #FFFFFF;
  --color-surface-subtle: #F2F4F6;
  --color-surface-overlay: rgba(15, 19, 22, 0.55);
  --font-heading: 'Montserrat', sans-serif;
  --font-body: 'PT Serif', serif;
  --font-mono: 'JetBrains Mono', monospace;
  --fs-xs: 12px;
  --fs-sm: 14px;
  --fs-base: 16px;
  --fs-md: 18px;
  --fs-lg: 24px;
  --fs-xl: 32px;
  --fs-2xl: 48px;
  --fs-3xl: 64px;
  --lh-tight: 1.15;
  --lh-snug: 1.3;
  --lh-normal: 1.55;
  --lh-relaxed: 1.75;
  --ls-tight: -0.02em;
  --ls-normal: 0;
  --ls-wide: 0.05em;
  --ls-label: 0.12em;
  --fw-regular: 400;
  --fw-medium: 500;
  --fw-semibold: 600;
  --fw-bold: 700;
  --space-0: 0;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
  --space-7: 48px;
  --space-8: 64px;
  --space-9: 96px;
  --space-10: 128px;
  --radius-none: 0;
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 16px;
  --radius-xl: 24px;
  --radius-full: 9999px;
  --shadow-none: none;
  --shadow-sm: 0 1px 2px rgba(15, 19, 22, 0.04);
  --shadow-md: 0 4px 12px rgba(15, 19, 22, 0.07);
  --shadow-lg: 0 12px 32px rgba(15, 19, 22, 0.10);
  --shadow-xl: 0 24px 64px rgba(15, 19, 22, 0.14);
  --bp-mobile: 0px;
  --bp-tablet: 768px;
  --bp-desktop: 1200px;
  --bp-wide: 1600px;
  --dur-fast: 150ms;
  --dur-normal: 250ms;
  --dur-slow: 400ms;
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  --ease-enter: cubic-bezier(0, 0, 0.2, 1);
  --ease-exit: cubic-bezier(0.4, 0, 1, 1);
}
