/* Only the header disclosure panel; catalogue filters and the shared shell stay independent. */
#wrapwrap .kc-subnav button[aria-controls="kc-categories-menu"] { cursor:pointer; }
#wrapwrap .kc-subnav button[aria-controls="kc-categories-menu"]:focus-visible { outline:3px solid #3b491d; outline-offset:3px; }
#wrapwrap #kc-categories-menu[hidden] { display:none !important; }
#wrapwrap #kc-categories-menu:not([hidden]) { display:block; }
#wrapwrap #kc-categories-menu {
  background:#f7f5ed; color:#263312; border-top:1px solid #d4d9c5; border-bottom:2px solid #3b491d;
}
#wrapwrap #kc-categories-menu > .kc-wrap {
  display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:24px;
  max-height:min(62vh,620px,var(--kc-categories-available,62vh));
  max-height:min(62dvh,620px,var(--kc-categories-available,62dvh));
  padding-block:22px; overflow-y:auto; overscroll-behavior:contain;
}
#wrapwrap #kc-categories-menu .kc-subnav__group { min-width:0; }
#wrapwrap #kc-categories-menu .kc-subnav__group-title { margin:0 0 10px; font-family:var(--kc-font,Arial,sans-serif); font-size:18px; font-weight:700; line-height:1.5; }
#wrapwrap #kc-categories-menu .kc-subnav__shelf { margin-block:8px 12px; }
#wrapwrap #kc-categories-menu a {
  display:flex; align-items:center; justify-content:space-between; gap:8px;
  min-height:44px; padding:8px 10px; border-radius:8px;
  color:#263312; font-size:16px; line-height:1.5; letter-spacing:0;
  white-space:normal; overflow-wrap:anywhere; text-decoration:none;
}
#wrapwrap #kc-categories-menu a:hover { background:#e9edd9; text-decoration:underline; text-underline-offset:3px; }
#wrapwrap #kc-categories-menu a:focus-visible { outline:3px solid #3b491d; outline-offset:-2px; background:#fdd201; }
#wrapwrap #kc-categories-menu .kc-subnav__shelf-link { font-weight:700; background:#edf0df; }
#wrapwrap #kc-categories-menu .kc-subnav__leaf { padding-inline-start:22px; }
#wrapwrap #kc-categories-menu small { flex:0 0 auto; font-size:16px; font-weight:600; }
@media (max-width:1199.98px) { #wrapwrap #kc-categories-menu > .kc-wrap { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:767.98px) { #wrapwrap #kc-categories-menu > .kc-wrap { grid-template-columns:minmax(0,1fr); gap:16px; padding-block:16px; } }
@media (forced-colors:active) {
  #wrapwrap #kc-categories-menu { border-color:CanvasText; background:Canvas; color:CanvasText; }
  #wrapwrap #kc-categories-menu a { color:LinkText; }
  #wrapwrap #kc-categories-menu a:focus-visible { outline-color:Highlight; }
}
