:root {
  color-scheme: light;
  --color-navy: #082A4D;
  --color-blue: #1F73BE;
  --color-blue-hover: #185E9C;
  --color-teal: #4DB6A6;
  --color-soft-teal: #8BCDC6;
  --color-light-blue: #BFDDF2;
  --color-white: #FFFFFF;
  --color-light-bg: #F8FBFE;
  --color-border: #E6EEF5;
  --color-body: #3E536B;
  --shadow-soft: 0 18px 42px rgba(8, 42, 77, 0.1);
  --shadow-card: 0 12px 28px rgba(8, 42, 77, 0.08);
  --radius: 8px;
  --header-height: 116px;
  --eyebrow-min-height: 2.75rem;
  --section-top-offset: 0.75rem;
  --page-inline: clamp(1.25rem, 4cqw, 4rem);
  --content-max: 1220px;
  --section-block: clamp(1rem, 3cqh, 2.5rem);
  --section-gap: clamp(1rem, 3cqw, 2.75rem);
  --copy-gap: clamp(0.45rem, 1.4cqh, 0.9rem);
  --card-gap: clamp(0.65rem, 1.7cqw, 1rem);
  --card-padding: clamp(0.75rem, 1.9cqw, 1.35rem);
  --card-sprite-size: clamp(58px, 7.2cqw, 112px);
  --card-title-size: clamp(0.95rem, 1.7cqw, 1.25rem);
  --card-copy-size: clamp(0.78rem, 1.25cqw, 0.95rem);
  --section-copy-size: clamp(0.92rem, 1.55cqw, 1.14rem);
  --sprite-cell: 112px;
  --section-faded-opacity: 0.35;
  --section-fade-duration: 500ms;
  --menu-transition-duration: 180ms;
  --font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body {
  color: var(--color-navy);
  background: var(--color-white);
  font-family: var(--font-family);
  line-height: 1.55;
}

h1,
h2,
h3 {
  color: var(--color-navy);
  line-height: 1.05;
  letter-spacing: 0;
}

h1 {
  font-size: clamp(3rem, 8vw, 6rem);
  font-weight: 900;
}

h2 {
  font-size: clamp(2.1rem, 5vw, 4.25rem);
  font-weight: 850;
}

h3 {
  font-size: clamp(1.05rem, 2vw, 1.3rem);
  font-weight: 800;
}

p {
  color: var(--color-body);
}

strong {
  color: var(--color-navy);
}

@media (max-width: 1180px) {
  :root {
    --header-height: 96px;
    --section-block: clamp(0.85rem, 2.5vh, 1.75rem);
    --section-gap: clamp(0.8rem, 2.4vw, 1.75rem);
    --card-sprite-size: clamp(48px, 9vw, 86px);
  }
}

@media (max-width: 760px) {
  :root {
    --header-height: 92px;
    --section-block: clamp(0.65rem, 2vh, 1rem);
    --section-gap: clamp(0.6rem, 2vh, 1rem);
    --copy-gap: 0.4rem;
    --card-padding: 0.6rem;
    --card-sprite-size: clamp(40px, 11vw, 56px);
    --card-title-size: clamp(0.78rem, 2.8vw, 0.95rem);
    --card-copy-size: clamp(0.66rem, 2.25vw, 0.78rem);
    --section-copy-size: clamp(0.78rem, 2.7vw, 0.88rem);
    --sprite-cell: 96px;
  }
}
