.elementor-14 .elementor-element.elementor-element-a4e3676{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-14 .elementor-element.elementor-element-b1a970c .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:600;color:#000000;}.elementor-14 .elementor-element.elementor-element-2769743{--update-cart-automatically-display:none;--sections-title-color:#000000;}.elementor-14 .elementor-element.elementor-element-24c31e1{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-14 .elementor-element.elementor-element-7d8ba7a .elementor-icon-wrapper{text-align:center;}.elementor-14 .elementor-element.elementor-element-7d8ba7a.elementor-view-stacked .elementor-icon{background-color:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-7d8ba7a.elementor-view-framed .elementor-icon, .elementor-14 .elementor-element.elementor-element-7d8ba7a.elementor-view-default .elementor-icon{color:#E6E6E6;border-color:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-7d8ba7a.elementor-view-framed .elementor-icon, .elementor-14 .elementor-element.elementor-element-7d8ba7a.elementor-view-default .elementor-icon svg{fill:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-6693227 .elementor-icon-wrapper{text-align:center;}.elementor-14 .elementor-element.elementor-element-6693227.elementor-view-stacked .elementor-icon{background-color:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-6693227.elementor-view-framed .elementor-icon, .elementor-14 .elementor-element.elementor-element-6693227.elementor-view-default .elementor-icon{color:#E6E6E6;border-color:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-6693227.elementor-view-framed .elementor-icon, .elementor-14 .elementor-element.elementor-element-6693227.elementor-view-default .elementor-icon svg{fill:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-3c3ac64 .elementor-icon-wrapper{text-align:center;}.elementor-14 .elementor-element.elementor-element-3c3ac64.elementor-view-stacked .elementor-icon{background-color:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-3c3ac64.elementor-view-framed .elementor-icon, .elementor-14 .elementor-element.elementor-element-3c3ac64.elementor-view-default .elementor-icon{color:#E6E6E6;border-color:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-3c3ac64.elementor-view-framed .elementor-icon, .elementor-14 .elementor-element.elementor-element-3c3ac64.elementor-view-default .elementor-icon svg{fill:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-7295ba7{--display:grid;--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(2, 1fr);--grid-auto-flow:row;}.elementor-14 .elementor-element.elementor-element-83e61f0 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:600;color:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-2d61d9b .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:600;color:#E6E6E6;}.elementor-14 .elementor-element.elementor-element-9759047 .elementor-heading-title{font-family:"Roboto", Sans-serif;font-weight:600;color:#E6E6E6;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-14 .elementor-element.elementor-element-24c31e1{--grid-auto-flow:row;}.elementor-14 .elementor-element.elementor-element-7295ba7{--grid-auto-flow:row;}}@media(max-width:767px){.elementor-14 .elementor-element.elementor-element-b1a970c{text-align:center;}.elementor-14 .elementor-element.elementor-element-b1a970c .elementor-heading-title{font-size:18px;letter-spacing:3px;}.elementor-14 .elementor-element.elementor-element-24c31e1{--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-14 .elementor-element.elementor-element-7295ba7{--e-con-grid-template-columns:repeat(3, 1fr);--e-con-grid-template-rows:repeat(1, 1fr);--grid-auto-flow:row;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-14 .elementor-element.elementor-element-83e61f0{text-align:center;}.elementor-14 .elementor-element.elementor-element-83e61f0 .elementor-heading-title{font-size:10px;letter-spacing:1px;}.elementor-14 .elementor-element.elementor-element-2d61d9b{text-align:center;}.elementor-14 .elementor-element.elementor-element-2d61d9b .elementor-heading-title{font-size:10px;letter-spacing:1px;}.elementor-14 .elementor-element.elementor-element-9759047{text-align:center;}.elementor-14 .elementor-element.elementor-element-9759047 .elementor-heading-title{font-size:10px;letter-spacing:1px;}}/* Start custom CSS for woocommerce-cart, class: .elementor-element-2769743 *//* --- 1. RESET TABLE TO CARDS --- */
/* Hide the desktop table headers */
.elementor-14 .elementor-element.elementor-element-2769743 table.shop_table thead {
    display: none !important;
}

/* Make each row a "Card" */
.elementor-14 .elementor-element.elementor-element-2769743 table.shop_table tr.cart_item {
    display: grid !important;
    grid-template-columns: 90px 1fr; /* Image width | Content width */
    grid-template-rows: auto auto; /* Title area | Price/Qty area */
    background: #fff;
    border: 1px solid #eee;
    box-shadow: 0 4px 10px rgba(0,0,0,0.03);
    border-radius: 12px;
    padding: 15px;
    margin-bottom: 15px;
    position: relative;
    column-gap: 15px;
}

/* --- 2. PRODUCT IMAGE (Left Side) --- */
.elementor-14 .elementor-element.elementor-element-2769743 .product-thumbnail {
    grid-row: 1 / -1; /* Span all rows */
    display: block !important;
    width: 100% !important;
    border: none !important;
    padding: 0 !important;
}
.elementor-14 .elementor-element.elementor-element-2769743 .product-thumbnail img {
    width: 100% !important;
    height: auto;
    border-radius: 8px;
    object-fit: cover;
}
/* Hide the "Product:" label if Elementor adds it */
.elementor-14 .elementor-element.elementor-element-2769743 .product-thumbnail:before, 
.elementor-14 .elementor-element.elementor-element-2769743 .product-name:before,
.elementor-14 .elementor-element.elementor-element-2769743 .product-quantity:before,
.elementor-14 .elementor-element.elementor-element-2769743 .product-subtotal:before {
    content: none !important;
}

/* --- 3. TITLE & REMOVE BUTTON (Top Area) --- */
.elementor-14 .elementor-element.elementor-element-2769743 .product-name {
    grid-column: 2;
    display: block !important;
    padding: 0 !important;
    border: none !important;
    margin-bottom: 5px;
    padding-right: 25px !important; /* Space for X button */
}
.elementor-14 .elementor-element.elementor-element-2769743 .product-name a {
    font-weight: 700;
    font-size: 14px;
    color: #333;
    line-height: 1.4;
    text-decoration: none;
}

/* The 'X' Remove Button */
.elementor-14 .elementor-element.elementor-element-2769743 .product-remove {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 0 !important;
    border: none !important;
    width: auto !important;
}
.elementor-14 .elementor-element.elementor-element-2769743 .product-remove a {
    font-size: 18px !important;
    color: #bbb !important;
    background: transparent !important;
    line-height: 1;
}
.elementor-14 .elementor-element.elementor-element-2769743 .product-remove a:hover {
    color: #ff0000 !important;
    background: transparent !important;
}

/* --- 4. QUANTITY & PRICE (Bottom Row) --- */

/* Quantity Input */
.elementor-14 .elementor-element.elementor-element-2769743 .product-quantity {
    grid-column: 2;
    display: flex !important;
    align-items: center;
    border: none !important;
    padding: 0 !important;
    align-self: end;
}
/* Add the "Qty" text label */
.elementor-14 .elementor-element.elementor-element-2769743 .product-quantity:prepend {
    content: "Qty"; 
}
.elementor-14 .elementor-element.elementor-element-2769743 .quantity input.qty {
    height: 35px !important;
    width: 45px !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    padding: 0 !important;
    text-align: center;
    margin-left: 8px; /* Space between "Qty" label and box */
}
/* Fake the "Qty" text using pseudo-element if needed */
.elementor-14 .elementor-element.elementor-element-2769743 .product-quantity .quantity:before {
    content: "Qty";
    margin-right: 5px;
    color: #999;
    font-size: 13px;
}

/* Price */
.elementor-14 .elementor-element.elementor-element-2769743 .product-subtotal {
    grid-column: 2;
    display: block !important;
    border: none !important;
    padding: 0 !important;
    text-align: right;
    align-self: end;
}
.elementor-14 .elementor-element.elementor-element-2769743 .product-subtotal .amount {
    font-weight: 800;
    font-size: 16px;
    color: #000;
}
/* Hide Unit Price (optional, to match reference which shows just one price) */
.elementor-14 .elementor-element.elementor-element-2769743 .product-price {
    display: none !important;
}

/* --- 5. CHECKOUT SECTION & BUTTON --- */
.elementor-14 .elementor-element.elementor-element-2769743 .cart-collaterals {
    background: #fff;
    margin-top: 20px;
    border-top: 2px solid #000; /* Distinct separation */
}
.elementor-14 .elementor-element.elementor-element-2769743 .wc-proceed-to-checkout {
    padding: 20px 0;
}
.elementor-14 .elementor-element.elementor-element-2769743 .checkout-button {
    background-color: #FFC107 !important; /* The Yellow Color */
    color: #000 !important;
    font-weight: 700 !important;
    text-transform: uppercase;
    border-radius: 5px !important;
    width: 100%;
    padding: 15px !important;
}
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals h2 {
    display: none; /* Hides "Cart Totals" title if you want it cleaner */
}

/* Hide Shipping Row in Cart Totals */
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals tr.shipping {
    display: none !important;
}

/* Optional: If there is a shipping calculator text/link below, hide that too */
.elementor-14 .elementor-element.elementor-element-2769743 .shipping-calculator-button {
    display: none !important;
}
.elementor-14 .elementor-element.elementor-element-2769743 .shipping-calculator-form {
    display: none !important;
}




/* --- 1. HIDE UNWANTED TOTALS --- */
/* Hides the Subtotal row in the bottom summary */
.elementor-14 .elementor-element.elementor-element-2769743 .cart-subtotal {
    display: none !important;
}
/* Hides Shipping row if present */
.elementor-14 .elementor-element.elementor-element-2769743 .shipping {
    display: none !important;
}

/* --- 2. CARD LAYOUT (Matches Reference) --- */
.elementor-14 .elementor-element.elementor-element-2769743 table.shop_table tr.cart_item {
    display: grid !important;
    /* Grid: Image Column | Content Column */
    grid-template-columns: 80px 1fr; 
    /* Grid Rows: Title Area | Qty & Price Area */
    grid-template-rows: auto auto; 
    background: #fff;
    border: 1px solid #eee;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
    border-radius: 12px;
    padding: 15px;
    margin-bottom: 15px;
    column-gap: 15px;
    align-items: start;
    position: relative;
}

/* --- 3. IMAGE (Left Side) --- */
.elementor-14 .elementor-element.elementor-element-2769743 .product-thumbnail {
    grid-column: 1;
    grid-row: 1 / span 2; /* Image spans both height rows */
    width: 100% !important;
    border: none !important;
    padding: 0 !important;
}
.elementor-14 .elementor-element.elementor-element-2769743 .product-thumbnail img {
    border-radius: 8px;
    width: 100%;
    height: auto;
    object-fit: cover;
}
/* Clean up Elementor labels */
.elementor-14 .elementor-element.elementor-element-2769743 td:before { 
    content: none !important; 
}

/* --- 4. TITLE (Top Right) --- */
.elementor-14 .elementor-element.elementor-element-2769743 .product-name {
    grid-column: 2;
    grid-row: 1;
    display: block !important;
    padding: 0 25px 5px 0 !important; /* Right padding for X button */
    margin: 0 !important;
    border: none !important;
}
.elementor-14 .elementor-element.elementor-element-2769743 .product-name a {
    font-weight: 600;
    font-size: 14px;
    color: #333;
    line-height: 1.3;
}

/* The 'X' Remove Button (Top Right Corner) */
.elementor-14 .elementor-element.elementor-element-2769743 .product-remove {
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 0 !important;
    border: none !important;
    line-height: 1;
}

/* --- 5. QTY & PRICE (Bottom Row) --- */

/* Quantity - Aligned Left under Title */
.elementor-14 .elementor-element.elementor-element-2769743 .product-quantity {
    grid-column: 2;
    grid-row: 2;
    justify-self: start; /* Pushes it to the left */
    align-self: end;
    border: none !important;
    padding: 0 !important;
    display: flex;
    align-items: center;
    margin-top: 10px;
}
/* "Qty" Label styling */
.elementor-14 .elementor-element.elementor-element-2769743 .product-quantity:prepend { content: "Qty"; } /* Fallback */
.elementor-14 .elementor-element.elementor-element-2769743 .quantity:before {
    content: "Qty";
    margin-right: 8px;
    color: #999;
    font-size: 13px;
}
.elementor-14 .elementor-element.elementor-element-2769743 .quantity input.qty {
    height: 20px !important;
    width: 30px !important;
    border: 1px solid #ddd !important;
    border-radius: 4px !important;
    padding: 0 !important;
    text-align: center;
    font-size: 12px;
}

/* Price - Aligned Right under Title */
.elementor-14 .elementor-element.elementor-element-2769743 .product-subtotal {
    grid-column: 2;
    grid-row: 2;
    justify-self: end; /* Pushes it to the right */
    align-self: end; /* Aligns bottom with Qty input */
    border: none !important;
    padding: 0 !important;
}
.elementor-14 .elementor-element.elementor-element-2769743 .product-subtotal .amount {
    font-weight: 700;
    font-size: 14px;
    color: #000;
}

/* --- 6. CHECKOUT TOTALS --- */
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals {
    border: none !important;
    padding-top: 10px;
}
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals th {
    font-size: 12px;
    color: #666;
    font-weight: normal;
}
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals .order-total .amount {
    font-size: 20px;
    font-weight: 800;
    color: #000;
}

/* --- FIX MISSING TOTAL TEXT --- */

/* 1. Force the Total Row to be a Flex Container (Side-by-Side) */
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals tr.order-total {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding-top: 15px;
    margin-top: 10px;
    border-top: 1px solid #eaeaea !important; /* Clean thin divider */
}

/* 2. Style the "Total" Label (Left Side) */
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals tr.order-total th {
    display: block !important; 
    color: #333 !important;      /* Dark Grey Color */
    font-size: 16px !important;
    font-weight: 700 !important; /* Bold */
    text-transform: capitalize;  /* "Total" instead of TOTAL */
    border: none !important;
    padding: 0 !important;
    text-align: left !important;
}

/* 3. Style the Price (Right Side) */
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals tr.order-total td {
    display: block !important;
    text-align: right !important;
    border: none !important;
    padding: 0 !important;
}
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals tr.order-total .amount {
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #000 !important;
}

/* 4. Ensure Subtotal is definitely hidden (if you still see it) */
.elementor-14 .elementor-element.elementor-element-2769743 .cart-subtotal {
    display: none !important;
}


/* --- HIDE BORDER LINE ABOVE TOTAL --- */
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals tr.order-total {
    border-top: none !important; 
    border-bottom: none !important;
}

/* Ensure individual cells don't show borders either */
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals th, 
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals td {
    border-top: none !important;
    border-bottom: none !important;
}

/* If there is a separate separator element, hide it */
.elementor-14 .elementor-element.elementor-element-2769743 .cart_totals .sep {
    display: none !important;
}




/* --- PRODUCT TITLE STYLE --- */
.elementor-14 .elementor-element.elementor-element-2769743 .product-name a {
    color: #525252 !important;      /* Changes color to Black */
    font-size: 12px !important;     /* Adjust size (try 14px, 15px, or 16px) */
    font-weight: 500 !important;    /* 700 is Bold, 500 is Medium */
    line-height: 1.3 !important;    /* Space between lines of text */
    text-decoration: none !important; /* Removes underline if present */
}

/* Optional: Color when hovering over the title */
.elementor-14 .elementor-element.elementor-element-2769743 .product-name a:hover {
    color: #444445 !important;      /* Slightly lighter grey on hover */
}/* End custom CSS */