@media (min-width: 48rem) {
  .site-header { grid-template-columns: auto minmax(0, 1fr) auto; }
  .mobile-menu-toggle { display: none; }
  .site-navigation { grid-column: auto; justify-content: center; }
  .hero { min-height: calc(100svh - 5.2rem); }
  .hero-art { margin-top: -7rem; }
  .hero-copy { padding-bottom: 3rem; }
  .gallery-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); align-items: start; }
  .gallery-frame-tall { grid-column: auto; }
  .gallery-frame-square { grid-column: auto; margin-top: 5rem; }
  .gallery-frame-wide { grid-column: 1 / -1; margin-top: 0; }
  .manifesto-section { grid-template-columns: minmax(0, 1fr) minmax(18rem, .38fr); }
  .manifesto-product { margin: 0 -28% 0 -20%; max-width: 34rem; }
  .special-section { grid-template-columns: minmax(0, 1.08fr) minmax(26rem, .92fr); }
}

@media (min-width: 80rem) {
  .site-header { padding-block: .65rem; }
  .brand-mark { max-width: 8rem; }
  .hero { display: grid; grid-template-columns: minmax(0, .95fr) minmax(30rem, 1.05fr); align-items: center; gap: 1rem; padding-block: 3rem; }
  .hero-art { margin: 0; transform: translateX(3rem); }
  .hero h1 { font-size: clamp(9rem, 14vw, 14rem); }
  .hero-strip { font-size: clamp(6rem, 9vw, 9rem); }
  .gallery-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .gallery-frame-tall,
  .gallery-frame-square,
  .gallery-frame-wide { grid-column: auto; }
  .gallery-frame-square { margin-top: 5rem; }
  .gallery-frame-wide { margin-top: 10rem; }
}

@media (min-width: 64rem) and (max-width: 79.99rem) {
  .site-header { padding-block: .65rem; }
  .brand-mark { max-width: 8rem; }
  .hero { padding-top: 3rem; }
  .hero h1 { font-size: clamp(9rem, 16vw, 12rem); }
  .hero-strip { font-size: clamp(6rem, 11vw, 8rem); }
}

@media (max-width: 47.99rem) {
  .site-header.is-menu-closed .site-navigation { display: none; }
  .menu-open .site-navigation {
    align-content: center;
    background: var(--cream);
    display: flex;
    flex-direction: column;
    font-size: 1.5rem;
    inset: 0;
    justify-content: center;
    padding: 5rem var(--page-padding) 2rem;
    position: fixed;
    z-index: 30;
  }
  .menu-open .site-navigation a { justify-content: center; width: 100%; }
  .menu-open .mobile-menu-toggle { position: fixed; right: var(--page-padding); top: 1rem; z-index: 31; }
  .hero { min-height: auto; padding-top: 2rem; }
  .hero h1 { font-size: clamp(4.25rem, 20vw, 6rem); }
  .hero-strip { font-size: clamp(3rem, 15vw, 4.8rem); }
  .hero-actions { display: grid; }
  .hero-actions .button { width: 100%; }
  .product-carousel.is-enhanced .carousel-controls { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .carousel-pagination { grid-column: 1 / -1; grid-row: 1; max-width: 100%; overflow-x: auto; padding-bottom: .35rem; }
  .carousel-arrow { width: 100%; }
}

@media (prefers-reduced-motion: reduce) {
  .site-loader { display: none; }
  .gallery-media img,
  .manifesto-product,
  .story-float,
  .product-card-image,
  .carousel-arrow-icon,
  .contact-photo { transform: none !important; }
}
