/* Shared navigation: desktop disclosure; sequential mobile child links. */
.site-nav__links { align-items:center; }
.site-nav__item--children { position:relative; }
.site-nav__group-toggle { display:flex; align-items:center; gap:7px; padding:12px 0; border:0; background:none; color:#212121; font-family:"obviously",sans-serif; font-size:14px; font-weight:700; line-height:1.4; text-align:left; text-transform:uppercase; cursor:pointer; }
.site-nav__chevron { flex:none; transition:transform .15s ease; }
.site-nav__group-toggle[aria-expanded="true"] .site-nav__chevron { transform:rotate(180deg); }
.site-nav__group-label { display:none; }
.site-nav__submenu { display:none; position:absolute; top:100%; left:50%; transform:translateX(-50%); z-index:101; min-width:250px; padding:8px; background:#fff; border:1px solid #e2e2e2; box-shadow:0 12px 24px #21212114; }
.site-nav__item--children.is-expanded > .site-nav__submenu { display:block; }
.site-nav .site-nav__submenu a { display:block; padding:12px 14px; font-size:14px; line-height:22px; text-transform:uppercase; text-align:center; white-space:nowrap; }
.site-nav .site-nav__submenu a:hover { background:#e2f3f9; color:#212121; opacity:1; }
.site-nav :is(a,button):focus-visible { outline:2px solid #0095d7; outline-offset:4px; }
@media (min-width:701px) and (max-width:900px) {
  .site-nav__logo .wordmark { width:220px; }
  .site-nav__links { gap:16px; }
  .site-nav__links > li > a,.site-nav__group-toggle { font-size:12px; }
}
@media (max-width:700px) {
  .site-nav__links { align-items:stretch; }
  .site-nav__links.is-open { max-height:calc(100dvh - 68px); overflow-y:auto; overscroll-behavior:contain; }
  .site-nav__group-toggle { display:none; }
  .site-nav__group-label { display:block; padding:14px 0 8px; font-family:"obviously",sans-serif; font-weight:700; font-size:14px; line-height:20px; text-transform:uppercase; color:#0095d7; }
  .site-nav .site-nav__submenu { display:block; position:static; transform:none; min-width:0; padding:0 0 8px 18px; margin-bottom:6px; border:0; border-left:2px solid #e2f3f9; box-shadow:none; }
  .site-nav .site-nav__submenu a { padding:11px 0; font-size:14px; line-height:22px; text-align:left; white-space:normal; }
}
@media (prefers-reduced-motion:reduce) {
  .site-nav__chevron { transition:none; }
}
