/* Cabin stays at seat scale; wings and the remaining rows continue outside the view. */
.airframe-artwork{position:absolute;inset:0;overflow:clip;pointer-events:none;z-index:-1}
.airframe-artwork svg{display:block;max-width:none}
.airframe-ready .seat-cabin{background:transparent;border-color:transparent}
.mini-aircraft .airframe-artwork{height:1500px}
.aircraft-stage:not(.airframe-ready) .seat-cabin{border-radius:72px 72px 32px 32px}
.mini-aircraft.cabin-diagram,.journey-section .mini-aircraft.cabin-diagram{position:relative;isolation:isolate;overflow:hidden;width:300px;max-width:100%;height:430px;padding:0!important;background:#edf2f5;border:0;border-radius:8px;flex:0 1 300px}
.mini-aircraft-interior{position:absolute;top:106px;left:50%;width:220px;max-width:calc(100% - 44px);transform:translateX(-50%)}
.mini-aircraft .mini-services{display:flex;gap:26px;margin:0 0 12px;padding:0;height:30px}
.mini-aircraft .mini-services span{display:grid;place-items:center;padding:0;background:#e3ebef;color:#526e7e;font-size:9px;flex:1}
.mini-aircraft .mini-cabin-row,.mini-aircraft .mini-cabin-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) 20px repeat(3,minmax(0,1fr));gap:5px;margin-top:7px;line-height:1}
.mini-aircraft .mini-cabin-columns{margin-bottom:10px;font-size:10px;color:#415c6d}
.mini-aircraft .mini-cabin-row>span{font-size:10px;color:#526e7e;align-self:center;text-align:center}
.mini-aircraft .mini-seat{display:grid;place-items:center;width:auto;height:30px;min-height:0;border-radius:4px;font-size:12px;border-width:1px;box-shadow:inset 0 -4px 0 currentColor;animation:none;opacity:1;transform:none}
.mini-aircraft .mini-seat:before,.mini-aircraft .mini-seat:after{display:none}
.mini-aircraft .mini-seat.extra{color:#a9434d}.mini-aircraft .mini-seat.upfront{color:#087449}.mini-aircraft .mini-seat.standard{color:#176ea4}.mini-aircraft .mini-seat.unavailable{color:#91a3ae}.mini-aircraft .mini-seat.selected{color:#fff;box-shadow:inset 0 -4px 0 #071f2e}
.mini-aircraft .mini-crop-note{position:absolute;bottom:0;left:0;right:0;padding:22px 8px 9px;text-align:center;background:linear-gradient(transparent,#edf2f5 48%);color:#4b6473;font-size:11px}
.boarding-layout{align-items:center;gap:clamp(20px,4vw,44px)}
.boarding-copy .passenger-count{font-variant-numeric:tabular-nums}
.aircraft-stage{position:relative;isolation:isolate;width:100%;min-width:0;margin-inline:auto;padding:var(--airframe-nose,236px) 0 calc(var(--airframe-tail,146px) + 16px)}
.aircraft-stage .seat-cabin{position:relative;isolation:isolate;width:364px;max-width:calc(100% - 16px);margin-inline:auto;padding:16px 15px 22px;border-radius:0;border-inline:2px solid #a3b8c4;border-block:0;background:#fff;box-shadow:none}
.aircraft-stage .cabin-rear{margin-bottom:0;border-radius:3px}
.aircraft-stage .cabin-seat{height:44px;border-radius:5px;box-shadow:inset 0 -5px 0 var(--seat-color);font-size:12px}
.aircraft-stage .cabin-seat.is-current{box-shadow:inset 0 -5px 0 #092e45,0 0 0 2px #fff,0 0 0 3px #123e58}
.cabin-scroll{height:640px;overflow-x:hidden;overflow-y:auto;padding:16px 10px 28px;background:#edf2f5;border:0;border-radius:8px;scrollbar-gutter:stable}
.cabin-map-heading strong{font-size:20px;font-weight:600}.seat-experience{box-shadow:none;border-color:#dce4e8;border-radius:10px}.sample-passenger{box-shadow:none}.seat-legend{line-height:1.5}
.cabin-columns{position:sticky;top:0;z-index:3;background:#fff;padding:10px 0;margin:0 0 10px;box-shadow:0 6px 8px #fff}
.cabin-row{margin:10px 0}.cabin-services{padding-top:0;padding-bottom:14px}.cabin-services>span{height:40px}
.cabin-seat.is-assigned:after{content:'\2713'}.cabin-seat:focus-visible{outline:3px solid #162f40;outline-offset:3px;z-index:4}
.cabin-seat[data-unavailable]{font-size:20px}
@media(max-width:1050px){.aircraft-stage{padding-inline:0}.cabin-map-area{padding-inline:16px}}
@media(max-width:800px){.cabin-scroll{height:570px}.boarding-layout{gap:22px}.mini-aircraft.cabin-diagram,.journey-section .mini-aircraft.cabin-diagram{flex:0 1 280px;width:280px;height:410px}.passenger-experience .wrap{width:calc(100% - 24px)}.cabin-map-area{padding-inline:12px}.aircraft-stage{width:100%;padding-inline:0}.cabin-scroll{padding:14px 0 24px}.cabin-keyboard-note{line-height:1.5}.mobile-seat-picker{position:static}.seat-detail{min-height:92px}}
@media(max-width:500px){.boarding-layout{flex-direction:column;align-items:center}.boarding-copy{width:100%;text-align:center}.boarding-copy h3{font-size:25px}.mini-aircraft.cabin-diagram,.journey-section .mini-aircraft.cabin-diagram{flex:none;width:300px;height:430px}.aircraft-stage .cabin-row,.aircraft-stage .cabin-columns{grid-template-columns:repeat(3,minmax(0,1fr)) 22px repeat(3,minmax(0,1fr));gap:4px}.aircraft-stage .seat-cabin{padding-inline:8px}.seat-zone-label{font-size:12px}.seat-zone-label small{font-size:11px}.cabin-footnote{line-height:1.6}.seat-detail strong{min-height:26px}}
@media(max-width:360px){.passenger-experience .wrap{width:calc(100% - 16px)}.cabin-map-area{padding-inline:6px}.aircraft-stage{padding-inline:0}.aircraft-stage .seat-cabin{max-width:calc(100% - 8px)}.aircraft-stage .seat-cabin{padding-inline:6px}.aircraft-stage .cabin-row,.aircraft-stage .cabin-columns{gap:3px;grid-template-columns:repeat(3,minmax(0,1fr)) 20px repeat(3,minmax(0,1fr))}.aircraft-stage .cabin-seat{font-size:11px}.mobile-seat-picker{gap:8px;padding-inline:10px}.mobile-seat-picker select{max-width:145px}}
@media(prefers-reduced-motion:reduce){.aircraft-stage .cabin-seat,.sample-passenger{transition:none}.aircraft-stage .cabin-seat:hover:not(:disabled){transform:none}}
@media(max-width:500px){.page-product #product-panel-1{padding-inline:14px}}
