/* Product screenshots, preserved exactly as supplied, framed as devices. */
.download-showcase{width:940px;max-width:calc(100vw - 36px);border-radius:36px;background:linear-gradient(145deg,#eff7ffed,#e5eeffd9);border:1px solid #fff9;box-shadow:inset 0 1px #fff,0 35px 110px #071b485c;backdrop-filter:blur(35px) saturate(140%);-webkit-backdrop-filter:blur(35px) saturate(140%)}
.app-preview-row{display:flex;align-items:start;justify-content:center;gap:30px;padding:52px 42px 20px;isolation:isolate;position:relative}.app-preview-row:before{content:'';position:absolute;inset:20% 8% 0;background:radial-gradient(ellipse,#88b8f458,transparent 65%);z-index:-1;filter:blur(24px)}
.app-preview{width:202px;flex:0 1 202px;min-width:0;text-align:center}.app-device{border-radius:35px;padding:5px;background:linear-gradient(115deg,#f5f7fa,#b5c0cc 18%,#eef2f6 39%,#a7b3c0 63%,#e5ebf1 84%,#f9fbfd);box-shadow:inset 0 1px 1px #fff,inset 0 -1px 1px #73869b99,0 18px 25px -10px #1e406242;position:relative;transform:translateY(0)}.app-device:before,.app-device:after{content:'';position:absolute;width:2px;border-radius:2px;background:linear-gradient(#eef2f6,#9daab9);left:-2px;top:22%;height:9%}.app-device:after{left:auto;right:-2px;top:27%;height:13%}.app-device-screen{border-radius:30px;overflow:hidden;aspect-ratio:248/540;background:#d7e6ff;border:1px solid #8496aa;position:relative}.app-device-screen>svg{display:block;width:100%;height:100%}.app-preview-search{transform:rotate(-5deg) translateY(20px)}.app-preview-track{transform:rotate(5deg) translateY(20px)}.app-preview figcaption{font-size:12px;font-weight:600;letter-spacing:.02em;margin-top:15px;color:#496b93}.app-preview-book figcaption{color:#284f81}.download-showcase .download-dialog-copy{margin-top:25px;padding:0 30px 36px}.download-showcase .download-dialog-copy h2{font:650 42px/1.1 var(--ui);letter-spacing:-.055em;margin-bottom:12px}.download-showcase .download-dialog-copy>p{font-size:15px;margin-bottom:23px;color:#55749a}.download-showcase .download-dialog-copy>small{color:#6984a4}.download-showcase .dialog-close{background:#ffffff8c;backdrop-filter:blur(12px)}
/* The icons on the left face inward toward the orbital centre. */
.nc-checkin,.nc-rebook{flex-direction:row-reverse;text-align:right}
/* A quiet seam separates the airline tab's caption from the logos. */
.is-home .sky-hero .airlines-section:after{content:'';position:absolute;top:0;left:calc(var(--airline-tab-left) + 18px);width:calc(var(--airline-tab-width) - 36px);height:1px;background:linear-gradient(90deg,transparent,#ffffff79 18%,#ffffff79 82%,transparent);pointer-events:none}
.is-home #faq{margin-top:65px;padding-top:30px;padding-bottom:90px}
@media(max-width:700px){.download-showcase{max-width:calc(100vw - 20px);border-radius:26px}.app-preview-row{gap:10px;padding:53px 17px 6px}.app-preview{width:30%;flex:1 1 0}.app-device{padding:3px;border-radius:22px}.app-device-screen{border-radius:18px}.app-preview-search{transform:rotate(-5deg) translateY(14px)}.app-preview-track{transform:rotate(5deg) translateY(14px)}.app-preview figcaption{font-size:10px;margin-top:11px}.download-showcase .download-dialog-copy{margin-top:34px;padding:0 18px 27px}.download-showcase .download-dialog-copy h2{font-size:34px}.download-showcase .download-dialog-copy>p{font-size:12px}.nc-checkin,.nc-rebook{flex-direction:row-reverse;gap:7px;max-width:47%;font-size:9px}.nc-checkin>span:last-child,.nc-rebook>span:last-child{white-space:normal;max-width:73px}.nc-checkin{left:0}.nc-rebook{left:0}.nc-service-icon{flex:none}.is-home #faq{margin-top:32px;padding-top:25px;padding-bottom:65px}}
@media(max-width:360px){.app-preview-row{gap:8px;padding-inline:12px}.app-device{border-radius:18px}.app-device-screen{border-radius:15px}.download-showcase .download-dialog-copy h2{font-size:30px}}

/* Keep the hero trail attached to its corner as the page scrolls past. */
.hero-contrail{position:absolute;z-index:0;pointer-events:none;left:-7%;top:0;width:clamp(430px,47vw,880px);height:auto;max-width:none;opacity:.45;transform:rotate(-15deg);transform-origin:50% 50%;mask-image:linear-gradient(90deg,#000 58%,transparent 98%)}
html[data-sky-mode=night] .hero-contrail{opacity:0}
/* Centre the appearance control independently of the navigation links. */
@media(min-width:1380px){.is-home .header-inner{position:relative}.is-home .sky-mode-switch{position:absolute;left:50%;transform:translateX(-50%);margin:0}.is-home .nav{margin-left:auto}}
/* Readable service labels, with the left-hand icons nearest the orbit. */
.nc-universe{width:min(920px,100%)}
.nc-service{font-size:16px;line-height:1.4;gap:12px}
.nc-checkin{left:2%}.nc-rebook{left:0}.nc-tracking,.nc-invoice{right:0}
.nc-service-icon{width:46px;height:46px;border-radius:14px}
.nc-service svg{width:25px;height:25px}
.is-home #for-you{background:transparent;overflow:visible;box-shadow:none}
.is-home #for-you .audience-card{box-shadow:inset 0 1px #ffffff80,0 12px 35px #18395a0b}
.is-home #audience-title span{color:var(--sky-accent)}
.is-home #faq{border-top:1px solid var(--glass-line);padding-top:54px}
@media(max-width:700px){
 .hero-contrail{width:440px;left:-190px;top:-25px;opacity:.48}
 .nc-universe{height:365px}
 .nc-service{font-size:12px;gap:8px}
 .nc-service-icon{width:38px;height:38px;border-radius:12px}
 .nc-service svg{width:22px;height:22px}
 .nc-checkin,.nc-rebook{flex-direction:row-reverse;max-width:46%;left:0;text-align:right}
 .nc-tracking,.nc-invoice{flex-direction:row;max-width:46%;text-align:left}
 .nc-service>span:last-child{white-space:normal;max-width:91px}
 .nc-checkin>span:last-child,.nc-rebook>span:last-child{max-width:83px}
 .nc-support>span:last-child{max-width:none}
 .is-home #faq{padding-top:35px}
}

/* A common frame and fuselage baseline keep aircraft steady between routes. */
.is-home .tracking-combined .aircraft-cutout{height:auto;aspect-ratio:3 / 1;object-fit:contain;object-position:center;transform:translateY(var(--aircraft-shift,0%))!important}
.aircraft-cutout[src$="aircraft-747-8-profile.webp"]{--aircraft-shift:5.594%}
.aircraft-cutout[src$="aircraft-a320neo-profile.webp"]{--aircraft-shift:-2.072%}
.aircraft-cutout[src$="aircraft-a350-profile.webp"]{--aircraft-shift:6.966%}
.aircraft-cutout[src$="aircraft-a380-profile.webp"]{--aircraft-shift:1.381%}
.aircraft-cutout[src$="aircraft-e190-profile.webp"]{--aircraft-shift:-0.138%}

/* A single, prominent outcome in the final booking step. */
.bs-ticket.bs-confirmation{min-height:214px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;padding:25px 18px;text-align:center}
.bs-confirmation-symbol{width:58px;height:58px;display:grid;place-items:center;border-radius:50%;color:#267e6a;border:1px solid #66b59e80;background:#89dfc533;box-shadow:inset 0 1px #ffffff88}
.bs-confirmation-symbol svg{width:29px;height:29px;stroke-width:1.9}
.bs-confirmation strong{font:600 clamp(23px,1.8vw,28px)/1.18 var(--ui);letter-spacing:-.035em;max-width:185px;color:var(--sky-ink)}
html[data-sky-mode=night] .bs-confirmation-symbol{color:#b8f4df;background:#64d5b31a;border-color:#96dfc95c;box-shadow:inset 0 1px #ffffff24}
@media(max-width:700px){.bs-ticket.bs-confirmation{min-height:202px}.bs-confirmation strong{font-size:27px}}

/* Square portraits share the same crop in both traveller pickers. */
.bs-portrait img.traveller-portrait,.navia-avatar img.traveller-portrait{position:absolute;inset:0;width:100%;height:100%;max-width:100%;object-fit:cover;object-position:center;transform:none}

/* Keep the completed hero ticket crisp against the daytime sky. */
html:not([data-sky-mode=night]) .is-home #scene-3 .confirmed-ticket{background:linear-gradient(135deg,#f6fbfff2,#d8edffe8)!important;border-color:#ffffffe6;box-shadow:inset 0 1px #fff,0 12px 30px #164c7833!important;color:#123c59}
html:not([data-sky-mode=night]) .is-home #scene-3 .confirmed-ticket>span{color:#436b88}
html:not([data-sky-mode=night]) .is-home #scene-3 .confirmed-ticket>p,html:not([data-sky-mode=night]) .is-home #scene-3 .confirmed-ticket>small{color:#41647e}
html:not([data-sky-mode=night]) .is-home #scene-3 .confirmed-ticket svg{color:#2e70a3}
html:not([data-sky-mode=night]) .is-home #scene-3 .ticket-tear{border-color:#739bb973}
html:not([data-sky-mode=night]) .is-home #scene-3 .confirmed-ticket>small b{color:#164d77}
/* A direct, readable promise beside the booking journey. */
.booking-steps .bs-heading>p{max-width:315px;font:600 clamp(18px,1.65vw,23px)/1.35 var(--ui);letter-spacing:-.025em;color:var(--sky-ink);padding-bottom:4px}
/* A proper route mark remains legible between the airport readouts. */
.tracking-combined .live-flight-path{display:flex;align-items:center;justify-content:center;gap:6px;flex:1 1 80px;min-width:36px;max-width:96px;margin:0 6px;color:var(--sky-accent,#346c9d)}
.tracking-combined .live-flight-path:before,.tracking-combined .live-flight-path:after{content:'';flex:1;min-width:4px;border-top:2px dotted currentColor;opacity:.55}
.tracking-combined .live-flight-path svg{display:block;width:27px;height:27px;flex:0 0 27px;overflow:visible}
@media(max-width:700px){.booking-steps .bs-heading>p{font-size:19px;max-width:100%;margin-top:18px}.tracking-combined .live-flight-path{gap:3px;margin-inline:2px;flex-basis:50px;min-width:30px}.tracking-combined .live-flight-path svg{width:24px;height:24px;flex-basis:24px}}
@media(max-width:360px){.tracking-combined .live-flight-path{min-width:24px;margin-inline:0}.tracking-combined .live-flight-path:before,.tracking-combined .live-flight-path:after{display:none}.tracking-combined .live-card-route{gap:4px}}

/* The hero's route stays legible on both sky backgrounds. */
.is-home .fare-times .fare-path{color:#16476b;gap:8px;padding-inline:15px;min-width:52px}
.is-home .fare-times .fare-path>span{height:0;border-top:2px dashed currentColor;color:inherit;opacity:.8}
.is-home .fare-times .fare-path>svg{width:25px;height:25px;flex:0 0 25px;color:inherit;stroke-width:1.9;overflow:visible}
.is-home .compact-trip strong>span{color:#111;opacity:1;padding-inline:3px}
html[data-sky-mode=night] .is-home .fare-times .fare-path{color:#d4e6ff}
html[data-sky-mode=night] .is-home .compact-trip strong>span{color:#f0f5ff}

/* White branding belongs on the homepage sky, not the article headers. */
.is-home .site-header .brand{color:#fff}
.is-home .site-header .brand>img{filter:brightness(0) invert(1)}

/* Store marks keep their full silhouette, even in compact mobile badges. */
.store-link>svg{display:block;flex-shrink:0;overflow:visible}

/* Match the airline tab's dimensions to its more prominent caption. */
.is-home .sky-hero .airlines-section{--airline-tab-width:385px}
.is-home .airline-sticker{height:54px;font-size:16px;font-weight:500;padding-inline:22px;gap:11px}
.is-home .airline-sticker svg{width:22px;height:22px;flex:none;color:inherit}
.is-home .airline-sticker b{font-weight:750}
@media(max-width:700px){
 .is-home .fare-times .fare-path{padding-inline:10px;gap:6px}
 .is-home .fare-times .fare-path>svg{width:23px;height:23px;flex-basis:23px}
 .is-home .sky-hero .airlines-section{--airline-tab-width:min(330px,calc(100vw - 44px))}
 .is-home .airline-sticker{height:47px;font-size:13px;padding-inline:12px;gap:8px}
 .is-home .airline-sticker svg{width:20px;height:20px}
}
