/* ==========================================================================
   BANIYA OASIS ELECTRONICS
   WOOCOMMERCE CUSTOM CSS
   PART 1
   Product Grid
   Shop
   Single Product
==========================================================================*/


/* ===========================
PRODUCT GRID
=========================== */

.woocommerce ul.products{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(280px,1fr));
    gap:30px;
    margin:40px 0;
    padding:0;
    list-style:none;
    align-items:stretch;
}

.woocommerce ul.products li.product{

/*     width:100% !important; */
    margin:0 !important;

    display:flex;
    flex-direction:column;

    background:#fff;

    border-radius:18px;

    overflow:hidden;

    border:1px solid #eee;

    box-shadow:0 10px 25px rgba(0,0,0,.06);

}

.woocommerce ul.products li.product img{

    width:100% !important;
    height:-webkit-fill-available !important;

    object-fit:contain;

    padding:20px;

}

.woocommerce ul.products li.product .button{

    margin-top:auto;

}

@media(max-width:1200px){

.woocommerce ul.products{

grid-template-columns:repeat(3,1fr);

}

}

@media(max-width:900px){

.woocommerce ul.products{

grid-template-columns:repeat(2,1fr);

}

}

@media(max-width:600px){

.woocommerce ul.products{

grid-template-columns:1fr;

}

}



/*==================================================
=            PRODUCT CARD
==================================================*/

ul.products li.product{

background:#fff;
border:1px solid #edf0f5;
border-radius:18px;
overflow:hidden;
transition:.35s;
position:relative;

}

ul.products li.product:hover{

transform:translateY(-6px);
box-shadow:0 18px 45px rgba(0,0,0,.10);

}

ul.products li.product a img{

width:100%;
height:270px;
object-fit:contain;
padding:20px;
background:#fff;
transition:.35s;

}

ul.products li.product:hover img{

transform:scale(1.05);

}

ul.products li.product h2{

font-size:16px;
font-weight:600;
line-height:1.5;
padding:0 18px;
margin:8px 0 10px;

display:-webkit-box;
-webkit-line-clamp:2;
-webkit-box-orient:vertical;
overflow:hidden;

}

ul.products li.product .price{

padding:0 18px;
margin-bottom:15px;

font-size:24px;
font-weight:700;
color:var(--bo-accent);

}

ul.products li.product .price del{

color:#999;
font-size:15px;
font-weight:400;

}

ul.products li.product .price ins{

text-decoration:none;

}

ul.products li.product .button{

margin:0 18px 20px;

width:calc(100% - 36px);

height:48px;

border-radius:10px;

background:var(--bo-accent);

color:#fff;

font-weight:600;

font-size:15px;

display:flex;

align-items:center;

justify-content:center;

border:none;

transition:.3s;

}

ul.products li.product .button:hover{

background:var(--bo-accent-dark);

}



/*==================================================
=            PRIORITY 1: BO-CARD LAYOUT SYSTEM
            (matches the bo-card / bo-card__media /
            bo-card__body / bo-card__foot / bo-card__actions
            markup output by woocommerce/content-product.php —
            this was previously unstyled, which is why cards
            were uneven height with misaligned images, titles,
            prices, buttons and wishlist icons.)
==================================================*/

ul.products{
    align-items:stretch;
}

ul.products li.product.bo-card{
    display:flex;
    flex-direction:column;
    height:100%;
    padding:0;
}

.bo-card__media{
    position:relative;
    display:block;
    width:100%;
    height:270px;
    overflow:hidden;
    background:#fff;
    flex-shrink:0;
}

.bo-card__media > a{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
}

.bo-card__media img{
    width:100%;
    height:100%;
    object-fit:contain;
    padding:20px;
    margin:0;
    background:#fff;
    transition:transform .35s ease;
}

ul.products li.product.bo-card:hover .bo-card__media img{
    transform:scale(1.05);
}

.bo-card__cat{
    display:block;
    padding:14px 18px 0;
    font-size:11px;
    font-weight:700;
    letter-spacing:.05em;
    text-transform:uppercase;
    color:var(--bo-accent-dark);
}

.bo-card__body{
    display:flex;
    flex-direction:column;
    flex:1 1 auto;
}

.bo-card__body h2,
.bo-card__body .woocommerce-loop-product__title{
    min-height:48px;
}

.bo-card__body .price{
    min-height:32px;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:6px;
}

.bo-card__foot{
    margin-top:auto;
    padding-top:8px;
}

/* Wishlist / quick view action icons — fixed position, identical size,
   so they line up the same way on every card regardless of image content. */
.bo-card__actions{
    position:absolute;
    top:14px;
    right:14px;
    display:flex;
    flex-direction:column;
    gap:8px;
    z-index:5;
    opacity:0;
    transform:translateX(6px);
    transition:opacity .25s ease, transform .25s ease;
}

ul.products li.product.bo-card:hover .bo-card__actions,
ul.products li.product.bo-card:focus-within .bo-card__actions{
    opacity:1;
    transform:translateX(0);
}

.bo-card__icon-btn{
    width:38px;
    height:38px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    background:#fff;
    border:1px solid #edf0f5;
    box-shadow:0 4px 14px rgba(0,0,0,.08);
    font-size:16px;
    line-height:1;
    color:#444;
    cursor:pointer;
    transition:.25s;
    padding:0;
}

.bo-card__icon-btn:hover{
    background:var(--bo-accent);
    color:#fff;
    border-color:var(--bo-accent);
}

/* If a wishlist plugin (YITH, TI Wishlist, etc.) renders its own button
   inside .bo-card__actions, make it match our icon size/position instead
   of fighting its own CSS — keeps a single consistent look either way. */
.bo-card__actions .yith-wcwl-add-to-wishlist,
.bo-card__actions a.add_to_wishlist,
.bo-card__actions .tinvwl_add_to_wishlist_button,
.bo-card__actions .tinvwl-btn-wrapper{
    width:38px!important;
    height:38px!important;
    display:flex!important;
    align-items:center;
    justify-content:center;
    border-radius:50%!important;
    background:#fff!important;
    border:1px solid #edf0f5!important;
    box-shadow:0 4px 14px rgba(0,0,0,.08);
    overflow:hidden;
}


/*==================================================
=            SHOP TOOLBAR
==================================================*/

.woocommerce-result-count{

font-size:15px;

color:#666;

}

.woocommerce-ordering select{

height:46px;

padding:0 18px;

border:1px solid #ddd;

border-radius:10px;

background:#fff;

}



/*==================================================
=            SINGLE PRODUCT (PDP)
==================================================*/

:root{
    --bo-woo-blue:#3c6298;
    --bo-woo-blue-dark:#2d4a75;
    --bo-woo-gold:#c9971a;
    --bo-woo-gold-dark:#a67a12;
}

.single-product .site-main{
    max-width:1500px;
    margin:auto;
    padding:clamp(20px,4vw,48px);
}

.single-product div.product.bo-pdp{
    display:block;
    width:100%;
}

.bo-pdp__hero{
    display:grid;
    grid-template-columns:48% 52%;
    gap:clamp(28px,4vw,56px);
    align-items:stretch;
	justify-content:center;
}

.bo-pdp__gallery{
   padding: 20%;
}

.bo-pdp__gallery .woocommerce-product-gallery{
    width:100%!important;
    margin:0;
    padding:0;
    float:none!important;
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    min-height:480px;
}

