/* ============================================
   RESPONSIVE SYSTEM (SINGLE SOURCE OF TRUTH)
============================================ */

/* ---------- LARGE TABLETS / SMALL LAPTOPS ---------- */
@media (max-width: 1200px) {

    .container {
        max-width: 992px;
    }

}

/* ---------- TABLETS ---------- */
@media (max-width: 992px) {

    .container {
        max-width: 768px;
    }

    /* Footer */
    .footer-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 30px;
    }

    /* Hero */
    .hero-banner {
        padding: 40px 0;
    }

    .hero-slider h2 {
        font-size: 2rem;
    }

}

/* ---------- SMALL TABLETS / LARGE PHONES ---------- */
@media (max-width: 768px) {

    .container {
        max-width: 100%;
        padding: 0 20px;
    }

    /* =========================
       HEADER
    ========================= */
    .header-container {
        flex-wrap: wrap;
        gap: 12px;
        padding: 12px 0;
    }

    .site-logo a {
        font-size: 1.25rem;
    }

    .custom-logo {
        max-height: 50px;
    }

    .header-actions {
        gap: 15px;
    }

    .search-bar {
        order: 3;
        width: 100%;
        margin: 10px 0 0;
        max-width: 100%;
    }

    /* =========================
       TOP BAR
    ========================= */
    .top-bar-container {
        flex-direction: column;
        gap: 8px;
        text-align: center;
    }

    /* =========================
       SECTIONS
    ========================= */
    .section-header {
        flex-direction: column;
        align-items: center;
        text-align: center;
        gap: 10px;
    }

    .section-title {
        font-size: 1.6rem;
    }

    /* =========================
       PRODUCT GRID
    ========================= */
    .products-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }

    .product-image {
        height: 180px;
    }

    /* =========================
       HERO SLIDER
    ========================= */
    .hero-slider .slide {
        flex-direction: column;
        text-align: center;
        gap: 20px;
    }

    .hero-slider .slide-content {
        text-align: center;
    }

    /* =========================
       NEWS
    ========================= */
    .news-grid {
        grid-template-columns: 1fr;
    }

    /* =========================
       FOOTER
    ========================= */
    .footer-container {
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
    }

    /* =========================
       CHECKOUT
    ========================= */
    .woocommerce-checkout form.checkout {
        grid-template-columns: 1fr;
    }

    /* =========================
       CONTACT PAGE
    ========================= */
    .page-contact-us .entry-content,
    .contact-page {
        padding: 25px 15px;
    }

    .page-contact-us h2,
    .contact-page h1 {
        font-size: 1.8rem;
    }
}

/* ---------- PHONES ---------- */
@media (max-width: 576px) {

    .container {
        padding: 0 15px;
    }

    /* Product Grid */
    .products-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .product-card {
        border-radius: 10px;
    }

    .product-image {
        height: 160px;
    }

    /* Hero */
    .hero-slider h2 {
        font-size: 1.8rem;
    }

    /* Section spacing */
    .product-section,
    .news-section {
        padding: 40px 0;
    }

    /* Footer */
    .footer-container {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    /* Logo */
    .custom-logo {
        max-height: 42px;
    }
}

/* ---------- SMALL PHONES ---------- */
@media (max-width: 480px) {

    .product-image {
        height: 140px;
    }

    .hero-slider h2 {
        font-size: 1.6rem;
    }

}

@media (max-width: 768px) {
    .sticky-add-to-cart {
        display: flex;
    }
}