html,body{max-width:100%;overflow-x:hidden}img,video,iframe,svg{max-width:100%;height:auto}
/* Newport Beach controlled responsive fixes. Keep desktop artwork visible without cropping the top. */
.hero-slider .slide img{object-position:center 18%!important}
/* Keep the aircraft, passengers, and vehicle visible in the third desktop banner. */
@media(min-width:761px){.hero-slider .slide:nth-child(3) img{object-position:center 68%!important}}
@media(max-width:1000px){
  .header-shell{grid-template-columns:1fr!important;max-width:100%;overflow:visible}
  .brand-panel{justify-content:center!important;padding:12px 16px!important;min-width:0}
  .brand-lockup{max-width:100%!important;min-width:0}.brand-copy{min-width:0}.brand-name,.brand-tag{overflow-wrap:anywhere}
  .nav-panel,.utility,.main-nav,.mobile-menu{max-width:100%}
  .wrap,.hero,.band,main,section{max-width:100%;overflow-x:hidden}
  .grid,.split,.facts,.footgrid{grid-template-columns:1fr!important}.area-list{columns:1!important}
}
@media(max-width:760px){
  .site-header{overflow:visible!important}.header-shell{min-height:0;overflow:visible!important}.brand-panel{justify-content:flex-start!important}.brand-lockup{gap:10px}.brand-lockup img{width:40px!important;height:auto!important}.brand-name{font-size:17px!important;letter-spacing:1.2px!important}.brand-tag{font-size:8px!important;letter-spacing:.8px!important}
  .utility{height:auto!important;min-height:38px;padding:7px 12px!important;flex-wrap:wrap!important;justify-content:center!important;text-align:center}.utility .bookline{white-space:normal!important}
  .main-nav{display:none!important}
  .mobile-menu{display:block!important;position:relative!important;padding:8px 12px 12px!important;overflow:visible!important;z-index:200}
  .mobile-menu>div{position:absolute!important;right:12px!important;top:52px!important;width:min(320px,calc(100vw - 24px))!important;max-height:calc(100vh - 150px)!important;overflow-y:auto!important;background:#fff!important;color:#18233a!important;z-index:9999!important}
  .mobile-menu a{display:block!important;color:#18233a!important;background:#fff!important}
  .wrap{padding-left:18px!important;padding-right:18px!important}.wrap h1{font-size:34px!important;overflow-wrap:anywhere}.wrap h2{overflow-wrap:anywhere}
  .hero{min-height:0!important;padding:56px 18px!important}.hero>div{max-width:100%!important}
  .buttons,.quick-contact .wrap{max-width:100%}.btn{max-width:100%;white-space:normal;text-align:center}
  .hero-slider{width:100%!important;min-width:0!important;overflow:hidden!important;height:auto!important;min-height:0!important;aspect-ratio:16/9}
  .hero-slider .slide img{width:100%!important;height:100%!important;min-width:0!important;object-fit:contain!important;object-position:center top!important;background:#09152b}
  .global-translate{right:10px!important;bottom:calc(14px + env(safe-area-inset-bottom))!important}
  .global-translate button{width:46px!important;height:46px!important;padding:0!important;border-radius:50%!important;font-size:0!important;display:flex!important;align-items:center!important;justify-content:center!important}
  .global-translate button::before{content:'🌐';font-size:20px!important;line-height:1!important}
  .global-translate>div{bottom:54px!important;min-width:160px!important}
}


/* Full-width interior photo banners */
.full-bleed-photo-slider{width:100%}
.full-bleed-photo-slider .sub-slide{background-image:none!important}
.full-bleed-photo-slider .sub-slide>img{display:block;width:100%!important;max-width:none!important;height:100%!important;object-fit:cover;object-position:center 28%}
.full-bleed-photo-slider .sub-slide.s3>img{object-position:center 58%}
.nb-photo-banner{position:relative;width:100%;min-height:clamp(400px,43vw,560px);padding:0!important;display:flex;align-items:flex-end;overflow:hidden;isolation:isolate;background:#071b3d;color:#fff}
.nb-photo-banner__image{position:absolute;inset:0;z-index:0;display:block;width:100%!important;max-width:none!important;height:100%!important;object-fit:cover}
.nb-photo-banner--about .nb-photo-banner__image{object-position:center 46%}
.nb-photo-banner--services .nb-photo-banner__image{object-position:center 45%}
.nb-photo-banner--fleet .nb-photo-banner__image{object-position:center 58%}
.nb-photo-banner::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(4,14,35,.9) 0%,rgba(7,27,61,.7) 44%,rgba(7,27,61,.22) 78%,rgba(7,27,61,.08) 100%);pointer-events:none}
.nb-photo-banner__content{position:relative;z-index:2;width:min(1180px,calc(100% - 48px));margin:0 auto;padding:72px 0 62px}
.nb-photo-banner .eyebrow,.nb-photo-banner .fleet2-eyebrow{color:#d6b56c!important}
.nb-photo-banner h1{max-width:900px;margin:8px 0 18px;color:#fff!important;font-family:Georgia,'Times New Roman',serif;font-size:clamp(42px,5vw,68px);line-height:1.06;text-shadow:0 3px 18px rgba(0,0,0,.55)}
.nb-photo-banner p:not(.fleet2-eyebrow){max-width:760px;color:#fff;font-size:18px;line-height:1.65;text-shadow:0 2px 12px rgba(0,0,0,.55)}
.nb-about-copy{max-width:900px}
.fleet2-hero.nb-photo-banner{padding:0!important;background:#071b3d!important}
@media(max-width:760px){
  .nb-photo-banner{min-height:360px}
  .nb-photo-banner__content{width:100%;padding:96px 18px 38px}
  .nb-photo-banner h1{font-size:clamp(34px,10vw,46px)}
  .nb-photo-banner p:not(.fleet2-eyebrow){font-size:16px}
  .nb-photo-banner--about .nb-photo-banner__image{object-position:58% center}
  .nb-photo-banner--services .nb-photo-banner__image{object-position:55% center}
  .nb-photo-banner--fleet .nb-photo-banner__image{object-position:62% center}
}