.bo-pdp__gallery .woocommerce-product-gallery__wrapper{
    flex:1 1 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    border-radius:var(--bo-radius,16px);
    padding:clamp(16px,3vw,28px);
    border:1px solid var(--bo-border,#e4e6ea);
}

.bo-pdp__summary.summary{
    width:100%;
    padding:0;
    float:none!important;
}

.bo-pdp__below{
    width:100%;
    margin-top:clamp(48px,6vw,80px);
    clear:both;
}


.single-product div.product .woocommerce-product-gallery,
.single-product div.product .summary,
.bo-pdp__gallery .images{
    float:none!important;
    width:100%!important;
    margin:0!important;
}

.woocommerce-page.single-product .woocommerce-product-gallery{
    opacity:1!important;
}





/*==================================================
=            PRODUCT SUMMARY
==================================================*/



.single-product .product_title{

font-size:44px;

font-weight:700;

line-height:1.2;

margin-bottom:18px;

color:#111;

}

.single-product .woocommerce-product-rating{

margin-bottom:20px;

}

.single-product .price{

font-size:clamp(28px,3.5vw,42px);

font-weight:700;

color:var(--bo-woo-blue);

margin-bottom:12px;

}

.bo-stock{
    display:inline-flex;
    align-items:center;
    gap:8px;
    font-size:14px;
    font-weight:600;
    margin:0 0 18px;
    padding:8px 14px;
    border-radius:999px;
}

.bo-stock--in{
    color:#1f7a45;
    background:#eaf8ef;
}

.bo-stock--out{
    color:#c42c38;
    background:#ffeaea;
}

.single-product .price del{

font-size:22px;

color:#888;

font-weight:400;

margin-right:10px;

}

.single-product .price ins{

text-decoration:none;

}



/*==================================================
=            SHORT DESCRIPTION
==================================================*/

.single-product .woocommerce-product-details__short-description{

font-size:17px;

line-height:1.9;

color:#666;

padding:22px 0;

margin:25px 0;

border-top:1px solid #ececec;

border-bottom:1px solid #ececec;

}



/*==================================================
=            QUANTITY
==================================================*/

.single-product form.cart{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:14px;
    margin-top:28px;
    margin-bottom:22px;
    width:100%;
}

.single-product form.cart .quantity{
    width:100%;
    max-width:180px;
}

.single-product form.cart .bo-quantity{
    display:flex;
    align-items:stretch;
    width:100%;
    max-width:180px;
}

.bo-qty-btn{
    width:48px;
    flex-shrink:0;
    border:none;
    background:var(--bo-surface,#f6f7f9);
    color:var(--bo-text,#14161a);
    font-size:20px;
    line-height:1;
    cursor:pointer;
    transition:background .25s;
}

.bo-qty-btn:hover{
    background:var(--bo-surface-2,#eef0f3);
}

.quantity{

overflow:hidden;

border:1px solid #ddd;

border-radius:10px;

}

.quantity input.qty{

width:80px;

height:54px;

border:none;

font-size:18px;

text-align:center;

}



/*==================================================
=            BUTTONS
==================================================*/

.single-product .single_add_to_cart_button{
    width:100%!important;
    height:50px!important;
    min-height:48px;
    padding:0 24px!important;
    border:none!important;
    border-radius:12px!important;
    background:var(--bo-woo-blue)!important;
    color:#fff!important;
    font-size:16px!important;
    font-weight:700!important;
    display:flex!important;
    align-items:center;
    justify-content:center;
    transition:background .3s,transform .3s;
    margin:0!important;
}

.single-product .single_add_to_cart_button:hover{
    background:var(--bo-woo-blue-dark)!important;
    transform:translateY(-1px);
}

.single-product .bo-buy-now,
.single-product button.bo-buy-now.bo-btn--primary{
    width:100%!important;
    height:50px!important;
    min-height:48px;
    padding:0 24px!important;
    border:none!important;
    border-radius:12px!important;
    background:var(--bo-woo-gold)!important;
    color:#0a0a0a!important;
    font-size:16px!important;
    font-weight:700!important;
    display:flex!important;
    align-items:center;
    justify-content:center;
    transition:background .3s,transform .3s;
    cursor:pointer;
}

.single-product .bo-buy-now:hover,
.single-product button.bo-buy-now.bo-btn--primary:hover{
    background:var(--bo-woo-gold-dark)!important;
    color:#fff!important;
    transform:translateY(-1px);
}

.bo-single-extras{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:16px 24px;
    margin:8px 0 24px;
    width:100%;
}

.bo-single-extras__btn,
.bo-single-extras .yith-wcwl-add-to-wishlist a,
.bo-single-extras .add_to_wishlist{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    gap:8px;
    min-height:48px;
    padding:0 22px!important;
    border:2px solid var(--bo-woo-blue)!important;
    border-radius:12px!important;
    background:transparent!important;
    color:var(--bo-woo-blue)!important;
    font-weight:600!important;
    font-size:15px!important;
    transition:.25s;
}

.bo-single-extras__btn:hover,
.bo-single-extras .yith-wcwl-add-to-wishlist a:hover{
    background:var(--bo-woo-blue)!important;
    color:#fff!important;
}

.bo-single-extras__share{
    display:inline-flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}

.bo-single-extras__share-label{
    font-size:14px;
    font-weight:600;
    color:var(--bo-text-muted,#666b74);
}

.bo-share-icon{
    width:42px;
    height:42px;
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    border:1px solid var(--bo-border,#e4e6ea);
    background:#fff;
    color:var(--bo-woo-blue);
    transition:.25s;
    padding:0!important;
    cursor:pointer;
    font-size:0!important;
}

.bo-share-icon:hover{
    background:var(--bo-woo-blue);
    color:#fff;
    border-color:var(--bo-woo-blue);
}

.bo-share-copy--done svg{
    stroke:#1f7a45;
}

.bo-trust-cards{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin:0 0 28px;
    width:100%;
}

.bo-trust-card{
    display:flex;
    gap:12px;
    align-items:flex-start;
    padding:16px;
    border:1px solid var(--bo-border,#e4e6ea);
    border-radius:14px;
    background:var(--bo-surface,#f6f7f9);
}

.bo-trust-card__icon{
    flex-shrink:0;
    color:var(--bo-woo-blue);
}

.bo-trust-card__body{
    display:flex;
    flex-direction:column;
    gap:4px;
    font-size:13px;
    line-height:1.45;
    color:var(--bo-text-muted,#666b74);
}

.bo-trust-card__body strong{
    font-size:14px;
    color:var(--bo-text,#14161a);
}

.bo-product-brand{
    margin-top:12px;
    font-size:15px;
}

.bo-product-brand__label{
    font-weight:600;
    color:var(--bo-text-muted,#666b74);
}

.bo-product-brand__value{
    font-weight:700;
    color:var(--bo-text,#14161a);
}



/*==================================================
=            PRODUCT META
==================================================*/

.product_meta{

margin-top:35px;

padding-top:20px;

border-top:1px solid #ececec;

font-size:15px;

color:#666;

}

.product_meta span{

display:block;

margin-bottom:8px;

}
/*==========================================================================
    PART 2
    PRODUCT GALLERY
    PRODUCT TABS
    RELATED PRODUCTS
==========================================================================*/


/*==================================================
=            GALLERY THUMBNAILS
==================================================*/

.woocommerce div.product div.images .flex-control-thumbs{

display:flex;
justify-content:flex-start;
align-items:center;
gap:12px;

margin-top:20px;

flex-wrap:nowrap;
overflow-x:auto;
-webkit-overflow-scrolling:touch;
scrollbar-width:thin;

padding:4px 0 8px;

list-style:none;

}

.woocommerce div.product div.images .flex-control-thumbs li{

width:88px!important;
height:88px!important;

flex:0 0 88px;

margin:0!important;

}

.woocommerce div.product div.images .flex-control-thumbs img{

width:95px;
height:95px;

object-fit:contain;

background:#fff;

padding:8px;

border:2px solid #ececec;

border-radius:16px;

cursor:pointer;

transition:.30s;

}

.woocommerce div.product div.images .flex-control-thumbs img:hover{

border-color:var(--bo-accent);

transform:scale(1.06);

}

.woocommerce div.product div.images .flex-control-thumbs img.flex-active{

border-color:var(--bo-accent);

box-shadow:0 0 0 4px rgba(142,164,195,.18);

}


/*==================================================
=            MAIN PRODUCT IMAGE
==================================================*/

.woocommerce-product-gallery__image{
display:flex;
justify-content:center;
align-items:center;
min-height:320px;
width:100%;
}

.woocommerce-product-gallery .flex-viewport{
    border-radius:12px;
/*     background:#fff; */
}

.woocommerce-product-gallery img{
    width:100%;
    max-height:min(520px,58vh);
    height:auto;
    object-fit:contain;
    margin:0 auto;
}


/*==================================================
=            SALE BADGE
==================================================*/

.onsale{

position:absolute;

left:20px;

top:20px;

background:#ff4b4b!important;

color:#fff!important;

font-size:14px;

font-weight:700;

padding:8px 14px;

border-radius:30px;

min-width:auto!important;

min-height:auto!important;

line-height:1.2;

z-index:10;

}


/*==================================================
=            PRODUCT TABS
==================================================*/

.woocommerce-tabs{
margin-top:0;
width:100%;
clear:both;
}

.woocommerce-tabs ul.tabs{
display:flex;
gap:0;
flex-wrap:nowrap;
padding:0;
margin:0 0 32px;
border:none;
border-bottom:2px solid var(--bo-border,#e4e6ea);
width:100%;
}

.woocommerce-tabs ul.tabs::before{
display:none;
}

.woocommerce-tabs ul.tabs li{
margin:0;
padding:0;
border:none;
background:none;
flex:1 1 0;
text-align:center;
}

.woocommerce-tabs ul.tabs li::before,
.woocommerce-tabs ul.tabs li::after{
display:none;
}

.woocommerce-tabs ul.tabs li a{
display:block;
padding:18px 16px;
background:transparent!important;
border-radius:0;
font-size:15px;
font-weight:600;
color:var(--bo-text-muted,#666b74);
transition:color .25s;
border-bottom:3px solid transparent;
margin-bottom:-2px;
box-shadow:none!important;
}

.woocommerce-tabs ul.tabs li.active a,
.woocommerce-tabs ul.tabs li a:hover{
background:transparent!important;
color:var(--bo-woo-blue)!important;
border-bottom-color:var(--bo-woo-blue);
}


/*==================================================
=            TAB CONTENT
==================================================*/

.woocommerce-Tabs-panel{
background:transparent;
border:none;
border-radius:0;
padding:0 0 48px;
box-shadow:none;
width:100%;
max-width:100%;
}

.woocommerce-Tabs-panel h2{
font-size:clamp(1.35rem,2.5vw,1.75rem);
margin:0 0 20px;
color:var(--bo-text,#14161a);
font-weight:800;
}

.woocommerce-Tabs-panel h3,
.woocommerce-Tabs-panel .woocommerce-product-details__short-description h3{
font-size:1.15rem;
margin:28px 0 14px;
font-weight:700;
color:var(--bo-text,#14161a);
}

.woocommerce-Tabs-panel p{
font-size:16px;
line-height:1.85;
color:var(--bo-text-muted,#666b74);
max-width:100%;
}

.woocommerce-Tabs-panel ul{
margin:0 0 24px;
padding-left:0;
list-style:none;
}

.woocommerce-Tabs-panel ul li{
position:relative;
padding-left:26px;
margin-bottom:10px;
font-size:16px;
line-height:1.7;
color:var(--bo-text-muted,#666b74);
}

.woocommerce-Tabs-panel ul li::before{
content:"";
position:absolute;
left:0;
top:.55em;
width:8px;
height:8px;
border-radius:50%;
background:var(--bo-woo-gold);
}

.woocommerce-Tabs-panel table{
width:100%;
border-collapse:collapse;
margin:20px 0 28px;
font-size:15px;
display:block;
overflow-x:auto;
-webkit-overflow-scrolling:touch;
}

.woocommerce-Tabs-panel table th{
background:var(--bo-surface,#f6f7f9);
padding:14px 16px;
font-weight:700;
border:1px solid var(--bo-border,#e4e6ea);
text-align:left;
white-space:nowrap;
}

.woocommerce-Tabs-panel table td{
padding:14px 16px;
border:1px solid var(--bo-border,#e4e6ea);
color:var(--bo-text-muted,#666b74);
}


/*==================================================
=            REVIEWS
==================================================*/

#reviews{

margin-top:15px;

}

.commentlist{

list-style:none;

padding:0;

margin:0;

}

.commentlist li{

background:#fff;

border:1px solid #ececec;

border-radius:16px;

padding:25px;

margin-bottom:20px;

}

.commentlist img.avatar{

border-radius:50%;

}

.comment-text{

margin-left:85px;

}

.comment-text p{

line-height:1.8;

}

.star-rating{

color:#ffc107;

}


/*==================================================
=            RELATED PRODUCTS
==================================================*/

.related.products,
.bo-related{
margin-top:56px;
width:100%;
clear:both;
padding-top:48px;
border-top:1px solid var(--bo-border,#e4e6ea);
}

.related.products>h2,
.bo-related>h2{
font-size:clamp(1.5rem,3vw,2rem);
margin-bottom:32px;
font-weight:800;
text-align:left;
}

.bo-related .bo-carousel{
display:block;
position:relative;
}

.bo-related .bo-carousel__nav{
display:none!important;
}

.bo-related .bo-carousel__track,
.related.products ul.products{
display:grid!important;
/* grid-template-columns:repeat(4,minmax(0,1fr))!important; */
/* gap:24px!important; */
margin:0!important;
padding:0!important;
list-style:none;
transform:none!important;
width:100%!important;
overflow:visible!important;
}

.bo-related .bo-carousel__track li.product,
.related.products ul.products li.product{
width:100%!important;
margin:0!important;
height:100%;
display:flex;
flex-direction:column;
}

.bo-related .bo-card__media,
.related.products .bo-card__media{
height:220px;
}

.bo-related .bo-card__media img,
.related.products li.product img{
height:100%;
object-fit:contain;
}

@media(max-width:1024px){
.bo-related .bo-carousel__track,
.related.products ul.products{
grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
}

@media(max-width:600px){
.bo-related .bo-carousel__track,
.related.products ul.products{
grid-template-columns:1fr!important;
}
}


/*==================================================
=            UPSELL PRODUCTS
==================================================*/

.up-sells{

margin-top:90px;

}

.up-sells>h2{

font-size:34px;

margin-bottom:35px;

}


/*==================================================
=            PRODUCT IMAGE HOVER
==================================================*/

ul.products li.product img{

transition:transform .4s ease;

}

ul.products li.product:hover img{

transform:scale(1.05);

}


/*==================================================
=            IMAGE ZOOM CURSOR
==================================================*/
/* 
.woocommerce-product-gallery img{

cursor:zoom-in;

}
 */

/*==================================================
=            MOBILE
==================================================*/

@media(max-width:768px){

.flex-viewport{

height:420px!important;

}

.flex-viewport img{

height:420px!important;

}

.woocommerce div.product div.images .flex-control-thumbs li{

width:70px!important;
height:70px!important;

}

.woocommerce div.product div.images .flex-control-thumbs img{

width:70px;
height:70px;

}

.woocommerce-Tabs-panel{

padding:25px;

}

.related.products>h2{

font-size:28px;

}

}
/*==========================================================================
    PART 3
    CART
    CHECKOUT
    MY ACCOUNT
    MINI CART
    COOKIE
    BREADCRUMB
    RESPONSIVE
==========================================================================*/


/*==================================================
=            CART
==================================================*/

.woocommerce-cart .bo-cart-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(300px,400px);
    gap:clamp(24px,4vw,48px);
    align-items:start;
    margin-top:8px;
}

.woocommerce-cart .bo-cart-form{
    grid-column:1;
    min-width:0;
}

.woocommerce-cart .bo-cart-collaterals{
    grid-column:2;
    position:sticky;
    top:calc(var(--bo-header-h,104px) + 16px);
}

.woocommerce-cart .cart-collaterals .cross-sells{
    grid-column:1 / -1;
    margin-bottom:32px;
}

@media(max-width:992px){
    .woocommerce-cart .bo-cart-layout{
        grid-template-columns:1fr;
    }
    .woocommerce-cart .bo-cart-collaterals{
        position:static;
    }
}

.woocommerce-cart table.shop_table{

width:100%;
border-collapse:collapse;
background:#fff;
border:1px solid #edf0f5;
border-radius:18px;
overflow:hidden;

}

.woocommerce-cart table.shop_table th{

background:#f7f9fc;
padding:18px;
font-size:14px;
font-weight:700;
text-transform:uppercase;

}

.woocommerce-cart table.shop_table td{

padding:20px;
border-top:1px solid #edf0f5;
vertical-align:middle;

}

.woocommerce-cart table.shop_table img{

width:90px;
border-radius:12px;

}

.woocommerce-cart .quantity input{

width:70px;
height:46px;
text-align:center;

}

.woocommerce a.remove{

width:32px;
height:32px;

display:flex;
align-items:center;
justify-content:center;

border-radius:50%;

background:#ffeded;

color:#ff4d4d!important;

font-size:18px;

}

.woocommerce a.remove:hover{

background:#ff4d4d;
color:#fff!important;

}


/*==================================================
=            CART TOTALS
==================================================*/

.cart_totals{

background:#fff;
border:1px solid var(--bo-border,#e4e6ea);
border-radius:18px;
padding:clamp(24px,4vw,36px);

box-shadow:0 12px 40px rgba(7,12,20,.08);

}

.cart_totals h2{

font-size:30px;
margin-bottom:25px;

}

.cart_totals table{

width:100%;

}

.cart_totals td,
.cart_totals th{

padding:16px 0;

border-bottom:1px solid #ececec;

}

.cart_totals .order-total{

font-size:22px;
font-weight:700;

}

.checkout-button{

width:100%;

height:52px;

background:var(--bo-woo-blue)!important;

color:#fff!important;

border-radius:12px!important;

font-size:17px;

font-weight:700;

}

.checkout-button:hover{

background:var(--bo-woo-blue-dark)!important;

}


/*==================================================
=            CHECKOUT
==================================================*/

.bo-checkout-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(320px,420px);
    gap:clamp(28px,4vw,48px);
    align-items:start;
}

.bo-checkout__primary{
    min-width:0;
}

.bo-checkout__aside{
    position:sticky;
    top:calc(var(--bo-header-h,104px) + 16px);
    background:#fff;
    padding:clamp(24px,4vw,36px);
    border-radius:18px;
    border:1px solid var(--bo-border,#e4e6ea);
    box-shadow:0 12px 40px rgba(7,12,20,.08);
}

.bo-checkout__review-title{
    margin:0 0 20px!important;
    font-size:1.35rem;
    font-weight:800;
}

.bo-checkout .bo-checkout__grid{
    display:grid;
    grid-template-columns:1fr;
    gap:28px;
}

.woocommerce-checkout .col2-set{

display:grid;
grid-template-columns:1fr;
gap:28px;

}

@media(max-width:992px){

.bo-checkout-layout{
    grid-template-columns:1fr;
}

.bo-checkout__aside{
    position:static;
}

}

.woocommerce form .form-row input,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select{

height:52px;

border:1px solid var(--bo-border,#e4e6ea);

border-radius:12px;

padding:0 16px;

font-size:15px;

transition:border-color .2s,box-shadow .2s;

}

.woocommerce form .form-row input:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus{
    border-color:var(--bo-woo-blue);
    box-shadow:0 0 0 3px rgba(60,98,152,.12);
    outline:none;
}

.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields{
    background:#fff;
    border:1px solid var(--bo-border,#e4e6ea);
    border-radius:18px;
    padding:clamp(20px,3vw,32px);
    margin-bottom:24px;
}

textarea{

height:140px!important;
padding-top:14px!important;

}

#order_review{

background:transparent;

padding:0;

border-radius:0;

border:none;

box-shadow:none;

}

#payment{

background:#f8f9fb!important;

border-radius:16px;

padding:20px!important;

}

#place_order{

width:100%;

height:52px;

background:var(--bo-woo-blue)!important;

color:#fff!important;

border:none;

border-radius:12px;

font-size:16px;

font-weight:700;

}

#place_order:hover{

background:var(--bo-woo-blue-dark)!important;

}


/*==================================================
=            MY ACCOUNT
==================================================*/

.woocommerce-account .woocommerce{


grid-template-columns:260px 1fr;

gap:40px;

}

@media(max-width:992px){

.woocommerce-account .woocommerce{

grid-template-columns:1fr;

}

}

.woocommerce-MyAccount-navigation ul{

padding:0;
margin:0;
list-style:none;

background:#fff;

border-radius:16px;

border:1px solid #ececec;

overflow:hidden;

}

.woocommerce-MyAccount-navigation li{

border-bottom:1px solid #ececec;

}

.woocommerce-MyAccount-navigation li:last-child{

border:none;

}

.woocommerce-MyAccount-navigation a{

display:block;

padding:18px 22px;

font-weight:600;

color:#444;

transition:.3s;

}

.woocommerce-MyAccount-navigation .is-active a{

background:var(--bo-accent);

color:#fff;

}

.woocommerce-MyAccount-navigation a:hover{

background:#f6f8fb;

}

.woocommerce-MyAccount-content{

background:#fff;

padding:35px;

border-radius:18px;

border:1px solid #ececec;

}


/*==================================================
=            MINI CART
==================================================*/

.widget_shopping_cart_content{

padding:20px;

}

.widget_shopping_cart_content ul{

padding:0;
margin:0;
list-style:none;

}

.widget_shopping_cart_content li{

display:flex;

gap:15px;

padding:15px 0;

border-bottom:1px solid #ececec;

}

.widget_shopping_cart_content img{

width:70px;

border-radius:10px;

}

.widget_shopping_cart_content .buttons a{

width:100%;

display:block;

text-align:center;

margin-top:12px;

padding:14px;

border-radius:10px;

font-weight:700;

}

.widget_shopping_cart_content .checkout{

background:var(--bo-accent)!important;

color:#fff!important;

}


/*==================================================
=            NOTICES
==================================================*/

.woocommerce-message,
.woocommerce-error,
.woocommerce-info{

border-radius:12px;

padding:18px 22px;

border:none;

}

.woocommerce-message{

background:#eaf8ef;

color:#1f7a45;

}

.woocommerce-info{

background:#eef5ff;

color:#1b4f9c;

}

.woocommerce-error{

background:#ffeaea;

color:#d12020;

}


/*==================================================
=            HIDE BREADCRUMB
==================================================*/

.woocommerce-breadcrumb,
.rank-math-breadcrumb,
.yoast-breadcrumb,
nav.woocommerce-breadcrumb{

display:none!important;

}


/*==================================================
=            COOKIE NOTICE
==================================================*/

.cookie-notice,
.cookie-notice-container,
#cookie-notice,
#cookie-law-info-bar,
.cli-bar-container{

display:none!important;

}


/*==================================================
=            SALE BADGE
==================================================*/

.onsale{

background:#ff4d4d!important;

color:#fff!important;

border-radius:30px;

padding:8px 15px;

font-size:13px;

font-weight:700;

}


/*==================================================
=            STAR RATING
==================================================*/

.star-rating{

color:#ffc107;

}


/*==================================================
=            BUTTONS
==================================================*/

.button,
button,
input[type=submit]{

border-radius:10px;

transition:.3s;

}

.button:hover,
button:hover{

transform:translateY(-2px);

}


/*==================================================
=            LINKS
==================================================*/

a{

transition:.3s;

}

a:hover{

color:var(--bo-accent);

}


/*==================================================
=            RESPONSIVE
==================================================*/

@media(max-width:768px){

.single-product .site-main{

padding:20px;

}

.bo-pdp__hero{
    grid-template-columns:1fr;
    gap:32px;
}

.bo-pdp__gallery{
    padding-left:0;
}

.bo-trust-cards{
    grid-template-columns:1fr;
}

.product_title{

font-size:32px!important;

}

.single-product .price{

font-size:30px!important;

}

.single_add_to_cart_button,
.bo-buy-now,
.checkout-button,
#place_order{
    height:48px!important;
}

.bo-buy-now{

width:100%;

}


.single-product .quantity input.qty{

width:90px;

}
.cart_totals{

padding:20px;

}

.bo-checkout .bo-checkout__review{

padding:20px;

}

}

:root{
    --bo-accent:#8ea4c3;
    --bo-accent-dark:#738db1;
}
/* Product Card Add to Cart Button */
ul.products li.product .button,
ul.products li.product .add_to_cart_button,
ul.products li.product .added_to_cart{

    margin:0 18px 20px;
    width:calc(100% - 36px);
    height:48px;

    display:flex;
    align-items:center;
    justify-content:center;

    background:#3c6298 !important;
    color:#fff !important;

    border:none;
    border-radius:10px;

    font-size:15px;
    font-weight:600;

    transition:all .3s ease;

}

/* Hover */
ul.products li.product .button:hover,
ul.products li.product .add_to_cart_button:hover,
ul.products li.product .added_to_cart:hover{

    background:#000 !important;
    color:#fff !important;

}
.woocommerce-product-gallery .flex-control-thumbs{
    display:flex;
    justify-content:center;
    gap:15px;
    margin-top:20px;
}

.woocommerce-product-gallery .flex-control-thumbs li{
    width:90px;
    height:90px;
}

.woocommerce-product-gallery .flex-control-thumbs img{
    width:100%;
    height:100%;
    object-fit:contain;
}
@media(max-width:991px){

.bo-pdp__hero{

display:block;

}

}

/* Remove WooCommerce float clearfix pseudo-elements */
.woocommerce ul.products::before,
.woocommerce ul.products::after,
.woocommerce ul.products.columns-4::before,
.woocommerce ul.products.columns-4::after,
ul.products::before,
ul.products::after{
    content:none !important;
    display:none !important;
}/* =========================================================================
   PREMIUM CART & CHECKOUT REDESIGN — OVERRIDE LAYER
   Append this entire block to the BOTTOM of woocommerce-custom.css
   Scope: .woocommerce-cart and .woocommerce-checkout pages ONLY
   Nothing here removes existing rules, HTML, PHP or JS — CSS only,
   layered on top of the current bo-cart-table / bo-checkout markup.
   ========================================================================= */

:root{
  --pcx-primary:#3C6298;
  --pcx-primary-dark:#2d4a75;
  --pcx-dark:#1B2430;
  --pcx-accent:#8EA4C3;
  --pcx-white:#FFFFFF;
  --pcx-bg:#F7F8FA;
  --pcx-border:#E9EDF3;
  --pcx-radius:18px;
  --pcx-radius-sm:12px;
  --pcx-radius-pill:999px;
  --pcx-shadow:0 12px 40px rgba(0,0,0,.08);
  --pcx-shadow-soft:0 6px 18px rgba(27,36,48,.06);
  --pcx-dur:.25s;
  --pcx-ease:cubic-bezier(.4,0,.2,1);
}

/* =========================================================================
   SHARED PAGE BACKDROP
   ========================================================================= */

.woocommerce-cart .bo-cart-layout,
.woocommerce-checkout .bo-checkout-layout{
  background:var(--pcx-bg);
  padding:clamp(20px,3vw,32px);
  border-radius:calc(var(--pcx-radius) + 6px);
}

.woocommerce-cart .bo-cart-layout{
  gap:clamp(28px,3vw,40px);
}

/* =========================================================================
   CART — TABLE SHELL
   ========================================================================= */

.woocommerce-cart .bo-cart-form .bo-cart-table{
  border:1px solid var(--pcx-border);
  border-radius:var(--pcx-radius);
  box-shadow:var(--pcx-shadow-soft);
  overflow:hidden;
  background:var(--pcx-white);
}

.woocommerce-cart .bo-cart-table thead th{
  background:var(--pcx-dark);
  color:var(--pcx-white);
  font-size:12px;
  letter-spacing:.08em;
  font-weight:700;
  padding:20px 18px;
  border:none;
}

.woocommerce-cart .bo-cart-table thead th.product-subtotal{
  text-align:right;
  min-width:140px;
}

/* row spacing + hover */
.woocommerce-cart .bo-cart-table tbody tr.woocommerce-cart-form__cart-item{
  transition:background var(--pcx-dur) var(--pcx-ease);
}

.woocommerce-cart .bo-cart-table tbody tr.woocommerce-cart-form__cart-item:hover{
  background:var(--pcx-bg);
}

.woocommerce-cart .bo-cart-table tbody td{
  padding:24px 18px;
  border-top:1px solid var(--pcx-border);
  vertical-align:middle;
}

/* product thumbnail */
.woocommerce-cart .bo-cart-table td.product-thumbnail{
  width:130px;
}

.woocommerce-cart .bo-cart-table td.product-thumbnail a{
  display:block;
  border-radius:var(--pcx-radius-sm);
  overflow:hidden;
  background:var(--pcx-bg);
  border:1px solid var(--pcx-border);
  width:110px;
  height:110px;
}

.woocommerce-cart .bo-cart-table td.product-thumbnail img{
  width:110px;
  height:110px;
  object-fit:contain;
  border-radius:var(--pcx-radius-sm);
  background:var(--pcx-bg);
  mix-blend-mode:multiply;
}

/* product name / description typography */
.woocommerce-cart .bo-cart-table td.product-name{
  font-size:16px;
}

.woocommerce-cart .bo-cart-table td.product-name a{
  color:var(--pcx-dark);
  font-weight:700;
  font-size:17px;
  line-height:1.35;
}

.woocommerce-cart .bo-cart-table td.product-name a:hover{
  color:var(--pcx-primary);
}

.woocommerce-cart .bo-cart-table td.product-name .wc-item-meta,
.woocommerce-cart .bo-cart-table td.product-name dl.variation{
  margin-top:8px;
  font-size:13px;
  color:#6b7686;
}

.woocommerce-cart .bo-cart-table td.product-name .backorder_notification{
  margin-top:8px;
  font-size:12px;
  color:var(--pcx-primary);
}

/* price + subtotal */
.woocommerce-cart .bo-cart-table td.product-price,
.woocommerce-cart .bo-cart-table td.product-subtotal{
  font-weight:700;
  color:var(--pcx-dark);
}

.woocommerce-cart .bo-cart-table td.product-price{
  font-size:16px;
}

.woocommerce-cart .bo-cart-table td.product-subtotal{
  text-align:right;
  font-size:18px;
  min-width:140px;
}

/* quantity stepper */
.woocommerce-cart .bo-cart-table td.product-quantity .quantity.bo-quantity{
  display:flex;
  align-items:stretch;
  width:132px;
  border:1px solid var(--pcx-border);
  border-radius:var(--pcx-radius-pill);
  overflow:hidden;
  background:var(--pcx-bg);
}

.woocommerce-cart .bo-cart-table td.product-quantity .bo-qty-btn{
  width:38px;
  background:transparent;
  color:var(--pcx-dark);
  font-size:16px;
}

.woocommerce-cart .bo-cart-table td.product-quantity .bo-qty-btn:hover{
  background:var(--pcx-accent);
  color:var(--pcx-white);
}

.woocommerce-cart .bo-cart-table td.product-quantity .quantity.bo-quantity input.qty{
  width:100%;
  height:auto;
  border:none;
  background:var(--pcx-white);
  font-weight:700;
  color:var(--pcx-dark);
  text-align:center;
}

/* remove button */
.woocommerce-cart .bo-cart-table td.product-remove a.remove{
  width:34px;
  height:34px;
  border-radius:50%;
  background:#fbeaea;
  color:#d8453f!important;
  font-size:18px;
  transition:background var(--pcx-dur) var(--pcx-ease), color var(--pcx-dur) var(--pcx-ease), transform var(--pcx-dur) var(--pcx-ease);
}

.woocommerce-cart .bo-cart-table td.product-remove a.remove:hover{
  background:#d8453f;
  color:var(--pcx-white)!important;
  transform:rotate(90deg);
}

/* actions row: coupon + update cart */
.woocommerce-cart .bo-cart-table tr td.actions{
  background:var(--pcx-bg);
  padding:22px 18px;
  border-top:1px solid var(--pcx-border);
}

.woocommerce-cart .bo-cart-table tr td.actions .coupon{
  display:inline-flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

.woocommerce-cart .bo-cart-table tr td.actions .coupon #coupon_code{
  height:48px;
  border:1px solid var(--pcx-border);
  border-radius:var(--pcx-radius-pill);
  padding:0 20px;
  background:var(--pcx-white);
  font-size:14px;
  min-width:190px;
  transition:border-color var(--pcx-dur) var(--pcx-ease), box-shadow var(--pcx-dur) var(--pcx-ease);
}

.woocommerce-cart .bo-cart-table tr td.actions .coupon #coupon_code:focus{
  outline:none;
  border-color:var(--pcx-primary);
  box-shadow:0 0 0 3px rgba(60,98,152,.14);
}

.woocommerce-cart .bo-cart-table tr td.actions button.bo-btn--ghost[name="apply_coupon"]{
  height:48px;
  border-radius:var(--pcx-radius-pill);
  border:1px solid var(--pcx-primary);
  color:var(--pcx-primary);
  background:transparent;
  font-weight:700;
  padding:0 22px;
}

.woocommerce-cart .bo-cart-table tr td.actions button.bo-btn--ghost[name="apply_coupon"]:hover{
  background:var(--pcx-primary);
  color:var(--pcx-white);
  border-color:var(--pcx-primary);
}

.woocommerce-cart .bo-cart-table tr td.actions button.bo-btn--ghost[name="update_cart"]{
  height:48px;
  border-radius:var(--pcx-radius-pill);
  border:1px solid var(--pcx-border);
  background:var(--pcx-white);
  color:var(--pcx-dark);
  font-weight:700;
  padding:0 22px;
  float:right;
}

.woocommerce-cart .bo-cart-table tr td.actions button.bo-btn--ghost[name="update_cart"]:hover{
  border-color:var(--pcx-dark);
  background:var(--pcx-dark);
  color:var(--pcx-white);
}

/* =========================================================================
   CART TOTALS — STICKY SUMMARY CARD
   ========================================================================= */

.woocommerce-cart .bo-cart-collaterals .cart_totals{
  background:var(--pcx-white);
  border:1px solid var(--pcx-border);
  border-radius:var(--pcx-radius);
  box-shadow:var(--pcx-shadow);
  padding:clamp(26px,3vw,34px);
	width:100%;
}

.woocommerce-cart .bo-cart-collaterals .cart_totals h2{
  font-size:22px;
  font-weight:800;
  color:var(--pcx-dark);
  margin-bottom:22px;
  padding-bottom:16px;
  border-bottom:1px solid var(--pcx-border);
}

.woocommerce-cart .bo-cart-collaterals .cart_totals table.shop_table{
  border:none;
  background:transparent;
}

.woocommerce-cart .bo-cart-collaterals .cart_totals table.shop_table tr th,
.woocommerce-cart .bo-cart-collaterals .cart_totals table.shop_table tr td{
  padding:14px 0;
  border:none;
  border-bottom:1px dashed var(--pcx-border);
  font-size:14.5px;
  color:#4a5568;
}

.woocommerce-cart .bo-cart-collaterals .cart_totals table.shop_table tr th{
  font-weight:600;
  color:var(--pcx-dark);
}

/* shipping row */
.woocommerce-cart .bo-cart-collaterals .cart_totals .woocommerce-shipping-totals ul#shipping_method{
  margin:6px 0 0;
  padding:0;
  list-style:none;
}

.woocommerce-cart .bo-cart-collaterals .cart_totals .woocommerce-shipping-totals ul#shipping_method li{
  padding:6px 0;
}

.woocommerce-cart .bo-cart-collaterals .cart_totals .woocommerce-shipping-totals ul#shipping_method label{
  margin-left:8px;
  font-size:14px;
  color:#4a5568;
}

/* VAT / tax row */
.woocommerce-cart .bo-cart-collaterals .cart_totals tr.tax-rate th,
.woocommerce-cart .bo-cart-collaterals .cart_totals tr.tax-rate td,
.woocommerce-cart .bo-cart-collaterals .cart_totals .tax-total th,
.woocommerce-cart .bo-cart-collaterals .cart_totals .tax-total td{
  font-size:13.5px;
  color:#6b7686;
}

/* coupon applied row */
.woocommerce-cart .bo-cart-collaterals .cart_totals tr.cart-discount th,
.woocommerce-cart .bo-cart-collaterals .cart_totals tr.cart-discount td{
  color:#1f7a45;
  font-weight:600;
}

.woocommerce-cart .bo-cart-collaterals .cart_totals .woocommerce-remove-coupon{
  margin-left:10px;
  color:#d8453f;
  font-size:12px;
  text-decoration:underline;
}

/* grand total */
.woocommerce-cart .bo-cart-collaterals .cart_totals tr.order-total th,
.woocommerce-cart .bo-cart-collaterals .cart_totals tr.order-total td{
  border-bottom:none;
  border-top:2px solid var(--pcx-dark);
  padding-top:18px;
  font-size:20px;
  font-weight:800;
  color:var(--pcx-dark);
}

.woocommerce-cart .bo-cart-collaterals .cart_totals tr.order-total td strong,
.woocommerce-cart .bo-cart-collaterals .cart_totals tr.order-total td .woocommerce-Price-amount{
  color:var(--pcx-primary);
}

/* proceed to checkout button */
.woocommerce-cart .bo-cart-collaterals .wc-proceed-to-checkout{
  margin-top:22px;
  padding-top:0;
}

.woocommerce-cart .bo-cart-collaterals .wc-proceed-to-checkout .checkout-button{
  height:56px;
  border-radius:var(--pcx-radius-pill)!important;
  background:var(--pcx-primary)!important;
  color:var(--pcx-white)!important;
  font-size:16px;
  font-weight:800;
  letter-spacing:.01em;
  box-shadow:0 10px 24px rgba(60,98,152,.28);
  transition:background var(--pcx-dur) var(--pcx-ease), transform var(--pcx-dur) var(--pcx-ease), box-shadow var(--pcx-dur) var(--pcx-ease);
}

.woocommerce-cart .bo-cart-collaterals .wc-proceed-to-checkout .checkout-button:hover{
  background:var(--pcx-dark)!important;
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(27,36,48,.3);
}

/* =========================================================================
   CART — RESPONSIVE
   ========================================================================= */

@media(max-width:992px){
  .woocommerce-cart .bo-cart-layout{
    padding:16px;
  }
  .woocommerce-cart .bo-cart-table thead{
    display:none;
  }
  .woocommerce-cart .bo-cart-table,
  .woocommerce-cart .bo-cart-table tbody,
  .woocommerce-cart .bo-cart-table tr,
  .woocommerce-cart .bo-cart-table td{
    display:block;
    width:100%!important;
  }
  .woocommerce-cart .bo-cart-table tbody tr.woocommerce-cart-form__cart-item{
    border-bottom:1px solid var(--pcx-border);
    padding:16px;
    position:relative;
  }
  .woocommerce-cart .bo-cart-table td{
    border-top:none!important;
    padding:6px 0;
  }
  .woocommerce-cart .bo-cart-table td.product-remove{
    position:absolute;
    top:14px;
    right:14px;
    padding:0;
  }
  .woocommerce-cart .bo-cart-table td.product-thumbnail{
    width:90px!important;
  }
  .woocommerce-cart .bo-cart-table td.product-thumbnail a,
  .woocommerce-cart .bo-cart-table td.product-thumbnail img{
    width:90px;
    height:90px;
  }
  .woocommerce-cart .bo-cart-table td.product-subtotal{
    text-align:left;
  }
  .woocommerce-cart .bo-cart-table td::before{
    content:attr(data-title);
    display:block;
    font-size:11px;
    font-weight:700;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:#9aa5b1;
    margin-bottom:2px;
  }
  .woocommerce-cart .bo-cart-table td.product-thumbnail::before,
  .woocommerce-cart .bo-cart-table td.product-remove::before{
    content:none;
  }
  .woocommerce-cart .bo-cart-table tr td.actions button.bo-btn--ghost[name="update_cart"]{
    float:none;
    display:block;
    width:100%;
    margin-top:12px;
  }
  .woocommerce-cart .bo-cart-table tr td.actions .coupon{
    width:100%;
  }
  .woocommerce-cart .bo-cart-table tr td.actions .coupon #coupon_code{
    flex:1;
  }
}

@media(max-width:576px){
  .woocommerce-cart .bo-cart-collaterals .cart_totals{
    padding:20px;
  }
  .woocommerce-cart .bo-cart-collaterals .wc-proceed-to-checkout .checkout-button{
    height:52px;
    font-size:15px;
  }
}

/* =========================================================================
   CHECKOUT — LAYOUT + CARDS
   ========================================================================= */

.woocommerce-checkout .bo-checkout__col > h3{
  font-size:19px;
  font-weight:800;
  color:var(--pcx-dark);
  margin-bottom:16px;
}

.woocommerce-checkout .woocommerce-billing-fields,
.woocommerce-checkout .woocommerce-shipping-fields,
.woocommerce-checkout .woocommerce-additional-fields{
  background:var(--pcx-white);
  border:1px solid var(--pcx-border);
  border-radius:var(--pcx-radius);
  box-shadow:var(--pcx-shadow-soft);
  padding:clamp(24px,3vw,34px);
}

.woocommerce-checkout .woocommerce-billing-fields > h3,
.woocommerce-checkout .woocommerce-shipping-fields > h3,
.woocommerce-checkout .woocommerce-additional-fields > h3{
  font-size:19px;
  font-weight:800;
  color:var(--pcx-dark);
  margin-bottom:20px;
  padding-bottom:14px;
  border-bottom:1px solid var(--pcx-border);
}

/* =========================================================================
   CHECKOUT — FORM FIELDS
   ========================================================================= */

.woocommerce-checkout .form-row{
  margin-bottom:18px;
}

.woocommerce-checkout .form-row label{
  display:block;
  margin-bottom:8px;
  font-size:13.5px;
  font-weight:600;
  color:var(--pcx-dark);
}

.woocommerce-checkout .form-row label .required{
  color:#d8453f;
  text-decoration:none;
}

.woocommerce-checkout .form-row label .optional{
  color:#9aa5b1;
  font-weight:400;
}

.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .select2-container .select2-selection--single{
  width:100%;
  height:56px;
  border:1px solid var(--pcx-border);
  border-radius:var(--pcx-radius-sm);
  background:var(--pcx-bg);
  padding:0 18px;
  font-size:15px;
  color:var(--pcx-dark);
  transition:border-color var(--pcx-dur) var(--pcx-ease), box-shadow var(--pcx-dur) var(--pcx-ease), background var(--pcx-dur) var(--pcx-ease);
  appearance:none;
  -webkit-appearance:none;
}

.woocommerce-checkout .form-row textarea{
  height:auto!important;
  min-height:120px;
  padding-top:16px!important;
  resize:vertical;
}

.woocommerce-checkout .form-row ::placeholder{
  color:#9aa5b1;
  opacity:1;
}

.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .select2-container--focus .select2-selection--single,
.woocommerce-checkout .select2-container--open .select2-selection--single{
  outline:none;
  border-color:var(--pcx-primary);
  background:var(--pcx-white);
  box-shadow:0 0 0 4px rgba(60,98,152,.12);
}

/* custom select arrow */
.woocommerce-checkout .form-row select{
  background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231B2430' stroke-width='2'%3e%3cpath d='M6 9l6 6 6-6'/%3e%3c/svg%3e");
  background-repeat:no-repeat;
  background-position:right 16px center;
  background-size:16px;
  padding-right:44px;
}

/* select2 (country / state) alignment to match 56px fields */
.woocommerce-checkout .select2-container{
  width:100%!important;
}

.woocommerce-checkout .select2-container .select2-selection--single{
  display:flex;
  align-items:center;
}

.woocommerce-checkout .select2-container .select2-selection__rendered{
  padding:0;
  line-height:normal;
  color:var(--pcx-dark);
}

.woocommerce-checkout .select2-container .select2-selection__arrow{
  height:54px;
  right:14px;
}

.woocommerce-checkout .select2-dropdown{
  border-color:var(--pcx-border);
  border-radius:var(--pcx-radius-sm);
  box-shadow:var(--pcx-shadow);
  overflow:hidden;
}

.woocommerce-checkout .select2-container--default .select2-results__option--highlighted[aria-selected]{
  background:var(--pcx-primary);
}

/* ship-to-different-address toggle */
.woocommerce-checkout #ship-to-different-address{
  font-weight:700;
  color:var(--pcx-dark);
  margin-bottom:16px;
}

.woocommerce-checkout #ship-to-different-address label{
  display:flex;
  align-items:center;
  gap:10px;
  cursor:pointer;
}

.woocommerce-checkout #ship-to-different-address input.input-checkbox{
  width:18px;
  height:18px;
  accent-color:var(--pcx-primary);
}

/* order notes */
.woocommerce-checkout #order_comments{
  height:auto;
}

/* =========================================================================
   CHECKOUT — ORDER SUMMARY (ASIDE)
   ========================================================================= */

.woocommerce-checkout .bo-checkout__aside{
  background:var(--pcx-white);
  border:1px solid var(--pcx-border);
  border-radius:var(--pcx-radius);
  box-shadow:var(--pcx-shadow);
}

.woocommerce-checkout .bo-checkout__review-title{
  font-size:20px;
  color:var(--pcx-dark);
  padding-bottom:18px;
  border-bottom:1px solid var(--pcx-border);
}

.woocommerce-checkout #order_review table.shop_table{
  border:none;
  background:transparent;
}

.woocommerce-checkout #order_review table.shop_table thead th{
  font-size:11px;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#9aa5b1;
  border-bottom:1px solid var(--pcx-border);
  padding-bottom:12px;
}

.woocommerce-checkout #order_review table.shop_table td,
.woocommerce-checkout #order_review table.shop_table th{
  border:none;
  border-bottom:1px dashed var(--pcx-border);
  padding:13px 0;
  font-size:14.5px;
  color:#4a5568;
}

.woocommerce-checkout #order_review .cart_item .product-name{
  font-weight:600;
  color:var(--pcx-dark);
}

.woocommerce-checkout #order_review .cart_item .product-total{
  font-weight:700;
  color:var(--pcx-dark);
  text-align:right;
}

.woocommerce-checkout #order_review tr.cart-subtotal th,
.woocommerce-checkout #order_review tr.shipping th,
.woocommerce-checkout #order_review tr.fee th{
  font-weight:600;
  color:var(--pcx-dark);
}

.woocommerce-checkout #order_review ul#shipping_method{
  list-style:none;
  margin:4px 0 0;
  padding:0;
}

.woocommerce-checkout #order_review ul#shipping_method li label{
  margin-left:8px;
  font-size:13.5px;
  color:#4a5568;
}

.woocommerce-checkout #order_review tr.order-total th,
.woocommerce-checkout #order_review tr.order-total td{
  border-bottom:none;
  border-top:2px solid var(--pcx-dark);
  padding-top:18px;
  font-size:19px;
  font-weight:800;
  color:var(--pcx-dark);
}

.woocommerce-checkout #order_review tr.order-total td strong,
.woocommerce-checkout #order_review tr.order-total .woocommerce-Price-amount{
  color:var(--pcx-primary);
}

/* =========================================================================
   CHECKOUT — PAYMENT METHODS
   ========================================================================= */

.woocommerce-checkout #payment{
  background:var(--pcx-bg)!important;
  border:1px solid var(--pcx-border);
  border-radius:var(--pcx-radius-sm);
  margin-top:24px;
  padding:22px!important;
}

