/* DreamSail v24 — genuinely compact mobile navigation
   Loaded after the main stylesheet to override all earlier mobile-nav rules. */
@media (max-width:900px){
  .site-header{overflow:visible!important}
  .site-header .nav{flex-wrap:nowrap!important;min-height:60px!important;padding:8px 0!important;position:relative!important}
  .site-header .nav-links{
    display:none!important;
    position:absolute!important;
    top:calc(100% + 6px)!important;
    right:0!important;
    left:auto!important;
    width:min(292px,calc(100vw - 20px))!important;
    height:auto!important;
    min-height:0!important;
    max-height:min(430px,calc(100dvh - 86px))!important;
    margin:0!important;
    padding:7px!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    align-items:start!important;
    align-content:start!important;
    justify-content:stretch!important;
    gap:4px!important;
    background:rgba(255,255,255,.99)!important;
    border:1px solid rgba(10,33,78,.12)!important;
    border-radius:16px!important;
    box-shadow:0 18px 44px rgba(7,24,54,.18)!important;
    z-index:1000!important;
  }
  .site-header .nav.open .nav-links{display:grid!important}
  .site-header .nav-cta,.site-header .nav.open .nav-cta{display:none!important}

  /* Order the compact menu deliberately. */
  .site-header .nav-links .mobile-search-link{
    display:flex!important;order:1!important;grid-column:1/-1!important;
    min-height:36px!important;padding:7px 10px!important;margin:0 0 2px!important;
    background:var(--navy)!important;color:#fff!important;border:0!important;
    border-radius:10px!important;font-size:.82rem!important;font-weight:700!important;
    align-items:center!important;justify-content:center!important;
  }
  .site-header .nav-links>a[href="index.html"]{order:2!important;grid-column:1!important}
  .site-header .nav-links>a[href="plan-your-charter.html"]{order:2!important;grid-column:2!important}
  .site-header .nav-links>.nav-group:nth-of-type(1){order:3!important;grid-column:1/-1!important}
  .site-header .nav-links>.nav-group:nth-of-type(2){order:4!important;grid-column:1/-1!important}
  .site-header .nav-links>a[href="about.html"]{order:5!important;grid-column:1!important}
  .site-header .nav-links>a[href="contact.html"]{order:5!important;grid-column:2!important}

  .site-header .nav-links>a:not(.mobile-search-link),
  .site-header .nav-group-btn{
    width:100%!important;height:auto!important;min-height:34px!important;
    padding:6px 9px!important;margin:0!important;
    border-radius:9px!important;font-size:.78rem!important;line-height:1.18!important;
    text-align:left!important;white-space:normal!important;
  }
  .site-header .nav-links>a:not(.mobile-search-link){
    display:flex!important;align-items:center!important;background:#f7f9fc!important;
    border:1px solid rgba(10,33,78,.055)!important;
  }
  .site-header .nav-group{width:100%!important;margin:0!important}
  .site-header .nav-group-btn{
    display:flex!important;align-items:center!important;justify-content:space-between!important;
    background:#fff!important;border:1px solid rgba(10,33,78,.08)!important;color:var(--navy)!important;
    font-weight:700!important;
  }
  .site-header .nav-group-btn span{font-size:.66rem!important;margin-left:8px!important;transition:transform .16s ease!important}
  .site-header .nav-group.open>.nav-group-btn span{transform:rotate(180deg)!important}

  .site-header .nav-dropdown{
    position:static!important;width:100%!important;height:auto!important;min-height:0!important;
    margin:3px 0 1px!important;padding:4px!important;
    border:1px solid rgba(10,33,78,.07)!important;border-radius:10px!important;
    box-shadow:none!important;background:#f7f9fc!important;
    opacity:1!important;visibility:visible!important;transform:none!important;
    display:none!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:2px!important;
  }
  .site-header .nav-group.open .nav-dropdown,
  .site-header .nav-group.open:hover .nav-dropdown{display:grid!important}
  .site-header .nav-group:hover:not(.open) .nav-dropdown{display:none!important}
  .site-header .nav-dropdown a{
    display:flex!important;flex-direction:column!important;justify-content:center!important;
    min-height:31px!important;height:auto!important;padding:5px 7px!important;margin:0!important;
    border-radius:7px!important;font-size:.7rem!important;line-height:1.15!important;
    background:#fff!important;border:1px solid rgba(10,33,78,.045)!important;
  }
  .site-header .nav-dropdown a:first-child{grid-column:1/-1!important}
  .site-header .nav-dropdown a strong{font-size:.72rem!important;line-height:1.15!important}
  .site-header .nav-dropdown a small{font-size:.59rem!important;line-height:1.2!important;margin-top:1px!important}

  .site-header .menu-btn{
    display:grid!important;place-items:center!important;flex:0 0 42px!important;
    width:42px!important;height:42px!important;min-height:42px!important;
    padding:0!important;border-radius:12px!important;font-size:1.18rem!important;line-height:1!important;
  }
}
@media (max-width:420px){
  .site-header .nav-links{width:min(278px,calc(100vw - 16px))!important;right:0!important}
  .site-header .nav-links>a:not(.mobile-search-link),.site-header .nav-group-btn{font-size:.75rem!important;padding:6px 8px!important}
}
