
body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
:is(.woocommerce ul.products, .wc-block-grid .wc-block-grid__products, .wc-block-product-template) {
    align-items: stretch !important;
    box-sizing: border-box !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 18px !important;
    justify-content: center !important;
    list-style: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: 100% !important;
}

body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
:is(.woocommerce ul.products li.product, .wc-block-grid__products .wc-block-grid__product, .wc-block-product-template li.wc-block-product) {
    align-self: stretch !important;
    background: #fff !important;
    border: 1px solid #e5cfb6 !important;
    border-radius: 11px !important;
    box-shadow: 0 8px 22px rgba(68, 40, 20, .07) !important;
    box-sizing: border-box !important;
    clear: none !important;
    display: flex !important;
    flex-direction: column !important;
    float: none !important;
    height: auto !important;
    margin: 0 !important;
    max-width: none !important;
    min-width: 0 !important;
    overflow: visible !important;
    padding: 14px !important;
    position: relative !important;
    text-align: center !important;
    width: auto !important;
}

body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
:is(.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link, .wc-block-grid__product-link) {
    align-items: stretch !important;
    color: inherit !important;
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    text-decoration: none !important;
    width: 100% !important;
}

body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
:is(.wc-block-grid__product-image, .wc-block-components-product-image, .container-image-and-badge) {
    align-items: center !important;
    background: #fff !important;
    display: flex !important;
    justify-content: center !important;
    margin: 0 0 13px !important;
    min-height: 225px !important;
    overflow: visible !important;
    width: 100% !important;
}

body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
:is(.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link img, .wc-block-grid__product-image img, .wc-block-components-product-image img, .wc-block-product-template li.wc-block-product img) {
    background: #fff !important;
    border-radius: 9px !important;
    box-sizing: border-box !important;
    display: block !important;
    height: 225px !important;
    margin: 0 !important;
    max-height: none !important;
    max-width: 100% !important;
    object-fit: contain !important;
    object-position: center !important;
    padding: 8px !important;
    width: 100% !important;
}

body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
:is(.woocommerce-loop-product__title, .wc-block-grid__product-title, .wc-block-components-product-name, .wc-block-product-template .wp-block-post-title) {
    color: #25160f !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.32 !important;
    margin: 2px 0 11px !important;
    padding: 0 !important;
    text-align: center !important;
}

body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
:is(.woocommerce ul.products li.product .price, .wc-block-grid__product-price, .wc-block-components-product-price) {
    color: #8d431b !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    line-height: 1.35 !important;
    margin: auto 0 13px !important;
    text-align: center !important;
}

@media screen and (min-width: 901px) {
    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products.columns-1 li.product, .wc-block-grid.has-1-columns .wc-block-grid__product) {
        flex: 0 1 360px !important;
        max-width: 360px !important;
        min-width: 0 !important;
        width: 360px !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products:not(.columns-1) li.product, .wc-block-grid:not(.has-1-columns) .wc-block-grid__product, .wc-block-product-template li.wc-block-product) {
        flex: 0 0 calc((100% - 54px) / 4) !important;
        max-width: none !important;
        min-width: 0 !important;
        width: calc((100% - 54px) / 4) !important;
    }
}

@media screen and (max-width: 900px) {
    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products, .wc-block-grid .wc-block-grid__products, .wc-block-product-template) {
        gap: 12px !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products.columns-1 li.product, .wc-block-grid.has-1-columns .wc-block-grid__product) {
        flex: 0 1 min(100%, 360px) !important;
        max-width: 360px !important;
        width: min(100%, 360px) !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products:not(.columns-1) li.product, .wc-block-grid:not(.has-1-columns) .wc-block-grid__product, .wc-block-product-template li.wc-block-product) {
        flex: 0 0 calc((100% - 12px) / 2) !important;
        max-width: none !important;
        min-width: 0 !important;
        width: calc((100% - 12px) / 2) !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.wc-block-grid__product-image, .wc-block-components-product-image, .container-image-and-badge) {
        min-height: 180px !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link img, .wc-block-grid__product-image img, .wc-block-components-product-image img, .wc-block-product-template li.wc-block-product img) {
        height: 180px !important;
    }
}

@media screen and (max-width: 620px) {
    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products, .wc-block-grid .wc-block-grid__products, .wc-block-product-template) {
        gap: 10px !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products li.product, .wc-block-grid__products .wc-block-grid__product, .wc-block-product-template li.wc-block-product) {
        padding: 8px !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products:not(.columns-1) li.product, .wc-block-grid:not(.has-1-columns) .wc-block-grid__product, .wc-block-product-template li.wc-block-product) {
        flex-basis: calc((100% - 10px) / 2) !important;
        width: calc((100% - 10px) / 2) !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.wc-block-grid__product-image, .wc-block-components-product-image, .container-image-and-badge) {
        min-height: 150px !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products li.product > a.woocommerce-LoopProduct-link img, .wc-block-grid__product-image img, .wc-block-components-product-image img, .wc-block-product-template li.wc-block-product img) {
        height: 150px !important;
        padding: 4px !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce-loop-product__title, .wc-block-grid__product-title, .wc-block-components-product-name, .wc-block-product-template .wp-block-post-title) {
        font-size: 14px !important;
        line-height: 1.25 !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products li.product .price, .wc-block-grid__product-price, .wc-block-components-product-price) {
        font-size: 14px !important;
    }

    body:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout)
    :is(.woocommerce ul.products li.product .button, .wc-block-grid__product .button, .ti-bh-grid-card-cta, .ti-wh-grid-card-cta) {
        font-size: 12px !important;
        min-height: 42px !important;
        padding: 8px 6px !important;
        white-space: nowrap !important;
    }
}

/* UK landing pages: one mobile two-column owner, 2026-09-23.
 * Overrides legacy one-column rules without changing desktop or product detail pages. */
@media screen and (max-width: 767px) {
html body.page:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) #content[id="content"] :is(.wc-block-grid__products, ul.products, .wc-block-product-template) {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    grid-auto-flow: row !important;
    gap: 10px !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 6px 0 !important;
    align-items: stretch !important;
    justify-content: stretch !important;
}
html body.page:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) #content[id="content"] :is(.wc-block-grid__products, ul.products, .wc-block-product-template)::before,
html body.page:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) #content[id="content"] :is(.wc-block-grid__products, ul.products, .wc-block-product-template)::after {
    content: none !important;
    display: none !important;
}
html body.page:not(.single-product):not(.woocommerce-cart):not(.woocommerce-checkout) #content[id="content"] :is(.wc-block-grid__products, ul.products, .wc-block-product-template) > :is(li.product, li.wc-block-grid__product, li.wc-block-product) {
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    flex: none !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    grid-column: auto !important;
    justify-self: stretch !important;
}
}