.woocommerce-checkout #payment ul.payment_methods{
  list-style:none;
  margin:0;
  padding:0;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method{
  border:1px solid var(--pcx-border);
  border-radius:var(--pcx-radius-sm);
  background:var(--pcx-white);
  padding:16px 18px;
  margin-bottom:12px;
  transition:border-color var(--pcx-dur) var(--pcx-ease), box-shadow var(--pcx-dur) var(--pcx-ease);
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method:has(input:checked){
  border-color:var(--pcx-primary);
  box-shadow:0 0 0 3px rgba(60,98,152,.1);
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method input.input-radio{
  width:19px;
  height:19px;
  accent-color:var(--pcx-primary);
  margin-right:10px;
  vertical-align:middle;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method label{
  font-weight:700;
  color:var(--pcx-dark);
  font-size:15px;
  cursor:pointer;
}

.woocommerce-checkout #payment ul.payment_methods li.wc_payment_method img{
  vertical-align:middle;
  margin-left:8px;
  max-height:22px;
}

.woocommerce-checkout #payment .payment_box{
  margin-top:12px;
  padding:16px;
  background:var(--pcx-bg);
  border-radius:var(--pcx-radius-sm);
  font-size:13.5px;
  color:#4a5568;
  line-height:1.6;
}

.woocommerce-checkout #payment .payment_box::before{
  display:none;
}

