:root {
  /* ── Navy Authority (70%) — backgrounds ── */
  --navy-950: #02081A;
  --navy-900: #030C24;
  --navy-800: #06102E;
  --navy-700: #0A1840;
  --navy-600: #0E2158;
  --navy-500: #183272;
  --navy-400: #244492;
  --navy-300: #3560C8;
  --navy-200: #5080E0;
  --navy-100: #80A8F5;

  /* ── Cloud White (10%) — text & light elements ── */
  --cloud-50:  #F5F9FF;
  --cloud-100: #EEF3FF;
  --cloud-200: #C8D8F5;
  --cloud-300: #8AAAD8;
  --cloud-400: #5272A8;
  --cloud-500: #304878;

  /* ── Carbon (5%) — card surfaces ── */
  --carbon-900: #0C1532;
  --carbon-800: #111E42;
  --carbon-700: #1A2852;
  --carbon-600: #243262;

  /* ── Verde Lima (5%) — small accents ── */
  --lime-200: #D9EAB8;
  --lime-300: #C7DE9C;
  --lime-400: #B1D768;
  --lime-500: #93BF40;
  --lime-600: #6F8F32;
  --lime-700: #4B6124;

  /* ── Semantic tokens ── */
  --color-bg:           #02081A;
  --color-surface:      #030C24;
  --color-surface-alt:  #06102E;
  --color-card:         #0C1532;
  --color-card-hover:   #111E42;
  --color-border:       #0E2158;
  --color-border-card:  #1A2852;
  --color-border-light: #243292;

  --color-text:         #EEF3FF;
  --color-text-muted:   #8AAAD8;
  --color-text-subtle:  #5272A8;

  --color-primary:        #B1D768;
  --color-primary-light:  #C7DE9C;
  --color-primary-dark:   #93BF40;
  --color-primary-darker: #6F8F32;

  --color-success: #10B981;
  --color-warning: #F59E0B;
  --color-error:   #EF4444;

  /* ── Gradients ── */
  --gradient-primary:   linear-gradient(135deg, #93BF40 0%, #B1D768 100%);
  --gradient-primary-r: linear-gradient(135deg, #B1D768 0%, #93BF40 100%);
  --gradient-text:      linear-gradient(90deg, #93BF40, #C7DE9C);
  --gradient-hero:      radial-gradient(ellipse 90% 65% at 50% -5%, rgba(24,52,130,0.65) 0%, transparent 70%);
  --gradient-hero-side: radial-gradient(ellipse 50% 80% at 100% 50%, rgba(14,33,88,0.4) 0%, transparent 60%);
  --gradient-lime-glow: radial-gradient(ellipse, rgba(192,238,66,0.12) 0%, transparent 60%);

  /* ── Shadows ── */
  --shadow-sm:      0 1px 2px rgba(0,0,0,0.5);
  --shadow-md:      0 4px 12px rgba(0,0,0,0.45);
  --shadow-lg:      0 10px 30px rgba(0,0,0,0.55);
  --shadow-xl:      0 20px 50px rgba(0,0,0,0.65);
  --shadow-navy:    0 8px 40px rgba(2,8,26,0.8), 0 0 0 1px rgba(24,50,112,0.4);
  --shadow-glow-sm: 0 0 20px rgba(177,215,104,0.22);
  --shadow-glow-md: 0 0 40px rgba(177,215,104,0.32);
  --shadow-card:    0 4px 24px rgba(0,0,0,0.6), 0 0 0 1px rgba(14,33,88,0.9);

  /* ── Typography ── */
  --font-heading: 'Outfit', sans-serif;
  --font-body:    'Inter', sans-serif;
  --font-mono:    'JetBrains Mono', monospace;

  --text-xs:   0.75rem;
  --text-sm:   0.875rem;
  --text-base: 1rem;
  --text-lg:   1.125rem;
  --text-xl:   1.25rem;
  --text-2xl:  1.5rem;
  --text-3xl:  2rem;
  --text-4xl:  2.5rem;
  --text-5xl:  3.25rem;
  --text-6xl:  4rem;
  --text-7xl:  5rem;

  --leading-tight:  1.15;
  --leading-snug:   1.35;
  --leading-normal: 1.6;
  --leading-loose:  1.8;

  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-5:  1.25rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;
  --space-20: 5rem;
  --space-24: 6rem;
  --space-32: 8rem;

  --radius-sm:   4px;
  --radius-md:   8px;
  --radius-lg:   12px;
  --radius-xl:   16px;
  --radius-2xl:  24px;
  --radius-full: 9999px;

  --duration-micro:  100ms;
  --duration-short:  200ms;
  --duration-medium: 350ms;
  --duration-long:   600ms;
  --ease-out:    cubic-bezier(0.0, 0.0, 0.2, 1);
  --ease-in:     cubic-bezier(0.4, 0.0, 1.0, 1);
  --ease-inout:  cubic-bezier(0.4, 0.0, 0.2, 1);
  --ease-spring: cubic-bezier(0.34, 1.56, 0.64, 1);

  --container-max: 1200px;
  --nav-height:    72px;
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --duration-micro:  0ms;
    --duration-short:  0ms;
    --duration-medium: 0ms;
    --duration-long:   0ms;
  }
}

@media (max-width: 768px) {
  :root {
    --text-5xl: 2.25rem;
    --text-6xl: 2.75rem;
    --text-7xl: 3.25rem;
  }
}
