.nav-menu-toggle,.nav-menu-button{display:none}

@media (max-width:860px){
  .nav{position:relative;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:12px 16px}
  .brand{min-width:0;max-width:calc(100% - 112px)}
  .brand-logo{width:205px;margin:0}
  .nav-menu-toggle{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;opacity:0}
  .nav-menu-button{display:inline-flex;align-items:center;justify-content:center;gap:.55rem;min-height:44px;border:1px solid #cbd5e1;border-radius:999px;background:#fff;color:var(--navy);font-weight:900;padding:.58rem .85rem;box-shadow:0 10px 24px rgb(15 23 42 / .08);cursor:pointer}
  .nav-menu-toggle:focus-visible+.nav-menu-button{outline:3px solid var(--focus);outline-offset:3px}
  .nav-menu-icon{display:inline-grid;gap:4px}
  .nav-menu-icon span{display:block;width:18px;height:2px;border-radius:99px;background:currentColor}
  .nav-links{display:none;width:100%;margin-left:0;padding:10px 0 2px;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:8px;overflow:visible}
  .nav-menu-toggle:checked~.nav-links{display:flex}
  .nav-links a:not(.button){width:100%;justify-content:center;min-height:44px;border:1px solid #dbe3f0;border-radius:12px;background:#f8fafc;color:var(--navy);font-weight:850;padding:10px 12px}
  .nav-links .button{width:100%;min-height:48px;margin:2px 0 0;box-shadow:0 14px 32px rgb(23 37 84 / .16)}
  .nav-logout-form{width:100%}
  .nav-logout-form .button{width:100%;justify-content:center}
}

@media (max-width:520px){
  .brand-logo{width:190px}
  .nav-links a:not(.button){flex:0 0 auto;font-size:.98rem}
}