/* terms + place order */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper{
  margin:18px 0;
  font-size:13.5px;
  color:#4a5568;
}

.woocommerce-checkout .woocommerce-form__label-for-checkbox{
  display:flex;
  align-items:flex-start;
  gap:10px;
  cursor:pointer;
}

.woocommerce-checkout .woocommerce-form__input-checkbox{
  width:18px;
  height:18px;
  margin-top:2px;
  accent-color:var(--pcx-primary);
}

.woocommerce-checkout #payment .place-order{
  padding-top:18px;
}

.woocommerce-checkout #payment #place_order{
  height:58px;
  border-radius:var(--pcx-radius-pill);
  background:var(--pcx-primary)!important;
  color:var(--pcx-white)!important;
  font-size:16.5px;
  font-weight:800;
  letter-spacing:.01em;
  box-shadow:0 10px 24px rgba(60,98,152,.28);
  transition:background var(--pcx-dur) var(--pcx-ease), transform var(--pcx-dur) var(--pcx-ease), box-shadow var(--pcx-dur) var(--pcx-ease);
}

.woocommerce-checkout #payment #place_order:hover{
  background:var(--pcx-dark)!important;
  transform:translateY(-2px);
  box-shadow:0 14px 30px rgba(27,36,48,.3);
}

/* =========================================================================
   CHECKOUT — RESPONSIVE
   ========================================================================= */

