/* Zonnehoek hoofdmenu v2 — mobiel-vriendelijk. Alleen geladen als v2 actief is (inc/nav-v2.php).
   Desktop ≥1200px: één regel + megapaneel met groepen als kolommen.
   Smaller: lade over de volle hoogte, accordeon direct onder het aangetikte item. */

.zh-hdr2{--zh2-bar-h:64px;}
.zh-hdr2__bar{position:relative;max-width:1260px;margin:0 auto;display:flex;align-items:center;gap:14px;padding:10px 24px;min-height:var(--zh2-bar-h);box-sizing:border-box;}
.zh-hdr2 .zh-brand{flex:0 0 auto;}

/* Chevron (CSS-pijl, goed zichtbaar, draait bij open) */
.zh-nav2__chev{display:inline-block;width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .15s ease;opacity:.75;flex:0 0 auto;}
[aria-expanded="true"] > .zh-nav2__chev{transform:rotate(-135deg) translateY(-1px);}

.zh-nav2__list{list-style:none;margin:0;padding:0;}
.zh-nav2__links,.zh-nav2__kids{list-style:none;margin:0;padding:0;}
.zh-nav2__top{
  display:inline-flex;align-items:center;gap:7px;border:0;background:transparent;cursor:pointer;text-decoration:none;
  font-family:var(--zh-sans);font-size:14.5px;font-weight:500;color:#3a4a40;padding:9px 11px;border-radius:8px;white-space:nowrap;line-height:1.2;
}
.zh-nav2__top:hover,.zh-nav2__top[aria-expanded="true"]{background:var(--zh-line-soft);color:var(--zh-groen-dark);}
.zh-nav2__item.is-current > .zh-nav2__top{color:var(--zh-groen-dark);box-shadow:inset 0 -2px 0 var(--zh-groen);}
.zh-nav2__top:focus-visible,.zh-nav2__ghead:focus-visible,.zh-nav2__link:focus-visible,.zh-nav2__overview:focus-visible,.zh-hdr2__burger:focus-visible{outline:2px solid var(--zh-groen);outline-offset:2px;}

.zh-nav2__overview{display:inline-flex;align-items:baseline;gap:8px;font-family:var(--zh-serif);font-size:19px;font-weight:600;color:var(--zh-groen-dark);text-decoration:none;margin-bottom:14px;}
.zh-nav2__overview span{font-family:var(--zh-sans);font-size:12.5px;font-weight:500;color:var(--zh-muted);}
.zh-nav2__overview:hover span{color:var(--zh-groen-dark);}

.zh-nav2__ghead{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;border:0;background:transparent;padding:0 0 5px;margin:0 0 6px;border-bottom:1px solid var(--zh-line-soft);font-family:var(--zh-sans);font-size:13.5px;font-weight:700;color:var(--zh-ink);text-align:left;cursor:default;}
.zh-nav2__link{display:block;font-size:13.5px;color:#3a4a40;text-decoration:none;padding:4px 0;line-height:1.35;}
.zh-nav2__link:hover{color:var(--zh-groen-dark);text-decoration:underline;text-underline-offset:3px;}
.zh-nav2__link[aria-current="page"]{color:var(--zh-groen-dark);font-weight:700;}
.zh-nav2__kids{margin:0 0 4px 2px;padding-left:11px;border-left:1px solid var(--zh-line);}
.zh-nav2__kids .zh-nav2__link{font-size:12.5px;color:var(--zh-muted);padding:3px 0;}

/* Astra geeft elke button een schaduw + afronding (inline CSS); binnen het menu neutraliseren. */
.zh-hdr2 button{box-shadow:none;}
.zh-hdr2 .zh-nav2__ghead{border-radius:0;}
@media (max-width:1199.98px){ .zh-hdr2 .zh-nav2__ghead{border-radius:8px;} }
/* Astra kleurt elke button:hover/:focus geel (accent); binnen het menu de eigen tinten houden. */
.zh-hdr2 .zh-nav2__top:hover,.zh-hdr2 .zh-nav2__top:focus,.zh-hdr2 .zh-nav2__ghead:hover,.zh-hdr2 .zh-nav2__ghead:focus,
.zh-hdr2 .zh-hdr2__burger:hover,.zh-hdr2 .zh-hdr2__burger:focus{background:var(--zh-line-soft);color:var(--zh-groen-dark);}
@media (min-width:1200px){
  .zh-hdr2 .zh-nav2__ghead:hover,.zh-hdr2 .zh-nav2__ghead:focus{background:transparent;color:var(--zh-ink);}
}

.zh-nav2__foot{display:none;}
.zh-hdr2__burger{display:none;}

/* ---------- Desktop ---------- */
@media (min-width:1200px){
  .zh-nav2{flex:1 1 auto;min-width:0;}
  .zh-nav2__list{display:flex;align-items:center;justify-content:center;gap:2px;flex-wrap:nowrap;}
  .zh-nav2__panel{
    position:absolute;top:100%;left:12px;right:12px;z-index:60;margin-top:1px;
    background:#fff;border:1px solid #cfe0c9;border-top:3px solid var(--zh-groen);border-radius:0 0 14px 14px;
    box-shadow:0 18px 40px rgba(0,0,0,.16);padding:20px 26px 24px;
    max-height:calc(100vh - var(--zh2-bar-h) - 24px);max-height:calc(100dvh - var(--zh2-bar-h) - 24px);overflow-y:auto;overscroll-behavior:contain;
  }
  .zh-nav2__groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:22px 28px;align-items:start;}
  .zh-nav2__ghead .zh-nav2__chev{display:none;}
}

