/* ============================================
   Responsive — Premium eCommerce
   ============================================ */

@media (max-width: 1200px) {
    .product-grid { grid-template-columns: repeat(3, 1fr); }
    .categories-grid { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 1024px) {
    .container { padding: 0 24px; }
    .container-sm { padding: 0 24px; }
    .footer-grid { grid-template-columns: repeat(2, 1fr); gap: 32px; }
    .features-grid { grid-template-columns: repeat(2, 1fr); }
    .feature-card { border-right: none; border-bottom: 1px solid var(--border); }
    .shop-layout { grid-template-columns: 200px 1fr; gap: 32px; }
    .product-detail { gap: 40px; }
    .hero-title { font-size: 44px; }
    .hero-content { padding: 0 48px; }
    .dropdown-mega { min-width: 400px; }
    .split-content { padding: 40px; }
    .split-content h2 { font-size: 28px; }
    .quote-text { font-size: 24px; }
    .promo-card h3 { font-size: 26px; }
}

@media (max-width: 768px) {
    .container { padding: 0 16px; }
    .container-sm { padding: 0 16px; }

    /* Navbar */
    .navbar-menu { display: none; }
    .navbar-left { display: none; }
    .navbar-center { flex: 0; }
    .navbar-right { flex: 1; justify-content: flex-end; }
    .mobile-toggle { display: flex; }
    .navbar-inner { height: 56px; }

    /* Hero */
    .hero-slide { height: 70vh; min-height: 400px; }
    .hero-content { padding: 0 24px; }
    .hero-title { font-size: 36px; }
    .hero-subtitle { font-size: 14px; }
    .hero-placeholder h1 { font-size: 40px; }
    .hero-placeholder-content { padding: 24px; }

    /* Products */
    .product-grid { grid-template-columns: repeat(2, 1fr); gap: 14px; }
    .price-current { font-size: 13px; }

    /* Categories */
    .categories-grid { grid-template-columns: repeat(2, 1fr); gap: 8px; }
    .category-card { aspect-ratio: 1; }

    /* Shop */
    .shop-layout { grid-template-columns: 1fr; }
    .shop-sidebar {
        position: fixed; left: -320px; top: 0; bottom: 0;
        width: 300px; z-index: 1001; padding: 24px;
        background: var(--bg-card);
        box-shadow: 0 0 40px rgba(0,0,0,0.15);
        overflow-y: auto;
        transition: left 0.4s cubic-bezier(0.16, 1, 0.3, 1);
    }
    .shop-sidebar.open { left: 0; }

    /* Product Detail */
    .product-detail { grid-template-columns: 1fr; gap: 24px; }
    .product-gallery { position: static; }
    .product-info h1 { font-size: 24px; }
    .product-features { grid-template-columns: 1fr; }
    .product-feature { border-right: none; border-bottom: 1px solid var(--border); }
    .product-feature:last-child { border-bottom: none; }

    /* Cart */
    .cart-layout { grid-template-columns: 1fr; gap: 24px; }
    .order-summary { position: static; }

    /* Checkout */
    .checkout-layout { grid-template-columns: 1fr; gap: 24px; }

    /* Profile */
    .profile-layout { grid-template-columns: 1fr; gap: 24px; }
    .profile-sidebar { position: static; }

    /* Contact */
    .contact-grid { grid-template-columns: 1fr; gap: 40px; }

    /* Promo */
    .promo-grid { grid-template-columns: 1fr; }
    .promo-card { height: 300px; }

    /* Split Section */
    .split-section { grid-template-columns: 1fr; }
    .split-image { min-height: 300px; }
    .split-content { padding: 40px 24px; }

    /* Features */
    .features-grid { grid-template-columns: repeat(2, 1fr); }

    /* Newsletter */
    .newsletter-inner { flex-direction: column; text-align: center; }
    .newsletter-form { width: 100%; }
    .newsletter-form input { min-width: auto; flex: 1; }
    .newsletter-text h3 { font-size: 22px; }

    /* Footer */
    .footer-grid { grid-template-columns: 1fr; gap: 24px; }
    .footer-bottom .container { flex-direction: column; gap: 12px; text-align: center; }

    /* Auth */
    .auth-card { padding: 0 16px; }
    .auth-header h1 { font-size: 26px; }
    .form-row { grid-template-columns: 1fr; }

    /* Section */
    .section { padding: 48px 0; }
    .section-title { font-size: 28px; }
    .section-header { flex-direction: column; align-items: flex-start; gap: 12px; }

    /* Quote */
    .quote-section { padding: 60px 20px; }
    .quote-text { font-size: 20px; }

    /* Success */
    .success-actions { flex-direction: column; }

    /* Page Header */
    .page-header h1 { font-size: 30px; }
}

@media (max-width: 480px) {
    .hero-slide { height: 60vh; min-height: 350px; }
    .hero-title { font-size: 28px; }
    .hero-actions { flex-direction: column; }
    .hero-actions .btn { width: 100%; text-align: center; }
    .hero-placeholder h1 { font-size: 32px; }

    .product-grid { gap: 10px; }
    .product-card-title { font-size: 13px; }
    .product-card-category { font-size: 10px; }
    .price-current { font-size: 13px; }
    .price-original { font-size: 11px; }

    .categories-grid { grid-template-columns: repeat(2, 1fr); gap: 6px; }

    .cart-item { flex-direction: column; }
    .cart-item-image { width: 100%; height: 200px; }

    .features-grid { grid-template-columns: 1fr 1fr; }
    .feature-card { padding: 24px 12px; }

    .section-title { font-size: 24px; }
    .promo-card h3 { font-size: 22px; }

    .countdown-box { padding: 4px 8px; font-size: 13px; min-width: 34px; }
}
