:root {
    /* Typography. */
    --font-inter-black: "Inter Black", "Inter", system-ui, sans-serif;
    --font-inter-black-italic: "Inter Black Italic", "Inter", system-ui, sans-serif;
    --font-inter-bold: "Inter Bold", "Inter", system-ui, sans-serif;
    --font-inter-bold-italic: "Inter Bold Italic", "Inter", system-ui, sans-serif;
    --font-inter-extra-bold: "Inter Extra Bold", "Inter", system-ui, sans-serif;
    --font-inter-extra-bold-italic: "Inter Extra Bold Italic", "Inter", system-ui, sans-serif;
    --font-inter-extra-light: "Inter Extra Light", "Inter", system-ui, sans-serif;
    --font-inter-extra-light-italic: "Inter Extra Light Italic", "Inter", system-ui, sans-serif;
    --font-inter-light: "Inter Light", "Inter", system-ui, sans-serif;
    --font-inter-light-italic: "Inter Light Italic", "Inter", system-ui, sans-serif;
    --font-inter-medium: "Inter Medium", "Inter", system-ui, sans-serif;
    --font-inter-medium-italic: "Inter Medium Italic", "Inter", system-ui, sans-serif;
    --font-inter: "Inter", system-ui, sans-serif;
    --font-inter-regular: var(--font-inter);
    --font-inter-semi-bold: "Inter Semi Bold", "Inter", system-ui, sans-serif;
    --font-inter-semi-bold-italic: "Inter Semi Bold Italic", "Inter", system-ui, sans-serif;
    --font-inter-thin: "Inter Thin", "Inter", system-ui, sans-serif;
    --font-inter-thin-italic: "Inter Thin Italic", "Inter", system-ui, sans-serif;
    --font-inherit: inherit;
    --font-monospace: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --font-shorthand-inherit: inherit;
    --font-inter-stack: var(--font-inter);
    --font-inter-system-stack: var(--font-inter);
    --font-inter-semi-bold-stack: var(--font-inter-semi-bold);
    --font-inter-black-stack: var(--font-inter-black);

    --fs-h1: clamp(37px, 2.000rem + 2.000vw, 65px);
    --fs-h2: clamp(32px, 1.850rem + 1.650vw, 56px);
    --fs-h3: clamp(27px, 1.550rem + 1.050vw, 44px);
    --fs-h4: clamp(23px, 1.350rem + 0.650vw, 34px);
    --fs-h5: clamp(21px, 1.150rem + 0.450vw, 29px);
    --fs-xl: clamp(19.68px, 1.080rem + 0.300vw, 25.92px);
    --fs-lg: clamp(18.04px, 0.990rem + 0.275vw, 23.76px);
    --fs-md: clamp(16.40px, 0.900rem + 0.250vw, 21.60px);
    --fs-base: clamp(16.20px, 0.810rem + 0.135vw, 19.08px);
    --fs-sm: clamp(14.40px, 0.720rem + 0.120vw, 16.96px);
    --fs-xs: clamp(13.50px, 0.675rem + 0.112vw, 15.90px);
    --fs-xxs: clamp(12.60px, 0.630rem + 0.105vw, 14.84px);
    --fs-micro: clamp(11.70px, 0.585rem + 0.098vw, 13.78px);
    --line-height-one: 1;
    --line-height-tight: 1.02;
    --line-height-compact: 1.35;
    --line-height-body: 1.55;
    --font-weight-regular: 400;
    --font-weight-medium: 500;
    --font-weight-semibold: 600;
    --font-weight-bold: 700;

    /* Hybrid Care palette. Repeated brand states derive from the central color. */
    --color-primary: #1F428D;
    --color-primary-hero: color-mix(in oklch, var(--color-primary) 10%, #2369FD 90%);
    --color-primary-hover: color-mix(in oklch, var(--color-primary), black 12%);
    --color-primary-active: color-mix(in oklch, var(--color-primary), black 22%);
    --color-primary-disabled: color-mix(in oklch, var(--color-primary), grey 65%);
    --color-primary-dark: color-mix(in oklch, var(--color-primary), black 60%);
    --color-primary-light: color-mix(in oklch, var(--color-primary), white 40%);
    --color-bg: color-mix(in oklch, var(--color-primary), white 94%);
    --color-text: color-mix(in oklch, var(--color-primary), black 90%);
    --color-text-muted: color-mix(in oklch, var(--color-primary), white 50%);
    --color-white: #ffffff;
    --color-black: #000000;
    --color-transparent: transparent;
    --color-ink: color-mix(in oklch, var(--color-primary), black 88%);
    --color-panel-dark: color-mix(in oklch, var(--color-primary), black 92%);
    --color-surface: color-mix(in oklch, var(--color-primary), white 90%);
    --color-surface-muted: color-mix(in oklch, var(--color-primary), white 94%);
    --color-border: color-mix(in oklch, var(--color-primary), white 64%);
    --color-white-12: rgba(255, 255, 255, 0.12);
    --color-white-13: rgba(255, 255, 255, 0.13);
    --color-white-24: rgba(255, 255, 255, 0.24);
    --color-white-68: rgba(255, 255, 255, 0.68);
    --color-white-84: rgba(255, 255, 255, 0.84);
    --color-black-76: rgba(0, 0, 0, 0.76);
    --color-black-84: rgba(0, 0, 0, 0.84);
    --color-ink-12: color-mix(in srgb, var(--color-ink) 12%, transparent);

    /* Shared spacing and geometry. */
    --container-gap: clamp(28px, 3vw, 48px);
    --content-width-720: 720px;
    --content-width-760: 760px;
    --layout-max-width: 1600px;
    --layout-max-width-wide: 1920px;
    --space-2: 2px;
    --space-8: 8px;
    --space-10: 10px;
    --space-12: 12px;
    --space-14: 14px;
    --space-16: 16px;
    --space-18: 18px;
    --space-24: 24px;
    --radius-sm: clamp(6px, 0.35vw, 8px);
    --radius-xl: clamp(12px, 0.65vw, 14px);
    --radius-3xl: clamp(20px, 1.1vw, 24px);
    --radius-pill: 999px;
    --radius-round: 50%;
    --section-padding-top: clamp(90px, 10vw, 150px);
    --section-space-large: clamp(100px, 12vw, 180px);
    --section-viewport-preferred: 90dvh;
    --section-viewport-max: 100dvh;

    /* Shared depth and motion. */
    --shadow-sm: 0 8px 22px color-mix(in srgb, var(--color-text) 8%, transparent);
    --shadow-strong: 0 28px 70px color-mix(in srgb, var(--color-text) 14%, transparent);
    --transition-fast: 0.2s ease-out;
    --transition-normal: 0.35s ease-in-out;
}
