/* Mile I Shipping V86.98
   Public phone/tablet-only repair.
   - Keeps Login and Create Account attached to the hamburger navigation.
   - Removes the persistent mobile red line.
   - Removes the excess tablet hero gap before the three-departures panel.
   Desktop and laptop layouts remain unchanged. */

@media (max-width:900px){
  /* Keep the entire open mobile menu as one attached, scroll-safe panel. */
  html body.public-site.menu-open .site-header,
  html body.rates-page.menu-open .site-header{
    height:auto!important;
    min-height:76px!important;
    max-height:calc(100dvh - max(8px, env(safe-area-inset-bottom)))!important;
    grid-template-columns:minmax(0,1fr) 48px!important;
    grid-template-rows:76px auto auto!important;
    align-items:center!important;
    padding:0 12px 12px!important;
    overflow-x:hidden!important;
    overflow-y:auto!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    background:rgba(3,27,64,.985)!important;
    box-shadow:0 20px 48px rgba(1,14,36,.38)!important;
  }

  html body.public-site.menu-open .site-header nav,
  html body.rates-page.menu-open .site-header nav{
    position:static!important;
    inset:auto!important;
    grid-column:1/-1!important;
    grid-row:2!important;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:4px!important;
    width:100%!important;
    max-width:none!important;
    max-height:none!important;
    margin:0!important;
    padding:10px 10px 8px!important;
    overflow:visible!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-bottom:0!important;
    border-radius:16px 16px 0 0!important;
    background:#062653!important;
    box-shadow:none!important;
  }

  html body.public-site.menu-open .site-header nav a,
  html body.rates-page.menu-open .site-header nav a{
    min-height:44px!important;
    padding:10px 12px!important;
    border:1px solid transparent!important;
    border-radius:10px!important;
    background:transparent!important;
    color:#fff!important;
    font-size:13px!important;
    font-weight:850!important;
    line-height:1.2!important;
    letter-spacing:.025em!important;
    text-align:left!important;
  }

  html body.public-site.menu-open .site-header nav a:hover,
  html body.public-site.menu-open .site-header nav a:focus-visible,
  html body.rates-page.menu-open .site-header nav a:hover,
  html body.rates-page.menu-open .site-header nav a:focus-visible{
    background:rgba(255,255,255,.075)!important;
    border-color:rgba(255,255,255,.11)!important;
    color:#fff!important;
  }

  /* Touch navigation never shows the desktop hover underline. */
  html body.public-site .site-header nav a::before,
  html body.public-site .site-header nav a::after,
  html body.rates-page .site-header nav a::before,
  html body.rates-page .site-header nav a::after{
    content:none!important;
    display:none!important;
    width:0!important;
    height:0!important;
    opacity:0!important;
    background:transparent!important;
    transform:none!important;
  }

  /* Login and Create Account are the final row of the same menu panel. */
  html body.public-site.menu-open .site-header .header-actions,
  html body.rates-page.menu-open .site-header .header-actions{
    position:static!important;
    inset:auto!important;
    grid-column:1/-1!important;
    grid-row:3!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
    width:100%!important;
    margin:0!important;
    padding:10px 10px 12px!important;
    border:1px solid rgba(255,255,255,.14)!important;
    border-top:1px solid rgba(255,255,255,.10)!important;
    border-radius:0 0 16px 16px!important;
    background:#062653!important;
    box-shadow:none!important;
  }

  html body.public-site.menu-open .site-header .header-actions .btn,
  html body.rates-page.menu-open .site-header .header-actions .btn{
    width:100%!important;
    min-width:0!important;
    min-height:46px!important;
    margin:0!important;
    padding:0 12px!important;
    border-radius:11px!important;
    font-size:12px!important;
    font-weight:900!important;
  }

  /* The fixed header remains attached to the viewport while the page scrolls. */
  html body.public-site .site-header,
  html body.rates-page .site-header{
    position:fixed!important;
    top:0!important;
    right:0!important;
    left:0!important;
  }
}

@media (max-width:479px){
  html body.public-site.menu-open .site-header .header-actions,
  html body.rates-page.menu-open .site-header .header-actions{
    grid-template-columns:1fr!important;
  }
}

/* Portrait and compact tablets using the mobile hero: remove the empty band
   between the CTA buttons and the three-departures panel. */
@media (min-width:600px) and (max-width:900px){
  html body.home-page .mobile-home-hero-v63{
    min-height:0!important;
    height:auto!important;
    padding-bottom:0!important;
  }
  html body.home-page .mh63-content{
    max-width:560px!important;
    padding:48px 28px 28px!important;
  }
  html body.home-page .hero-trust-wrap{
    margin-top:0!important;
    padding-top:0!important;
  }
}

/* Landscape touch tablets only. Laptop/desktop hero sizing is untouched. */
@media (min-width:901px) and (max-width:1100px) and (pointer:coarse){
  html body.home-page .desktop-home-hero-v63.hero{
    min-height:560px!important;
  }
  html body.home-page .desktop-home-hero-v63 .hero-content{
    min-height:0!important;
    padding-bottom:86px!important;
  }
  html body.home-page .hero-trust-wrap{
    margin-top:-30px!important;
  }
}

@media (max-width:430px){
  html body.public-site.menu-open .site-header,
  html body.rates-page.menu-open .site-header{
    min-height:70px!important;
    grid-template-rows:70px auto auto!important;
  }
}
