/* ==========================================================================
   THEME TOKENS — canonical names (design-system.md), confirmed Global Theme values.
   ========================================================================== */
:root {
  --color-primary: #34adf7;
  --color-secondary: #1a2e84;
  --color-accent: #f0ba0d;
  --color-text-dark: #111827;
  --color-text-medium: #4b5563;
  --color-text-light: #5f6877;
  --color-text-inverse: #ffffff;
  --color-bg-white: #ffffff;
  --color-bg-light: #f3f6fb;
  --color-bg-dark: #0c1642;
  --color-bg-navy: #142266;
  --color-border: #dbe2ee;
  --color-error: #b91c1c;
  --color-success: #15803d;
  --color-warning: #b45309;

  --font-heading: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --font-body: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;

  --text-display: clamp(40px, calc(2.0712vw + 32.233px), 72px);
  --text-h1: clamp(36px, calc(1.2945vw + 31.146px), 56px);
  --text-h2: clamp(28px, calc(1.0356vw + 24.117px), 44px);
  --text-h3: clamp(24px, calc(0.5178vw + 22.058px), 32px);
  --text-h4: clamp(20px, calc(0.2589vw + 19.029px), 24px);
  --text-body-lg: clamp(18px, calc(0.1294vw + 17.515px), 20px);
  --text-body: clamp(15px, calc(0.0647vw + 14.757px), 16px);
  --text-small: clamp(13px, calc(0.0647vw + 12.757px), 14px);
  --text-label: 12px;

  --container-max: 1200px;
  --container-narrow: 800px;
  --container-wide: 1920px;
  --space-section: 96px;
  --space-container-x: 40px;
  --space-card: 40px;
  --space-gap: 24px;
  --space-stack: 1rem;
  --header-height: 88px;
  --footer-padding-top: 80px;
  --footer-padding-bottom: 40px;

  --radius-sm: 2px;
  --radius-md: 4px;
  --radius-lg: 8px;
  --radius-full: 9999px;
  --shadow-sm: 0 1px 8px rgba(17, 24, 39, 0.08);
  --shadow-md: 0 4px 20px rgba(17, 24, 39, 0.1);
  --shadow-lg: 0 8px 40px rgba(17, 24, 39, 0.14);
  --transition-fast: 150ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-base: 250ms cubic-bezier(0.4, 0, 0.2, 1);
  --transition-slow: 400ms cubic-bezier(0.4, 0, 0.2, 1);

  --button-radius: var(--radius-md);
  --card-radius: var(--radius-md);
  --media-radius: var(--radius-sm);
  --footer-bg: var(--color-bg-dark);
  --footer-text-color: rgba(255, 255, 255, .74);

  /* page-specific one-offs (not theme roles) */
  --proj-accent-on-light: #7a5600;
  --proj-bg-light-alt: #e6ecf6;
  --proj-text-inverse-muted: rgba(255, 255, 255, .76);
  --proj-line-dark: rgba(255, 255, 255, .16);
  --proj-ease: cubic-bezier(.2, .7, .1, 1);
  --proj-gutter: clamp(1.25rem, 4vw, 3.5rem);
  --proj-section-y: clamp(4.5rem, 9vw, var(--space-section));
}
