.elementor-7 .elementor-element.elementor-element-15cf9996{--display:flex;}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}:root{--page-title-display:none;}/* Start custom CSS for text-editor, class: .elementor-element-3c69826a *//* =====================================================
   BATHIL BAZAR – PREMIUM MINIMAL CART DESIGN
===================================================== */

/* 1. CART TABLE CONTAINER */
.elementor-7 .elementor-element.elementor-element-3c69826a .woocommerce-cart-form {
    background: #ffffff !important;
    padding: 20px !important;
    border-radius: 25px !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #f0f0f0 !important;
}

/* 2. TABLE HEADER STYLING */
.elementor-7 .elementor-element.elementor-element-3c69826a .shop_table thead th {
    background: #f8f9fa !important;
    color: #003f8f !important; /* Brand Blue */
    text-transform: uppercase !important;
    font-size: 12px !important;
    letter-spacing: 1px !important;
    padding: 15px !important;
    border: none !important;
}

/* 3. PRODUCT ROW DESIGN */
.elementor-7 .elementor-element.elementor-element-3c69826a .cart_item {
    transition: all 0.3s ease !important;
}

.elementor-7 .elementor-element.elementor-element-3c69826a .cart_item td {
    padding: 20px 15px !important;
    border-bottom: 1px solid #f1f1f1 !important;
    vertical-align: middle !important;
}

/* Product Image Thumbnail */
.elementor-7 .elementor-element.elementor-element-3c69826a .product-thumbnail img {
    border-radius: 12px !important;
    width: 80px !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.08) !important;
}

/* Product Name Link */
.elementor-7 .elementor-element.elementor-element-3c69826a .product-name a {
    color: #222 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: 0.3s;
}

.elementor-7 .elementor-element.elementor-element-3c69826a .product-name a:hover {
    color: #ffb800 !important; /* Brand Yellow */
}

/* 4. QUANTITY INPUT BOX */
.elementor-7 .elementor-element.elementor-element-3c69826a .quantity input {
    border-radius: 10px !important;
    border: 2px solid #f0f0f0 !important;
    padding: 8px !important;
    font-weight: 700 !important;
}

/* 5. UPDATE CART BUTTON */
.elementor-7 .elementor-element.elementor-element-3c69826a .button[name="update_cart"] {
    background: #ffffff !important;
    color: #003f8f !important;
    border: 2px solid #003f8f !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    transition: all 0.3s ease !important;
}

.elementor-7 .elementor-element.elementor-element-3c69826a .button[name="update_cart"]:hover {
    background: #003f8f !important;
    color: #fff !important;
}

/* 6. CART TOTALS SECTION (RIGHT SIDE) */
.elementor-7 .elementor-element.elementor-element-3c69826a .cart-collaterals {
    margin-top: 40px !important;
}

.elementor-7 .elementor-element.elementor-element-3c69826a .cart_totals {
    background: #ffffff !important;
    padding: 30px !important;
    border-radius: 25px !important;
    border: 2px solid #ffb800 !important; /* Yellow Border for emphasis */
    box-shadow: 0 10px 30px rgba(255, 184, 0, 0.1) !important;
}

/* Proceed to Checkout Button */
.elementor-7 .elementor-element.elementor-element-3c69826a .checkout-button {
    background: linear-gradient(135deg, #0056b3 0%, #003f8f 100%) !important;
    color: #ffffff !important;
    padding: 18px !important;
    border-radius: 15px !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    box-shadow: 0 10px 20px rgba(0, 63, 143, 0.2) !important;
    transition: all 0.3s ease !important;
}

.elementor-7 .elementor-element.elementor-element-3c69826a .checkout-button:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 15px 30px rgba(0, 63, 143, 0.3) !important;
}

/* ===============================
   7. MOBILE OPTIMIZATION
================================ */
@media (max-width: 768px) {
    .elementor-7 .elementor-element.elementor-element-3c69826a .shop_table_responsive thead {
        display: none !important;
    }
    
    .elementor-7 .elementor-element.elementor-element-3c69826a .cart_item td {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        border: none !important;
        padding: 10px 5px !important;
    }

    .elementor-7 .elementor-element.elementor-element-3c69826a .product-thumbnail {
        justify-content: center !important;
    }
}
/* =====================================================
   BATHIL BAZAR – PREMIUM MINIMAL CART DESIGN
===================================================== */

