.elementor-329 .elementor-element.elementor-element-fc40ebf{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:50px;margin-bottom:0px;}.elementor-329 .elementor-element.elementor-element-fc40ebf > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-329 .elementor-element.elementor-element-c6280a6 > .elementor-widget-wrap > .elementor-widget:not(.elementor-widget__width-auto):not(.elementor-widget__width-initial):not(:last-child):not(.elementor-absolute){margin-block-end:50px;}:root{--page-title-display:none;}/* Start custom CSS for shortcode, class: .elementor-element-787bac0 *//* =========================================================
   ALL PRODUCTS - LOAD MORE
   ========================================================= */


/* GOOGLE FONT */

@import url('https://fonts.googleapis.com/css2?family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600;6..72,700&display=swap');


/* =========================================================
   PRODUCT GRID  (4 per row on desktop)
   ========================================================= */

.nu-products-grid {

    display: grid;

    grid-template-columns: repeat(4, 1fr);

    gap: 22px;

    width: 100%;
}


/* =========================================================
   PRODUCT CARD
   ========================================================= */

.nu-products-card {

    display: flex;

    flex-direction: column;

    width: 100%;

    min-width: 0;

    padding: 14px 14px 20px;

    background: #ffffff;

    border: 1px solid #e3e3e3;

    border-radius: 28px;

    box-sizing: border-box;

    text-align: center;

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease;
}


.nu-products-card:hover {

    transform: translateY(-3px);

    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}


/* =========================================================
   IMAGE
   ========================================================= */

.nu-products-image {

    display: block;

    width: 100%;

    text-align: center;

    text-decoration: none !important;
}


.nu-products-product-image {

    display: block !important;

    width: 100% !important;

    height: 270px !important;

    object-fit: contain !important;

    margin: 0 auto 20px !important;
}

.nu-products-product-image {

    display: block !important;

    width: 100% !important;

    height: 270px !important;

    object-fit: contain !important;

    margin: 0 auto 20px !important;

    background-color: #F6F6F4 !important;   /* image background only */

    border-radius: 16px !important;         /* optional: soften the edges */
}

/* =========================================================
   TITLE
   ========================================================= */

.nu-products-title {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 100%;

    min-height: 65px;

    margin: 5px 0 18px;

    color: #123f40 !important;

    font-family: "Newsreader", serif !important;

    font-size: 25px !important;

    font-weight: 600 !important;

    line-height: 1.3;

    text-align: center;

    text-decoration: none !important;
}


.nu-products-title:hover {

    color: #123f40 !important;
}


/* =========================================================
   PRICE
   ========================================================= */

.nu-products-price {

    width: calc(100% - 20px);

    margin: 0 10px 20px;

    padding: 17px 0 0;

    border-top: 1px solid #dedede;

    color: #000000;

    font-family: "Newsreader", serif;

    font-size: 20px;

    font-weight: 600;

    line-height: 1.4;

    text-align: center;
}


.nu-products-price .amount {

    color: #000000 !important;

    font-family: "Newsreader", serif !important;

    font-size: 20px !important;

    font-weight: 600 !important;
}


/* =========================================================
   ADD TO CART
   ========================================================= */

.nu-products-button-wrapper {

    display: flex;

    justify-content: center;

    width: 100%;

    margin-top: auto;
}


.nu-products-button-wrapper .button {

    display: inline-flex !important;

    align-items: center;

    justify-content: center;

    width: auto !important;

    padding: 12px 20px !important;

    background-color: #1F595C !important;

    color: #ffffff !important;

    border: none !important;

    border-radius: 5px !important;

    font-size: 15px !important;

    font-weight: 600 !important;

    line-height: 1.4 !important;

    text-align: center !important;

    text-decoration: none !important;

    cursor: pointer;

    transition:
        background-color 0.25s ease,
        transform 0.25s ease;
}


.nu-products-button-wrapper .button:hover {

    background-color: #164447 !important;

    color: #ffffff !important;

    transform: translateY(-1px);
}


/* =========================================================
   LOAD MORE BUTTON
   ========================================================= */

.nu-load-more-wrapper {

    display: flex;

    justify-content: center;

    width: 100%;

    margin-top: 35px;
}


.nu-products-load-more {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    padding: 13px 30px;

    background: #ffffff;

    color: #1F595C;

    border: 1px solid #1F595C;

    border-radius: 5px;

    font-family: inherit;

    font-size: 15px;

    font-weight: 600;

    line-height: 1.4;

    cursor: pointer;

    transition:
        background-color 0.25s ease,
        color 0.25s ease;
}


.nu-products-load-more:hover {

    background: #1F595C;

    color: #ffffff;
}


.nu-products-load-more.loading {

    opacity: 0.65;

    cursor: wait;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1024px) {

    .nu-products-grid {

        grid-template-columns: repeat(2, 1fr);

        gap: 18px;
    }

    .nu-products-product-image {

        height: 250px !important;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 600px) {

    .nu-products-grid {

        grid-template-columns: 1fr;

        gap: 18px;
    }

    .nu-products-card {

        border-radius: 22px;

        padding: 14px 14px 20px;
    }

    .nu-products-product-image {

        height: 250px !important;
    }

    .nu-products-title {

        min-height: auto;

        font-size: 25px !important;
    }

    .nu-products-price {

        font-size: 20px;
    }

    .nu-products-price .amount {

        font-size: 20px !important;
    }
}/* End custom CSS */