body.home .wcfm_button,
body.home .wcfm_buttons {
    display: none !important;
}

body.home {
    --bl-home-content-width: min(1140px, calc(100vw - 32px));
}

body.home .products li.product {
    transition: opacity 160ms ease;
}

body.home .bl-home-products-filtered ul.products {
    align-items: stretch;
}

body.home .bl-home-products-filtered li.product {
    background: #fff;
}

body.home .bl-home-products-exact ul.products {
    display: grid !important;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 18px !important;
    align-items: start !important;
}

body.home .bl-home-product-card {
    min-width: 0;
}

body.home ul.products > li.product,
body.home ul.products > li.product.first,
body.home ul.products > li.product.last {
    box-sizing: border-box !important;
    position: relative !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
    clear: none !important;
    width: auto !important;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 278px !important;
    margin: 0 !important;
    align-self: start !important;
    padding: 0 0 44px !important;
    background: #fff !important;
    border: 1px solid #eadcda !important;
    border-radius: 8px !important;
    box-shadow: 0 8px 22px rgba(88, 55, 55, 0.08) !important;
    text-align: left !important;
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease, opacity 160ms ease !important;
}

body.home ul.products > li.product:hover,
body.home ul.products > li.product:focus-within {
    transform: translateY(-2px) !important;
    border-color: #b68f8f !important;
    box-shadow: 0 12px 26px rgba(88, 55, 55, 0.13) !important;
}

body.home ul.products > li.product .woocommerce-loop-product__link {
    display: flex !important;
    flex-direction: column !important;
    min-width: 0 !important;
    color: inherit !important;
    text-decoration: none !important;
}

body.home .bl-home-product-card img,
body.home ul.products > li.product a img {
    display: block !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    max-height: none !important;
    margin: 0 !important;
    border-radius: 7px 7px 0 0 !important;
    object-fit: cover !important;
    background: #f8f2f1 !important;
}

body.home .bl-home-product-card .woocommerce-loop-product__title,
body.home ul.products > li.product .woocommerce-loop-product__title {
    display: -webkit-box !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
    height: 40px !important;
    min-height: 0 !important;
    margin: 10px 10px 4px !important;
    padding: 0 !important;
    overflow: hidden !important;
    color: #332d2d !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 20px !important;
    letter-spacing: 0 !important;
    text-align: left !important;
}

