/* ==========================================================
   SINGLE PRODUCT PAGE
========================================================== */

.single-product-page{
    padding:120px 0 80px;
    background:#FAF8F5;
}

/* Breadcrumb */

.breadcrumb-section{
    margin-top: 100px;
    padding: 20px 0;
    background: rgba(24, 112, 199, .03);
    border-bottom: 1px solid rgba(24, 112, 199, .08);
}
.single-product-section {
padding: 70px 0  ;
}
.single-product-page .woocommerce-breadcrumb{
    margin-bottom:35px;
    font-size:.95rem;
    color:var(--text-muted);
    font-weight:500;
}

.single-product-page .woocommerce-breadcrumb a{
    color:var(--primary-blue);
    text-decoration:none;
}

.single-product-page .woocommerce-breadcrumb a:hover{
    color:var(--accent-rose);
}

/* Layout */

.single-product-wrapper{
    display:flex;
    gap:60px;
    align-items:flex-start;
}

.product-gallery{
    flex:0 0 48%;
}

.product-info-panel{
    flex:0 0 52%;
}

/* Gallery Card */

.woocommerce-product-gallery{
    background:#fff;
    border-radius:24px;
    padding:25px;
    box-shadow:var(--shadow-lg);
    position:relative;
}

.woocommerce-product-gallery img{
    width:100%;
    border-radius:18px;
}

.flex-viewport{
    overflow:hidden;
    border-radius:18px;
}

/* Main Image */

.woocommerce-product-gallery__wrapper{

    border-radius:18px;

}

.woocommerce-product-gallery__image{

    overflow:hidden;

}

.woocommerce-product-gallery__image img{

    width:100%;
    height:550px;
    object-fit:contain;
    transition:.35s;

}

.woocommerce-product-gallery__image:hover img{

    transform:scale(1.03);

}

/* Thumbnails */

.flex-control-thumbs{

    display:flex;
    gap:14px;
    margin-top:20px;
    padding:0;
    list-style:none;

}

.flex-control-thumbs li{

    width:85px;
    height:110px;
    border-radius:14px;
    overflow:hidden;
    cursor:pointer;
    border:2px solid transparent;
    transition:.3s;
    background:#fff;

}

.flex-control-thumbs li:hover{

    border-color:var(--primary-blue);

}

.flex-control-thumbs li img{

    width:100%;
    height:100%;
    object-fit:cover;
    opacity:.75;
    transition:.3s;

}

.flex-control-thumbs .flex-active,
.flex-control-thumbs li:hover img{

    opacity:1;

}

/* Zoom Button */

.woocommerce-product-gallery__trigger{

    width:48px;
    height:48px;
    background:#fff;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 10px 30px rgba(0,0,0,.15);
    color:var(--primary-blue);
    top:20px;
    right:20px;
    transition:.3s;

}

.woocommerce-product-gallery__trigger:hover{

    background:var(--primary-blue);
    color:#fff;

}

/* Sale Badge */

