@media (max-width: 1100px) {
  .header-inner { grid-template-columns: 1fr auto; }
  .main-nav { display: none; }
  .mobile-toggle, .mobile-search, .mobile-cart { display: inline-flex; }
  .header-actions .icon-button:not(.mobile-search):not(.mobile-cart) { display: none; }
  .feature-strip-inner { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 900px) {
  .shop-layout,
  .hero-grid,
  .banner-grid,
  .newsletter-grid,
  .detail-grid,
  .checkout-layout,
  .cart-layout,
  .footer-grid,
  .feature-grid,
  .modal-body { grid-template-columns: 1fr; }
  .category-grid,
  .collection-grid,
  .product-grid,
  .testimonial-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sidebar { position: static; }
}

@media (max-width: 640px) {
  .announcement-inner,
  .toolbar,
  .footer-bottom-inner,
  .button-row,
  .newsletter-form,
  .detail-actions,
  .hero-actions,
  .card-actions {
    flex-direction: column;
    align-items: stretch;
  }
  .announcement-inner { padding: 8px 0; }
  .category-grid,
  .collection-grid,
  .product-grid,
  .feature-grid,
  .testimonial-grid,
  .feature-strip-inner,
  .form-grid,
  .range-row,
  .footer-grid { grid-template-columns: 1fr; }
  .page-intro h1,
  .section-head h2,
  .banner-copy h2 { font-size: 2.5rem; }
  .container { width: min(100% - 20px, 1200px); }
  .mobile-toggle { display: inline-flex; }
  .header-inner { min-height: 68px; }
}
