/* Shared top navigation for content pages, including the light thesis layout. */
.site-header .site-nav { position: relative; display: flex; align-items: flex-start; flex-wrap: nowrap; gap: clamp(0.75rem, 2vw, 2rem); }
.site-nav > a, .site-nav summary { min-height: 2.75rem; font-size: 0.75rem; font-weight: 400; letter-spacing: 0.1em; line-height: 1.5; text-transform: uppercase; text-decoration: none; border-bottom: 1px solid transparent; white-space: nowrap; }
.site-nav summary { display: inline-flex; align-items: center; gap: 0.5rem; list-style: none; cursor: pointer; }
.site-nav summary::-webkit-details-marker { display: none; }
.site-nav summary:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
.site-nav > a:hover, .site-nav > a[aria-current], .site-nav summary:hover, .site-nav summary[aria-current], .nav-dropdown[open] > summary { border-bottom-color: currentColor; }
.nav-dropdown { position: relative; flex-shrink: 0; }
.nav-dropdown summary span { font-size: 0.7rem; }
.site-nav .nav-submenu { position: absolute; z-index: 20; top: calc(100% + 0.5rem); right: 0; display: none; flex-direction: column; gap: 0.25rem; width: 17rem; max-width: calc(100vw - 2.5rem); padding: 0.5rem; border: 1px solid var(--line, #ddd); background: var(--navy, #fff); box-shadow: 0 0.75rem 1.5rem rgba(0, 0, 0, 0.2); }
.site-nav .nav-dropdown[open] .nav-submenu { display: flex; }
.site-nav .nav-submenu a { display: flex; align-items: center; min-height: 2.75rem; padding: 0.5rem 0.75rem; border: 0; font-size: 0.7rem; line-height: 1.5; white-space: normal; overflow-wrap: anywhere; }
.site-nav .nav-submenu a:hover, .site-nav .nav-submenu a[aria-current="page"] { background: rgba(128, 128, 128, 0.15); }
.site-nav .nav-submenu a[aria-current="page"] { font-weight: 600; }
.site-nav .nav-dropdown-heading { display: flex; align-items: flex-start; }
.site-nav .nav-dropdown-heading > a { min-height: 2.75rem; font-size: 0.75rem; letter-spacing: 0.1em; line-height: 1.5; white-space: nowrap; }
.site-nav .nav-dropdown-heading > a:hover, .site-nav .nav-dropdown-heading > a[aria-current] { border-bottom-color: currentColor; }
.site-nav .nav-dropdown-toggle { display: inline-flex; align-items: center; justify-content: center; min-width: 2rem; min-height: 2.75rem; margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent; color: inherit; font: inherit; font-size: 0.7rem; line-height: 1.5; cursor: pointer; box-shadow: none; }
.site-nav .nav-dropdown-toggle:hover { background: rgba(128, 128, 128, 0.12); }
.site-nav .nav-dropdown-toggle:focus-visible, .site-nav .nav-dropdown-heading > a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }
.site-nav .nav-dropdown-question .nav-submenu:not([hidden]) { display: flex; }
.site-nav .nav-submenu[hidden], [data-blog-index] [hidden] { display: none !important; }
/* Bridge the small visual gap so a pointer can reach the submenu without closing it. */
.site-nav .nav-submenu::before { content: ""; position: absolute; bottom: 100%; left: 0; right: 0; height: 0.6rem; }
.site-nav .nav-submenu a[aria-current="true"] { background: rgba(128, 128, 128, 0.15); }
.visually-hidden { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0, 0, 0, 0) !important; white-space: nowrap !important; border: 0 !important; }
.blog-filter-empty { padding: 2rem 0; color: var(--muted, #737373); }
@media (max-width: 980px) {
    .site-nav .nav-dropdown { position: static; }
    .site-nav .nav-submenu { right: auto; left: 0; width: 15rem; }
}
@media (max-width: 736px) {
    .site-nav > a, .site-nav summary, .site-nav .nav-dropdown-heading > a { font-size: 0.65rem; letter-spacing: 0.06em; }
}
