:root {
  /* Brand Palette Derived Directly from Logo */
  --color-brand-primary: #0077b6;        /* Deep Ocean Blue (Snowflake Base & Mark) */
  --brand-primary: #0077b6;
  --color-brand-primary-hover: #005f94;
  --color-brand-primary-active: #004870;
  --color-brand-primary-subtle: #f0f9ff;
  --color-brand-primary-border: #bde0fe;

  --color-brand-cyan: #0096c7;           /* Vibrant Cyan Blue ("AIR" text & highlights) */
  --color-brand-cyan-light: #00b4d8;
  --color-brand-cyan-subtle: #e0f2fe;

  --color-brand-amber: #d97706;          /* Warm Amber Ochre ("CONDITIONING" text & accents) */
  --color-brand-amber-hover: #b45309;
  --color-brand-amber-active: #92400e;
  --color-brand-amber-subtle: #fffbeb;
  --color-brand-amber-border: #fde68a;

  --color-surface-base: #ffffff;
  --color-surface-subtle: #f8fafc;
  --color-surface-muted: #f1f5f9;
  --color-surface-card: #ffffff;
  --color-surface-card-hover: #f8fafc;
  --color-surface-dark: #071526;         /* Deep Slate Navy */
  --color-surface-dark-elevated: #0e223b;
  --color-surface-dark-border: #1a3250;

  --color-text-main: #0b192c;
  --color-text-muted: #475569;
  --color-text-subtle: #64748b;
  --color-text-inverse: #f8fafc;
  --color-text-inverse-muted: #94a3b8;

  --color-border-subtle: #e2e8f0;
  --color-border-medium: #cbd5e1;
  --color-border-strong: #94a3b8;

  /* Gray Scale Tokens */
  --color-gray-50: #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: #0b192c;

  /* Typography Scale Aliases */
  --text-xs: 0.875rem;
  --text-sm: 1rem;
  --text-base: 1.125rem;
  --text-lg: 1.25rem;
  --text-xl: 1.45rem;
  --text-2xl: 1.75rem;
  --text-3xl: 2.25rem;
  --text-4xl: 2.75rem;
  --text-5xl: 3.5rem;

  /* Semantic Colour Ramps */
  --color-info-bg: #eff6ff;
  --color-info-border: #bfdbfe;
  --color-info-text: #0077b6;
  --color-info-icon: #0096c7;

  --color-success-bg: #f0fdf4;
  --color-success-border: #bbf7d0;
  --color-success-text: #15803d;
  --color-success-icon: #16a34a;

  --color-warning-bg: #fffbeb;
  --color-warning-border: #fde68a;
  --color-warning-text: #b45309;
  --color-warning-icon: #d97706;

  --color-danger-bg: #fef2f2;
  --color-danger-border: #fecaca;
  --color-danger-text: #b91c1c;
  --color-danger-icon: #dc2626;

  /* Typography */
  --font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;

  --font-size-xs: 0.875rem;   /* 14px */
  --font-size-sm: 1rem;       /* 16px */
  --font-size-base: 1.125rem; /* 18px */
  --font-size-lg: 1.25rem;    /* 20px */
  --font-size-xl: 1.45rem;    /* 23.2px */
  --font-size-2xl: 1.75rem;   /* 28px */
  --font-size-3xl: 2.25rem;   /* 36px */
  --font-size-4xl: 2.75rem;   /* 44px */
  --font-size-5xl: 3.5rem;    /* 56px */

  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;

  --line-height-tight: 1.15;
  --line-height-snug: 1.3;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.65;

  /* Spacing */
  --space-1: 0.25rem;  /* 4px */
  --space-2: 0.5rem;   /* 8px */
  --space-3: 0.75rem;  /* 12px */
  --space-4: 1rem;     /* 16px */
  --space-5: 1.25rem;  /* 20px */
  --space-6: 1.5rem;   /* 24px */
  --space-8: 2rem;     /* 32px */
  --space-10: 2.5rem;  /* 40px */
  --space-12: 3rem;    /* 48px */
  --space-16: 4rem;    /* 64px */
  --space-20: 5rem;    /* 80px */
  --space-24: 6rem;    /* 96px */

  /* Radii - Strictly NO pill-shaped buttons */
  --radius-xs: 4px;
  --radius-sm: 6px;
  --radius-md: 8px;
  --radius-lg: 12px;
  --radius-xl: 16px;

  /* Shadows */
  --shadow-xs: 0 1px 2px rgba(11, 25, 44, 0.05);
  --shadow-sm: 0 1px 3px rgba(11, 25, 44, 0.08), 0 1px 2px rgba(11, 25, 44, 0.04);
  --shadow-md: 0 4px 6px -1px rgba(11, 25, 44, 0.08), 0 2px 4px -2px rgba(11, 25, 44, 0.04);
  --shadow-lg: 0 10px 15px -3px rgba(11, 25, 44, 0.08), 0 4px 6px -4px rgba(11, 25, 44, 0.03);
  --shadow-xl: 0 20px 25px -5px rgba(11, 25, 44, 0.1), 0 8px 10px -6px rgba(11, 25, 44, 0.04);

  /* Spring Transitions */
  --ease-spring: cubic-bezier(0.16, 1, 0.3, 1);
  --duration-fast: 150ms;
  --duration-normal: 240ms;
  --duration-slow: 350ms;

  /* Container */
  --container-max-width: 1200px;
  --header-height: 114px;
}
