:root {
  color-scheme: light;

  --navy-950: #000333;
  --navy-900: #00053f;
  --navy-800: #000759;
  --navy-700: #081278;
  --blue-600: #0369a8;
  --blue-500: #0487d9;
  --blue-100: #dcedf8;
  --orange-700: #cc5410;
  --orange-600: #f4701f;
  --orange-100: #fff0e6;
  --notice-bg: #eef7fd;
  --notice-text: #035f99;
  --notice-border: #acd8f2;
  --success-bg: #edf9f1;
  --success-text: #176b38;
  --success-border: #a9dfbb;
  --error-bg: #fff1f1;
  --error-text: #a22727;
  --error-border: #efb6b6;
  --grey-700: #454b63;
  --grey-500: #71768a;
  --grey-400: #969aad;
  --grey-200: #dfe2ea;
  --grey-100: #f2f4f7;
  --white: #ffffff;
  --white-soft: rgba(255, 255, 255, 0.78);
  --white-muted: rgba(255, 255, 255, 0.64);
  --white-faint: rgba(255, 255, 255, 0.1);
  --white-border: rgba(255, 255, 255, 0.34);
  --white-line: rgba(255, 255, 255, 0.12);
  --navy-glass: rgba(0, 7, 89, 0.08);
  --navy-shadow: rgba(0, 7, 89, 0.14);
  --navy-shadow-strong: rgba(0, 7, 89, 0.2);

  --surface-page: var(--white);
  --surface-subtle: #f7f8fa;
  --text-heading: var(--navy-800);
  --text-body: var(--grey-700);
  --text-muted: var(--grey-500);
  --text-inverse: var(--white);
  --text-inverse-muted: var(--white-muted);
  --border-subtle: var(--grey-200);

  --font-sans: "Montserrat", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --font-size-xs: 0.6875rem;
  --font-size-sm: 0.8125rem;
  --font-size-body-sm: 0.9375rem;
  --font-size-body: 1rem;
  --font-size-lead: 1.125rem;
  --font-size-card-title: 1.25rem;
  --font-size-h3: clamp(1.35rem, 2vw, 1.75rem);
  --font-size-h2: clamp(2.2rem, 4vw, 2.875rem);
  --font-size-h1: clamp(2.8rem, 6vw, 4.125rem);
  --line-height-tight: 1.06;
  --line-height-heading: 1.12;
  --line-height-body: 1.65;
  --letter-tight: -0.025em;
  --letter-label: 0.12em;

  --weight-light: 300;
  --weight-regular: 400;
  --weight-medium: 500;
  --weight-semibold: 600;
  --weight-bold: 700;
  --weight-extrabold: 800;

  --space-3xs: 0.25rem;
  --space-2xs: 0.5rem;
  --space-xs: 0.75rem;
  --space-sm: 1rem;
  --space-md: 1.5rem;
  --space-lg: 2rem;
  --space-xl: 3rem;
  --space-2xl: 4rem;
  --space-3xl: 6rem;
  --space-4xl: 7.5rem;

  --container-width: 82.5rem;
  --container-gutter: clamp(1.25rem, 4vw, 2rem);
  --content-narrow: 45rem;
  --content-medium: 60rem;
  --nav-max-width: calc(100vw - (var(--container-gutter) * 2));

  --radius-xs: 0.125rem;
  --radius-sm: 0.5rem;
  --radius-md: 0.75rem;
  --radius-lg: 1rem;
  --radius-pill: 999rem;

  --shadow-sm: 0 0.5rem 1.75rem var(--navy-glass);
  --shadow-md: 0 1rem 2.5rem var(--navy-shadow);
  --shadow-lg: 0 1.5rem 4rem var(--navy-shadow-strong);
  --transition-fast: 160ms ease;
  --transition-standard: 240ms cubic-bezier(0.2, 0, 0.1, 1);
  --transition-reveal: 650ms cubic-bezier(0.2, 0, 0.1, 1);
  --header-offset: 7rem;
  --header-top: 1.25rem;
  --header-height: 4.625rem;
  --logo-height: 2.125rem;
  --dropdown-width: 68rem;
  --focus-ring: 0 0 0 0.1875rem var(--blue-100);
}
