.elementor-576 .elementor-element.elementor-element-be1a49d{--display:flex;--min-height:380px;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:stretch;--gap:20px 20px;--row-gap:20px;--column-gap:20px;--overlay-opacity:0.2;--padding-top:5%;--padding-bottom:5%;--padding-left:8%;--padding-right:8%;}.elementor-576 .elementor-element.elementor-element-be1a49d:not(.elementor-motion-effects-element-type-background), .elementor-576 .elementor-element.elementor-element-be1a49d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://smcreationslocks.com/wp-content/uploads/2026/07/Product-page-banner.webp");background-position:center center;background-repeat:no-repeat;background-size:cover;}.elementor-576 .elementor-element.elementor-element-be1a49d::before, .elementor-576 .elementor-element.elementor-element-be1a49d > .elementor-background-video-container::before, .elementor-576 .elementor-element.elementor-element-be1a49d > .e-con-inner > .elementor-background-video-container::before, .elementor-576 .elementor-element.elementor-element-be1a49d > .elementor-background-slideshow::before, .elementor-576 .elementor-element.elementor-element-be1a49d > .e-con-inner > .elementor-background-slideshow::before, .elementor-576 .elementor-element.elementor-element-be1a49d > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:var( --e-global-color-secondary );--background-overlay:'';}.elementor-576 .elementor-element.elementor-element-3518a8a0{text-align:start;}.elementor-576 .elementor-element.elementor-element-3518a8a0 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:48px;font-weight:600;text-transform:none;font-style:normal;text-decoration:none;line-height:1.2em;letter-spacing:0px;word-spacing:0em;color:var( --e-global-color-text );}.elementor-576 .elementor-element.elementor-element-3d5b3312{text-align:start;}.elementor-576 .elementor-element.elementor-element-3d5b3312 .elementor-heading-title{font-family:"Poppins", Sans-serif;font-size:16px;font-weight:300;text-transform:none;font-style:normal;text-decoration:none;line-height:1.5em;letter-spacing:0px;word-spacing:0em;color:var( --e-global-color-text );}.elementor-576 .elementor-element.elementor-element-498ea5ef{--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:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:70px;--padding-bottom:70px;--padding-left:0px;--padding-right:0px;}.elementor-576 .elementor-element.elementor-element-f166d7f.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-576 .elementor-element.elementor-element-f166d7f.elementor-wc-products .attachment-woocommerce_thumbnail{border-style:solid;border-width:2px 2px 2px 2px;border-color:var( --e-global-color-b23a86a );border-radius:15px 15px 15px 15px;}.elementor-576 .elementor-element.elementor-element-f166d7f.elementor-wc-products ul.products li.product .price{color:#2A7D46;}.elementor-576 .elementor-element.elementor-element-f166d7f.elementor-wc-products ul.products li.product .price ins{color:#2A7D46;}.elementor-576 .elementor-element.elementor-element-f166d7f.elementor-wc-products ul.products li.product .price ins .amount{color:#2A7D46;}.elementor-576 .elementor-element.elementor-element-f166d7f.elementor-wc-products ul.products li.product{border-style:solid;border-width:2px 2px 2px 2px;border-radius:20px;padding:15px 15px 15px 15px;border-color:var( --e-global-color-b23a86a );}.elementor-576 .elementor-element.elementor-element-f166d7f.elementor-wc-products ul.products li.product span.onsale{display:block;}.elementor-576 .elementor-element.elementor-element-6ee2976{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:70px;--padding-bottom:70px;--padding-left:0px;--padding-right:0px;}.elementor-576 .elementor-element.elementor-element-6ee2976:not(.elementor-motion-effects-element-type-background), .elementor-576 .elementor-element.elementor-element-6ee2976 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FBFBFB;}.elementor-576 .elementor-element.elementor-element-2cacdc7{--display:flex;}.elementor-576 .elementor-element.elementor-element-e6ad965{width:var( --container-widget-width, 95% );max-width:95%;--container-widget-width:95%;--container-widget-flex-grow:0;}.elementor-576 .elementor-element.elementor-element-e6ad965.elementor-element{--align-self:center;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading{text-align:center;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading .heading-title{font-family:"Montserrat", Sans-serif;font-size:15px;font-weight:700;text-transform:uppercase;line-height:1em;letter-spacing:0.08em;color:var( --e-global-color-secondary );}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading .heading-section-title{margin:0px 0px -8px 0px;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading .heading-section-title .heading-title{padding:0px 0px 0px 0px;border-radius:0px 0px 0px 0px;border-style:none;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading .heading-section-subtitle{color:var( --e-global-color-primary );font-family:"Montserrat", Sans-serif;font-size:2.5em;font-weight:700;line-height:1.3em;margin:0px 0px 5px 0px;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading .heading-section-description{color:var( --e-global-color-secondary );line-height:28px;}@media(min-width:768px){.elementor-576 .elementor-element.elementor-element-be1a49d{--content-width:1250px;}.elementor-576 .elementor-element.elementor-element-498ea5ef{--content-width:1250px;}.elementor-576 .elementor-element.elementor-element-6ee2976{--content-width:1250px;}}@media(max-width:1024px){.elementor-576 .elementor-element.elementor-element-be1a49d{--min-height:250px;--padding-top:10%;--padding-bottom:10%;--padding-left:5%;--padding-right:5%;}.elementor-576 .elementor-element.elementor-element-3518a8a0 .elementor-heading-title{font-size:34px;}.elementor-576 .elementor-element.elementor-element-3d5b3312 .elementor-heading-title{font-size:14px;}.elementor-576 .elementor-element.elementor-element-498ea5ef{--padding-top:4%;--padding-bottom:4%;--padding-left:5%;--padding-right:5%;}.elementor-576 .elementor-element.elementor-element-f166d7f.elementor-wc-products  ul.products{grid-column-gap:20px;grid-row-gap:40px;}.elementor-576 .elementor-element.elementor-element-6ee2976{--padding-top:60px;--padding-bottom:60px;--padding-left:15px;--padding-right:15px;}.elementor-576 .elementor-element.elementor-element-e6ad965{width:100%;max-width:100%;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading{text-align:center;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading .heading-title{font-size:13px;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading .heading-section-subtitle{font-size:2em;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading .heading-section-description{font-size:14px;}}@media(max-width:767px){.elementor-576 .elementor-element.elementor-element-be1a49d{--min-height:250px;--padding-top:15%;--padding-bottom:15%;--padding-left:5%;--padding-right:5%;}.elementor-576 .elementor-element.elementor-element-3518a8a0{text-align:center;}.elementor-576 .elementor-element.elementor-element-3518a8a0 .elementor-heading-title{font-size:28px;line-height:1.1em;}.elementor-576 .elementor-element.elementor-element-3d5b3312{text-align:center;}.elementor-576 .elementor-element.elementor-element-498ea5ef{--padding-top:1%;--padding-bottom:1%;--padding-left:2%;--padding-right:2%;}.elementor-576 .elementor-element.elementor-element-f166d7f{padding:0px 0px 50px 0px;}.elementor-576 .elementor-element.elementor-element-f166d7f.elementor-wc-products  ul.products{grid-column-gap:10px;grid-row-gap:40px;}.elementor-576 .elementor-element.elementor-element-2cacdc7{--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading .heading-title{font-size:12px;}.elementor-576 .elementor-element.elementor-element-e6ad965 .jeg-elementor-kit.jkit-heading .heading-section-subtitle{font-size:1.8em;line-height:1.4em;}}/* Start custom CSS for wc-archive-products, class: .elementor-element-f166d7f *//* =========================================================
   ARCHIVE PRODUCTS – FINAL CONSOLIDATED CSS

   Desktop: 4 columns
   Tablet:  3 columns
   Mobile:  2 columns

   Applies to:
   - Elementor Archive Products
   - Elementor Products widget
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) {
    --archive-grid-gap: 20px;
    --archive-button-gap: 10px;
    --archive-message: #555555;
    --archive-success: #16803c;
    --archive-error: #c62828;
}


