/* ==========================================================================
   Responsive — Mobile-first breakpoints (576 / 768 / 992 / 1200 / 1400)
   ========================================================================== */

/* Small devices (landscape phones, 576px+) */
@media (min-width: 576px) {
    .hero-heading {
        font-size: 2.25rem;
    }

    .promo-banner-heading {
        font-size: 2rem;
    }

    .newsletter-section input[type="email"],
    .newsletter-section input[type="submit"],
    .newsletter-section button[type="submit"] {
        display: inline-block;
        width: auto;
    }

    .newsletter-section input[type="email"] {
        width: 300px;
        margin-right: 8px;
        margin-bottom: 0;
    }

    .newsletter-section input[type="submit"],
    .newsletter-section button[type="submit"] {
        width: auto;
        padding: 14px 32px;
    }
}

/* Medium devices (tablets, 768px+) */
@media (min-width: 768px) {
    /* Typography */
    .hero-heading {
        font-size: 2.5rem;
    }

    .hero-subtext {
        font-size: 1.125rem;
    }

    /* Layout */
    .container {
        padding-left: 32px;
        padding-right: 32px;
    }

    .homepage-section {
        padding: 32px 0;
    }

    /* Category grid: 3 columns */
    .category-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    /* Product grid: 3 columns */
    ul.products,
    .woocommerce ul.products {
        grid-template-columns: repeat(3, 1fr) !important;
    }

    /* Why choose us: 2x2 with larger cards */
    .why-choose-grid {
        gap: 32px;
    }

    .why-choose-card {
        padding: 40px 28px;
    }

    /* Blog preview: 3 columns */
    .blog-preview-grid {
        grid-template-columns: repeat(3, 1fr);
    }

    /* Single product: 2 columns */
    .single-product-layout {
        grid-template-columns: 1fr 1fr;
    }

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

    /* Promo banner larger text */
    .promo-banner-content {
        padding: 80px 32px;
    }

    .promo-banner-heading {
        font-size: 2.25rem;
    }

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

    /* Hero swiper arrows visible */
    .hero-carousel .swiper-button-next,
    .hero-carousel .swiper-button-prev {
        display: flex;
    }
}

/* Large devices (desktops, 992px+) */
@media (min-width: 992px) {
    /* Typography */
    .hero-heading {
        font-size: 3rem;
    }

    .hero-content {
        padding: 60px 0;
    }

    .hero-carousel .swiper-slide {
        min-height: 500px;
    }

    /* Navigation: show desktop nav, hide hamburger */
    .main-navigation {
        display: block;
    }

    .mobile-menu-toggle {
        display: none;
    }

    /* Header actions: show labels */
    .header-inner {
        height: var(--lh-header-height);
    }

    /* Narrow desktop header refinements */
    @media (max-width: 1100px) {
        .primary-menu > li > a {
            padding-left: 8px;
            padding-right: 8px;
            font-size: 0.9375rem;
        }
        .header-inner {
            gap: 12px;
        }
        .header-search-form {
            width: 160px;
        }
    }

    /* Homepage section spacing */
    .homepage-section {
        padding: 40px 0;
    }

    /* Product grid: 4 columns */
    ul.products,
    .woocommerce ul.products {
        grid-template-columns: repeat(4, 1fr) !important;
    }

    /* Why choose us: 4 columns */
    .why-choose-grid {
        grid-template-columns: repeat(4, 1fr);
    }

    /* Footer: 5 columns */
    .footer-grid {
        grid-template-columns: 1.5fr 1fr 1fr 1fr 1.2fr;
    }

    /* Content area with sidebar */
    .content-area {
        flex-direction: row;
    }

    .content-area .site-content {
        flex: 1;
    }

    .content-area .widget-area {
        width: 300px;
        flex-shrink: 0;
    }

    /* Single product gallery/summary: 55/45 */
    .single-product-layout {
        grid-template-columns: 55fr 45fr;
        gap: 48px;
    }

    /* Promo banner */
    .promo-banner-content {
        padding: 100px 40px;
    }

    .promo-banner-heading {
        font-size: 2.5rem;
    }

    /* Newsletter inline layout */
    .newsletter-heading {
        font-size: 2rem;
    }

    /* Posts grid: 3 columns */
    .posts-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

/* Extra large devices (large desktops, 1200px+) */
@media (min-width: 1200px) {
    .hero-heading {
        font-size: 3.25rem;
    }

    .hero-carousel .swiper-slide {
        min-height: 560px;
    }

    .hero-content {
        padding: 80px 0;
    }

    /* Category grid: tighter gap at larger sizes */
    .category-grid {
        gap: 28px;
    }

    /* Shop title */
    .shop-title {
        font-size: 2.5rem;
    }

    /* Section headers */
    .section-title {
        font-size: 2rem;
    }
}

/* XXL devices (1400px+) */
@media (min-width: 1400px) {
    .container {
        padding-left: 40px;
        padding-right: 40px;
    }

    .hero-heading {
        font-size: 3.5rem;
    }

    .homepage-section {
        padding: 48px 0;
    }
}

/* Mobile-specific adjustments (max-width queries for edge cases) */

/* Very small screens */
@media (max-width: 359px) {
    .header-actions .header-action-text {
        display: none;
    }

    .hero-heading {
        font-size: 1.75rem;
    }

    .promo-banner-heading {
        font-size: 1.5rem;
    }
}

/* Mobile menu drawer adjustments for small screens */
@media (max-width: 575px) {
    .mobile-menu-drawer {
        width: 100%;
    }

    .testimonial-card {
        padding: 24px 16px;
    }

    .why-choose-grid {
        grid-template-columns: 1fr;
    }

    .category-grid {
        gap: 12px;
    }

    /* Single product: thumbnails 2 columns on small mobile */
    .woocommerce-product-gallery .flex-control-thumbs,
    .lh-thumbnails-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    /* Reviews summary stacks vertically on mobile */
    .lh-reviews-summary {
        flex-direction: column;
        gap: 16px;
    }
}

/* Tablet: thumbnails 3 columns */
@media (min-width: 576px) and (max-width: 767px) {
    .woocommerce-product-gallery .flex-control-thumbs,
    .lh-thumbnails-grid {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}

/* Print styles */
@media print {
    .promo-bar,
    .site-header,
    .site-footer,
    .newsletter-section,
    .mobile-menu-drawer,
    .mobile-menu-overlay,
    .header-search-overlay,
    .swiper-pagination,
    .swiper-button-next,
    .swiper-button-prev {
        display: none !important;
    }

    body {
        font-size: 12pt;
        color: #000;
        background: #fff;
    }

    .container {
        max-width: 100%;
        padding: 0;
    }

    a {
        color: #000;
        text-decoration: underline;
    }

    img {
        max-width: 100% !important;
    }
}
