:root {
  --sire-page-width: min(90vw, 160vh, 1800px);
}

/* Match the storefront to the same 16:9 viewport reference as the main site. */
@media (min-width: 721px) {
  .store-header,
  .store-main,
  .store-footer,
  .not-found {
    width: var(--sire-page-width);
  }

  .header-title strong {
    font-size: clamp(27px, min(3.78vw, 6.72vh), 70px);
  }

  .store-hero h1 {
    font-size: clamp(49px, min(6.57vw, 11.68vh), 119px);
  }

  .store-portal strong {
    font-size: clamp(29px, min(2.97vw, 5.28vh), 56px);
  }

  .catalog-heading h2 {
    font-size: clamp(38px, min(4.86vw, 8.64vh), 88px);
  }

  .product-hero-copy h1 {
    font-size: clamp(49px, min(5.4vw, 9.6vh), 97px);
  }

  .product-content article > h2 {
    font-size: clamp(38px, min(4.5vw, 8vh), 79px);
  }

  .guide-section-heading > span,
  .product-content article .guide-section-heading h3 {
    font-size: clamp(31px, min(3.42vw, 6.08vh), 59px);
  }

  .product-content article .custom-horse-model-header h4 {
    font-size: clamp(25px, min(2.7vw, 4.8vh), 43px);
  }

  .product-content article .custom-horse-media-heading h4 {
    font-size: clamp(23px, min(2.52vw, 4.48vh), 41px);
  }

  .recent-payments-heading h2 {
    font-size: clamp(34px, min(4.32vw, 7.68vh), 77px);
  }

  .cart-header h2 {
    font-size: clamp(38px, min(3.6vw, 6.4vh), 63px);
  }

  .not-found h1,
  .result-page h1 {
    font-size: clamp(47px, min(6.3vw, 11.2vh), 108px);
  }
}
