/* Shared website heading scale. Load after page styles so comparable titles stay equal. */
:root {
  --fs-heading-page: clamp(2.25rem, 1.2rem + 3.2vw, 4rem);
  --fs-heading-section: clamp(1.65rem, 1.2rem + 1.5vw, 2.5rem);
  --fs-heading-panel: 1.5rem;
}
/* Deliberate priority: page-local legacy sizes must not override the brand scale. */
body h1 {
  font-size: var(--fs-heading-page) !important;
  font-family: "Avenir Next", Avenir, Inter, sans-serif;
  font-weight: 700;
  line-height: 1.08 !important;
  letter-spacing: -.035em !important;
  overflow-wrap: anywhere;
  text-wrap: balance;
}
body h2 {
  font-size: var(--fs-heading-context, var(--fs-heading-section)) !important;
  line-height: 1.15 !important;
  letter-spacing: -.03em !important;
  overflow-wrap: anywhere;
  text-wrap: balance;
}
/* Reading chapters, tools and dialogs are compact headings, not page introductions. */
:is([role="dialog"], .dialog, .filter-sheet-head, .care-section, .profile-suitability-summary-copy,
  .profile-suitability-details, .account-panel, .article-prose, .article-copy-section,
  .legal-section-head, .legal-summary, .legal-status, .tank-image-viewer-head) {
  --fs-heading-context: var(--fs-heading-panel);
}