body.home ul.products > li.product .price,
body.home ul.products > li.product .price span.amount {
    display: block !important;
    margin: 0 52px 0 10px !important;
    padding: 0 !important;
    color: #9f8e00 !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    line-height: 18px !important;
    text-align: left !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

body.home ul.products > li.product .price del {
    color: #b9aaaa !important;
    opacity: 1 !important;
}

body.home ul.products > li.product .button {
    position: absolute !important;
    right: 12px !important;
    bottom: 12px !important;
    z-index: 2 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #f3e7e7 !important;
    color: #a77f7f !important;
    box-shadow: none !important;
    font-size: 0 !important;
    line-height: 1 !important;
    text-indent: 0 !important;
}

body.home ul.products > li.product .button::before {
    content: "+" !important;
    display: block !important;
    color: currentColor !important;
    font-size: 24px !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

body.home ul.products > li.product .button:hover,
body.home ul.products > li.product .button:focus {
    background: #b08a8a !important;
    color: #fff !important;
}

@media (max-width: 900px) {
    body.home .bl-home-products-exact ul.products {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 560px) {
    body.home .bl-home-products-exact ul.products {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.home ul.products > li.product,
    body.home ul.products > li.product.first,
    body.home ul.products > li.product.last {
        min-height: 240px !important;
    }

    body.home .bl-home-product-card .woocommerce-loop-product__title,
    body.home ul.products > li.product .woocommerce-loop-product__title {
        height: 38px !important;
        margin: 8px 9px 4px !important;
        font-size: 13px !important;
        line-height: 19px !important;
    }

    body.home ul.products > li.product .price,
    body.home ul.products > li.product .price span.amount {
        margin-right: 48px !important;
        font-size: 13px !important;
    }
}

html.bl-category-modal-open {
    overflow: hidden;
}

body.home .elementor-element-d81b90a,
body.home .bl-original-category-strip {
    display: none !important;
}

body.home .elementor-element-d007d21 {
    min-height: 0 !important;
    height: auto !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    padding: 14px 16px 0 !important;
}

body.home .elementor-element-adc0e65 {
    width: var(--bl-home-content-width) !important;
    max-width: 100% !important;
    margin: 0 auto !important;
}

body.home .elementor-element-adc0e65 img {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    border-radius: 20px !important;
}

body.home .bl-category-showcase {
    width: var(--bl-home-content-width);
    margin: 22px auto 18px;
    padding: 0;
}

body.home .elementor-element-2e470bf,
body.home .elementor-element-24ad0e19,
body.home .elementor-element-eaefd63,
body.home .elementor-element-61b0dc6,
body.home .elementor-element-9222254,
body.home .elementor-element-f8c38de,
body.home .elementor-element-11e30c0d,
body.home .elementor-element-56ac2af9,
body.home .elementor-element-214af4de,
body.home footer .elementor-element-3b831ce7 {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

body.home .elementor-element-2e470bf > .e-con-inner,
body.home .elementor-element-24ad0e19 > .e-con-inner,
body.home .elementor-element-eaefd63 > .e-con-inner,
body.home .elementor-element-61b0dc6 > .e-con-inner,
body.home .elementor-element-9222254 > .e-con-inner,
body.home .elementor-element-f8c38de > .e-con-inner,
body.home .elementor-element-11e30c0d > .e-con-inner,
body.home .elementor-element-56ac2af9 > .e-con-inner,
body.home .elementor-element-214af4de > .e-con-inner,
body.home footer .elementor-element-3b831ce7 > .e-con-inner {
    width: var(--bl-home-content-width) !important;
    max-width: var(--bl-home-content-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.home .bl-category-track {
    display: grid;
    grid-template-columns: repeat(10, minmax(86px, 1fr));
    gap: 8px;
    align-items: start;
}

body.home .bl-category-tile {
    display: flex;
    min-width: 0;
    min-height: 78px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: 1px solid transparent;
    border-radius: 8px;
    background: transparent;
    color: #a78283;
    font-size: 11px;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: 0;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    cursor: pointer;
    transition: background-color 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

body.home .bl-category-tile svg {
    width: 30px;
    height: 30px;
    fill: none;
    stroke: #211c1d;
    stroke-width: 1.65;
    stroke-linecap: round;
    stroke-linejoin: round;
    transition: stroke 160ms ease, transform 160ms ease;
}

body.home .bl-category-tile span {
    max-width: 92px;
    overflow-wrap: anywhere;
}

body.home .bl-category-tile:hover,
body.home .bl-category-tile:focus-visible {
    border-color: #dbc7c4;
    background: #fbf7f5;
    color: #7f5f60;
    outline: none;
    transform: translateY(-1px);
}

body.home .bl-category-tile:hover svg,
body.home .bl-category-tile:focus-visible svg {
    stroke: #8e6869;
    transform: translateY(-1px);
}

body.home .bl-category-more {
    font-family: inherit;
}

.bl-category-modal {
    position: fixed;
    inset: 0;
    z-index: 999999;
    display: none;
    align-items: center;
    justify-content: center;
    padding: 28px;
}

.bl-category-modal.is-open {
    display: flex;
}

.bl-category-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(38, 32, 32, 0.48);
}

.bl-category-dialog {
    position: relative;
    width: min(960px, calc(100vw - 36px));
    max-height: min(82vh, 680px);
    overflow: auto;
    border: 1px solid #eadfdd;
    border-radius: 8px;
    background: #fffdfc;
    box-shadow: 0 24px 70px rgba(52, 38, 38, 0.28);
    padding: 40px 44px 42px;
}

.bl-category-dialog h2 {
    margin: 0 0 28px;
    color: #2a272b;
    font-size: 26px;
    font-weight: 800;
    line-height: 1.15;
    text-align: center;
    letter-spacing: 0;
}

.bl-category-close {
    position: absolute;
    top: 16px;
    right: 18px;
    width: 34px;
    height: 34px;
    border: 0;
    border-radius: 999px;
    background: transparent;
    color: #9b8583;
    font-size: 30px;
    line-height: 1;
    cursor: pointer;
}

.bl-category-close:hover,
.bl-category-close:focus-visible {
    background: #f7eeee;
    color: #765454;
    outline: none;
}

.bl-category-modal-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 30px 42px;
}

.bl-category-group {
    min-width: 0;
}

.bl-category-parent-link {
    display: inline-flex;
    margin: 0 0 10px;
    color: #2f2c31;
    font-size: 14px;
    font-weight: 800;
    line-height: 1.35;
    text-decoration: none;
}

.bl-category-parent-link:hover,
.bl-category-parent-link:focus-visible {
    color: #9c7373;
    outline: none;
}

.bl-category-child-list {
    display: grid;
    gap: 8px;
}

.bl-category-child-list a {
    color: #3d383a;
    font-size: 14px;
    font-weight: 400;
    line-height: 1.35;
    text-decoration: none;
    overflow-wrap: anywhere;
}

.bl-category-child-list a:hover,
.bl-category-child-list a:focus-visible {
    color: #9c7373;
    text-decoration: underline;
    outline: none;
}

@media (max-width: 1024px) {
    body.home .elementor-element-d007d21 {
        padding: 12px 12px 0 !important;
    }

    body.home .elementor-element-adc0e65 {
        width: min(100%, calc(100vw - 24px)) !important;
    }

    body.home .elementor-element-adc0e65 img {
        border-radius: 16px !important;
    }

    body.home .bl-category-showcase {
        width: 100%;
        margin-top: 16px;
        margin-bottom: 14px;
        padding: 0 16px;
        overflow: hidden;
    }

    body.home .bl-category-track {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 8px;
        scroll-snap-type: x proximity;
    }

    body.home .bl-category-tile {
        flex: 0 0 86px;
        scroll-snap-align: start;
    }

    .bl-category-modal-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    body.home .elementor-element-d007d21 {
        padding: 10px 10px 0 !important;
    }

    body.home .elementor-element-adc0e65 {
        width: calc(100vw - 20px) !important;
    }

    body.home .elementor-element-adc0e65 img {
        border-radius: 14px !important;
    }

    body.home .bl-category-showcase {
        margin: 12px auto 12px;
    }

    body.home .bl-category-tile {
        min-height: 74px;
        flex-basis: 76px;
        font-size: 10px;
    }

    body.home .bl-category-tile svg {
        width: 28px;
        height: 28px;
    }

    .bl-category-modal {
        padding: 12px;
        align-items: flex-start;
    }

    .bl-category-dialog {
        width: calc(100vw - 24px);
        max-height: calc(100vh - 24px);
        padding: 32px 20px 26px;
    }

    .bl-category-dialog h2 {
        font-size: 22px;
        margin-bottom: 22px;
    }

    .bl-category-modal-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

body.home ul.products > li.product,
body.home ul.products > li.product.first,
body.home ul.products > li.product.last {
    min-height: 0 !important;
    padding-bottom: 12px !important;
}

body.home ul.products > li.product .button {
    display: none !important;
}

body.home ul.products > li.product .button::before {
    content: none !important;
}

body.home ul.products > li.product .price {
    display: block !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 10px !important;
    padding: 0 !important;
    color: #9f8e00 !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    line-height: 18px !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

body.home ul.products > li.product .price span.amount {
    display: inline !important;
    margin: 0 !important;
    padding: 0 !important;
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
}

body.home ul.products > li.product .price .screen-reader-text {
    display: none !important;
}
