/* Screen-only navigation: preserve all existing printing layouts. */
@media screen {
  .topbar { position: relative; z-index: 30; gap: 12px; }
  .header-nav { overflow: visible; }
  .nav-links { display: flex; align-items: center; justify-content: center; gap: 8px; }
  .header-nav .nav-toggle { display: none; }
  .header-nav a, .header-nav button { font-size: 14px; min-height: 44px; }
  .nav-group { position: relative; }
  .nav-group-toggle { gap: 9px; }
  .nav-chevron { font-size: 12px; transition: transform .15s; }
  .nav-group-toggle[aria-expanded="true"] .nav-chevron { transform: rotate(180deg); }
  .header-nav .nav-group-toggle.is-current { color: #083e69; background: white; border-color: white; }
  .nav-submenu { position: absolute; top: 100%; left: 0; min-width: 250px; padding: 8px; display: grid; gap: 4px; background: white; border: 1px solid #dfe6eb; border-radius: 12px; box-shadow: 0 12px 32px #083e6933; z-index: 40; }
  .nav-group:last-child .nav-submenu { left: auto; right: 0; }
  .header-nav .nav-submenu a, .header-nav .nav-submenu button { width: 100%; justify-content: flex-start; color: #172430; background: transparent; border-color: transparent; text-align: left; white-space: normal; line-height: 1.5; padding: 10px 12px; }
  .header-nav .nav-submenu :is(a, button):hover, .header-nav .nav-submenu :is(.active, [aria-current="page"]) { background: #eaf4fc; color: #0a4d82; }
  .header-nav :is(a, button):focus-visible { outline: 3px solid #eeae37; outline-offset: 2px; }
}
@media screen and (min-width: 981px) {
  .topbar { display: flex; }
  .header-nav { width: auto; justify-content: center; }
  .header-nav a, .header-nav button { padding-inline: 13px; }
}
@media screen and (max-width: 980px) {
  .topbar { display: flex; flex-wrap: wrap; }
  .brand { margin-right: auto; }
  .header-nav { flex: 0 0 auto; width: auto; padding: 0; order: 2; }
  .account-area { order: 1; }
  .header-nav .nav-toggle { display: inline-flex; width: 44px; justify-content: center; padding: 0; font-size: 25px; }
  .nav-links { display: none; position: absolute; top: 100%; left: 0; right: 0; padding: 12px 16px; background: #0a4d82; border-top: 1px solid #ffffff33; box-shadow: 0 12px 24px #083e6933; max-height: calc(100dvh - 86px); overflow-y: auto; align-items: stretch; }
  .header-nav.is-open .nav-links { display: grid; }
  .header-nav .nav-links > a, .header-nav .nav-links > button, .nav-group-toggle { width: 100%; justify-content: space-between; }
  .nav-submenu { position: static; min-width: 0; margin-top: 5px; box-shadow: none; }
}
