/* Airport departures and the FlyWell passport: progressive travel interactions. */
body.fw-refined .announcement-bar-section{opacity:1!important;transform:none!important}
body.fw-refined .announcement-bar.fw-departures{background:#142e40!important;color:#e9f6ed!important}
.fw-departures .page-width{max-width:none;padding:0 20px!important}
body.fw-refined .fw-departures .announcement-bar__message{display:flex;align-items:center;justify-content:center;gap:24px;padding:9px 0!important;min-height:54px;letter-spacing:.02em!important;font-size:12px!important;color:inherit!important}
.fw-departure-shipping{font-size:11px;letter-spacing:.09em;white-space:nowrap;font-weight:600}
.fw-departure-offer{display:flex;align-items:center;gap:11px;font-size:12px;white-space:nowrap;border-left:1px solid #cee9e640;padding-left:24px;font-weight:500}
.fw-flap-board{display:flex;gap:3px;padding:0;border:0;background:none;cursor:pointer;font:inherit;perspective:500px}
.fw-flap-tile{position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;width:23px;height:32px;border-radius:3px;background:linear-gradient(#29485b 49%,#203c4e 50%);color:#f6f6de;box-shadow:0 1px 0 #071e2a,0 0 0 1px #375466;isolation:isolate;font:700 23px/32px 'Courier New',monospace;letter-spacing:0;text-align:center}
.fw-flap-tile:after{content:"";position:absolute;top:49%;left:0;width:100%;height:1px;background:#0b2238c9;box-shadow:0 1px 0 #ffffff09;z-index:4}
.fw-flap-tile:before{content:"";position:absolute;top:46%;left:0;width:2px;height:3px;background:#adc3c7;box-shadow:21px 0 #adc3c7;z-index:5}
.fw-flap-tile.is-flipping .fw-flap-fold{visibility:visible;animation:fw-flap-drop .13s ease-in forwards}
.fw-flap-fold{visibility:hidden;position:absolute;inset:0;background:linear-gradient(#29485b 49%,transparent 50%);color:inherit;clip-path:inset(0 0 50% 0);transform-origin:center center;backface-visibility:hidden;z-index:3}
.fw-flap-pause{display:flex;align-items:center;justify-content:center;width:28px;height:30px;padding:0;background:transparent;border:1px solid #cde5e333;border-radius:50%;color:#cde5e3;cursor:pointer;font-size:12px;line-height:1}
.fw-flap-board:focus-visible,.fw-flap-pause:focus-visible{outline-color:#e1f3d4!important}
@keyframes fw-flap-drop{0%{transform:rotateX(0);filter:brightness(1)}100%{transform:rotateX(-90deg);filter:brightness(.5)}}
.fw-passport-launcher{position:fixed;z-index:90;bottom:22px;left:22px;display:flex;align-items:center;gap:9px;border:1px solid #122e42;border-radius:999px;padding:7px 17px 7px 7px;color:#153346;background:#dceee2;box-shadow:0 5px 22px #1a405c23;cursor:pointer;transition:transform .2s,box-shadow .2s;font-family:inherit}
.fw-passport-launcher:hover{transform:rotate(-3deg) translateY(-3px);box-shadow:0 8px 26px #1a405c30}
.fw-passport-launcher canvas{width:40px;height:40px;border-radius:50%}.fw-passport-launcher span{display:grid;gap:1px;font:700 12px/1.3 'Courier New',monospace;letter-spacing:.08em;text-align:left}.fw-passport-launcher small{font-size:10px;letter-spacing:.02em;font-weight:400}
.fw-passport-launcher[hidden]{display:none}
.fw-passport-dialog{padding:0;border:0;background:transparent;color:#173b4a;width:min(820px,calc(100vw - 48px));max-width:820px;max-height:calc(100dvh - 48px);overflow:auto;border-radius:18px;box-shadow:0 25px 100px #071e3260;overscroll-behavior:contain;font-family:var(--font-body-family,Montserrat,sans-serif)}
.fw-passport-dialog::backdrop{background:#17344480;backdrop-filter:blur(5px)}
.fw-passport-dialog[open]{animation:fw-passport-arrive .38s cubic-bezier(.2,.8,.2,1)}
.fw-passport-book{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:560px;background:#f5f4e9;isolation:isolate;overflow:hidden;border-radius:18px}
.fw-passport-close{position:absolute;right:14px;top:14px;z-index:10;width:36px;height:36px;border-radius:50%;border:1px solid #16374642;background:#fff8;color:#163746;cursor:pointer;display:grid;place-items:center;font:400 25px/1 sans-serif}
.fw-passport-close:hover{background:white}.fw-passport-globe-page{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:space-between;padding:26px 26px 23px;background:#c4e6f5;border-right:1px solid #708c9036;box-shadow:inset -9px 0 13px -12px #294e64;overflow:hidden}
.fw-passport-globe-page:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:repeating-linear-gradient(0deg,transparent 0 31px,#47728110 31px 32px),repeating-linear-gradient(90deg,transparent 0 31px,#47728110 31px 32px)}
.fw-passport-eyebrow{position:relative;display:flex;justify-content:space-between;width:100%;font:700 11px/1.5 'Courier New',monospace;letter-spacing:.12em;z-index:1;color:#244654;margin:0}
.fw-globe-stage{position:relative;width:100%;max-width:335px;aspect-ratio:1;display:grid;place-items:center;margin:22px 0 10px}
.fw-globe-stage:before{content:"";position:absolute;inset:0;border:1px dashed #37617660;border-radius:50%;transform:rotate(-22deg) scale(1.04,.43);pointer-events:none;z-index:2}
.fw-globe-stage:after{content:"";position:absolute;width:65%;height:10%;bottom:-2%;border-radius:50%;background:#2153712e;filter:blur(12px);pointer-events:none}
.fw-spin-globe{position:relative;display:block;width:100%;padding:0;aspect-ratio:1;background:none;border:0;border-radius:50%;cursor:grab;touch-action:none;z-index:3;outline-offset:7px!important}
.fw-spin-globe:active{cursor:grabbing}.fw-spin-globe:disabled{cursor:wait}.fw-spin-globe canvas{display:block;width:100%;height:100%;pointer-events:none}
.fw-globe-callout{position:absolute;top:46%;left:50%;transform:translate(-50%,-50%) rotate(-9deg);padding:12px 20px;background:#f4f5d7;border:1.5px solid #244653;border-radius:999px;box-shadow:3px 4px 0 #2c4c55;color:#203e4b;white-space:nowrap;font:700 18px/1 'Courier New',monospace;letter-spacing:.04em;pointer-events:none;transition:opacity .18s,transform .3s}
.fw-is-spinning .fw-globe-callout,.fw-has-landed .fw-globe-callout{opacity:0;transform:translate(-50%,-60%) rotate(-9deg) scale(.8)}
.fw-globe-pin{position:absolute;width:12px;height:12px;background:#174f68;border:3px solid #f5f5dc;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 5px #164b6340;opacity:0;pointer-events:none}.fw-has-landed .fw-globe-pin{opacity:1;animation:fw-pin-appear .5s ease-out}
.fw-globe-instruction{font:400 12px/1.5 'Courier New',monospace;letter-spacing:.02em;text-align:center;margin:10px 0 22px;position:relative;min-height:18px}.fw-globe-coordinate{font:400 10px/1.4 'Courier New',monospace;letter-spacing:.09em;text-align:center;border-top:1px solid #315d6d35;width:100%;padding-top:14px;position:relative}
.fw-passport-stamp-page{position:relative;padding:52px 35px 28px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background-image:radial-gradient(ellipse at center,#e7ebdb 0,transparent 66%),repeating-linear-gradient(31deg,transparent 0 9px,#54758005 9px 10px)}
.fw-passport-stamp-page:before{content:"";position:absolute;inset:16px;border:1px solid #58727528;border-radius:8px;pointer-events:none}.fw-passport-page-title{font:700 12px/1.5 'Courier New',monospace;letter-spacing:.2em;margin:0 0 26px;color:#5c7273}
.fw-passport-intro h2{font-size:38px;line-height:1.05;letter-spacing:-.055em;color:#173b4a;margin:0 0 20px;font-weight:600}.fw-passport-intro p{font-size:15px;line-height:1.65;margin:0;max-width:290px;color:#486368}.fw-passport-empty-stamp{height:100px;width:170px;margin:30px auto 0;border:2px dashed #728a7970;border-radius:50%;transform:rotate(-12deg);display:flex;align-items:center;justify-content:center;font:700 11px/1.5 'Courier New',monospace;letter-spacing:.1em;color:#789183}.fw-passport-empty-stamp span{display:block;width:90px}.fw-passport-intro[hidden],.fw-passport-result[hidden]{display:none}
.fw-passport-result{width:100%}.fw-passport-landed{font:400 12px/1.5 'Courier New',monospace;letter-spacing:.08em;margin:0 0 18px;color:#536c6e}.fw-passport-stamp{position:relative;transform:rotate(-9deg);margin:24px -6px 34px;border:3px solid #20576a;border-radius:7px;padding:17px 10px;color:#20576a;box-shadow:inset 0 0 0 3px #f0f1e6,inset 0 0 0 4px #20576a;mask-image:repeating-linear-gradient(173deg,#000 0 3px,#000c 3px 4px);font-family:'Courier New',monospace;text-transform:uppercase}.fw-passport-stamp:before,.fw-passport-stamp:after{content:"";position:absolute;width:7px;height:7px;border:1px solid currentColor;border-radius:50%;top:50%;transform:translateY(-50%)}.fw-passport-stamp:before{left:9px}.fw-passport-stamp:after{right:9px}.fw-passport-stamp-country{font:700 15px/1.3 'Courier New',monospace;letter-spacing:.2em;display:block}.fw-passport-code{display:block;width:100%;border:0;outline:0!important;background:transparent;box-shadow:none;margin:9px 0 8px;padding:0;text-align:center;color:inherit;font:900 34px/1.2 'Courier New',monospace;letter-spacing:-.065em;user-select:all;cursor:text}.fw-passport-stamp-bottom{display:block;border-top:1px solid currentColor;padding-top:8px;max-width:210px;margin:auto;font:700 12px/1.4 'Courier New',monospace;letter-spacing:.065em}.fw-passport-stamp.is-stamping{animation:fw-stamp-land .48s cubic-bezier(.2,.8,.3,1.15)}
.fw-passport-result p.fw-passport-saved{font-size:13px;line-height:1.5;margin:0 0 18px;color:#486368}.fw-passport-actions{display:grid;grid-template-columns:1fr;gap:10px}.fw-passport-actions a,.fw-passport-actions button{display:flex;align-items:center;justify-content:center;min-height:47px;padding:12px 16px;border:1px solid #173b4a;border-radius:999px;font:600 13px/1.3 var(--font-body-family,Montserrat,sans-serif);text-decoration:none;background:#173b4a;color:#f1f6e9;cursor:pointer}.fw-passport-actions button{background:transparent;color:#173b4a}.fw-passport-actions a:hover{background:#296076}.fw-passport-actions button:hover{background:#dcebdd}.fw-passport-copy-status{min-height:18px;margin:9px 0 0;font:400 11px/1.5 'Courier New',monospace;color:#476265}.fw-passport-replay{display:block;margin:13px auto 0;padding:8px;border:0;background:none;color:#476265;font:400 12px/1.4 'Courier New',monospace;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.fw-passport-page-number{position:relative;margin:28px 0 0;font:400 10px/1.5 'Courier New',monospace;letter-spacing:.07em;color:#81908c}.fw-passport-live{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden;white-space:nowrap}
@keyframes fw-passport-arrive{from{opacity:0;transform:translateY(16px) rotate(2deg) scale(.98)}to{opacity:1;transform:none}}
@keyframes fw-stamp-land{0%{opacity:0;transform:rotate(-16deg) scale(1.5)}60%{opacity:1;transform:rotate(-9deg) scale(.97)}100%{transform:rotate(-9deg) scale(1)}}
@keyframes fw-pin-appear{from{box-shadow:0 0 0 18px #164b6300}to{box-shadow:0 0 0 5px #164b6340}}
@media(max-width:749px){.fw-departures .page-width{padding:0 12px!important}body.fw-refined .fw-departures .announcement-bar__message{gap:7px;flex-wrap:wrap;padding:7px 0 8px!important;min-height:71px}.fw-departure-shipping{flex-basis:100%;font-size:9px;letter-spacing:.065em}.fw-departure-offer{border:0;padding:0;gap:8px;font-size:10px}.fw-flap-tile{width:19px;height:26px;font-size:19px;line-height:26px}.fw-flap-tile:before{box-shadow:17px 0 #adc3c7}.fw-flap-board{gap:2px}.fw-flap-pause{width:24px;height:24px;font-size:10px}.fw-passport-launcher{left:14px;bottom:max(14px,env(safe-area-inset-bottom));padding:5px 12px 5px 5px;gap:7px}.fw-passport-launcher canvas{width:34px;height:34px}.fw-passport-launcher span{font-size:11px}.fw-passport-launcher small{font-size:9px}.fw-passport-dialog{width:min(430px,calc(100vw - 24px));max-height:calc(100dvh - 24px);border-radius:16px}.fw-passport-book{grid-template-columns:1fr;min-height:0;overflow:visible;border-radius:16px}.fw-passport-globe-page{padding:20px 22px 14px;border-radius:16px 16px 0 0;border-right:0;border-bottom:1px dashed #315d6d60;box-shadow:none;overflow:hidden}.fw-passport-eyebrow{font-size:10px;padding-right:34px}.fw-globe-stage{max-width:230px;margin:10px 0 0}.fw-globe-callout{font-size:16px;padding:10px 17px}.fw-globe-instruction{font-size:11px;margin:7px 0 0}.fw-globe-coordinate{display:none}.fw-passport-stamp-page{padding:25px 26px 24px;border-radius:0 0 16px 16px}.fw-passport-stamp-page:before{inset:10px}.fw-passport-page-title{font-size:10px;letter-spacing:.16em;margin-bottom:14px}.fw-passport-intro h2{font-size:31px;max-width:280px;margin:0 auto 12px}.fw-passport-intro p{font-size:13px;line-height:1.55}.fw-passport-empty-stamp{display:none}.fw-passport-page-number{margin-top:17px;font-size:9px}.fw-passport-landed{font-size:10px;margin:0}.fw-passport-stamp{max-width:270px;margin:20px auto 22px;padding:11px 9px}.fw-passport-code{font-size:32px;margin:6px 0}.fw-passport-stamp-country{font-size:12px}.fw-passport-stamp-bottom{font-size:10px;padding-top:5px}.fw-passport-result p.fw-passport-saved{font-size:12px;margin-bottom:13px}.fw-passport-actions{grid-template-columns:1fr 1fr;gap:8px}.fw-passport-actions button,.fw-passport-actions a{min-height:44px;font-size:11px;padding:10px}.fw-passport-copy-status{margin-top:5px;font-size:10px}.fw-passport-replay{margin-top:3px;padding:6px;font-size:10px}.fw-has-landed .fw-globe-stage{max-width:175px}.fw-has-landed .fw-passport-globe-page{padding-top:17px;padding-bottom:11px}.fw-has-landed .fw-passport-page-number{display:none}}
@media(max-width:374px){.fw-passport-actions{grid-template-columns:1fr}.fw-globe-stage{max-width:205px}.fw-passport-stamp-page{padding-inline:23px}.fw-passport-intro h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.fw-passport-dialog[open],.fw-passport-stamp.is-stamping,.fw-has-landed .fw-globe-pin,.fw-flap-tile.is-flipping .fw-flap-fold{visibility:visible;animation:none!important}.fw-passport-launcher,.fw-globe-callout{transition:none!important}}

.fw-flap-pause[hidden]{display:none}
.fw-passport-dialog{overflow-x:hidden;overflow-y:auto}
@media(max-width:749px){.fw-passport-book{overflow:hidden}}
/* Small print-inspired details carry the travel motif into the existing page. */
.fw-home .newsletter__wrapper{border-top:6px solid transparent!important;border-image:repeating-linear-gradient(135deg,#20576a 0 12px,#f8faf3 12px 24px,#b6dccc 24px 36px,#f8faf3 36px 48px) 6!important}
.fw-home-content .fw-steps h3{font-family:'Courier New',monospace;font-weight:700;letter-spacing:-.04em}
.fw-home-content .fw-bonus-grid article{border-top-style:dashed}

.fw-passport-result p.fw-passport-terms{font:400 11px/1.45 var(--font-body-family,Montserrat,sans-serif);color:#486368;margin:0 0 12px;text-align:center}
