@media (max-width: 70rem) {
  .primary-nav { gap: 1.25rem; }
  .primary-nav ul { gap: 1.1rem; }
  .primary-nav ul a { font-size: .7rem; }
  .hero-storefront-grid { grid-template-columns: minmax(0,1fr) minmax(24rem,.85fr); gap: 3rem; }
  .hero-product-collage { min-height: 33rem; }
  .hero-product-note { left: -1.25rem; max-width: 7rem; }
}

@media (max-width: 56rem) {
  :root { --header-height: 5rem; }
  .container { width: min(calc(100% - 2.5rem), var(--container)); }
  .nav-toggle { display: block; position: relative; z-index: 2; }
  .nav-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(.42rem) rotate(45deg); }
  .nav-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
  .nav-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-.42rem) rotate(-45deg); }
  .primary-nav { position: fixed; inset: 0; padding: 7rem 2rem 3rem; flex-direction: column; align-items: stretch; justify-content: center; visibility: hidden; opacity: 0; background: var(--color-forest); transform: translateY(-1rem); transition: visibility var(--transition), opacity var(--transition), transform var(--transition); }
  .primary-nav.is-open { visibility: visible; opacity: 1; transform: translateY(0); }
  .primary-nav ul { flex-direction: column; align-items: stretch; }
  .primary-nav ul a { display: block; font: 500 2.2rem/1.2 var(--font-display); text-align: center; }
  .primary-nav ul a::after { display: none; }
  .nav-cta { margin: 1.5rem auto 0; width: min(100%, 20rem); }
  .hero--storefront { min-height: 0; }
  .hero-storefront-grid { grid-template-columns: 1fr; padding-block: calc(var(--header-height) + 5rem) 4.5rem; }
  .hero-storefront-copy h1 { max-width: 11ch; }
  .hero-product-collage { width: min(100%,34rem); min-height: 31rem; margin-inline: auto; }
  .hero-product-note { left: 0; top: .35rem; max-width: 8.25rem; }
  .footer-main { grid-template-columns: 1.5fr 1fr 1fr; }
  .footer-note { grid-column: 1 / -1; }
}

@media (max-width: 40rem) {
  :root { --space-section: 4.5rem; }
  .container { width: min(calc(100% - 2rem), var(--container)); }
  h1 { font-size: clamp(3.6rem, 17vw, 5rem); }
  h2 { font-size: clamp(2.75rem, 13vw, 4rem); }
  .brand-name { font-size: 1.15rem; }
  .hero { min-height: 48rem; }
  .hero--storefront { min-height: 0; }
  .hero-storefront-grid { gap: 2.5rem; padding-block: calc(var(--header-height) + 4rem) 3.5rem; }
  .hero-storefront-copy h1 { font-size: clamp(3.5rem,15vw,5rem); }
  .hero-actions--three { align-items: stretch; }
  .hero-actions--three .button { width: 100%; }
  .hero-actions--three .text-link { margin: .35rem 0 0; }
  .hero-support { align-items: flex-start; line-height: 1.5; }
  .hero-product-collage { min-height: 26rem; }
  .hero-product-note { display: none; }
  .hero-lede { max-width: 29rem; }
  .hero-actions { align-items: flex-start; flex-direction: column; gap: 1.35rem; }
  .hero-actions .button { width: 100%; }
  .section-heading { align-items: flex-start; flex-direction: column; }
  .footer-main { grid-template-columns: 1fr 1fr; }
  .footer-brand, .footer-note { grid-column: 1 / -1; }
  .footer-bottom { flex-direction: column; gap: .5rem; }
}

@media (max-width: 23rem) {
  .brand-name { display: none; }
}
