/* Hide short descriptions on catalogue and category pages */
body.woocommerce.archive .product-content {
    font-size: 0 !important;
    line-height: 0 !important;
}
/* Remove author and category labels from featured images */
.single-post figure.post-image .post-categories,
.single-post figure.post-image .post-meta {
    display: none !important;
}
/* Hide author and category labels over blog featured images */
body.single-post .post-items figure.post-image .post-categories,
body.single-post .post-items figure.post-image .post-meta {
    display: none !important;
}
/* Hide author and category labels on all blog images */
.post-items .post-image .post-categories,
.post-items .post-image .post-meta {
    display: none !important;
}
/* Add to Home Screen navigation button */
#menu-item-14679 > a.nav-link {
    background: #82b638 !important;
    color: #ffffff !important;
    border-radius: 6px;
    padding: 10px 14px !important;
    margin: 6px 5px;
}
/* Small Add to Home Screen header button */
#block-76 {
    margin: 0 0 0 10px !important;
    align-self: center;
}

#block-76 .wp-block-button__link {
    font-size: 13px !important;
    line-height: 1.2 !important;
    padding: 6px 10px !important;
    border-radius: 4px !important;
    white-space: nowrap;
}
/* Small Contact Us header button */
#block-77 {
    margin: 0 0 0 6px !important;
    align-self: center;
}

#block-77 .wp-block-button__link {
    font-size: 13px !important;
    line-height: 1.2 !important;
    padding: 6px 10px !important;
    border-radius: 4px !important;
    white-space: nowrap;
}
/* Keep Contact Us and Add to Home Screen text white */
#block-76 .wp-block-button__link:hover,
#block-76 .wp-block-button__link:focus,
#block-77 .wp-block-button__link:hover,
#block-77 .wp-block-button__link:focus {
    color: #ffffff !important;
}
/* Clear, readable slider text without covering the images */
body.home .home-slider-info-wrapper .slide-text-title,
body.home .home-slider-info-wrapper .slide-subtitle,
body.home .home-slider-info-wrapper .slide-subtitle .text-primary {
    color: #ffffff !important;
    background: transparent !important;
    text-shadow:
        0 2px 5px rgba(0, 0, 0, 0.95),
        0 0 14px rgba(0, 0, 0, 0.65) !important;
}

/* Mobile slider wording */
@media (max-width: 767px) {

    body.home .home-slider-info-wrapper .slide-text-title {
        font-size: clamp(24px, 6.5vw, 29px) !important;
        line-height: 1.08 !important;
        margin-bottom: 8px !important;
    }

    body.home .home-slider-info-wrapper .slide-subtitle,
    body.home .home-slider-info-wrapper .slide-subtitle .text-primary {
        font-size: clamp(11px, 3vw, 13px) !important;
        line-height: 1.2 !important;
    }
}
/* All website buttons – deep olive */
html body.wcz-btns.wcz-woocommerce ul.products li.product a.button,
html body.wcz-btns.wcz-woocommerce .related.products ul.products li.product a.button,
html body.wcz-btns.wcz-woocommerce.single-product div.product form.cart .button,
html body.wcz-btns.wcz-woocommerce.single-product .woocommerce-Reviews input.submit,
html body.wcz-btns.wcz-woocommerce.wcz-wooblocks .add_to_cart_button,
html body .woocommerce a.button,
html body .woocommerce button.button,
html body .woocommerce input.button,
html body .wp-block-button__link,
html body .wpforms-form button[type="submit"],
html body .btn-primary,
html body #menu-item-14679 > a.nav-link {
    background-color: #3f4b2d !important;
    border-color: #3f4b2d !important;
    color: #ffffff !important;
}

/* Softer olive when hovered or selected */
html body.wcz-btns.wcz-woocommerce ul.products li.product a.button:hover,
html body.wcz-btns.wcz-woocommerce ul.products li.product a.button:focus,
html body.wcz-btns.wcz-woocommerce.single-product div.product form.cart .button:hover,
html body.wcz-btns.wcz-woocommerce.single-product div.product form.cart .button:focus,
html body .woocommerce a.button:hover,
html body .woocommerce a.button:focus,
html body .woocommerce button.button:hover,
html body .woocommerce button.button:focus,
html body .woocommerce input.button:hover,
html body .woocommerce input.button:focus,
html body .wp-block-button__link:hover,
html body .wp-block-button__link:focus,
html body .wpforms-form button[type="submit"]:hover,
html body .wpforms-form button[type="submit"]:focus,
html body .btn-primary:hover,
html body .btn-primary:focus,
html body #menu-item-14679 > a.nav-link:hover,
html body #menu-item-14679 > a.nav-link:focus {
    background-color: #55643f !important;
    border-color: #55643f !important;
    color: #ffffff !important;
}
/* Soft shadow around the six service tiles */
#infoservice-section .infoservice-item {
    box-shadow: 0 4px 14px rgba(63, 75, 45, 0.11);
}

