:root {
  /* ===== Color Palette ===== */
  --color-navy-900: #0d2438;
  --color-navy-800: #143352;
  --color-navy-700: #1f4a70;
  --color-navy-600: #2D5C88;
  --color-navy-500: #4a7ba8;

  --color-orange-600: #ea580c;
  --color-orange-500: #f97316;
  --color-orange-400: #fb923c;
  --color-orange-300: #fdba74;

  --color-white: #ffffff;
  --color-off-white: #f8fafc;
  --color-gray-100: #f1f5f9;
  --color-gray-200: #e2e8f0;
  --color-gray-300: #cbd5e1;
  --color-gray-400: #94a3b8;
  --color-gray-500: #64748b;
  --color-gray-600: #475569;
  --color-gray-700: #334155;
  --color-gray-800: #1e293b;
  --color-gray-900: #0f172a;

  --color-button: #32373c;
  --color-button-hover: #3f4750;

  --color-success: #16a34a;
  --color-success-bg: #dcfce7;
  --color-error: #dc2626;
  --color-error-bg: #fee2e2;

  /* ===== Semantic Colors ===== */
  --color-primary: var(--color-navy-600);
  --color-primary-light: var(--color-navy-500);
  --color-accent: var(--color-orange-500);
  --color-accent-light: var(--color-orange-400);
  --color-accent-dark: var(--color-orange-600);
  --color-bg: var(--color-white);
  --color-bg-alt: var(--color-off-white);
  --color-text: var(--color-gray-800);
  --color-text-light: var(--color-gray-500);
  --color-text-inverse: var(--color-white);
  --color-border: var(--color-gray-200);

  /* ===== Typography ===== */
  --font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif;
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-md: 1.125rem;
  --font-size-lg: 1.25rem;
  --font-size-xl: 1.5rem;
  --font-size-2xl: 2rem;
  --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 ===== */
  --space-xs: 0.5rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2rem;
  --space-xl: 3rem;
  --space-2xl: 4rem;
  --space-3xl: 6rem;

  /* ===== Layout ===== */
  --container-max: 1200px;
  --container-padding: 1.5rem;
  --section-padding-y: var(--space-3xl);
  --section-padding-y-sm: var(--space-2xl);

  /* ===== Border Radius ===== */
  --radius-sm: 4px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 20px;
  --radius-full: 9999px;

  /* ===== Shadows ===== */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -2px rgba(0, 0, 0, 0.1);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
  --shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 8px 10px -6px rgba(0, 0, 0, 0.1);

  /* ===== Transitions ===== */
  --transition-fast: 150ms ease;
  --transition-base: 250ms ease;
  --transition-slow: 400ms ease;

  /* ===== Navbar ===== */
  --navbar-height: 70px;

  /* ===== Gradients ===== */
  --gradient-hero: linear-gradient(135deg, var(--color-navy-900) 0%, var(--color-navy-700) 50%, var(--color-navy-600) 100%);
  --gradient-accent: linear-gradient(135deg, var(--color-orange-500) 0%, var(--color-orange-600) 100%);
  --gradient-section-alt: linear-gradient(180deg, var(--color-off-white) 0%, var(--color-white) 100%);
}
