/* MagnateJet · shared top navigation (every charter page): Empty Legs · Fleet · Specialties · Destinations · Contact
   + a phone menu (no JavaScript: <details>) */
.nav-links{gap:30px}
.navdrop{position:relative;display:inline-block}
.navdrop-t{display:inline-flex;align-items:center;gap:6px;cursor:pointer}
.navdrop .caret{font-size:9px;transition:transform .25s;opacity:.8}
.navdrop:hover .caret{transform:rotate(180deg)}
.navdrop-menu{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(10px);min-width:236px;background:var(--paper,#F7F4EE);border:1px solid var(--gold-line-soft,rgba(197,162,100,.3));box-shadow:0 30px 70px -30px rgba(0,0,0,.42);padding:10px 0;opacity:0;visibility:hidden;transition:opacity .22s,transform .22s;z-index:130}
.navdrop::after{content:"";position:absolute;top:100%;left:0;right:0;height:14px}
.navdrop:hover .navdrop-menu,.navdrop:focus-within .navdrop-menu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(2px)}
.nav-links .navdrop-menu a{display:block;padding:11px 24px;font-family:var(--sans,'Jost',sans-serif);font-weight:300;font-size:13px;letter-spacing:.06em;text-transform:none;color:var(--muted,#6b6459);white-space:nowrap;transition:background .18s,color .18s}
.nav-links .navdrop-menu a:hover{background:var(--paper-2,#efe9df);color:var(--gold-hover,#a8823f)}
.navdrop-menu .nd-all{border-top:1px solid var(--line-soft,rgba(0,0,0,.08));margin-top:6px;padding-top:13px;color:var(--gold-deep,#8a6a2e)!important}
.nav-live{display:inline-flex;align-items:center;gap:9px}
.nl-dot{width:7px;height:7px;border-radius:50%;background:#3fbf7a;box-shadow:0 0 0 0 rgba(63,191,122,.55);animation:nlPulse 2.2s infinite}
@keyframes nlPulse{0%{box-shadow:0 0 0 0 rgba(63,191,122,.55)}70%{box-shadow:0 0 0 8px rgba(63,191,122,0)}100%{box-shadow:0 0 0 0 rgba(63,191,122,0)}}
@media(prefers-reduced-motion:reduce){.nl-dot{animation:none}}
.nav-links>a,.nav-links .navdrop-t{white-space:nowrap}
.nav .brand{flex:none}
/* desktop: the phone numbers live in the Contact section, footer and phone menu, so the menu has room */
@media(min-width:901px){.nav-tels{display:none}}
@media(max-width:1240px) and (min-width:901px){.nav-links{gap:22px}.nav-links>a,.nav-links .navdrop-t{font-size:12.5px;letter-spacing:.1em}}
@media(max-width:1040px) and (min-width:901px){.nav-links{gap:16px}.nav-links>a,.nav-links .navdrop-t{font-size:11.5px;letter-spacing:.08em}}

/* phone menu */
.mnav{display:none}
@media(max-width:900px){
  .mnav{display:block;position:static}
  .mnav>summary{list-style:none;cursor:pointer;width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:#16233a;border:1px solid rgba(197,162,100,.5);color:#F3EFE6}   /* a solid navy button: readable on the dark home hero and on the light headers of the other pages */
  .mnav>summary::-webkit-details-marker{display:none}
  .mnav>summary span,.mnav>summary span::before,.mnav>summary span::after{display:block;width:18px;height:1.5px;background:currentColor;position:relative;transition:transform .25s,background .25s}
  .mnav>summary span::before,.mnav>summary span::after{content:"";position:absolute;left:0}
  .mnav>summary span::before{top:-6px}.mnav>summary span::after{top:6px}
  .mnav[open]>summary span{background:transparent}
  .mnav[open]>summary span::before{transform:translateY(6px) rotate(45deg)}
  .mnav[open]>summary span::after{transform:translateY(-6px) rotate(-45deg)}
  .mnav-panel{position:fixed;left:0;right:0;top:var(--mnav-top,72px);max-height:calc(100svh - var(--mnav-top,72px));overflow:auto;background:var(--paper,#F7F4EE);border-top:1px solid var(--line-soft,rgba(0,0,0,.08));box-shadow:0 30px 60px -30px rgba(0,0,0,.45);padding:10px 24px 28px;z-index:140}
  .mnav-panel a{display:flex;align-items:center;gap:10px;padding:15px 0;border-bottom:1px solid var(--line-soft,rgba(0,0,0,.08));font-family:var(--sans,'Jost',sans-serif);font-size:14px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink,#1b1a17)}
  .mnav-panel .mnav-sub{display:flex;flex-wrap:wrap;gap:4px 16px;padding:8px 0 14px;border-bottom:1px solid var(--line-soft,rgba(0,0,0,.08))}
  .mnav-panel .mnav-sub a{border:none;padding:6px 0;font-size:13px;letter-spacing:.04em;text-transform:none;color:var(--muted,#6b6459)}
  .mnav-panel .mnav-tel{text-transform:none;letter-spacing:.04em;color:var(--gold-deep,#8a6a2e)}
}
@media(max-width:900px){.nav .mnav{order:3}.nav .nav-utils{order:2;margin-left:auto;margin-right:12px}}
@media(max-width:640px){.nav .nav-tels{display:none}.nav .nav-utils{margin-right:10px}.nav .mnav{flex:none}}
/* a closed menu takes no room (Chrome lays out closed <details> content, which made the page wider than the phone) */
.mnav:not([open]) .mnav-panel{display:none}
@media(max-width:400px){.nav .brand-logo{max-width:150px;height:auto}.nav .nav-sep{display:none}.nav .nav-utils{gap:8px;margin-right:8px}.nav .mnav>summary{width:38px;height:38px}}
