/* Navbar 02: compact top bar, horizontal links and mobile sheet. */
.site-header { min-height: 80px; border-bottom: 1px solid #ffffff1c; background: #10151cf5; }
.site-header .header-inner { min-height: 80px; padding: 14px 0; display: flex; flex-direction: row; flex-wrap: nowrap; justify-content: space-between; align-items: center; gap: 24px; }
.site-header .brand { flex-shrink: 0; }
.site-header .brand-mark { font-size: 2.5rem; }
.site-header .brand-text { font-size: .86rem; }
.site-header .header-note { display: none; }
.site-header #main-nav { display: flex !important; flex: 0 1 auto; align-items: center; justify-content: flex-end; gap: 4px; width: auto; overflow: visible; padding: 0; }
.site-header #main-nav .nav-link { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 10px 14px; border: 0; border-radius: 6px; background: transparent; color: #c6cbd0; box-shadow: none; font-size: 1rem; letter-spacing: .04em; white-space: nowrap; transition: color 200ms, background 200ms; }
.site-header #main-nav .nav-link:hover, .site-header #main-nav .nav-link[aria-current=page] { color: #fff; background: #5b91ce22; }
.site-header #main-nav .nav-link[href*="podcast"] { color: #f5c542; }
.site-header #main-nav .nav-link[href*="podcast"]:is(:hover,[aria-current=page]) { background: #f5c54220; color: #ffe994; }
.nav-menu-toggle, .nav-sheet-close { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 44px; min-height: 44px; padding: 10px 12px; border: 1px solid #5b91ce70; border-radius: 6px; background: #202934; color: #fff; cursor: pointer; font: 700 1rem 'Barlow Condensed',sans-serif; }
.site-header .nav-menu-toggle { display: none; }
.nav-sheet { position: fixed; inset: 0 0 0 auto; width: min(360px, calc(100% - 24px)); height: 100dvh; max-height: 100dvh; max-width: none; margin: 0; padding: max(24px, env(safe-area-inset-top)) 22px max(24px, env(safe-area-inset-bottom)); border: 0; border-left: 1px solid #ffffff25; color: #fff; background: #10151c; box-shadow: -16px 0 64px #0008; overflow-y: auto; }
.nav-sheet[open] { animation: nav-sheet-in 250ms ease-out; }
.nav-sheet::backdrop { background: #05080dcc; backdrop-filter: blur(4px); }
.nav-sheet-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.nav-sheet-heading h2 { margin: 0; font: 800 2rem 'Barlow Condensed',sans-serif; text-transform: uppercase; }
.nav-sheet-intro { margin: 18px 0 28px; color: #aeb8c2; line-height: 1.5; }
.nav-sheet nav { display: grid; gap: 8px; }
.nav-sheet-link { display: flex; align-items: center; gap: 14px; min-height: 56px; padding: 14px; border-radius: 8px; color: #d8e0e8; background: #171e27; font: 700 1.15rem 'Barlow Condensed',sans-serif; letter-spacing: .03em; text-decoration: none; }
.nav-sheet-link svg { flex-shrink: 0; color: #5b91ce; }
.nav-sheet-link:hover, .nav-sheet-link[aria-current=page] { color: #fff; background: #5b91ce25; }
.nav-sheet-link[href*="podcast"] svg, .nav-sheet-link[href*="podcast"] { color: #f5c542; }
.nav-sheet-link[href*="podcast"]:is(:hover,[aria-current=page]) { background: #f5c54220; }
.site-header :is(a,button):focus-visible { outline: 2px solid #5b91ce; outline-offset: 4px; }
body:has(.nav-sheet[open]) { overflow: hidden; }
@keyframes nav-sheet-in { from { transform: translateX(100%); opacity: .5; } to { transform: translateX(0); opacity: 1; } }
@media (max-width:1100px) { .site-header #main-nav .nav-link { padding: 10px 9px; font-size: .95rem; } .site-header .header-inner { gap: 16px; } }
@media (max-width:900px) {
  .site-header .header-inner { min-height: 72px; flex-wrap: wrap; }
  .site-header.nav-ready #main-nav { display: none !important; }
  .site-header.nav-ready .nav-menu-toggle { display: inline-flex; }
  .site-header:not(.nav-ready) #main-nav { display: flex !important; flex-wrap: wrap; justify-content: flex-start; width: 100%; }
  .site-header .brand-mark { font-size: 2.25rem; }
}
@media (prefers-reduced-motion:reduce) { .nav-sheet[open] { animation: none; } .site-header #main-nav .nav-link { transition: none; } }