@media(max-width:992px){
  .woocommerce-checkout .bo-checkout-layout{
    padding:16px;
  }
  .woocommerce-checkout .bo-checkout__aside{
    padding:24px;
  }
}

@media(max-width:576px){
  .woocommerce-checkout .form-row input.input-text,
  .woocommerce-checkout .form-row textarea,
  .woocommerce-checkout .form-row select,
  .woocommerce-checkout .select2-container .select2-selection--single{
    height:52px;
  }
  .woocommerce-checkout .woocommerce-billing-fields,
  .woocommerce-checkout .woocommerce-shipping-fields,
  .woocommerce-checkout .woocommerce-additional-fields{
    padding:20px;
  }
  .woocommerce-checkout #payment #place_order{
    height:52px;
    font-size:15px;
  }
}
/* =========================================================================
   CART & CHECKOUT — REFINEMENTS LAYER
   Append this AFTER the previous "PREMIUM CART & CHECKOUT REDESIGN" block
   at the bottom of woocommerce-custom.css.
   CSS only — no PHP, no HTML, no existing rules removed. Coupon fields are
   hidden (not deleted), so nothing on checkout stops working.
   ========================================================================= */

/* =========================================================================
   1. HIDE COUPON — CART
   ========================================================================= */

.woocommerce-cart .bo-cart-table tr td.actions .coupon{
  display:none !important;
}

