/* Tablet (768px and up) */
@media (min-width: 768px) {
    .container {
        padding: 0 var(--space-lg);
    }
    
    .products-grid {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .footer-content {
        grid-template-columns: repeat(3, 1fr);
    }
    
    .side-menu {
        width: 400px;
        max-width: 90vw;
    }
    
    .product-detail {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: var(--space-xl);
    }
    
    .product-media {
        margin-bottom: 0;
    }
}

/* Desktop (1024px and up) */
@media (min-width: 1024px) {
    .products-grid {
        grid-template-columns: repeat(4, 1fr);
    }
    
    .section-title {
        font-size: 2rem;
    }
    
    .slide {
        min-height: 500px;
    }
    
    .subscribe-form {
        flex-direction: row;
    }
    
    .header-actions {
        gap: var(--space-lg);
    }
    
    .sticky-cta {
        display: none !important;
    }
}

/* Mobile Specific */
@media (max-width: 767px) {
    h1 { font-size: 2rem; }
    h2 { font-size: 1.75rem; }
    h3 { font-size: 1.25rem; }
    
    .slide {
        min-height: 300px;
        padding: var(--space-lg);
    }
    
    .slide-image {
        width: 50%;
    }
    
    .product-title {
        font-size: 1.5rem;
    }
    
    .final-price {
        font-size: 1.75rem;
    }
    
    .sticky-cta {
        display: block;
    }
    
    .btn {
        padding: var(--space-lg);
    }
    
    .subscribe-form {
        flex-direction: column;
    }
}

/* Small Mobile (480px and down) */
@media (max-width: 480px) {
    .container {
        padding: 0 var(--space-sm);
    }
    
    .products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: var(--space-sm);
    }
    
    .product-info {
        padding: var(--space-sm);
    }
    
    .product-name {
        font-size: 0.875rem;
    }
    
    .current-price {
        font-size: 1.125rem;
    }
    
    .slide {
        min-height: 250px;
    }
}