/* First-visit airport composition. Artwork is a clean image layer; every
   control and all copy remain accessible HTML connected to the real planner. */
body.onboarding .board {position:relative;isolation:isolate;overflow:hidden;background:#080f1e url('/brand/approved/airport-crew-clean-v2.webp') center top / 100% auto no-repeat!important;color:#fff!important;}
body.onboarding .board::before,body.onboarding .board::after {display:none!important;}
body.onboarding .board > .wrap:not(.topnav) {display:none!important;}
body:not(.onboarding) #airport-landing {display:none!important;}
body.onboarding .board > .topnav {position:relative;z-index:4;min-height:80px;max-width:none;padding:12px 4.25%;background:linear-gradient(180deg,rgba(5,12,26,.48),transparent)!important;border:0!important;}
body.onboarding .board > .topnav .home-brand,body.onboarding .board > .topnav .navlink {color:#f8faff!important;}
body.onboarding .board .topnav .home-brand svg.logo {display:none!important;}
body.onboarding .board .topnav .home-brand::before {content:"";display:block;width:36px;height:40px;flex:none;background:radial-gradient(ellipse 11px 9px at 50% 71%,#54d2ec 95%,transparent),radial-gradient(ellipse 5px 7px at 18% 42%,#54d2ec 95%,transparent),radial-gradient(ellipse 5px 7px at 37% 24%,#54d2ec 95%,transparent),radial-gradient(ellipse 5px 7px at 62% 24%,#54d2ec 95%,transparent),radial-gradient(ellipse 5px 7px at 82% 42%,#54d2ec 95%,transparent);}
body.onboarding .board .home-brand .wm,body.onboarding .board .home-brand .wm .paw {font:800 28px Inter,system-ui,sans-serif!important;letter-spacing:-.045em!important;color:#fff!important;}
body.onboarding .board .nav-start {background:#586aff!important;color:#fff!important;border-radius:999px!important;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) {color:#f8f9ff;font-family:Inter,system-ui,sans-serif;isolation:isolate;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) * {box-sizing:border-box;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-stage {height:clamp(640px,45.6vw,760px);position:relative;isolation:isolate;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-scene {position:absolute;z-index:-2;top:-80px;left:0;width:100%;height:auto;max-width:none;display:block;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-stage::before {content:"";position:absolute;z-index:-1;inset:-80px 0 0;pointer-events:none;background:linear-gradient(90deg,rgba(4,11,22,.35),transparent 56%);}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-copy {position:absolute;left:4.25%;top:44px;z-index:2;width:44%;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-eyebrow {font-size:13px;font-weight:500;letter-spacing:.13em;color:#b6c2fc!important;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) h1 {font:800 clamp(42px,4.1vw,66px)/1.02 Inter,system-ui,sans-serif;letter-spacing:-.045em;max-width:590px;margin:14px 0 14px;color:#fff!important;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) h1 em {font-style:normal;color:#8292ff!important;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-lede {font-size:clamp(17px,1.45vw,22px);line-height:1.4;max-width:520px;margin:0 0 20px;color:#f0eff5!important;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-promises {display:flex;flex-wrap:wrap;gap:10px 18px;font-size:12px;color:#f4f5ff!important;width:110%;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-promises span {display:inline-flex;align-items:center;gap:7px;white-space:nowrap;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-promises span::before {content:"✓";display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;border:2px solid #7c92ff;color:#a8b5ff;font-size:11px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-planner {position:absolute;left:4.25%;top:336px;z-index:3;width:44%;padding:19px 22px 17px;border:1px solid #354b68;border-radius:21px;background:rgba(5,15,25,.96);box-shadow:0 16px 40px #0004;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-tabs {display:flex;gap:10px;border-bottom:1px solid #28374e;padding-bottom:9px;margin-bottom:23px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-tabs label {cursor:pointer;font-size:15px;color:#f7f8ff;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-tabs input {position:absolute;opacity:0;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-tabs label span {display:block;padding:10px 20px;border-radius:13px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-tabs label:has(input:checked) span {background:#3445e7;color:#fff;box-shadow:inset 0 0 0 1px #6977ff;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-tabs label:has(input:focus-visible) span {outline:2px solid white;outline-offset:3px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-form-fields {display:grid;grid-template-columns:.85fr 1fr 1fr;gap:14px;margin-bottom:16px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-form-fields label {display:flex;flex-direction:column;gap:8px;font-size:13px;color:#edf0f8!important;min-width:0;}
body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-form-fields select {width:100%;height:51px;min-width:0;padding:0 12px;border:1px solid #364e70!important;border-radius:12px;background:#162233!important;color:#f8faff!important;-webkit-text-fill-color:#f8faff!important;font-size:14px;color-scheme:dark;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-primary {width:100%;min-height:54px;border:1px solid #7b8bff;border-radius:999px;background:#5568fa!important;color:#fff!important;font:500 15px Inter,system-ui,sans-serif;cursor:pointer;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-primary:hover {filter:brightness(1.1);}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-small {font-size:11px;line-height:1.5;text-align:center;color:#e1e6ef!important;margin:12px 0 0;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat {position:absolute;z-index:4;right:1%;top:395px;width:310px;max-width:26%;border-radius:27px;background:#fffcfa;color:#152037;padding:16px;box-shadow:0 18px 45px #0004;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-title {display:flex;align-items:center;gap:9px;font-size:16px;font-weight:750;color:#142038!important;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-title small {font-size:11px;font-weight:600;color:#4e60e6;background:#e8ebff;padding:2px 8px;border-radius:7px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat p {font-size:11px;color:#38445b!important;margin:5px 0 13px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-avatars {display:flex;gap:10px;margin-bottom:10px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-avatar-approved {display:block;flex:0 0 55px;width:55px;height:55px;border:3px solid #7b8bff;border-radius:50%;background-image:url('/brand/approved/airport-crew-clean-v2.webp');background-repeat:no-repeat;background-size:440px auto;background-color:#16243b;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-avatar-dino {background-position:-196px -28px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-avatar-toula {background-position:-326px -67px;border-color:#efa2cd;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-avatar-pinot {background-position:-268px -95px;border-color:#70b7ce;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-greeting {font-size:13px;line-height:1.4;color:#172238!important;background:#fff;padding:12px 15px;border-radius:20px;margin-bottom:13px;box-shadow:0 0 20px #d5d5e522;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-form {display:flex;gap:5px;min-height:46px;background:#fff;border-radius:22px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-form input {flex:1;min-width:0;border:0;border-radius:22px;padding:10px 12px;font-size:12px;background:#fff!important;color:#142038!important;-webkit-text-fill-color:#142038!important;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-form button {width:47px;flex:none;border:0;border-radius:18px;background:#586aff!important;color:#fff!important;font-size:20px;cursor:pointer;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) :is(select,input,button):focus-visible {outline:3px solid #a8b5ff;outline-offset:3px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-features {position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:15px;padding:26px 4.1% 30px;background:#07121d;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-features::before {content:"";position:absolute;z-index:-1;left:-4%;width:108%;top:-35px;height:65px;background:#07121d;border-radius:50% 60% 0 0 / 70% 100% 0 0;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature {padding:18px 22px 24px;min-height:190px;border:1px solid #263c55;border-radius:17px;background:linear-gradient(135deg,#0d1927,#0b1520);}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature-icon {display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#24324e;color:#b2baff;font-size:29px;margin-bottom:15px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature strong {font-size:16px;line-height:1.35;color:#fff!important;display:block;margin-bottom:7px;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature p {font-size:14px;line-height:1.5;margin:0;color:#afbbde!important;}
/* Approved full-chat portrait crops share the same clean artwork as the hero. */
:is(.botrow,.crew-faces) .crew-avatar-photo:is(.approved-avatar-dino,.approved-avatar-toula,.approved-avatar-pinot) {display:block!important;width:32px!important;height:32px!important;border-radius:50%;background-image:url('/brand/approved/airport-crew-clean-v2.webp')!important;background-size:260px auto!important;background-repeat:no-repeat!important;background-color:#1b2b43!important;object-fit:contain!important;}
:is(.botrow,.crew-faces) .approved-avatar-dino {background-position:-116px -17px!important;}
:is(.botrow,.crew-faces) .approved-avatar-toula {background-position:-194px -40px!important;}
:is(.botrow,.crew-faces) .approved-avatar-pinot {background-position:-160px -57px!important;}
@media(min-width:1700px) {:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-copy{top:60px;}:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-planner{top:355px;}:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat{top:420px;right:3%;width:330px;}}
@media(min-width:761px) and (max-width:1200px) {:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-stage{height:680px;}:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-scene{width:auto;height:790px;left:50%;transform:translateX(-50%);}:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-copy{width:49%;top:32px;}:is(#airport-landing,#crew-plan,.plan-workspace-dialog) h1{font-size:46px;}:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-planner{width:51%;top:340px;}:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat{width:270px;max-width:28%;top:400px;}:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature{padding:15px;}:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature strong{font-size:14px;}}
@media(max-width:760px) {
 body.onboarding .board{background:#080f1e!important;}
 body.onboarding .board > .topnav {min-height:66px;padding:10px 18px;background:#091321!important;}
 body.onboarding .board .home-brand .wm,body.onboarding .board .home-brand .wm .paw {font-size:22px!important;}
 body.onboarding .board .topnav .home-brand::before {width:27px;height:32px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-stage {height:auto;display:flex;flex-direction:column;gap:16px;padding:24px 18px 30px;overflow:hidden;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-stage::before {display:none;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-copy,:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-planner,:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat {position:relative;top:auto;left:auto;right:auto;max-width:none;width:100%;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-copy {order:0;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-eyebrow {font-size:10px;letter-spacing:.1em;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) h1 {font-size:clamp(35px,9.5vw,55px);line-height:1.06;margin:12px 0;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-lede {font-size:16px;margin-bottom:16px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-promises {width:100%;gap:9px 14px;font-size:11px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-scene {order:1;position:relative;top:auto;left:auto;transform:none;z-index:0;width:calc(100% + 36px);max-width:none;height:330px;object-fit:cover;object-position:73% 30%;margin:0 -18px -45px;mask-image:linear-gradient(transparent,#000 8%,#000 86%,transparent);}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-planner {order:2;padding:16px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-tabs {margin-bottom:18px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-tabs label {font-size:14px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-tabs label span {padding:9px 14px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-form-fields {grid-template-columns:1fr 1fr;gap:12px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-form-fields label:first-child {grid-column:1/-1;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat {order:3;max-width:440px;align-self:center;border-radius:23px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-features {grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:18px 16px 24px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-features::before {display:none;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature {padding:15px;min-height:190px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature strong {font-size:14px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature p {font-size:12px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature-icon {width:44px;height:44px;font-size:24px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature:last-child {grid-column:1/-1;min-height:150px;}
}
@media(prefers-reduced-motion:reduce) {:is(#airport-landing,#crew-plan,.plan-workspace-dialog) *{scroll-behavior:auto!important;transition:none!important;}}
@media print {#airport-landing{display:none!important;}}
/* These selectors must beat the pre-existing document-wide theme rules. */
body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) h1 {font:800 clamp(42px,4.1vw,66px)/1.02 Inter,system-ui,sans-serif!important;letter-spacing:-.045em!important;}
body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-lede {font-size:clamp(17px,1.45vw,22px)!important;line-height:1.4!important;}
body.onboarding .board .topnav .nav-start {display:inline-flex!important;align-items:center;justify-content:center;padding:12px 22px!important;min-height:45px;order:3;}
body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature strong {font-size:16px!important;}
body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-title {font-size:16px!important;}
body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-greeting {font-size:13px!important;}
body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-form input {border:0!important;box-shadow:none!important;border-radius:22px!important;}
@media(max-width:760px) {
 body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) h1 {font-size:clamp(35px,9.5vw,55px)!important;line-height:1.06!important;}
 body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-lede {font-size:16px!important;}
 body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-feature strong {font-size:14px!important;}
 body.onboarding .board .topnav .nav-start {padding:8px 12px!important;min-height:37px;font-size:12px!important;order:0;}
}
/* Let translated copy set the form position; fixed offsets clipped the longer
   Portuguese heading and promises under the planner card. */
@media(min-width:761px) {
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-stage {display:flex;flex-direction:column;align-items:flex-start;gap:20px;padding:44px 4.25% 48px;height:auto;min-height:700px;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-copy,:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-planner {position:relative;top:auto;left:auto;width:48.08%;}
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat {top:auto;bottom:24px;}
}
/* Keep the clean poster aligned on desktop and phone while the video is prepared. */
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-art {position:absolute;z-index:-2;top:-80px;left:0;width:100%;aspect-ratio:1536/1024;pointer-events:none;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-art .airport-scene {position:relative;top:auto;left:auto;width:100%;height:auto;transform:none;margin:0;mask-image:none;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-status:empty {display:none;}
:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-chat-status {font-size:12px;color:#394ba1!important;}
@media(min-width:761px) and (max-width:1200px){:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-art{width:1185px;left:50%;transform:translateX(-50%);}}
@media(max-width:760px){
 :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-art {position:relative;top:auto;left:auto;z-index:0;order:1;width:calc(100% + 36px);height:330px;aspect-ratio:auto;overflow:hidden;margin:0 -18px -45px;mask-image:linear-gradient(transparent,#000 8%,#000 86%,transparent);}
}
@media(max-width:760px){:is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-art .airport-scene{position:absolute;width:495px;height:330px;max-width:none;left:calc(73% - 361.35px);top:0;object-fit:fill;}}
/* Keep the country placeholder readable in narrow, paired fields. */
body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-form-fields select{padding-inline:9px 22px;font-size:14px;text-overflow:ellipsis}
@media(max-width:400px){body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-form-fields select{font-size:13px;padding-inline:8px 18px}}
@media(max-width:480px){body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-form-fields{grid-template-columns:1fr!important}body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-form-fields>label{grid-column:1 / -1!important}body.onboarding :is(#airport-landing,#crew-plan,.plan-workspace-dialog) .airport-form-fields select{padding:0 10px!important;font-size:14px!important}}