/* Lighter shadow around WooCommerce product cards */
.woocommerce ul.products li.product .product-single {
    box-shadow: 0 3px 12px rgba(63, 75, 45, 0.08);
}
/* Deep olive Explore links and intro label */
#infoservice-section .infoservice-item::after,
#hay-hutch-service-intro .hay-hutch-service-kicker {
    color: #3f4b2d;
}
/* Slightly deeper shadow behind the olive accent text */
#infoservice-section .infoservice-item::after,
#hay-hutch-service-intro .hay-hutch-service-kicker {
    text-shadow: 0 1px 2px rgba(63, 75, 45, 0.22);
}

/* Slightly deeper shadow behind each service-tile image */
#infoservice-section .infoservice-icon {
    position: relative;
    z-index: 1;
    box-shadow: 4px 0 12px rgba(63, 75, 45, 0.14);
}
/* Monthly special offers heading */
#popular-products {
    padding-top: 24px;
}

#popular-products .heading-default {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 74px;
}

#popular-products .heading-default::before {
    top: 50%;
    left: 0;
    height: 1px;
    margin: 0;
    background: rgba(63, 75, 45, 0.18);
}

#popular-products .heading-right {
    position: relative;
    z-index: 1;
    min-width: 390px;
    box-sizing: border-box;
    padding: 13px 28px 12px;
    background: #3f4b2d;
    border-radius: 12px;
    box-shadow: 0 4px 14px rgba(63, 75, 45, 0.16);
    text-align: center;
}

#popular-products .owl-filter-bar .item,
#popular-products .owl-filter-bar .item:hover,
#popular-products .owl-filter-bar .item:focus {
    color: #ffffff;
    font-size: 22px;
    font-weight: 600;
    line-height: 1.25;
}

#popular-products .heading-right::after {
    content: "A little extra value for the things they love.";
    display: block;
    margin-top: 4px;
    color: rgba(255, 255, 255, 0.84);
    font-size: 13px;
    line-height: 1.35;
}

@media (max-width: 767px) {
    #popular-products {
        padding-top: 0;
			margin-top: -22px;
    }

    #popular-products .heading-default {
        min-height: 68px;
    }

    #popular-products .heading-right {
        width: calc(100% - 24px);
        min-width: 0;
        padding: 12px 16px 11px;
    }

    #popular-products .owl-filter-bar .item {
        font-size: 20px;
    }

    #popular-products .heading-right::after {
        font-size: 12.5px;
    }
}
/* ===== MONTHLY OFFERS LAYOUT V2 — START ===== */

/* Shared card styling */
#popular-products .product-single {
    position: relative;
    overflow: hidden;
    border-radius: 12px;
    box-shadow: 0 4px 14px rgba(63, 75, 45, 0.14);
}

#popular-products .product-img {
    background: #ffffff !important;
}

#popular-products .product-img > a:has(img.wp-post-image:not(.info)) {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

#popular-products .product-img img.wp-post-image:not(.info) {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain;
    object-position: center;
    transform: none !important;
}

#popular-products .product-img img.info,
#popular-products .sale-ribbon,
#popular-products .pro-rating {
    display: none !important;
}

/* Olive information panel */
#popular-products .product-content-outer {
    display: flex !important;
    flex-direction: column;
    min-width: 0;
    background: #3f4b2d;
}

#popular-products .product-content {
    display: flex !important;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
    padding: 20px 20px 8px !important;

    /* Hide the lengthy homepage descriptions */
    font-size: 0 !important;
    line-height: 0 !important;
}

#popular-products .product-content h3 {
    display: -webkit-box;
    margin: 0 !important;
    overflow: hidden;
    color: #ffffff !important;
    font-size: 18px !important;
    font-weight: 600;
    line-height: 1.35 !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

#popular-products .product-content h3 a,
#popular-products .product-content h3 a:hover {
    color: #ffffff !important;
}

#popular-products .product-content .price {
    display: block !important;
    margin-top: auto !important;
    padding-top: 14px;
    color: #ffffff !important;
    font-size: 18px !important;
    line-height: 1.35 !important;
}

#popular-products .product-content .price .amount,
#popular-products .product-content .price ins,
#popular-products .product-content .price ins .amount {
    color: #ffffff !important;
}

#popular-products .product-content .price del,
#popular-products .product-content .price del .amount {
    color: rgba(255, 255, 255, 0.65) !important;
    font-size: 14px;
    opacity: 1;
}

/* White button on olive */
#popular-products .product-action {
    display: flex !important;
    justify-content: flex-start;
    width: auto !important;
    height: auto !important;
    padding: 0 20px 18px !important;
    background: #3f4b2d;
}

#popular-products .product-action .button {
    flex: 0 0 auto !important;
    width: auto !important;
    padding: 9px 15px !important;
    color: #3f4b2d !important;
    background: #ffffff !important;
    border-radius: 8px;
    font-size: 14px;
}

