/* ==========================
   TABLET LARGE
========================== */

@media(max-width:1200px){

    #products-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .sidebar{
        width:190px;
        min-width:190px;
    }
}

/* ==========================
   TABLET
========================== */

@media(max-width:991px){

    .main-layout{
        flex-direction:column;
        padding:20px;
    }

    .sidebar{
        position:relative;
        top:0;
        width:100%;
        min-width:100%;
        overflow-x:auto;
    }

    #products-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .category-list{
        display:flex;
        gap:10px;
    }

    .category-list li{
        white-space:nowrap;
        margin-bottom:0;
    }
}

/* ==========================
   MOBILE
========================== */

.mobile-menu-btn{
    display:none !important;
}

@media(max-width:768px){

    /* ---------- HEADER ---------- */

    .site-header{
        display:flex;
        align-items:center;
        justify-content:space-between;
        flex-wrap:wrap;
        padding:14px 16px;
        gap:12px;
    }

    .logo{
        flex:1;
    }

    .mobile-menu-btn{
        display:flex !important;
        align-items:center;
        justify-content:center;
        width:42px;
        height:42px;
        border:none;
        border-radius:12px;
        background:
        linear-gradient(
            135deg,
            #b71c1c,
            #ff6b00
        );
        color:#fff;
        font-size:22px;
        cursor:pointer;
        flex-shrink:0;
    }

    .header-center{
        width:100%;
        order:3;
    }

    .header-search-box{
        width:100%;
    }

    .header-right{
        display:none !important;
        order:4;
        width:100%;
        flex-direction:column;
        gap:8px;
        background:#111;
        border-radius:18px;
        padding:12px;
        margin-top:4px;
    }

    .header-right.active{
        display:flex !important;
    }

    .header-right a{
        width:100%;
        text-align:center;
        padding:12px;
        border-radius:12px;
        color:#fff;
        background:rgba(255,255,255,.05);
    }

    .header-right a:hover{
        background:
        linear-gradient(
            135deg,
            #b71c1c,
            #ff6b00
        );
    }

    /* ---------- PRODUCT TOOLS ---------- */

    .product-tools{
        flex-direction:column;
        align-items:stretch;
        gap:14px;
    }

    .product-search-wrap{
        max-width:100%;
    }

    .product-counter{
        min-width:auto;
        text-align:center;
    }

    /* ---------- HERO ---------- */

    .hero-slider{
        height:auto;
        min-height:330px;
        margin:15px;
        border-radius:24px;
        overflow:hidden;
    }

    .slide{
        padding:18px;
    }

    .intro-slide{
        align-items:flex-start;
    }

    .intro-content{
        width:100%;
        max-width:100%;
        padding:0;
    }

    .intro-content h1{
        font-size:30px;
        line-height:1.18;
        margin-bottom:12px;
    }

    .intro-content p{
        font-size:14px;
        line-height:1.65;
        max-width:100%;
    }

    .primary-btn{
        width:100%;
        margin-top:10px;
    }

    /* ---------- HERO PRODUCT CARDS ---------- */

    .trend-grid{
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:12px;
        align-items:stretch;
    }

    .hero-product-card{
        position:relative;
        width:100%;
        min-height:190px;
        padding:12px;
        border-radius:18px;
        overflow:hidden;
        display:flex;
        flex-direction:column;
        justify-content:space-between;
    }

    .hero-product-card img{
        width:100%;
        height:90px;
        object-fit:contain;
        margin-bottom:8px;
    }

    .hero-product-card h3{
        font-size:13px;
        line-height:1.35;
        margin-bottom:10px;
        display:-webkit-box;
        -webkit-line-clamp:2;
        -webkit-box-orient:vertical;
        overflow:hidden;
    }

    .trend-btn{
        width:100%;
        text-align:center;
        font-size:13px;
        padding:10px;
        border-radius:12px;
    }

    .trend-badge{
        top:8px;
        right:8px;
        font-size:10px;
        padding:4px 8px;
    }

/* ---------- PRODUCT CARDS AMAZON STYLE ---------- */

#products-grid{

    grid-template-columns:
    repeat(2,1fr)
    !important;

    gap:1px;

    background:#e5e7eb;

    padding:0 !important;

    margin:0 -10px !important;
}

