/*
 * Homepage hero headline auto-fit (banner-autofit-20261109).
 * Any CMS headline must fit inside the dark intro card on every screen size:
 * - the card is a size container; the title scales with its inner width (cqi), clamped;
 *   browsers without container units fall back to a vw clamp;
 * - words never hyphenate or break mid-word;
 * - homeHero-autofit.js shrinks a title further only if one word is still wider than the card.
 */
.homeHero__introCard {
  box-sizing: border-box;
  max-width: min(545px, 100%);
  padding: clamp(1.5rem, 0.75rem + 3vw, 3.42rem) clamp(1.25rem, 0.5rem + 3vw, 2.565rem);
  container-type: inline-size;
  container-name: homehero-card;
  overflow-wrap: normal;
}

.homeHero__introCard .homeHero__title,
.homeHero__introCard .homeHero__title-script {
  display: block;
  max-width: 100%;
  -webkit-hyphens: none;
  -ms-hyphens: none;
  hyphens: none;
  overflow-wrap: normal;
  word-wrap: normal;
  word-break: normal;
  white-space: normal;
  text-wrap: balance;
}

.homeHero__introCard .homeHero__title {
  /* Fallback (no container units): about 100px at 1440, 46px+ on phones. */
  font-size: clamp(2.25rem, 1.5rem + 4.6vw, 100px);
  /* Card inner width x 0.17 = 78px in the 545px desktop card, ~53px on a 390px phone. */
  font-size: clamp(2rem, 17cqi, 100px);
  line-height: 0.82;
  padding-left: 0;
  padding-right: 0;
}

.homeHero__introCard .homeHero__title-script {
  font-size: clamp(1.75rem, 1rem + 3vw, 66px);
  font-size: clamp(1.5rem, 13cqi, 66px);
}

.homeHero__introCard .button__primary--cleats {
  max-width: 100%;
  box-sizing: border-box;
  -webkit-hyphens: none;
  hyphens: none;
}
