.elementor-421 .elementor-element.elementor-element-7c4a528{--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;}.elementor-421 .elementor-element.elementor-element-efb3ee7{--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;}.elementor-421 .elementor-element.elementor-element-dea8b27.elementor-element{--align-self:center;}.elementor-421 .elementor-element.elementor-element-dea8b27 .eael-breadcrumbs{justify-content:center;}.elementor-421 .elementor-element.elementor-element-dea8b27 .eael-breadcrumbs .eael-breadcrumbs__content{background-color:var( --e-global-color-08f35e9 );border-style:none;color:#111111;font-family:"Montserrat", Sans-serif;font-weight:600;}.elementor-421 .elementor-element.elementor-element-dea8b27 .eael-breadcrumbs .eael-breadcrumbs__content a{color:#111111;}.elementor-421 .elementor-element.elementor-element-dea8b27 .eael-breadcrumbs .eael-breadcrumb-separator svg path{fill:#A5A4B0;}.elementor-421 .elementor-element.elementor-element-dea8b27 .eael-breadcrumbs .eael-breadcrumb-separator{color:#A5A4B0;margin:0 10px;}.elementor-421 .elementor-element.elementor-element-d035e2b{--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;}.elementor-421 .elementor-element.elementor-element-5df8534{--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;}.elementor-421 .elementor-element.elementor-element-5df8534:not(.elementor-motion-effects-element-type-background), .elementor-421 .elementor-element.elementor-element-5df8534 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#7C2F66;}.elementor-421 .elementor-element.elementor-element-ebe3e18 > .elementor-widget-container{margin:5px 0px 5px 0px;}.elementor-421 .elementor-element.elementor-element-ebe3e18{text-align:center;}.elementor-421 .elementor-element.elementor-element-ebe3e18 .elementor-heading-title{font-size:33px;color:#FFFFFF;}.elementor-421 .elementor-element.elementor-element-6aae7dd{--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;}.elementor-421 .elementor-element.elementor-element-d9f926f > .elementor-widget-container{margin:10px 0px 0px 0px;}@media(max-width:1024px){.elementor-421 .elementor-element.elementor-element-ebe3e18 .elementor-heading-title{font-size:25px;}}@media(max-width:767px){.elementor-421 .elementor-element.elementor-element-ebe3e18 .elementor-heading-title{font-size:19px;}}/* Start custom CSS for shortcode, class: .elementor-element-d9f926f *//* 1. PRODUCT CARD CONTAINER */
.woocommerce ul.products li.product {
    display: flex !important;
    flex-direction: column !important;
    background-color: gainsboro !important;
    text-align: center;
    padding-bottom: 15px;
    margin-bottom: 30px !important;
    height: 100%; /* Ensures cards in the same row stay same height */
    border-radius: 4px;
    overflow: hidden;
}

/* 2. IMAGE STYLING */
.woocommerce ul.products li.product img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    object-fit: cover;
    margin-bottom: 5px !important;
}

/* 3. TITLE ALIGNMENT 
   We set a min-height so 1-line and 2-line titles take up the same space 
*/
.woocommerce ul.products li.product .woocommerce-loop-product__title {
    text-align: center;
    font-family: Sans-Serif;
    font-weight: 300;
    font-size: 16px;
    padding: 0 10px;
    margin: 0 0 0px 0 !important;
    min-height: 30px; 
    display: flex;
    align-items: center; /* Vertical center text */
    justify-content: center; /* Horizontal center text */
}

/* 4. PRICE VERTICAL & HORIZONTAL CENTERING 
   This handles the <ins> (new price) and <del> (old price) tags
*/
.woocommerce ul.products li.product .price {
    font-weight: bold;
    color: #7C2F66 !important;
    margin-bottom: 5px !important;
    min-height: 30px; /* Keeps layout consistent */
    
    /* FLEXBOX LOGIC */
    display: flex !important;
    flex-direction: row !important;
    justify-content: center !important; /* Centers horizontally */
    align-items: center !important;     /* Centers vertically */
    gap: 10px; /* Space between the two prices */
}

/* Ensure price text inside ins/del is also aligned */
.woocommerce ul.products li.product .price ins,
.woocommerce ul.products li.product .price del {
    text-decoration: none;
    display: inline-flex;
    align-items: center;
}

.woocommerce ul.products li.product .price del {
    font-size: 0.9em;
    opacity: 0.8;
    text-decoration: line-through;
}

/* 5. ADD TO CART BUTTON STYLING */
.woocommerce ul.products li.product .button {
    background: #7C2F66 !important;
    color: #fff !important;
    padding: 10px 20px !important;
    border-radius: 25px !important;
    font-size: 14px !important;
    width: fit-content;
    /* This pushes the button to the bottom of the card */
    margin: auto auto 0px auto !important; 
    display: inline-block;
    transition: background 0.3s ease;
}

.woocommerce ul.products li.product .button:hover {
    background: #660066 !important;
}

/* 6. CLEANUP (Hide unwanted elements) */
.woocommerce span.onsale,
.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering {
    display: none !important;
}

/* 7. MOBILE RESPONSIVENESS (2 Columns) */
@media only screen and (max-width: 768px) {
    .woocommerce ul.products[class*=columns-] li.product, 
    .woocommerce-page ul.products[class*=columns-] li.product {
        width: 48% !important;
        float: left !important;
        margin: 0 1% 20px 1% !important;
        clear: none !important; /* Fixed: Allows two items side-by-side */
        display: flex !important;
        flex-direction: column !important;
        height: auto !important;
        min-height: 350px; 
    }

    .woocommerce ul.products li.product .woocommerce-loop-product__title {
        min-height: 55px; /* More space for wrapped text on mobile */
        font-size: 15px;
    }
}/* End custom CSS */