/* Responsive breakpoints */

@media (max-width: 1024px) {
  .cart-layout { grid-template-columns: 1fr; }
  .checkout-layout { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
  .contact-grid { grid-template-columns: 1fr; }
}

@media (max-width: 768px) {
  .section { padding: 64px 0; }
  .nav { display: none; }
  .hamburger { display: grid; }
  .mobile-nav { display: flex; }
  .brand__tag { display: none; }
  .brand__name { letter-spacing: 0; white-space: nowrap; }
  .hero { min-height: 72vh; }
  .hero__title { font-size: clamp(34px, 10vw, 48px); letter-spacing: .12em; }
  .hero__subtitle { font-size: 15px; max-width: 90%; }
  .btn--gold { padding: 14px 32px; }
  .category-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
  .product-grid { grid-template-columns: repeat(2, 1fr); gap: 16px; }
  .product-card__body { padding: 14px; }
  .product-card__name { font-size: 15px; }
  .form-grid { grid-template-columns: 1fr; }
  .cart-item { grid-template-columns: 80px 1fr; }
  .cart-item img { width: 80px; height: 80px; }
  .cart-item__remove { grid-column: 2; justify-self: start; padding: 0; }

  /* Footer: 2 columns on small tablets/phones */
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 28px; }
}

@media (max-width: 560px) {
  .footer-grid { grid-template-columns: 1fr; gap: 28px; }
  .product-grid { grid-template-columns: 1fr; gap: 16px; }
}

@media (max-width: 480px) {
  .container { padding: 0 18px; }
  .hero__title { letter-spacing: .12em; }
  .category-card__title { font-size: 18px; }
  .btn { padding: 12px 24px; }
}
