/* Full-width photographic sections; content and focal points are CMS-controlled. */
.flight-header{background:#061b29b8}
.exterior-chapter,
#interiorChapters>.flight-chapter{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  isolation:isolate;
  overflow:hidden;
  min-height:100svh;
  padding:130px clamp(65px,7vw,140px) 120px clamp(24px,5vw,100px);
  background:#071b24;
}
.exterior-chapter{
  align-items:flex-end;
  padding-top:180px;
  padding-bottom:170px;
}
.hero-media,
#interiorChapters .chapter-visual{
  position:absolute;
  inset:0;
  z-index:-2;
  width:100%;
  height:100%;
  max-width:none;
  margin:0;
  border:0;
  border-radius:0;
  aspect-ratio:auto;
  box-shadow:none;
  background:#071b24;
}
.scene-photo,
#interiorChapters .chapter-visual img{
  width:100%;
  height:100%;
  aspect-ratio:auto;
  object-fit:cover;
  object-position:var(--photo-x,50%) var(--photo-y,50%);
}
.exterior-chapter::after,
#interiorChapters>.flight-chapter::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  pointer-events:none;
  background:linear-gradient(90deg,#03172112 10%,#03172138 42%,#031721b0 100%),linear-gradient(0deg,#061b29d9,transparent 70%);
}
.exterior-chapter::after{
  background:linear-gradient(0deg,#051925f2 1%,#05192578 38%,#05192505 77%),linear-gradient(90deg,#03172105 25%,#0317218c 100%);
}
.exterior-heading{width:min(51%,660px);margin-left:auto;text-shadow:0 2px 24px #0005}
.exterior-heading h1{font-size:clamp(2.8rem,4.6vw,5.5rem)}
.exterior-heading>p:last-child{color:#e3eeef;max-width:40ch}
.exterior-heading .overline{color:#b5f1ce}
.chapter-content{
  width:min(50%,600px);
  margin:0;
  padding:clamp(26px,3vw,44px);
  border:1px solid #ffffff29;
  border-radius:22px;
  background:linear-gradient(130deg,#082331df,#082331ba);
  box-shadow:0 25px 80px #0003;
  backdrop-filter:blur(14px);
}
.chapter-content>h2{font-size:clamp(2rem,3vw,3.5rem)}
#welcome,#booking,#services,#safety{justify-content:flex-start!important}
#welcome::after,#booking::after,#services::after,#safety::after{
  background:linear-gradient(90deg,#031721a8,#03172118 80%),linear-gradient(0deg,#061b2999,transparent 65%)!important;
}
.glass-panel{background:#0b2a35cc;box-shadow:none}
.service-tile{background:#10323ad9}
.home-signature,.boarding-trigger{color:#e1eced;text-shadow:0 2px 12px #0009}
.chapter-rail a{color:#e0edee;background:#0825327a;backdrop-filter:blur(8px)}
.chapter-rail a[aria-current="location"]{background:#145043c9;color:white}
@media(max-width:1150px){
  .chapter-content{width:56%;padding:28px}
  .exterior-heading{width:54%}
  .exterior-heading h1{font-size:clamp(2.7rem,5vw,4rem)}
}
@media(max-width:1020px){
  .exterior-chapter,#interiorChapters>.flight-chapter{padding-inline:30px}
  .chapter-content{width:65%;max-width:620px}
  .route-list,.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .exterior-heading{width:62%}
}
@media(max-width:650px){
  .exterior-chapter{
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    align-items:stretch;
    min-height:100svh;
    padding:calc(76px + clamp(280px,70vw,420px)) 24px 150px;
  }
  .hero-media{top:76px;height:clamp(280px,70vw,420px)}
  .hero-media::after{
    content:"";position:absolute;inset:0;pointer-events:none;
    background:linear-gradient(0deg,#071b24 0%,#071b2420 26%,transparent 60%);
  }
  .exterior-chapter::after{background:linear-gradient(0deg,#071b24 18%,transparent 52%)}
  .scene-photo,#interiorChapters .chapter-visual img{
    object-position:var(--mobile-photo-x,var(--photo-x,50%)) var(--mobile-photo-y,var(--photo-y,50%));
  }
  .exterior-heading{width:100%;max-width:none;margin-top:-25px;text-align:right}
  .exterior-heading h1{font-size:clamp(2rem,8.8vw,3rem)}
  .exterior-heading>.overline{font-size:10px;letter-spacing:.12em}
  .exterior-heading>p:last-child{margin-left:auto;font-size:15px}
  .boarding-trigger{bottom:66px}
  #interiorChapters>.flight-chapter{
    display:block;
    min-height:100svh;
    padding:clamp(280px,70vw,420px) 20px 90px;
  }
  #interiorChapters .chapter-visual{height:clamp(440px,115vw,620px)}
  #interiorChapters>.flight-chapter::after{
    background:linear-gradient(0deg,#071b24 12%,#071b2490 60%,#071b2408 95%)!important;
  }
  .chapter-content{
    width:100%;max-width:none;margin:0;padding:25px 21px;
    border-radius:18px;background:linear-gradient(150deg,#082331dc,#082331f5);
    backdrop-filter:blur(10px);
  }
  .chapter-content>h2{font-size:clamp(1.9rem,8vw,2.6rem)}
  .route-picker,.booking-phone-panel,.contact-panel{padding:17px 12px}
  .route-card{gap:6px;padding:8px 6px}
  .route-card img{width:28px;height:38px}
  .route-card b{font-size:11px}
  .booking-phone-numbers a{gap:9px;font-size:clamp(1rem,4.8vw,1.4rem)}
  .contact-panel>a{font-size:13px;gap:8px}
  .contact-panel>a svg{width:19px}
  .service-tile{padding:16px 12px}
}
@media(max-width:360px){
  .exterior-chapter{padding-inline:20px}
  #interiorChapters>.flight-chapter{padding-inline:14px}
  .chapter-content{padding:24px 16px}
  .route-list{grid-template-columns:1fr}
  .route-card{padding:9px;gap:10px}
  .route-card b{font-size:13px}
  .stats-row{gap:16px}.stats-row>div{padding-right:18px}
  .contact-panel{padding-inline:9px}
  .contact-panel>a{font-size:12px}
}
@media(min-width:651px) and (max-height:500px){
  .exterior-chapter{min-height:650px;padding-top:240px;padding-bottom:140px}
  .exterior-heading h1{font-size:2.5rem}
}
@media print{
  .exterior-chapter,#interiorChapters>.flight-chapter{display:block;min-height:0;padding:25px;overflow:visible}
  .hero-media,#interiorChapters .chapter-visual{position:relative;inset:auto;z-index:auto;width:400px;max-width:100%;height:225px}
  .exterior-chapter::after,#interiorChapters>.flight-chapter::after,.hero-media::after{display:none}
  .exterior-heading,.chapter-content{width:100%;margin:20px 0;padding:0;background:white;color:black;text-shadow:none;box-shadow:none;backdrop-filter:none}
}
