/* =========================================
   TABLET
========================================= */

@media(max-width:1200px){

    .related-products-grid{
        grid-template-columns:
        repeat(2,1fr);
    }

    .main-product-img,
    .main-product-video{
        height:430px;
    }

}

/* =========================================
   MOBILE LAYOUT
========================================= */

@media(max-width:992px){

    .product-top{
        flex-direction:column;
        gap:20px;
        display:block;
    }

    .product-gallery{
        position:relative !important;
        top:auto !important;
        width:100%;
    }

    .product-info{
        width:100%;
        position:relative;
        top:auto;
    }

    .product-info-inner{
        border-radius:24px;
    }

    .main-product-img,
    .main-product-video{
        height:460px;
    }

    .product-buy-box{

        position:relative !important;

        top:auto !important;

        width:100%;
    }

    .product-gallery,
    .product-buy-box{

        position:relative !important;

        top:auto !important;
    }

    .product-info{

        margin-top:20px;
    }

    .product-buy-box{

        margin-top:20px;

        border-radius:24px;
    }

}

/* =========================================
   MOBILE
========================================= */

@media(max-width:768px){

    .product-page{
        padding:0 16px;
        margin:20px auto 50px;
    }

    .product-title{
        font-size:24px;
        line-height:1.4;
    }

    .product-category{
        font-size:10px;
    }

    .product-actions{
        flex-direction:column;
        gap:12px;
    }

    .btn-cart-main,
    .btn-buy-main{
        width:100%;
        height:52px;
    }

    .highlight-grid{
        grid-template-columns:1fr;
    }

    .related-products-grid{

        display:flex;

        overflow-x:auto;

        gap:14px;

        padding-bottom:10px;

        scroll-snap-type:x mandatory;

        -webkit-overflow-scrolling:touch;
    }

    .related-products-grid::-webkit-scrollbar{

        display:none;
    }

    .related-card{

        flex:0 0 240px;

        min-width:240px;

        scroll-snap-align:start;
    }

    .product-description-section{
        padding:26px;
    }

    .care-section{
        padding:24px;
    }

    .details-grid{
        grid-template-columns:1fr;
    }

    .main-product-img,
    .main-product-video{
        height:340px;
    }

}

/* =========================================
   SMALL MOBILE
========================================= */

@media(max-width:520px){

    .product-page{
        padding:0 12px;
    }

    .main-image-box{
        border-radius:20px;
    }

    .main-product-img,
    .main-product-video{
        height:450px;
    }

    .thumbnail-row{
        gap:8px;
        margin-top:12px;
    }

    .thumb,
    .video-thumb{
        width:58px;
        min-width:58px;
        height:58px;
    }

    .product-info-inner{
        padding:20px;
        border-radius:20px;
    }

    .product-title{
        font-size:22px;
    }

    .sale-price,
    .normal-price{
        font-size:28px;
    }

    .original-price{
        font-size:16px;
    }

    .discount-text{
        font-size:11px;
        padding:5px 10px;
    }

    .qty-wrapper input{
        width:100%;
        height:48px;
        text-align:center;
    }

    .product-description-section{
        padding:20px;
        border-radius:20px;
    }

    .care-section{
        padding:20px;
        border-radius:20px;
    }

    .product-description-section h2,
    .product-details-section h2,
    .care-section h2,
    .related-products-section h2{
        font-size:24px;
    }

    .luxury-description{
        font-size:15px;
        line-height:1.8;
    }

}

/* =========================================
   VERY SMALL DEVICES
========================================= */

@media(max-width:380px){

    .product-title{
        font-size:20px;
    }

    .sale-price,
    .normal-price{
        font-size:26px;
    }

    .main-product-img,
    .main-product-video{
        height:260px;
    }

    .product-info-inner{
        padding:18px;
    }

}


/* =========================================
   MOBILE STICKY CTA
========================================= */

.mobile-sticky-cart{
    display:none;
}

@media(max-width:768px){

    .mobile-sticky-cart{

        position:fixed;

        left:0;
        right:0;
        bottom:0;

        display:flex;
        align-items:center;
        gap:8px;

        padding:8px 10px;

        background:#fff;

        border-top:
        1px solid rgba(0,0,0,.08);

        z-index:999;

        box-shadow:
        0 -4px 20px rgba(0,0,0,.08);
    }

    .sticky-price{

        font-size:18px;

        font-weight:700;

        color:#7B4F2C;

        min-width:80px;

        text-align:center;

        padding:0 6px;
    }

    .sticky-cart-btn,
    .sticky-buy-btn{

        flex:1;

        height:42px;

        border:none;

        border-radius:12px;

        font-weight:600;

        font-size:14px;
    }

    .sticky-cart-btn{

        background:#9b6838;

        color:#fff;
    }

    .sticky-buy-btn{

        background:#111;

        color:#fff;
    }

    .product-page{

        padding-bottom:90px;
    }

    .product-actions{

        display:none;
    }
}

@media(max-width:768px){

    .highlight-grid{

        grid-template-columns:
        repeat(2,1fr);

        gap:10px;
    }

    .highlight-item{

        min-height:60px;

        font-size:13px;
    }

}

@media(max-width:768px){

    .related-card img{

        height:180px;
    }

}

/* =========================================
   COMPACT PRODUCT DETAILS
========================================= */

@media(max-width:768px){

    .details-grid{

        display:flex;
        flex-direction:column;
        gap:10px;
    }

    .detail-card{

        display:flex;

        justify-content:space-between;

        align-items:center;

        gap:12px;

        padding:14px 16px;

        min-height:auto;

        border-radius:14px;
    }

    .detail-card strong{

        margin:0;

        font-size:13px;

        font-weight:600;

        color:#7B4F2C;

        flex-shrink:0;
    }

    .detail-card span{

        font-size:13px;

        color:#666;

        text-align:right;
    }

}

/* =========================================
   MOBILE ACCORDION
========================================= */

.mobile-only{
    display:none;
}

@media(max-width:768px){

    .desktop-heading{
        display:none;
    }

    .mobile-only{

        width:100%;

        display:flex;

        justify-content:space-between;

        align-items:center;

        border:none;

        background:#fff;

        padding:18px 20px;

        border-radius:16px;

        font-size:20px;

        font-weight:700;

        color:#7B4F2C;

        cursor:pointer;

        margin-bottom:10px;

        box-shadow:
        0 4px 12px rgba(0,0,0,.04);
    }

    .mobile-only span{

        font-size:24px;

        line-height:1;
    }

    .accordion-content{

        display:none;
    }

    .accordion-content.open{

        display:block;
    }

}