/* Opt-in navigation: homepage and legacy flat pages retain their existing layout. */
body[data-shared-nav] { padding-top: 0; --shared-global-height: 72px; --shared-local-height: 60px; }
[data-shared-nav] .site-header { position: relative; inset: auto; transform: none; z-index: 40; height: 72px; transition: none; }
[data-shared-nav] .local-nav { position: fixed; inset: 0 0 auto; transform: translateY(var(--nav-y,var(--shared-global-height))); min-height: 60px; z-index: 35; transition: none; }
[data-shared-nav] .local-nav-inner { width: 100%; max-width: 1120px; min-height: 60px; margin-inline: auto; padding-inline: 24px; display: grid; grid-template-columns: minmax(0,1fr) 280px; gap: 24px; }
[data-shared-nav] .local-title { grid-column: 1; grid-row: 1; justify-self: start; min-width: 0; }
[data-shared-nav] .local-links { grid-column: 2; grid-row: 1; justify-self: end; width: 280px; grid-template-columns: 76px 76px 104px; }
[data-shared-nav] .local-links > a { justify-self: stretch; text-align: center; }
.shared-nav-space { height: var(--shared-local-height); }
.shared-nav-ready .local-nav { position: fixed; inset: 0 0 auto; transform: translateY(var(--nav-y,var(--shared-global-height))); transition: transform 240ms cubic-bezier(.22,.68,0,1), visibility 240ms; }
.shared-nav-ready .local-nav.nav-flow { transition: none; }
.shared-nav-ready .local-nav.is-hidden { visibility: hidden; pointer-events: none; }
.shared-nav-access { position: fixed; top: 8px; left: 12px; z-index: 100; padding: 12px 20px; background: white; color: #111; border: 0; transform: translateY(-160%); }
.shared-nav-access:focus { transform: none; outline: 2px solid var(--red); outline-offset: 3px; }
[data-shared-nav] [id] { scroll-margin-top: calc(var(--shared-local-height) + 24px); }
/* One phone navigation for all six product pages. */
@media (max-width: 600px) {
 body[data-shared-nav] { --shared-global-height: 64px; --shared-local-height: 52px; }
 [data-shared-nav] .site-header { height: 64px; }
 [data-shared-nav] .local-nav, [data-shared-nav] .local-nav-inner { min-height: 52px; }
 [data-shared-nav] .local-nav-inner { padding: 4px 16px; grid-template-columns: minmax(64px,1fr) auto; gap: 8px; }
 [data-shared-nav] .local-title { font-size: 0; line-height: 1; white-space: nowrap; }
 [data-shared-nav] .local-title::before { font: 600 15px/1.2 var(--font-latin); letter-spacing: .02em; }
 html[data-page="nsa800"] .local-title::before,
 html[data-page="nsa800-specs"] .local-title::before { content: "NSA800"; }
 html[data-page="dcs"] .local-title::before,
 html[data-page="dcs-specs"] .local-title::before { content: "DCS"; }
 html[data-page="afs"] .local-title::before,
 html[data-page="afs-specs"] .local-title::before { content: "AFS"; }
 [data-shared-nav] .local-links { width: auto; grid-template-columns: auto auto; gap: 6px; font-size: 14px; }
 [data-shared-nav] .local-links > a { min-height: 44px; padding: 0 12px; display: grid; place-items: center; }
 [data-shared-nav] .local-links a.active::after { bottom: 4px; }
 [data-shared-nav] .local-links .local-contact { display: none; }
}
@media (prefers-reduced-motion: reduce) {
 .shared-nav-ready .local-nav { transition: none !important; }
}