/* CARD */

.product-card{

    position:relative;

    background:#fff;

    border-radius:0 !important;

    overflow:hidden;

    padding:0 !important;

    margin:0 !important;

    display:flex;

    flex-direction:column;

    min-height:unset !important;

    border:1px solid
    rgba(0,0,0,.06);

    box-shadow:
    0 1px 2px
    rgba(0,0,0,.04);
}

/* CLICK AREA */

.product-click-area{

    display:flex;

    flex-direction:column;

    min-height:unset;

    flex:none !important;
}

/* IMAGE AREA */

.product-image-wrap{

    width:100%;

    height:175px !important;

    margin:0 !important;

    padding:0 !important;

    border-radius:0 !important;

    background:#fff;

    overflow:hidden;

    display:flex;

    align-items:flex-end;

    justify-content:center;

    position:relative;

    flex:none !important;
}

/* IMAGE */

.product-image-wrap img{

    width:112%;

    height:112%;

    object-fit:contain;

    object-position:center center;

    transform:
    translateY(10px);

    display:block;
}

/* BADGE */

.card-badge{

    position:absolute !important;

    top:8px;

    left:8px;

    z-index:20;

    display:inline-flex !important;

    align-items:center;

    justify-content:center;

    padding:4px 8px;

    border-radius:4px;

    font-size:9px;

    font-weight:700;

    line-height:1;

    color:#fff;

    background:
    linear-gradient(
        135deg,
        #d62828,
        #ff6b00
    );

    box-shadow:
    0 2px 6px
    rgba(0,0,0,.12);

    max-width:70px;

    text-align:center;

    white-space:nowrap;

    overflow:hidden;

    text-overflow:ellipsis;
}

/* CONTENT */

.product-content{

    padding:
    2px 8px 0 !important;

    margin-top:auto;

    display:flex;

    flex-direction:column;

    justify-content:flex-end;
}

/* REMOVE CATEGORY */

.product-category{
    display:none !important;
}

/* TITLE */

.product-content h3{

    font-size:11px;

    line-height:1.22;

    font-weight:600;

    color:#111827;

    margin:0;

    display:-webkit-box;

    -webkit-line-clamp:2;

    -webkit-box-orient:vertical;

    overflow:hidden;

    min-height:28px;

    letter-spacing:-0.1px;
}

/* REMOVE DESCRIPTION */

.product-content p{
    display:none !important;
}

/* BUTTON */

.buy-btn{

    width:calc(100% - 10px);

    margin:
    5px auto
    7px;

    height:31px;

    border-radius:7px !important;

    font-size:11px;

    font-weight:700;

    display:flex;

    align-items:center;

    justify-content:center;

    text-align:center;
}

    /* ---------- FOOTER ---------- */

    .site-footer{
        padding:40px 18px 25px;
        overflow:hidden;
    }

    .footer-top{
        display:flex !important;
        flex-direction:column !important;
        align-items:center !important;
        justify-content:center;
        text-align:center;
        width:100%;
        gap:28px;
        margin-bottom:28px;
    }

    .footer-brand,
    .footer-links{
        width:100%;
        max-width:100%;
        text-align:center;
    }

    .footer-brand p{
        margin:0 auto;
        max-width:100%;
    }

    .footer-links{
        display:flex;
        flex-direction:column;
        align-items:center !important;
    }

    .footer-links h4{
        margin-bottom:14px;
    }

    .footer-links a{
        width:100%;
        text-align:center;
        margin-bottom:10px;
    }

    .affiliate-disclaimer{
        text-align:center;
        font-size:14px;
        line-height:1.7;
    }

    .footer-bottom{
        text-align:center;
        font-size:13px;
    }
}

/* ==========================
   SMALL MOBILE
========================== */

@media(max-width:600px){

    .product-card{
        border-radius:22px;
    }

    .product-image-wrap{
        height:110px !important;
    }
}
