:root {
  --mc-navy: #1E1B4B;
  --mc-navy-700: #151239;
  --mc-navy-500: #312E81;
  --mc-teal: #4F46E5;
  --mc-teal-600: #4338CA;
  --mc-teal-100: #E0E7FF;
  --mc-sand: #EEF2FF;
  --mc-sand-200: #C7D2FE;
  --mc-ink: #0F172A;
  --mc-ink-600: #334155;
  --mc-ink-400: #64748B;
  --mc-paper: #F8FAFC;
  --mc-clay: #F97316;
  --mc-gold: #F59E0B;
  --mc-danger: #DC2626;
  --mc-warning: #D97706;
  --mc-focus: #4F46E5;

  --mc-font-serif: "Inter", "Segoe UI", sans-serif;
  --mc-font-sans: "Inter", "Segoe UI", sans-serif;
  --mc-fs-eyebrow: 0.8125rem;
  --mc-fs-body: 1.125rem;
  --mc-fs-small: 0.875rem;
  --mc-fs-h1: clamp(2.4rem, 6vw, 4.15rem);
  --mc-fs-h2: clamp(1.75rem, 3vw, 2.6rem);
  --mc-fs-h3: 1.25rem;
  --mc-lh-body: 1.6;
  --mc-lh-heading: 1.2;
  --mc-fw-regular: 400;
  --mc-fw-medium: 500;
  --mc-fw-semibold: 600;
  --mc-fw-bold: 700;

  --mc-space-1: 4px;
  --mc-space-2: 8px;
  --mc-space-3: 12px;
  --mc-space-4: 16px;
  --mc-space-5: 24px;
  --mc-space-6: 32px;
  --mc-space-7: 48px;
  --mc-space-8: 64px;
  --mc-space-9: 96px;

  --mc-radius-sm: 8px;
  --mc-radius-md: 14px;
  --mc-radius-lg: 22px;
  --mc-radius-pill: 999px;

  --mc-shadow-sm: 0 1px 2px rgba(15, 23, 42, 0.06);
  --mc-shadow-md: 0 12px 32px rgba(30, 27, 75, 0.1);
  --mc-shadow-lg: 0 28px 64px rgba(30, 27, 75, 0.16);

  --mc-nav-h: 72px;
  --mc-z-nav: 1000;
  --mc-z-modal: 1050;

  --mc-ease: cubic-bezier(0.2, 0, 0, 1);
  --mc-t-fast: 150ms;
  --mc-t-med: 250ms;

  --mc-section-y: var(--mc-space-8);
  --mc-gutter: var(--mc-space-5);

  --bs-primary: var(--mc-navy);
  --bs-secondary: var(--mc-teal);
  --bs-body-font-family: var(--mc-font-sans);
  --bs-body-color: var(--mc-ink);
  --bs-body-bg: var(--mc-paper);
  --bs-link-color: var(--mc-teal-600);
  --bs-link-hover-color: var(--mc-navy);
  --bs-border-radius: var(--mc-radius-md);
  --bs-focus-ring-color: color-mix(in srgb, var(--mc-teal) 35%, transparent);
}

@media (max-width: 767.98px) {
  :root {
    --mc-section-y: var(--mc-space-7);
    --mc-nav-h: 56px;
    --mc-fs-body: 1.0625rem;
  }
}

@media (prefers-reduced-motion: reduce) {
  :root {
    --mc-t-fast: 0ms;
    --mc-t-med: 0ms;
  }
}
