.fx-booking-controls{background:#fff;border:1px solid #dce5f0;box-shadow:0 8px 26px #19395f0c;border-radius:25px;padding:22px 24px}
.fx-booking-controls .fx-trip{display:inline-flex;padding:4px;gap:4px;background:#eef3fa;border:1px solid #e2e9f3;border-radius:25px;margin-bottom:16px}
.fx-booking-controls .fx-trip span{min-height:40px;border:0;background:transparent;padding:9px 15px;color:#53647c}
.fx-booking-controls .fx-trip input:checked+span{background:#fff;color:#244b95;box-shadow:0 2px 7px #183d7215}
.fx-booking-controls .fx-field input,.fx-booking-controls .fx-field select,.fx-booking-controls .fx-date-control{min-height:48px;border:1px solid #dce4ed;background:#fff;border-radius:25px;box-shadow:0 2px 4px #213f6704}
.fx-booking-controls .fx-field input:hover,.fx-booking-controls .fx-field select:hover,.fx-booking-controls .fx-date-control:hover{border-color:#9fb6d4;background:#fcfdff}
.fx-booking-controls .fx-field input:focus,.fx-booking-controls .fx-field select:focus{border-color:#5e82ba;outline:2px solid #d9e6fa;outline-offset:1px}
.fx-booking-controls .fx-field label{font-size:12px;color:#42536c;font-weight:600}
.fx-booking-controls .fx-travel-options{margin-top:12px}.fx-booking-controls .fx-travel-options summary,.fx-booking-controls .fx-extras summary{min-height:44px;font-size:13px;color:#42536c}
.fx-booking-controls .fx-submit-row{padding-top:14px;gap:12px}.fx-booking-controls .fx-submit-row .fx-button{min-height:48px;padding:12px 22px;background:#ffce58;color:#24334b;border:1px solid #f1bf42;box-shadow:0 5px 12px #d5a32920}
.fx-booking-controls .fx-submit-row .fx-button:hover{background:#ffc840;box-shadow:0 6px 16px #d5a32930}.fx-booking-controls .fx-submit-row>p{font-size:11px;line-height:1.6;color:#65758a}
.fx-route-booking{background:#f5f8fd;border:1px solid #e0e8f2;box-shadow:0 8px 26px #19395f09;padding:18px 20px}.fx-route-booking .fx-booking-controls{padding:12px 0 0;background:transparent;box-shadow:none;border:0}.fx-route-form-intro{font-size:12px;color:#63758e}
.fx-airport-cards{display:grid;gap:12px;margin:20px 0 16px}.fx-airport-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px 18px;padding:18px;border:1px solid #dfe7f1;border-radius:18px;background:#f8fafd}.fx-airport-card strong{display:inline-block;color:#2757a6;letter-spacing:.08em;font-size:13px}.fx-airport-card h3{margin:7px 0!important;font-size:18px!important;line-height:1.4!important}.fx-airport-card p{font-size:13px;margin:0!important;color:#61748d}.fx-airport-card button{min-height:44px;border:1px solid #d2def0;border-radius:25px;padding:10px 16px;background:#fff;color:#2757a6}.fx-airport-card>a{grid-column:1/-1;font-size:13px}.fx-data-source{font-size:12px;color:#63758e;margin:16px 0 28px}.fx-data-source summary{min-height:44px;display:flex;align-items:center;cursor:pointer}.fx-data-source p,.fx-data-source ul{font-size:12px!important;line-height:1.7!important}
.fx-route-search{padding:22px;background:#f5f8fd;border:1px solid #dfe7f2;border-radius:25px;margin:24px 0}.fx-route-search label{display:block;font-size:14px;font-weight:600;margin-bottom:10px}.fx-route-search input{width:100%;min-height:50px;padding:12px 18px;border:1px solid #d9e3f0;border-radius:25px;background:#fff;color:#26364e}.fx-route-search p{font-size:12px!important;margin:10px 0 0!important}.fx-route-region{border-bottom:1px solid #dfe6ef}.fx-route-region summary{display:flex;justify-content:space-between;gap:12px;min-height:58px;align-items:center;font-weight:600;cursor:pointer}.fx-route-region summary span{font-size:12px;font-weight:400;color:#667991}.fx-route-region ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0!important}.fx-route-region li{margin:0!important;padding:0!important;min-width:0}.fx-route-region a{display:block;padding:14px;border:1px solid #e2e8f0;border-radius:14px;text-decoration:none!important;background:#fff}.fx-route-region a:hover{border-color:#9cb7de;background:#f8faff}.fx-route-region strong{display:block;font-size:15px}.fx-route-region a span{display:block;font-size:12px;color:#64748b;margin-top:6px;overflow-wrap:anywhere}.fx-route-region [hidden]{display:none!important}
.fx-footer-seo{padding:30px 0 34px;border-top:1px solid #dfe6ef;border-bottom:1px solid #dfe6ef}.fx-footer-seo h2{font-size:clamp(22px,3vw,28px);line-height:1.35;color:#293b55;margin-bottom:18px}.fx-footer-seo p{font-size:13px;line-height:1.9;color:#61718a;margin-bottom:14px}.fx-footer-seo-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:32px}.fx-footer-seo h3{font-size:16px;color:#334862;margin:4px 0 12px}.fx-footer-seo a{color:#2b5594;text-decoration:underline;text-underline-offset:3px}.fx-footer-route-links{display:flex;flex-wrap:wrap;gap:10px 18px}.fx-footer-route-links a{min-height:36px;display:inline-flex;align-items:center;font-size:13px}
@media(max-width:900px){.fx-route-region ul{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){
.fx-booking-controls{padding:16px}.fx-booking-controls .fx-trip{margin-bottom:12px}.fx-booking-controls .fx-trip span{font-size:12px;padding-inline:14px}.fx-booking-controls .fx-route-fields{grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);gap:10px 4px;position:relative}.fx-booking-controls .fx-route-fields>.fx-field:first-child{grid-column:1;grid-row:1}.fx-booking-controls .fx-route-fields>.fx-field:nth-child(3){grid-column:3;grid-row:1}.fx-booking-controls .fx-route-fields>.fx-field:nth-last-child(2){grid-column:1/3;grid-row:2}.fx-booking-controls .fx-route-fields>.fx-field:last-child{grid-column:3;grid-row:2}.fx-booking-controls .fx-route-fields:has([data-fx-return]:not([hidden]))>.fx-field:nth-last-child(2){grid-column:1}.fx-booking-controls .fx-route-fields:has([data-fx-return][hidden])>.fx-field:nth-last-child(2){grid-column:1/-1}.fx-booking-controls .fx-swap{position:static;grid-column:2;grid-row:1;align-self:end;width:32px;height:48px;transform:none;border:0;box-shadow:none;background:transparent;padding:4px;border-radius:12px}.fx-booking-controls .fx-swap:hover{background:#e6edf8}.fx-booking-controls .fx-route-fields>.fx-field:first-child input{padding-right:12px}.fx-booking-controls .fx-field input,.fx-booking-controls .fx-field select{padding-inline:12px;font-size:16px}.fx-booking-controls .fx-date-control{padding-inline:12px;font-size:12px;gap:4px}.fx-booking-controls .fx-submit-row{flex-direction:column-reverse;padding-top:12px;gap:8px}.fx-booking-controls .fx-submit-row .fx-button{width:100%;min-height:48px}.fx-booking-controls .fx-submit-row>p{font-size:10px}.fx-route-booking{padding:14px 16px}.fx-route-booking .fx-booking-controls{padding-top:10px}.fx-route-form-intro{font-size:11px}.fx-route-booking .fx-submit-row{margin-top:0}.fx-airport-card{grid-template-columns:1fr;padding:16px}.fx-airport-card button{justify-self:start}.fx-airport-card>a{grid-column:auto}.fx-footer-seo-grid{grid-template-columns:1fr;gap:12px}.fx-footer-seo{padding-block:24px}.fx-footer-seo p{font-size:12px}.fx-route-region ul{grid-template-columns:1fr}.fx-route-search{padding:16px}}
@media(max-width:650px){.fx-booking-controls .fx-route-fields{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)}.fx-booking-controls .fx-swap{width:44px;height:48px}}
.fx-booking-controls .fx-trip span{min-height:44px}.fx-booking-controls .fx-field input:focus-visible,.fx-booking-controls .fx-field select:focus-visible,.fx-booking-controls button:focus-visible,.fx-booking-controls summary:focus-visible{outline:2px solid #3159b5;outline-offset:3px}
@media(prefers-reduced-motion:reduce){.fx-booking-controls *{scroll-behavior:auto;transition:none}}
