.preview-notice{position:relative;z-index:30;padding:8px 20px;background:#173f28;color:#fff;text-align:center;font-size:12px;letter-spacing:.04em}.icon-button{text-decoration:none}.mobile-menu-toggle{display:none}.skip-link:focus{position:fixed!important;z-index:1000;width:auto!important;height:auto!important;clip:auto!important;top:12px;left:12px;padding:14px!important;background:#fff}.cp-inner-stage{position:relative;min-height:75vh}.cp-shop-content,.cp-page-content{width:70%;padding:55px 4vw 80px;min-height:70vh;line-height:1.75;background:linear-gradient(110deg,#fbf8f1,#fff)}.cp-inner-stage>.pour-col{position:fixed;top:160px;max-height:calc(100vh - 160px);overflow:hidden}.cp-page-content h1,.cp-shop-content h1{font-size:clamp(36px,4vw,66px);margin-top:0}.cp-page-content h2{font-size:36px}.cp-shop-content h2{font-size:26px}.cp-shop-content img,.cp-page-content img{height:auto}.woocommerce ul.products li.product .woocommerce-loop-product__title{font:400 22px/1.25 Georgia,serif;color:#173f28}.woocommerce ul.products li.product a img{aspect-ratio:1;object-fit:contain;background:#fff;border-radius:10px}.woocommerce ul.products li.product .price{color:#546158;font-size:16px}.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.button{padding:14px 20px;background:#173f28;color:#fff;border:0;border-radius:4px;text-decoration:none;cursor:pointer}.woocommerce button.button.alt,.woocommerce a.button.alt{background:#173f28}.woocommerce div.product p.price{color:#173f28}.woocommerce div.product .product_title{font-size:40px}.woocommerce div.product div.images,.woocommerce div.product div.summary{float:none;width:100%}.woocommerce div.product div.images img{max-height:500px;object-fit:contain}.woocommerce div.product .woocommerce-tabs ul.tabs li{background:#fbf8f1}.woocommerce input.input-text,.woocommerce select{padding:12px;border:1px solid #d8d4c8;border-radius:4px}.woocommerce .woocommerce-breadcrumb{line-height:1.5}.woocommerce .woocommerce-result-count{font-size:14px}.woocommerce ul.products{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product{float:none;width:auto!important;margin:0!important}#cp-search{width:min(90vw,520px);border:1px solid #d9b977;border-radius:16px;padding:30px;background:#fffdf8}#cp-search::backdrop{background:#05200e99}#cp-search h2{font-size:36px}#cp-search input{display:block;width:100%;padding:15px;margin:15px 0;border:1px solid #d9b977}.close-search{float:right;border:0;background:none;font-size:26px;cursor:pointer}.site-header{z-index:25}.pour-video.ready{opacity:1}.lang-toggle{display:none}body.home .lang-toggle{display:block}.cp-page-content .wp-block-image img{max-height:500px;object-fit:contain}.site-footer{position:relative;z-index:5}
@media(max-width:1100px){.mobile-menu-toggle{display:block;border:1px solid #173f28;background:white;border-radius:4px;padding:9px;position:absolute;left:20px;bottom:8px}.main-nav.is-open{display:flex;position:absolute;top:100%;left:0;width:100%;background:#fff;padding:20px;flex-wrap:wrap;border-bottom:1px solid #e7d6ad}.main-nav .logo-gap{display:none}.cp-shop-content,.cp-page-content{width:100%;padding:35px 24px}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.hero .copy{padding-bottom:30px}}
@media(max-width:720px){.site-header{min-height:125px}.header-center{top:3px}.header-actions{gap:8px}.woocommerce ul.products{gap:18px}.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:19px}.cp-page-content h1{font-size:38px}.cp-shop-content .woocommerce-ordering{float:none}.hero .copy{padding-top:45px}.preview-notice{font-size:11px}.cp-page-content table{display:block;overflow:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.pour-video{display:none}.pour-poster{display:block}}
.cp-food-facts{margin:20px 0}.cp-food-facts>div{display:grid;grid-template-columns:minmax(120px,1fr) 2fr;border-bottom:1px solid #e7d6ad;padding:16px 0;gap:24px}.cp-food-facts dt{font-weight:600;color:#173f28}.cp-food-facts dd{margin:0;white-space:normal}.cp-barcode{padding:20px 0}.cp-barcode svg{max-width:100%;background:#fff}.cp-image-pending{aspect-ratio:1;background:#fbf8f1;border:1px solid #e7d6ad;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:28px;text-align:center;color:#546158;border-radius:6px;font:italic 22px/1.4 Georgia,serif}.cp-image-pending small{font:12px/1.5 Arial,sans-serif;letter-spacing:.08em;text-transform:uppercase}.cp-category-links{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 30px}.cp-category-links a{border:1px solid #d9b977;padding:9px 15px;border-radius:30px;text-decoration:none;font-size:13px}.cp-category-links a:hover{background:#173f28;color:#fff}.cp-product-image{margin-bottom:28px}.cp-info-link{display:inline-block;margin:14px 0;color:#173f28}.cp-empty-price{font-size:14px;color:#546158}
@media(max-width:600px){.cp-food-facts>div{grid-template-columns:1fr;gap:6px}.cp-image-pending{padding:16px;font-size:18px}}
.cp-lead{font-size:clamp(18px,1.5vw,24px);line-height:1.8;max-width:720px;color:#546158}.cp-recipe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.cp-recipe-card{padding:28px;border:1px solid #e7d6ad;border-radius:10px;background:#fffdf8}.cp-recipe-card h2{font-size:30px;line-height:1.2}.cp-recipe-card h2 a{text-decoration:none}.cp-recipe-card .eyebrow{font-size:10px}.cp-recipe-method li{padding:12px 0 12px 8px}.cp-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.cp-contact-grid section{border-top:1px solid #d9b977;padding-top:20px}.cp-contact-grid h2{font-size:30px}.cp-related-recipes{clear:both;margin:40px 0}.cp-related-recipes .cp-recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:650px){.cp-recipe-grid,.cp-contact-grid,.cp-related-recipes .cp-recipe-grid{grid-template-columns:1fr}.cp-recipe-card{padding:22px}}

@media(max-width:720px){.site-header{min-height:150px}.mobile-menu-toggle{bottom:10px}.hero .copy{padding-top:45px}}

.cp-honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important}#cp-signup-status{margin:0;grid-column:1/-1;font-size:14px}#cp-signup-status:empty{display:none}
.cp-recipe-card h2 a{display:inline-block}

/* Each page carries its own botanical drawings in the homepage's style. */
#cp-content{position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(110deg,#fbf8f1 0%,#fff 75%)}
body.home #cp-content{background:#fff;isolation:auto}
.cp-page-botanicals{position:absolute;inset:0;z-index:0;pointer-events:none;overflow:hidden}
.cp-page-plant{position:absolute;object-fit:contain;mix-blend-mode:multiply}
.cp-page-plant-main{top:45px;left:40%;width:27%;height:650px;max-height:75vh;opacity:.55;object-position:top center}
.cp-page-plant-accent{bottom:35px;left:-4%;width:22%;height:430px;opacity:.16;transform:rotate(-18deg);object-position:bottom center}
.cp-shop-content,.cp-page-content{position:relative;z-index:1;background:transparent}
.cp-page-content>h1,.cp-page-content>.cp-lead,.cp-page-content>p,.cp-page-content>h2{max-width:80%}
.cp-shop-content .woocommerce-product-gallery{position:relative}
.cp-image-pending{background:rgba(251,248,241,.72)}
.cp-recipe-card{background:rgba(255,253,248,.88)}
.cp-food-facts,.woocommerce-tabs .panel{background:rgba(255,253,248,.84)}
.newsletter-logo{flex:0 0 auto;width:120px;height:120px;padding:13px;object-fit:contain;border-radius:50%;background:#fffdf5;box-shadow:0 0 0 1px rgba(217,185,119,.65),0 5px 18px rgba(0,0,0,.12)}
@media(max-width:1100px){.cp-page-plant-main{left:auto;right:0;width:37%;opacity:.3}.cp-page-plant-accent{width:28%;opacity:.12}.cp-page-content>h1,.cp-page-content>.cp-lead,.cp-page-content>p,.cp-page-content>h2{max-width:90%}}
@media(max-width:720px){.cp-page-plant-main{top:25px;right:-7%;width:53%;height:470px;opacity:.22}.cp-page-plant-accent{width:42%;height:310px;opacity:.10}.cp-page-content>h1,.cp-page-content>.cp-lead,.cp-page-content>p,.cp-page-content>h2{max-width:100%}.newsletter-logo{display:block;width:84px;height:84px;padding:9px}.newsletter-copy{gap:18px}.newsletter h2{font-size:26px}}
.single-product .cp-page-plant-main{opacity:.78}
.single-product .cp-image-pending{background:rgba(251,248,241,.12)}
@media(max-width:1100px){.cp-page-plant-main{opacity:.5}.single-product .cp-page-plant-main{opacity:.7}}
@media(max-width:720px){.cp-page-plant-main{opacity:.32}.single-product .cp-page-plant-main{opacity:.6}}
.newsletter .newsletter-logo{width:120px;height:120px;aspect-ratio:1}
@media(max-width:720px){.newsletter .newsletter-logo{width:84px;height:84px}}
.cp-page-botanicals .cp-page-plant-main{height:650px}
.cp-page-botanicals .cp-page-plant-accent{height:430px}
@media(max-width:720px){.cp-page-botanicals .cp-page-plant-main{height:470px}.cp-page-botanicals .cp-page-plant-accent{height:310px}}

/* Product specifications / migrated long description */
.cp-product-details {
    clear: both;
    margin: 64px 0 36px;
    padding: 48px clamp(24px, 5vw, 64px);
    border-radius: 28px;
    background: rgba(250, 247, 239, .72);
    border: 1px solid rgba(91, 104, 72, .15);
}

.cp-product-details-inner {
    max-width: 900px;
    margin: 0 auto;
}

.cp-product-details h2 {
    margin: 8px 0 24px;
}

.cp-product-details-copy {
    line-height: 1.8;
}

.cp-product-details-copy p {
    margin: 0 0 14px;
}

.cp-product-details-copy p:last-child {
    margin-bottom: 0;
}

@media (max-width: 767px) {
    .cp-product-details {
        margin-top: 42px;
        padding: 32px 22px;
        border-radius: 22px;
    }
}

/* ==========================================================
   CP PRODUCTS — FINAL ARCHIVE PRESENTATION
   New photography + botanical background
   ========================================================== */

body.woocommerce-shop .cp-shop-content,
body.tax-product_cat .cp-shop-content {
    width: 58% !important;
    max-width: 860px !important;
    padding: 48px 2vw 76px 4vw !important;
    background: transparent !important;
}

/* Botanical artwork stays visible */
body.woocommerce-shop .cp-page-plant-main,
body.tax-product_cat .cp-page-plant-main {
    left: 50% !important;
    right: auto !important;
    width: 27% !important;
    opacity: .58 !important;
}

/* Two products per row */
body.woocommerce-shop ul.products,
body.tax-product_cat ul.products {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 34px 26px !important;
    margin-top: 30px !important;
}

/* Product card itself stays transparent */
body.woocommerce-shop ul.products li.product,
body.tax-product_cat ul.products li.product {
    width: 100% !important;
    max-width: 360px !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Let the new botanical product photo be the visual card */
body.woocommerce-shop ul.products li.product a img,
body.tax-product_cat ul.products li.product a img {
    display: block !important;

    width: 100% !important;
    height: 250px !important;

    margin: 0 0 15px !important;
    padding: 0 !important;

    object-fit: cover !important;
    object-position: center !important;

    border-radius: 14px !important;
    background: transparent !important;

    box-shadow:
        0 10px 24px rgba(38,55,38,.08) !important;

    transition:
        transform .25s ease,
        box-shadow .25s ease;
}

body.woocommerce-shop ul.products li.product:hover a img,
body.tax-product_cat ul.products li.product:hover a img {
    transform: translateY(-2px);
    box-shadow:
        0 14px 30px rgba(38,55,38,.12) !important;
}

/* Titles */
body.woocommerce-shop .woocommerce-loop-product__title,
body.tax-product_cat .woocommerce-loop-product__title {
    min-height: 0 !important;
    margin: 0 0 8px !important;

    font-size: 20px !important;
    line-height: 1.3 !important;
}

/* Keep buttons visually light */
body.woocommerce-shop ul.products li.product .button,
body.tax-product_cat ul.products li.product .button {
    margin-top: 6px !important;
    padding: 11px 17px !important;
    font-size: 13px !important;
}

/* Toolbar */
body.woocommerce-shop .woocommerce-result-count,
body.tax-product_cat .woocommerce-result-count {
    float: left !important;
    margin: 9px 0 20px !important;
}

body.woocommerce-shop .woocommerce-ordering,
body.tax-product_cat .woocommerce-ordering {
    float: right !important;
    margin: 0 0 20px !important;
}

body.woocommerce-shop .woocommerce-ordering select,
body.tax-product_cat .woocommerce-ordering select {
    min-width: 180px !important;
}

/* Tablet */
@media(max-width:1100px) {

    body.woocommerce-shop .cp-shop-content,
    body.tax-product_cat .cp-shop-content {
        width: 100% !important;
        max-width: none !important;
        padding: 35px 24px 60px !important;
    }

    body.woocommerce-shop ul.products li.product,
    body.tax-product_cat ul.products li.product {
        max-width: none !important;
    }

    body.woocommerce-shop .cp-page-plant-main,
    body.tax-product_cat .cp-page-plant-main {
        left: auto !important;
        right: 0 !important;
        width: 37% !important;
        opacity: .20 !important;
    }
}

/* Mobile */
@media(max-width:720px) {

    body.woocommerce-shop ul.products,
    body.tax-product_cat ul.products {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }

    body.woocommerce-shop ul.products li.product a img,
    body.tax-product_cat ul.products li.product a img {
        height: auto !important;
        max-height: 420px !important;
        object-fit: contain !important;
    }

    body.woocommerce-shop .woocommerce-result-count,
    body.woocommerce-shop .woocommerce-ordering,
    body.tax-product_cat .woocommerce-result-count,
    body.tax-product_cat .woocommerce-ordering {
        float: none !important;
        display: block !important;
        margin: 0 0 15px !important;
    }
}

/* ==========================================================
   CP SINGLE PRODUCT — GLOBAL FINAL LAYOUT
   Applies consistently to all products.
   ========================================================== */

body.single-product .cp-shop-content {
    width: 68% !important;
    max-width: 1080px;
    padding: 48px 3vw 76px 4vw !important;
    background: transparent !important;
}

/* Product hero: photo + information */
body.single-product div.product {
    display: grid;
    grid-template-columns: minmax(300px, .95fr) minmax(280px, 1.05fr);
    column-gap: 44px;
    align-items: start;
}

/* Main product gallery */
body.single-product div.product div.images {
    width: 100% !important;
    float: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

body.single-product .woocommerce-product-gallery {
    width: 100% !important;
    max-width: 440px !important;
    margin: 0 auto 30px !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Stable image area */
body.single-product .woocommerce-product-gallery__wrapper {
    min-height: 420px;
    margin: 0 !important;
}

body.single-product .woocommerce-product-gallery__image {
    height: 420px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Keep generated/original product photography intact */
body.single-product .woocommerce-product-gallery__image img {
    display: block !important;

    width: 100% !important;
    height: 100% !important;

    max-width: 420px !important;
    max-height: 420px !important;

    margin: auto !important;

    object-fit: contain !important;
    object-position: center !important;

    border-radius: 14px !important;

    filter: none !important;
    transform: none !important;

    box-shadow: 0 12px 30px rgba(35, 49, 35, .08);
}

/* Gallery thumbnails underneath */
body.single-product .flex-control-thumbs {
    position: static !important;
    float: none !important;

    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: center !important;
    flex-wrap: wrap !important;

    gap: 9px !important;

    width: 100% !important;
    margin: 14px 0 0 !important;
    padding: 0 !important;
}

body.single-product .flex-control-thumbs li {
    float: none !important;
    width: 62px !important;
    height: 62px !important;
    margin: 0 !important;
}

body.single-product .flex-control-thumbs img {
    width: 62px !important;
    height: 62px !important;

    object-fit: cover !important;

    padding: 3px !important;

    border-radius: 8px !important;
    border: 1px solid rgba(23,63,40,.16) !important;

    background: rgba(255,255,255,.52) !important;
}

/* Product information */
body.single-product div.product div.summary {
    width: 100% !important;
    float: none !important;
    margin: 22px 0 0 !important;
    padding: 0 !important;
}

body.single-product div.product .product_title {
    margin: 0 0 16px !important;

    font-size: clamp(34px, 3vw, 48px) !important;
    line-height: 1.08 !important;
}

body.single-product .woocommerce-product-details__short-description {
    max-width: 560px;
    margin: 0 0 18px;

    color: #546158;
    font-size: 17px;
    line-height: 1.75;
}

body.single-product .product_meta {
    margin-top: 22px;
    padding-top: 18px;

    border-top: 1px solid rgba(217,185,119,.55);

    font-size: 13px;
    line-height: 1.8;
}

/* Full specifications span entire product width */
body.single-product .cp-product-details {
    grid-column: 1 / -1;

    margin: 50px 0 24px !important;
    padding: 36px 0 12px !important;

    border: 0 !important;
    border-top: 1px solid rgba(217,185,119,.58) !important;

    border-radius: 0 !important;

    background: transparent !important;
}

body.single-product .cp-product-details-inner {
    max-width: 850px;
    margin: 0;
}

body.single-product .cp-product-details h2 {
    margin: 5px 0 22px !important;

    font-size: 32px !important;
}

body.single-product .cp-product-details-copy {
    color: #39453d;
    line-height: 1.85;
}

body.single-product .cp-product-details-copy h3 {
    margin: 25px 0 8px;

    color: #173f28;
    font-size: 20px;
}

/* Related products also span page */
body.single-product .related.products,
body.single-product .upsells.products {
    grid-column: 1 / -1;
    margin-top: 38px;
}

/* Botanical plant remains part of the page */
body.single-product .cp-page-plant-main {
    left: 57% !important;
    right: auto !important;
    width: 27% !important;

    opacity: .56 !important;

    z-index: 0 !important;
}

body.single-product .cp-shop-content {
    position: relative;
    z-index: 1;
}


/* TABLET */
@media(max-width:1100px) {

    body.single-product .cp-shop-content {
        width: 100% !important;
        max-width: none !important;
        padding: 36px 24px 65px !important;
    }

    body.single-product div.product {
        grid-template-columns: minmax(280px,.9fr) minmax(280px,1fr);
        column-gap: 32px;
    }

    body.single-product .cp-page-plant-main {
        left: auto !important;
        right: -2% !important;
        width: 34% !important;
        opacity: .18 !important;
    }
}


/* MOBILE */
@media(max-width:720px) {

    body.single-product div.product {
        display: block;
    }

    body.single-product .woocommerce-product-gallery {
        max-width: 390px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    body.single-product .woocommerce-product-gallery__wrapper {
        min-height: 340px;
    }

    body.single-product .woocommerce-product-gallery__image {
        height: 340px !important;
    }

    body.single-product .woocommerce-product-gallery__image img {
        max-width: 340px !important;
        max-height: 340px !important;
    }

    body.single-product div.product div.summary {
        margin-top: 28px !important;
    }

    body.single-product div.product .product_title {
        font-size: 36px !important;
    }

    body.single-product .cp-product-details {
        margin-top: 38px !important;
        padding-top: 28px !important;
    }

    body.single-product .cp-page-plant-main {
        right: -8% !important;
        width: 52% !important;
        opacity: .12 !important;
    }
}

/* ==========================================================
   CP NEWSLETTER + FOOTER — INNER PAGE FIX
   ========================================================== */

/* Keep footer sections above normal page layers */
.newsletter,
.site-footer {
    position: relative;
    z-index: 10;
    width: 100%;
    box-sizing: border-box;
}

/* Inner pages have a fixed right-side video.
   Reserve that space instead of letting newsletter hide underneath it. */
body:not(.home) .newsletter,
body:not(.home) .site-footer {
    width: calc(100% - 28vw);
}

/* Newsletter layout */
body:not(.home) .newsletter {
    min-height: 210px;
    padding: 30px clamp(28px, 4vw, 64px);

    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 430px);
    align-items: center;
    gap: 42px;

    overflow: hidden;
}

/* Branding side */
body:not(.home) .newsletter-copy {
    min-width: 0;
    display: flex;
    align-items: center;
    gap: 24px;
}

body:not(.home) .newsletter-copy h2 {
    margin: 0;
    font-size: clamp(26px, 2.4vw, 42px);
    line-height: 1.12;
}

/* Email control stays entirely inside newsletter */
body:not(.home) .newsletter-form {
    width: 100%;
    max-width: 430px;
    height: 58px;

    display: grid;
    grid-template-columns: minmax(0,1fr) auto;

    margin: 0;
    overflow: hidden;

    border-radius: 6px;
    background: #fff;
}

body:not(.home) .newsletter-form input {
    width: 100%;
    min-width: 0;
    padding: 0 20px;
    box-sizing: border-box;
}

body:not(.home) .newsletter-form button {
    min-width: 125px;
    padding: 0 18px;
}

/* Status message */
body:not(.home) #cp-signup-status {
    grid-column: 1 / -1;
    margin: 0;
}

/* Footer compactness */
body:not(.home) .site-footer {
    padding: 26px clamp(28px,4vw,64px) 22px;
}

body:not(.home) .footer-top {
    padding-bottom: 20px;
}

body:not(.home) .footer-bottom {
    padding-top: 18px;
}

/* Tablet: fixed video stops being dominant, use full width */
@media(max-width:1100px) {

    body:not(.home) .newsletter,
    body:not(.home) .site-footer {
        width: 100%;
    }

    body:not(.home) .newsletter {
        grid-template-columns: 1fr;
        gap: 24px;
    }

    body:not(.home) .newsletter-form {
        max-width: 560px;
    }
}

/* Mobile */
@media(max-width:720px) {

    body:not(.home) .newsletter {
        padding: 30px 22px;
        gap: 22px;
    }

    body:not(.home) .newsletter-copy {
        gap: 16px;
    }

    body:not(.home) .newsletter-copy h2 {
        font-size: 27px;
    }

    body:not(.home) .newsletter-form {
        max-width: none;
        height: auto;
        grid-template-columns: 1fr;
    }

    body:not(.home) .newsletter-form input,
    body:not(.home) .newsletter-form button {
        min-height: 54px;
    }

    body:not(.home) .site-footer {
        padding: 24px 22px 20px;
    }
}

/* ==========================================================
   CP INNER PAGES — FINAL VIDEO / BOTANICAL LAYER
   ========================================================== */

body:not(.home) #cp-content {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    background: linear-gradient(
        110deg,
        #fbf8f1 0%,
        #fff 75%
    ) !important;
}

/* Full-height botanical layer behind the extended video stage */
body:not(.home) .cp-page-botanicals {
    position: absolute !important;
    inset: 0 !important;
    z-index: 0 !important;

    width: 100% !important;
    height: 100% !important;

    pointer-events: none !important;
    overflow: hidden !important;
}

/* Stage is extended dynamically by store.js */
body:not(.home) .cp-inner-stage {
    position: relative !important;
    z-index: 1 !important;

    display: flow-root;
    width: 100%;

    background: transparent !important;
}

/* Actual content sits over the botanical artwork */
body:not(.home) .cp-shop-content,
body:not(.home) .cp-page-content {
    position: relative !important;
    z-index: 2 !important;
    background: transparent !important;
}

/* Standard inner-page botanical visibility */
body:not(.home) .cp-page-plant-main {
    display: block !important;
    visibility: visible !important;
}

body:not(.home) .cp-page-plant-accent {
    display: block !important;
    visibility: visible !important;
}

/* Product botanical strength */
body.single-product .cp-page-plant-main {
    opacity: .58 !important;
}

/* Desktop video runway */
@media(min-width:1101px) {
    body:not(.home) .pour-col {
        max-height: none !important;
        overflow: visible !important;
    }
}

/* Newsletter/footer begin naturally after the extended stage */
body:not(.home) .newsletter,
body:not(.home) .site-footer {
    position: relative !important;
    z-index: 10;

    float: none !important;
    clear: both !important;

    width: 100% !important;

    left: auto !important;
    right: auto !important;

    transform: none !important;
}


/* ==========================================================
   CP RECIPES — FINAL SINGLE-CARD LAYOUT
   Scoped only to pages actually containing recipe cards.
   ========================================================== */

body:has(.cp-recipe-grid) .cp-recipe-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;

    gap: 30px !important;

    width: 64% !important;
    max-width: 860px !important;

    margin-top: 34px !important;
}

body:has(.cp-recipe-grid) .cp-recipe-card {
    width: 100% !important;

    padding: 36px 38px !important;

    border: 1px solid rgba(217,185,119,.45) !important;
    border-radius: 18px !important;

    background: rgba(255,253,248,.88) !important;

    box-shadow: 0 12px 30px rgba(38,55,38,.06) !important;
}

body:has(.cp-recipe-grid) .cp-recipe-card h2 {
    margin: 0 0 14px !important;

    font-size: 32px !important;
    line-height: 1.2 !important;
}

body:has(.cp-recipe-grid) .cp-recipe-card p,
body:has(.cp-recipe-grid) .cp-recipe-card li {
    font-size: 18px;
    line-height: 1.75;
}

/* Requested recipe flower position */
body:has(.cp-recipe-grid) .cp-page-plant-main {
    left: 49% !important;
    right: auto !important;

    width: 28% !important;
    opacity: .52 !important;
}

body:has(.cp-recipe-grid) .cp-page-plant-accent {
    opacity: .10 !important;
}

@media(max-width:1100px) {

    body:has(.cp-recipe-grid) .cp-recipe-grid {
        width: 82% !important;
        max-width: none !important;
    }

    body:has(.cp-recipe-grid) .cp-page-plant-main {
        left: auto !important;
        right: -2% !important;

        width: 34% !important;
        opacity: .20 !important;
    }
}

@media(max-width:720px) {

    body:has(.cp-recipe-grid) .cp-recipe-grid {
        width: 100% !important;
    }

    body:has(.cp-recipe-grid) .cp-recipe-card {
        padding: 26px 22px !important;
    }

    body:has(.cp-recipe-grid) .cp-recipe-card h2 {
        font-size: 27px !important;
    }
}


/* Footer social icons */
.cp-social-links{
    display:flex;
    align-items:center;
    gap:12px;
}

.cp-social-links a{
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    border:1px solid rgba(23,63,40,.35);
    border-radius:50%;
    color:#173f28;
    text-decoration:none;
    transition:.2s ease;
}

.cp-social-links a:hover{
    color:#fff;
    background:#173f28;
    border-color:#173f28;
    transform:translateY(-1px);
}

.cp-social-links svg{
    width:16px;
    height:16px;
    fill:currentColor;
    stroke:currentColor;
    stroke-width:1.6;
}

.cp-social-links svg rect,
.cp-social-links svg circle{
    fill:none;
}

/* Contact social section */
.cp-contact-social{
    margin-top:38px;
    padding-top:24px;
    border-top:1px solid rgba(217,185,119,.55);
}

.cp-contact-social h2{
    margin:0 0 16px;
    font-size:30px;
}

.cp-contact-social-links{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

.cp-contact-social-links a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:120px;
    padding:11px 18px;
    border:1px solid #173f28;
    border-radius:999px;
    color:#173f28;
    text-decoration:none;
    font-size:13px;
    font-weight:700;
}

.cp-contact-social-links a:hover{
    color:#fff;
    background:#173f28;
}

/* =========================================================
   CP HOME — FINAL MOBILE LAYOUT
   ========================================================= */
@media (max-width: 720px) {

    html,
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    #cp-content,
    .site-shell,
    .products-stage,
    .product-section {
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
    }

    .product-section {
        min-height: 880px;
    }

    .copy {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        padding: 58px 22px 36px;
    }

    .copy > p {
        max-width: 100%;
    }

    .features {
        width: 100%;
        max-width: 360px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 24px 14px;
    }

    .promise {
        width: 100%;
        max-width: 100%;
        padding: 42px 16px;
        overflow: hidden;
    }

    .promise-card {
        width: 100%;
        max-width: 100%;
        padding: 34px 18px;
        overflow: hidden;
    }

    .promise-card h2,
    .promise-card p {
        max-width: 100%;
        overflow-wrap: anywhere;
    }

    .values-row {
        width: 100%;
        max-width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 26px 14px;
    }

    .value {
        min-width: 0;
        width: 100%;
        max-width: 100%;
        justify-content: flex-start;
        gap: 10px;
        text-align: left;
        overflow: hidden;
    }

    .value span,
    .value strong {
        min-width: 0;
        max-width: 100%;
        overflow-wrap: anywhere;
        word-break: normal;
    }

    .value svg {
        flex: 0 0 auto;
    }

    .values-row .value:last-child {
        grid-column: 1 / -1;
        justify-content: center;
        max-width: 260px;
        margin: 0 auto;
    }
}

/* =========================================================
   CP HOME — MOBILE FROZEN SECTION FINAL
   ========================================================= */
@media (max-width: 720px) {

    .frozen {
        min-height: 1180px;
        overflow: hidden;
    }

    .frozen .copy {
        position: relative;
        z-index: 10;
        padding-bottom: 500px;
    }

    .frozen .features {
        position: relative;
        z-index: 10;
        max-width: 340px;
        margin-top: 38px;
        gap: 26px 18px;
    }

    .frozen .cta {
        position: relative;
        z-index: 12;
        margin-top: 34px;
    }

    .frozen-hero {
        left: 4% !important;
        right: auto !important;
        bottom: 0 !important;
        top: auto !important;
        width: 92% !important;
        height: auto !important;
        max-height: 500px;
        object-fit: contain;
        object-position: center bottom;
        z-index: 4;
    }

    .frozen .botanical {
        z-index: 2;
    }
}

/* Keep the honey column visible beside mobile content, as on desktop. */
@media (max-width: 1100px) {
  .pour-col { display: block; pointer-events: auto; }
  body.home .products-stage, body:not(.home) .cp-inner-stage { width: 72%; max-width: 72%; }
  .products-stage .copy { width: 100%; padding-left: 18px; padding-right: 18px; }
  .products-stage .copy h1, .products-stage .copy h2 { font-size: clamp(28px, 5.8vw, 48px); overflow-wrap: anywhere; }
  .products-stage .copy > p { max-width: 100%; }
  .products-stage .eyebrow { font-size: 8px; letter-spacing: .06em; padding: 10px; white-space: normal; }
  .products-stage .features { gap: 20px 10px; }
  .products-stage .cta { max-width: 100%; padding-left: 14px; padding-right: 14px; }
  .products-stage .product-group { display: none; }
  .products-stage .frozen-hero { left: 0; right: auto; max-width: 100%; height: auto; max-height: 48%; }
  .cp-inner-stage .cp-page-content, .cp-inner-stage .cp-shop-content { padding-left: 16px; padding-right: 16px; }
  .cp-inner-stage h1, .cp-inner-stage h2 { overflow-wrap: anywhere; }
  .cp-inner-stage .woocommerce ul.products { grid-template-columns: 1fr; }
}

/* AR header: remove translated wordmark only, preserve header spacing */
body.lang-ar .site-header > .wordmark{
    visibility:hidden !important;
    pointer-events:none !important;
}

/* Footer links: requested +2px */
.site-footer .footer-links a{
    font-size:calc(100% + 2px) !important;
}

/* Footer social icons slightly larger / clearer */
.site-footer .social-links a,
.site-footer .footer-social a{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    min-height:42px !important;
}

.site-footer .social-links svg,
.site-footer .footer-social svg{
    width:20px !important;
    height:20px !important;
}

.site-footer .social-links i,
.site-footer .footer-social i{
    font-size:20px !important;
}

/* Header brand stays English in both EN and AR */
body.lang-ar .site-header > .wordmark{
    visibility:visible !important;
    pointer-events:auto !important;
}

/* Social icons directly beneath header wordmark */
.header-brand-social{
    display:flex;
    gap:9px;
    align-items:center;
    position:absolute;
    left:34px;
    top:112px;
    z-index:30;
}

.header-brand-social a{
    width:30px;
    height:30px;
    display:flex;
    align-items:center;
    justify-content:center;
    border:1px solid #c7d2ca;
    border-radius:50%;
    color:#173f28;
    text-decoration:none;
}

.header-brand-social svg{
    width:16px;
    height:16px;
    fill:currentColor;
    stroke:currentColor;
    stroke-width:1.4;
}

.header-brand-social a:hover{
    border-color:#173f28;
}

/* Keep same social position in Arabic */
body.lang-ar .header-brand-social{
    direction:ltr;
}

/* Header social icons — fix look and alignment */
.header-brand-social{
    left:88px !important;
    top:132px !important;
    gap:12px !important;
}

.header-brand-social a{
    width:34px !important;
    height:34px !important;
    border:1px solid #c9d3ca !important;
    border-radius:50% !important;
    background:#fff !important;
    color:#173f28 !important;
}

.header-brand-social svg{
    width:18px !important;
    height:18px !important;
}

/* Facebook stays filled */
.header-brand-social a:first-child svg,
.header-brand-social a:first-child svg *{
    fill:currentColor !important;
    stroke:none !important;
}

/* Instagram must be outline, not filled square */
.header-brand-social a:last-child svg,
.header-brand-social a:last-child svg *{
    fill:none !important;
    stroke:currentColor !important;
    stroke-width:1.8 !important;
    stroke-linecap:round !important;
    stroke-linejoin:round !important;
}

/* Arabic keeps same clean placement */
body.lang-ar .header-brand-social{
    left:88px !important;
    top:132px !important;
}

@media(max-width:1100px){
    .header-brand-social{
        left:24px !important;
        top:108px !important;
    }
}

/* =========================================================
   Homepage compact pass — 15% reduction only
   Widths intentionally untouched
   ========================================================= */

body.home .product-section{
    min-height:clamp(553px,51.85vw,952px) !important;
}

body.home .hero{
    min-height:clamp(587px,54.4vw,1003px) !important;
}

body.home .frozen{
    min-height:clamp(578px,50.15vw,935px) !important;
}

/* Vertical spacing only — horizontal padding unchanged */
body.home .product-section .copy{
    padding-top:clamp(68px,8.5vw,153px) !important;
    padding-bottom:51px !important;
}

body.home .hero .copy{
    padding-top:clamp(60px,6.8vw,123px) !important;
}

/* Main homepage titles -15% */
body.home h1{
    font-size:clamp(44px,4.42vw,85px) !important;
}

body.home h2{
    font-size:clamp(36.5px,3.57vw,69.7px) !important;
}

body.home .promise h2{
    font-size:clamp(29px,2.64vw,51px) !important;
}

body.home .newsletter h2{
    font-size:clamp(25.5px,2.25vw,44px) !important;
}

/* Arabic newsletter: preserve EN geometry, change direction only */
body.lang-ar .newsletter{
    direction:rtl !important;
}

body.lang-ar .newsletter-copy{
    direction:rtl !important;
}

body.lang-ar .newsletter-copy h2{
    text-align:right !important;
}

body.lang-ar .newsletter-form{
    direction:rtl !important;
}

body.lang-ar .newsletter-form input{
    direction:rtl !important;
    text-align:right !important;
}

body.lang-ar .newsletter-form button{
    direction:rtl !important;
}

/* AR newsletter = EN layout, RTL only */
body.lang-ar .newsletter{
    direction:rtl !important;
}

body.lang-ar .newsletter-copy,
body.lang-ar .newsletter-form{
    direction:rtl !important;
}

body.lang-ar .newsletter-copy h2,
body.lang-ar .newsletter-form input{
    text-align:right !important;
}

/* AR newsletter: nudge copy + logo slightly left */
body.lang-ar .newsletter-copy{
    transform:translateX(-32px);
}

/* Mobile safeguard for recent AR newsletter adjustment */
@media(max-width:720px){

    body.lang-ar .newsletter-copy{
        transform:none !important;
    }

    .newsletter{
        direction:inherit !important;
    }

    .newsletter-copy{
        width:100% !important;
    }

    .newsletter-copy h2,
    body.lang-ar .newsletter-copy h2{
        text-align:center !important;
    }

    .newsletter .newsletter-logo{
        width:84px !important;
        height:84px !important;
        margin:0 auto 18px !important;
    }

    .newsletter-form{
        width:100% !important;
    }

    .newsletter-form input,
    .newsletter-form button{
        width:100% !important;
        min-height:54px !important;
    }
}

/* Mobile: remove header social icons so they don't overlap menu */
@media(max-width:720px){
    .header-brand-social{
        display:none !important;
    }
}

/* Mobile footer social icons */
.mobile-footer-social{
    display:none;
}

@media(max-width:720px){

    /* Don't overlap mobile header/menu */
    .header-brand-social{
        display:none !important;
    }

    .mobile-footer-social{
        display:flex !important;
        justify-content:center;
        align-items:center;
        gap:14px;
        width:100%;
        margin:20px 0 4px;
        direction:ltr;
    }

    .mobile-footer-social a{
        display:flex;
        align-items:center;
        justify-content:center;
        width:40px;
        height:40px;
        border:1px solid #aebbb2;
        border-radius:50%;
        background:#fff;
        color:#173f28;
    }

    .mobile-footer-social svg{
        width:20px;
        height:20px;
    }

    .mobile-footer-social a:first-child svg,
    .mobile-footer-social a:first-child svg *{
        fill:currentColor;
        stroke:none;
    }

    .mobile-footer-social a:last-child svg,
    .mobile-footer-social a:last-child svg *{
        fill:none;
        stroke:currentColor;
        stroke-width:1.8;
        stroke-linecap:round;
        stroke-linejoin:round;
    }
}