/* 1. CART TABLE CONTAINER */
.elementor-7 .elementor-element.elementor-element-3c69826a .woocommerce-cart-form {
    background: #ffffff !important;
    padding: 20px !important;
    border-radius: 25px !important;
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.05) !important;
    border: 1px solid #f0f0f0 !important;
}

/* 2. TABLE HEADER STYLING */
.elementor-7 .elementor-element.elementor-element-3c69826a .shop_table thead th {
    background: #f8f9fa !important;
    color: #003f8f !important; /* Brand Blue */
    text-transform: uppercase !important;
    font-size: 12px !important;
    letter-spacing: 1px !important;
    padding: 15px !important;
    border: none !important;
}

/* 3. PRODUCT ROW DESIGN */
.elementor-7 .elementor-element.elementor-element-3c69826a .cart_item {
    transition: all 0.3s ease !important;
}

.elementor-7 .elementor-element.elementor-element-3c69826a .cart_item td {
    padding: 20px 15px !important;
    border-bottom: 1px solid #f1f1f1 !important;
    vertical-align: middle !important;
}

/* Product Image Thumbnail */
.elementor-7 .elementor-element.elementor-element-3c69826a .product-thumbnail img {
    border-radius: 12px !important;
    width: 80px !important;
    box-shadow: 0 5px 15px rgba(0,0,0,0.08) !important;
}

/* Product Name Link */
.elementor-7 .elementor-element.elementor-element-3c69826a .product-name a {
    color: #222 !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: 0.3s;
}

.elementor-7 .elementor-element.elementor-element-3c69826a .product-name a:hover {
    color: #ffb800 !important; /* Brand Yellow */
}

/* 4. QUANTITY INPUT BOX */
.elementor-7 .elementor-element.elementor-element-3c69826a .quantity input {
    border-radius: 10px !important;
    border: 2px solid #f0f0f0 !important;
    padding: 8px !important;
    font-weight: 700 !important;
}

/* 5. UPDATE CART BUTTON */
.elementor-7 .elementor-element.elementor-element-3c69826a .button[name="update_cart"] {
    background: #ffffff !important;
    color: #003f8f !important;
    border: 2px solid #003f8f !important;
    border-radius: 12px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    transition: all 0.3s ease !important;
}

.elementor-7 .elementor-element.elementor-element-3c69826a .button[name="update_cart"]:hover {
    background: #003f8f !important;
    color: #fff !important;
}

/* 6. CART TOTALS SECTION (RIGHT SIDE) */
.elementor-7 .elementor-element.elementor-element-3c69826a .cart-collaterals {
    margin-top: 40px !important;
}

.elementor-7 .elementor-element.elementor-element-3c69826a .cart_totals {
    background: #ffffff !important;
    padding: 30px !important;
    border-radius: 25px !important;
    border: 2px solid #ffb800 !important; /* Yellow Border for emphasis */
    box-shadow: 0 10px 30px rgba(255, 184, 0, 0.1) !important;
}

/* Proceed to Checkout Button */
.elementor-7 .elementor-element.elementor-element-3c69826a .checkout-button {
    background: linear-gradient(135deg, #0056b3 0%, #003f8f 100%) !important;
    color: #ffffff !important;
    padding: 18px !important;
    border-radius: 15px !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    box-shadow: 0 10px 20px rgba(0, 63, 143, 0.2) !important;
    transition: all 0.3s ease !important;
}

.elementor-7 .elementor-element.elementor-element-3c69826a .checkout-button:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 15px 30px rgba(0, 63, 143, 0.3) !important;
}