/* ---------- Mobiel / tablet: lade + accordeon ---------- */
@media (max-width:1199.98px){
  .zh-hdr2__burger{display:inline-flex;flex-direction:column;justify-content:center;gap:4px;width:44px;height:44px;border:0;border-radius:10px;background:transparent;cursor:pointer;padding:0 11px;margin-left:4px;}
  .zh-hdr2__burger span{display:block;width:22px;height:2px;background:var(--zh-groen-dark);border-radius:2px;transition:transform .15s ease,opacity .15s ease;}
  .zh-hdr2__burger[aria-expanded="true"]{background:var(--zh-line-soft);}
  .zh-hdr2__burger[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg);}
  .zh-hdr2__burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
  .zh-hdr2__burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}
  .zh-hdr2__auth{margin-left:auto;order:0;}   /* v1 zet .zh-auth op order:2 onder 900px; hier logo | Inloggen | ☰ */
  .zh-hdr2__bar{padding:8px 16px;}

  .zh-nav2{
    display:none;position:fixed;left:0;right:0;bottom:0;top:var(--zh2-bar-h);z-index:70;
    background:#fff;border-top:1px solid var(--zh-line);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;
    padding:8px 16px calc(24px + env(safe-area-inset-bottom,0px));
  }
  .zh-hdr2.is-open .zh-nav2{display:block;}
  html.zh-nav-lock,html.zh-nav-lock body{overflow:hidden;}

  .zh-nav2__item{border-bottom:1px solid var(--zh-line-soft);}
  .zh-nav2__top{display:flex;width:100%;justify-content:space-between;min-height:52px;padding:12px 8px;font-size:16.5px;font-weight:600;color:var(--zh-ink);border-radius:10px;}
  .zh-nav2__item.is-current > .zh-nav2__top{box-shadow:inset 3px 0 0 var(--zh-groen);}
  .zh-nav2__panel{padding:4px 0 14px 8px;}
  .zh-nav2__overview{font-size:16px;margin:4px 0 8px;min-height:44px;align-items:center;}
  .zh-nav2__group{border-top:1px solid var(--zh-line-soft);}
  .zh-nav2__group--los{border-top:0;}
  .zh-nav2__ghead{min-height:48px;padding:10px 8px;margin:0;border:0;font-size:15px;font-weight:600;cursor:pointer;}
  .zh-nav2__group:not(.is-open):not(.zh-nav2__group--los) > .zh-nav2__links{display:none;}
  .zh-nav2__links{padding:0 0 10px 14px;}
  .zh-nav2__link{font-size:15px;padding:11px 8px;min-height:44px;box-sizing:border-box;}
  .zh-nav2__kids .zh-nav2__link{font-size:14px;padding:9px 8px;min-height:40px;}

  .zh-nav2__foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:18px 8px 4px;}
  .zh-nav2__footlink{font-size:15px;color:var(--zh-groen-dark);text-decoration:none;padding:10px 0;}
}
@media (max-width:420px){
  .zh-hdr2 .zh-brand__name{display:none;}
}
@media (prefers-reduced-motion:reduce){
  .zh-nav2__chev,.zh-hdr2__burger span{transition:none;}
}
/* Krappe desktopbreedte (ingelogd bestuur heeft 7 hoofditems): merknaam weg, iets smallere knoppen. */
@media (min-width:1200px) and (max-width:1319.98px){
  .zh-hdr2 .zh-brand__name{display:none;}
  .zh-nav2__top{padding:9px 9px;}
}