/* if a lone update_cart button is now alone in the actions row, give it
   the full row width back */
.woocommerce-cart .bo-cart-table tr td.actions{
  text-align:right;
}

.woocommerce-cart .bo-cart-table tr td.actions button.bo-btn--ghost[name="update_cart"]{
  float:none;
}

/* =========================================================================
   2. HIDE COUPON — CHECKOUT
   ========================================================================= */

.woocommerce-checkout .woocommerce-form-coupon-toggle,
.woocommerce-checkout form.checkout_coupon.woocommerce-form-coupon{
  display:none !important;
}

/* =========================================================================
   3. CART TOTALS — WIDER STICKY CARD
   ========================================================================= */

.woocommerce-cart .bo-cart-layout{
  grid-template-columns:minmax(0,1fr) minmax(420px,460px);
}

/* .woocommerce-cart .bo-cart-collaterals .cart_totals{
  padding:36px 34px;
}

.woocommerce-cart .bo-cart-collaterals .cart_totals table.shop_table tr th,
.woocommerce-cart .bo-cart-collaterals .cart_totals table.shop_table tr td{
  font-size:16px;
  padding:16px 0;
}

.woocommerce-cart .bo-cart-collaterals .cart_totals tr.order-total th,
.woocommerce-cart .bo-cart-collaterals .cart_totals tr.order-total td{
  font-size:25px;
} */

@media(max-width:1200px){
  .woocommerce-cart .bo-cart-layout{
    grid-template-columns:minmax(0,1fr) minmax(360px,400px);
  }
}

/* =========================================================================
   4. PRODUCT TABLE — COLUMN WIDTHS + ALIGNMENT
   ========================================================================= */

.woocommerce-cart .bo-cart-table{
  table-layout:fixed;
}

.woocommerce-cart .bo-cart-table th.product-remove,
.woocommerce-cart .bo-cart-table td.product-remove{
  width:44px;
}

.woocommerce-cart .bo-cart-table th.product-thumbnail,
.woocommerce-cart .bo-cart-table td.product-thumbnail{
  width:120px;
}

.woocommerce-cart .bo-cart-table th.product-name,
.woocommerce-cart .bo-cart-table td.product-name{
  width:36%;
}

.woocommerce-cart .bo-cart-table th.product-price,
.woocommerce-cart .bo-cart-table td.product-price{
  width:13%;
}

.woocommerce-cart .bo-cart-table th.product-quantity,
.woocommerce-cart .bo-cart-table td.product-quantity{
  width:150px;
}

.woocommerce-cart .bo-cart-table th.product-subtotal,
.woocommerce-cart .bo-cart-table td.product-subtotal{
  width:19%;
  text-align:right;
}

.woocommerce-cart .bo-cart-table td.product-price{
  text-align:left;
}

@media(max-width:992px){
  .woocommerce-cart .bo-cart-table{
    table-layout:auto;
  }
}

/* =========================================================================
   5. PREMIUM QUANTITY SELECTOR (Apple / Amazon / Noon style)
   ========================================================================= */

