/* ==========================================================================
   Type set C — "Accessible & modern" (prototype for approval)
   Headlines: Atkinson Hyperlegible Next ExtraBold (Braille Institute; unambiguous letterforms,
   distinct I/l/1, 0/O, b/d, generous apertures) — sentence case, moderate tracking (never tight:
   crowded letters hurt low-vision readers). Body/UI: Public Sans (USWDS, the U.S. federal design system).
   No decorative underlines/highlights; emphasis by weight, size and brand color only.
   ========================================================================== */
:root {
  --ss-font-display: "Atkinson Hyperlegible Next", "Segoe UI", system-ui, sans-serif;
  --ss-font-heading: "Atkinson Hyperlegible Next", "Segoe UI", system-ui, sans-serif;
  --ss-font-body: "Public Sans", "Segoe UI", system-ui, sans-serif;
  --ss-text-display: clamp(2.625rem, 1.75rem + 3.8vw, 5rem);
  --ss-text-4xl: clamp(2.25rem, 1.6rem + 2.8vw, 3.75rem);
  --ss-text-3xl: clamp(1.75rem, 1.35rem + 1.8vw, 2.75rem);
  --ss-text-base: clamp(1.0625rem, 1rem + 0.2vw, 1.1875rem);
  --ss-leading-normal: 1.6;
}
h1, .ss-h1, h2, .ss-h2, .ss-display, .ss-hero__title, .ssh-single__title, .ssh-archive__title, .ssh-campaign__title, .ssh-featured__title, .ssh-section-head__title, .ss-section-head h2 {
  font-family: var(--ss-font-display); font-weight: 800; text-transform: none; letter-spacing: -0.01em; line-height: 1.04; text-wrap: balance;
}
.ss-hero__title { line-height: 1.02; }
.ss-hero__title em { color: var(--ss-color-yellow); font-style: normal; }
h3, .ss-h3, h4, .ss-h4, .ss-card__title, .ss-pillar__title, .ss-person__name, .ss-film__title, .ss-involve__item h3, .ssh-event-card__title, .ssh-list__title, .ssh-video__title, .ss-footer__cta h2 {
  font-family: var(--ss-font-heading); font-weight: 700; text-transform: none; letter-spacing: 0; line-height: 1.15;
}
.ss-card__title, .ssh-event-card__title, .ss-involve__item h3, .ssh-list__title { font-size: 1.375rem; }
.ss-pillar__title { font-size: 1.625rem; }
.ss-film__title { font-size: 1.625rem; }
.ss-eyebrow, .ssh-eyebrow, .ss-card__meta, .ss-footer__heading, .ss-footer h2.widget-title, .ssh-facts__label { font-family: var(--ss-font-heading); font-weight: 700; letter-spacing: .08em; text-transform: uppercase; font-size: .8125rem; }
.ssh-facts__value { font-family: var(--ss-font-heading); font-weight: 700; text-transform: none; letter-spacing: 0; font-size: 1.1875rem; }
.ss-btn, .ssh-btn, .ss-link, .ss-nav__list > li > a, .ss-nav__list > li > button, .ssh-toggle, .ssh-calendar__title, .ssh-date-chip__day, .ssh-list__day, .ssh-countdown__num, .ss-stat__number { font-family: var(--ss-font-heading); }
.ss-btn, .ssh-btn { font-weight: 700; font-size: 1rem; letter-spacing: .03em; text-transform: none; }
.ss-btn--lg, .ssh-btn--lg { font-size: 1.125rem; }
.ss-link { font-size: 1rem; letter-spacing: 0; text-transform: none; border-bottom-color: currentColor; }
.ss-nav__list > li > a, .ss-nav__list > li > button { font-weight: 700; font-size: .9375rem; letter-spacing: 0; text-transform: none; padding-inline: .75rem; }
@media (min-width: 1024px) and (max-width: 1440px) { .ss-nav__list > li > a, .ss-nav__list > li > button { font-size: .875rem; padding-inline: .5rem; } }
.ss-stat__number { font-weight: 800; letter-spacing: -0.01em; }
blockquote, .ss-pullquote { font-family: var(--ss-font-display); font-weight: 700; text-transform: none; letter-spacing: 0; font-size: var(--ss-text-2xl); line-height: 1.2; }
.ssh-calendar__title { text-transform: none; }
/* No highlighter decoration in this set. */
h1 mark, h2 mark { background: none; color: inherit; padding: 0; }
/* Section-title rule: keep (structural, not decorative) but in brand blue */
.ss-section-head h2::after, .ssh-section-head__title::after { background: var(--ss-color-primary); height: 5px; }
