:root{--order-ink:#202b44;--order-muted:#7b8394;--order-teal:#7367f0;--order-teal-dark:#5e50df;--order-border:#e0e4ec;--order-bg:#f6f7fb;--bs-primary:#7367f0;--bs-primary-rgb:115,103,240}
body{background:var(--order-bg);color:var(--order-ink);font-family:Inter,"Segoe UI",Arial,sans-serif;min-height:100vh;min-height:100dvh;background-image:radial-gradient(ellipse at 3% 25%,#efebff 0,transparent 43%),radial-gradient(ellipse at 96% 90%,#eeeafa80 0,transparent 40%)}
.journey-header{max-width:1120px;margin:auto;padding:26px 32px;display:flex;align-items:center;justify-content:space-between}.journey-brand{display:flex;align-items:center;gap:9px;color:var(--order-ink);font-size:23px;font-weight:750;letter-spacing:-1px;text-decoration:none}.journey-brand:hover{color:var(--order-teal)}.journey-brand-mark{display:grid;place-items:center;background:var(--order-teal);color:#fff;width:33px;height:33px;border-radius:11px;box-shadow:0 5px 12px #7367f025}.journey-brand-mark .icon{width:20px;height:20px}.brand-period{color:var(--order-teal);margin-left:-7px}.header-caption{font-size:11px;color:#7f8798;display:flex;gap:8px;align-items:center}.header-caption>span{width:5px;height:5px;background:#a4adc2;border-radius:50%}
.journey-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:74px;max-width:1056px;margin:28px auto 36px;padding:0 24px;align-items:center}.journey-intro{padding:12px 0}.intro-eyebrow{font-size:9px;font-weight:700;letter-spacing:1.9px;display:flex;gap:9px;align-items:center;color:var(--order-teal);margin-bottom:20px}.intro-eyebrow>span{height:5px;width:5px;background:#e8b56a;border-radius:50%}.journey-intro h2{font-size:46px;line-height:1.13;letter-spacing:-2px;font-weight:700;margin:0 0 18px}.journey-intro h2 em{color:var(--order-teal);font-family:Georgia,"Times New Roman",serif;font-weight:400}.intro-description{font-size:14px;line-height:1.8;color:#7c8495;margin-bottom:0}.journey-art{position:relative;max-width:390px;margin:5px 0 20px}.journey-art svg{width:100%;height:auto;display:block}.art-caption{display:block;text-align:center;color:#959caf;font-size:9px;letter-spacing:.2px;margin-top:-8px}
.route-preview{border:1px solid #e1e6f0;background:#ffffffa8;border-radius:14px;padding:17px 19px;box-shadow:0 8px 22px #2d436304;max-width:392px}.preview-top{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:8px;letter-spacing:1px;font-weight:700;color:#8992a6}.preview-live{font-size:8px;letter-spacing:0;display:flex;gap:5px;align-items:center;font-weight:400;color:#929aad}.preview-live>span{width:4px;height:4px;background:#5cae8c;border-radius:50%}.preview-route{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 0}.preview-route>div:first-child,.preview-destination{display:flex;flex-direction:column;min-width:0;flex:1}.preview-route strong{font-size:25px;letter-spacing:1px;font-weight:650;line-height:1.3}.preview-route>div>span{font-size:10px;color:#8c95a6;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:130px}.preview-destination{text-align:right}.preview-route-line{display:flex;align-items:center;justify-content:center;gap:8px;width:85px;color:var(--order-teal);flex-shrink:0}.preview-route-line>span{height:1px;width:23px;background:#d8dff1}.preview-route-line .icon{width:18px;height:18px;transform:rotate(20deg)}.preview-bottom{border-top:1px dashed #e0e5ef;display:flex;justify-content:space-between;gap:10px;padding-top:12px}.preview-bottom>span{display:flex;gap:6px;align-items:center;font-size:9px;color:#8b94a5;min-width:0}.preview-bottom .icon{width:12px;height:12px;flex-shrink:0}.preview-bottom span span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.order-container{padding:0;max-width:none;margin:0;min-width:0}.itinerary-card{border-radius:19px;border:1px solid #e5e8f0!important;box-shadow:0 15px 50px #243d6a09,0 3px 10px #243d6a03;background:#fff}.itinerary-card .card-body{padding:28px 28px 22px}.form-eyebrow{display:flex;gap:8px;align-items:center;color:#9098ab;font-size:8px;font-weight:700;letter-spacing:1.5px;margin-bottom:17px}.form-eyebrow>span{display:grid;place-items:center;width:23px;height:23px;border-radius:7px;background:#f1edff;color:var(--order-teal);font-size:9px;letter-spacing:0}.form-eyebrow>.icon{width:19px;height:19px;margin-left:auto;color:#b4bfdc}.itinerary-card h1{font-size:25px;font-weight:700;letter-spacing:-.9px;margin:0 0 6px;line-height:1.3}.form-introduction{font-size:11px;color:#8a93a5;line-height:1.6;margin-bottom:22px}.trip-type{margin-bottom:21px!important}.trip-type>.d-flex{gap:5px!important;background:#f4f6fa;border:1px solid #eef0f5;border-radius:9px;padding:4px}.trip-type .form-check{position:relative;flex:1;padding:0;margin:0;min-height:0}.trip-type .form-check-input{position:absolute;opacity:0;width:1px;height:1px;margin:0!important}.trip-type .form-check-label{display:block;text-align:center;padding:8px 12px;border-radius:6px;font-size:12px;color:#8a93a4;font-weight:500;cursor:pointer;line-height:18px}.trip-type input:checked+label{background:#fff;color:var(--order-teal);box-shadow:0 1px 5px #23314c0b}.trip-type input:focus-visible+label{outline:2px solid var(--order-teal);outline-offset:2px}
.itinerary-card .row{--bs-gutter-x:0}.itinerary-card .mb-4{margin-bottom:16px!important}.itinerary-card .trip-type.mb-4{margin-bottom:20px!important}.form-label{font-size:11px;font-weight:600;line-height:18px;margin-bottom:7px;color:#5c667b}.form-control{height:48px;border:1px solid #e1e5ee;border-radius:8px;background:#fdfdfe;font-family:inherit;font-size:14px;color:#35425a;box-shadow:0 1px 2px #20355b02}.form-control::placeholder,.placeholder-text{color:#a1a9b9}.form-control:hover{border-color:#bdc8e4;background:#fff}.form-control:focus{border-color:#978df5;box-shadow:0 0 0 3px #7367f00a;background:#fff}.form-control.has-value{background:#fafbff;border-color:#ded7fb}.input-shell .form-control{padding-left:41px;padding-right:33px}.input-shell .field-icon{left:14px;top:15px;width:17px;height:17px;color:#8998b3}.clear-airport{top:7px;font-size:19px;color:#9aa4b8}.airport-field[data-airport=from]{padding-right:45px}.swap-airports{top:31px;left:auto;right:0;transform:rotate(90deg);width:34px;height:34px;background:#f1edff;color:var(--order-teal);border:1px solid #e8edfb;padding:8px}.swap-airports .icon{width:17px;height:17px}.swap-airports:hover{background:#e5ebfd;border-color:#cad5f8;color:#5e50df}.swap-airports:active{transform:rotate(270deg)}.date-trigger,.passenger-trigger{padding:0 14px;gap:11px}.date-trigger>.icon,.passenger-trigger>.icon{color:#8998b3;width:17px;height:17px}.date-trigger .trailing-icon,.passenger-trigger .trailing-icon{width:12px;height:12px;color:#9ba8c0}.date-text,#passenger-summary{font-size:14px}.form-text{font-size:10px;line-height:16px;color:#a2aabb;margin-top:6px}#passengers-column{margin-bottom:0!important}.continue-button,.passenger-done{--bs-btn-bg:#7367f0;--bs-btn-border-color:#7367f0;--bs-btn-color:#fff;--bs-btn-hover-bg:#6558e6;--bs-btn-hover-border-color:#6558e6;--bs-btn-hover-color:#fff;--bs-btn-active-bg:#594bd4;--bs-btn-active-border-color:#594bd4;--bs-btn-disabled-bg:#7367f0;--bs-btn-disabled-border-color:#7367f0;--bs-btn-focus-shadow-rgb:115,103,240;background-image:linear-gradient(110deg,#8579f5,#7367f0);border-radius:9px;color:#fff;box-shadow:0 6px 14px #7367f01c}.continue-button{width:100%;height:46px;margin:19px 0 0;display:flex;align-items:center;justify-content:center;gap:12px;font-size:13px;font-weight:600}.continue-button .icon{width:17px;height:17px}.continue-button:hover .icon{transform:translateX(4px)}.continue-button:active{transform:translateY(1px)}.journey-progress{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-top:15px;color:#a3abba;font-size:9px;line-height:16px}.journey-progress>div{display:flex;gap:4px}.journey-progress i{display:block;width:17px;height:3px;border-radius:4px;background:#e9edf5}.journey-progress i.is-complete{background:#a69bf4}.journey-progress.is-ready{color:#648377}.journey-progress.is-ready i.is-complete{background:#75a18f}.alert{font-size:12px;margin:14px 0 0;border-radius:8px}.invalid-feedback{font-size:11px}.journey-footer{max-width:1056px;margin:0 auto;padding:0 24px 25px;display:flex;justify-content:space-between;font-size:9px;color:#a4abba}
.airport-panel{border-color:#e3e8f2;box-shadow:0 12px 30px #293e6814}.airport-option:hover,.airport-option[aria-selected=true]{background:#f5f2ff}.airport-code{color:#667ba9;background:#f0f3fb;border-color:#e5eaf5}.modal-backdrop{background:#1c2945}.calendar-day:hover:not(:disabled),.calendar-nav:hover,.counter-button:hover{background:#f1edff}.calendar-day.is-between{background:#f1edff}.modal-header{padding:17px 21px}.modal-body{padding:16px 21px 21px}.modal-title.fs-5{font-size:18px!important}.passenger-row{padding:14px 0}.passenger-done{height:44px}.counter-button{border-color:#dae1f0}.calendar-month-title{font-size:14px}.calendar-footer{margin-top:16px;padding-top:13px}
@media(min-width:1600px){.journey-layout{margin-top:55px;margin-bottom:55px}}
@media(max-width:991.98px){.journey-layout{gap:34px;grid-template-columns:minmax(0,1fr) minmax(0,440px);margin-top:24px}.journey-intro h2{font-size:37px;letter-spacing:-1.5px}.intro-description{font-size:12px}.intro-eyebrow{font-size:8px;letter-spacing:1px}.journey-art{margin:20px -15px 18px}.route-preview{padding:14px}.preview-top{font-size:7px}.preview-live{display:none}.preview-route strong{font-size:22px}.preview-route-line{width:55px;gap:5px}.preview-route-line>span{width:12px}.preview-bottom{flex-wrap:wrap}.journey-header{padding:23px 24px}}
@media(max-width:767.98px){.journey-header{padding:20px 24px;max-width:540px}.journey-brand{font-size:21px}.journey-brand-mark{width:29px;height:29px;border-radius:9px}.header-caption{font-size:9px}.journey-layout{display:block;max-width:530px;padding:0 20px;margin:8px auto 26px}.journey-intro{padding:4px 5px 23px}.intro-eyebrow{font-size:8px;letter-spacing:1.3px;margin-bottom:12px}.journey-intro h2{font-size:34px;line-height:1.15;margin-bottom:10px;letter-spacing:-1.4px}.journey-intro h2 br{display:none}.intro-description{font-size:12px;line-height:1.6}.intro-description br{display:none}.journey-art,.route-preview{display:none}.order-container{padding:0}.itinerary-card .card-body{padding:25px 24px 21px}.itinerary-card h1{font-size:24px}.form-introduction{font-size:11px}.journey-footer{max-width:530px;padding:0 24px 20px}.journey-footer>span:last-child{font-size:8px}.form-control{font-size:16px}.date-text,#passenger-summary{font-size:14px}.airport-input::placeholder{font-size:13px}.swap-airports{top:31px;right:0}.form-label{font-size:11px}.trip-type .form-check-label{font-size:12px}.airport-modal .airport-panel{border:0;box-shadow:none}.airport-modal .airport-option{padding:14px 8px}.mobile-search-shell .form-control{font-size:16px}.calendar-modal .modal-header,.passenger-modal .modal-header{padding:18px 20px 15px}.calendar-modal .modal-body,.passenger-modal .modal-body{padding:13px 20px 23px}.passenger-counter{gap:18px}.counter-button{width:34px;height:34px}.passenger-row h3{font-size:14px}}
@media(max-width:374px){.journey-header{padding:18px}.header-caption{font-size:8px;gap:5px}.journey-layout{padding:0 12px}.journey-intro{padding-left:5px;padding-right:5px}.journey-intro h2{font-size:29px}.itinerary-card .card-body{padding:23px 18px 19px}.itinerary-card h1{font-size:22px}.form-introduction{font-size:10px}.journey-footer{padding-left:18px;padding-right:18px}.journey-footer>span:last-child{display:none}}
@media(prefers-reduced-motion:no-preference){.itinerary-card{animation:card-arrive .55s ease both}.journey-intro{animation:card-arrive .7s ease both}.form-control,.form-check-label,.journey-progress i,.continue-button .icon{transition:border-color .2s,box-shadow .2s,background .2s,transform .2s}.art-plane{animation:plane-float 5s ease-in-out infinite}.flight-path{animation:route-dash 22s linear infinite}@keyframes card-arrive{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes plane-float{50%{transform:translate(3px,-4px)}}@keyframes route-dash{to{stroke-dashoffset:-110}}}
.itinerary-card .card-body{padding:24px 28px 20px}.form-eyebrow{margin-bottom:12px}.form-introduction{margin-bottom:17px}.itinerary-card .trip-type.mb-4{margin-bottom:16px!important}.itinerary-card .mb-4{margin-bottom:12px!important}@media(max-width:767.98px){.journey-header{padding-top:17px;padding-bottom:17px}.journey-intro{padding-bottom:20px}.intro-eyebrow{display:none}.journey-intro h2{font-size:30px;margin-bottom:8px}.intro-description{font-size:11px}.itinerary-card .card-body{padding:23px 22px 20px}.form-eyebrow{display:none}.form-introduction{margin-bottom:18px}.itinerary-card h1{font-size:23px}.journey-layout{margin-bottom:22px}}@media(max-width:374px){.itinerary-card .card-body{padding:21px 17px 18px}.journey-intro h2{font-size:28px}.itinerary-card h1{font-size:21px}}

/* A warmer, more playful layer, using the brand accent throughout. */
body{background-color:#f8f7fc;background-image:radial-gradient(ellipse at 8% 15%,#eae3ffb3 0,transparent 45%),radial-gradient(ellipse at 94% 82%,#ffe9d780 0,transparent 42%)}
.itinerary-card{position:relative;border-color:#e4dff4!important;box-shadow:0 18px 55px #7367f00c;background:linear-gradient(160deg,#fcfaff 0,#fff 27%)}
.itinerary-card::before{content:"";position:absolute;top:-1px;left:24px;right:24px;height:3px;background:linear-gradient(90deg,#b9affb,#7367f0,#f7c88c);border-radius:0 0 8px 8px;pointer-events:none}
.card-sparkle{position:absolute;right:22px;top:51px;display:grid;place-items:center;width:33px;height:33px;border-radius:12px;background:#fff1de;color:#cf8b38;font-size:24px;transform:rotate(12deg);pointer-events:none}
.itinerary-card h1{font-size:27px;padding-right:28px}.form-introduction{font-size:13px;color:#858097}.form-eyebrow{font-size:9px}.intro-description{font-size:15px;color:#79738b}.intro-eyebrow{font-size:10px}.header-caption{font-size:12px}.art-caption{font-size:10px}.journey-footer{font-size:10px}
.form-label{font-size:13px;color:#655e7b}.form-control{font-size:16px;border-color:#e4dfed;background:#ffffffb8}.date-text,#passenger-summary{font-size:16px}.form-control:hover{border-color:#c0b5f8}.form-control:focus{border-color:#978df5;box-shadow:0 0 0 3px #7367f012}.form-control.has-value{background:#faf8ff;border-color:#dcd4fa}
.trip-type>.d-flex{background:#f2eefb;border-color:#eae4f7}.trip-type .form-check-label{font-size:14px}.trip-type input:checked+label{color:#6759d9;box-shadow:0 2px 7px #7367f018}.input-shell .field-icon,.date-trigger>.icon,.passenger-trigger>.icon{color:#9a8cc1}.swap-airports:hover{color:#5e50df;background:#e8e0ff;border-color:#d3c7fb}.form-text{font-size:11px;color:#928b9f}.continue-button{font-size:15px;height:48px;box-shadow:0 7px 17px #7367f029}.journey-progress{font-size:11px}.journey-progress.is-ready{color:#7564bc}.journey-progress.is-ready i.is-complete{background:#a89be8}
.preview-top{font-size:9px}.preview-live{font-size:9px}.preview-route>div>span{font-size:11px}.preview-bottom>span{font-size:11px}.route-preview{background:#ffffffb8;border-color:#e2dbf5;position:relative}.route-preview::after{content:"✦";position:absolute;right:-11px;top:-13px;background:#ffebd0;color:#bb823b;width:27px;height:27px;border-radius:9px;display:grid;place-items:center;transform:rotate(13deg);font-size:18px}

.journey-confetti{position:absolute;inset:0;pointer-events:none;overflow:hidden;border-radius:18px;z-index:4}.journey-confetti i{position:absolute;top:27%;left:50%;width:6px;height:9px;border-radius:2px;background:var(--confetti-color);animation:little-celebration .85s ease-out forwards;transform:rotate(var(--spin))}@keyframes little-celebration{0%{opacity:0;translate:0 0}15%{opacity:1}100%{opacity:0;translate:var(--x) var(--y);rotate:var(--spin)}}
@media(max-width:767.98px){.itinerary-card h1{font-size:24px;letter-spacing:-.7px;padding-right:23px}.card-sparkle{right:17px;top:20px;width:28px;height:28px;font-size:21px}.form-introduction{font-size:12px}.intro-description{font-size:13px}.header-caption{font-size:10px}.form-control,.airport-input::placeholder,.date-text,#passenger-summary{font-size:16px}.form-label{font-size:13px}.trip-type .form-check-label{font-size:14px}.journey-progress{font-size:10px}.journey-footer>span:last-child{font-size:9px}}
@media(max-width:374px){.itinerary-card h1{font-size:22px}.card-sparkle{display:none}.form-introduction{font-size:11px}.header-caption{font-size:9px}}
@media(prefers-reduced-motion:no-preference){.card-sparkle{animation:sparkle-sway 5s ease-in-out infinite}@keyframes sparkle-sway{50%{transform:rotate(-8deg) scale(1.06)}}}
@media(prefers-reduced-motion:reduce){.journey-confetti{display:none}}
.headline-break{display:block}@media(max-width:767.98px){.headline-break{display:inline}}
