.elementor-3111 .elementor-element.elementor-element-b55d307{--display:flex;--padding-top:50px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3111 .elementor-element.elementor-element-e4353d0{text-align:center;}.elementor-3111 .elementor-element.elementor-element-e4353d0 .elementor-heading-title{font-size:42px;font-weight:600;}.elementor-3111 .elementor-element.elementor-element-fde300d{--display:flex;}.elementor-3111 .elementor-element.elementor-element-bfbd626{--spacer-size:25px;}.elementor-3111 .elementor-element.elementor-element-c171c2e{--display:flex;}.elementor-3111 .elementor-element.elementor-element-ca23622{--display:flex;}.elementor-3111 .elementor-element.elementor-element-45714c5{text-align:center;}@media(max-width:1024px){.elementor-3111 .elementor-element.elementor-element-b55d307{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3111 .elementor-element.elementor-element-bfbd626{--spacer-size:0px;}}@media(max-width:767px){.elementor-3111 .elementor-element.elementor-element-b55d307{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-3111 .elementor-element.elementor-element-e4353d0 > .elementor-widget-container{padding:0px 25px 0px 25px;}.elementor-3111 .elementor-element.elementor-element-e4353d0 .elementor-heading-title{font-size:34px;}.elementor-3111 .elementor-element.elementor-element-bfbd626{--spacer-size:15px;}}/* Start custom CSS for woocommerce-cart, class: .elementor-element-3009a5c *//* --- GENERAL --- */

/* Completely hide sidebars and kill their columns */
body.woocommerce-cart .sidebar,
body.woocommerce-cart .elementor-sidebar,
body.woocommerce-cart aside,
body.woocommerce-cart .elementor-column.elementor-col-25, /* Common 25% sidebar */
body.woocommerce-cart .elementor-widget-sidebar,
body.woocommerce-cart .widget-area {
    display: none !important;
    width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    background: none !important;
    box-shadow: none !important;
}
.content-area {
    border-right-width: 0px!important;
}

/* Expand main content full width */
body.woocommerce-cart .site-main,
body.woocommerce-cart .content-area,
body.woocommerce-cart .elementor-container,
body.woocommerce-cart .elementor-row,
body.woocommerce-cart .elementor-section {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 auto !important;
}


/* Make content full width */
body.woocommerce-cart .site-main,
body.woocommerce-checkout .site-main,
body.woocommerce-cart .content-area,
body.woocommerce-checkout .content-area,
body.woocommerce-cart .elementor-container,
body.woocommerce-checkout .elementor-container {
    width: 100% !important;
    max-width: 100% !important;
}

/* --- BASKET TABLE --- */

.woocommerce-cart table.shop_table {
    width: 100%;
    background: #222;
    border-radius: 8px;
    padding: 20px;
    border-collapse: collapse;
    color: #ffffff;
}

.woocommerce-cart table.shop_table th,
.woocommerce-cart table.shop_table td {
    padding: 14px 20px;
    border-bottom: 1px solid #444;
    text-align: left;
    vertical-align: middle;
    color: #ffffff !important; /* Force white */
}

.woocommerce-cart table.shop_table th {
    background-color: #2c2c2c;
    font-weight: bold;
    font-size: 16px;
    text-transform: uppercase;
}

/* Basket Links */
.woocommerce-cart table.shop_table a {
    color: #ffffff;
    text-decoration: none;
}

.woocommerce-cart table.shop_table a:hover {
    color: #b93238;
}

/* Last row no border */
.woocommerce-cart table.shop_table tbody tr:last-child td {
    border-bottom: none;
}

/* Row hover effect */
.woocommerce-cart-form__contents tr.cart_item:hover {
    background-color: #1a1a1a !important;
    transition: background-color 0.3s ease;
}

/* --- DELETE BUTTON --- */
.woocommerce-cart .product-remove a.remove {
    color: #b93238 !important;
    font-size: 24px;
    margin-right: 10px;
    transition: color 0.3s ease;
}
.woocommerce-cart .product-remove a.remove:hover {
    color: #ffffff !important;
}

/* --- QUANTITY FIELDS --- */
.woocommerce-cart .quantity input.qty {
    background: #2c2c2c;
    color: #ffffff;
    border: 1px solid #555;
    border-radius: 4px;
    padding: 8px;
    text-align: center;
    width: 60px;
}

.woocommerce-cart .quantity .plus,
.woocommerce-cart .quantity .minus {
    background: #b93238;
    color: #ffffff;
    border: none;
    padding: 6px 12px;
    border-radius: 4px;
    font-size: 18px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.woocommerce-cart .quantity .plus:hover,
.woocommerce-cart .quantity .minus:hover {
    background: #a12b30;
}

.woocommerce-cart .quantity .plus:focus,
.woocommerce-cart .quantity .minus:focus {
    outline: none;
}

/* --- UPDATE CART BUTTON --- */
.woocommerce-cart .actions .button {
    background-color: #555555;
    color: #ffffff;
    padding: 10px 20px;
    font-size: 14px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: background-color 0.3s ease;
}

.woocommerce-cart .actions .button:hover {
    background-color: #777777;
}

/* --- RETURN TO SHOP BUTTON --- */
.woocommerce-cart .return-to-shop .button {
    background-color: #b93238;
    color: #ffffff;
    padding: 12px 24px;
    font-size: 16px;
    font-weight: bold;
    border: none;
    border-radius: 6px;
    text-align: center;
    transition: background-color 0.3s ease;
}

.woocommerce-cart .return-to-shop .button:hover {
    background-color: #9c2830;
}

/* --- BASKET TOTAL (Cart Totals Section) --- */
.e-cart-totals.e-cart-section {
    background-color: #1a1a1a;
    padding: 30px;
    border-radius: 8px;
    margin-top: 30px;
}

/* Inner Box */
.cart-collaterals, .cart_totals {
    background: transparent;
    padding: 0;
    border-radius: 0;
    color: #ffffff;
}

/* Basket Total Heading */
.cart_totals h2 {
    color: #ffffff;
    font-size: 24px;
    font-weight: 600;
    text-align: left;
    margin: 0 0 20px 0;
    padding-left: 10px;
    background: none;
    border: none;
    text-transform: none;
}

/* Totals Table */
.cart_totals table.shop_table {
    width: 100%;
    border-collapse: collapse;
}

.cart_totals table.shop_table tr {
    border-bottom: 1px solid #333;
}

/* Force headings AND values white in totals */
.cart_totals table.shop_table th,
.cart_totals table.shop_table td,
.cart_totals table.shop_table .woocommerce-Price-amount,
.cart_totals table.shop_table .woocommerce-Price-currencySymbol,
.cart_totals table.shop_table strong {
    color: #ffffff !important;
}

/* Bold the total */
.cart_totals table.shop_table tr.order-total th,
.cart_totals table.shop_table tr.order-total td {
    font-weight: 600;
}

/* --- PROCEED TO CHECKOUT BUTTON --- */
.cart_totals .wc-proceed-to-checkout .checkout-button {
    background-color: #b93238 !important;
    color: #ffffff !important;
    padding: 12px 30px;
    font-size: 16px;
    font-weight: 600;
    text-transform: uppercase;
    border: none;
    border-radius: 6px;
    width: 100%;
    text-align: center;
    transition: background-color 0.3s ease, color 0.3s ease;
    margin-top: 20px;
    display: inline-block;
}

.cart_totals .wc-proceed-to-checkout .checkout-button:hover {
    background-color: #a12b30 !important;
    color: #ffffff !important;
}

/* --- EXTRA POLISH (To, From, Message on new lines) --- */
.woocommerce-cart-form__contents dl.variation dt,
.woocommerce-cart-form__contents dl.variation dd {
    display: block;
    width: 100%;
    margin: 0;
    padding: 4px 0;
    font-size: 13px;
    color: #cccccc;
}

.woocommerce-cart-form__contents dl.variation dd {
    padding-left: 12px;
}

.woocommerce-cart-form__contents dl.variation p,
.woocommerce-cart-form__contents dl.variation dd,
.woocommerce-cart-form__contents dl.variation dt {
    text-transform: none !important;
}
/* Heading inside Cart Totals */
.cart_totals h2, 
.cart-collaterals h2 {
    color: #ffffff !important;
    font-size: 24px !important;
    font-weight: 600 !important;
    margin-bottom: 20px !important;
    background: none !important;
    border: none !important;
    padding: 0 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    text-align: left !important;
}

/* Totals Table */
.cart_totals table, .cart-collaterals table {
    width: 100%;
    border-collapse: collapse;
}
/* Add left padding to the Basket Total heading */
.cart_totals h2,
.cart-collaterals h2 {
    padding-left: 10px !important;
}
.elementor-widget-woocommerce-cart .woocommerce .cart_totals table.shop_table td:before {
    color:#ffffff !important;
}/* End custom CSS */
/* Start custom CSS *//* Make product name links in the basket white */
.woocommerce-cart .cart_item a {
    color: #ffffff !important;
    text-decoration: none !important;
}

/* On hover, make them your red */
.woocommerce-cart .cart_item a:hover {
    color: #b93238 !important;
    text-decoration: underline !important;
}

/* Make the variation titles and values (To, From, Message) white */
.woocommerce-cart .cart_item dl.variation dt,
.woocommerce-cart .cart_item dl.variation dd,
.woocommerce-cart .cart_item dl.variation dd p {
    color: #ffffff !important;
}

/* Style the "Remove item" (×) link in the basket */
.woocommerce-cart .cart_item .product-remove a.remove {
    color: #ffffff !important;
    font-size: 22px !important;
    line-height: 1 !important;
    text-decoration: none !important;
    display: inline-block !important;
    transition: color 0.3s ease;
}

/* Hover effect for the remove (×) link */
.woocommerce-cart .cart_item .product-remove a.remove:hover {
    color: #b93238 !important;
}


/* Fix the layout of quantity box and plus/minus buttons */
.woocommerce-cart .cart_item .quantity {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;
}

/* Style the quantity input field */
.woocommerce-cart .cart_item .quantity input.qty {
    background-color: #ffffff !important;
    color: #000000 !important;
    font-size: 16px !important;
    text-align: center !important;
    padding: 8px !important;
    height: 44px !important;
    width: 70px !important;
    border: 1px solid #cccccc !important;
    border-radius: 6px !important;
    box-sizing: border-box !important;
}

/* Style the minus and plus buttons */
.woocommerce-cart .cart_item .quantity .minus,
.woocommerce-cart .cart_item .quantity .plus {
    background-color: #b93238 !important;
    color: #ffffff !important;
    border: none !important;
    padding: 8px 12px !important;
    font-size: 18px !important;
    line-height: 1 !important;
    border-radius: 6px !important;
    transition: background-color 0.3s ease, transform 0.3s ease;
    cursor: pointer;
}

/* Hover effect for +/- buttons */
.woocommerce-cart .cart_item .quantity .minus:hover,
.woocommerce-cart .cart_item .quantity .plus:hover {
    background-color: #9c2830 !important;
}

/* Smooth hover effect: slight lift */
.woocommerce-cart .cart_item .quantity .minus:hover,
.woocommerce-cart .cart_item .quantity .plus:hover {
    transform: translateY(-2px);
}
/* Replace focus outline on plus and minus buttons with a soft red glow */
.woocommerce-cart .cart_item .quantity .minus:focus,
.woocommerce-cart .cart_item .quantity .plus:focus {
    outline: none !important;
    box-shadow: 0 0 6px #b93238 !important;
    transition: box-shadow 0.3s ease;
}



/* Pulse animation for the Update Cart button when activated */
@keyframes pulse {
    0% { transform: scale(1); }
    50% { transform: scale(1.05); }
    100% { transform: scale(1); }
}

.woocommerce-cart .actions .button[name="update_cart"]:enabled {
    animation: pulse 1.2s infinite !important;
}

/* Style the Remove (×) button more attractively */
.woocommerce-cart .cart_item .product-remove a.remove {
    color: #ffffff !important;
    background-color: #b93238 !important;
    border-radius: 50% !important;
    width: 36px !important;
    height: 36px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 20px !important;
    text-decoration: none !important;
    transition: background-color 0.3s ease, transform 0.3s ease;
    margin-right: 12px !important; /* SPACE between delete button and thumbnail */
}

/* Hover effect for Remove (×) button */
.woocommerce-cart .cart_item .product-remove a.remove:hover {
    background-color: #9c2830 !important;
    transform: scale(1.1);
}

/* Space out the variation labels and content in the basket */
.woocommerce-cart .cart_item dl.variation {
    margin: 0;
}

.woocommerce-cart .cart_item dl.variation dt {
    font-weight: 600 !important;
    display: inline-block !important;
    margin-right: 6px !important;
}

.woocommerce-cart .cart_item dl.variation dd {
    display: inline-block !important;
    margin: 0 0 10px 0 !important;
}

.woocommerce-cart .cart_item dl.variation dd p {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Style the Update Basket button */
.woocommerce-cart .actions .button[name="update_cart"] {
    background-color: #b93238 !important;
    color: #ffffff !important;
    border: none !important;
    padding: 12px 28px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    border-radius: 6px !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
    transition: background-color 0.3s ease, transform 0.3s ease;
    display: inline-block !important;
    margin-top: 10px;
}

/* Hover and focus effect for the Update Basket button */
.woocommerce-cart .actions .button[name="update_cart"]:hover,
.woocommerce-cart .actions .button[name="update_cart"]:focus {
    background-color: #9c2830 !important;
    transform: translateY(-2px);
}

/* Make Price, Subtotal, and Currency Symbol white on the Basket page */
.woocommerce-cart .cart_item .product-price,
.woocommerce-cart .cart_item .product-subtotal,
.woocommerce-cart .cart_item .product-price .amount,
.woocommerce-cart .cart_item .product-subtotal .amount,
.woocommerce-cart .cart_item .product-price .woocommerce-Price-currencySymbol,
.woocommerce-cart .cart_item .product-subtotal .woocommerce-Price-currencySymbol {
    color: #ffffff !important;
}

/* Basket main container */
.e-cart__column-start {
    background-color: #000000 !important;
    padding: 30px !important; /* Increased padding */
    border: none !important;
    border-radius: 8px;
    overflow: hidden;
}

/* Shop table wrapper */
.e-shop-table {
    background-color: transparent !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Basket Table itself */
.woocommerce-cart-form__contents {
    width: 100%;
    background-color: transparent !important;
    border-collapse: separate !important;
    border-spacing: 0 15px; /* Space between product rows */
    padding: 20px !important; /* <<< Add internal padding here */
}

/* Each table row (product row) */
.woocommerce-cart-form__contents tr.cart_item {
    background-color: #111111 !important;
    border-radius: 6px;
    overflow: hidden;
}

/* Each cell inside the table */
.woocommerce-cart-form__contents td {
    padding: 15px 12px !important; /* More generous padding */
    vertical-align: middle !important;
    color: #ffffff !important;
    border: none !important;
}

/* Table headers (Product, Price, etc.) */
.woocommerce-cart-form__contents thead th {
    color: #ffffff !important;
    font-weight: 600;
    background-color: #000000 !important;
    padding: 15px 12px !important;
    border: none;
}

/* Thumbnail images */
.woocommerce-cart-form__contents .product-thumbnail img {
    max-width: 80px;
    height: auto;
    border-radius: 6px;
}

/* Remove button (×) spacing */
.woocommerce-cart-form__contents .product-remove {
    padding-left: 10px !important;
    padding-right: 10px !important;
}

/* Coupon section */
.coupon.e-cart-section.shop_table {
    background-color: transparent !important;
    padding: 20px 0 0 0 !important;
}

/* Coupon input and button */
.coupon-col-start input#coupon_code {
    background-color: #ffffff;
    color: #000000;
    padding: 10px;
    border-radius: 4px;
    border: none;
}

.coupon-col-end button.e-apply-coupon {
    background-color: #b93238;
    color: #ffffff;
    padding: 10px 20px;
    border: none;
    border-radius: 4px;
    font-weight: 600;
    transition: background-color 0.3s ease;
}

.coupon-col-end button.e-apply-coupon:hover {
    background-color: #991e2b;
}

/* Remove unwanted borders */
.shop_table {
    border: none !important;
    box-shadow: none !important;
}

/* Style the Continue Shopping link */
.continue-shopping-link {
    display: inline-block;
    color: #000000;
    font-size: 18px;
    text-decoration: none;
    transition: color 0.3s ease;
}

/* Hover effect */
.continue-shopping-link:hover {
    color: #b93238; /* Your custom red */
}/* End custom CSS */