.l4d-header-widget { --ink:#17352f; --green:#315f57; --green-dark:#214840; --lime:#8aa55e; --paper:#fffdf9; --line:rgba(23,53,47,.14); width:100%; color:var(--ink); font-family:"DM Sans",Arial,sans-serif; }.l4d-header-widget * { box-sizing:border-box; }.l4d-header-widget a { color:inherit; text-decoration:none; }.l4d-header-widget button { font:inherit; appearance:none; -webkit-appearance:none; }.l4d-header-widget :where(a,button):focus { outline:none !important; }.l4d-header-widget :where(a,button):focus-visible { outline:2px solid var(--lime) !important; outline-offset:3px; }.he-sr-only { position:absolute !important; width:1px !important; height:1px !important; padding:0 !important; margin:-1px !important; overflow:hidden !important; clip:rect(0,0,0,0) !important; white-space:nowrap !important; border:0 !important; }
.he-site-header { position:relative; width:100%; border-bottom:1px solid var(--line); background:var(--paper); }.he-site-header-inner { display:grid; grid-template-columns:minmax(8rem,1fr) auto minmax(8rem,1fr); align-items:center; min-height:5.75rem; gap:1.25rem; width:100%; padding:.7rem clamp(1rem,4vw,4.5rem); }.he-site-logo { display:flex; align-items:center; justify-self:start; min-width:0; font-size:1.2rem; font-weight:800; }.he-site-logo img { display:block; width:auto; height:var(--he-header-logo-size); max-width:min(28vw,17rem); object-fit:contain; }.he-site-navigation { justify-self:center; }.he-site-menu { display:flex; align-items:center; justify-content:center; gap:clamp(.8rem,2.25vw,2.2rem); padding:0; margin:0; list-style:none; }.he-site-menu a { display:block; padding:.45rem .1rem; color:var(--ink) !important; font-size:.92rem; font-weight:800; white-space:nowrap; }.he-site-menu a:hover,.he-site-menu .current-menu-item > a { color:var(--green) !important; }.he-site-actions { display:flex; align-items:center; justify-content:flex-end; gap:.75rem; min-width:0; }.he-site-welcome { overflow:hidden; max-width:12rem; color:var(--green); font-size:.85rem; font-weight:700; text-overflow:ellipsis; white-space:nowrap; }.he-site-account { display:inline-flex; align-items:center; justify-content:center; min-height:2.6rem; padding:.5rem .85rem; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--green) !important; font-size:.86rem; font-weight:800; white-space:nowrap; }.he-site-account:hover { border-color:var(--green); background:var(--green); color:#fff !important; }.he-site-account-toggle { display:none; }.he-site-cart { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:.4rem; min-height:2.6rem; padding:.5rem .8rem; border:1px solid var(--green); border-radius:999px; background:var(--green); color:#fff !important; font-size:.86rem; font-weight:800; white-space:nowrap; }.he-site-cart:hover { border-color:var(--green-dark); background:var(--green-dark); color:#fff !important; }.he-site-cart svg,.he-site-account-toggle svg { width:1.15rem; height:1.15rem; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }.he-site-cart b { display:grid; place-items:center; min-width:1.25rem; height:1.25rem; padding:0 .22rem; border-radius:999px; background:#fff; color:var(--green); font-size:.68rem; }.he-site-menu-toggle { display:none; }.he-site-account-panel { display:none; }
@media (max-width:1199px) { .he-site-header-inner { grid-template-columns:auto 1fr auto; min-height:4.5rem; gap:.65rem; padding:.55rem 1rem; }.he-site-logo { display:none; }.he-site-menu-toggle { display:grid; grid-template-rows:repeat(3,2px); gap:4px; width:2.75rem; height:2.75rem; padding:.78rem; border:1px solid var(--line); border-radius:50%; background:#fff; cursor:pointer; }.he-site-menu-toggle > span:not(.he-sr-only) { display:block; width:100%; background:var(--green); }.he-site-navigation { position:absolute; z-index:50; top:100%; right:0; left:0; display:none; width:100%; padding:.7rem 1rem 1rem; border-top:1px solid var(--line); border-radius:0; background:var(--paper); box-shadow:0 1.25rem 2.8rem rgba(23,53,47,.16); }.he-site-header.is-menu-open .he-site-navigation { display:block; }.he-site-menu { display:grid; gap:.5rem; width:100%; }.he-site-menu a { width:100%; padding:1rem 1.1rem; border:1px solid var(--line); border-radius:.85rem; background:#fff; font-size:1rem; text-align:center; }.he-site-menu a:hover,.he-site-menu .current-menu-item > a { border-color:var(--green); background:#eef3ea; color:var(--green) !important; }.he-site-actions { grid-column:3; gap:.45rem; }.he-site-welcome,.he-site-account { display:none; }.he-site-account-toggle,.he-site-cart { display:grid; place-items:center; width:2.75rem; min-width:2.75rem; height:2.75rem; min-height:2.75rem; padding:0; border-radius:50%; }.he-site-account-toggle { border:1px solid var(--line); background:#fff; color:var(--green); cursor:pointer; }.he-site-account-toggle:hover { border-color:var(--green); background:#eef3ea; }.he-site-cart { border-color:var(--green); }.he-site-cart-label { display:none; }.he-site-cart b { position:absolute; top:-.22rem; right:-.22rem; min-width:1.15rem; height:1.15rem; border:1px solid var(--green); font-size:.62rem; }.he-site-account-panel:not([hidden]) { position:fixed; z-index:2147483647; inset:0; display:block; }.he-site-account-backdrop { position:absolute; inset:0; width:100%; height:100%; padding:0; border:0; background:rgba(13,33,29,.56); }.he-site-account-dialog { position:absolute; right:1rem; top:5.1rem; width:min(calc(100vw - 2rem),21rem); padding:1.25rem; border-radius:1rem; background:var(--paper); box-shadow:0 1.5rem 3.5rem rgba(0,0,0,.25); }.he-site-account-dialog p { margin:0 0 1rem; color:var(--ink); font-size:1.05rem; font-weight:800; }.he-site-account-dialog a { display:flex; align-items:center; min-height:2.9rem; margin-top:.45rem; padding:.6rem .85rem; border-radius:.7rem; background:#eef3ea; color:var(--green) !important; font-weight:800; }.he-site-account-dialog a:hover { background:var(--green); color:#fff !important; }.he-site-account-dialog .is-logout { background:#fff4f2; color:#9b4c44 !important; }.he-site-account-close { position:absolute; top:.65rem; right:.65rem; width:2rem; height:2rem; padding:0; border:1px solid var(--line); border-radius:50%; background:#fff; color:var(--ink); font-size:1.25rem; cursor:pointer; } }
@media (max-width:440px) { .he-site-header-inner { padding-inline:.75rem; } }

/* Header controls must be immune to the active WordPress theme's button rules. */
@media (max-width:1199px) { .l4d-header-widget .he-site-header-inner { grid-template-columns:auto 1fr auto !important; min-height:4.75rem !important; }.l4d-header-widget .he-site-menu-toggle { display:grid !important; place-content:center !important; grid-template-rows:repeat(3,2px) !important; gap:4px !important; width:2.85rem !important; min-width:2.85rem !important; max-width:2.85rem !important; height:2.85rem !important; min-height:2.85rem !important; max-height:2.85rem !important; margin:0 !important; padding:.78rem !important; border:1px solid var(--line) !important; border-radius:50% !important; background:#fff !important; color:var(--green) !important; box-shadow:none !important; }.l4d-header-widget .he-site-menu-toggle:hover,.l4d-header-widget .he-site-menu-toggle:active { border-color:var(--green) !important; background:#eef3ea !important; }.l4d-header-widget .he-site-menu-toggle > span:not(.he-sr-only) { height:2px !important; min-height:2px !important; background:var(--green) !important; }.l4d-header-widget .he-site-actions { justify-self:end !important; }.l4d-header-widget .he-site-account-toggle { display:grid !important; place-items:center !important; width:2.85rem !important; min-width:2.85rem !important; max-width:2.85rem !important; height:2.85rem !important; min-height:2.85rem !important; max-height:2.85rem !important; margin:0 !important; padding:0 !important; border:1px solid var(--green) !important; border-radius:50% !important; background:#fff !important; color:var(--green) !important; box-shadow:none !important; }.l4d-header-widget .he-site-account-toggle:hover,.l4d-header-widget .he-site-account-toggle:active { background:#eef3ea !important; color:var(--green) !important; }.l4d-header-widget .he-site-account-toggle svg { width:1.2rem !important; height:1.2rem !important; }.l4d-header-widget .he-header-menu-cart,.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-trigger { width:2.85rem !important; min-width:2.85rem !important; max-width:2.85rem !important; height:2.85rem !important; min-height:2.85rem !important; max-height:2.85rem !important; margin:0 !important; padding:0 !important; border:1px solid var(--green) !important; border-radius:50% !important; background:var(--green) !important; color:#fff !important; box-shadow:none !important; }.l4d-header-widget .he-header-menu-cart { display:grid !important; place-items:center !important; position:relative !important; }.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-trigger:hover,.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-trigger:active { border-color:var(--green-dark) !important; background:var(--green-dark) !important; color:#fff !important; }.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-icon svg { width:1.15rem !important; height:1.15rem !important; }.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-badge { top:-.25rem !important; right:-.25rem !important; min-width:1.15rem !important; height:1.15rem !important; padding:0 !important; border:1px solid var(--green) !important; border-radius:50% !important; background:#fff !important; color:var(--green) !important; font-size:.62rem !important; line-height:1.15rem !important; }.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-dropdown { position:fixed !important; top:5.25rem !important; right:1rem !important; left:auto !important; width:min(calc(100vw - 2rem),24rem) !important; max-width:none !important; }.l4d-header-widget .he-site-navigation { z-index:1000 !important; }.l4d-header-widget .he-site-menu a { min-height:3.35rem !important; margin:0 !important; box-shadow:none !important; } }

@media (max-width:1199px) { .l4d-header-widget .he-site-menu-toggle { position:relative !important; }.l4d-header-widget .he-site-menu-toggle > span:not(.he-sr-only) { display:none !important; }.l4d-header-widget .he-site-menu-toggle::before { content:"" !important; display:block !important; width:1.15rem !important; height:2px !important; margin:auto !important; padding:0 !important; border:0 !important; border-radius:2px !important; background:var(--green) !important; box-shadow:0 -.38rem 0 var(--green),0 .38rem 0 var(--green) !important; }.l4d-header-widget .he-site-header.is-menu-open .he-site-menu-toggle { border-color:var(--green) !important; background:var(--green) !important; }.l4d-header-widget .he-site-header.is-menu-open .he-site-menu-toggle::before { background:#fff !important; box-shadow:0 -.38rem 0 #fff,0 .38rem 0 #fff !important; }.l4d-header-widget .he-site-account-toggle svg,.l4d-header-widget .he-site-account-toggle svg * { fill:none !important; stroke:var(--green) !important; }.l4d-header-widget .he-site-account-toggle:hover,.l4d-header-widget .he-site-account-toggle:active,.l4d-header-widget .he-site-account-toggle[aria-expanded="true"] { border-color:var(--green-dark) !important; background:var(--green) !important; color:#fff !important; }.l4d-header-widget .he-site-account-toggle:hover svg,.l4d-header-widget .he-site-account-toggle:hover svg *,.l4d-header-widget .he-site-account-toggle:active svg,.l4d-header-widget .he-site-account-toggle:active svg *,.l4d-header-widget .he-site-account-toggle[aria-expanded="true"] svg,.l4d-header-widget .he-site-account-toggle[aria-expanded="true"] svg * { stroke:#fff !important; }.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-icon,.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-icon svg,.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-icon svg * { color:#fff !important; fill:none !important; stroke:#fff !important; }.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-trigger:hover .l4d-menu-cart-icon,.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-trigger:active .l4d-menu-cart-icon { color:#fff !important; }.l4d-header-widget .he-site-navigation,.l4d-header-widget .he-site-navigation .he-site-menu { width:100% !important; min-width:100% !important; max-width:none !important; }.l4d-header-widget .he-site-navigation .he-site-menu { display:grid !important; grid-template-columns:1fr !important; justify-items:stretch !important; align-items:stretch !important; }.l4d-header-widget .he-site-navigation .he-site-menu > li { display:block !important; width:100% !important; min-width:100% !important; max-width:none !important; margin:0 !important; padding:0 !important; }.l4d-header-widget .he-site-navigation .he-site-menu > li > a { display:flex !important; width:100% !important; min-width:100% !important; max-width:none !important; align-items:center !important; justify-content:center !important; } }
@media (max-width:1199px) { .l4d-header-widget .he-site-menu-toggle { display:flex !important; align-items:center !important; justify-content:center !important; grid-template-rows:none !important; }.l4d-header-widget .he-site-menu-toggle::before { flex:0 0 auto !important; margin:0 !important; } }

/* Universal product search. Outside the Shop it navigates to the Shop query;
   on the Shop page the header script hands the query to the live product grid. */
.l4d-header-widget .he-site-search-toggle { position:relative; display:inline-flex; align-items:center; justify-content:center; gap:.4rem; min-height:2.6rem; margin:0; padding:.5rem .8rem; border:1px solid var(--green); border-radius:999px; background:#fff; color:var(--green); box-shadow:none; font-size:.86rem; font-weight:800; white-space:nowrap; cursor:pointer; }
.l4d-header-widget .he-site-search-toggle:hover,.l4d-header-widget .he-site-search-toggle[aria-expanded="true"] { border-color:var(--green); background:var(--green); color:#fff; }
.l4d-header-widget .he-site-search-toggle svg { width:1.15rem; height:1.15rem; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.l4d-header-widget .he-site-search-panel { position:absolute; z-index:1200; top:100%; right:0; left:0; padding:.8rem clamp(1rem,4vw,4.5rem) 1rem; border-bottom:1px solid var(--line); background:var(--paper); box-shadow:0 1.25rem 2.8rem rgba(23,53,47,.14); }
.l4d-header-widget .he-site-search-panel[hidden] { display:none !important; }
.l4d-header-widget .he-site-search-form { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:.75rem; width:min(70rem,100%); min-height:3.7rem; margin:auto; padding:.35rem .4rem .35rem 1rem; border:1px solid var(--line); border-radius:999px; background:#fff; }
.l4d-header-widget .he-site-search-form > svg { width:1.2rem; height:1.2rem; fill:none; stroke:var(--green); stroke-linecap:round; stroke-width:1.8; }
.l4d-header-widget .he-site-search-form input { width:100%; min-width:0; height:2.8rem; margin:0; padding:0; border:0; border-radius:0; outline:0; background:transparent; color:var(--ink); box-shadow:none; font:inherit; }
.l4d-header-widget .he-site-search-submit { display:inline-flex; align-items:center; justify-content:center; gap:.45rem; min-width:7.5rem; min-height:2.9rem; margin:0; padding:.45rem 1.25rem; border:1px solid var(--green); border-radius:999px; background:var(--green); color:#fff; box-shadow:none; font-weight:800; cursor:pointer; }
.l4d-header-widget .he-site-search-submit:hover { border-color:var(--green-dark); background:var(--green-dark); color:#fff; }
.l4d-header-widget .he-site-search-close { display:grid; place-items:center; width:2.9rem; min-width:2.9rem; height:2.9rem; min-height:2.9rem; margin:0; padding:0; border:1px solid var(--line); border-radius:50%; background:#fff; color:var(--green); box-shadow:none; font-size:1.35rem; line-height:1; cursor:pointer; }
.l4d-header-widget .he-site-search-close:hover { border-color:var(--green); background:#eef3ea; color:var(--green); }
@media (max-width:1199px) {
  .l4d-header-widget .he-site-search-toggle { display:grid; place-items:center; width:2.85rem; min-width:2.85rem; max-width:2.85rem; height:2.85rem; min-height:2.85rem; max-height:2.85rem; padding:0; border-radius:50%; }
  .l4d-header-widget .he-site-search-toggle-label { display:none; }
  .l4d-header-widget .he-site-search-panel { padding:.65rem .75rem .8rem; }
  .l4d-header-widget .he-site-search-form { grid-template-columns:auto minmax(0,1fr) auto; gap:.5rem; padding:.3rem .35rem .3rem .85rem; }
  .l4d-header-widget .he-site-search-close { display:none; }
  .l4d-header-widget .he-site-search-submit { width:2.9rem; min-width:2.9rem; padding:0; font-size:0; }
  .l4d-header-widget .he-site-search-submit span { font-size:1.15rem; }
}

/* Mobile account panel: reset theme button geometry and colours. */
@media (max-width:1199px) { .l4d-header-widget .he-site-account-panel:not([hidden]) { position:fixed !important; z-index:2147483647 !important; inset:0 !important; display:block !important; width:100vw !important; height:100dvh !important; margin:0 !important; padding:0 !important; background:transparent !important; }.l4d-header-widget .he-site-account-backdrop { position:absolute !important; inset:0 !important; display:block !important; width:100% !important; height:100% !important; min-height:0 !important; margin:0 !important; padding:0 !important; border:0 !important; border-radius:0 !important; background:rgba(13,33,29,.62) !important; box-shadow:none !important; backdrop-filter:blur(3px); }.l4d-header-widget .he-site-account-dialog { position:absolute !important; z-index:1 !important; top:50% !important; right:1rem !important; left:1rem !important; width:auto !important; max-width:24rem !important; margin:0 auto !important; padding:1.35rem !important; border:1px solid rgba(255,255,255,.72) !important; border-radius:1.2rem !important; background:#fffdf9 !important; color:var(--ink) !important; box-shadow:0 1.8rem 4rem rgba(0,0,0,.3) !important; transform:translateY(-50%) !important; }.l4d-header-widget .he-site-account-dialog p { margin:0 3rem 1.2rem 0 !important; color:var(--ink) !important; font-size:1.1rem !important; font-weight:800 !important; line-height:1.25 !important; }.l4d-header-widget .he-site-account-dialog a { display:flex !important; width:100% !important; min-width:0 !important; min-height:3rem !important; margin:.55rem 0 0 !important; padding:.7rem 1rem !important; border:1px solid transparent !important; border-radius:.8rem !important; background:#eef3ea !important; color:var(--green) !important; box-shadow:none !important; font-size:.95rem !important; font-weight:800 !important; line-height:1.2 !important; text-decoration:none !important; }.l4d-header-widget .he-site-account-dialog a:hover,.l4d-header-widget .he-site-account-dialog a:active { border-color:var(--green) !important; background:var(--green) !important; color:#fff !important; }.l4d-header-widget .he-site-account-dialog .is-logout { border-color:#efd7d2 !important; background:#fff5f2 !important; color:#a84d45 !important; }.l4d-header-widget .he-site-account-dialog .is-logout:hover,.l4d-header-widget .he-site-account-dialog .is-logout:active { border-color:#a84d45 !important; background:#a84d45 !important; color:#fff !important; }.l4d-header-widget .he-site-account-close { position:absolute !important; top:.8rem !important; right:.8rem !important; display:grid !important; place-items:center !important; width:2.35rem !important; min-width:2.35rem !important; max-width:2.35rem !important; height:2.35rem !important; min-height:2.35rem !important; max-height:2.35rem !important; margin:0 !important; padding:0 !important; border:1px solid var(--green) !important; border-radius:50% !important; background:var(--green) !important; color:#fff !important; box-shadow:none !important; font-family:Arial,sans-serif !important; font-size:1.45rem !important; font-weight:400 !important; line-height:1 !important; text-align:center !important; }.l4d-header-widget .he-site-account-close:hover,.l4d-header-widget .he-site-account-close:active { border-color:var(--green-dark) !important; background:var(--green-dark) !important; color:#fff !important; } }

/* Keep the header available, then replace its navigation with search once the
   Home or Shop hero has left the viewport. */
.l4d-header-widget { position:sticky !important; z-index:10000; top:0; width:100%; }
body.admin-bar .l4d-header-widget { top:32px; }
.l4d-header-widget .he-site-navigation { grid-column:2; grid-row:1; transition:opacity .2s ease,transform .2s ease,visibility .2s; }
.l4d-header-widget .he-site-scroll-search { position:relative; grid-column:2; grid-row:1; display:block; justify-self:center; width:100%; max-width:none; margin:0; padding:0; border:0; background:transparent; box-shadow:none; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(.35rem); transition:opacity .2s ease,transform .2s ease,visibility .2s; }
.l4d-header-widget .he-site-scroll-search-row { display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:.55rem; width:100%; min-height:3.25rem; padding:.3rem .35rem .3rem .9rem; border:1px solid var(--line); border-radius:999px; background:#fff; box-shadow:0 .45rem 1.35rem rgba(23,53,47,.09); }
.l4d-header-widget .he-site-scroll-search-row > svg { width:1.05rem; height:1.05rem; fill:none; stroke:var(--green); stroke-linecap:round; stroke-width:1.8; }
.l4d-header-widget .he-site-scroll-search input { width:100%; min-width:0; height:2.5rem; margin:0; padding:0; border:0; border-radius:0; outline:0; background:transparent; color:var(--ink); box-shadow:none; font:inherit; font-size:.88rem; }
.l4d-header-widget .he-site-scroll-search-row > button { display:inline-flex; align-items:center; justify-content:center; gap:.4rem; min-height:2.65rem; margin:0; padding:.4rem 1rem; border:1px solid var(--green); border-radius:999px; background:var(--green); color:#fff; box-shadow:none; font-size:.8rem; font-weight:800; cursor:pointer; }
.l4d-header-widget .he-site-scroll-search-row > button:hover { border-color:var(--green-dark); background:var(--green-dark); color:#fff; }
.l4d-header-widget .he-site-scroll-search-row > button b { color:inherit; font-size:1rem; }
.l4d-header-widget .he-site-scroll-filter-toggle { width:2.65rem; min-width:2.65rem; padding:0 !important; }
.l4d-header-widget .he-site-scroll-filter-toggle svg { width:1.05rem; height:1.05rem; fill:none; stroke:currentColor; stroke-linecap:round; stroke-width:1.7; }
.l4d-header-widget .he-site-scroll-search-submit { min-width:6.8rem; }
.l4d-header-widget .he-site-mobile-search-trigger { display:none; }
.l4d-header-widget.is-search-mode .he-site-scroll-search { opacity:1; visibility:visible; pointer-events:auto; transform:none; }
.l4d-header-widget .he-site-search-toggle { display:none !important; }
@media (min-width:1200px) {
  .l4d-header-widget .he-site-header-inner { grid-template-columns:max-content minmax(0,1fr) max-content; column-gap:clamp(.85rem,2vw,2rem); }
  .l4d-header-widget .he-site-logo { width:auto; min-width:max-content; padding:0; }
  .l4d-header-widget .he-site-logo img { max-width:min(17rem,22vw); }
  .l4d-header-widget .he-site-navigation { width:100%; min-width:0; }
  .l4d-header-widget .he-site-scroll-search { display:none; min-width:0; opacity:1; visibility:visible; pointer-events:auto; transform:none; transition:none; }
  .l4d-header-widget .he-site-actions { width:auto; min-width:max-content; padding:0; }
  .l4d-header-widget.is-search-mode .he-site-navigation { display:none; opacity:0; visibility:hidden; pointer-events:none; transform:none; transition:none; }
  .l4d-header-widget.is-search-mode .he-site-scroll-search { display:block; }
}
@media (max-width:1199px) {
  .l4d-header-widget .he-site-scroll-search { display:none !important; }
  .l4d-header-widget .he-site-search-toggle { display:none !important; }
  .l4d-header-widget.has-search-hero.is-search-mode .he-site-mobile-search-trigger { grid-column:2; grid-row:1; display:inline-flex; align-items:center; justify-content:flex-start; gap:.45rem; width:100%; min-width:0; min-height:2.85rem; margin:0; padding:.45rem .8rem; overflow:hidden; border:1px solid var(--line); border-radius:999px; background:#fff; color:var(--green); box-shadow:none; font-size:.78rem; font-weight:700; cursor:pointer; }
  .l4d-header-widget .he-site-mobile-search-trigger svg { flex:0 0 auto; width:1rem; height:1rem; fill:none; stroke:currentColor; stroke-linecap:round; stroke-width:1.8; }
  .l4d-header-widget .he-site-mobile-search-trigger span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .l4d-header-widget .he-site-header-inner { grid-template-columns:auto minmax(6.5rem,1fr) auto !important; gap:.45rem !important; }
  .l4d-header-widget .he-site-actions { gap:.35rem; }
}
@media (max-width:1199px) {
  .l4d-header-widget .he-site-logo { display:flex; grid-column:2; grid-row:1; justify-self:center; max-width:min(36vw,15rem); }
  .l4d-header-widget .he-site-logo img { max-width:100%; }
  .l4d-header-widget.has-search-hero.is-search-mode .he-site-logo { display:none; }
}
@media (max-width:782px) { body.admin-bar .l4d-header-widget { top:46px; } }
@media (max-width:390px) { .l4d-header-widget .he-site-scroll-search input { font-size:.72rem; } }

.l4d-header-widget .he-site-scroll-filters { position:absolute; z-index:1300; top:calc(100% + .7rem); right:0; left:0; padding:1rem; border:1px solid var(--line); border-radius:1rem; background:rgba(255,253,249,.99); box-shadow:0 1.25rem 3rem rgba(23,53,47,.18); color:var(--ink); }
.l4d-header-widget .he-site-scroll-filters[hidden] { display:none !important; }
.l4d-header-widget .he-site-scroll-filters-head { display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:.8rem; }
.l4d-header-widget .he-site-scroll-filters-head strong { font-size:.95rem; }
.l4d-header-widget .he-site-scroll-filters-head button { display:grid; place-items:center; width:2.2rem; min-width:2.2rem; height:2.2rem; margin:0; padding:0; border:1px solid var(--line); border-radius:50%; background:#fff; color:var(--green); box-shadow:none; font-size:1.3rem; cursor:pointer; }
.l4d-header-widget .he-site-scroll-filter-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)) auto; gap:.65rem; }
.l4d-header-widget .he-site-scroll-filter-grid label { display:block; min-width:0; }
.l4d-header-widget .he-site-scroll-filter-grid label > span:first-child { display:block; margin:0 0 .3rem; color:#687b75; font-size:.66rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.l4d-header-widget .he-site-scroll-filter-grid select { width:100%; min-height:3rem; margin:0; padding:.45rem .65rem; border:1px solid var(--line); border-radius:.75rem; outline:0; background:#fff; color:var(--ink); box-shadow:none; font:inherit; font-size:.8rem; }
.l4d-header-widget .he-site-scroll-stock { display:flex !important; align-items:center; align-self:end; gap:.5rem; min-height:3rem; padding:.45rem .7rem; border:1px solid var(--line); border-radius:.75rem; background:#fff; white-space:nowrap; }
.l4d-header-widget .he-site-scroll-stock input { flex:0 0 auto; width:auto; height:auto; margin:0; accent-color:var(--green); }
.l4d-header-widget .he-site-scroll-stock span { margin:0 !important; color:var(--ink) !important; font-size:.76rem !important; letter-spacing:0 !important; text-transform:none !important; }
.l4d-header-widget .he-site-scroll-filter-apply { display:flex; align-items:center; justify-content:center; gap:.45rem; width:100%; min-height:2.9rem; margin:.8rem 0 0; padding:.5rem 1rem; border:1px solid var(--green); border-radius:999px; background:var(--green); color:#fff; box-shadow:none; font-weight:800; cursor:pointer; }
.l4d-header-widget .he-site-scroll-filter-apply:hover { border-color:var(--green-dark); background:var(--green-dark); color:#fff; }
@media (max-width:1199px) {
  body.he-header-filters-open { overflow:hidden; }
  .l4d-header-widget .he-site-scroll-filters { position:fixed; z-index:2147483647; top:auto; right:0; bottom:0; left:0; width:100%; max-height:min(78dvh,42rem); padding:1rem; overflow:auto; border:0; border-top:1px solid var(--line); border-radius:1.25rem 1.25rem 0 0; box-shadow:0 -1.25rem 3rem rgba(23,53,47,.24); }
  .l4d-header-widget .he-site-scroll-filter-grid { grid-template-columns:1fr; }
  .l4d-header-widget .he-site-scroll-stock { align-self:auto; }
}

/* Mobile search is one calm, complete modal instead of three cramped header
   controls. The keyboard can submit the query; the visible action remains
   necessary for visitors who only change select fields. */
@media (max-width:1199px) {
  body.he-header-mobile-search-open { overflow:hidden; }
  .l4d-header-widget.is-mobile-search-open .he-site-scroll-search { position:fixed !important; z-index:2147483647 !important; inset:0 !important; display:flex !important; flex-direction:column; align-items:center; justify-content:center; width:100vw !important; height:100dvh !important; max-width:none !important; margin:0 !important; padding:1rem !important; overflow:auto; border:0 !important; border-radius:0 !important; background:rgba(13,33,29,.62) !important; box-shadow:none !important; opacity:1 !important; visibility:visible !important; pointer-events:auto !important; transform:none !important; backdrop-filter:blur(3px); }
  .l4d-header-widget.is-mobile-search-open .he-site-scroll-search-row { grid-template-columns:auto minmax(0,1fr); width:min(100%,32rem); min-height:4rem; padding:.45rem .9rem; border:1px solid rgba(255,255,255,.72); border-bottom:0; border-radius:1.15rem 1.15rem 0 0; background:var(--paper); box-shadow:0 1.5rem 3.5rem rgba(0,0,0,.24); }
  .l4d-header-widget.is-mobile-search-open .he-site-scroll-search-row > svg { display:block; width:1.15rem; height:1.15rem; }
  .l4d-header-widget.is-mobile-search-open .he-site-scroll-search-row input { height:3rem; font-size:1rem; }
  .l4d-header-widget.is-mobile-search-open .he-site-scroll-filter-toggle,
  .l4d-header-widget.is-mobile-search-open .he-site-scroll-search-submit { display:none !important; }
  .l4d-header-widget.is-mobile-search-open .he-site-scroll-filters { position:static !important; display:block !important; width:min(100%,32rem) !important; max-height:min(68dvh,38rem); margin:0 !important; padding:1rem !important; overflow:auto; border:1px solid rgba(255,255,255,.72); border-top:1px solid var(--line); border-radius:0 0 1.15rem 1.15rem; background:var(--paper); box-shadow:0 1.5rem 3.5rem rgba(0,0,0,.24); }
  .l4d-header-widget.is-mobile-search-open .he-site-scroll-filter-apply { min-height:3.2rem; }
}

/* One cart trigger at every breakpoint. */
.l4d-header-widget .he-header-menu-cart,
.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-trigger,
.l4d-header-widget .he-site-cart { display:grid !important; place-items:center !important; position:relative !important; width:2.85rem !important; min-width:2.85rem !important; max-width:2.85rem !important; height:2.85rem !important; min-height:2.85rem !important; max-height:2.85rem !important; margin:0 !important; padding:0 !important; border:1px solid var(--green) !important; border-radius:50% !important; background:var(--green) !important; color:#fff !important; box-shadow:none !important; }
.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-trigger:hover,
.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-trigger:active,
.l4d-header-widget .he-site-cart:hover { border-color:var(--green-dark) !important; background:var(--green-dark) !important; color:#fff !important; }
.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-icon,
.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-icon svg,
.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-icon svg * { color:#fff !important; fill:#fff !important; stroke:none !important; }
.l4d-header-widget .he-header-menu-cart .l4d-menu-cart-item-quantity { display:flex !important; flex-wrap:wrap !important; align-items:center !important; gap:.45rem !important; }
.l4d-header-widget .he-header-menu-cart .he-header-cart-stepper { display:inline-flex !important; align-items:center !important; gap:.3rem !important; }
.l4d-header-widget .he-header-menu-cart button.he-header-cart-step { display:inline-grid !important; place-items:center !important; width:1.75rem !important; min-width:1.75rem !important; height:1.75rem !important; min-height:1.75rem !important; margin:0 !important; padding:0 !important; border:1px solid #d4dfda !important; border-radius:50% !important; background:#fff !important; color:#315f57 !important; box-shadow:none !important; font-size:1rem !important; font-weight:800 !important; line-height:1 !important; cursor:pointer !important; }
.l4d-header-widget .he-header-menu-cart button.he-header-cart-step:hover { border-color:#315f57 !important; background:#315f57 !important; color:#fff !important; }
.l4d-header-widget .he-header-menu-cart .he-header-cart-remove-all { position:static !important; display:inline-flex !important; align-items:center !important; justify-content:center !important; width:auto !important; min-width:4.8rem !important; height:1.8rem !important; min-height:1.8rem !important; margin:.45rem 0 0 !important; padding:.3rem .6rem !important; overflow:visible !important; border:1px solid #edcbc6 !important; border-radius:999px !important; background:#fff5f2 !important; color:#a84d45 !important; box-shadow:none !important; font-family:"DM Sans",Arial,sans-serif !important; font-size:.68rem !important; font-weight:800 !important; line-height:1 !important; text-align:center !important; text-decoration:none !important; white-space:nowrap !important; cursor:pointer !important; }
.l4d-header-widget .he-header-menu-cart .he-header-cart-remove-all:hover { background:#a84d45 !important; color:#fff !important; }
.l4d-header-widget .he-header-menu-cart :is(.he-header-cart-step,.he-header-cart-remove-all):disabled { opacity:.5 !important; cursor:wait !important; }
.l4d-header-widget .he-site-cart svg,
.l4d-header-widget .he-site-cart svg * { color:#fff !important; fill:none !important; stroke:#fff !important; }

/* Shared responsive guardrails: contain unpredictable CMS content. */
.l4d-header-widget { min-width:0; max-width:100%; overflow-wrap:anywhere; }
.l4d-header-widget :where(img,video,canvas,iframe) { max-width:100%; }
.l4d-header-widget :where(input,select,textarea) { max-width:100%; }
/* Specials is a navigation disclosure: inherit the bold menu voice, never theme form styles. */
.l4d-header-widget .he-specials-menu { position:relative; flex-shrink:0; }
.l4d-header-widget .he-site-menu .he-specials-toggle {
  display:inline-flex !important; align-items:center; justify-content:center; gap:.5rem;
  width:auto; min-width:0; height:auto; min-height:44px; margin:0 !important;
  padding:.6rem .85rem !important; border:1px solid var(--green) !important;
  border-radius:.625rem !important; background:transparent !important;
  color:var(--ink) !important; box-shadow:none !important; text-shadow:none !important;
  font-family:inherit !important; font-size:.92rem !important; font-weight:800 !important;
  font-style:normal !important; line-height:1.5 !important; letter-spacing:normal !important;
  text-transform:none !important; text-decoration:none !important; white-space:nowrap !important;
  cursor:pointer; transition:background-color 150ms ease,color 150ms ease;
}
.l4d-header-widget .he-specials-toggle .he-specials-label { font:inherit !important; color:inherit !important; letter-spacing:inherit !important; }
.l4d-header-widget .he-site-menu .he-specials-toggle:is(:hover,:focus-visible,:active,[aria-expanded="true"]) {
  background:#eef3ea !important; color:var(--green) !important;
}
.l4d-header-widget .he-specials-toggle .he-specials-chevron {
  flex:0 0 auto; width:1rem !important; height:1rem !important;
  fill:none !important; stroke:currentColor !important; stroke-width:1.75;
  stroke-linecap:round; stroke-linejoin:round; transition:transform 150ms ease;
}
.l4d-header-widget .he-specials-toggle[aria-expanded="true"] .he-specials-chevron { transform:rotate(180deg); }
.l4d-header-widget .he-specials-submenu {
  position:absolute; top:calc(100% + .5rem); left:0; z-index:1001;
  display:grid; gap:.5rem; min-width:12rem; width:max-content;
  margin:0; padding:.5rem; list-style:none; border:1px solid var(--line);
  border-radius:.875rem; background:var(--paper); box-shadow:0 .75rem 1.5rem rgba(23,53,47,.15);
}
.l4d-header-widget .he-specials-submenu[hidden] { display:none !important; }
.l4d-header-widget .he-specials-submenu li { margin:0; padding:0; list-style:none; }
.l4d-header-widget .he-specials-submenu a {
  display:flex; align-items:center; min-height:44px; padding:.65rem .85rem;
  border:1px solid transparent; border-radius:.5rem; background:transparent;
  font-family:inherit !important; font-size:.92rem !important; font-weight:800 !important;
  line-height:1.5 !important; letter-spacing:normal !important; color:var(--ink) !important;
  text-decoration:none !important; transition:background-color 150ms ease,color 150ms ease;
}
.l4d-header-widget .he-specials-submenu a:is(:hover,:focus-visible,:active) { background:#eef3ea !important; color:var(--green) !important; }
@media (min-width:1200px) and (max-width:1399px) {
  .l4d-header-widget .he-site-header-inner { padding-inline:clamp(1.25rem,2vw,2rem); column-gap:1rem; }
  .l4d-header-widget .he-site-menu { gap:clamp(.6rem,.9vw,.85rem); }
  .l4d-header-widget .he-site-logo img { max-width:min(14rem,18vw); }
}
@media (max-width:1199px) {
  /* Elementor's normal nav links use the global Text face (Poppins on this site). */
  .l4d-header-widget .he-site-menu .he-specials-toggle,
  .l4d-header-widget .he-specials-submenu a { font-family:var(--e-global-typography-text-font-family,"DM Sans"),sans-serif !important; }
  .l4d-header-widget .he-site-menu .he-specials-toggle {
    width:100%; min-height:3.35rem; padding:1rem 1.1rem !important;
    border-color:var(--line) !important; border-radius:.85rem !important;
    background:#fff !important; font-size:1rem !important;
  }
  .l4d-header-widget .he-site-menu .he-specials-toggle:is(:hover,[aria-expanded="true"]) { border-color:var(--green) !important; background:#eef3ea !important; }
  .l4d-header-widget .he-site-menu .he-specials-toggle[aria-expanded="true"] { border-radius:.85rem .85rem 0 0 !important; }
  .l4d-header-widget .he-specials-submenu {
    position:static; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; min-width:0;
    margin:0; padding:.65rem; border:1px solid var(--green); border-top:0;
    border-radius:0 0 .85rem .85rem; background:#eef3ea; box-shadow:none;
  }
  .l4d-header-widget .he-specials-submenu a {
    justify-content:center; min-height:48px !important; padding:.75rem .5rem;
    border:1px solid var(--line); border-radius:.625rem; background:#fff;
    font-size:1rem !important; text-align:center;
  }
}
@media (prefers-reduced-motion:reduce) {
  .l4d-header-widget :is(.he-specials-toggle,.he-specials-chevron,.he-specials-submenu a) { transition:none !important; }
}
