.elementor-23 .elementor-element.elementor-element-53014d9{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-3d06de1{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-976d727{--display:flex;--padding-top:30px;--padding-bottom:30px;--padding-left:10px;--padding-right:10px;}.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-23 .elementor-element.elementor-element-a965b23{text-align:center;}.elementor-23 .elementor-element.elementor-element-a965b23 .elementor-heading-title{color:#1C1917;}.elementor-23 .elementor-element.elementor-element-7465da8 .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-style:solid;border-width:3px 3px 3px 3px;border-color:#FFA5A5;border-radius:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-af053ae .elementor-image-carousel-wrapper .elementor-image-carousel .swiper-slide-image{border-style:solid;border-width:3px 3px 3px 3px;border-color:#FFA5A5;border-radius:10px 10px 10px 10px;}.elementor-23 .elementor-element.elementor-element-c4c115b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-23 .elementor-element.elementor-element-3798dc1{--display:flex;--padding-top:20px;--padding-bottom:40px;--padding-left:10px;--padding-right:10px;}.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form,
						.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form-modern-checkout,
						.cartflows_step-template .select2-container--default .select2-results__option--highlighted[aria-selected],
						.cartflows_step-template .select2-container--default .select2-results__option--highlighted[data-selected]{--wcf-primary-color:#830018;}.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce form .form-row input.input-text:focus,
						.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce form .form-row textarea:focus,
						.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form.wcf-embed-checkout-form-modern-checkout .woocommerce #order_review .wcf-custom-coupon-field input.input-text:focus{box-shadow:0 0 0 1px #830018;}.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form-two-step .wcf-embed-checkout-form-steps .step-one.wcf-current:before,
						.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form-two-step .wcf-embed-checkout-form-steps .step-two.wcf-current:before{background-color:#830018;}.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form-two-step .wcf-embed-checkout-form-note:before{border-top-color:#830018;}.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form-two-step .woocommerce .wcf-embed-checkout-form-nav-btns .wcf-next-button,
						.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form-two-step .wcf-embed-checkout-form-note,
						.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form .wcf-custom-coupon-field button.wcf-submit-coupon,
						.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form .woocommerce #order_review button,
						body .wcf-pre-checkout-offer-wrapper #wcf-pre-checkout-offer-content button.wcf-pre-checkout-offer-btn{background-color:#830018;border-color:#830018;}.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form, .elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form-modern-checkout{--wcf-heading-color:#000000;}.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form,
						.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form-modern-checkout{--wcf-payment-section-bg-color:#FFE6E6;--wcf-payment-section-desc-bg-color:#FFFFFF;}.elementor-23 .elementor-element.elementor-element-206261e .wcf-embed-checkout-form .woocommerce-checkout #payment ul.payment_methods{border-radius:14px 14px 14px 14px;}/* Start custom CSS for heading, class: .elementor-element-a965b23 *//* 1. Base Styling for Mobile */
.elementor-23 .elementor-element.elementor-element-a965b23 .elementor-heading-title {
    font-family: 'Poppins', 'Anek Bangla', sans-serif;
    font-size: 25px !important; 
    line-height: 1.35; 
    font-weight: 800; 
    color: #1c1917; 
}

/* 2. Responsive Sizing for Tablet & Desktop */
@media (min-width: 768px) { 
    .elementor-23 .elementor-element.elementor-element-a965b23 .elementor-heading-title { 
        font-size: 30px !important; 
    } 
}

/* 3. Gradient Effect for the specific text */
.elementor-23 .elementor-element.elementor-element-a965b23 .gradient-text {
    background: linear-gradient(to right, #6c000c, #b30014, #6c000c);
    -webkit-background-clip: text; 
    -webkit-text-fill-color: transparent; 
    font-weight: 800;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3d06de1 *//* 1. Main Container Background Setup */
.elementor-23 .elementor-element.elementor-element-3d06de1 {
    background-color: #fffcf9; 
    position: relative;
    overflow: hidden;
}

/* 2. Create the two animated blobs using pseudo-elements */
.elementor-23 .elementor-element.elementor-element-3d06de1::before,
.elementor-23 .elementor-element.elementor-element-3d06de1::after {
    content: "";
    position: absolute;
    filter: blur(80px);
    z-index: 0;
    border-radius: 50%;
    opacity: 0.5;
    pointer-events: none;
    animation: elementor-float-blob 8s infinite ease-in-out;
}

/* 3. Blob 1 (Top-Left, Dark Red) */
.elementor-23 .elementor-element.elementor-element-3d06de1::before {
    top: -10%;
    left: -10%;
    width: 400px;
    height: 400px;
    background: rgba(108, 0, 12, 0.15);
}

/* 4. Blob 2 (Bottom-Right, Yellow/Gold) */
.elementor-23 .elementor-element.elementor-element-3d06de1::after {
    bottom: -10%;
    right: -10%;
    width: 500px;
    height: 500px;
    background: rgba(253, 198, 100, 0.15);
    animation-delay: -4s;
}

/* 5. Ensure all inner widgets/containers stay above the background blobs */
.elementor-23 .elementor-element.elementor-element-3d06de1 > * {
    position: relative;
    z-index: 10;
}

/* 6. Floating Animation */
@keyframes elementor-float-blob {
    0%, 100% { 
        transform: translate(0, 0) scale(1); 
    }
    50% { 
        transform: translate(20px, -20px) scale(1.05); 
    }
}/* End custom CSS */
/* Start custom CSS for checkout-form, class: .elementor-element-206261e *//* --- 1. GENERAL STYLES --- */
    .cartflows-elementor__checkout-form {
        font-family: 'Poppins', 'Anek Bangla', sans-serif !important;
    }
    
    /* Select2 (Dropdown) Styling */
    .select2-container--default .select2-selection--single {
        border: 1px solid #e2e8f0 !important;
        border-radius: 8px !important;
        height: 45px !important;
        padding: 8px !important;
        background-color: #f8fafc !important;
    }
    .select2-container--default .select2-selection--single .select2-selection__arrow {
        height: 45px !important;
    }
    /* Select2 Focus State */
    .select2-container--default.select2-container--open .select2-selection--single {
        border-color: #830018 !important; /* Theme Focus */
    }

    /* --- 2. CUSTOM SHIPPING BOX --- */
    #custom_shipping_box {
        background: #fff;
        padding: 20px;
        border: 2px solid #e2e8f0;
        border-radius: 12px;
        margin-bottom: 25px;
        box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.05);
    }
    
    .ship-title { 
        font-size: 18px; 
        font-weight: 700; 
        color: #081835; 
        margin-bottom: 15px; 
        display: block; 
        border-bottom: 2px solid #fae5e8; /* Light Theme Line */
        padding-bottom: 10px;
    }

    .custom-radio-option {
        display: flex;
        align-items: center;
        position: relative;
        padding: 15px 15px 15px 50px;
        margin-bottom: 10px;
        background: #ffffff;
        border: 1px solid #e2e8f0;
        border-radius: 8px;
        cursor: pointer;
        font-weight: 600;
        font-size: 16px;
        color: #64748b;
        transition: all 0.2s ease-in-out;
    }

    /* Hover State */
    .custom-radio-option:hover {
        border-color: #830018;
    }

    /* Active State (Selected) */
    .custom-radio-option.active-choice {
        border-color: #830018; /* Theme Border */
        background: #fae5e8;   /* Very Light Theme BG */
        color: #830018;        /* Theme Text */
        box-shadow: 0 2px 5px rgba(131, 0, 24, 0.1);
    }

    /* Radio Circle */
    .custom-radio-option input[type="radio"] {
        position: absolute;
        left: 15px;
        top: 50%;
        transform: translateY(-50%);
        accent-color: #830018; /* Theme Radio Dot */
        width: 20px;
        height: 20px;
        margin: 0;
        cursor: pointer;
    }

    /* --- 3. CHECKOUT FORM BEAUTIFICATION --- */
    .woocommerce input.input-text, .woocommerce textarea {
        border-radius: 8px !important;
        padding: 12px !important;
        /* Semi-transparent Theme Border */
        border: 2px solid #83001850 !important; 
        background-color: #f8fafc !important;
        transition: border-color 0.3s ease;
    }
    
    /* Input Focus State */
    .woocommerce input.input-text:focus, .woocommerce textarea:focus {
        border-color: #830018 !important; /* Theme Focus */
        outline: none !important;
        background-color: #ffffff !important;
        box-shadow: 0 0 0 3px rgba(131, 0, 24, 0.1) !important;
    }
    
    /* Place Order Button */
    #place_order {
        /* Theme Gradient */
        background: linear-gradient(90deg, #a8001f, #830018) !important; 
        color: #ffffff !important; 
        font-weight: 700 !important;
        border-radius: 50px !important;
        padding: 16px !important;
        font-size: 20px !important;
        border: none !important;
        cursor: pointer;
        transition: transform 0.2s;
        /* Theme Pulse Animation */
        animation: pulse-theme 2s infinite; 
    }

    #place_order:hover {
        transform: scale(1.02);
        background: linear-gradient(90deg, #830018, #a8001f) !important;
    }

    @keyframes pulse-theme {
        0% { box-shadow: 0 0 0 0 rgba(131, 0, 24, 0.6); }
        70% { box-shadow: 0 0 0 15px rgba(131, 0, 24, 0); }
        100% { box-shadow: 0 0 0 0 rgba(131, 0, 24, 0); }
    }


/* --- 1. HIDE DEFAULT RADIO BUTTONS --- */
.elementor-23 .elementor-element.elementor-element-206261e .wcf-item-.elementor-23 .elementor-element.elementor-element-206261e,
.elementor-23 .elementor-element.elementor-element-206261e .wcf-item-single-sel,
.elementor-23 .elementor-element.elementor-element-206261e input.wcf-single-sel, 
.elementor-23 .elementor-element.elementor-element-206261e input[type="radio"][name="wcf-single-sel"] {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    position: absolute;
    z-index: -999;
}

/* --- 2. CARD CONTAINER --- */
.elementor-23 .elementor-element.elementor-element-206261e .wcf-qty-row {
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 10px; 
    margin-bottom: 12px !important; 
    padding: 0!important;
    transition: all 0.2s ease;
    cursor: pointer;
    width: 100%;
    box-sizing: border-box;
    position: relative;
    overflow: hidden;
    box-shadow: 0 2px 4px rgba(0,0,0,0.02);
}

.elementor-23 .elementor-element.elementor-element-206261e .wcf-qty-row:hover {
    border-color: #830018;
}

/* --- 3. SELECTED STATE --- */
.elementor-23 .elementor-element.elementor-element-206261e .wcf-qty-row:has(input:checked) {
    border: 2px solid #830018;
    background-color: #fae5e8;
    box-shadow: 0 4px 12px rgba(131, 0, 24, 0.15);
}

/* Checkmark Badge */
.elementor-23 .elementor-element.elementor-element-206261e .wcf-qty-row:has(input:checked)::after {
    content: "✔";
    position: absolute;
    top: 0;
    right: 0;
    background: #830018;
    color: #fff;
    font-size: 11px;
    padding: 3px 10px;
    border-bottom-left-radius: 8px;
    z-index: 5;
    font-weight: bold;
}

/* --- 4. INNER CONTENT LAYOUT --- */
.elementor-23 .elementor-element.elementor-element-206261e .wcf-item {
    display: flex;
    align-items: center;
    padding: 12px; 
    gap: 12px; 
}

/* Product Image */
.elementor-23 .elementor-element.elementor-element-206261e .wcf-item-image {
    flex-shrink: 0;
    line-height: 0;
    margin: 0 !important; 
}
.elementor-23 .elementor-element.elementor-element-206261e .wcf-item-image img {
    width: 70px !important; 
    height: 70px !important;
    border-radius: 6px;
    object-fit: cover;
    border: 1px solid #e2e8f0;
}

/* --- 5. TYPOGRAPHY (Default Layout Preserved) --- */
/* Title (Dark Blue) */
.elementor-23 .elementor-element.elementor-element-206261e .wcf-display-title {
    font-size: 15px; 
    color: #081835; 
    font-weight: 700; 
    display: block;
    white-space: normal;
    margin-bottom: 2px;
}

/* Subtext (Theme Highlight) */
.elementor-23 .elementor-element.elementor-element-206261e .wcf-item-subtext {
    font-size: 13px;
    font-weight: 600; 
    color: #830018; /* Theme Color */
    line-height: 1.3;
}

/* Price */
.elementor-23 .elementor-element.elementor-element-206261e .wcf-price {
    margin-top: 2px;
}
.elementor-23 .elementor-element.elementor-element-206261e .wcf-display-price ins {
    text-decoration: none;
    font-weight: 700;
    color: #081835; 
    font-size: 15px;
}
.elementor-23 .elementor-element.elementor-element-206261e .wcf-display-price del {
    color: #94a3b8;
    font-size: 12px;
    margin-right: 6px;
}

/* Remove spinners */
.elementor-23 .elementor-element.elementor-element-206261e input.wcf-qty-selection::-webkit-outer-spin-button, 
.elementor-23 .elementor-element.elementor-element-206261e input.wcf-qty-selection::-webkit-inner-spin-button { 
    -webkit-appearance: none; margin: 0; 
}

/* --- HIDE UNUSED --- */
.elementor-23 .elementor-element.elementor-element-206261e .wcf-display-attributes, 
.elementor-23 .elementor-element.elementor-element-206261e .wcf-display-title-quantity {
    display: none !important;
}

/* --- MOBILE SPECIFIC FIXES --- */
@media (max-width: 580px) {
    /* Ensure padding is sufficient on mobile */
    .elementor-23 .elementor-element.elementor-element-206261e .wcf-item {
        padding: 12px !important;
        gap: 12px !important;
    }

    /* Fixed Image Size for Mobile */
    .elementor-23 .elementor-element.elementor-element-206261e .wcf-item-image img {
        width: 65px !important;
        height: 65px !important;
    }
    
    /* Ensure Title doesn't get too small */
    .elementor-23 .elementor-element.elementor-element-206261e .wcf-display-title {
        font-size: 14px;
    }
    
    /* Ensure Subtext is readable */
    .elementor-23 .elementor-element.elementor-element-206261e .wcf-item-subtext {
        font-size: 12px;
    }
}

/* --- HIDE EXTRA FIELDS --- */
#billing_country_field, #billing_state_field,
.woocommerce-additional-fields, .wcf-shipping-methods-wrapper, 
.wcf-product-option-wrap .wcf-yp-skin-classic, .wcf-product-option-after-customer,
.wcf-col-2.col-2 {
    display: none!important;
}
.wcf-col-1.col-1 {
    padding-bottom: 0px!important;
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-3798dc1 *//* 1. Main Container Background Setup */
.elementor-23 .elementor-element.elementor-element-3798dc1 {
    background-color: #fffcf9; 
    position: relative;
    overflow: hidden;
}

/* 2. Create the two animated blobs using pseudo-elements */
.elementor-23 .elementor-element.elementor-element-3798dc1::before,
.elementor-23 .elementor-element.elementor-element-3798dc1::after {
    content: "";
    position: absolute;
    filter: blur(80px);
    z-index: 0;
    border-radius: 50%;
    opacity: 0.5;
    pointer-events: none;
    animation: elementor-float-blob 8s infinite ease-in-out;
}

/* 3. Blob 1 (Top-Left, Dark Red) */
.elementor-23 .elementor-element.elementor-element-3798dc1::before {
    top: -10%;
    left: -10%;
    width: 400px;
    height: 400px;
    background: rgba(108, 0, 12, 0.15);
}

/* 4. Blob 2 (Bottom-Right, Yellow/Gold) */
.elementor-23 .elementor-element.elementor-element-3798dc1::after {
    bottom: -10%;
    right: -10%;
    width: 500px;
    height: 500px;
    background: rgba(253, 198, 100, 0.15);
    animation-delay: -4s;
}

/* 5. Ensure all inner widgets/containers stay above the background blobs */
.elementor-23 .elementor-element.elementor-element-3798dc1 > * {
    position: relative;
    z-index: 10;
}

/* 6. Floating Animation */
@keyframes elementor-float-blob {
    0%, 100% { 
        transform: translate(0, 0) scale(1); 
    }
    50% { 
        transform: translate(20px, -20px) scale(1.05); 
    }
}/* End custom CSS */