@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
.pax-lounge{color-scheme:dark;--pax-ink:#eaf6ff;--pax-muted:#b3cbdc;--pax-line:#a4d6f12c}*{box-sizing:border-box}.pax-lounge{margin:0;background:radial-gradient(ellipse at 80% 20%,#18587b 0,transparent 48%),#071e32;color:var(--pax-ink);font-family:'DM Sans',sans-serif}.pax-lounge a{color:inherit;text-decoration:none}.pax-header,.pax-lounge footer{max-width:1320px;margin:auto;padding:30px 5%;display:flex;justify-content:space-between;align-items:center;gap:20px}.pax-brand{letter-spacing:.2em;font-size:25px;font-weight:600}.pax-brand span{display:block;font-size:9px;letter-spacing:.24em;margin-top:8px}.pax-header>a:last-child{font-size:13px;color:var(--pax-muted)}.pax-lounge main{max-width:1320px;margin:auto;padding:0 5%}.pax-hero{min-height:660px;display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:9%;padding:70px 0 90px}.pax-kicker{font-size:11px!important;letter-spacing:.2em;font-weight:600;color:#a3d9f3}.pax-hero h1{font-size:clamp(44px,5.2vw,72px);line-height:1.06;letter-spacing:-.055em;font-weight:400;margin:24px 0}.pax-hero p{font-size:17px;line-height:1.85;color:var(--pax-muted);max-width:490px}.pax-button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;background:#eaf8ff;color:#08334c!important;border:0;border-radius:40px;padding:18px 26px;font:600 15px 'DM Sans',sans-serif;cursor:pointer}.pax-button:disabled{opacity:.65;cursor:wait}.pax-hero .pax-button{margin-top:16px}.pax-hero small{display:block;color:#90adc1;margin-top:17px;font-size:12px}.pax-window{width:min(100%,335px);height:460px;margin:auto;position:relative;border-radius:47% 47% 43% 43% / 36% 36% 32% 32%;padding:15px;background:linear-gradient(125deg,#b5c6d1,#e6edf0 30%,#778f9e 55%,#344c5c);box-shadow:0 28px 65px #0007,inset 2px 2px 3px #f7fbff88,inset -5px -5px 7px #041b3299}.pax-sky{height:100%;border-radius:inherit;overflow:hidden;position:relative;background:linear-gradient(#6eb5e2,#bde3f3 48%,#edf6f9 70%,#bad2dd);box-shadow:inset 0 0 13px 7px #193e6977}.pax-clouds{position:absolute;inset:25% -50% -15%;background:radial-gradient(ellipse at 20% 55%,#fff 0 10%,transparent 30%),radial-gradient(ellipse at 50% 40%,#fff 0 12%,transparent 31%),radial-gradient(ellipse at 70% 75%,#fff 0 24%,transparent 44%),radial-gradient(ellipse at 15% 85%,#fff 0 15%,transparent 39%);filter:blur(12px);animation:pax-cloud-drift 35s linear infinite alternate}.pax-wing{position:absolute;left:12%;top:55%;width:140%;height:21%;background:linear-gradient(174deg,#f5f7f8 0 28%,#a1b4c0 29% 33%,#dce4e9 34% 64%,#718c9f 65%);clip-path:polygon(0 85%,95% 0,100% 17%,50% 100%);transform:rotate(-12deg)}.pax-window>span{position:absolute;bottom:-38px;width:100%;left:0;text-align:center;font-size:9px;letter-spacing:.18em;color:#95b8cf}.pax-departures{padding:32px 0 70px;border-top:1px solid var(--pax-line);scroll-margin-top:30px}.pax-section-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.pax-section-heading h2{font-size:36px;font-weight:400;letter-spacing:-.04em;margin:12px 0 25px}.pax-text-button{background:none;border:0;color:var(--pax-muted);font:inherit;cursor:pointer}#pax-status,.pax-disclosure{color:var(--pax-muted);line-height:1.7}.pax-flight{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--pax-line);padding:27px 0;gap:20px}.pax-flight small{color:#9ac5dd;font-size:12px;letter-spacing:.09em}.pax-flight h3{font-size:28px;margin:9px 0;font-weight:500}.pax-flight p{color:var(--pax-muted);font-size:13px;margin:0}.pax-disclosure{font-size:12px;max-width:720px;margin-top:28px}.pax-lounge footer{border-top:1px solid var(--pax-line);font-size:12px;color:var(--pax-muted)}#pax-ticket{background:#edf5f7;color:#12364c;border:0;padding:40px;max-width:560px;width:calc(100% - 32px);border-radius:18px;box-shadow:0 35px 100px #0008}#pax-ticket[open]{animation:pax-ticket-arrive .5s cubic-bezier(.2,.7,.2,1)}#pax-ticket::backdrop{background:#031622bb;backdrop-filter:blur(10px)}#pax-ticket .pax-kicker{color:#477a94}#pax-ticket h2{font-size:30px;font-weight:400;letter-spacing:-.04em}#pax-close{position:absolute;right:12px;top:10px;background:none;border:0;color:#12364c;font-size:30px;cursor:pointer}.pax-ticket-route{display:flex;justify-content:space-between;align-items:center;font-size:38px;padding:28px 0;border-bottom:1px dashed #52798b66}.pax-ticket-route span{font-size:24px;color:#6a9bad}.pax-ticket-meta{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:16px 0}.pax-ticket-meta dt{font-size:10px;color:#608194;letter-spacing:.1em}.pax-ticket-meta dd{font-size:20px;margin:6px 0}.pax-ticket-meta>div:nth-child(2) dd{font-size:30px;color:#16718c}#pax-enter{background:#113d57;color:white!important;width:100%}#pax-ticket>small{display:block;font-size:10px;text-align:center;color:#6b8390;margin-top:16px}.pax-login-entry{display:block;margin-top:30px;padding:25px;border-radius:20px;background:linear-gradient(120deg,#12415e,#1b7591);color:#eaf8ff!important;text-decoration:none}.pax-login-entry strong{font-size:24px;display:block}.pax-login-entry span{display:block;font-size:13px;line-height:1.6;margin-top:8px}.pax-login-entry small{display:block;margin-top:14px;color:#bceafa}@keyframes pax-cloud-drift{to{transform:translateX(18%)}}@keyframes pax-ticket-arrive{from{opacity:0;transform:translateY(35px) rotate(-2deg)}to{opacity:1;transform:none}}@media(max-width:700px){.pax-hero{grid-template-columns:1fr;gap:65px;padding:40px 0 80px}.pax-window{height:350px;width:245px}.pax-hero h1{font-size:48px}.pax-section-heading{align-items:flex-start}.pax-flight{align-items:flex-start;flex-direction:column}.pax-flight .pax-button{width:100%}.pax-header,.pax-lounge footer{padding:24px 5%}.pax-brand{font-size:21px}#pax-ticket{padding:28px}.pax-ticket-route{font-size:31px}}@media(prefers-reduced-motion:reduce){.pax-clouds,#pax-ticket[open]{animation:none;transform:none}}

.pax-login-entry{position:relative;padding-right:145px;min-height:185px}.pax-login-window{position:absolute;right:25px;top:25px;width:92px;height:130px;border-radius:45%;padding:5px;background:linear-gradient(130deg,#e4eff5,#668fa4);box-shadow:0 10px 22px #00172e55}.pax-login-window .pax-sky{border-radius:45%}.pax-login-window .pax-clouds{margin:0}@media(max-width:370px){.pax-login-entry{padding:22px}.pax-login-window{display:none}}

/* Electronic pass: flight information above a perforated scan section. */
#pax-ticket{padding:0;width:min(430px,calc(100% - 28px));max-height:calc(100dvh - 28px);overflow:auto;background:#f5f9fa;border-radius:23px;color:#16384c;color-scheme:light;scrollbar-width:thin}#pax-ticket .pax-pass-header{position:relative;background:linear-gradient(115deg,#092d49,#185d76);padding:25px 26px 22px;color:white}#pax-ticket .pax-pass-brand{display:block;font-size:23px;font-weight:600;letter-spacing:.22em}.pax-pass-subbrand{display:block;font-size:8px;letter-spacing:.23em;color:#b4dce8;margin-top:4px}#pax-ticket-heading{font-size:17px!important;letter-spacing:0!important;margin:25px 0 0!important;font-weight:500!important}.pax-pass-status{position:absolute;right:26px;bottom:25px;font-size:8px;letter-spacing:.1em;color:#b9e5ec}#pax-ticket #pax-close{color:#dbf2fa;background:#ffffff0b;right:13px;top:13px;width:34px;height:34px;border-radius:50%;font-size:24px;line-height:1}.pax-pass-body{padding:20px 26px 19px}.pax-pass-live{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;color:#617f8e}.pax-pass-live span:first-child{letter-spacing:.1em;font-size:8px;background:#e2eeed;padding:5px 7px;border-radius:4px;color:#286958}.pax-pass-live span:first-child:before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:#358b71;margin-right:5px}#pax-ticket .pax-ticket-route{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:23px 0 22px;border:0}.pax-pass-airport{min-width:0}.pax-pass-airport:last-of-type{text-align:right}.pax-pass-airport strong{font-size:43px;letter-spacing:-.06em;line-height:1;font-weight:600}.pax-pass-airport>span{display:block!important;font-size:11px!important;color:#698697!important;margin-top:7px;line-height:1.4}.pax-pass-plane{position:absolute;top:31px;left:50%;transform:translateX(-50%);font-size:19px!important;color:#6d9aad!important}.pax-pass-passenger{padding:0 0 17px;border-bottom:1px solid #dce6ea}.pax-pass-passenger small{display:block;font-size:8px;letter-spacing:.13em;color:#6a8898}.pax-pass-passenger strong{display:block;font-size:18px;margin-top:6px;font-weight:500}#pax-ticket .pax-ticket-meta{grid-template-columns:1.3fr 1fr;padding:19px 0 12px;margin:0;gap:18px 25px}#pax-ticket .pax-ticket-meta dt{font-size:8px;letter-spacing:.13em;color:#6a8898}#pax-ticket .pax-ticket-meta dd{font-size:22px;margin:5px 0 0;color:#173d51;font-weight:500;line-height:1.15}#pax-ticket .pax-ticket-meta .pax-pass-seat dd{font-size:34px;color:#166d87;line-height:.9}.pax-pass-details{display:flex;justify-content:space-between;gap:15px;font-size:10px;color:#698697;margin-top:6px}.pax-pass-stub{position:relative;text-align:center;border-top:1px dashed #b7cdd5;padding:20px 25px 12px;background:#fff}.pax-pass-stub:before,.pax-pass-stub:after{content:'';position:absolute;width:22px;height:22px;border-radius:50%;background:#102c3b;top:-11px}.pax-pass-stub:before{left:-11px}.pax-pass-stub:after{right:-11px}.pax-pass-stub>small{font-size:8px;letter-spacing:.15em;color:#698697}.pax-pass-code{width:154px;margin:7px auto 0;background:white;line-height:0}.pax-pass-code svg{width:100%;height:auto;display:block;shape-rendering:crispEdges}.pax-pass-stub>strong{display:block;font-size:15px;letter-spacing:.25em;font-weight:500}.pax-pass-stub>p{font-size:10px;color:#708b98;margin:7px 0 0}.pax-pass-actions{padding:12px 26px 20px;background:white;text-align:center}.pax-pass-actions #pax-enter{padding:15px 20px;border-radius:11px;font-size:14px}.pax-pass-actions #pax-save{display:block;margin:12px auto;background:none;border:0;color:#366e86;font:500 12px 'DM Sans',sans-serif;cursor:pointer;padding:5px}.pax-pass-actions small{display:block;font-size:8px;letter-spacing:.04em;color:#7e939e;margin-top:12px}@media(max-width:450px){#pax-ticket .pax-pass-header{padding:22px}.pax-pass-body{padding:17px 22px}.pax-pass-airport strong{font-size:39px}.pax-pass-status{right:22px}.pax-pass-code{width:138px}.pax-pass-stub{padding-top:17px}.pax-pass-actions{padding:10px 22px 18px}}@media(prefers-reduced-motion:no-preference){#pax-ticket[open] .pax-pass-code{animation:pax-pass-code .65s ease both}@keyframes pax-pass-code{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}}
