/* === Responsive Design === */

/* Tablet (max-width: 1024px) */
@media (max-width: 1024px) {
  .nav-links { display: none; }
  .nav-toggle { display: flex; }
  .hero h1 { font-size: 2.8rem; }
  .hero p { font-size: 1.1rem; }
  .product-grid { grid-template-columns: repeat(3, 1fr); }
  .category-grid { grid-template-columns: repeat(2, 1fr); }
  .features-grid { grid-template-columns: repeat(2, 1fr); }
  .shop-layout { grid-template-columns: 1fr; }
  .shop-sidebar { position: static; }
  .product-detail { grid-template-columns: 1fr; gap: 32px; }
  .cart-layout { grid-template-columns: 1fr; }
  .checkout-layout { grid-template-columns: 1fr; }
  .cart-summary { position: static; }
  .account-layout { grid-template-columns: 1fr; }
  .account-sidebar { margin-bottom: 16px; }
  .policies-layout { grid-template-columns: 1fr; }
  .policies-nav { position: static; margin-bottom: 16px; }
  .about-grid { grid-template-columns: 1fr; }
  .contact-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
}

/* Mobile (max-width: 768px) */
@media (max-width: 768px) {
  .container { padding: 0 16px; }
  .navbar-inner { height: 60px; padding: 0 16px; }
  .hero { margin-top: 60px; min-height: 500px; }
  .hero-content { padding: 48px 16px; }
  .hero h1 { font-size: 2.2rem; }
  .hero p { font-size: 1rem; }
  .hero-actions .btn { width: 100%; }
  .section-header h2 { font-size: 1.8rem; }
  .product-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; }
  .category-grid { grid-template-columns: 1fr; }
  .features-grid { grid-template-columns: 1fr; }
  .newsletter { margin: 40px 16px; padding: 40px 16px; }
  .newsletter h2 { font-size: 1.8rem; }
  .newsletter-form { flex-direction: column; }
  .product-card-body { padding: 12px; }
  .product-card-title { font-size: 0.85rem; }
  .product-card-price .price-current { font-size: 1rem; }
  .cart-item { grid-template-columns: 80px 1fr; gap: 12px; }
  .cart-item-image { width: 80px; height: 80px; }
  .cart-item-remove { grid-column: 2; justify-self: end; }
  .form-row { grid-template-columns: 1fr; }
  .auth-card { padding: 32px 20px; }
  .footer-grid { grid-template-columns: 1fr; gap: 24px; }
  .footer-bottom { flex-direction: column; text-align: center; }
  .scroll-top { left: auto; right: 16px; bottom: 16px; }
  .payment-icons--checkout { grid-template-columns: repeat(4, 58px); }
  .payment-icons--footer { grid-template-columns: repeat(4, 52px); }
  .page-header h1 { font-size: 1.8rem; }
  .product-info h1 { font-size: 1.5rem; }
  .product-info-price .price-current { font-size: 1.5rem; }
  .toast { min-width: auto; max-width: calc(100vw - 48px); }
}

/* Small Mobile (max-width: 480px) */
@media (max-width: 480px) {
  .product-grid { grid-template-columns: 1fr; }
  .hero h1 { font-size: 1.8rem; }
  .section-header h2 { font-size: 1.5rem; }
  .product-card-actions { flex-direction: column; }
}

/* Print */
@media print {
  .navbar, .footer, .newsletter, .scroll-top, .toast-container, .nav-actions { display: none !important; }
  body { background: #fff; }
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    transition-duration: 0.01ms !important;
  }
  .reveal { opacity: 1; transform: none; }
}