.onsale{

    position:absolute;
    left:20px;
    top:20px;
    margin:0 !important;
    background:linear-gradient(135deg,var(--accent-rose),#ff5670);
    color:#fff;
    border:none;
    border-radius:40px;
    padding:8px 18px;
    font-size:.8rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.8px;
    box-shadow:0 12px 30px rgba(209,0,31,.25);
    z-index:20;

}

/* Image Hover */

.woocommerce-product-gallery img{

    transition:.4s;

}

.woocommerce-product-gallery img:hover{

    transform:scale(1.02);

}
/*==========================================================
   PRODUCT INFORMATION
==========================================================*/

.product-info-panel{
    padding:15px 0;
}

.product_meta{
    margin-bottom:20px;
}

.product_meta .posted_in,
.product-category{
    display:inline-flex;
    align-items:center;
    padding:8px 18px;
    background:var(--accent-pink);
    color:var(--accent-rose);
    border-radius:40px;
    font-size:.85rem;
    font-weight:700;
    text-transform:uppercase;
    letter-spacing:.8px;
    margin-bottom:20px;
}

.product_meta a,
.product-category a{
    color:var(--accent-rose);
    text-decoration:none;
}

.product_meta a:hover,
.product-category a:hover{
    color:var(--primary-blue);
}

/* Product Title */

.product-info-panel h1.product_title,
.single-product-section .product_title{
    font-family:var(--font-headings);
    font-size:3rem;
    font-weight:700;
    line-height:1.25;
    margin-bottom:25px;
    color:var(--heading-color);
    background:none;
    -webkit-text-fill-color:initial;
}

/* Price Card */

.product-info-panel .price,
.summary .price{

    display:flex;
    align-items:center;
    gap:15px;

    background:#fff;
    padding:20px 25px;
    border-radius:18px;

    box-shadow:var(--shadow-md);

    margin:25px 0;

}

.product-info-panel .price ins,
.summary .price ins{

    text-decoration:none;
    color:var(--accent-rose);
    font-size:2rem;
    font-weight:700;

}

.product-info-panel .price bdi,
.summary .price bdi{

    color:var(--accent-rose);

}

.product-info-panel .price del,
.summary .price del{

    color:#999;
    font-size:1.15rem;

}

/* Short Description */

.woocommerce-product-details__short-description{

    margin:30px 0;

}

.woocommerce-product-details__short-description p{

    font-size:1.05rem;
    line-height:1.9;
    color:var(--paragraph-color);
    margin-bottom:18px;

}

/* Quantity */

.product-cart .cart{
    display:flex;
    align-items:center;
    gap:18px;
    flex-wrap:wrap;
}

.quantity{

    margin:0 !important;

}

.qty{

    width:90px;
    height:56px;

    border:2px solid #e6e6e6;
    border-radius:14px;

    text-align:center;
    font-size:1.1rem;
    font-weight:700;

    transition:.3s;
    background:#fff;

}

.quantity .qty:focus{

    border-color:var(--primary-blue);
    outline:none;
    box-shadow:none;

}

/* Add To Cart */

.single_add_to_cart_button{

    background:var(--accent-purple) !important;
    color:#fff !important;

    border:none !important;

    border-radius:50px !important;

    padding:16px 40px !important;

    font-size:1rem;
    font-weight:700;
    letter-spacing:.5px;

    transition:.35s;

    box-shadow:0 15px 35px rgba(24,112,199,.18);

}

.single_add_to_cart_button:hover{

    background:var(--primary-blue) !important;

    transform:translateY(-3px);

    box-shadow:0 20px 45px rgba(24,112,199,.25);

}

/* Buy Now Button */

.buy-now-btn{

    display:inline-flex;
    justify-content:center;
    align-items:center;

    padding:16px 40px;

    border-radius:50px;

    background:var(--accent-rose);

    color:#fff;

    font-weight:700;

    transition:.35s;

    margin-left:15px;

    text-decoration:none;

    box-shadow:0 15px 35px rgba(209,0,31,.18);

}

.buy-now-btn:hover{

    background:#b1001b;

    color:#fff;

    transform:translateY(-3px);

}

/* Stock */

.stock{

    margin-top:20px;

    font-weight:600;

    color:#198754;

}

/* SKU & Meta */

.product_meta{

    margin-top:35px;

    padding-top:25px;

    border-top:1px solid #eee;

    font-size:.95rem;

    color:#777;

}

.product_meta span{

    display:block;

    margin-bottom:10px;

}

.product_meta a{

    color:var(--primary-blue);

    font-weight:600;

}
/*==========================================================
    RELATED BOOKS
==========================================================*/

/*==========================================
RELATED BOOKS
==========================================*/

.related-books-section{

padding:80px 0;

}

.related-books-grid{

display:grid;

grid-template-columns:repeat(auto-fit,minmax(280px,320px));

justify-content:center;

gap:35px;

}

.related-book-card{

background:#fff;

padding:25px;

border-radius:22px;

box-shadow:var(--shadow-md);

transition:.35s;

text-align:center;

display:flex;

flex-direction:column;

height:100%;

}

.related-book-card:hover{

transform:translateY(-8px);

box-shadow:var(--shadow-premium);

}

.related-book-image{

display:block;

margin-bottom:20px;

}

.related-book-image img{

width:100%;

height:320px;

object-fit:contain;

transition:.35s;

}

.related-book-card:hover img{

transform:scale(1.04);

}

.related-book-category{

display:inline-block;

padding:6px 15px;

border-radius:40px;

background:var(--accent-pink);

color:var(--accent-rose);

font-size:.8rem;

font-weight:700;

margin-bottom:15px;

}

.related-book-title{

font-size:1.5rem;

line-height:1.35;

margin-bottom:15px;

min-height:70px;

}

.related-book-title a{

color:var(--heading-color);

text-decoration:none;

}

.related-book-title a:hover{

color:var(--primary-blue);

}

.related-book-price{

font-size:1.4rem;

font-weight:700;

margin-top:auto;

color:var(--accent-rose);

}

.related-book-price del{

font-size:1rem;

color:#888;

margin-right:8px;

}

.related-book-price ins{

text-decoration:none;

}

.related-book-card .btn{

margin-top:20px;

}

/*==========================================================
    COMBO OFFER
==========================================================*/

.combo-offer-section{

    margin-top:70px;
    margin-bottom:70px;

}


/*==========================================================
    PRODUCT TABS
==========================================================*/

.woocommerce-tabs{

    margin-top:80px;

}

.woocommerce-tabs ul.tabs{

    display:flex;
    gap:12px;

    border:none;

    padding:0;

    margin-bottom:30px;

}

.woocommerce-tabs ul.tabs li{

    border:none;
    background:#fff;
    border-radius:40px;
    padding:12px 28px;

    box-shadow:var(--shadow-sm);

}

.woocommerce-tabs ul.tabs li.active{

    background:var(--primary-blue);

}

.woocommerce-tabs ul.tabs li.active a{

    color:#fff;

}

.woocommerce-tabs ul.tabs li a{

    color:var(--deep-navy);
    font-weight:600;

}

.woocommerce-Tabs-panel{

    background:#fff;
    padding:35px;

    border-radius:20px;

    box-shadow:var(--shadow-md);

}

.woocommerce-Tabs-panel h2{

    font-size:2rem;
    margin-bottom:20px;

}

.woocommerce-Tabs-panel p{

    line-height:1.9;
    color:var(--paragraph-color);

}


/*==========================================================
    WOOCOMMERCE MESSAGES
==========================================================*/

.woocommerce-message,
.woocommerce-error,
.woocommerce-info{

    border:none;

    border-left:5px solid var(--primary-blue);

    border-radius:14px;

    background:#fff;

    box-shadow:var(--shadow-sm);

    padding:18px 22px;

}


/*==========================================================
    MOBILE
==========================================================*/

@media(max-width:991px){

.single-product-wrapper{

display:block;

}

.product-gallery{

margin-bottom:50px;

}

.product-info-panel h1.product_title{

font-size:2.2rem;

}

.woocommerce-product-gallery__image img{

height:430px;

}

.related.products ul.products{

grid-template-columns:1fr;

}

.cart{

flex-direction:column;

align-items:stretch;

}

.single_add_to_cart_button{

width:100%;

}

.buy-now-btn{

width:100%;

margin:15px 0 0;

}

}


@media(max-width:767px){

.single-product-page{

padding:100px 0 50px;

}

.woocommerce-product-gallery{

padding:15px;

}

.woocommerce-product-gallery__image img{

height:320px;

}

.flex-control-thumbs{

justify-content:center;

gap:8px;

}

.flex-control-thumbs li{

width:60px;

height:80px;

}

.product-info-panel h1.product_title{

font-size:1.8rem;

}

.summary .price{

padding:18px;

flex-direction:column;

align-items:flex-start;

}

.summary .price ins{

font-size:1.6rem;

}

.quantity .qty{

width:100%;

}

.related.products{

margin-top:60px;

}

.related.products h2{

font-size:2rem;

}

}


/*==========================================================
    SMALL POLISH
==========================================================*/

.product-gallery img,
.related-books img{
    max-width:100%;
    height:auto;
}

.single-product input,
.single-product button{

outline:none;

}

.single-product button:focus{

box-shadow:none;

}

.single-product a{

transition:.3s;

}

.single-product .reset_variations{

display:none;

}

.single-product-section .product_title{

margin-bottom:0;

}