/* =========================================================
   1. PRODUCT GRID
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: stretch !important;

    width: 100% !important;
    max-width: 100% !important;

    gap: var(--archive-grid-gap) !important;
    margin: 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}


/* =========================================================
   2. PRODUCT CARDS
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product {
    display: flex !important;
    flex-direction: column !important;

    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;

    margin: 0 !important;
    float: none !important;
    clear: none !important;

    box-sizing: border-box !important;
}


/* Prevent product content from causing horizontal scrolling */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product > * {
    max-width: 100%;
    box-sizing: border-box;
}


/* =========================================================
   3. PRODUCT IMAGES
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product img {
    display: block;
    width: 100% !important;
    max-width: 100% !important;
    height: auto;

    box-sizing: border-box !important;
}


/* =========================================================
   4. FINISH SWATCHES
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product .sm-finish-swatches {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;

    width: 100% !important;
    gap: 7px !important;

    margin: 4px 0 3px !important;
    padding: 3px !important;

    overflow: visible !important;
    box-sizing: border-box !important;
}

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product .sm-finish {
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 50% !important;
    box-sizing: border-box !important;
}


/* =========================================================
   5. SELECTED FINISH AND CART MESSAGES
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product .sm-cart-message {
    width: 100% !important;
    padding: 0 !important;

    color: var(--archive-message);
    font-size: 12px;
    line-height: 18px;

    box-sizing: border-box !important;
}


/* Completely remove the empty message area */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product .sm-cart-message:empty {
    display: none !important;
    visibility: hidden !important;

    height: 0 !important;
    min-height: 0 !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* Display the message after a finish is selected */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product .sm-cart-message:not(:empty) {
    display: block !important;
    visibility: visible !important;

    min-height: 18px !important;
    margin: 3px 0 4px !important;
}

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) .sm-cart-message.selected {
    color: var(--archive-message) !important;
}

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) .sm-cart-message.success {
    color: var(--archive-success) !important;
}

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) .sm-cart-message.error {
    color: var(--archive-error) !important;
}


