/* Keep a single header row; secondary links always live in the disclosure. */
.site-nav--home { --home-nav-gap: .75rem; }
.site-nav--home [hidden] { display: none !important; }
.site-nav--home .site-nav__inner { position: relative; gap: 1rem; }
.site-nav--home .site-nav__logo { flex-shrink: 0; }
.site-nav--home .site-nav__actions { order: 3; margin: 0; gap: .75rem; }
html[dir="rtl"] .site-nav--home .site-nav__actions { margin-inline-start: 0; }
.site-nav--home .nav-toggle { display: block; width: 44px; height: 44px; padding: 10px; flex-shrink: 0; }
.site-nav--home .nav-toggle span { margin-inline: auto; }
.site-nav--home .site-nav__links { margin: 0; gap: var(--home-nav-gap); }
.site-nav--home .site-nav__links a { display: inline-flex; align-items: center; min-height: 44px; white-space: nowrap; font-size: .8125rem; letter-spacing: .04em; }
.site-nav--home .site-nav__cta { padding: .6rem 1.25rem; }
.site-nav--home .home-nav__primary { order: 2; margin-inline-start: auto; }
.site-nav--home .home-nav__primary > ul { flex-direction: row; flex-wrap: nowrap; gap: var(--home-nav-gap); }
.site-nav--home .home-nav__primary[hidden] + .site-nav__actions { margin-inline-start: auto; }
.site-nav--home .home-nav__overflow {
  position: absolute;
  inset-inline-end: 0;
  top: calc((var(--nav-h) + 100%) / 2 + .5rem);
  left: auto;
  right: auto;
  width: max-content;
  min-width: 14rem;
  max-width: calc(100vw - 2rem);
  max-height: calc(100dvh - var(--nav-h) - 1rem);
  overflow-y: auto;
  padding: 1rem 1.25rem;
  border: 1px solid rgba(13, 13, 13, .15);
  border-radius: var(--radius);
  background: var(--white);
  box-shadow: 0 12px 32px rgba(13, 13, 13, .15);
  transform: none;
  transition: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
/* Logical end works in both directions without the old mobile left/right inset. */
.site-nav--home .home-nav__overflow { inset-inline-end: 0; }
.site-nav--home .home-nav__overflow > ul { width: 100%; flex-direction: column; align-items: flex-start; gap: .25rem; }
.site-nav--home .home-nav__overflow.open { opacity: 1; visibility: visible; pointer-events: auto; }
.site-nav--home :is(.nav-toggle, .site-nav__links a):focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
@media (max-width: 900px) {
  .site-nav--home .site-nav__inner { gap: .5rem; }
  .site-nav--home .site-nav__logo { flex: 1 1 0; }
  .site-nav--home .site-nav__actions { gap: .35rem; }
  .site-nav--home .home-nav__primary { display: none; }
  .site-nav--home .home-nav__overflow { width: min(22rem, calc(100vw - 2rem)); }
}
/* Reading and all navigation remain available without scripts. */
html:not(.js) .site-nav--home { position: relative; height: auto; padding-block: .75rem; }
html:not(.js) .site-nav--home .site-nav__inner { flex-wrap: wrap; }
html:not(.js) .site-nav--home .nav-toggle { display: none; }
html:not(.js) .site-nav--home .home-nav__primary,
html:not(.js) .site-nav--home .home-nav__overflow { display: flex; position: static; width: 100%; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; box-shadow: none; background: transparent; visibility: visible; opacity: 1; pointer-events: auto; }
html:not(.js) .site-nav--home .home-nav__primary { order: 4; }
html:not(.js) .site-nav--home .home-nav__overflow { order: 5; }
html:not(.js) .site-nav--home .site-nav__links > ul { flex-direction: row; flex-wrap: wrap; justify-content: flex-start; }