#popular-products .product-action .button:hover,
#popular-products .product-action .button:focus {
    color: #3f4b2d !important;
    background: #f1eee4 !important;
}

/* Desktop: two horizontal cards per row */
@media (min-width: 768px) {
    #popular-products .products.owl-carousel .owl-stage-outer {
        height: auto !important;
        overflow: visible;
    }

    #popular-products .products.owl-carousel .owl-stage {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        align-items: stretch;
        gap: 20px;
        width: 100% !important;
        transform: none !important;
        transition: none !important;
    }

    #popular-products .products.owl-carousel .owl-stage::after {
        display: none !important;
    }

    #popular-products .products.owl-carousel .owl-item {
        float: none !important;
        width: auto !important;
        height: 100%;
        margin: 0 !important;
    }

    #popular-products .owl-item li.product,
    #popular-products .owl-item li.product > .product {
        display: block !important;
        width: 100% !important;
        height: 100%;
        margin: 0 !important;
    }

    #popular-products .product-single {
        display: grid !important;
        grid-template-columns: minmax(190px, 42%) minmax(0, 1fr);
        min-height: 220px;
        height: 100%;
    }

    #popular-products .product-img {
        width: auto !important;
        height: 100% !important;
        min-height: 220px;
        padding: 10px !important;
    }

    #popular-products .owl-nav,
    #popular-products .owl-dots {
        display: none !important;
    }
}

/* Mobile: return to a swipeable portrait carousel */
@media (max-width: 767px) {
    #popular-products .product-single {
        display: flex !important;
        flex-direction: column;
        height: auto !important;
    }

    #popular-products .product-img {
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 4 / 3;
        padding: 10px !important;
    }

    #popular-products .product-content-outer {
        width: 100% !important;
        min-height: 160px;
    }

    #popular-products .product-content {
        padding: 17px 17px 7px !important;
    }

    #popular-products .product-content h3 {
        font-size: 17px !important;
    }

    #popular-products .product-content .price {
        padding-top: 12px;
        font-size: 17px !important;
    }

    #popular-products .product-action {
        padding: 0 17px 17px !important;
    }

    #popular-products .owl-nav {
        display: none !important;
    }

    #popular-products .woocommerce::after {
        content: "Swipe to see more offers →";
        display: block;
        margin-top: 10px;
        color: #3f4b2d;
        font-size: 13px;
        text-align: center;
    }
}

/* ===== MONTHLY OFFERS LAYOUT V2 — END ===== */
/* ===== MONTHLY OFFERS V2 CORRECTIONS ===== */

/* Restore the Monthly offer label */
#popular-products .product-img::before {
    content: "Monthly offer";
    position: absolute;
    top: 10px;
    left: 10px;
    z-index: 6;
    display: block !important;
    padding: 5px 9px;
    color: #ffffff;
    background: #3f4b2d;
    border-radius: 20px;
    font-size: 12px;
    line-height: 1.2;
}

/* Keep titles and prices neatly left aligned */
#popular-products .product-content {
    align-items: flex-start !important;
    text-align: left !important;
}

#popular-products .product-content h3 {
    width: 100%;
    text-align: left !important;
}

/* Align every price and remove the false white underline */
#popular-products .product-content .price {
    display: flex !important;
    align-items: baseline;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: 8px;
    width: 100%;
    margin: auto 0 0 !important;
    padding-top: 12px;
    text-align: left !important;
}

#popular-products .product-content .price,
#popular-products .product-content .price * {
    color: #ffffff !important;
    text-decoration: none !important;
}

#popular-products .product-content .price del,
#popular-products .product-content .price del * {
    color: rgba(255, 255, 255, 0.65) !important;
    text-decoration: line-through !important;
}

#popular-products .product-content .price ins {
    font-weight: 600;
}

/* Remove the theme’s white divider above the button */
#popular-products .product-action {
    align-self: stretch !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    border: 0 !important;
    border-top: 0 !important;
}

/* Slightly smaller label on mobile */
@media (max-width: 767px) {
    #popular-products .product-img::before {
        top: 8px;
        left: 8px;
        padding: 4px 7px;
        font-size: 10px;
    }
}
@media (max-width: 767px) {

    /* Remove the message from underneath the products */
    #popular-products .woocommerce::after {
        content: none !important;
        display: none !important;
    }

    /* Reduce the gap underneath the offers heading */
    #popular-products > .container > .row > .col-lg-12:first-child {
        margin-bottom: 14px !important;
    }

    /* New swipe prompt above the first product */
    #popular-products .woocommerce::before {
        content: "←  Swipe to see more offers  →";
        display: block;
        width: fit-content;
        margin: 0 auto 14px;
        padding: 8px 16px;
        color: #3f4b2d;
        background: rgba(63, 75, 45, 0.12);
        border-radius: 30px;
        box-shadow: 0 2px 8px rgba(63, 75, 45, 0.10);
        font-size: 15px;
        font-weight: 600;
        line-height: 1.3;
        text-align: center;
    }
}