@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Playfair+Display:wght@500;600&display=swap');
:root{--green:#103f35;--green-dark:#0a2e27;--orange:#f47b20;--cream:#f6f4ee;--white:#fff;--ink:#14231f;--muted:#52615c;--line:#dfe3df;--serif:'Playfair Display',Georgia,serif;--sans:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;--container:min(94vw,116rem);--radius:1.35rem}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:var(--sans);font-size:clamp(1rem,.92rem + .18vw,1.125rem);line-height:1.65;background:#fff}body.menu-open{overflow:hidden}img{max-width:100%;height:auto}a{color:inherit;text-decoration-thickness:.08em;text-underline-offset:.2em}button,input,select,textarea{font:inherit}.container{width:var(--container);margin-inline:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:10000;padding:.75rem 1rem;background:#fff;transform:translateY(-150%)}.skip-link:focus{transform:none}.utility-bar{background:var(--green);color:#fff;font-size:.82rem}.utility-inner{min-height:2.55rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.utility-inner>span{opacity:.7}.utility-inner div{display:flex;gap:1.65rem}.utility-inner a{text-decoration:none;font-weight:600}.site-header{background:#fff;position:relative;z-index:50;border-bottom:1px solid var(--line)}.header-main{min-height:7.4rem;display:grid;grid-template-columns:minmax(12rem,1fr) auto minmax(10rem,1fr);align-items:center;gap:2rem}.brand{display:flex;flex-direction:column;align-items:flex-start;width:max-content}.custom-logo{display:block;max-width:min(17rem,28vw);height:auto}.wordmark{font-family:var(--serif);font-size:clamp(1.65rem,2.1vw,2.35rem);line-height:1;text-decoration:none;font-weight:600;letter-spacing:-.04em}.wordmark span{color:var(--orange)}.tagline{font-size:.62rem;line-height:1;margin-top:.55rem;letter-spacing:.23em;font-weight:700}.primary-navigation ul{display:flex;align-items:center;gap:clamp(1.2rem,2vw,2.25rem);list-style:none;margin:0;padding:0}.primary-navigation a{text-decoration:none;font-family:var(--serif);font-size:1rem;font-weight:600}.primary-navigation a:hover,.primary-navigation a:focus-visible{color:var(--orange)}.header-actions{display:flex;justify-content:flex-end;align-items:center;gap:.35rem}.icon-button{position:relative;width:2.75rem;height:2.75rem;display:grid;place-items:center;border:0;background:transparent;color:var(--green);cursor:pointer;border-radius:50%}.icon-button:hover,.icon-button:focus-visible{background:var(--cream)}.icon-button svg{width:1.45rem;height:1.45rem;fill:none;stroke:currentColor;stroke-width:1.7}.cart-count{position:absolute;top:0;right:0;background:var(--orange);color:#fff;border-radius:50%;min-width:1.05rem;height:1.05rem;line-height:1.05rem;font-size:.65rem}.menu-toggle{display:none}.menu-close{display:none}.header-search{border-top:1px solid var(--line);padding:1rem;background:#fff}.header-search form{display:flex;max-width:44rem;margin:auto}.header-search label{flex:1}.header-search input[type=search]{width:100%;height:3rem;padding:0 1rem;border:1px solid var(--line)}.header-search input[type=submit]{border:0;background:var(--green);color:#fff;padding:0 1.5rem}.hero{background:var(--cream);padding:clamp(2.5rem,5vw,6.5rem) 0}.hero-grid{display:grid;grid-template-columns:minmax(20rem,.76fr) minmax(32rem,1.35fr);align-items:center;gap:clamp(2.5rem,5vw,7rem)}.hero-copy{padding-left:clamp(0rem,1.5vw,2rem)}.eyebrow{margin:0 0 1.5rem;color:var(--orange);font-size:.77rem;font-weight:700;letter-spacing:.2em}.hero h1{font-family:var(--serif);font-size:clamp(3rem,5vw,6rem);line-height:.98;letter-spacing:-.045em;font-weight:500;margin:0;max-width:9.5ch}.hero-description{max-width:35rem;color:var(--muted);font-size:clamp(1.05rem,1.2vw,1.3rem);margin:2.6rem 0 2rem}.hero-actions{display:flex;flex-wrap:wrap;gap:.8rem}.button,.wp-element-button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{display:inline-flex;align-items:center;justify-content:center;gap:1.3rem;min-height:4rem;padding:.8rem 2rem;border:0;border-radius:.5rem;text-decoration:none;font-size:.82rem;font-weight:700;letter-spacing:.02em}.button-primary,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--green)!important;color:#fff!important}.button-accent{background:var(--orange);color:#fff}.button:hover,.button:focus-visible{filter:brightness(1.08);transform:translateY(-1px)}.hero-media{position:relative;aspect-ratio:4/3;border-radius:var(--radius);overflow:hidden;background:#ddd;box-shadow:0 1.5rem 4rem rgba(20,35,31,.12)}.slides,.slide,.hero-video,.hero-fallback{position:absolute;inset:0;width:100%;height:100%}.slide{margin:0;opacity:0;visibility:hidden;transition:opacity .65s ease}.slide.is-active{opacity:1;visibility:visible}.slide img,.hero-video,.hero-fallback{width:100%;height:100%;object-fit:cover;object-position:var(--focal-x,50%) var(--focal-y,50%)}.slider-controls{position:absolute;z-index:3;left:1rem;right:1rem;bottom:1rem;display:flex;align-items:center;justify-content:center;gap:.45rem}.slider-controls button,.media-toggle{border:0;color:#fff;background:rgba(16,63,53,.88);min-width:2.75rem;height:2.75rem;border-radius:50%;cursor:pointer}.slider-dots{display:flex;gap:.35rem;padding:.55rem;border-radius:2rem;background:rgba(255,255,255,.88)}.slider-dots button{min-width:.6rem;width:.6rem;height:.6rem;padding:0;background:#b4beb9}.slider-dots button[aria-current=true]{background:var(--orange)}.video-toggle{position:absolute;z-index:3;bottom:1rem;right:1rem}.hero-placeholder{height:100%;display:grid;place-content:center;text-align:center;padding:2rem;color:var(--green);background:linear-gradient(135deg,#e9e5d9,#faf9f5)}.hero-placeholder span{font:600 2.4rem var(--serif)}.featured-section{padding:clamp(4rem,7vw,8rem) 0}.section-heading{display:grid;grid-template-columns:1fr auto;align-items:end;margin-bottom:2rem}.section-heading .eyebrow{grid-column:1/-1;margin-bottom:.7rem}.section-heading h2{font:500 clamp(2rem,3.8vw,4rem)/1.1 var(--serif);margin:0}.section-heading>a{color:var(--green);font-weight:700}.setup-notice{padding:3rem;background:var(--cream);border-radius:var(--radius)}.page-main,.shop-main,.content-layout{padding-block:clamp(3rem,6vw,7rem);min-height:55vh}.page-main h1,.shop-main h1,.archive-header h1{font:500 clamp(2.5rem,5vw,5rem)/1.05 var(--serif)}.entry-content{max-width:54rem}.content-card{padding:2rem 0;border-bottom:1px solid var(--line)}.content-card h2{font-family:var(--serif)}.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.5rem}.woocommerce ul.products:before,.woocommerce ul.products:after{display:none}.woocommerce ul.products li.product{width:auto!important;margin:0!important}.woocommerce ul.products li.product img{border-radius:1rem;aspect-ratio:1/1;object-fit:cover}.woocommerce ul.products li.product .woocommerce-loop-product__title{font:600 1.25rem var(--serif);color:var(--ink)}.woocommerce .price{color:var(--green)!important}.woocommerce-breadcrumb,.rank-math-breadcrumb{width:var(--container);margin:1rem auto!important;font-size:.8rem}.site-footer{background:var(--green-dark);color:#fff;padding:clamp(3.5rem,6vw,6rem) 0 1.5rem}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:4rem}.footer-mark{display:inline-block}.footer-grid p{max-width:28rem;color:rgba(255,255,255,.7)}.footer-grid h2{font:600 1.25rem var(--serif)}.footer-grid ul{list-style:none;padding:0}.footer-grid a{display:block;text-decoration:none;margin:.45rem 0}.footer-grid address{font-style:normal}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;margin-top:4rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.2);font-size:.8rem;color:rgba(255,255,255,.65)}
@media(max-width:68rem){.header-main{grid-template-columns:1fr auto}.menu-toggle{display:grid}.primary-navigation{position:absolute;z-index:100;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--line);padding:1rem max(3vw,1rem) 2rem;box-shadow:0 1rem 2rem rgba(0,0,0,.08);display:none}.primary-navigation.is-open{display:block}.primary-navigation ul{display:block}.primary-navigation li{border-bottom:1px solid var(--line)}.primary-navigation a{display:block;padding:1rem;font-size:1.2rem}.menu-toggle[aria-expanded=true] .menu-open{display:none}.menu-toggle[aria-expanded=true] .menu-close{display:block}.hero-grid{grid-template-columns:minmax(18rem,.8fr) minmax(25rem,1.2fr);gap:2.5rem}.hero h1{font-size:clamp(3rem,6vw,4.8rem)}.woocommerce ul.products{grid-template-columns:repeat(3,minmax(0,1fr))}.utility-inner>span{display:none}.utility-inner{justify-content:flex-end}}
@media(max-width:50rem){.utility-bar{display:none}.header-main{min-height:6rem}.custom-logo{max-width:12rem}.hero{padding-top:3rem}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:0}.hero h1{font-size:clamp(3.1rem,11vw,5.2rem);max-width:11ch}.hero-description{margin:1.75rem 0}.hero-media{aspect-ratio:4/3}.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:32rem){.header-main{gap:.5rem}.wordmark{font-size:1.45rem}.tagline{font-size:.5rem}.account-link{display:none}.hero-actions{display:grid}.button{width:100%}.hero h1{font-size:clamp(2.85rem,14vw,4rem)}.section-heading{display:block}.section-heading>a{display:inline-block;margin-top:1rem}.woocommerce ul.products{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{display:block}.slider-controls{left:.5rem;right:.5rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
html,body{overflow-x:clip}.hero-copy,.hero-media,.brand,.header-actions{min-width:0}
@media(max-width:32rem){.header-main{grid-template-columns:minmax(0,1fr) auto}.header-actions{gap:0}.icon-button{width:2.5rem}.wordmark{font-size:1.3rem}.hero h1{overflow-wrap:anywhere}.hero-grid>*{min-width:0}}

/* Single product summary */
.single-product .shop-main{padding-block:clamp(2.5rem,5vw,5.5rem)}
.single-product div.product{color:#1A2421}
.single-product div.product .summary{min-width:0;padding:clamp(1.5rem,3vw,2.5rem);background:#fff;border:1px solid #e2e7e4;border-radius:1rem;box-shadow:0 .75rem 2.5rem rgba(26,36,33,.06)}
.single-product div.product .summary>*{margin-top:0;margin-bottom:1.25rem}
.single-product div.product .summary .product_title{margin-bottom:1rem;color:#1A2421;font:600 clamp(2rem,2.5vw,2.25rem)/1.2 var(--serif);letter-spacing:-.025em;overflow-wrap:anywhere}
.single-product div.product .summary .price{margin-bottom:1.5rem;color:#0B6623!important;font-size:clamp(1.5rem,2vw,1.75rem);font-weight:700;line-height:1.25}
.single-product div.product .summary .price del{font-size:.75em;color:var(--muted);opacity:.7}
.single-product div.product .summary .price ins{text-decoration:none}
.single-product div.product .woocommerce-product-details__short-description{margin-bottom:1.75rem;color:#34433e;font-size:.98rem;line-height:1.5}
.single-product div.product .woocommerce-product-details__short-description p{margin:.45rem 0}
.single-product .pr-product-specifications,.single-product div.product .woocommerce-product-details__short-description ul{display:grid;gap:.55rem;margin:0;padding:0;list-style:none}
.single-product .pr-product-specifications li,.single-product div.product .woocommerce-product-details__short-description li{position:relative;padding-left:1.35rem}
.single-product .pr-product-specifications li::before,.single-product div.product .woocommerce-product-details__short-description li::before{content:"";position:absolute;top:.62em;left:.1rem;width:.42rem;height:.42rem;border-radius:50%;background:#0B6623;box-shadow:0 0 0 .22rem rgba(11,102,35,.12)}
.single-product div.product form.cart{display:flex;align-items:stretch;gap:.75rem;margin:0 0 1rem}
.single-product div.product form.cart::before,.single-product div.product form.cart::after{display:none}
.single-product div.product form.cart .quantity{float:none;margin:0}
.single-product div.product form.cart .quantity .qty{width:5rem;height:3rem;margin:0;padding:.5rem;border:1px solid #b7c1bd;border-radius:.5rem;color:#1A2421;background:#fff;text-align:center}
.single-product div.product form.cart .single_add_to_cart_button{min-height:3rem;height:3rem;margin:0;padding:.65rem 1.5rem;border-radius:.5rem;background:#0B6623!important;white-space:nowrap}
.single-product div.product form.cart.variations_form,.single-product div.product form.cart.grouped_form{display:block}
.single-product div.product form.cart.variations_form .variations,.single-product div.product form.cart.grouped_form .group_table{width:100%;margin-bottom:1rem}
.single-product div.product form.cart.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart{display:flex;align-items:stretch;gap:.75rem}
.single-product div.product form.cart select{max-width:100%;min-height:3rem;padding:.45rem .75rem;border:1px solid #b7c1bd;border-radius:.5rem;background:#fff}
.single-product div.product .summary .pre-enquire{display:flex;width:100%;min-height:3rem;margin:0 0 1.25rem;border:2px solid #0B6623;border-radius:.5rem;background:#fff!important;color:#0B6623!important}
.single-product div.product .summary .pre-enquire:hover,.single-product div.product .summary .pre-enquire:focus-visible{background:#0B6623!important;color:#fff!important}
.single-product div.product .product_meta{padding-top:1rem;border-top:1px solid #e2e7e4;color:var(--muted);font-size:.82rem;line-height:1.5}
.single-product div.product .product_meta .tagged_as{display:none!important}
.single-product div.product .product_meta .posted_in{display:block}
.single-product div.product .product_meta a{color:#42524c}
.single-product div.product .stock{margin-bottom:1rem;color:#0B6623}
.single-product div.product .woocommerce-error,.single-product div.product .woocommerce-info,.single-product div.product .woocommerce-message{overflow-wrap:anywhere}
@media(max-width:50rem){.single-product div.product .summary{padding:clamp(1.25rem,5vw,2rem)}.single-product div.product .summary .product_title{font-size:clamp(1.625rem,7vw,1.75rem)}.single-product div.product form.cart{width:100%}.single-product div.product form.cart .single_add_to_cart_button{flex:1;min-width:0}.single-product div.product form.cart.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart{width:100%}}
@media(max-width:24rem){.single-product div.product form.cart,.single-product div.product form.cart.variations_form .single_variation_wrap .woocommerce-variation-add-to-cart{flex-wrap:wrap}.single-product div.product form.cart .quantity{flex:0 0 5rem}.single-product div.product form.cart .single_add_to_cart_button{flex:1 1 10rem}}

/* Live WooCommerce category navigation and overview */
.primary-navigation{display:flex;align-items:center;gap:clamp(1.2rem,2vw,2.25rem)}
.category-navigation{position:relative;display:flex;align-items:center}
.category-overview-link{white-space:nowrap}
.category-toggle{display:grid;place-items:center;width:2rem;height:2rem;margin-left:.15rem;padding:0;border:0;border-radius:50%;background:transparent;color:var(--green);cursor:pointer}
.category-toggle:hover,.category-toggle:focus-visible{background:var(--cream)}
.category-dropdown{position:absolute;z-index:150;top:calc(100% + .8rem);left:0;display:none;width:min(44rem,88vw);max-height:min(70vh,42rem);padding:1rem;border:1px solid var(--line);border-radius:.75rem;background:#fff;box-shadow:0 1rem 2.5rem rgba(20,35,31,.16);overflow:auto}
.category-navigation:hover .category-dropdown,.category-navigation:focus-within .category-dropdown,.category-navigation.is-open .category-dropdown{display:block}
.category-dropdown .category-menu-level{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:.65rem;margin:0;padding:0;list-style:none}
.category-dropdown .category-menu-level .category-menu-level{grid-template-columns:1fr;margin:.45rem 0 0 .65rem;padding-left:.65rem;border-left:2px solid var(--line)}
.category-dropdown li{min-width:0}
.category-dropdown .category-menu-button,.category-card{display:block;padding:.7rem .9rem;border:1px solid var(--line);border-radius:.5rem;background:var(--cream);color:var(--green);font:700 .9rem/1.25 var(--sans);text-decoration:none;overflow-wrap:anywhere}
.category-dropdown .category-menu-button:hover,.category-dropdown .category-menu-button:focus-visible,.category-card:hover,.category-card:focus-visible{border-color:var(--orange);color:var(--orange)}
.category-overview-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.25rem;margin-top:2rem}
.category-overview-card{min-width:0;padding:1rem;border:1px solid var(--line);border-radius:1rem}
.category-overview-card>.category-card{font:600 1.25rem var(--serif)}
.category-overview-card .category-menu-level{display:grid;gap:.5rem;margin:.75rem 0 0;padding:0;list-style:none}
.category-overview-card .category-menu-level .category-menu-level{margin-left:.75rem;padding-left:.75rem;border-left:2px solid var(--line)}
.category-overview-card .category-menu-button{display:block;padding:.45rem .65rem;border-radius:.35rem;background:#fff;color:var(--green);font-size:.9rem;text-decoration:none}
.category-child-links{margin:0 0 2rem}
.category-child-links h2{font:600 clamp(1.4rem,2.5vw,2rem)/1.2 var(--serif)}
.category-button-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}
@media(max-width:68rem){.primary-navigation{display:none;align-items:stretch}.primary-navigation.is-open{display:block}.category-navigation{display:grid;grid-template-columns:1fr auto;border-bottom:1px solid var(--line)}.category-overview-link{display:block;padding:1rem;font-size:1.2rem}.category-toggle{width:3rem;height:3rem;margin:.35rem}.category-dropdown{position:static;grid-column:1/-1;width:100%;max-height:55vh;margin:0 0 1rem;box-shadow:none}.category-navigation:hover .category-dropdown{display:none}.category-navigation:focus-within .category-dropdown,.category-navigation.is-open .category-dropdown{display:block}.category-button-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:50rem){.category-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:32rem){.category-dropdown .category-menu-level,.category-overview-grid,.category-button-grid{grid-template-columns:1fr}}
:root{--green:#0B6623;--green-dark:#1A2421;--ink:#1A2421;--orange:#f47b20;--muted:#4f5f59}
.slider-controls button,.media-toggle{background:rgba(11,102,35,.9)}
.wordmark{color:var(--green)}.wordmark span{color:var(--orange)}
.brand{align-items:center}.brand .tagline{width:100%;text-align:center}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}
.primary-navigation a{font-family:var(--sans);font-weight:600;letter-spacing:.01em}
.utility-bar,.hero-description,.footer-grid,.footer-bottom{font-weight:500}
.button-accent{background:var(--orange);color:#fff}
@media(min-width:68.01rem){.hero{padding:clamp(3rem,6vh,5.5rem) 0}.hero-media{aspect-ratio:16/10;max-height:68svh}.hero h1{font-size:clamp(3.4rem,4.7vw,5.7rem)}}
.footer-location{display:flex!important;align-items:flex-start;gap:.65rem;max-width:19rem;margin-top:.8rem!important;line-height:1.45}.footer-location svg{flex:0 0 1.2rem;width:1.2rem;height:1.2rem;margin-top:.15rem;fill:none;stroke:var(--orange);stroke-width:1.8}.footer-location span{display:block}
.utility-taglines{position:relative;display:block!important;flex:1;min-width:0;height:1.4em;overflow:hidden;opacity:.86}.utility-tagline{position:absolute;inset:0 auto auto 0;opacity:0;transform:translateY(.45rem);transition:opacity .45s ease,transform .45s ease;white-space:nowrap}.utility-tagline.is-active{opacity:1;transform:none}.utility-contact{display:flex;gap:1.65rem}
@media(max-width:68rem){.utility-taglines{display:block!important}.utility-inner{justify-content:space-between}}
@media(max-width:50rem){.utility-bar{display:none}}
@media(prefers-reduced-motion:reduce){.utility-tagline{transition:none}}

/* WooCommerce product imagery and lower product content */
.woocommerce ul.products li.product{display:flex;flex-direction:column;min-width:0}
.woocommerce ul.products li.product>a.woocommerce-LoopProduct-link{display:block}
.woocommerce ul.products li.product a img{display:block;width:100%;height:auto;aspect-ratio:1/1;margin:0 0 1rem;padding:clamp(.65rem,1.3vw,1.15rem);border:1px solid #e2e7e4;border-radius:1rem;background:#fff;object-fit:contain;object-position:center}
.woocommerce ul.products li.product .button{align-self:flex-start;margin-top:auto}
.single-product div.product div.images{width:48%;margin-bottom:clamp(2rem,5vw,4.5rem)}
.single-product div.product div.summary{width:48%}
.single-product .woocommerce-product-gallery__wrapper{margin:0}
.single-product .woocommerce-product-gallery__image{aspect-ratio:1/1;overflow:hidden;border:1px solid #e2e7e4;border-radius:1rem;background:#fff}
.single-product .woocommerce-product-gallery__image a{display:grid;width:100%;height:100%;place-items:center}
.single-product div.product div.images .woocommerce-product-gallery__image img{display:block;width:100%;height:100%;padding:clamp(.75rem,2vw,1.5rem);object-fit:contain;object-position:center}
.single-product div.product div.images .flex-control-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem;margin-top:.75rem}
.single-product div.product div.images .flex-control-thumbs li{float:none;width:auto;margin:0}
.single-product div.product div.images .flex-control-thumbs img{width:100%;height:auto;aspect-ratio:1/1;padding:.35rem;border:1px solid #dce3df;border-radius:.55rem;background:#fff;object-fit:contain}
.single-product div.product .woocommerce-tabs{clear:both;margin:0;padding:clamp(2rem,4vw,3.5rem) 0;border-top:1px solid #e2e7e4}
.single-product div.product .woocommerce-tabs ul.tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin:0 0 1.5rem;padding:0;border:0}
.single-product div.product .woocommerce-tabs ul.tabs::before,.single-product div.product .woocommerce-tabs ul.tabs li::before,.single-product div.product .woocommerce-tabs ul.tabs li::after{display:none}
.single-product div.product .woocommerce-tabs ul.tabs li{margin:0;padding:0;border:1px solid #d7dfdb;border-radius:.5rem;background:#fff}
.single-product div.product .woocommerce-tabs ul.tabs li.active{border-color:#0B6623;background:#0B6623}
.single-product div.product .woocommerce-tabs ul.tabs li a{padding:.7rem 1rem;color:#1A2421;font-size:.9rem}
.single-product div.product .woocommerce-tabs ul.tabs li.active a{color:#fff}
.single-product div.product .woocommerce-tabs .panel{max-width:58rem;margin:0;color:#34433e}
.single-product div.product .woocommerce-tabs .panel h2,.single-product .related.products>h2{margin:0 0 1.25rem;color:#1A2421;font:600 clamp(1.6rem,2.4vw,2.15rem)/1.2 var(--serif)}
.single-product .related.products{clear:both;margin:0;padding:clamp(2rem,4vw,4rem) 0 0;border-top:1px solid #e2e7e4}
.single-product .related.products ul.products{margin-bottom:0}
.single-product .shop-main>.widget,.single-product .shop-main>.widget-area,.single-product #secondary{display:none}
body.menu-open .woocommerce-product-gallery__trigger{visibility:hidden}
@media(max-width:50rem){.single-product div.product div.images,.single-product div.product div.summary{float:none;width:100%}.single-product div.product div.images{max-width:40rem;margin-inline:auto}.single-product div.product .woocommerce-tabs{padding-top:2.25rem}.single-product .related.products{padding-top:2.25rem}}

/* Compact header search and fly-out product category menu (v1.3). */
.header-actions{min-width:0}.header-product-search{position:relative;width:clamp(10rem,14vw,12.5rem);height:2.5rem;flex:0 1 12.5rem}.header-product-search label{display:block;height:100%}.header-product-search input[type=search]{width:100%;height:100%;padding:0 2.65rem 0 .8rem;border:1px solid rgba(11,102,35,.45);border-radius:.65rem;outline:0;background:#fff;color:var(--ink);font-size:.85rem}.header-product-search input[type=search]:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(11,102,35,.1)}.header-product-search button{position:absolute;top:0;right:0;width:2.5rem;height:2.5rem;display:grid;place-items:center;padding:0;border:0;border-radius:0 .65rem .65rem 0;background:transparent;color:var(--green);cursor:pointer}.header-product-search button:hover,.header-product-search button:focus-visible{background:var(--cream)}.header-product-search svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.8}
.category-navigation{position:relative;display:block;padding-block:.8rem}.category-overview-link{display:block;white-space:nowrap}.category-dropdown{position:absolute;z-index:150;top:100%;left:0;display:none;width:15.5rem;max-height:none;padding:.45rem;border:1px solid var(--line);border-radius:.65rem;background:#fff;box-shadow:0 1rem 2.5rem rgba(20,35,31,.16);overflow:visible}.category-navigation:hover>.category-dropdown,.category-navigation:focus-within>.category-dropdown,.category-navigation.is-open>.category-dropdown{display:block}.category-navigation.is-keyboard-closed>.category-dropdown{display:none!important}.category-dropdown .category-menu-level{display:block;margin:0;padding:0;list-style:none}.category-dropdown .category-menu-item{position:relative;min-width:0;margin:0}.category-dropdown .category-menu-row{display:flex;align-items:stretch;margin:.2rem 0}.category-dropdown .category-menu-button{display:block;min-width:0;flex:1;padding:.58rem .7rem;border:1px solid var(--line);border-radius:.4rem;background:var(--cream);color:var(--green);font:700 .82rem/1.25 var(--sans);text-decoration:none;overflow-wrap:anywhere}.category-dropdown .has-children>.category-menu-row>.category-menu-button{padding-right:.35rem;border-radius:.4rem 0 0 .4rem;border-right:0}.subcategory-toggle{display:grid;width:2.35rem;flex:0 0 2.35rem;place-items:center;padding:0;border:1px solid var(--line);border-left:0;border-radius:0 .4rem .4rem 0;background:var(--cream);color:var(--green);font-size:1.3rem;line-height:1;cursor:pointer}.category-dropdown .category-menu-button:hover,.category-dropdown .category-menu-button:focus-visible,.subcategory-toggle:hover,.subcategory-toggle:focus-visible{border-color:var(--orange);color:var(--orange)}.category-dropdown .category-menu-item>.category-menu-level{position:absolute;top:-.45rem;left:calc(100% - 2px);display:none;width:15.5rem;padding:.45rem;border:1px solid var(--line);border-radius:.65rem;background:#fff;box-shadow:0 1rem 2.5rem rgba(20,35,31,.14)}.category-dropdown .category-menu-item:hover>.category-menu-level,.category-dropdown .category-menu-item:focus-within>.category-menu-level,.category-dropdown .category-menu-item.is-open>.category-menu-level{display:block}
@media(max-width:68rem){.header-main{grid-template-columns:minmax(9rem,1fr) auto;gap:clamp(.5rem,2vw,1.25rem)}.primary-navigation{display:none;align-items:stretch}.primary-navigation.is-open{display:block}.category-navigation{display:block;padding:0;border-bottom:1px solid var(--line)}.category-overview-link{display:block;padding:1rem;font-size:1.2rem}.category-dropdown{position:static;display:none;width:100%;max-height:55vh;margin:0 0 .75rem;padding:.35rem .75rem;border:0;border-radius:0;box-shadow:none;overflow-y:auto}.category-navigation:hover>.category-dropdown,.category-navigation:focus-within>.category-dropdown{display:none}.category-navigation.is-open>.category-dropdown{display:block}.category-dropdown .category-menu-item>.category-menu-level{position:static;display:none;width:auto;margin:.2rem 0 .4rem .85rem;padding:.15rem 0 .15rem .65rem;border:0;border-left:2px solid var(--line);border-radius:0;box-shadow:none}.category-dropdown .category-menu-item:hover>.category-menu-level,.category-dropdown .category-menu-item:focus-within>.category-menu-level{display:none}.category-dropdown .category-menu-item.is-open>.category-menu-level{display:block}.category-dropdown .category-menu-item.is-open>.category-menu-row>.subcategory-toggle>span[aria-hidden=true]{transform:rotate(90deg)}}
@media(max-width:50rem){.header-product-search{width:clamp(8rem,30vw,10rem);flex-basis:10rem}.header-product-search input[type=search]{font-size:.78rem}.header-actions{gap:.1rem}}
@media(max-width:32rem){.header-main{grid-template-columns:minmax(7rem,1fr) auto}.brand{min-width:0}.wordmark{font-size:clamp(1.05rem,5vw,1.3rem)}.tagline{letter-spacing:.13em}.header-product-search{width:clamp(7.25rem,36vw,9rem);flex-basis:9rem}.header-product-search input[type=search]{padding-left:.6rem;padding-right:2.25rem}.header-product-search button{width:2.2rem}.icon-button{width:2.35rem}}
.category-overview-card .subcategory-toggle{display:none}@media(min-width:68.01rem){.category-dropdown .category-menu-item>.category-menu-level{margin:0}}

/* Homepage occasion cards and responsive hardening (v1.4). */
html,body{max-width:100%;overflow-x:clip}.occasion-section{padding:clamp(3.25rem,6vw,7rem) 0;background:#fff}.occasion-section-heading{margin-bottom:clamp(1.5rem,3vw,2.5rem)}.occasion-section-heading .eyebrow{margin-bottom:.55rem}.occasion-section-heading h2{max-width:18ch;margin:0;color:var(--ink);font:500 clamp(2rem,4vw,4rem)/1.08 var(--serif);letter-spacing:-.025em}.occasion-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(.85rem,1.7vw,1.5rem)}.occasion-card{display:flex;min-width:0;flex-direction:column;padding:.65rem;border:1px solid var(--line);border-radius:1rem;background:#fff;color:var(--ink);text-decoration:none;box-shadow:0 .25rem 1rem rgba(20,35,31,.035);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease}.occasion-card:hover,.occasion-card:focus-visible{border-color:var(--orange);transform:translateY(-2px);box-shadow:0 .8rem 2rem rgba(20,35,31,.09);outline:0}.occasion-card-media{display:grid;width:100%;aspect-ratio:4/3;place-items:center;overflow:hidden;border-radius:.72rem;background:var(--cream)}.occasion-card-image{display:block;width:100%;height:100%;object-fit:cover}.occasion-card-placeholder{display:grid;width:100%;height:100%;place-items:center;background:linear-gradient(145deg,#f6f4ee,#eef3ef);color:var(--green)}.occasion-card-placeholder svg{width:34%;max-width:7rem;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:.52}.occasion-card-name{display:block;padding:1rem .4rem .65rem;text-align:center;font:600 clamp(1rem,1.4vw,1.25rem)/1.3 var(--serif);overflow-wrap:anywhere}.occasion-archive .archive-header{max-width:58rem;margin-bottom:2.25rem}.occasion-archive .archive-header h1{margin-bottom:1rem}.occasion-archive .archive-description{color:var(--muted)}.nav-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:.4rem;margin-top:2.5rem}.nav-links .page-numbers{display:grid;min-width:2.6rem;min-height:2.6rem;padding:.35rem;place-items:center;border:1px solid var(--line);border-radius:.4rem;text-decoration:none}.nav-links .current,.nav-links a:hover,.nav-links a:focus-visible{border-color:var(--green);background:var(--green);color:#fff}
@media(max-width:68rem){.footer-grid{gap:clamp(2rem,5vw,4rem)}.category-dropdown{max-width:100%}}
@media(max-width:56.24rem){.occasion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{grid-template-columns:1fr}.hero-copy{padding:0}.hero-media{width:100%}}
@media(min-width:56.25rem) and (max-width:79.99rem){.occasion-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:22.5rem) and (max-width:50rem){.woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:22.49rem){.occasion-grid,.woocommerce ul.products{grid-template-columns:1fr}.occasion-card{padding:.5rem}.occasion-card-name{padding:.8rem .35rem .5rem}}
@media(max-width:32rem){.container{width:min(92vw,116rem)}.footer-grid{grid-template-columns:1fr;gap:1.75rem}.footer-grid>div:first-child{grid-column:auto}.footer-bottom{margin-top:2.5rem}.hero{padding-block:2.25rem}.hero-media{border-radius:.85rem}.hero-actions{gap:.6rem}.hero-actions .button{min-height:3.25rem}.shop-main,.page-main,.content-layout{padding-block:2.5rem}}
@media(max-width:22.5rem){.header-main{grid-template-columns:minmax(5.25rem,1fr) auto;gap:.35rem}.brand{max-width:6.5rem}.brand .custom-logo{max-width:100%}.wordmark{font-size:1rem}.tagline{font-size:.42rem;letter-spacing:.08em}.header-product-search{width:6.5rem;flex-basis:6.5rem}.header-product-search input[type=search]{font-size:.7rem;padding-left:.45rem;padding-right:2rem}.header-product-search button{width:1.9rem}.icon-button{width:2.15rem;height:2.5rem}.header-actions{gap:0}}
@media(prefers-reduced-motion:reduce){.occasion-card{transition:none}}

/* Typography refinement (v1.4.1): layout and brand styling intentionally unchanged. */
body{font-family:var(--sans);font-size:clamp(1rem,.975rem + .1vw,1.075rem);font-weight:400;line-height:1.62;text-rendering:optimizeLegibility}
p,li,dd,dt,address,.entry-content,.archive-description,.woocommerce-product-details__short-description{line-height:1.62}
button,input,select,textarea{font-family:var(--sans);font-size:1rem;line-height:1.5}
input::placeholder,textarea::placeholder{color:#65736e;opacity:1}
.primary-navigation a,.category-dropdown .category-menu-button,.category-card,.category-overview-card .category-menu-button{font-family:var(--sans);font-weight:600;line-height:1.4;letter-spacing:0;overflow-wrap:anywhere}
.primary-navigation a{font-size:clamp(.95rem,.9rem + .15vw,1.025rem)}
.category-dropdown .category-menu-button{font-size:.925rem}.category-card,.category-overview-card .category-menu-button{font-size:1rem}
.header-product-search input[type=search]{font-size:.9375rem;line-height:1.5}
.button,.wp-element-button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{font-family:var(--sans);font-size:.9375rem;font-weight:600;line-height:1.35;letter-spacing:.01em;text-align:center;white-space:normal;overflow-wrap:anywhere}
.hero h1{font-size:clamp(2.75rem,4.35vw,5.2rem);font-weight:600;line-height:1.03;letter-spacing:-.032em;overflow-wrap:normal;text-wrap:balance}
.hero-description{color:#465650;font-size:clamp(1rem,1vw + .75rem,1.2rem);font-weight:400;line-height:1.65}
.eyebrow{font-size:.78rem;font-weight:700;line-height:1.45;letter-spacing:.13em}
.page-main h1,.shop-main h1,.archive-header h1{font-size:clamp(2.25rem,4vw,4.25rem);font-weight:600;line-height:1.1;letter-spacing:-.025em;overflow-wrap:anywhere;text-wrap:balance}
.section-heading h2,.occasion-section-heading h2{font-size:clamp(2rem,3.35vw,3.6rem);font-weight:600;line-height:1.12;letter-spacing:-.02em;overflow-wrap:anywhere;text-wrap:balance}
.content-card h2,.category-overview-card>.category-card,.category-child-links h2,.single-product div.product .summary .product_title,.single-product div.product .woocommerce-tabs .panel h2,.single-product .related.products>h2{font-weight:600;line-height:1.25;overflow-wrap:anywhere}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--sans);font-size:clamp(1rem,.94rem + .2vw,1.15rem);font-weight:600;line-height:1.4;letter-spacing:0;overflow-wrap:anywhere;word-break:normal;hyphens:auto}
.woocommerce .price,.single-product div.product .summary .price{font-family:var(--sans);font-weight:600;line-height:1.4}
.single-product div.product .woocommerce-product-details__short-description{color:#344740;font-size:1rem;line-height:1.62}
.single-product div.product .product_meta,.woocommerce-breadcrumb,.rank-math-breadcrumb{font-size:.875rem;line-height:1.55}
.occasion-card-name{font-family:var(--sans);font-size:clamp(1rem,.95rem + .18vw,1.15rem);font-weight:600;line-height:1.4;letter-spacing:0;overflow-wrap:anywhere;word-break:normal;hyphens:auto}
.footer-grid{font-weight:400;line-height:1.62}.footer-grid p{color:rgba(255,255,255,.82)}.footer-grid h2{font-family:var(--sans);font-size:1.125rem;font-weight:600;line-height:1.35}.footer-grid a{font-weight:500}.footer-bottom{color:rgba(255,255,255,.78);font-size:.875rem;line-height:1.55}
@media(max-width:50rem){.hero h1{font-size:clamp(2.45rem,10vw,4.25rem);line-height:1.06}.primary-navigation a{font-size:1.05rem}.header-product-search input[type=search]{font-size:.875rem}}
@media(max-width:22.5rem){.hero h1{font-size:clamp(2.2rem,12vw,2.75rem)}.header-product-search input[type=search]{font-size:.75rem}.occasion-card-name,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:1rem}}
