.elementor-16 .elementor-element.elementor-element-48fffb7e{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:200px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-48fffb7e:not(.elementor-motion-effects-element-type-background), .elementor-16 .elementor-element.elementor-element-48fffb7e > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-16 .elementor-element.elementor-element-aea38e2{--display:flex;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:30px 0px;--row-gap:30px;--column-gap:0px;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:80px;--padding-left:0px;--padding-right:0px;}.elementor-16 .elementor-element.elementor-element-aea38e2:not(.elementor-motion-effects-element-type-background), .elementor-16 .elementor-element.elementor-element-aea38e2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}.elementor-16 .elementor-element.elementor-element-8e4ca00{--display:flex;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--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-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-16 .elementor-element.elementor-element-b720509 .elementor-heading-title{font-family:"GFS Didot", Sans-serif;font-size:64px;font-weight:500;color:#FFFFFF;}.elementor-16 .elementor-element.elementor-element-8f1ac7b{--display:flex;--justify-content:center;--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-16 .elementor-element.elementor-element-8f1ac7b:not(.elementor-motion-effects-element-type-background), .elementor-16 .elementor-element.elementor-element-8f1ac7b > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#000000;}@media(max-width:767px){.elementor-16 .elementor-element.elementor-element-8e4ca00{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-16 .elementor-element.elementor-element-8f1ac7b{--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:15px;--padding-right:15px;}.elementor-16 .elementor-element.elementor-element-cd9ea2f{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}.elementor-16 .elementor-element.elementor-element-826bdd0{width:var( --container-widget-width, 90% );max-width:90%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 100px 0px;--container-widget-width:90%;--container-widget-flex-grow:0;}}@media(min-width:768px){.elementor-16 .elementor-element.elementor-element-8e4ca00{--width:95%;}.elementor-16 .elementor-element.elementor-element-8f1ac7b{--width:95%;}}/* Start custom CSS for shortcode, class: .elementor-element-cd9ea2f *//* ==========================================================
   GLOBAL LAYOUT (Cart Left + Order Summary Right)
========================================================== */
.woocommerce {
    display: flex;
    width: 100% !important;
    justify-content: center;
    gap: 30px;
}

.woocommerce-cart-form {
    width: 70% !important;
}

.cart-collaterals {
    width: 30% !important;
}

.cart_totals {
    width: 90% !important;
}

/* ==========================================================
   REMOVE TABLE HEADER
========================================================== */
.woocommerce-cart table.shop_table thead {
    display: none !important;
}

/* ==========================================================
   CART ITEM → CARD STYLE (DO NOT BREAK TABLE STRUCTURE)
========================================================== */
.cart_item {
    background: linear-gradient(90deg, #1e1e1e, #121212);
    padding: 16px 18px !important;
    margin-bottom: 15px !important;
    border-radius: 14px;
    box-shadow: 0 0 8px rgba(255,255,255,0.08);
    position: relative;

    /* Flex layout replacing table visuals */
    display: flex !important;
    align-items: center !important;
    gap: 20px !important;
    height: 150px !important;
}

/* Remove default td borders/background */
.cart_item td {
    border: none !important;
    background: none !important;
    padding: 0 !important;

    display: flex !important;
}

/* ==========================================================
   COLUMN WIDTHS (MATCH REFERENCE)
========================================================== */
.product-remove { width: 32px !important; }
.product-thumbnail { width: 70px !important; }
.product-name { flex: 1 !important; }
.product-quantity { width: 120px !important; justify-content: center !important; }
.product-subtotal { width: 90px !important; justify-content: flex-end !important; }

/* ==========================================================
   REMOVE BUTTON
========================================================== */
td.product-remove a.remove {
    font-size: 26px !important;
    color: #ff4444 !important;
}

/* ==========================================================
   PRODUCT IMAGE
========================================================== */
td.product-thumbnail img {
    height: 65px !important;
    width: 65px !important;
    object-fit: cover;
    border-radius: 10px;
}

/* ==========================================================
   PRODUCT NAME + PRICE (STACKED)
========================================================== */
td.product-name {
    display: flex !important;
    flex-direction: column !important;
    gap: 4px;
}

td.product-name a {
    color: #fff !important;
    font-size: 16px !important;
    font-weight: 500 !important;
}

.product-price {
    display: flex !important;
    align-items: center !important;
}

.product-price span.amount {
    color: #d5817a !important;
    font-size: 14px !important;
    font-weight: 500 !important;
}

/* ==========================================================
   QUANTITY SECTION (MINUS • NUMBER • PLUS)
========================================================== */
.product-quantity .quantity {
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
    position: relative;
}

/* Minus Button */
.product-quantity .quantity::before {
    content: "-";
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: rgba(255,255,255,0.05);
    border: 1px solid rgba(255,255,255,0.15);
    color: #b5b5b5;
    font-size: 22px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

/* Plus Button */
.product-quantity .quantity::after {
    content: "+";
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: #d5817a;
    color: #fff;
    font-size: 22px;
    display: flex;
    justify-content: center;
    align-items: center;
    cursor: pointer;
}

/* Number Input */
.product-quantity input.qty {
    width: 40px !important;
    text-align: center !important;
    background: transparent !important;
    border: none !important;
    color: #fff !important;
    font-weight: 500;
}

/* Hide number arrows */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none !important;
}
input[type=number] {
    -moz-appearance: textfield !important;
}

/* ==========================================================
   SUBTOTAL (RIGHT ALIGNED)
========================================================== */
td.product-subtotal span.amount {
    color: #fff !important;
    font-size: 15px !important;
    font-weight: 500 !important;
}

/* ==========================================================
   COUPON SECTION
========================================================== */
.woocommerce-cart .coupon {
    display: flex !important;
    gap: 12px !important;
    margin-top: 10px;
}

.woocommerce-cart .coupon input {
    background: #111 !important;
    border-radius: 12px !important;
    padding: 12px 16px !important;
    border: 1px solid #444 !important;
    color: #fff !important;
}

.woocommerce-cart .coupon button {
    background: #d6b06c !important;
    color: #000 !important;
    border-radius: 12px !important;
    padding: 12px 20px !important;
    font-weight: 500 !important;
}

/* Update Cart button */
button[name="update_cart"] {
    background: #1f1f1f !important;
    border-radius: 12px !important;
    padding: 12px 22px;
    font-weight: 500 !important;
    color: #fff !important;
}

/* ==========================================================
   ORDER SUMMARY (RIGHT SIDE BOX)
========================================================== */
.cart_totals {
    background: #111 !important;
    padding: 25px !important;
    border-radius: 20px !important;
    width: 380px;
    box-shadow: 0 0 12px rgba(255,255,255,0.05);
    color: #ffffff;
}

.cart_totals h2 {
    color: #ffffff !important;
    font-size: 18px !important;
    margin-bottom: 15px !important;
}

.cart-subtotal td .woocommerce-Price-amount{
    font-weight: 500 !important;
}

/*Product Order Total*/
.order-total td .woocommerce-Price-amount{
    font-weight: 500 !important;
}

/* Proceed button */
.wc-proceed-to-checkout a.checkout-button {
    background: #d5b26d !important;
    color: #ffffff !important;
    border-radius: 10px !important;
    padding: 14px !important;
    font-weight: 500 !important;
    text-align: center;
}


/*Button CSS*/
/* Create real clickable buttons */
.product-quantity .quantity {
    position: relative;
}

/* minus */
.product-quantity .minus-btn,
.product-quantity .plus-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 34px;
    height: 34px;
    border-radius: 50%;
    cursor: pointer;
    z-index: 10;
}

/* Position minus */
.product-quantity .minus-btn {
    left: 0;
    top: 0;
}

/* Position plus */
.product-quantity .plus-btn {
    right: 0;
    top: 0;
}

.minus-btn,
.plus-btn {
    position: absolute;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    cursor: pointer;
    z-index: 999;
}

.minus-btn { left: 0; top: 50%; transform: translateY(-50%); }
.plus-btn  { right: 0; top: 50%; transform: translateY(-50%); }


/*Display Message*/
.woocommerce-message {
    display: none !important;
}


/* Actions*/
tr .actions {
    display: none !important;
}


/* Product subtotal*/
.product-subtotal .woocommerce-Price-amount bdi {
    display: none !important;
}
 
 
 
 
 
/* ==========================================================
   FIXED RESPONSIVE CART — SYNCHRONIZED WITH JS LOGIC
   Support for: dynamic +/- buttons, subtotal removal, empty-cart UI
========================================================== */


/* ===================== TABLET (max-width: 1024px) ===================== */
@media (max-width: 1024px) {

    .woocommerce {
        flex-direction: column !important;
        gap: 25px !important;
    }

    .woocommerce-cart-form,
    .cart-collaterals,
    .cart_totals {
        width: 100% !important;
    }

    /* CART ITEM → Horizontal card */
    .cart_item {
        padding: 18px !important;
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 18px !important;
    }

    /* Thumbnail stays left */
    .product-thumbnail {
        width: 70px !important;
        justify-content: flex-start !important;
    }

    /* Product name block */
    td.product-name {
        flex: 1 !important;
        align-items: flex-start !important;
    }

    /* Hide automatic "Price:" injected by WooCommerce */
    .product-price,
    .product-name .amount,
    .product-name strong {
        display: none !important;
    }

    /* Quantity block */
    .product-quantity {
        width: auto !important;
        justify-content: flex-start !important;
    }

    /* Quantity inner */
    .product-quantity .quantity {
        position: relative;
        display: flex !important;
        gap: 10px !important;
        align-items: center !important;
    }

    /* *** FIX JS CLICK BLOCKERS (TABLET) *** */
    .product-quantity .quantity::before,
    .product-quantity .quantity::after {
        display: none !important;
        content: "" !important;
        pointer-events: none !important;
    }

    .minus-btn,
    .plus-btn {
        position: relative !important;
        z-index: 1000 !important;
        pointer-events: auto !important;
        transform: none !important;
    }

    /* Subtotal removed by JS → ensure layout stays intact */
    td.product-subtotal {
        display: none !important;
    }
}



/* ===================== MOBILE (max-width: 768px) ===================== */
@media (max-width: 768px) {

    /* Card becomes vertical */
    .cart_item {
        flex-direction: column !important;
        align-items: flex-start !important;
        padding: 14px !important;
        gap: 12px !important;
    }

    /* Image full width alignment */
    .product-thumbnail {
        width: 100% !important;
        justify-content: flex-start !important;
    }

    td.product-thumbnail img {
        width: 80px !important;
        height: 80px !important;
        border-radius: 12px;
    }

    /* Name section full width */
    td.product-name {
        width: 100% !important;
        align-items: flex-start !important;
        gap: 4px !important;
    }

    td.product-name a {
        font-size: 16px !important;
    }

    /* Hide Woo labels */
    .product-name strong,
    .product-price,
    .product-quantity label {
        display: none !important;
    }

    /* Quantity full width */
    .product-quantity {
        width: 100% !important;
        justify-content: flex-start !important;
    }

    .product-quantity .quantity {
        display: flex !important;
        align-items: center !important;
        gap: 8px !important;
        position: relative !important;
    }

    /* *** FIX JS CLICK BLOCKERS (MOBILE) *** */
    .product-quantity .quantity::before,
    .product-quantity .quantity::after {
        display: none !important;
        content: "" !important;
        pointer-events: none !important;
    }

    .minus-btn,
    .plus-btn {
        width: 34px !important;
        height: 34px !important;
        position: relative !important;
        z-index: 2000 !important;
        pointer-events: auto !important;
        transform: none !important;
    }

    .product-quantity .qty {
        width: 38px !important;
        font-size: 16px !important;
        text-align: center !important;
    }

    /* REMOVE (X) stays bottom-right */
    .product-remove {
        width: 100% !important;
        display: flex !important;
        justify-content: flex-end !important;
    }

    /* Subtotal removed by JS */
    td.product-subtotal {
        display: none !important;
    }

    /* Coupon → stacked */
    .woocommerce-cart .coupon {
        flex-direction: column !important;
        gap: 12px !important;
        width: 100% !important;
    }

    .woocommerce-cart .coupon input,
    .woocommerce-cart .coupon button {
        width: 100% !important;
    }

    button[name="update_cart"] {
        width: 100% !important;
    }

    /* Order Summary full-width */
    .cart_totals {
        width: 100% !important;
        padding: 20px !important;
    }
}



/* ===================== SMALL MOBILE (max-width: 480px) ===================== */
@media (max-width: 480px) {

    .cart_item {
        padding: 10px !important;
        gap: 10px !important;
    }

    td.product-thumbnail img {
        width: 65px !important;
        height: 65px !important;
    }

    td.product-name a {
        text-align: left !important;
        font-size: 15px !important;
    }

    .minus-btn,
    .plus-btn {
        width: 30px !important;
        height: 30px !important;
        z-index: 2000 !important;
        pointer-events: auto !important;
    }

    .product-quantity .qty {
        width: 30px !important;
    }

    .wc-proceed-to-checkout a.checkout-button {
        padding: 12px !important;
        font-size: 15px !important;
    }
}


/* ==========================================================
   MAKE REAL JS +/- BUTTONS VISIBLE
   (Tablet & Mobile — supports dynamic JS behavior)
========================================================== */

/* Target tablet & mobile */
@media (max-width: 1024px) {

    /* Style JS minus button */
    .minus-btn {
        background: rgba(255, 255, 255, 0.07);
        border: 1px solid rgba(255, 255, 255, 0.18);
        color: #ccc;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        font-size: 22px !important;
        font-weight: 400;
    }

    .minus-btn::before {
        content: "-" !important;
    }

    /* Style JS plus button */
    .plus-btn {
        background: #d5817a;
        border: 1px solid #d5817a;
        color: #fff;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        font-size: 22px !important;
        font-weight: 400;
    }

    .plus-btn::before {
        content: "+" !important;
    }

    /* Make sure these are always clickable */
    .minus-btn,
    .plus-btn {
        pointer-events: auto !important;
        z-index: 10000 !important;
        border-radius: 50% !important;
    }
}


td.product-name::before {
    display: none;
}

td.product-price::before {
    display: none;
}

td.product-quantity::before {
    display: none;
}



/* ==========================================================
   FINAL FIX — ALIGN IMAGE LEFT, CONTENT RIGHT,
   PRICE ABOVE QUANTITY, BUTTONS INLINE
========================================================== */

@media (max-width: 1024px) {

    /* ------------- CART ITEM WRAPPER ------------- */
    .cart_item {
        display: flex !important;
        flex-direction: row !important;   /* IMAGE left, CONTENT right */
        align-items: center
        !important;
        position: relative !important;
    }

    /* ------------- IMAGE ------------- */
    .product-thumbnail {
        width: 75px !important;
        flex-shrink: 0 !important;
        display: flex !important;
        justify-content: flex-start !important;
    }

    td.product-thumbnail img {
        width: 75px !important;
        height: 75px !important;
        border-radius: 12px !important;
    }

    /* ------------- RIGHT CONTENT BLOCK ------------- */
    /* Make NAME, PRICE, QUANTITY live in ONE vertical column */
    td.product-name,
    .product-price,
    .product-quantity {
        width: auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-start !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Name */
    td.product-name {
        font-size: 16px !important;
        font-weight: 500 !important;
        margin-bottom: 4px !important;
    }

    /* PRICE just under name */
    .product-price .amount {
        display: inline-block !important;
        color: #d5817a !important;
        font-size: 15px !important;
        margin: 2px 0 6px 0 !important;
    }

    /* Hide Woo labels */
    .product-name strong,
    .product-price,
    .product-quantity label {
        display: none !important;
    }

    /* ------------- QUANTITY BELOW PRICE ------------- */
    .product-quantity {
        margin-top: 4px !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .product-quantity .quantity {
        display: flex !important;
        flex-direction: row !important;
        align-items: center !important;
        gap: 10px !important;
        position: relative !important;
    }

    .product-quantity input.qty {
        width: 40px !important;
        text-align: center !important;
        font-size: 16px !important;
        color: #fff !important;
    }

    /* ------------- JS BUTTONS (Visible + Clickable) ------------- */
    .minus-btn,
    .plus-btn {
        width: 34px !important;
        height: 34px !important;
        border-radius: 50% !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        z-index: 9999 !important;
        pointer-events: auto !important;
    }

    .minus-btn {
        background: rgba(255, 255, 255, 0.08);
        border: 1px solid rgba(255, 255, 255, 0.20);
    }

    .minus-btn::before {
        content: "-" !important;
        color: #ccc !important;
        font-size: 22px !important;
    }

    .plus-btn {
        background: #d5817a !important;
        border: 1px solid #d5817a !important;
    }

    .plus-btn::before {
        content: "+" !important;
        color: #fff !important;
        font-size: 22px !important;
    }

    /* ------------- REMOVE BUTTON (X) ------------- */
    .product-remove {
        position: absolute !important;
        right: 15px !important;
        top: 12px !important;
        width: auto !important;
    }

    td.product-remove a.remove {
        font-size: 24px !important;
    }

    /* ------------- SUBTOTAL ALWAYS HIDDEN ------------- */
    td.product-subtotal {
        display: none !important;
    }
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-826bdd0 *//* ===========================
   Address Box Container
=========================== */
.saved-addresses-box {
    background: transparent;
    width: 80vw;
}

/* Title */
.saved-addresses-box h2 {
    font-size: 20px;
    margin-bottom: 15px;
    color: #ffffff;
    font-weight: 600;
}

/* ===========================
   Individual Address Card
=========================== */
.woocommerce-Address {
    background: #111111;
    border: 1px solid #333;
    border-radius: 10px;
    padding: 22px 15px;
    margin-bottom: 20px;
    position: relative;
    color: #ffffff !important;
}

/* Remove WC default titles */
.woocommerce-Address-title h3 {
    font-size: 14px;
    text-transform: uppercase;
    margin: 0;
    letter-spacing: 1px;
    color: #e0e0e0;
}

.woocommerce-Address address {
    margin-top: 5px;
    font-size: 14px;
    line-height: 1.4;
    color: #cfcfcf;
}

/* ===========================
   Right-side radio (fake)
=========================== */
.woocommerce-Address::after {
    content: "";
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 3px solid #C8A850;  /* Gold border */
    position: absolute;
    right: 20px;
    top: 55%;
    transform: translateY(-50%);
}

/* Active (first address selected for now) */
.woocommerce-Address.selected::after {
    background: #C8A850; /* Gold filled circle */
}

/* Optional: highlight selected card */
.woocommerce-Address.selected {
    border-color: #C8A850;
}

/* ===========================
   Edit Icon (Top Right)
=========================== */
.woocommerce-Address .edit {
    position: absolute;
    top: -5px;
    right: -5px;
    background: #C8A850;
    color: #000 !important;
    font-size: 12px;
    padding: 6px 8px;
    border-radius: 50%;
}


/* ===========================
   Clean UI for Add Address Buttons
=========================== */
.woocommerce-Address-title .edit,
.woocommerce-Address-title a {
    background: #C8A850 !important;
    color: #000 !important;
    border-radius: 20px !important;
    padding: 6px 14px !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    text-transform: none !important;
    box-shadow: none !important;
    border: none !important;
    transition: 0.2s ease-in-out;
    position: absolute;
    top: -15px;
    right: -10px;
}

.woocommerce-Address-title {
    position: relative;
    padding-right: 80px; 
}

.woocommerce-Address-title a,
.woocommerce-Address-title .edit {
    text-decoration: none !important;
}



/* ===========================
   DESKTOP (1025px and above)
=========================== */
@media (min-width: 1025px) {

    .saved-addresses-box h2 {
        font-size: 26px;
        margin-bottom: 20px;
    }

    .woocommerce-Address {
        padding: 28px 25px;
        border-radius: 14px;
    }

    .woocommerce-Address-title h3 {
        font-size: 16px;
        letter-spacing: 0.5px;
    }

    .woocommerce-Address address {
        font-size: 15px;
    }

    .woocommerce-Address::after {
        width: 22px;
        height: 22px;
        right: 25px;
        top: 55%;
    }

    .woocommerce-Address .edit {
        top: -10px;
        right: -10px;
        padding: 8px 10px;
        font-size: 14px;
    }

    .woocommerce-Address-title .edit,
    .woocommerce-Address-title a {
        top: -20px;
        right: -10px;
        padding: 7px 15px;
        font-size: 13px;
    }
}



/* ===========================
   TABLET (768px to 1024px)
=========================== */
@media (min-width: 768px) and (max-width: 1024px) {

    .saved-addresses-box h2 {
        font-size: 20px;
    }

    .woocommerce-Address {
        padding: 26px 20px;
        border-radius: 12px;
        margin-bottom: 22px;
    }

    .woocommerce-Address-title h3 {
        font-size: 15px;
    }

    .woocommerce-Address address {
        font-size: 14px;
    }

    .woocommerce-Address::after {
        width: 22px;
        height: 22px;
        right: 20px;
        top: 55%;
    }

    .woocommerce-Address .edit {
        top: -8px;
        right: -8px;
        padding: 7px 9px;
    }

    .woocommerce-Address-title .edit,
    .woocommerce-Address-title a {
        top: -18px;
        right: -8px;
        padding: 6px 14px;
        font-size: 12.5px;
    }
}/* End custom CSS */