/*==========================================
        PRODUCT DETAILS PAGE
==========================================*/

.product-section{
    padding:70px 0;
    background:#f8faf8;
}

/*==========================================
        GALLERY
==========================================*/

.product-gallery{
    background:#fff;
    border-radius:25px;
    padding:25px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.main-image{
    width:100%;
    height:520px;
    object-fit:cover;
    border-radius:20px;
    transition:.4s;
    cursor:zoom-in;
}

.main-image:hover{
    transform:scale(1.03);
}

.thumbnail-list{
    display:flex;
    gap:12px;
    margin-top:18px;
    flex-wrap:wrap;
}

.thumbnail-list img{
    width:90px;
    height:90px;
    object-fit:cover;
    border-radius:15px;
    border:2px solid transparent;
    cursor:pointer;
    transition:.3s;
}

.thumbnail-list img:hover,
.thumbnail-list img.active{
    border-color:#2E7D32;
    transform:translateY(-3px);
}

/*==========================================
        PRODUCT INFO
==========================================*/

.product-info{
    background:#fff;
    border-radius:25px;
    padding:35px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
    position:sticky;
    top:100px;
}

.product-category{
    color:#2E7D32;
    font-weight:600;
    text-transform:uppercase;
    font-size:14px;
    letter-spacing:1px;
}

.product-title{
    font-size:36px;
    font-weight:700;
    margin:15px 0;
    color:#222;
}

.product-rating{
    display:flex;
    align-items:center;
    gap:10px;
    margin-bottom:20px;
    color:#FFB400;
    font-size:18px;
}

.product-rating span{
    color:#555;
    font-size:15px;
}

/*==========================================
        PRICE
==========================================*/

.price-box{
    display:flex;
    align-items:center;
    gap:15px;
    margin:25px 0;
}

.current-price{
    font-size:36px;
    font-weight:700;
    color:#2E7D32;
}

.old-price{
    font-size:22px;
    color:#888;
    text-decoration:line-through;
}

.discount-badge{
    background:#E53935;
    color:#fff;
    padding:8px 16px;
    border-radius:50px;
    font-size:14px;
    font-weight:600;
}

/*==========================================
        STOCK
==========================================*/

.stock-status{
    display:inline-block;
    padding:10px 18px;
    border-radius:30px;
    font-size:14px;
    font-weight:600;
}

.stock-in{
    background:#E8F5E9;
    color:#2E7D32;
}

.stock-out{
    background:#FDECEC;
    color:#D32F2F;
}

/*==========================================
        DESCRIPTION
==========================================*/

.short-description{
    margin:25px 0;
    color:#555;
    line-height:1.8;
}
/*==========================================
        QUANTITY SELECTOR
==========================================*/

.quantity-wrapper{
    display:flex;
    align-items:center;
    gap:15px;
    margin:30px 0;
}

.quantity-label{
    font-weight:600;
    color:#333;
}

.quantity-box{
    display:flex;
    align-items:center;
    border:1px solid #ddd;
    border-radius:14px;
    overflow:hidden;
    background:#fff;
}

.qty-btn{
    width:50px;
    height:50px;
    border:none;
    background:#F5F7F5;
    font-size:22px;
    font-weight:600;
    cursor:pointer;
    transition:.3s;
}

.qty-btn:hover{
    background:#2E7D32;
    color:#fff;
}

.qty-input{
    width:70px;
    height:50px;
    border:none;
    text-align:center;
    font-size:18px;
    font-weight:600;
    outline:none;
    background:#fff;
}

/*==========================================
        ACTION BUTTONS
==========================================*/

.product-actions{
    display:flex;
    flex-wrap:wrap;
    gap:15px;
    margin-top:30px;
}

.btn-cart,
.btn-buy,
.btn-wishlist{

    height:56px;
    border:none;
    border-radius:16px;
    font-weight:600;
    font-size:16px;
    transition:.3s;
}

.btn-cart{

    flex:1;

    background:#2E7D32;
    color:#fff;
}

.btn-cart:hover{

    background:#1B5E20;
    transform:translateY(-3px);
}

.btn-buy{

    flex:1;

    background:#FF9800;
    color:#fff;
}

.btn-buy:hover{

    background:#F57C00;
    transform:translateY(-3px);
}

.btn-wishlist{

    width:60px;
    background:#fff;
    border:1px solid #ddd;
    color:#E53935;
}

.btn-wishlist:hover{

    background:#E53935;
    color:#fff;
}

/*==========================================
        DELIVERY CHECK
==========================================*/

.delivery-card{

    margin-top:35px;
    padding:25px;
    border-radius:20px;
    background:#F8FAF8;
    border:1px solid #E5E5E5;
}

.delivery-card h5{

    margin-bottom:18px;
    font-weight:700;
}

.delivery-form{

    display:flex;
    gap:10px;
}

.delivery-form input{

    flex:1;
    height:50px;
    border-radius:12px;
}

.delivery-form button{

    padding:0 24px;
    border:none;
    border-radius:12px;
    background:#2E7D32;
    color:#fff;
    font-weight:600;
}

.delivery-message{

    margin-top:15px;
    color:#2E7D32;
    font-weight:600;
}

/*==========================================
        PRODUCT FEATURES
==========================================*/

.product-features{

    margin-top:35px;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:15px;
}

.feature-box{

    display:flex;
    align-items:center;
    gap:12px;
    padding:18px;
    background:#fff;
    border:1px solid #eee;
    border-radius:16px;
    transition:.3s;
}

.feature-box:hover{

    border-color:#2E7D32;
    transform:translateY(-3px);
}

.feature-box i{

    font-size:24px;
    color:#2E7D32;
}

/*==========================================
        RESPONSIVE
==========================================*/

@media(max-width:991px){

.product-info{

position:static;
margin-top:30px;

}

.main-image{

height:420px;

}

.product-title{

font-size:30px;

}

}

@media(max-width:768px){

.product-actions{

flex-direction:column;

}

.btn-cart,
.btn-buy{

width:100%;

}

.btn-wishlist{

width:100%;
height:56px;

}

.delivery-form{

flex-direction:column;

}

.product-features{

grid-template-columns:1fr;

}

.main-image{

height:320px;

}

.thumbnail-list img{

width:70px;
height:70px;

}

.product-title{

font-size:26px;

}

.current-price{

font-size:30px;

}

.old-price{

font-size:18px;

}

}

@media(max-width:576px){

.product-gallery,
.product-info{

padding:20px;
border-radius:18px;

}

.main-image{

height:260px;

}

.quantity-wrapper{

flex-direction:column;
align-items:flex-start;

}

.price-box{

flex-wrap:wrap;

}

}

/*==========================================
        ANIMATION
==========================================*/

.product-gallery,
.product-info{

animation:productFade .6s ease;

}

@keyframes productFade{

from{

opacity:0;
transform:translateY(25px);

}

to{

opacity:1;
transform:translateY(0);

}

}