/* =========================================================
   6. ADD TO CART + BUY NOW WRAPPER
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product .product-buttons {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;

    width: 100% !important;
    max-width: 100% !important;

    gap: var(--archive-button-gap) !important;
    margin: 3px 0 0 !important;
    padding: 0 !important;

    box-sizing: border-box !important;
}


/* Simple products: buttons close to the price */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product.product-type-simple
> .product-buttons {
    margin-top: 10px !important;
}


/* Variable products: buttons close to Selected Finish */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product.product-type-variable
> .product-buttons {
    margin-top: 3px !important;
}


/* =========================================================
   7. ADD TO CART + BUY NOW BUTTONS
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product
.product-buttons .button {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;

    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;

    margin: 0 !important;
    padding: 8px 6px !important;

    text-align: center !important;
    white-space: nowrap !important;

    box-sizing: border-box !important;
}


/* =========================================================
   8. SELECT OPTIONS BUTTON

   display:flex does not use !important, allowing the
   JavaScript inline display:none to hide this button.
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product
> a.button.product_type_variable {
    display: flex;
    justify-content: center !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;
    min-height: 44px !important;

    margin: 6px 0 0 !important;
    padding: 0 10px !important;

    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;

    text-align: center !important;
    white-space: nowrap !important;

    box-sizing: border-box !important;
}


/* =========================================================
   9. ENQUIRE NOW BUTTON
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product
> a.button.product_type_external {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;

    width: 100% !important;
    max-width: 100% !important;
    min-height: 44px !important;

    margin: 10px 0 0 !important;
    padding: 0 10px !important;

    font-size: 16px !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;

    text-align: center !important;
    white-space: nowrap !important;

    box-sizing: border-box !important;
}


/* =========================================================
   10. BUTTON STATES
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) .sm-variable-buttons .button.loading {
    opacity: 0.65;
    pointer-events: none;
    cursor: wait;
}

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) .sm-variable-buttons .button.disabled {
    opacity: 0.45;
    pointer-events: none;
    cursor: not-allowed;
}


/* =========================================================
   11. HIDE AUTOMATIC VIEW CART LINK
========================================================= */

