/* Shared navigation for the homepage, services, and Articles. */
nav[data-site-navigation] { position: fixed; inset: 0 0 auto; z-index: 100; padding: 1.25rem 0; background: rgba(250,247,244,.96); border-bottom: 1px solid #ddd5cc; backdrop-filter: blur(20px); -webkit-backdrop-filter: blur(20px); }
nav[data-site-navigation] .container { max-width: 1164px; width: 100%; margin: 0 auto; padding: 0 2rem; display: flex; justify-content: space-between; align-items: center; gap: 1.5rem; position: relative; }
nav[data-site-navigation] .nav-brand { display: inline-flex; align-items: center; gap: .75rem; text-decoration: none; color: #2e2326; flex-shrink: 0; }
nav[data-site-navigation] .nav-icon { width: auto; height: 32px; }
nav[data-site-navigation] .nav-name { font-family: 'JetBrains Mono', monospace; font-size: .8rem; font-weight: 500; letter-spacing: .04em; }
nav[data-site-navigation] .nav-links, nav[data-site-navigation] .nav-desktop { display: flex; align-items: center; gap: 1.35rem; }
nav[data-site-navigation] .nav-link, nav[data-site-navigation] .cta-nav, nav[data-site-navigation] .nav-menu > summary { font-family: 'JetBrains Mono', monospace; font-size: .67rem; line-height: 1.6; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; color: #a33f1f; white-space: nowrap; }
nav[data-site-navigation] .nav-link { display: inline-flex; align-items: center; gap: .45rem; }
nav[data-site-navigation] .nav-link::before { content: ''; width: 5px; height: 5px; border-radius: 50%; background: #eaab00; flex: none; }
nav[data-site-navigation] .nav-link[aria-current], nav[data-site-navigation] .nav-group[data-current] > summary { color: #231a1d; }
nav[data-site-navigation] .nav-link[aria-current]::before, nav[data-site-navigation] .nav-group[data-current] > summary::before { background: #a33f1f; }
nav[data-site-navigation] .cta-nav { border: 1.5px solid #a33f1f; padding: .55rem 1.1rem; transition: background .2s, color .2s; }
nav[data-site-navigation] .cta-nav:hover { background: #a33f1f; color: #faf7f4; }
nav[data-site-navigation] a:focus-visible, nav[data-site-navigation] summary:focus-visible { outline: 2px solid #662046; outline-offset: 5px; }
nav[data-site-navigation] details > summary { cursor: pointer; list-style: none; }
nav[data-site-navigation] details > summary::-webkit-details-marker { display: none; }
nav[data-site-navigation] .nav-group { position: relative; }
nav[data-site-navigation] .nav-group > summary { padding: .55rem 0; }
nav[data-site-navigation] .nav-group > summary > span { font-size: .8rem; }
nav[data-site-navigation] .nav-submenu { position: absolute; top: calc(100% + .9rem); left: -.9rem; width: 15.5rem; }
nav[data-site-navigation] .nav-submenu, nav[data-site-navigation] .nav-menu-links { padding: .55rem 1.2rem; border: 1px solid #ddd5cc; background: #faf7f4; box-shadow: 0 .75rem 1.5rem #231a1d12; }
nav[data-site-navigation] .nav-menu-link { display: block; padding: .85rem 0; color: #a33f1f; text-decoration: none; font-family: 'JetBrains Mono', monospace; font-size: .7rem; line-height: 1.6; }
nav[data-site-navigation] .nav-menu-link + .nav-menu-link { border-top: 1px solid #ddd5cc; }
nav[data-site-navigation] .nav-menu-link[aria-current] { color: #231a1d; font-weight: 600; }
nav[data-site-navigation] .nav-menu-link[aria-current]::after { content: ' •'; color: #a33f1f; }
nav[data-site-navigation] .nav-child { padding-left: .9rem; font-size: .65rem; }
nav[data-site-navigation] .nav-menu { display: none; }
@media (max-width: 1100px) {
  nav[data-site-navigation] .nav-links, nav[data-site-navigation] .nav-desktop { gap: 1rem; }
  nav[data-site-navigation] .nav-name { font-size: .75rem; }
}
@media (max-width: 900px) {
  nav[data-site-navigation] .nav-desktop { display: none; }
  nav[data-site-navigation] .nav-name { display: inline; }
  nav[data-site-navigation] .nav-menu { display: block; }
  nav[data-site-navigation] .nav-menu > summary { display: flex; gap: .65rem; align-items: center; padding: .55rem .5rem; }
  nav[data-site-navigation] .nav-menu[open] > summary > span { transform: rotate(45deg); }
  nav[data-site-navigation] .nav-menu-links { position: absolute; top: calc(100% + 1.25rem); right: 2rem; width: min(20rem, calc(100vw - 4rem)); max-height: calc(100vh - 7rem); overflow-y: auto; }
}
@media (max-width: 600px) {
  nav[data-site-navigation] .nav-name { display: none; }
  nav[data-site-navigation] .container { padding-inline: 1.25rem; }
  nav[data-site-navigation] .nav-menu-links { right: 1.25rem; width: min(20rem, calc(100vw - 2.5rem)); }
}
@media (max-width: 420px) {
  nav[data-site-navigation] .nav-links { gap: .75rem; }
  nav[data-site-navigation] .cta-nav { font-size: .62rem; padding: .55rem .7rem; }
  nav[data-site-navigation] .nav-menu > summary { font-size: .65rem; }
}
@media (prefers-reduced-motion: reduce) {
  nav[data-site-navigation] .cta-nav { transition: none; }
}
