/* Compact header with on-demand search and the original editorial mega-menu layout. */
.site-header { padding:0; background:rgba(255,255,255,.97); border-bottom:1px solid #e1e9e3; }
.header-inner { display:grid; grid-template-columns:auto minmax(0,1fr) auto; min-height:84px; gap:28px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
.header-inner .brand img { width:180px; }
.site-nav { grid-column:2; grid-row:1; justify-self:end; gap:4px; margin:0; padding:0; border:0; border-radius:0; background:none; box-shadow:none; font-size:14px; }
.site-nav > a, .nav-products-toggle { padding:13px 12px; border-radius:9px; font-size:14px; font-weight:650; white-space:nowrap; }
.site-nav > a:hover, .nav-products-toggle:hover, .nav-products-toggle[aria-expanded="true"] { background:#edf5ef; color:#226536; }
.site-nav .mobile-home { display:block; }
.header-actions { grid-column:3; grid-row:1; gap:6px; margin:0; padding-left:20px; border-left:1px solid #e1e9e3; }
.header-tool { display:inline-flex; justify-content:center; align-items:center; width:44px; height:44px; padding:8px; border:0; border-radius:9px; background:transparent; color:#2c4233; cursor:pointer; }
.header-tool svg { width:21px; height:21px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
.header-tool:hover, .header-tool[aria-expanded="true"] { background:#edf5ef; color:#226536; }
.cart-tool { width:auto; gap:7px; background:transparent; }
.cart-count { min-width:19px; height:19px; padding:0 5px; background:#e5f0e8; color:#25663a; font-size:11px; }
.header-search-row[hidden], .mega-menu[hidden] { display:none; }
.header-search-row { position:absolute; z-index:3; top:calc(100% + 10px); right:0; display:grid; gap:14px; width:min(500px,100%); padding:22px; border:1px solid #dbe6de; border-radius:18px; background:#fff; box-shadow:0 16px 42px #17382422; }
.search-caption { font-size:17px; font-weight:750; color:#233c2c; }
.search-close { position:absolute; top:10px; right:10px; width:36px; height:36px; border:0; border-radius:50%; background:transparent; color:#44634e; font-size:25px; cursor:pointer; }
.product-search { display:flex; align-items:center; min-width:0; gap:8px; margin:0; padding:4px 4px 4px 12px; border:1px solid #c8d9cc; border-radius:11px; background:#f6f9f7; }
.product-search:focus-within { border-color:#287b3e; box-shadow:0 0 0 3px #287b3e20; }
.product-search svg { width:18px; height:18px; flex:0 0 18px; color:#44614e; }
.product-search input { min-width:0; width:100%; flex:1; border:0; outline:0; background:transparent; color:#162c1e; font:inherit; font-size:16px; padding:7px 0; }
.product-search input::placeholder { color:#647369; opacity:1; }
.product-search button { min-height:44px; padding:0 14px; border:0; border-radius:8px; background:#287d3f; color:white; font:inherit; font-size:14px; font-weight:750; cursor:pointer; }
.product-search button span { display:none; }
.mega-menu { top:calc(100% + 10px); width:100%; max-height:calc(100dvh - 110px); overflow-y:auto; overscroll-behavior:contain; grid-template-columns:180px minmax(0,1fr) 180px; gap:26px; padding:28px; border:1px solid #dbe6de; border-top:3px solid #2b8b43; border-radius:0 0 24px 24px; background:#fbfefc; box-shadow:0 22px 48px #17382426; }
.mega-menu-intro h2 { font-size:28px; line-height:1.12; margin-bottom:18px; letter-spacing:-.045em; }
.mega-menu-intro > p:not(.mega-kicker) { color:#607166; font-size:14px; line-height:1.6; }
.mega-menu-intro .mega-all-link { display:inline-flex; padding:12px 0 0; font-size:13px; width:auto; border:0; }
.mega-category-grid { min-width:0; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding:0 24px; border-inline:1px solid #dce7df; }
.mega-category-column { min-width:0; }
.mega-column-label { margin-bottom:18px; font-size:11px; letter-spacing:.1em; line-height:1.5; color:#276d3c; }
.mega-category-column > a { min-height:48px; align-items:flex-start; gap:10px; padding:13px 0; border-top:1px solid #e1ebe4; border-radius:0; font-size:14px; font-weight:650; line-height:1.45; }
.mega-category-column > a span { min-width:0; overflow-wrap:anywhere; }
.mega-category-column > a b { font-size:15px; }
.mega-feature { display:flex; padding:23px 18px; border-radius:20px; background:#2b8b43; }
.mega-feature .mega-kicker { color:#e0f3e5; font-size:10px; line-height:1.5; margin-bottom:26px; }
.mega-feature strong { font-size:22px; line-height:1.2; }
.mega-feature p { color:#e6f4ea; font-size:13px; line-height:1.55; }
.mega-feature a { width:auto; min-height:44px; padding:12px 0 0; border:0; font-size:12px; }
@media (max-width:1200px) and (min-width:981px) {
  .header-inner { gap:14px; }
  .header-inner .brand img { width:162px; }
  .site-nav > a, .nav-products-toggle { padding-inline:8px; font-size:13px; }
  .header-actions { padding-left:10px; gap:2px; }
  .mega-menu { grid-template-columns:160px minmax(0,1fr); gap:22px; }
  .mega-feature { grid-column:1 / -1; flex-direction:row; gap:18px; align-items:center; padding:12px 18px; border-radius:12px; }
  .mega-feature .mega-kicker, .mega-feature p { display:none; }
  .mega-feature strong { font-size:16px; margin:0; }
  .mega-feature strong br { display:none; }
  .mega-feature a { margin:0 0 0 auto; padding:0; }
}
@media (max-width:980px) {
  .header-inner { grid-template-columns:minmax(0,1fr) auto; gap:8px; min-height:72px; }
  .header-inner .brand img { width:154px; }
  .header-actions { grid-column:2; padding:0; border:0; gap:2px; }
  .header-tool { width:44px; min-width:44px; height:44px; min-height:44px; padding:7px; }
  .cart-tool { width:auto; }
  .menu-toggle { display:block; width:44px; border:0; background:transparent; }
  .site-nav { grid-column:auto; grid-row:auto; position:absolute; top:100%; left:0; right:0; justify-self:stretch; display:none; width:100%; max-width:none; max-height:calc(100dvh - 82px); padding:10px 14px 20px; border:1px solid #dbe6de; border-radius:0 0 20px 20px; background:#fff; overflow-y:auto; overscroll-behavior:contain; box-shadow:0 16px 35px #17382422; }
  .site-nav.is-open { display:flex; }
  .site-nav > * { flex-shrink:0; }
  .site-nav > a, .nav-products-toggle { display:flex; align-items:center; width:100%; min-height:48px; padding:12px; font-size:16px; }
  .nav-products-toggle { justify-content:space-between; }
  .header-search-row { padding:20px 14px 14px; }
  .mega-menu { position:static; grid-template-columns:minmax(0,1fr); width:100%; max-height:none; overflow:visible; transform:none; gap:22px; margin:0; padding:12px; border:0; border-radius:0; box-shadow:none; }
  .mega-menu-intro h2, .mega-menu-intro p { display:none; }
  .mega-menu-intro .mega-all-link { min-height:44px; padding:0; align-items:center; }
  .mega-category-grid { grid-template-columns:minmax(0,1fr); gap:24px; border:0; padding:0; }
  .mega-column-label { margin-bottom:10px; }
  .mega-category-column > a { min-height:48px; padding:13px 0; font-size:15px; }
  .mega-feature { display:flex; padding:18px; }
  .mega-feature .mega-kicker, .mega-feature p { display:none; }
  .mega-feature strong { font-size:20px; margin-bottom:10px; }
  .mega-feature a { font-size:14px; }
}
@media (max-width:420px) {
  .header-inner .brand img { width:125px; }
  .header-actions .account-tool { display:none; }
  .site-nav .mobile-login { display:flex; }
  .product-search svg { display:none; }
}
@media (min-width:421px) { .site-nav .mobile-login { display:none; } }