/* ===============================
   7. MOBILE OPTIMIZATION
================================ */
@media (max-width: 768px) {
    .elementor-7 .elementor-element.elementor-element-3c69826a .shop_table_responsive thead {
        display: none !important;
    }
    
    .elementor-7 .elementor-element.elementor-element-3c69826a .cart_item td {
        display: flex !important;
        justify-content: space-between !important;
        align-items: center !important;
        border: none !important;
        padding: 10px 5px !important;
    }

    .elementor-7 .elementor-element.elementor-element-3c69826a .product-thumbnail {
        justify-content: center !important;
    }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-15cf9996 *//* ==========================================================================
   BATHILBAZAR — Cart Enhancements v3
   Elementor → Text Editor Widget (the one with [woocommerce_cart])
   → Advanced → Custom CSS
   ========================================================================== */

/* ── CSS Variables ──────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 {
    --navy:       #0d1b2a;
    --navy-mid:   #162235;
    --teal:       #0f9b8e;
    --teal-dk:    #0a7a6f;
    --teal-glow:  rgba(15,155,142,0.15);
    --gold:       #c8972a;
    --gold-lt:    #e8b84b;
    --gold-dim:   rgba(200,151,42,0.13);
    --white:      #ffffff;
    --off:        #f4f6f9;
    --text:       #1a2535;
    --muted:      #6b7e96;
    --danger:     #e63946;
    --border:     #dce4ef;
    --shadow:     0 4px 24px rgba(13,27,42,0.13);
    --shadow-h:   0 8px 32px rgba(15,155,142,0.22);
    --r:          10px;
    --t:          0.22s cubic-bezier(0.4,0,0.2,1);
    background: var(--off);
    padding: 12px !important;
    box-sizing: border-box;
}

/* ════════════════════════════════════════════════════════════════════════════
   BUG FIX #1 — WooCommerce notices: position FIXED so they NEVER
   push the table. They float over the page as overlay toasts.
   ════════════════════════════════════════════════════════════════════════════ */
.elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-message,
.elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-error,
.elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-info {
    position: fixed !important;
    top: 16px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    z-index: 999999 !important;
    width: auto !important;
    min-width: 280px !important;
    max-width: min(620px, calc(100vw - 32px)) !important;
    margin: 0 !important;

    background: var(--navy) !important;
    color: #fff !important;
    border: none !important;
    border-left: 4px solid var(--teal) !important;
    border-radius: 10px !important;
    padding: 12px 18px !important;
    box-shadow: 0 8px 32px rgba(13,27,42,0.45) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    animation: bz-notice-in 0.35s cubic-bezier(0.34,1.56,0.64,1) !important;
    pointer-events: auto !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-error {
    border-left-color: var(--danger) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-info {
    border-left-color: var(--gold) !important;
}

@keyframes bz-notice-in {
    from { opacity: 0; transform: translateX(-50%) translateY(-14px); }
    to   { opacity: 1; transform: translateX(-50%) translateY(0); }
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-message .button,
.elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-info .button {
    background: var(--teal) !important;
    color: #fff !important;
    border: none !important;
    padding: 6px 14px !important;
    border-radius: 6px !important;
    font-weight: 800 !important;
    font-size: 11.5px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.07em !important;
    white-space: nowrap !important;
    flex-shrink: 0 !important;
    transition: background var(--t) !important;
    text-decoration: none !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-message .button:hover {
    background: var(--teal-dk) !important;
}

/* ════════════════════════════════════════════════════════════════════════════
   LAYOUT: flex row — cart form left, totals right
   ════════════════════════════════════════════════════════════════════════════ */
.elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    align-items: flex-start !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* ════════════════════════════════════════════════════════════════════════════
   CART FORM (left column)
   ════════════════════════════════════════════════════════════════════════════ */
.elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-cart-form {
    flex: 1 1 62% !important;
    min-width: 0 !important;
    background: var(--white) !important;
    border-radius: var(--r) !important;
    box-shadow: var(--shadow) !important;
    overflow: hidden !important;
    border: 1px solid var(--border) !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart {
    width: 100% !important;
    margin: 0 !important;
    border-collapse: collapse !important;
    table-layout: auto !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody {
    height: auto !important;
    min-height: 0 !important;
}

/* ── Table header ──────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart thead {
    background: var(--navy) !important;
    position: relative !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart thead::after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0; left: 0; right: 0;
    height: 2.5px;
    background: linear-gradient(90deg, var(--teal), var(--gold), var(--teal));
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart thead th {
    padding: 12px 10px !important;
    color: rgba(255,255,255,0.88) !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    font-size: 11px !important;
    letter-spacing: 0.12em !important;
    text-align: center !important;
    white-space: nowrap !important;
    border-right: 1px solid rgba(255,255,255,0.07) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart thead th:last-child {
    border-right: none !important;
}

/* ── Checkbox TH ──────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart thead th.col-select {
    width: 40px !important;
    padding: 12px 8px !important;
}

/* ── Buy Now TH ───────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart thead th.col-buy {
    width: 110px !important;
    padding: 12px 8px !important;
    text-align: center !important;
}

/* ── Body rows ─────────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.cart_item {
    border-bottom: 1px solid var(--border) !important;
    transition: background var(--t), box-shadow var(--t) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.cart_item:hover {
    background: #f0fffe !important;
    box-shadow: inset 3px 0 0 var(--teal) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.cart_item:nth-child(even) {
    background-color: #fafbfd !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.cart_item.bz-selected {
    background: #edfaf9 !important;
    box-shadow: inset 3px 0 0 var(--teal), inset 0 0 0 1px rgba(15,155,142,0.12) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody td {
    padding: 10px 10px !important;
    vertical-align: middle !important;
    text-align: center !important;
    border-right: 1px solid var(--border) !important;
    font-size: 14px !important;
    height: auto !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody td:last-child {
    border-right: none !important;
}

/* ── Checkbox TD ──────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.col-select {
    width: 40px !important;
    padding: 10px 8px !important;
    text-align: center !important;
    vertical-align: middle !important;
}

/* ── Custom checkbox ──────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-cbx {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    position: relative !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-cbx input[type="checkbox"] {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important; height: 0 !important;
    pointer-events: none !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-cbx-box {
    width: 19px !important; height: 19px !important;
    border: 2px solid #c0cfe0 !important;
    border-radius: 5px !important;
    background: #fff !important;
    display: flex !important;
    align-items: center !important; justify-content: center !important;
    transition: all 0.18s ease !important;
    flex-shrink: 0 !important;
    position: relative !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-cbx input:checked + .bz-cbx-box {
    background: var(--teal) !important;
    border-color: var(--teal) !important;
    box-shadow: 0 0 0 3px var(--teal-glow) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-cbx input.indeterminate + .bz-cbx-box {
    background: var(--gold) !important;
    border-color: var(--gold) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-cbx-box::after {
    content: '' !important;
    width: 5px !important; height: 9px !important;
    border: 2.5px solid #fff !important;
    border-top: none !important; border-left: none !important;
    transform: rotate(45deg) translateY(-1px) !important;
    opacity: 0 !important;
    transition: opacity 0.14s !important;
    position: absolute !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-cbx input:checked + .bz-cbx-box::after {
    opacity: 1 !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-cbx input.indeterminate + .bz-cbx-box::after {
    width: 9px !important; height: 0 !important;
    border: 2.5px solid #fff !important;
    border-right: none !important; border-top: none !important;
    transform: translateY(0) !important; opacity: 1 !important;
    top: 50% !important; left: 50% !important;
    translate: -50% -50% !important;
}

/* ── Remove button ──────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart a.remove {
    display: inline-flex !important;
    align-items: center !important; justify-content: center !important;
    width: 28px !important; height: 28px !important;
    background: transparent !important;
    color: var(--muted) !important;
    border: 1.5px solid #d0d9e8 !important;
    border-radius: 50% !important;
    font-size: 17px !important; font-weight: 700 !important;
    transition: all var(--t) !important;
    text-decoration: none !important;
    line-height: 1 !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart a.remove:hover {
    background: var(--danger) !important;
    color: #fff !important;
    border-color: var(--danger) !important;
    transform: scale(1.15) rotate(8deg) !important;
    box-shadow: 0 4px 12px rgba(230,57,70,0.35) !important;
}

/* ── Thumbnail ──────────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-thumbnail img {
    width: 62px !important; height: 62px !important;
    object-fit: cover !important;
    border: 2px solid var(--border) !important;
    border-radius: 8px !important;
    display: block !important;
    transition: transform var(--t), border-color var(--t), box-shadow var(--t) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-thumbnail img:hover {
    transform: scale(1.08) !important;
    border-color: var(--teal) !important;
    box-shadow: 0 4px 16px rgba(15,155,142,0.3) !important;
}

/* ── Product name ───────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-name {
    text-align: left !important;
    font-weight: 700 !important;
    font-size: 14px !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-name a {
    color: var(--navy) !important;
    text-decoration: none !important;
    transition: color var(--t) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-name a:hover {
    color: var(--teal-dk) !important;
}

/* ── Quantity ───────────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 .quantity input.qty {
    width: 54px !important; height: 34px !important;
    padding: 0 6px !important;
    text-align: center !important;
    font-weight: 800 !important; font-size: 14px !important;
    background: var(--off) !important;
    border: 1.5px solid var(--border) !important;
    border-radius: 6px !important;
    color: var(--navy) !important;
    transition: border-color var(--t), box-shadow var(--t) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .quantity input.qty:focus {
    outline: none !important;
    border-color: var(--teal) !important;
    box-shadow: 0 0 0 3px var(--teal-glow) !important;
    background: #fff !important;
}

/* ── Price ──────────────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-price .amount {
    font-weight: 700 !important; font-size: 14px !important;
    color: var(--muted) !important;
    white-space: nowrap !important;
}

/* ── Subtotal ───────────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-subtotal .amount {
    font-weight: 800 !important; font-size: 15px !important;
    color: var(--teal-dk) !important;
    background: var(--teal-glow) !important;
    padding: 3px 10px !important; border-radius: 5px !important;
    display: inline-block !important; white-space: nowrap !important;
}

/* ════════════════════════════════════════════════════════════════════════════
   BUG FIX #2 — Per-row: ONE "Buy Now" button only, NO Save for Later
   ════════════════════════════════════════════════════════════════════════════ */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.col-buy {
    width: 110px !important;
    padding: 8px !important;
    vertical-align: middle !important;
    text-align: center !important;
}

/* The single Buy Now button */
.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-btn-buy {
    display: inline-flex !important;
    align-items: center !important; justify-content: center !important;
    gap: 6px !important;
    width: 100px !important; height: 36px !important;
    background: linear-gradient(135deg, var(--teal) 0%, var(--teal-dk) 100%) !important;
    color: #fff !important;
    border: none !important;
    border-radius: 8px !important;
    font-size: 11.5px !important; font-weight: 900 !important;
    text-transform: uppercase !important; letter-spacing: 0.07em !important;
    cursor: pointer !important; white-space: nowrap !important;
    box-shadow: 0 3px 12px rgba(15,155,142,0.4) !important;
    transition: all 0.22s cubic-bezier(0.4,0,0.2,1) !important;
    position: relative !important; overflow: hidden !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-btn-buy i {
    font-size: 12px !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-btn-buy::before {
    content: '' !important;
    position: absolute !important;
    inset: 0 !important; left: -80% !important; width: 60% !important;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,0.25), transparent) !important;
    transition: left 0.45s ease !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-btn-buy:hover {
    background: linear-gradient(135deg, var(--teal-dk), #065f55) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 6px 20px rgba(15,155,142,0.55) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-btn-buy:hover::before { left: 130% !important; }

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-btn-buy:active {
    transform: translateY(0) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-btn-buy:disabled {
    opacity: 0.6 !important; cursor: not-allowed !important;
    transform: none !important; box-shadow: none !important;
}

/* processing state */
.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-btn-buy.bz-loading i { display: none !important; }
.elementor-7 .elementor-element.elementor-element-15cf9996 .bz-btn-buy.bz-loading::after {
    content: '' !important;
    width: 12px !important; height: 12px !important;
    border: 2px solid rgba(255,255,255,0.35) !important;
    border-top-color: #fff !important;
    border-radius: 50% !important;
    animation: bz-spin 0.55s linear infinite !important;
    flex-shrink: 0 !important;
}

@keyframes bz-spin { to { transform: rotate(360deg); } }

/* ── Actions row (coupon + update) ─────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.actions {
    background: var(--navy) !important;
    border-top: 2.5px solid var(--teal) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.actions td {
    padding: 12px 16px !important;
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    border: none !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .coupon {
    display: flex !important; gap: 6px !important; align-items: center !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .coupon input.input-text {
    height: 38px !important; width: 148px !important;
    border: 1.5px solid rgba(255,255,255,0.22) !important;
    border-radius: 7px !important; padding: 0 12px !important;
    font-weight: 600 !important; font-size: 13px !important;
    background: rgba(255,255,255,0.07) !important;
    color: #fff !important;
    transition: border-color var(--t), background var(--t) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .coupon input.input-text::placeholder { color: rgba(255,255,255,0.38) !important; }

.elementor-7 .elementor-element.elementor-element-15cf9996 .coupon input.input-text:focus {
    outline: none !important;
    border-color: var(--gold) !important;
    background: rgba(255,255,255,0.12) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .coupon button.button {
    height: 38px !important;
    background: var(--gold) !important; color: var(--navy) !important;
    border: none !important; padding: 0 16px !important;
    font-weight: 900 !important; font-size: 12px !important;
    border-radius: 7px !important; text-transform: uppercase !important;
    letter-spacing: 0.08em !important; white-space: nowrap !important;
    cursor: pointer !important;
    transition: background var(--t), transform var(--t), box-shadow var(--t) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .coupon button.button:hover {
    background: var(--gold-lt) !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 16px rgba(200,151,42,0.4) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart button[name="update_cart"] {
    height: 38px !important;
    background: transparent !important; color: rgba(255,255,255,0.82) !important;
    border: 1.5px solid rgba(255,255,255,0.28) !important;
    font-weight: 800 !important; font-size: 12px !important;
    padding: 0 18px !important; border-radius: 7px !important;
    text-transform: uppercase !important; letter-spacing: 0.06em !important;
    white-space: nowrap !important; cursor: pointer !important;
    transition: all var(--t) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart button[name="update_cart"]:hover {
    background: rgba(255,255,255,0.1) !important;
    border-color: var(--teal) !important; color: #fff !important;
}

/* ════════════════════════════════════════════════════════════════════════════
   CART TOTALS (right column)
   ════════════════════════════════════════════════════════════════════════════ */
.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals {
    flex: 0 0 32% !important;
    width: 32% !important; min-width: 230px !important; max-width: 340px !important;
    margin: 0 !important; box-sizing: border-box !important;
    position: sticky !important; top: 20px !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .cart_totals {
    background: var(--white) !important;
    border: 1px solid var(--border) !important;
    border-radius: var(--r) !important;
    box-shadow: var(--shadow) !important;
    padding: 0 !important; overflow: hidden !important;
    width: 100% !important; box-sizing: border-box !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .cart_totals h2 {
    background: var(--navy) !important; color: var(--white) !important;
    margin: 0 !important; padding: 14px 16px !important;
    font-size: 13px !important; font-weight: 900 !important;
    text-align: center !important; text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    border-bottom: 2.5px solid var(--teal) !important;
    white-space: nowrap !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shop_table.shop_table_responsive {
    width: 100% !important; margin: 0 !important;
    border-collapse: collapse !important; table-layout: fixed !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shop_table.shop_table_responsive tr {
    border-bottom: 1px solid var(--border) !important;
    transition: background var(--t) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shop_table.shop_table_responsive tr:hover {
    background: #f8fffe !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shop_table.shop_table_responsive th {
    padding: 12px 12px !important;
    background: var(--off) !important; font-weight: 800 !important;
    font-size: 11.5px !important; color: var(--muted) !important;
    text-transform: uppercase !important; letter-spacing: 0.08em !important;
    width: 45% !important;
    border-right: 1px solid var(--border) !important;
    white-space: nowrap !important; overflow-wrap: normal !important;
    word-break: normal !important; vertical-align: middle !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shop_table.shop_table_responsive td {
    padding: 12px 12px !important;
    font-weight: 700 !important; font-size: 13px !important;
    color: var(--text) !important; text-align: right !important;
    word-break: break-word !important; vertical-align: middle !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shop_table.shop_table_responsive .shipping td {
    font-size: 12px !important; color: var(--muted) !important;
    line-height: 1.5 !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shipping-calculator-button {
    color: var(--teal) !important; font-weight: 700 !important;
    font-size: 12px !important; text-decoration: none !important;
    transition: color var(--t) !important; display: inline-block !important;
    margin-top: 6px !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shipping-calculator-button:hover {
    color: var(--teal-dk) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .order-total {
    background: var(--gold-dim) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .order-total th {
    color: var(--navy) !important; font-weight: 900 !important;
    font-size: 13px !important; padding: 15px 12px !important;
    background: transparent !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .order-total td {
    padding: 15px 12px !important; background: transparent !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .order-total td .amount {
    color: var(--navy) !important; font-weight: 900 !important;
    font-size: 21px !important; white-space: nowrap !important;
}

/* ── Checkout button ─────────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 .wc-proceed-to-checkout {
    padding: 14px 14px !important;
    background: var(--off) !important;
    border-top: 1px solid var(--border) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .wc-proceed-to-checkout a.checkout-button {
    display: flex !important;
    align-items: center !important; justify-content: center !important;
    gap: 8px !important;
    width: 100% !important; box-sizing: border-box !important;
    background: linear-gradient(135deg, var(--teal), var(--teal-dk)) !important;
    color: var(--white) !important; font-weight: 900 !important;
    font-size: 13.5px !important; text-transform: uppercase !important;
    letter-spacing: 0.11em !important; padding: 15px 10px !important;
    text-align: center !important; border-radius: 9px !important;
    border: none !important;
    box-shadow: 0 4px 18px rgba(15,155,142,0.4) !important;
    transition: all var(--t) !important;
    text-decoration: none !important; white-space: nowrap !important;
    position: relative !important; overflow: hidden !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .wc-proceed-to-checkout a.checkout-button::before {
    content: '' !important;
    position: absolute !important;
    top: 0; left: -100% !important;
    width: 60%; height: 100% !important;
    background: linear-gradient(120deg, transparent, rgba(255,255,255,0.18), transparent) !important;
    transition: left 0.5s ease !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .wc-proceed-to-checkout a.checkout-button:hover {
    background: linear-gradient(135deg, var(--teal-dk), #065f55) !important;
    box-shadow: 0 8px 28px rgba(15,155,142,0.5) !important;
    transform: translateY(-2px) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .wc-proceed-to-checkout a.checkout-button:hover::before {
    left: 150% !important;
}

/* ── Shipping calculator ─────────────────────────────────────────────────── */
.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shipping-calculator-form input,
.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shipping-calculator-form select {
    border: 1.5px solid var(--border) !important;
    border-radius: 6px !important; padding: 7px 10px !important;
    font-size: 13px !important; width: 100% !important;
    margin-bottom: 6px !important; box-sizing: border-box !important;
    transition: border-color var(--t), box-shadow var(--t) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shipping-calculator-form input:focus,
.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shipping-calculator-form select:focus {
    outline: none !important;
    border-color: var(--teal) !important;
    box-shadow: 0 0 0 3px var(--teal-glow) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shipping-calculator-form button {
    background: var(--navy) !important; color: #fff !important;
    border: none !important; padding: 8px 16px !important;
    font-weight: 800 !important; font-size: 12px !important;
    border-radius: 6px !important; text-transform: uppercase !important;
    cursor: pointer !important; width: 100% !important;
    transition: background var(--t), box-shadow var(--t) !important;
}

.elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals .shipping-calculator-form button:hover {
    background: var(--teal-dk) !important;
    box-shadow: var(--shadow-h) !important;
}

/* ════════════════════════════════════════════════════════════════════════════
   RESPONSIVE — tablet ≤992px
   ════════════════════════════════════════════════════════════════════════════ */
@media screen and (max-width: 992px) {
    .elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce {
        flex-direction: column !important;
    }
    .elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-cart-form,
    .elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals {
        width: 100% !important;
        flex: 1 1 100% !important;
        max-width: 100% !important;
    }
    .elementor-7 .elementor-element.elementor-element-15cf9996 .cart-collaterals {
        position: static !important;
    }
}

/* ════════════════════════════════════════════════════════════════════════════
   RESPONSIVE — mobile ≤768px  (BEAUTIFUL card layout)
   ════════════════════════════════════════════════════════════════════════════ */
@media screen and (max-width: 768px) {

    /* notices stay fixed on mobile too */
    .elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-message,
    .elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-error,
    .elementor-7 .elementor-element.elementor-element-15cf9996 .woocommerce-info {
        top: 12px !important;
        width: calc(100vw - 24px) !important;
        min-width: 0 !important;
        max-width: calc(100vw - 24px) !important;
        font-size: 12px !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart thead { display: none !important; }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart,
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    /* Each cart row = card */
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.cart_item {
        display: grid !important;
        grid-template-columns: 30px 28px 72px 1fr !important;
        grid-template-rows: auto auto !important;
        column-gap: 10px !important;
        row-gap: 6px !important;
        padding: 12px 12px !important;
        margin-bottom: 10px !important;
        border: 1px solid var(--border) !important;
        border-radius: var(--r) !important;
        background: #fff !important;
        box-shadow: 0 2px 10px rgba(13,27,42,0.07) !important;
        width: 100% !important;
        box-sizing: border-box !important;
        position: relative !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.cart_item.bz-selected {
        border-color: var(--teal) !important;
        box-shadow: 0 2px 10px rgba(15,155,142,0.18), inset 3px 0 0 var(--teal) !important;
    }

    /* Column positions */
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.col-select {
        grid-column: 1 !important; grid-row: 1 !important;
        display: flex !important; align-items: center !important;
        justify-content: center !important;
        padding: 0 !important; border: none !important;
        width: auto !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-remove {
        grid-column: 2 !important; grid-row: 1 !important;
        display: flex !important; align-items: center !important;
        justify-content: center !important;
        padding: 0 !important; border: none !important;
        width: auto !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-thumbnail {
        grid-column: 3 !important; grid-row: 1 / 3 !important;
        display: flex !important; align-items: center !important;
        padding: 0 !important; border: none !important;
        width: auto !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-thumbnail img {
        width: 66px !important; height: 66px !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-name {
        grid-column: 4 !important; grid-row: 1 !important;
        display: flex !important; align-items: center !important;
        padding: 0 !important; border: none !important;
        font-size: 13.5px !important; font-weight: 800 !important;
        width: auto !important;
    }

    /* Bottom row: price + qty + subtotal + buy button */
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-price,
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-quantity,
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-subtotal,
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.col-buy {
        grid-column: 4 !important; grid-row: 2 !important;
        padding: 0 !important; border: none !important;
        width: auto !important;
        font-size: 12px !important;
    }

    /* Lay them inline */
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-price,
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-quantity,
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-subtotal,
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.col-buy {
        display: inline-flex !important;
        align-items: center !important;
        gap: 4px !important;
        vertical-align: middle !important;
    }

    /* The row-2 cells go into a flex container via the grid cell */
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.cart_item {
        /* override: stack row-2 items horizontally */
    }

    /* Simpler mobile: just show all cells as block in one column */
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody td {
        display: block !important;
        width: 100% !important;
        text-align: left !important;
        box-sizing: border-box !important;
        border: none !important;
    }

    /* Redo as simple block layout */
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.cart_item {
        display: block !important;
        padding: 12px !important;
        margin-bottom: 10px !important;
        border: 1px solid var(--border) !important;
        border-radius: var(--r) !important;
        background: #fff !important;
        box-shadow: 0 2px 10px rgba(13,27,42,0.07) !important;
        position: relative !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-remove {
        position: absolute !important;
        top: 10px !important; right: 48px !important;
        width: auto !important; padding: 0 !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.col-select {
        position: absolute !important;
        top: 10px !important; right: 10px !important;
        width: auto !important; padding: 0 !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-thumbnail {
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-name {
        font-size: 14px !important; font-weight: 800 !important;
        padding: 6px 0 4px 0 !important;
        color: var(--navy) !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-price::before,
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-quantity::before {
        content: attr(data-title) ": " !important;
        font-weight: 700 !important; font-size: 11px !important;
        text-transform: uppercase !important; letter-spacing: 0.07em !important;
        color: var(--muted) !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-price {
        display: flex !important; align-items: center !important;
        gap: 6px !important; padding: 3px 0 !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-quantity {
        display: flex !important; align-items: center !important;
        gap: 6px !important; padding: 3px 0 !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-subtotal {
        padding: 3px 0 !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.product-subtotal::before {
        content: "Total: " !important;
        font-weight: 700 !important; font-size: 11px !important;
        text-transform: uppercase !important; letter-spacing: 0.07em !important;
        color: var(--muted) !important;
    }

    /* Buy Now full width on mobile */
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart td.col-buy {
        padding: 8px 0 4px 0 !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 .bz-btn-buy {
        width: 100% !important; height: 38px !important;
        font-size: 12.5px !important;
    }

    /* Actions row mobile */
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.actions {
        display: flex !important;
        flex-direction: column !important;
        gap: 10px !important;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        padding: 0 !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart tbody tr.actions td {
        display: flex !important;
        flex-direction: column !important; gap: 8px !important;
        width: 100% !important; box-sizing: border-box !important;
        background: var(--navy) !important;
        border-radius: var(--r) !important;
        padding: 14px !important;
    }

    .elementor-7 .elementor-element.elementor-element-15cf9996 .coupon { width: 100% !important; flex-direction: column !important; }

    .elementor-7 .elementor-element.elementor-element-15cf9996 .coupon input.input-text,
    .elementor-7 .elementor-element.elementor-element-15cf9996 .coupon button.button,
    .elementor-7 .elementor-element.elementor-element-15cf9996 table.shop_table.cart button[name="update_cart"] {
        width: 100% !important;
    }
}/* End custom CSS */