:is(
    .elementor-widget-wc-archive-products,
    .elementor-widget-woocommerce-products
) ul.products li.product
a.added_to_cart.wc-forward {
    display: none !important;
}


/* =========================================================
   12. TABLET – 3 COLUMNS
========================================================= */

@media only screen and (min-width: 768px) and (max-width: 1024px) {

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products {
        grid-template-columns:
            repeat(3, minmax(0, 1fr)) !important;

        gap: 14px !important;
    }

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product {
        padding: 10px !important;
    }

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product .product-buttons {
        gap: 6px !important;
    }

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product
    .product-buttons .button {
        min-height: 40px !important;
        padding: 7px 5px !important;
        font-size: 12px !important;
    }


    /* Select Options and Enquire Now match */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product
    > a.button.product_type_variable,

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product
    > a.button.product_type_external {
        min-height: 40px !important;
        margin-top: 6px !important;
        padding: 0 7px !important;

        font-size: 12px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;
    }
}


/* =========================================================
   13. MOBILE – 2 COLUMNS
========================================================= */

@media only screen and (max-width: 767px) {

    /* Grid */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;

        gap: 10px !important;
    }


    /* Cards */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product {
        width: 100% !important;
        min-width: 0 !important;
        padding: 9px !important;
    }


    /* Product title */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product
    .woocommerce-loop-product__title {
        font-size: 13px !important;
        line-height: 1.3 !important;
    }


    /* Price */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product .price {
        font-size: 11px !important;
        line-height: 1.4 !important;
    }


    /* Finish wrapper */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product
    .sm-finish-swatches {
        gap: 5px !important;
        margin: 4px 0 3px !important;
        padding: 3px !important;
    }


    /* Round mobile finish swatches */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product .sm-finish {
        display: block !important;
        flex: 0 0 15px !important;

        width: 15px !important;
        height: 15px !important;
        min-width: 15px !important;
        min-height: 15px !important;
        max-width: 15px !important;
        max-height: 15px !important;

        aspect-ratio: 1 / 1 !important;

        margin: 0 !important;
        padding: 0 !important;

        border-radius: 50% !important;
        line-height: 0 !important;

        box-sizing: border-box !important;
    }

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product .sm-finish.active {
        outline: 2px solid #111111 !important;
        outline-offset: 2px !important;
    }


    /* Add to Cart + Buy Now wrapper */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product .product-buttons {
        gap: 5px !important;
        margin-top: 3px !important;
    }


    /* Add to Cart + Buy Now buttons */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product
    .product-buttons .button {
        min-height: 38px !important;
        padding: 6px 3px !important;

        font-size: 10px !important;
        line-height: 1.15 !important;

        overflow: hidden;
    }


    /* Select Options and Enquire Now match */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product
    > a.button.product_type_variable,

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product
    > a.button.product_type_external {
        min-height: 38px !important;
        margin-top: 5px !important;
        padding: 0 5px !important;

        font-size: 10px !important;
        line-height: 1.2 !important;
        font-weight: 700 !important;
    }


    /* Selected Finish message */

    :is(
        .elementor-widget-wc-archive-products,
        .elementor-widget-woocommerce-products
    ) ul.products li.product
    .sm-cart-message:not(:empty) {
        min-height: 14px !important;
        margin: 2px 0 3px !important;

        font-size: 9px !important;
        line-height: 14px !important;
    }
}/* End custom CSS */