/*
 * Header (design "Nav"): dark top row with logo, search and account / wishlist /
 * cart; green menu row. Plus everything the header opens: the side cart
 * (design "Frame 32") and the login / register popup (design "Login popup").
 *
 * Loaded on every page. Selectors are kept at two classes or more so they beat
 * the Hello reset in theme.css and Elementor's kit rules, which load later
 * (kit inputs are (0,3,1), hence the `body …` prefixes on inputs).
 */

:root{--edl-green:#00A84E;--edl-green-dark:#004721;--edl-green-box:#005C2B;--edl-lime:#A2D92B;--edl-lime-bright:#BFDF01;--edl-mint:#B0E4C8;--edl-mint-light:#E6F6ED;--edl-grey:#F5F6F6;--edl-line:#EFEFEF;--edl-ink:#191F1D;--edl-muted:#8A8A8A}

/* ---------- Rows ---------- */
#header .edl-hdr-top{transition:padding .3s ease-in-out}
#header.sticky .edl-hdr-top{--padding-top:12px;--padding-bottom:12px}
#header .edl-hdr-search-wrap{flex:1 1 0%;min-width:0;width:auto;max-width:none}
#header .edl-hdr-actions-wrap{flex:0 0 auto;width:auto}
#header .edl-hdr-search-wrap .elementor-shortcode,#header .edl-hdr-actions-wrap .elementor-shortcode{display:block}
@media (max-width:1023.98px){
#header .edl-hdr-top,#header .edl-hdr-nav{display:none}
}
@media (min-width:1024px){
#header #mobile-nav,#header .edl-hdr-msearch{display:none}
}
@media (min-width:1024px) and (max-width:1279.98px){
#header .edl-hdr-top{--gap:32px;--row-gap:32px;--column-gap:32px}
#header .edl-hdr-top .elementor-widget-theme-site-logo img{width:240px;height:auto}
}

/* ---------- Search ---------- */
.edl-hdr-search{display:flex;align-items:stretch;width:100%;height:48px;margin:0;font-family:"Open Sans",sans-serif;font-size:14px;line-height:1.5}
.edl-hdr-search .edl-hdr-search__cat{position:relative;flex:0 0 auto;display:flex;align-items:center;max-width:45%;background:var(--edl-green);color:#FFFFFF}
.edl-hdr-search .edl-hdr-search__cat select{appearance:none;-webkit-appearance:none;display:block;height:48px;width:100%;max-width:220px;margin:0;padding:12px 44px 12px 16px;border:0;border-radius:0;background:transparent;color:#FFFFFF;font:inherit;line-height:1.5;text-overflow:ellipsis;cursor:pointer}
.edl-hdr-search .edl-hdr-search__cat select option{color:var(--edl-ink);background:#FFFFFF}
.edl-hdr-search .edl-hdr-search__cat select:focus-visible{outline:2px solid #FFFFFF;outline-offset:-4px}
.edl-hdr-search .edl-hdr-search__cat .edl-ui-icon{position:absolute;right:16px;top:14px;pointer-events:none}
.edl-hdr-search .edl-hdr-search__field{flex:1 1 0%;min-width:0;display:flex;align-items:center;gap:8px;height:48px;margin:0;padding:0 16px;background:#FFFFFF;border:1px solid var(--edl-line);border-left:0;color:var(--edl-muted);cursor:text}
.edl-hdr-search .edl-hdr-search__field .edl-ui-icon{flex:0 0 20px}
body .edl-hdr-search .edl-hdr-search__field input[type=search]{flex:1 1 0%;min-width:0;height:46px;padding:0;border:0;border-radius:0;background:transparent;color:var(--edl-ink);font:inherit;line-height:1.5;outline:0;box-shadow:none;-webkit-appearance:none;appearance:none}
body .edl-hdr-search .edl-hdr-search__field input[type=search]::placeholder{color:#BDBDBD;opacity:1}
.edl-hdr-search .edl-hdr-search__field:focus-within{border-color:var(--edl-green)}

/* Live results tray (header.js section 7). About six rows show; the list scrolls. */
.edl-hdr-search{position:relative}
.edl-hdr-search .edl-search-tray{position:absolute;top:calc(100% + 8px);left:0;right:0;z-index:1000;display:flex;flex-direction:column;background:#FFFFFF;border:1px solid var(--edl-line);box-shadow:0 24px 44px rgba(25,31,29,.14);font-family:"Open Sans",sans-serif;font-size:14px;line-height:1.4;color:var(--edl-ink);text-align:left}
.edl-hdr-search .edl-search-tray[hidden]{display:none}
.edl-hdr-search .edl-search-tray__list{max-height:min(60vh,456px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.edl-hdr-search .edl-search-tray__item{display:flex;align-items:center;gap:14px;padding:12px 16px;border-bottom:1px solid var(--edl-line);color:var(--edl-ink);text-decoration:none;transition:background-color .2s}
.edl-hdr-search .edl-search-tray__item:last-child{border-bottom:0}
.edl-hdr-search .edl-search-tray__item:hover,.edl-hdr-search .edl-search-tray__item:focus-visible{background:var(--edl-mint-light);color:var(--edl-ink);outline:0}
.edl-hdr-search .edl-search-tray__thumb{flex:0 0 48px;width:48px;height:48px;object-fit:contain;background:var(--edl-grey)}
.edl-hdr-search .edl-search-tray__thumb--empty{display:block}
.edl-hdr-search .edl-search-tray__body{display:flex;flex-direction:column;gap:2px;min-width:0}
.edl-hdr-search .edl-search-tray__title{font-weight:700;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.edl-hdr-search .edl-search-tray__meta{color:var(--edl-muted);font-size:13px;font-weight:600}
.edl-hdr-search .edl-search-tray__footer{flex:0 0 auto;padding:12px 16px;border-top:1px solid var(--edl-line)}
.edl-hdr-search .edl-search-tray__all{display:flex;align-items:center;justify-content:center;height:44px;padding:8px 24px;background:var(--edl-lime-bright);color:var(--edl-green-dark);font-size:14px;font-weight:700;letter-spacing:.42px;text-transform:uppercase;text-decoration:none;transition:background-color .3s,color .3s}
.edl-hdr-search .edl-search-tray__all:hover,.edl-hdr-search .edl-search-tray__all:focus-visible{background:var(--edl-green);color:#FFFFFF}
.edl-hdr-search .edl-search-tray__empty{padding:32px 24px;text-align:center;color:var(--edl-muted)}
.edl-hdr-search .edl-search-tray__empty p{margin:0}
.edl-hdr-search .edl-search-tray__empty-title{margin-bottom:6px!important;color:var(--edl-ink);font-weight:700}
.edl-hdr-search .edl-search-tray__loading{display:flex;justify-content:center;padding:24px}
.edl-hdr-search .edl-search-tray__spinner{width:24px;height:24px;border:3px solid var(--edl-mint);border-top-color:var(--edl-green);border-radius:50%;animation:edl-spin .7s linear infinite}
@keyframes edl-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.edl-hdr-search .edl-search-tray__spinner{animation-duration:2s}}

/* ---------- Account / wishlist / cart ---------- */
.edl-hdr-actions{display:flex;align-items:center;gap:8px}
.edl-hdr-actions .edl-hdr-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:48px;padding:8px 24px;background:var(--edl-lime-bright);color:var(--edl-green-dark);font-family:"Open Sans",sans-serif;font-size:14px;font-weight:700;line-height:1.35;letter-spacing:.42px;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:background-color .3s,color .3s}
.edl-hdr-actions .edl-hdr-btn:hover,.edl-hdr-actions .edl-hdr-btn:focus-visible{background:var(--edl-green);color:#FFFFFF}
.edl-hdr-actions .edl-hdr-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;background:#FFFFFF;color:var(--edl-green-dark);text-decoration:none;transition:background-color .3s,color .3s}
.edl-hdr-actions .edl-hdr-icon:hover,.edl-hdr-actions .edl-hdr-icon:focus-visible{background:var(--edl-mint-light);color:var(--edl-green-dark)}
.edl-hdr-actions .edl-hdr-count{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;padding:0 5px;border-radius:40px;background:var(--edl-lime-bright);color:var(--edl-green-dark);font-family:"Open Sans",sans-serif;font-size:12px;font-weight:400;line-height:18px;text-align:center}
.edl-hdr-actions .edl-hdr-count[hidden]{display:none}
.edl-hdr-actions .edl-hdr-icon--search,.edl-hdr-search .edl-hdr-search__cancel{display:none}

/* The design's header ends flush on the green menu row (144px on desktop): no line under it at any width. */
#header{border-bottom:0}
/* The header is its own layer above the page, so the nav dropdowns (z-index 2-3 inside it) always cover
   page sections that set their own z-index (the solution heroes use 2). */
#header{z-index:99}

/* ---------- Tablet and phone bar (design "Nav" tablet / mobile) ---------- */
/* Tablet: hamburger, logo, Login / Register, wishlist, cart; the search row sits under it. Phone: one 88px row, the
   search field opens from its icon. The paddings and gaps set in Elementor are replaced here so both follow the design. */
@media (max-width:1023.98px){
#header #mobile-nav{--padding-top:24px;--padding-bottom:0px;--padding-left:32px;--padding-right:32px}
#header #mobile-nav>.e-con-inner{flex-wrap:nowrap;align-items:center;gap:0;padding-top:24px;padding-bottom:0}
#header #mobile-nav .elementor-widget-theme-site-logo{flex:0 0 auto;width:auto;line-height:0}
#header #mobile-nav .elementor-widget-theme-site-logo img{width:278px;max-width:none;height:auto}
#header #mobile-nav .edl-hdr-actions-wrap{margin-left:auto!important}
#header #mobile-nav .elementor-widget-shortcode:not(.edl-hdr-actions-wrap){order:-1;flex:0 0 auto;width:auto;margin:0 24px 0 0!important;line-height:0}
#header #mobile-nav .elementor-widget-shortcode:not(.edl-hdr-actions-wrap) .elementor-shortcode{display:block}
#header .dfmm-hamburger{gap:4px;width:24px;height:24px;padding:0;border-radius:0}
#header .dfmm-hamburger .dfmm-hamburger__line{width:18px;border-radius:0}
#header .dfmm-hamburger[aria-expanded="true"] .dfmm-hamburger__line:nth-child(1),#header.edl-search-open .dfmm-hamburger .dfmm-hamburger__line:nth-child(1){transform:translateY(6px) rotate(45deg)}
#header .dfmm-hamburger[aria-expanded="true"] .dfmm-hamburger__line:nth-child(3),#header.edl-search-open .dfmm-hamburger .dfmm-hamburger__line:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
#header.edl-search-open .dfmm-hamburger .dfmm-hamburger__line:nth-child(2){opacity:0}
.edl-hdr-actions .edl-hdr-btn{height:40px;padding:0 24px;font-size:12px;letter-spacing:.36px}
.edl-hdr-actions .edl-hdr-icon{flex-basis:40px;width:40px;height:40px}
.edl-hdr-actions .edl-hdr-count{top:-6px;right:-8px;min-width:16px;height:16px;padding:0 4px;font-size:10px;line-height:16px}
#header .edl-hdr-msearch{--padding-top:24px;--padding-bottom:24px;--padding-left:32px;--padding-right:32px}
#header .edl-hdr-msearch>.e-con-inner{padding-top:24px;padding-bottom:24px}
.edl-hdr-search{height:40px;font-size:12px;letter-spacing:-.3px}
.edl-hdr-search .edl-hdr-search__cat{min-width:131px}
.edl-hdr-search .edl-hdr-search__cat select{height:40px;padding:0 40px 0 16px}
.edl-hdr-search .edl-hdr-search__cat .edl-ui-icon{top:10px}
.edl-hdr-search .edl-hdr-search__field{height:40px}
/* 16px keeps iOS from zooming the page when the field is focused; scaled, it reads as the design's 12px. */
body .edl-hdr-search .edl-hdr-search__field input[type=search]{height:38px;margin-right:-33.34%;font-size:16px;letter-spacing:-.4px;transform:scale(.75);transform-origin:0 50%}
.edl-hdr-search .edl-hdr-search__field{padding:0 16px;overflow:hidden}
}
@media (max-width:767.98px){
#header #mobile-nav{--padding-bottom:24px}
#header #mobile-nav>.e-con-inner{padding-bottom:24px}
/* Under 410px the row no longer fits at full size: the logo gives way first. */
#header #mobile-nav .elementor-widget-theme-site-logo{flex:0 1 164px;min-width:0}
#header #mobile-nav .elementor-widget-theme-site-logo img{width:100%;max-width:164px}
#header #mobile-nav .edl-hdr-actions-wrap{padding-left:12px}
#header #mobile-nav .elementor-widget-shortcode:not(.edl-hdr-actions-wrap){order:0;margin:0 0 0 21px!important}
body.dfmm-body-locked #header #mobile-nav .elementor-widget-shortcode:not(.edl-hdr-actions-wrap){order:-1;margin:0 24px 0 0!important}
.edl-hdr-actions .edl-hdr-icon--search{display:inline-flex;padding:0;border:0;border-radius:0;cursor:pointer}
.edl-hdr-actions .edl-hdr-icon--wishlist{display:none}
.edl-hdr-actions .edl-hdr-btn{flex:0 0 40px;width:40px;padding:0;background:#FFFFFF}
.edl-hdr-actions .edl-hdr-btn:hover,.edl-hdr-actions .edl-hdr-btn:focus-visible{background:var(--edl-mint-light);color:var(--edl-green-dark)}
.edl-hdr-actions .edl-hdr-btn span{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;width:1px;margin:-1px;overflow:hidden;position:absolute}
/* Search: a white sheet under the bar, opened by the search icon, closed by Cancel or the X. */
#header .edl-hdr-msearch{display:none;position:fixed;top:var(--edl-hdr-bottom,88px);right:0;bottom:0;left:0;z-index:5;background:#FFFFFF;overflow-y:auto;overscroll-behavior:contain}
#header.edl-search-open .edl-hdr-msearch{display:block}
#header .edl-hdr-msearch>.e-con-inner{height:auto;min-height:0}
.edl-hdr-search{gap:16px;align-items:center}
.edl-hdr-search .edl-hdr-search__cat{display:none}
.edl-hdr-search .edl-hdr-search__field{padding-left:15px;border-left:1px solid var(--edl-line)}
.edl-hdr-search .edl-hdr-search__cancel{display:inline-flex;align-items:center;flex:0 0 auto;height:40px;padding:0;border:0;border-radius:0;background:none;color:var(--edl-green);font-family:"Open Sans",sans-serif;font-size:12px;font-weight:700;line-height:1.35;letter-spacing:.36px;text-transform:uppercase;cursor:pointer}
.edl-hdr-search .edl-hdr-search__cancel:hover,.edl-hdr-search .edl-hdr-search__cancel:focus-visible{background:none;color:var(--edl-green-dark)}
body.edl-search-locked{overflow:hidden}
}

/* ---------- Menu panel (DF Mobile Menu, dressed to the design) ---------- */
/* Figtree Bold is only used by the tablet panel's second level, so the file is fetched when that level is first shown. */
@font-face{font-family:"Figtree";font-style:normal;font-weight:700;font-display:swap;src:url(../fonts/Figtree-Bold-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
/* The bar stays on top: the panel and its overlay start under it and the hamburger turns into the X. header.js keeps
   --edl-hdr-bottom in step with the bar. Phone: white sheet with dividers, account rows and a Login / Register
   footer. Tablet: dark green sheet, main menu only. */
body .dfmm-overlay{top:var(--edl-hdr-bottom,88px)}
body .dfmm-overlay.dfmm-overlay--active{opacity:.42}
body #dfmm-panel.dfmm-panel{--dfmm-bg:#FFFFFF;--dfmm-item-color:#191F1D;--dfmm-item-size:14px;--dfmm-item-active:#191F1D;--dfmm-active-weight:600;--dfmm-arrow-color:#191F1D;top:var(--edl-hdr-bottom,88px);right:auto;left:0;width:378px;max-width:88vw;transform:translateX(-100%);font-family:"Open Sans",sans-serif}
body #dfmm-panel.dfmm-panel.dfmm-panel--open{transform:none}
body #dfmm-panel .dfmm-panel__header{position:absolute;width:1px;height:1px;padding:0!important;border:0;overflow:hidden;clip:rect(1px,1px,1px,1px);clip-path:inset(50%)}
body #dfmm-panel .dfmm-panel__cta,body #dfmm-panel .dfmm-panel__social{display:none!important}
body #dfmm-panel .dfmm-menu{display:flex;flex-direction:column;padding:0 0 80px!important;background:var(--edl-line)}
body #dfmm-panel .dfmm-menu-item{flex:0 0 auto;background:#FFFFFF}
body #dfmm-panel .dfmm-menu-item+.dfmm-menu-item{border-top:1px solid var(--edl-line)}
body #dfmm-panel a.dfmm-menu-link{display:flex;align-items:center;gap:12px;min-height:63px;padding:0 24px!important;font-weight:600;letter-spacing:-.3px;line-height:1.35!important}
body #dfmm-panel .dfmm-menu-item:first-child>.dfmm-menu-item-row>a.dfmm-menu-link{min-height:59px}
body #dfmm-panel .dfmm-has-children>.dfmm-menu-item-row>a.dfmm-menu-link{min-height:58px}
body #dfmm-panel .dfmm-submenu-toggle{width:72px;justify-content:flex-end;padding:0 24px 0 0!important;border-left:0!important}
body #dfmm-panel .dfmm-submenu-toggle:hover,body #dfmm-panel .dfmm-submenu-toggle:focus-visible{background:none!important;color:var(--edl-green)}
body #dfmm-panel .dfmm-chevron{width:14px;height:14px}
body #dfmm-panel .dfmm-chevron path{stroke-width:1}
body #dfmm-panel .dfmm-menu-item.edl-mm-item--account,body #dfmm-panel .dfmm-menu-item.edl-mm-item--cart{margin-top:8px!important;border-top:0}
body #dfmm-panel .edl-mm-item--account>.dfmm-menu-item-row>a.dfmm-menu-link{min-height:59px}
body #dfmm-panel .edl-mm-item--cart>.dfmm-menu-item-row>a.dfmm-menu-link{min-height:60px}
body #dfmm-panel .edl-mm-item--wishlist>.dfmm-menu-item-row>a.dfmm-menu-link{min-height:59px}
body #dfmm-panel .edl-mm-item .edl-ui-icon{flex:0 0 auto;color:var(--edl-green-dark)}
body #dfmm-panel .edl-mm-item--account .edl-ui-icon{width:16px;height:16px}
html:not(.edl-in) #dfmm-panel .edl-mm-logout{display:none}
/* Footer: outside the scrolling list (its positioned ancestor is the nav), so it stays put under every level. */
body #dfmm-panel .dfmm-menu .edl-mm-foot{position:absolute;bottom:0;left:0;z-index:3;display:flex;align-items:center;justify-content:space-between;width:100%;height:80px;padding:0 25px 0 24px!important;background:#FFFFFF;list-style:none}
html.edl-in #dfmm-panel .dfmm-menu .edl-mm-foot{display:none}
html.edl-in #dfmm-panel .dfmm-menu{padding-bottom:0!important}
#dfmm-panel .edl-mm-foot a{font-family:"Open Sans",sans-serif;font-size:12px;font-weight:700;line-height:1.35;letter-spacing:.36px;text-transform:uppercase;text-decoration:none;color:var(--edl-green-dark)}
#dfmm-panel .edl-mm-foot .edl-mm-login{display:inline-flex;align-items:center;gap:8px;height:40px;padding:0 24px;background:var(--edl-lime-bright);transition:background-color .3s,color .3s}
#dfmm-panel .edl-mm-foot .edl-mm-login:hover,#dfmm-panel .edl-mm-foot .edl-mm-login:focus-visible{background:var(--edl-green);color:#FFFFFF}
#dfmm-panel .edl-mm-foot .edl-mm-register:hover,#dfmm-panel .edl-mm-foot .edl-mm-register:focus-visible{color:var(--edl-green)}
/* Drill-down levels */
body #dfmm-panel .dfmm-sub-menu{display:flex;flex-direction:column;height:calc(100% - 80px);background:var(--edl-line)}
html.edl-in #dfmm-panel .dfmm-sub-menu{height:100%}
body #dfmm-panel .dfmm-back-item{flex:0 0 auto;margin:0 0 8px!important;border-bottom:0;background:#FFFFFF}
body #dfmm-panel .dfmm-back-item+.dfmm-menu-item{border-top:0}
body #dfmm-panel .dfmm-back-btn{gap:8px;min-height:51px;padding:0 24px!important;color:#191F1D;font-size:14px!important;font-weight:600!important;letter-spacing:-.3px;line-height:1.35!important;text-transform:uppercase}
body #dfmm-panel .dfmm-back-btn:hover,body #dfmm-panel .dfmm-back-btn:focus-visible{background:none!important;color:var(--edl-green)}
body #dfmm-panel .dfmm-back-icon{width:24px;height:24px}
body #dfmm-panel .dfmm-back-icon path{stroke-width:.65}
body #dfmm-panel .dfmm-sub-menu a.dfmm-menu-link{padding:0 24px!important;font-size:14px!important}
body #dfmm-panel .dfmm-sub-menu .dfmm-menu-item>.dfmm-menu-item-row>a.dfmm-menu-link{min-height:63px}
#dfmm-panel .edl-mm-back--tablet{display:none}
/* Shop categories: thumbnail and name; the next level lists sub-categories with their product counts. */
#dfmm-panel .edl-mm-thumb{flex:0 0 48px;display:flex;align-items:center;justify-content:center;width:48px;height:48px;margin-right:4px;border:1px solid var(--edl-line);border-radius:50%;background:#FFFFFF;overflow:hidden}
#dfmm-panel .edl-mm-thumb img{width:36px;height:36px;object-fit:contain}
#dfmm-panel .edl-mm-label{flex:1 1 auto;min-width:0}
#dfmm-panel .edl-mm-count{flex:0 0 auto;color:#8A8A8A;font-size:12px;font-weight:400;text-transform:none;white-space:nowrap}
body #dfmm-panel .dfmm-menu-item--depth-1.edl-shop-cat>.dfmm-menu-item-row>a.dfmm-menu-link{min-height:79px}
#dfmm-panel .dfmm-menu-item--depth-1>.dfmm-menu-item-row .edl-mm-count,#dfmm-panel .dfmm-menu-item--depth-2 .edl-mm-thumb{display:none}
@media (min-width:768px){
body .dfmm-overlay{top:var(--edl-hdr-bottom,152px)}
body #dfmm-panel.dfmm-panel{top:var(--edl-hdr-bottom,152px)}
body #dfmm-panel.dfmm-panel{--dfmm-bg:#004721;--dfmm-item-color:#F5F6F6;--dfmm-item-active:#F5F6F6;--dfmm-arrow-color:#F5F6F6;width:500px;max-width:65.2vw}
body #dfmm-panel .dfmm-menu{padding:12px 0!important;background:none}
body #dfmm-panel .dfmm-menu-item{background:none}
body #dfmm-panel .dfmm-menu-item+.dfmm-menu-item{border-top:0}
body #dfmm-panel a.dfmm-menu-link{min-height:48px;padding:0 32px!important}
body #dfmm-panel .dfmm-menu-item:first-child>.dfmm-menu-item-row>a.dfmm-menu-link,body #dfmm-panel .dfmm-has-children>.dfmm-menu-item-row>a.dfmm-menu-link{min-height:43px}
body #dfmm-panel .dfmm-submenu-toggle{width:80px;padding-right:32px!important}
body #dfmm-panel .dfmm-submenu-toggle:hover,body #dfmm-panel .dfmm-submenu-toggle:focus-visible{color:var(--edl-lime)}
body #dfmm-panel .edl-mm-item,body #dfmm-panel .dfmm-menu .edl-mm-foot{display:none}
body #dfmm-panel .dfmm-sub-menu{height:100%;padding:0 0 24px!important;background:#004721}
body #dfmm-panel .dfmm-back-item{margin:0!important;background:none}
body #dfmm-panel .dfmm-back-btn{gap:12px;min-height:56px;padding:16px 32px 0!important;color:#F5F6F6}
body #dfmm-panel .dfmm-back-btn:hover,body #dfmm-panel .dfmm-back-btn:focus-visible{color:var(--edl-lime)}
#dfmm-panel .edl-mm-back--phone{display:none}
#dfmm-panel .edl-mm-back--tablet{display:inline}
/* Second level: sentence-case 18px titles. Shop categories open in place (+ / -) into cards of their sub-categories. */
body #dfmm-panel .dfmm-sub-menu a.dfmm-menu-link{padding:0 32px!important;color:#FFFFFF!important;font-family:"Figtree","Host Grotesk",sans-serif;font-size:18px!important;font-weight:700;letter-spacing:0;line-height:1.25!important;text-transform:none}
body #dfmm-panel .dfmm-sub-menu .dfmm-menu-item>.dfmm-menu-item-row>a.dfmm-menu-link{min-height:63.5px}
body #dfmm-panel .dfmm-back-item+.dfmm-menu-item{margin-top:5px!important}
body #dfmm-panel .dfmm-menu-item--depth-1.edl-shop-cat{margin-top:24px!important}
body #dfmm-panel .dfmm-menu-item--depth-1.edl-shop-cat>.dfmm-menu-item-row>a.dfmm-menu-link{min-height:48px}
#dfmm-panel .edl-mm-thumb{margin-right:4px;border:0}
body #dfmm-panel .edl-shop-cat>.dfmm-menu-item-row>.dfmm-submenu-toggle .dfmm-chevron{display:none}
body #dfmm-panel .edl-shop-cat>.dfmm-menu-item-row>.dfmm-submenu-toggle::before{content:"";width:16px;height:16px;background:linear-gradient(currentColor,currentColor) 50% 50%/16px 1.5px no-repeat,linear-gradient(currentColor,currentColor) 50% 50%/1.5px 16px no-repeat}
body #dfmm-panel .edl-shop-cat>.dfmm-menu-item-row>.dfmm-submenu-toggle[aria-expanded="true"]::before{background:linear-gradient(currentColor,currentColor) 50% 50%/16px 1.5px no-repeat}
body #dfmm-panel .edl-shop-cat>.dfmm-sub-menu{position:static!important;display:none;grid-template-columns:1fr 1fr;gap:16px;height:auto;padding:16px 32px 0!important;overflow:visible!important;transform:none;transition:none}
body #dfmm-panel .edl-shop-cat>.dfmm-sub-menu.dfmm-sub-menu--open{display:grid}
body #dfmm-panel .edl-shop-cat>.dfmm-sub-menu>.dfmm-back-item{display:none}
body #dfmm-panel .edl-shop-cat>.dfmm-sub-menu>.dfmm-menu-item{margin-top:0!important;background:#FFFFFF}
body #dfmm-panel .edl-shop-cat>.dfmm-sub-menu>.dfmm-menu-item>.dfmm-menu-item-row>a.dfmm-menu-link{flex-direction:column;justify-content:flex-start;gap:0;min-height:184px;padding:16px 12px 14px!important;color:#191F1D!important;font-family:"Open Sans",sans-serif;font-size:12px!important;font-weight:700;letter-spacing:.36px;line-height:1.35!important;text-align:center;text-transform:uppercase}
#dfmm-panel .dfmm-menu-item--depth-2 .edl-mm-thumb{display:flex;flex:0 0 100px;width:100px;height:100px;margin:0 0 17px;border-radius:16px}
#dfmm-panel .dfmm-menu-item--depth-2 .edl-mm-thumb img{width:100px;height:100px}
#dfmm-panel .dfmm-menu-item--depth-2 .edl-mm-label{flex:0 0 auto}
#dfmm-panel .dfmm-menu-item--depth-2 .edl-mm-count{margin-top:4px;letter-spacing:-.3px}
}

/* ---------- Menu row ---------- */
#header .edl-hdr-nav .elementor-nav-menu--main>.elementor-nav-menu{width:100%;flex-wrap:nowrap}
#header .edl-hdr-nav .elementor-nav-menu--main>.elementor-nav-menu>li.edl-menu-right{margin-left:auto}
#header .edl-hdr-nav .elementor-nav-menu--main .elementor-item{height:48px;padding-top:0;padding-bottom:0;white-space:nowrap}
/* Dropdown arrows: printed in the menu HTML by edl_nav_menu_caret() (inc/header.php), so they never wait for
   Elementor's menu script. Its own script-added arrow is hidden to avoid a second one. */
#header .edl-hdr-nav .elementor-nav-menu--main .sub-arrow{display:none!important}
#header .edl-hdr-nav .elementor-nav-menu--main .edl-nav-caret{display:block;flex:0 0 16px;width:16px;height:16px;margin:0 0 0 4px;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z'/%3E%3C/svg%3E") center/contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpath d='M213.66,101.66l-80,80a8,8,0,0,1-11.32,0l-80-80A8,8,0,0,1,53.66,90.34L128,164.69l74.34-74.35a8,8,0,0,1,11.32,11.32Z'/%3E%3C/svg%3E") center/contain no-repeat;transition:transform .2s}
#header .edl-hdr-nav .elementor-nav-menu--main .elementor-item.highlighted .edl-nav-caret{transform:rotate(180deg)}
#header .edl-hdr-nav .elementor-nav-menu--main .elementor-sub-item:has(.edl-nav-caret--side){gap:12px}
#header .edl-hdr-nav .elementor-nav-menu--main .edl-nav-caret--side,#header .edl-hdr-nav .elementor-nav-menu--main .elementor-sub-item.highlighted .edl-nav-caret--side{margin-left:auto;transform:rotate(-90deg)}
/* Active item: the design's 2px lime line under the label. Solutions and Industries link to sections of the home page,
   so Elementor marks them active while those sections scroll past; only the page you are on is marked. */
#header .edl-hdr-nav .elementor-nav-menu--main .elementor-item.elementor-item-active::after{background-color:#BFDF01!important}
#header .edl-hdr-nav .elementor-nav-menu--main .elementor-item-anchor.elementor-item-active:not(:hover)::after{opacity:0!important}
/* Dropdowns open on hover from CSS as well. Elementor's menu script (SmartMenus) only enables hover after it sees
   two mouse moves of 4px or less within 300ms; a brisk move onto the menu leaves it in touch mode for that page
   view and hover does nothing. Level 1 keeps Elementor's own position; deeper levels sit beside their item, as
   SmartMenus places them (its inline margins are overridden). */
@media (min-width:1025px) and (hover:hover){
#header .edl-hdr-nav .elementor-nav-menu--main li.menu-item-has-children:hover>ul.sub-menu{display:block!important}
#header .edl-hdr-nav .elementor-nav-menu--main ul.sub-menu li.menu-item-has-children:hover>ul.sub-menu{top:0!important;left:100%!important;margin:0!important;z-index:4}
#header .edl-hdr-nav .elementor-nav-menu--main>.elementor-nav-menu>li.menu-item-has-children:hover>a .edl-nav-caret{transform:rotate(180deg)}
}
/* Sticky header (Elementor "sticky: top"): out of the way while scrolling down, back as soon as you scroll up (header.js). */
#header.elementor-sticky--active{transition:transform .3s ease}
html.edl-hdr-away #header.elementor-sticky--active:not(.elementor-sticky__spacer){transform:translateY(-100%)}
/* Elementor reads the device mode from #elementor-device-mode::after. Its CSS turns off disabled breakpoints with
   "(min-width:-1)", which browsers ignore; FlyingPress's minifier rewrites that to "(width >= -1px)", which is always
   true, so every desktop reads as "widescreen" and desktop-only settings (the sticky header) switch off. The real
   breakpoints are restated here one id+element more specific, so they win wherever the rewritten rules sit. */
@media (min-width:1025px){body #elementor-device-mode::after{content:"desktop"}}
@media (max-width:1024px){body #elementor-device-mode::after{content:"tablet"}}
@media (max-width:767px){body #elementor-device-mode::after{content:"mobile"}}
#header .edl-hdr-nav .elementor-nav-menu--main .elementor-nav-menu--dropdown{padding:10px 0 12px;min-width:204px!important}
#header .edl-hdr-nav .elementor-nav-menu--main .elementor-nav-menu--dropdown .elementor-sub-item{padding-left:16px;padding-right:16px;white-space:nowrap}

/* ---------- Buttons and links shared by the overlays and account pages ---------- */
.edl-btn.edl-btn--lime,.edl-btn.edl-btn--white{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:8px 24px;border:0;border-radius:0;font-family:"Open Sans",sans-serif;font-size:14px;font-weight:700;line-height:1.35;letter-spacing:.42px;text-transform:uppercase;text-decoration:none;white-space:nowrap;cursor:pointer;transition:background-color .3s,color .3s}
.edl-btn.edl-btn--lime{background:var(--edl-lime);color:var(--edl-green-dark)}
.edl-btn.edl-btn--lime.edl-btn--bright{background:var(--edl-lime-bright)}
.edl-btn.edl-btn--lime:hover,.edl-btn.edl-btn--lime:focus-visible{background:var(--edl-green);color:#FFFFFF}
.edl-btn.edl-btn--white{background:#FFFFFF;color:var(--edl-green);box-shadow:inset 0 0 0 1px var(--edl-line)}
.edl-btn.edl-btn--white:hover,.edl-btn.edl-btn--white:focus-visible{background:var(--edl-green);color:#FFFFFF}
.edl-btn.edl-btn--block{display:flex;width:100%}
.edl-btn.edl-btn--lime[disabled],.edl-btn.edl-btn--lime.is-busy{opacity:.6;cursor:progress}
.edl-btn .edl-icon,.edl-btn .edl-ui-icon{flex:0 0 auto;width:16px;height:16px}
a.edl-link,button.edl-link{display:inline-flex;align-items:center;gap:8px;padding:0;border:0;border-radius:0;background:none;color:var(--edl-green);font-family:"Open Sans",sans-serif;font-size:14px;font-weight:700;line-height:1.35;letter-spacing:.42px;text-transform:uppercase;text-decoration:none;white-space:nowrap;cursor:pointer;transition:color .3s}
a.edl-link:hover,a.edl-link:focus-visible,button.edl-link:hover,button.edl-link:focus-visible{background:none;color:var(--edl-green-dark)}
a.edl-link .edl-icon,button.edl-link .edl-icon{width:20px;height:20px}
a.edl-link.edl-link--quiet,button.edl-link.edl-link--quiet{color:var(--edl-muted);font-weight:600}
a.edl-link.edl-link--quiet:hover,button.edl-link.edl-link--quiet:hover{color:#A80000}

/* ---------- Overlay shell ---------- */
.edl-overlay{position:fixed;inset:0;z-index:100000;display:flex}
.edl-overlay[hidden]{display:none}
.edl-overlay .edl-overlay__backdrop{position:absolute;inset:0;background:rgba(25,31,29,.72);opacity:0;transition:opacity .25s}
.edl-overlay.is-open .edl-overlay__backdrop{opacity:1}
.edl-overlay .edl-overlay__close{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:0;border-radius:50%;background:none;color:var(--edl-green);cursor:pointer;transition:color .3s}
.edl-overlay .edl-overlay__close:hover,.edl-overlay .edl-overlay__close:focus-visible{background:none;color:var(--edl-green-dark)}
html.edl-locked,html.edl-locked body{overflow:hidden}

/* ---------- Side cart ---------- */
.edl-overlay--drawer{justify-content:flex-end}
.edl-overlay .edl-cart-drawer{position:relative;display:flex;flex-direction:column;width:440px;max-width:100%;height:100%;padding:24px;background:#F4F6F5;color:var(--edl-ink);font-family:"Open Sans",sans-serif;box-shadow:0 0 60px rgba(0,0,0,.3);transform:translateX(100%);transition:transform .3s ease;outline:0}
.edl-overlay.is-open .edl-cart-drawer{transform:none}
.edl-cart-drawer .edl-cart-drawer__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 24px}
.edl-cart-drawer .edl-cart-drawer__head h2{margin:0;font-family:"Host Grotesk",sans-serif;font-size:20px;font-weight:500;line-height:1.35;letter-spacing:.6px;text-transform:uppercase;color:var(--edl-ink)}
.edl-cart-drawer .edl-cart-drawer__errors{margin:0 0 16px;padding:12px 16px;background:#F6E6E6;color:#A80000;font-size:14px;line-height:1.35}
.edl-cart-drawer .edl-cart-drawer__errors[hidden]{display:none}
.edl-cart-drawer .edl-cart-drawer__body{flex:1 1 auto;display:flex;flex-direction:column;min-height:0;transition:opacity .2s}
.edl-cart-drawer .edl-cart-drawer__body.is-busy{opacity:.5;pointer-events:none}
.edl-cart-drawer .edl-cart-drawer__loading,.edl-cart-drawer .edl-cart-drawer__empty p{margin:0 0 24px;font-size:16px;line-height:1.35;color:var(--edl-muted)}
.edl-cart-drawer .edl-cart-drawer__items{flex:1 1 auto;min-height:0;overflow-y:auto;margin:0 -24px 0 0;padding:0 24px 0 0;list-style:none}
.edl-cart-line{display:flex;gap:24px;padding:0 0 24px;margin:0 0 24px;border-bottom:1px solid var(--edl-mint)}
.edl-cart-line .edl-cart-line__media{flex:0 0 112px;width:112px;height:112px;background:#FFFFFF;border:1px solid var(--edl-line)}
.edl-cart-line .edl-cart-line__media img{display:block;width:100%;height:100%;padding:8px;object-fit:contain}
.edl-cart-line .edl-cart-line__body{flex:1 1 0%;min-width:0}
.edl-cart-line .edl-cart-line__title{margin:0 0 16px;font-size:16px;font-weight:700;line-height:1.35;letter-spacing:.48px;text-transform:uppercase;color:var(--edl-ink)}
.edl-cart-line .edl-cart-line__title a{color:inherit;text-decoration:none}
.edl-cart-line .edl-cart-line__meta{margin:-10px 0 12px;font-size:12px;line-height:1.35;color:var(--edl-muted)}
.edl-cart-line .edl-cart-line__row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin:0 0 16px}
.edl-cart-line__price{display:flex;flex-direction:column;align-items:flex-end;padding-top:2px;text-align:right;white-space:nowrap}
.edl-cart-line__price .edl-cart-line__now{font-size:16px;font-weight:700;line-height:1.35;letter-spacing:.48px;color:var(--edl-ink)}
.edl-cart-line__price .edl-cart-line__now small{font-size:12px;font-weight:700;letter-spacing:.36px}
.edl-cart-line__price .edl-cart-line__was{font-size:12px;font-weight:700;line-height:1.35;letter-spacing:.36px;color:#BDBDBD;text-decoration:line-through}
.edl-cart-line .edl-cart-line__remove{display:inline-flex;align-items:center;gap:4px;padding:0;border:0;border-radius:0;background:none;color:var(--edl-green);font-family:inherit;font-size:14px;font-weight:700;line-height:1.35;letter-spacing:.42px;text-transform:uppercase;cursor:pointer}
.edl-cart-line .edl-cart-line__remove:hover,.edl-cart-line .edl-cart-line__remove:focus-visible{background:none;color:#A80000}
.edl-stepper{display:inline-flex;align-items:center;width:115px;height:36px;border:1px solid var(--edl-mint);background:#F4F6F5}
.edl-stepper .edl-stepper__btn{flex:0 0 36px;display:inline-flex;align-items:center;justify-content:center;width:36px;height:34px;padding:0;border:0;border-radius:0;background:none;color:var(--edl-green);cursor:pointer}
.edl-stepper .edl-stepper__btn:hover,.edl-stepper .edl-stepper__btn:focus-visible{background:var(--edl-mint-light);color:var(--edl-green-dark)}
body .edl-stepper input.edl-stepper__input[type=number]{flex:1 1 0%;min-width:0;width:100%;height:34px;padding:0;border:0;border-radius:0;background:transparent;color:var(--edl-green);font-family:"Open Sans",sans-serif;font-size:14px;font-weight:700;line-height:34px;text-align:center;-moz-appearance:textfield;appearance:textfield;box-shadow:none}
body .edl-stepper input.edl-stepper__input[type=number]::-webkit-outer-spin-button,body .edl-stepper input.edl-stepper__input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.edl-cart-drawer .edl-cart-drawer__totals{flex:0 0 auto;padding-top:8px}
.edl-cart-totals{margin:0 0 16px;padding:0 0 16px;border-bottom:1px solid var(--edl-mint)}
.edl-cart-totals>div{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 16px}
.edl-cart-totals>div:last-child{margin-bottom:0}
.edl-cart-totals dt,.edl-cart-totals dd{margin:0;font-family:"Open Sans",sans-serif;font-size:14px;font-weight:700;line-height:1.35;letter-spacing:.42px;text-transform:uppercase;color:var(--edl-ink)}
.edl-cart-totals dd.edl-cart-totals__note{color:var(--edl-green);font-style:italic;text-transform:capitalize}
.edl-cart-drawer__subtotal{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 16px;font-family:"Open Sans",sans-serif;color:var(--edl-ink)}
.edl-cart-drawer__subtotal>span{font-size:24px;font-weight:400;line-height:1.35}
.edl-cart-drawer__subtotal>span small{font-size:12px;font-weight:400}
.edl-cart-drawer__subtotal>strong{font-size:20px;font-weight:700;line-height:1.35;letter-spacing:.6px}
.edl-cart-drawer .edl-cart-drawer__buttons{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media (max-width:479.98px){
.edl-overlay .edl-cart-drawer{padding:20px 16px}
.edl-cart-drawer .edl-cart-drawer__items{margin-right:-16px;padding-right:16px}
.edl-cart-line{gap:16px}
.edl-cart-line .edl-cart-line__media{flex-basis:88px;width:88px;height:88px}
.edl-cart-line .edl-cart-line__title{font-size:14px}
.edl-cart-line .edl-cart-line__row{flex-wrap:wrap}
.edl-cart-drawer .edl-cart-drawer__buttons{gap:12px}
.edl-cart-drawer__subtotal>span{font-size:20px}
}

/* ---------- Login / register ---------- */
.edl-overlay--modal{align-items:flex-start;justify-content:center;overflow-y:auto;padding:40px 16px}
/* The popup scrolls inside the overlay when it is taller than the screen. The dark layer is the overlay's own background,
   which stays on the screen: a backdrop element scrolled away with the popup and left an undimmed strip at the bottom.
   A click on the overlay outside the popup closes it (header.js). */
.edl-overlay--modal{background-color:rgba(25,31,29,0);transition:background-color .25s}
.edl-overlay--modal.is-open{background-color:rgba(25,31,29,.72)}
.edl-overlay--modal>.edl-overlay__backdrop{display:none}
.edl-overlay .edl-auth--modal{position:relative;width:720px;max-width:100%;margin:auto;padding:46px;background:var(--edl-green-box);opacity:0;transform:translateY(16px);transition:opacity .25s,transform .25s;outline:0}
.edl-overlay.is-open .edl-auth--modal{opacity:1;transform:none}
.edl-overlay .edl-auth--modal>.edl-overlay__close{position:absolute;top:24px;right:24px;color:#FFFFFF}
.edl-overlay .edl-auth--modal>.edl-overlay__close .edl-ui-icon{flex:none;width:36px;height:36px}
.edl-overlay .edl-auth--modal>.edl-overlay__close:hover,.edl-overlay .edl-auth--modal>.edl-overlay__close:focus-visible{color:var(--edl-lime)}
.edl-auth{font-family:"Open Sans",sans-serif;color:#FFFFFF}
.edl-auth .edl-auth__panel[hidden]{display:none}
.edl-auth .edl-auth__title{margin:0 0 24px;padding:0 32px;font-family:"Host Grotesk",sans-serif;font-size:48px;font-weight:700;line-height:1.25;letter-spacing:1.44px;text-transform:uppercase;text-align:center;color:#FFFFFF}
.edl-auth .edl-auth__intro{margin:0 0 26px;font-size:16px;font-weight:400;line-height:1.35;letter-spacing:-.3px;text-align:center;color:#FFFFFF}
.edl-auth .edl-auth__form{margin:0}
.edl-auth .edl-auth__grid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}
.edl-auth .edl-auth__grid .edl-auth__field{grid-column:1/-1}
.edl-auth .edl-auth__grid .edl-auth__field--half{grid-column:auto}
.edl-auth .edl-auth__field{margin:0 0 16.4px}
.edl-auth .edl-auth__field label{display:block;margin:0 0 4px;font-size:16px;font-weight:400;line-height:1.35;letter-spacing:-.3px;color:#CDD0D4}
.edl-auth .edl-auth__req{color:var(--edl-lime)}
.edl-auth .edl-auth__control{position:relative;display:block;color:#FFFFFF}
.edl-auth .edl-auth__control>.edl-ui-icon{position:absolute;left:16px;top:14px;pointer-events:none}
body .edl-auth .edl-auth__form .edl-auth__control input{display:block;width:100%;height:48px;padding:13px 16px;border:0;border-radius:0;background:var(--edl-green-dark);color:#FFFFFF;font-family:"Open Sans",sans-serif;font-size:16px;line-height:1.35;box-shadow:none;outline:0}
body .edl-auth .edl-auth__form .edl-auth__control.has-icon input{padding-left:48px}
body .edl-auth .edl-auth__form .edl-auth__control.has-toggle input{padding-right:52px}
body .edl-auth .edl-auth__form .edl-auth__control input:focus-visible{box-shadow:inset 0 0 0 1px var(--edl-lime)}
body .edl-auth .edl-auth__form .edl-auth__control input:-webkit-autofill{-webkit-text-fill-color:#FFFFFF;box-shadow:inset 0 0 0 40px var(--edl-green-dark);caret-color:#FFFFFF}
.edl-auth .edl-auth__control .edl-auth__toggle{position:absolute;right:4px;top:4px;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:0;background:none;color:#FFFFFF;cursor:pointer}
.edl-auth .edl-auth__control .edl-auth__toggle:hover,.edl-auth .edl-auth__control .edl-auth__toggle:focus-visible{background:none;color:var(--edl-lime)}
.edl-auth .edl-auth__row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:27px 0 25px}
/* WooCommerce adds its own show-password button to every password field on shop pages. */
.edl-auth .show-password-input{display:none!important}
.edl-auth .password-input{display:block}
.edl-auth .edl-auth__hp{position:absolute!important;left:-9999px;width:1px;height:1px;opacity:0}
.edl-auth a.edl-auth__link{display:inline-flex;align-items:center;gap:8px;color:var(--edl-lime-bright);font-size:14px;font-weight:700;line-height:1.35;letter-spacing:.42px;text-transform:uppercase;text-decoration:none;white-space:nowrap}
.edl-auth a.edl-auth__link:hover,.edl-auth a.edl-auth__link:focus-visible{color:#FFFFFF}
.edl-auth a.edl-auth__link .edl-icon{width:20px;height:20px}
.edl-auth .edl-auth__switch{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:4px 12px;margin:18px 0 0;font-size:16px;line-height:1.35;letter-spacing:-.3px;color:#CDD0D4}
.edl-auth:not(.edl-wholesale-form) .edl-check .edl-check__box,.edl-auth:not(.edl-wholesale-form) .edl-check input:checked+.edl-check__box{border:1.65px solid transparent;border-radius:3.65px;background-clip:padding-box}
.edl-auth:not(.edl-wholesale-form) .edl-check.edl-check--top a,.edl-auth:not(.edl-wholesale-form) .edl-check.edl-check--top strong{color:#FFFFFF;font-weight:700;text-decoration:none;white-space:nowrap}
.edl-auth .edl-auth__errors{margin:0 0 16px;padding:12px 16px;background:#F6E6E6;color:#A80000;font-size:14px;line-height:1.35}
.edl-auth .edl-auth__errors[hidden]{display:none}
.edl-auth .edl-auth__errors p{margin:0}
.edl-auth .edl-auth__errors p+p{margin-top:4px}
.edl-check{position:relative;display:inline-flex;align-items:center;gap:12px;margin:0;font-size:16px;font-weight:400;line-height:1.35;letter-spacing:-.3px;color:#CDD0D4;cursor:pointer}
.edl-check.edl-check--top{display:flex;align-items:flex-start;gap:10px;margin:0 0 16px;font-size:14px;color:#FFFFFF}
.edl-check.edl-check--top a{color:#FFFFFF;font-weight:700;text-decoration:underline}
body .edl-check input[type=checkbox]{position:absolute;opacity:0;width:20px;height:20px;margin:0;padding:0}
.edl-check .edl-check__box{flex:0 0 20px;display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border:1px solid var(--edl-mint);border-radius:2px;background:#FFFFFF;color:transparent;transition:background-color .2s,border-color .2s}
.edl-check input:checked+.edl-check__box{background:var(--edl-green);border-color:var(--edl-green);color:#FFFFFF}
.edl-check input:focus-visible+.edl-check__box{outline:2px solid var(--edl-lime);outline-offset:2px}
/* Tablet (768 design): card 424, 332 x 40 inputs, 28 / 12 px type */
@media (max-width:1024px){
.edl-overlay .edl-auth--modal{width:640px}
.edl-auth:not(.edl-wholesale-form) .edl-auth__title{margin-bottom:25px;font-size:28px;line-height:1.35;letter-spacing:.84px}
.edl-auth:not(.edl-wholesale-form) .edl-auth__intro{margin-bottom:24px;font-size:12px;letter-spacing:-.3px}
.edl-auth:not(.edl-wholesale-form) .edl-auth__field{margin-bottom:17px}
.edl-auth:not(.edl-wholesale-form) .edl-auth__row{margin:27px 0}
.edl-auth:not(.edl-wholesale-form) .edl-auth__field label{margin-bottom:5px;font-size:12px;line-height:20px;letter-spacing:-.2px}
.edl-auth:not(.edl-wholesale-form) .edl-auth__field label:not(:has(.edl-auth__req)){margin-bottom:4px;line-height:15px}
.edl-auth:not(.edl-wholesale-form) .edl-auth__control>.edl-ui-icon{top:10px}
body .edl-auth:not(.edl-wholesale-form) .edl-auth__form .edl-auth__control input{height:40px;padding:12px 16px;font-size:12px}
body .edl-auth:not(.edl-wholesale-form) .edl-auth__form .edl-auth__control.has-icon input{padding-left:48px}
body .edl-auth:not(.edl-wholesale-form) .edl-auth__form .edl-auth__control.has-toggle input{padding-right:44px}
.edl-auth:not(.edl-wholesale-form) .edl-auth__control .edl-auth__toggle{width:32px;height:32px}
.edl-auth:not(.edl-wholesale-form) .edl-check{font-size:12px;letter-spacing:-.2px}
.edl-auth:not(.edl-wholesale-form) a.edl-auth__link{font-size:12px;letter-spacing:.36px}
.edl-auth:not(.edl-wholesale-form) .edl-btn.edl-btn--lime.edl-btn--block{min-height:40px;font-size:12px;letter-spacing:.36px}
.edl-auth:not(.edl-wholesale-form) .edl-auth__switch{margin-top:20px;font-size:12px;letter-spacing:-.2px}
.edl-auth:not(.edl-wholesale-form) .edl-check.edl-check--top{gap:8px}
.edl-auth:not(.edl-wholesale-form) .edl-auth__errors{font-size:12px}
.edl-overlay .edl-auth--modal .edl-auth__intro{max-width:318px;margin-right:auto;margin-left:auto}
.edl-overlay .edl-auth--modal .edl-auth__intro br{display:none}
}
@media (min-width:768px) and (max-width:1024px){
.edl-overlay--modal{padding:40px 16px}
}
@media (max-width:767px){
.edl-overlay--modal{padding:16px 32px}
.edl-overlay .edl-auth--modal{width:366px;padding:46px 32px}
.edl-overlay .edl-auth--modal>.edl-overlay__close{top:14px;right:14px}
.edl-overlay .edl-auth--modal .edl-auth__intro{max-width:none;margin-right:-8px;margin-left:-8px}
}

/* Login / register pages: Elementor hero + card around the shortcode form (not the wholesale form) */
.e-con.e-parent:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth]){min-height:0}
.e-con.e-parent:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.e-con-inner{padding:120px 0}
.e-con.e-parent:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth]){background-color:var(--edl-green-dark);background-size:100% auto;background-position:center bottom;background-repeat:no-repeat}
.e-con.e-child:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth]){min-height:0;gap:26px;padding-top:45px}
.e-con.e-child:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.elementor-widget-text-editor,.e-con.e-child:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.elementor-widget-text-editor p{line-height:20px}
@media (max-width:1024px){
.e-con.e-parent:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.e-con-inner{padding:64px 0}
.e-con.e-parent:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth]){background-size:574px auto;background-position:1px calc(50% - 64px)}
.e-con.e-parent:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])::after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background-image:inherit;background-size:574px auto;background-position:calc(100% - 1px) calc(50% - 64px);background-repeat:no-repeat}
.e-con.e-parent:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.e-con-inner{position:relative;z-index:1}
.e-con.e-child:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth]){width:424px;max-width:calc(100% - 32px);gap:25px;padding-top:46px}
.e-con.e-child:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.elementor-widget-heading{margin-bottom:1px}
.e-con.e-child:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.elementor-widget-heading .elementor-heading-title{font-size:28px;line-height:1.35}
.e-con.e-child:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.elementor-widget-text-editor,.e-con.e-child:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.elementor-widget-text-editor p{font-size:12px;line-height:15px}
.e-con.e-child:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.elementor-widget-text-editor{margin-bottom:0}
}
@media (max-width:767px){
.e-con.e-parent:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])>.e-con-inner{padding:48px 0}
.e-con.e-parent:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth]){background-size:cover;background-position:center}
.e-con.e-parent:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth])::after{display:none}
.e-con.e-child:has(.edl-auth--page:not(.edl-wholesale-form)>.edl-auth__form[data-edl-auth]){width:calc(100% - 64px);max-width:none;padding:32px}
}

/* ---------- Wishlist heart ---------- */
.edl-heart{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border:0;border-radius:50%;background:none;color:var(--edl-green-dark);cursor:pointer;transition:transform .2s,color .2s}
.edl-heart:hover,.edl-heart:focus-visible{background:none;color:var(--edl-green);transform:scale(1.1)}
.edl-heart .edl-heart__on{display:none}
.edl-heart.is-saved .edl-heart__on{display:block}
.edl-heart.is-saved .edl-heart__off{display:none}
.edl-product-card .edl-heart--card{position:absolute;top:10px;right:10px;z-index:2}
.edl-product-card .edl-product-card__badge--sale+.edl-product-card__badge--new{right:48px}
.edl-heart.edl-heart--product{width:24px;height:24px}

/* ---------- Quantity stepper (product page, cart) ---------- */
.quantity.edl-qty{display:inline-flex!important;align-items:center;flex:0 0 auto;width:115px!important;height:48px;margin:0;padding:0;border:1px solid var(--edl-mint);background:transparent;vertical-align:top;box-sizing:border-box}
.quantity.edl-qty .edl-qty__btn{flex:0 0 38px!important;display:inline-flex;align-items:center;justify-content:center;width:38px!important;min-width:0;height:46px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:none!important;color:var(--edl-green)!important;cursor:pointer}
.quantity.edl-qty .edl-qty__btn:hover,.quantity.edl-qty .edl-qty__btn:focus-visible{background:var(--edl-mint-light)!important;color:var(--edl-green-dark)!important}
body .quantity.edl-qty input.qty[type=number]{flex:1 1 0%;min-width:0;width:100%!important;max-width:none;height:46px!important;margin:0!important;padding:0!important;border:0!important;border-radius:0;background:transparent!important;color:var(--edl-green)!important;font-family:"Open Sans",sans-serif!important;font-size:14px!important;font-weight:700!important;line-height:46px;text-align:center;-moz-appearance:textfield;appearance:textfield;box-shadow:none;outline:0}
body .quantity.edl-qty input.qty[type=number]::-webkit-outer-spin-button,body .quantity.edl-qty input.qty[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* ---------- Shop mega menu (desktop, Figma 4327:24662) — markup: inc/shop-mega-menu.php, behaviour: header.js ---------- */
.edl-mega{position:fixed;left:0;right:0;top:var(--edl-mega-top,144px);z-index:98;max-height:calc(100vh - var(--edl-mega-top,144px));overflow-y:auto;overscroll-behavior:contain;background:#004721;box-shadow:0 16px 32px rgba(0,0,0,.18);opacity:0;transition:opacity .2s}
.edl-mega.is-open{opacity:1}
.edl-mega[hidden]{display:none}
.edl-mega .edl-mega__inner{display:flex;justify-content:space-between;align-items:flex-start;gap:40px;width:calc(100% - 80px);max-width:1360px;margin:0 auto;padding:24px 0;box-sizing:border-box}
.edl-mega .edl-mega__cats{display:flex;flex-direction:column;gap:8px;flex:0 0 354px;margin:0;padding:0;list-style:none}
.edl-mega .edl-mega__cats li{margin:0;padding:0}
.edl-mega .edl-mega__cat{display:flex;align-items:center;gap:16px;padding:8px;color:#FFFFFF;font-family:"Figtree","Host Grotesk",sans-serif;font-size:18px;font-weight:700;line-height:1.5;letter-spacing:0;text-decoration:none;transition:background-color .2s}
.edl-mega .edl-mega__cat.is-active,.edl-mega .edl-mega__cat:hover,.edl-mega .edl-mega__cat:focus-visible{background:#005C2B;color:#FFFFFF}
.edl-mega .edl-mega__cat:focus-visible,.edl-mega .edl-mega__card:focus-visible,.edl-mega .edl-mega__all:focus-visible{outline:2px solid #BFDF01;outline-offset:2px}
.edl-mega .edl-mega__thumb{display:flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;padding:6px;box-sizing:border-box;border-radius:50%;background:#FFFFFF;overflow:hidden}
.edl-mega .edl-mega__thumb-img{display:block;width:100%;height:100%;object-fit:contain}
.edl-mega .edl-mega__cat-name{flex:1 1 auto;min-width:0}
.edl-mega .edl-mega__cat svg{flex:0 0 24px;width:24px;height:24px}
.edl-mega .edl-mega__main{display:flex;flex-direction:column;align-items:flex-start;gap:16px;flex:0 1 964px;min-width:0}
.edl-mega .edl-mega__pane{width:100%}
.edl-mega .edl-mega__pane[hidden]{display:none}
.edl-mega .edl-mega__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.edl-mega .edl-mega__card{display:flex;flex-direction:column;align-items:center;gap:16px;padding:16px;background:#FFFFFF;text-align:center;text-decoration:none}
.edl-mega .edl-mega__card-media{display:block;width:100px;height:100px;border-radius:16px;overflow:hidden}
.edl-mega .edl-mega__card-img{display:block;width:100%;height:100%;object-fit:contain}
.edl-mega .edl-mega__card-text{display:flex;flex-direction:column;align-items:center;gap:4px;font-family:"Open Sans",sans-serif;font-size:16px;line-height:1.35}
.edl-mega .edl-mega__card-title{font-weight:700;letter-spacing:0.48px;text-transform:uppercase;color:#191F1D;transition:color .2s}
.edl-mega .edl-mega__card-count{font-weight:400;letter-spacing:-0.3px;color:#8A8A8A}
.edl-mega .edl-mega__card:hover .edl-mega__card-title,.edl-mega .edl-mega__card:focus-visible .edl-mega__card-title{color:#00A84E}
.edl-mega .edl-mega__all{display:inline-flex;align-items:center;justify-content:center;height:48px;padding:8px 24px;box-sizing:border-box;background:#BFDF01;color:#004721;font-family:"Open Sans",sans-serif;font-size:14px;font-weight:700;line-height:1.35;letter-spacing:0.42px;text-transform:uppercase;text-decoration:none;transition:background-color .2s}
.edl-mega .edl-mega__all:hover,.edl-mega .edl-mega__all:focus-visible{background:#FFFFFF;color:#004721}
@media (max-width:1279px){.edl-mega .edl-mega__cats{flex-basis:300px}.edl-mega .edl-mega__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1024px){.edl-mega{display:none!important}}

/* Phones: smaller search / account / cart buttons so the logo can be larger (logo grows into the space freed). */
@media (max-width:767.98px){
#header #mobile-nav .elementor-widget-theme-site-logo{flex:0 1 200px}
#header #mobile-nav .elementor-widget-theme-site-logo img{max-width:200px}
#header #mobile-nav .edl-hdr-actions-wrap{padding-left:10px}
#header #mobile-nav .elementor-widget-shortcode:not(.edl-hdr-actions-wrap){margin:0 0 0 16px!important}
#header #mobile-nav .edl-hdr-actions{gap:6px}
#header #mobile-nav .edl-hdr-actions .edl-hdr-icon,#header #mobile-nav .edl-hdr-actions .edl-hdr-btn{flex:0 0 32px;width:32px;height:32px}
#header #mobile-nav .edl-hdr-actions .edl-ui-icon{width:16px;height:16px}
}
