/* AeroJatim v344 — global navigation: identical rhythm on every public page,
   mobile hamburger contains BOTH navigation and login/account. */

/* Desktop/tablet public header stays globally consistent. */
@media (min-width:1025px){
  .site-header .main-nav{
    gap:10px!important;
  }
  .site-header .main-nav > a:not(.nav-admin){
    min-width:auto!important;
    margin:0!important;
    padding:0 5px!important;
    font-size:14.5px!important;
    line-height:1!important;
    font-weight:900!important;
    letter-spacing:.04em!important;
    text-transform:uppercase!important;
  }
}
@media (min-width:1025px) and (max-width:1180px){
  .site-header .main-nav{gap:6px!important}
  .site-header .main-nav > a:not(.nav-admin){
    padding-inline:3px!important;
    font-size:13px!important;
    letter-spacing:.025em!important;
  }
}

/* Mobile: the three-line button is the single entry point. Login/account lives
   inside the same opened menu instead of floating separately in the header. */
@media (max-width:900px){
  .site-header .menu-button{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    width:48px!important;
    height:46px!important;
    padding:10px 11px!important;
    border-radius:10px!important;
    background:#082b4c!important;
  }
  .site-header .menu-button span,
  .site-header .menu-button[aria-expanded="true"] span:nth-child(1),
  .site-header .menu-button[aria-expanded="true"] span:nth-child(2),
  .site-header .menu-button[aria-expanded="true"] span:nth-child(3){
    display:block!important;
    width:25px!important;
    height:3px!important;
    margin:0!important;
    opacity:1!important;
    transform:none!important;
    border-radius:99px!important;
    background:#fff!important;
  }
  .site-header .main-nav{
    position:absolute!important;
    left:10px!important;
    right:10px!important;
    top:68px!important;
    width:auto!important;
    padding:10px!important;
    align-items:stretch!important;
    gap:0!important;
    border:1px solid rgba(8,43,76,.10)!important;
    border-radius:0 0 16px 16px!important;
    background:rgba(255,255,255,.985)!important;
    box-shadow:0 24px 52px rgba(8,43,76,.18)!important;
    backdrop-filter:blur(18px)!important;
  }
  .site-header .main-nav > a,
  .site-header .main-nav > a:not(.nav-admin),
  .site-header .main-nav > .nav-admin,
  .site-header .main-nav > .nav-participant-profile{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    left:auto!important;
    bottom:auto!important;
    transform:none!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    min-height:56px!important;
    margin:0!important;
    padding:0 16px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    border:0!important;
    border-bottom:1px solid #edf1f4!important;
    border-radius:0!important;
    clip-path:none!important;
    background:transparent!important;
    box-shadow:none!important;
    color:#17364f!important;
    font-size:18px!important;
    line-height:1.15!important;
    font-weight:900!important;
    letter-spacing:.035em!important;
    text-align:left!important;
    text-transform:uppercase!important;
  }
  .site-header .main-nav > a:last-child,
  .site-header .main-nav > .nav-admin:last-child,
  .site-header .main-nav > .nav-participant-profile:last-child{
    border-bottom:0!important;
  }
  .site-header .main-nav > .nav-admin,
  .site-header .main-nav > .nav-participant-profile{
    margin-top:7px!important;
    min-height:58px!important;
    justify-content:center!important;
    border:0!important;
    border-radius:10px!important;
    background:#082b4c!important;
    color:#fff!important;
  }
  .site-header .main-nav > .nav-participant-profile{
    justify-content:flex-start!important;
    gap:10px!important;
  }
  .site-header .main-nav > .nav-participant-profile .nav-profile-copy b{
    color:#fff!important;
    font-size:15px!important;
  }
  .site-header .main-nav > .nav-participant-profile .nav-profile-copy small{
    color:rgba(255,255,255,.72)!important;
    font-size:11px!important;
    font-weight:900!important;
    letter-spacing:.06em!important;
    text-transform:uppercase!important;
  }
}

@media (max-width:760px){
  .site-header .nav-wrap{min-height:72px!important;height:72px!important}
  .site-header{height:72px!important}
  .site-header .brand-logo{width:42px!important;height:42px!important}
  .site-header .brand strong{font-size:22px!important}
  .site-header .main-nav{top:72px!important}
  .site-header .main-nav > a,
  .site-header .main-nav > a:not(.nav-admin),
  .site-header .main-nav > .nav-admin{font-size:18.5px!important;min-height:58px!important}
}
