/* Desktop: full category navigation, unchanged in behavior. */
body>nav.category-nav{position:relative;z-index:30;overflow:visible;align-items:center}
.category-nav-toggle{display:none}
.category-nav-links{display:flex;width:100%;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;min-width:0}
.category-nav-links>.category-group{position:relative}
.category-nav-links>a{font-size:16px;font-weight:700;line-height:1.4;padding:10px 0}
.category-nav-links>a:hover,.category-nav a[aria-current=page]{color:var(--green);text-decoration:underline;text-underline-offset:5px}
.category-nav summary{display:flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;list-style:none;font-size:16px;font-weight:700;line-height:1.4;padding:10px 0;color:inherit}
.category-nav summary::-webkit-details-marker{display:none}
.category-nav summary::marker{content:''}
.category-nav summary:focus-visible,.category-nav-toggle:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:5px}
.category-nav summary:hover{color:var(--green);text-decoration:underline;text-underline-offset:4px}
.category-nav .category-arrow{font-size:17px;transition:transform .15s}
.category-nav details[open]>summary>.category-arrow{transform:rotate(180deg)}
.category-nav .category-submenu{background:#fff;border:1px solid #dfe7de;border-radius:10px;padding:8px;box-shadow:0 10px 26px #20372b24;text-align:left}
.category-nav-links>.category-group>.category-submenu{position:absolute;top:100%;left:0;width:max-content;min-width:230px;max-width:min(340px,calc(100vw - 40px));max-height:65vh;overflow:auto;z-index:31}
.category-nav .category-submenu a{display:block;white-space:normal;overflow-wrap:anywhere;padding:10px 12px;font-size:14px;font-weight:500;line-height:1.45;border-radius:6px}
.category-nav .category-submenu a:hover{background:#f0f5ee;color:var(--green)}
.category-nav .category-submenu .category-all{font-weight:700;border-bottom:1px solid #edf0e9;margin-bottom:4px}
.category-nav .category-submenu summary{padding:10px 12px;font-size:14px;overflow-wrap:anywhere}
.category-nav .category-submenu .category-submenu{box-shadow:none;border:0;border-left:2px solid #dfe7de;border-radius:0;margin-left:12px;padding:0 0 0 5px}

/* Mobile: collapsible navigation. Without JavaScript the links remain accessible. */
@media(max-width:700px){
 body>nav.category-nav{display:flex;flex-direction:column;align-items:stretch;gap:0;justify-content:flex-start;margin:0 18px;padding:8px 0}
 body>nav.category-nav.is-enhanced .category-nav-toggle{display:flex}
 body>nav.category-nav .category-nav-toggle{width:100%;margin:0;align-items:center;justify-content:space-between;min-height:46px;padding:10px 14px;border:1px solid #dbe5db;border-radius:10px;background:#f1f5ef;color:var(--dark);font-size:15px;font-weight:700;text-align:left;line-height:1.4;cursor:pointer}
 .category-nav-toggle-label{display:inline-flex;align-items:center;gap:11px}
 .category-nav-hamburger{display:block;flex-shrink:0}
 .category-nav-toggle-chevron{font-size:22px;line-height:1;transition:transform .15s}
 .category-nav.is-open .category-nav-toggle-chevron{transform:rotate(180deg)}
 .category-nav-links{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;width:100%;gap:0;margin-top:7px;padding:5px 10px;border:1px solid #e3e9e0;border-radius:10px;background:#fff;max-height:70vh;overflow-y:auto;overscroll-behavior:contain;box-shadow:0 6px 18px #20372b10}
 .category-nav.is-enhanced:not(.is-open) .category-nav-links{display:none}
 .category-nav-links>.category-group{width:100%;flex:0 0 auto;border-bottom:1px solid #eef0ec}
 .category-nav-links>a{display:flex;align-items:center;min-height:44px;width:100%;padding:10px 8px;font-size:15px;border-bottom:1px solid #eef0ec}
 .category-nav-links>:last-child{border-bottom:0}
 .category-nav summary{font-size:15px;padding:10px 8px;min-height:44px}
 .category-nav-links>.category-group>.category-submenu{position:static;width:100%;min-width:0;max-width:none;max-height:none;overflow:visible;box-shadow:none;margin-bottom:8px}
 .category-nav .category-submenu a,.category-nav .category-submenu summary{min-height:42px}
}