.woocommerce-cart .bo-cart-table td.product-quantity .quantity.bo-quantity{
  width:120px;
  height:44px;
  border:1.5px solid var(--pcx-border, #E9EDF3);
  border-radius:999px;
  background:var(--pcx-white, #fff);
  overflow:hidden;
}

.woocommerce-cart .bo-cart-table td.product-quantity .bo-qty-btn{
  width:36px;
  font-weight:700;
  font-size:16px;
  color:var(--pcx-dark, #1B2430);
  background:transparent;
  transition:background .2s ease, color .2s ease;
}

.woocommerce-cart .bo-cart-table td.product-quantity .bo-qty-btn:hover{
  background:var(--pcx-dark, #1B2430);
  color:#fff;
}

.woocommerce-cart .bo-cart-table td.product-quantity .quantity.bo-quantity input.qty{
  font-size:15px;
  font-weight:700;
  background:transparent;
}

/* subtle "updating" feedback while the AJAX request is in flight
   (class is toggled by the JS refinement script) */
.woocommerce-cart .bo-cart-form.bo-cart-updating .bo-cart-table{
  opacity:.55;
  pointer-events:none;
  transition:opacity .2s ease;
}

/* =========================================================================
   6. BUTTONS — LARGER PROCEED TO CHECKOUT
   ========================================================================= */

.woocommerce-cart .bo-cart-collaterals .wc-proceed-to-checkout .checkout-button{
  height:60px;
  font-size:17px;
}

.woocommerce-checkout #payment #place_order{
  height:60px;
  font-size:17px;
}

/* =========================================================================
   7. CHECKOUT — MATCH ORDER SUMMARY WIDTH TO CART TOTALS
   ========================================================================= */

.woocommerce-checkout .bo-checkout-layout{
  grid-template-columns:minmax(0,1fr) minmax(420px,460px);
}

@media(max-width:1200px){
  .woocommerce-checkout .bo-checkout-layout{
    grid-template-columns:minmax(0,1fr) minmax(360px,400px);
  }
}

/* =========================================================================
   8. RESPONSIVE TOUCH-UPS
   ========================================================================= */

@media(max-width:992px){
  .woocommerce-cart .bo-cart-table tr td.actions{
    text-align:left;
  }
  .woocommerce-cart .bo-cart-table tr td.actions button.bo-btn--ghost[name="update_cart"]{
    width:100%;
  }
}

@media(max-width:576px){
  .woocommerce-cart .bo-cart-collaterals .wc-proceed-to-checkout .checkout-button,
  .woocommerce-checkout #payment #place_order{
    height:54px;
    font-size:15.5px;
  }
}








/* Hide coupon field + tax line - WooCommerce Blocks checkout */
.wp-block-woocommerce-checkout-order-summary-coupon-form-block,
.wc-block-components-totals-coupon,
.wc-block-components-totals-taxes {
  display: none !important;
}




/* ==================================================
   PRODUCT ACTIONS
   Quantity + Add to Cart + Buy Now
================================================== */

.single-product form.cart{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:nowrap;
    width:100%;
    margin-top:20px;
    flex-direction: row;
}



/* Add to Cart */
.single-product form.cart .single_add_to_cart_button{
    width:30% !important;
    height:50px !important;
    min-height:48px;
    padding:0 24px !important;
    border:none !important;
    border-radius:12px !important;
    display:flex !important;
    align-items:center;
    justify-content:center;
    font-size:16px !important;
    font-weight:700;
    margin:0 !important;
}

/* Buy Now */
.single-product form.cart .bo-buy-now{
    width:30% !important;
    height:50px !important;
    min-height:48px;
    margin:0 !important;
}

/* Make both buttons equal */
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .bo-buy-now{
    flex:0 0 30%;
}
.single-product form.cart .single_add_to_cart_button,
.single-product form.cart .bo-buy-now{

    background:var(--bo-woo-gold) !important;
    color:#0a0a0a !important;

    border:none !important;
    border-radius:12px !important;

    font-size:16px !important;
    font-weight:700;

    display:flex !important;
    justify-content:center;
    align-items:center;

    transition:.3s;
}

.single-product form.cart .single_add_to_cart_button:hover,
.single-product form.cart .bo-buy-now:hover{
    transform:translateY(-2px);
}
@media (max-width:768px){

    .single-product form.cart{
        flex-wrap:wrap;
    }

    .single-product form.cart .quantity{
        width:100%;
        flex:0 0 100%;
    }

    .single-product form.cart .single_add_to_cart_button,
    .single-product form.cart .bo-buy-now{
        width:calc(50% - 6px) !important;
        flex:0 0 calc(50% - 6px);
    }
}
.woocommerce div.product{
    position:relative;
    padding:40px;
}



















/* ==========================================
   SINGLE PRODUCT PAGE QUANTITY
   ========================================== */

.single-product form.cart .quantity,
.single-product form.cart .quantity.bo-quantity {

    display:flex;
    align-items:center;
    width:180px;
    height:54px;
    border:1px solid var(--pcx-border);
    border-radius:999px;
    overflow:hidden;
    background:var(--pcx-bg);

}


.single-product form.cart .bo-qty-btn {

    width:45px;
    height:54px;
    border:none;
    background:transparent;
    color:var(--pcx-dark);
    font-size:22px;
    cursor:pointer;

}


.single-product form.cart .bo-qty-btn:hover {

    background:var(--pcx-primary);
    color:#fff;

}


.single-product form.cart .quantity input.qty {

    width:90px !important;
    height:54px !important;

    border:none !important;
    outline:none;

    background:#fff;

    text-align:center;

    font-size:18px;
    font-weight:700;

    color:var(--pcx-dark);

    appearance:none;
    -moz-appearance:textfield;

}


/* Remove browser number arrows */

.single-product form.cart .quantity input.qty::-webkit-inner-spin-button,
.single-product form.cart .quantity input.qty::-webkit-outer-spin-button {

    -webkit-appearance:none;
    margin:0;

}









/* =========================================================================
   BANIYA OASIS — PRODUCT EXTRAS
   Append to the bottom of woocommerce-custom.css (or enqueue separately
   AFTER it, so these rules can rely on --bo-woo-blue / --bo-woo-gold /
   --pcx-* variables already defined there).
   ========================================================================= */

/* -------------------------------------------------------------------------
   1. REVIEW STARS SUMMARY BAR
   ------------------------------------------------------------------------- */

.bo-review-summary{
    display:inline-flex;
    align-items:center;
    gap:10px;
    margin:0 0 16px;
    text-decoration:none;
    cursor:pointer;
}

.bo-review-summary__stars .star-rating{
    font-size:16px;
}

.bo-review-summary__text{
    font-size:14px;
    font-weight:600;
    color:var(--bo-text-muted,#666b74);
}

.bo-review-summary:hover .bo-review-summary__text{
    color:var(--bo-woo-blue,#3c6298);
}

/* -------------------------------------------------------------------------
   2. COLOR SWATCHES (visual only)
   ------------------------------------------------------------------------- */

.bo-swatches{
    margin:18px 0;
}

.bo-swatches__label{
    display:block;
    font-size:14px;
    font-weight:600;
    color:var(--bo-text,#14161a);
    margin-bottom:10px;
}

.bo-swatches__selected{
    font-weight:700;
    color:var(--bo-woo-blue,#3c6298);
}

.bo-swatches__row{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.bo-swatch{
    width:36px;
    height:36px;
    border-radius:50%;
    border:2px solid #fff;
    box-shadow:0 0 0 1px var(--bo-border,#e4e6ea);
    cursor:pointer;
    padding:0;
    transition:box-shadow .2s ease, transform .2s ease;
}

.bo-swatch:hover{
    transform:translateY(-2px);
}

.bo-swatch.is-active{
    box-shadow:0 0 0 2px var(--bo-woo-blue,#3c6298);
}

/* -------------------------------------------------------------------------
   3. FULL-WIDTH HERO BANNERS
   ------------------------------------------------------------------------- */

.bo-hero-banners{
    width:100%;
    margin:0 0 clamp(32px,5vw,56px);
    clear:both;
}

.bo-hero-banners__img{
    display:block;
    width:100%;
    height:auto;
    margin-bottom:16px;
    border-radius:16px;
}

.bo-hero-banners__img:last-child{
    margin-bottom:0;
}

/* -------------------------------------------------------------------------
   4. COLLAPSIBLE "VIEW MORE" DESCRIPTION
   ------------------------------------------------------------------------- */

.bo-desc-collapsible{
    position:relative;
    margin:20px 0;
    padding:20px 0;
    border-top:1px solid #ececec;
    border-bottom:1px solid #ececec;
}

.bo-desc-collapsible__inner{
    max-height:96px;
    overflow:hidden;
    position:relative;
    font-size:16px;
    line-height:1.8;
    color:var(--bo-text-muted,#666b74);
    transition:max-height .35s ease;
}

.bo-desc-collapsible__inner::after{
    content:"";
    position:absolute;
    left:0;right:0;bottom:0;
    height:40px;
    background:linear-gradient(to bottom, rgba(255,255,255,0), #fff);
    pointer-events:none;
    transition:opacity .2s ease;
}

.bo-desc-collapsible.is-expanded .bo-desc-collapsible__inner{
    max-height:1000px;
}

.bo-desc-collapsible.is-expanded .bo-desc-collapsible__inner::after{
    opacity:0;
}

.bo-desc-collapsible__toggle{
    margin-top:10px;
    background:none;
    border:none;
    padding:0;
    font-size:14px;
    font-weight:700;
    color:var(--bo-woo-blue,#3c6298);
    cursor:pointer;
}

.bo-desc-collapsible__toggle:hover{
    text-decoration:underline;
}

/* -------------------------------------------------------------------------
   5. FAQ ACCORDION
   ------------------------------------------------------------------------- */

.bo-faq{
    margin-top:56px;
    padding-top:48px;
    border-top:1px solid var(--bo-border,#e4e6ea);
    max-width:900px;
}

.bo-faq > h2{
    font-size:clamp(1.5rem,3vw,2rem);
    font-weight:800;
    margin-bottom:24px;
}

.bo-faq__item{
    border-bottom:1px solid var(--bo-border,#e4e6ea);
}

.bo-faq__question{
    width:100%;
    display:flex;
    align-items:center;
    justify-content:space-between;
    background:none;
    border:none;
    padding:18px 4px;
    font-size:16px;
    font-weight:700;
    text-align:left;
    color:var(--bo-text,#14161a);
    cursor:pointer;
}

.bo-faq__icon{
    font-size:20px;
    font-weight:400;
    transition:transform .25s ease;
    flex-shrink:0;
    margin-left:12px;
}

.bo-faq__item.is-open .bo-faq__icon{
    transform:rotate(45deg);
}

.bo-faq__answer{
    max-height:0;
    overflow:hidden;
    transition:max-height .3s ease;
}

.bo-faq__answer p{
    padding:0 4px 18px;
    font-size:15px;
    line-height:1.75;
    color:var(--bo-text-muted,#666b74);
}

/* -------------------------------------------------------------------------
   6. STICKY MOBILE BOTTOM ADD-TO-CART BAR
   ------------------------------------------------------------------------- */

.bo-sticky-bar{
    display:none;
    position:fixed;
    left:0;right:0;bottom:0;
    z-index:999;
    background:#fff;
    box-shadow:0 -6px 24px rgba(0,0,0,.12);
    padding:10px 14px;
    align-items:center;
    gap:12px;
    transform:translateY(100%);
    transition:transform .3s ease;
}

.bo-sticky-bar.is-visible{
    transform:translateY(0);
}

.bo-sticky-bar__thumb img{
    width:48px;
    height:48px;
    object-fit:contain;
    border-radius:8px;
    background:#f6f7f9;
}

.bo-sticky-bar__info{
    flex:1;
    min-width:0;
    display:flex;
    flex-direction:column;
    gap:2px;
}

.bo-sticky-bar__title{
    font-size:12.5px;
    font-weight:600;
    color:var(--bo-text,#14161a);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}

.bo-sticky-bar__price{
    font-size:14px;
    font-weight:800;
    color:var(--bo-woo-blue,#3c6298);
}

.bo-sticky-bar__btn{
    flex-shrink:0;
    height:44px;
    padding:0 20px;
    border:none;
    border-radius:10px;
    background:var(--bo-woo-gold,#c9971a);
    color:#0a0a0a;
    font-weight:700;
    font-size:14px;
}

@media(max-width:768px){
    .bo-sticky-bar{
        display:flex;
    }
    /* keep the real form usable but give the page enough bottom room
       so the sticky bar never overlaps footer content */
    .single-product .site-main{
        padding-bottom:90px;
    }
}












/*==============================
Product Promotional Banner
===============================*/

.bo-promo-banner{
    margin:70px 0;
}

.bo-banner-grid{
/*     display:grid; */
    grid-template-columns:repeat(2,1fr);
    gap:30px;
}

.bo-banner-item{
    position:relative;
/*     overflow:hidden;
    border-radius:22px; */
    box-shadow:0 18px 40px rgba(0,0,0,.15);
}

.bo-banner-item img{
    width:100%;
    height:420px;
    object-fit:cover;
    transition:.6s;
}

.bo-banner-item:hover img{
    transform:scale(1.08);
}

.bo-banner-content{
    position:absolute;
    inset:0;
    background:linear-gradient(
        to top,
        rgba(0,0,0,.75),
        rgba(0,0,0,.20)
    );
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:40px;
}

.bo-banner-content h2{
    color:#fff;
    font-size:34px;
    font-weight:800;
    line-height:1.2;
    margin-bottom:15px;
}

.bo-banner-content p{
    color:#fff;
    font-size:17px;
    line-height:1.8;
    max-width:450px;
}

/*==============================
WooCommerce Tabs
===============================*/

.woocommerce-tabs{
    margin-top:70px;
}

/* .woocommerce-tabs ul.tabs{
    display:flex;
    justify-content:center;
    gap:15px;
    margin-bottom:40px;
    border:none;
    padding:0;
} */

.woocommerce-tabs ul.tabs li{
    border:none!important;
    background:#f5f5f5!important;
    border-radius:50px!important;
    padding:0!important;
    margin:0!important;
}

.woocommerce-tabs ul.tabs li a{
    display:block;
    padding:15px 35px;
    font-size:16px;
    font-weight:700;
    color:#222;
}

.woocommerce-tabs ul.tabs li.active{
    background:#8e9eb4!important;
}

.woocommerce-tabs ul.tabs li.active a{
    color:#fff;
}

.woocommerce-Tabs-panel{
    background:#fff;
    padding:45px;
    border-radius:18px;
    box-shadow:0 15px 40px rgba(0,0,0,.08);
}

.woocommerce-Tabs-panel h2{
    font-size:36px;
    font-weight:800;
    margin-bottom:25px;
    position:relative;
}

.woocommerce-Tabs-panel h2:after{
    content:"";
    width:80px;
    height:4px;
    background:#d4af37;
    display:block;
    margin-top:12px;
    border-radius:20px;
}

.woocommerce-Tabs-panel p{
    font-size:17px;
    line-height:1.9;
    color:#555;
}

/*==============================
Specification Table
===============================*/

.shop_attributes{
    width:100%;
    border-collapse:separate;
    border-spacing:0 12px;
}

.shop_attributes th,
.shop_attributes td{
    padding:18px 22px;
    background:#fafafa;
    font-size:16px;
}

.shop_attributes th{
    width:260px;
    color:#111;
    font-weight:700;
    border-left:5px solid #d4af37;
}

.shop_attributes td{
    color:#555;
}

/*==============================
Reviews
===============================*/

#reviews{
    background:#fff;
    padding:20px;
}

#reviews h2{
    font-size:34px;
    font-weight:800;
}

/*==============================
Related Products
===============================*/

.related.products{
    margin-top:90px;
}

.related.products>h2{
    text-align:center;
    font-size:40px;
    font-weight:800;
    margin-bottom:50px;
    position:relative;
}

.related.products>h2:after{
    content:"";
    width:90px;
    height:4px;
    background:#d4af37;
    display:block;
    margin:15px auto 0;
    border-radius:50px;
}

@media(max-width:991px){

.bo-banner-grid{
    grid-template-columns:1fr;
}

/* .bo-banner-item img{
    height:300px;
} */

.bo-banner-content{
    padding:25px;
}

.bo-banner-content h2{
    font-size:26px;
}

.woocommerce-Tabs-panel{
    padding:25px;
}

.woocommerce-Tabs-panel h2{
    font-size:28px;
}

.related.products>h2{
    font-size:30px;
}

}







/* Additional Information Section */
.woocommerce-product-attributes,
.shop_attributes {
    width: 100% !important;
    table-layout: fixed;
    border-collapse: collapse;
}

.shop_attributes th {
    width: 28% !important;
    padding: 25px !important;
    vertical-align: top;
    font-size: 18px;
    font-weight: 700;
    background: #f8f8f8;
}

.shop_attributes td {
    width: 72% !important;
    padding: 25px !important;
    font-size: 17px;
    line-height: 2;
    vertical-align: top;
    white-space: pre-line;
    word-break: break-word;
}

/* Section Heading */
.woocommerce-Tabs-panel--additional_information h2{
    font-size:42px;
    font-weight:800;
    margin-bottom:35px;
}

/* Mobile */
@media(max-width:768px){

.shop_attributes th,
.shop_attributes td{
    display:block;
    width:100%!important;
}

}

















/* new add info */

.bo-product-attributes{

    display:flex;
    flex-direction:column;
    gap:35px;

}

.bo-attribute-card{

    background:#fff;
    border-radius:18px;
    padding:35px;
    box-shadow:0 15px 35px rgba(0,0,0,.08);

}

.bo-attribute-title{

    font-size:30px;
    font-weight:800;
    margin-bottom:25px;
    color:#111;
    position:relative;

}

.bo-attribute-title:after{

    content:'';
    width:70px;
    height:4px;
    background:#D4AF37;
    display:block;
    margin-top:12px;
    border-radius:20px;

}

.bo-attribute-value ul{

    margin:0;
    padding-left:22px;

}

.bo-attribute-value li{

    font-size:17px;
    line-height:2;
    color:#555;
    margin-bottom:10px;

}

.bo-attribute-value li::marker{

    color:#D4AF37;

}

.bo-spec-section{
    display:flex;
    justify-content:space-between;
    align-items:flex-start;
    gap:40px;
    margin:60px 0;
}

.bo-spec-left{
    width:60%;
}

.bo-spec-right{
    width:36%;
}

.bo-spec-right img{
    width:100%;
    height:auto;
    display:block;
    border-radius:18px;
    box-shadow:0 15px 35px rgba(0,0,0,.15);
}

.bo-spec-table{
    width:100%;
    border-collapse:collapse;
}

.bo-spec-table th{
    width:220px;
    padding:15px;
    background:#f8f8f8;
    text-align:left;
    font-weight:700;
}

.bo-spec-table td{
    padding:15px;
}

.bo-spec-table tr{
    border-bottom:1px solid #eee;
}

@media (max-width:991px){

.bo-spec-section{
    display:block;
}

.bo-spec-left,
.bo-spec-right{
    width:100%;
}

.bo-spec-right{
    margin-top:30px;
}

}

























.bo-color-swatches{
    display:flex;
    align-items:center;
    gap:10px;
    margin:18px 0 25px;
}

.bo-color{
    width:28px;
    height:28px;
    border-radius:6px;
    border:2px solid #ddd;
}

.bo-color.black{
    background:#111;
}

.bo-color.red{
    background:#d60000;
}

.bo-color.active{
    border-color:#d4af37;
}
.bo-banner-grid{
    width:100%;
    margin:30px 0;
}

.bo-banner-item{
    width:100%;
}

.bo-banner-item img{
/*     display:block; */
    width:100%;
    height:auto;
}















.single-product .woocommerce-product-gallery{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
    width:100%;
}

.single-product .woocommerce-product-gallery__wrapper{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
}

.single-product .woocommerce-product-gallery__image{
    display:block !important;
}

.single-product .woocommerce-product-gallery img{
    display:block !important;
    width:100%;
    height:auto;
    object-fit:contain;
}

.single-product .flex-viewport{
    height:auto !important;
}

.single-product .woocommerce-product-gallery--with-images{
    opacity:1 !important;
}



.bo-pdp,
.bo-pdp__hero,
.bo-pdp__gallery,
.bo-pdp__summary{
    position:static !important;
    z-index:auto !important;
    transform:none !important;
}

#masthead,
.site-header,
.bo-mega{
    position:relative !important;
/*     z-index:999999 !important; */
}

.bo-mega__list{
    z-index:1000000 !important;
}


/* mobile css for dscrptn section  */
@media (max-width: 768px) {

    .woocommerce div.product .woocommerce-tabs ul.tabs {
        display: flex;
        overflow-x: auto;
        gap: 10px;
        padding: 0;
        margin: 0;
        white-space: nowrap;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li {
        margin: 0 !important;
        flex: 0 0 auto;
        border-radius: 10px;
        padding: 0 16px;
    }

    .woocommerce div.product .woocommerce-tabs ul.tabs li::before,
    .woocommerce div.product .woocommerce-tabs ul.tabs li::after {
        display: none !important;
    }
}
/* brands */


.bo-brands-slider{
    overflow: hidden;
    width: 100%;
    position: relative;
}

.bo-brands-track{
    display: flex;
    gap: 50px;
    width: max-content;
    animation: brandScroll 10s linear infinite;
}

.bo-brand-card{
    flex: 0 0 auto;
    width: 180px;
}

.bo-brands-slider:hover .bo-brands-track{
    animation-play-state: paused;
}

@keyframes brandScroll{
    0%{
        transform: translateX(100%);
    }
    100%{
        transform: translateX(-100%);
    }
}

@media (max-width:768px){

    .bo-brand-card{
        width:140px;
    }

    .bo-brands-track{
        animation-duration:12s;
    }

}
/* new new  */

.bo-footer__main{
    padding:70px 0;
}

.bo-footer .bo-container{
    width:96%;
    max-width:1800px;
    margin:0 auto;
}

.bo-footer__cols{
    display:grid;
    grid-template-columns:3fr 1fr 1fr 1.3fr;
    gap:60px;
    align-items:flex-start;
}



















/* ==========================
   PRODUCT TABS
========================== */

.woocommerce-tabs{
    width:100%;
    margin-top:40px;
}

.woocommerce-tabs ul.tabs{
    display:flex;
    justify-content:center;
    align-items:center;
    gap:15px;
    list-style:none;
    padding:0;
    margin:0 0 35px;
    border:none;
    overflow:visible;
}

.woocommerce-tabs ul.tabs:before{
    display:none;
}

.woocommerce-tabs ul.tabs li{
    margin:0!important;
    padding:0!important;
    border:none!important;
    background:#f5f5f5!important;
    border-radius:50px!important;
}

.woocommerce-tabs ul.tabs li:before,
.woocommerce-tabs ul.tabs li:after{
    display:none!important;
}

.woocommerce-tabs ul.tabs li a{
    display:block;
    padding:15px 35px;
    font-size:16px;
    font-weight:600;
    color:#333;
    text-decoration:none;
}

.woocommerce-tabs ul.tabs li.active{
    background:#486aa0!important;
}

.woocommerce-tabs ul.tabs li.active a{
    color:#fff!important;
}
@media (max-width:768px){

.woocommerce-tabs ul.tabs{
    justify-content:flex-start;
    overflow-x:auto;
    white-space:nowrap;
    flex-wrap:nowrap;
    gap:10px;
    padding-bottom:10px;

    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
}

.woocommerce-tabs ul.tabs::-webkit-scrollbar{
    display:none;
}

.woocommerce-tabs ul.tabs li{
    flex:0 0 auto;
}

}
.woocommerce #review_form #respond p {
    margin: 4px;
}
	