:root {
  --c-heading: #142C3E;
  --c-body: #24313D;
  --c-accent: #C58F08;
  --c-accent-text: #8A6205;
  --c-white: #FFFFFF;
  --c-beige: #FAF8F4;
  --c-navy-cta: #173A52;
  --c-footer: #0D2233;
  --c-footer-legal: #0A1C2A;
  --c-cta: #005CB4;
  --c-cta-hover: #006ECD;
  --c-hover: #2596BE;
  --c-hover-text: #1B6E8C;
  --c-border: #E7E4DE;
  --c-menu-hover: #21445B;
  --c-final-cta-hover-border: #D8DDE1;
  --c-icon-line: #4A5A66;
  --c-hero-dark: #1E2348;
  --c-focus: #222222;
  --c-on-dark: #FFFFFF;
  --c-on-dark-muted: rgba(255, 255, 255, 0.82);

  --fs-h1: clamp(40px, 2.652vw + 30.06px, 64px);
  --fs-h2: clamp(34px, 1.326vw + 29.03px, 46px);
  --fs-h3: clamp(27px, 0.552vw + 24.93px, 32px);
  --fs-h4: clamp(22px, 0.221vw + 21.17px, 24px);
  --fs-h5: clamp(19px, 0.110vw + 18.59px, 20px);
  --fs-h6: 16px;
  --fs-lead: clamp(18px, 0.221vw + 17.17px, 20px);
  --fs-body: clamp(16px, 0.110vw + 15.59px, 17px);
  --fs-small: 15px;
  --fs-nav: 15px;
  --fs-button: 15px;
  --fs-card-title: 18px;
  --fs-card-desc: 15px;
  --fs-eyebrow: clamp(12px, 0.110vw + 11.59px, 13px);

  --fw-heading: 600;
  --fw-h6: 700;
  --fw-body: 400;
  --fw-nav: 600;
  --fw-button: 700;
  --fw-card-title: 600;
  --fw-eyebrow: 700;

  --lh-h1: 1.08;
  --lh-h2: 1.15;
  --lh-h3: 1.20;
  --lh-h4: 1.25;
  --lh-h5: 1.35;
  --lh-h6: 1.40;
  --lh-lead: 1.65;
  --lh-body: 1.70;
  --lh-small: 1.65;
  --lh-nav: 1;
  --lh-button: 1;
  --lh-card-title: 1.35;
  --lh-card-desc: 1.60;
  --lh-eyebrow: 1.30;

  --ls-heading: -0.01em;
  --ls-h1-large: -0.02em;
  --ls-body: 0;
  --ls-ui: 0.01em;
  --ls-eyebrow: 0.08em;

  --container-max: 1280px;
  --container-pad: clamp(20px, 0.442vw + 18.34px, 24px);
  --hero-min-h: 660px;
  --hero-text-max: 600px;
  --hero-content-col: 49%;
  --hero-image-col: 51%;

  --header-h: 80px;
  --logo-w: 148px;
  --nav-gap: 22px;

  --radius-card: 10px;
  --radius-accordion: 10px;
  --radius-dropdown: 8px;
  --radius-btn: 6px;

  --section-py: clamp(56px, 4.420vw + 39.43px, 96px);
  --section-py-compact: clamp(44px, 2.210vw + 35.71px, 64px);
  --final-cta-py: 75px;
  --block-gap: 32px;
  --grid-gap: 24px;

  --focus-width: 3px;
  --focus-offset: 3px;

  --t-fast: 150ms;
  --t-base: 200ms;
}

.ot-h1-compact {
  --fs-h1: clamp(40px, 2.652vw + 30.06px, 64px);
}

.ot-h1-compact {
  --fs-h1: clamp(38px, 1.547vw + 32.20px, 52px);
}

.ot-page--home {
  --fs-h1: clamp(38px, 1.989vw + 30.54px, 56px);
}
