/* Airwayo: a calm, search-first surface with the established route symbol. */
:root{--blue:#0878d1;--blue-dark:#0666b3;--blue-soft:#f0f6fc;--ink:#252a31;--muted:#697078;--line:#dadce0;--bg:#fff;--focus:#0878d1;--shadow:0 4px 18px #20212412}
body{background:#fff;color:var(--ink);-webkit-font-smoothing:antialiased}
.site-header{height:80px;border:0;background:#fff}
.header-inner{width:min(1280px,calc(100% - 56px))}
.brand-logo{width:42px;height:42px}
.header-actions{gap:12px}
.language-control select,.settings-trigger,.account-trigger{border-radius:999px;min-height:42px;padding:8px 15px;font-weight:500}
.language-control{font-weight:500}
.language-control>span{display:none}
.language-control select{border-color:transparent;background:#fff}
.settings-trigger{color:#4e5660}
.account-trigger{padding-inline:22px}
main.wrap{width:min(1000px,calc(100% - 48px));padding:42px 0 70px}
.intro{max-width:720px;margin-bottom:34px;text-align:center}
.hero-wordmark{display:block;width:clamp(220px,31vw,310px);max-width:100%;height:auto;margin:0 auto 18px;direction:ltr}
.intro h1{font-size:clamp(22px,2.5vw,29px);line-height:1.3;letter-spacing:-.035em;font-weight:500;margin:0 0 9px}
.intro p{color:var(--muted);font-size:14px;line-height:1.65}
.search-panel{border:1px solid #e1e3e6;border-radius:28px;padding:25px 28px 26px;box-shadow:0 3px 16px #20212407}
.trip-types{margin-bottom:23px}
.trip-types legend{font-weight:500;color:var(--muted);font-size:12px;margin-bottom:4px}
.trip-type-options{border-color:#eceef1}
.trip-type-option{font-weight:500;min-height:46px;border-bottom-width:2px}
.field label{color:#5f6368;font-weight:500;margin:0 0 7px 13px}
.field input,.field select,.date-readout{height:52px;border:1px solid var(--line);border-radius:999px;padding:0 16px;background:#fff;font-size:15px}
.field input:hover,.field select:hover,.date-shell:hover .date-readout{border-color:#b7bbc1;box-shadow:0 1px 5px #20212412}
.date-shell{height:52px}
.date-readout{height:auto}
.field input::placeholder,.date-readout.is-empty{color:#80868b}
.field input:focus,.field select:focus,.date-shell:focus-within .date-readout{border-color:var(--blue);box-shadow:0 0 0 2px #0878d11a}
.autocomplete-menu{border-radius:18px;padding:7px;box-shadow:0 6px 22px #20212421}
.suggestion{border-radius:12px;padding:11px 12px}
.traveller-grid{margin-top:20px;gap:14px}
.baggage-options{background:#fafbfc;border-color:#e7e9ec;border-radius:19px;padding:14px 17px;margin-top:24px}
.baggage-options legend{font-size:13px;font-weight:500;padding:0 7px}
.bag-choices .check{font-weight:500}
.search-options{font-size:12px;color:#5f6368;gap:13px 24px;padding-top:19px}
.check input{accent-color:var(--blue)}
.search-btn{display:block;max-width:330px;margin:24px auto 0;height:50px;font-size:14px;font-weight:600;box-shadow:none;transition:background .15s,box-shadow .15s}
.search-btn:hover{box-shadow:0 2px 8px #0878d12b}
.search-btn span[aria-hidden]{display:inline-block;margin-inline-start:10px}
.search-note{justify-content:center;text-align:center;gap:3px 14px;font-size:11px;line-height:1.7;margin-top:17px}
.search-note strong{font-weight:500;color:#5f6368}
.search-state{border-radius:18px;background:#f5f9fd;border-color:#dae8f5}
.value-strip{gap:24px;margin-top:32px}
.value-item{border:0;padding:0;justify-content:center;font-size:12px;color:#697078;font-weight:400;background:transparent}
.value-icon{width:26px;height:26px;background:#f1f3f4;color:#5f6368;font-size:15px}
.footer{background:#fafbfc;border-color:#eceef1;color:#777e87;padding:24px 0}
.footer-inner{gap:12px}
.footer-brand{font-weight:600;color:#4c525a}
.footer-links{font-size:12px;gap:12px 20px}
.footer-links a,.footer-links button{color:#5f6368;text-decoration:none;font-weight:400}
.footer-links a:hover,.footer-links button:hover{text-decoration:underline}
.settings-dialog,.privacy-dialog{border-radius:25px;border-color:var(--line);box-shadow:0 20px 80px #20212426}
.settings-dialog::backdrop,.privacy-dialog::backdrop{background:#20212455}
.settings-heading h2,.privacy-heading h2{font-weight:500}
.settings-dialog .field>label{margin-inline-start:12px}
.account-auth-form input,.settings-login,.privacy-action{border-radius:999px}
body[data-page=legal]{background:#fff;color:#252a31}
.legal-header{border-color:#eceef1}
.legal-header img{width:190px;height:auto}
.legal-header .language-control select{border-radius:999px}
.legal-card{border-color:#e1e3e6;border-radius:25px;box-shadow:none}
.legal-card h1,.legal-card h2{font-weight:500}
body[data-page=legal] .footer{background:#fafbfc;border-color:#eceef1}
html[dir=rtl] .intro{text-align:center}
@media(max-width:760px){
  .site-header{height:auto;min-height:0;padding:15px 0}
  .header-inner{width:calc(100% - 32px);gap:10px 12px}
  .brand-logo{width:36px;height:36px}
  .header-actions .account-trigger{min-height:40px;padding:8px 20px}
  .header-actions .language-control select,.header-actions .settings-trigger{min-height:36px;padding:5px 12px;font-size:12px}
  main.wrap{width:min(620px,calc(100% - 28px));padding:23px 0 45px}
  .intro{margin-bottom:25px}
  .hero-wordmark{width:245px;margin-bottom:15px}
  .intro h1{font-size:23px}
  .intro p{font-size:13px;max-width:340px;margin:auto}
  .search-panel{border-radius:24px;padding:19px 17px 21px}
  .value-strip{display:flex;gap:15px;flex-wrap:wrap;justify-content:center;margin-top:25px}
  .value-item{font-size:11px;gap:7px}
  .value-icon{width:22px;height:22px;font-size:13px}
  .settings-dialog .field input,.settings-dialog .field select{font-size:16px}
}
@media(max-width:460px){
  .header-inner{grid-template-columns:minmax(0,1fr) auto auto;gap:9px}
  .brand{grid-column:1;grid-row:1}
  .header-actions .language-control{grid-column:1;grid-row:2;justify-self:start;margin-top:0}
  .header-actions .settings-trigger{grid-column:2;grid-row:1}
  .header-actions .account-trigger{grid-column:3;grid-row:1}
  .header-actions .language-control select{padding-inline:8px}
  main.wrap{padding-top:13px}
  .hero-wordmark{width:230px}
  .intro h1{font-size:21px}
  .search-grid,.traveller-grid{gap:13px 10px}
  .field input,.field select{font-size:16px;padding-inline:13px}
  .field label{font-size:11px;margin-inline-start:12px}
  .date-readout{font-size:14px;padding-inline:13px}
  .trip-types{margin-bottom:20px}
  .trip-type-option{font-size:12px;padding:9px 2px}
  .traveller-grid{margin-top:18px}
  .bag-choices{gap:13px}
  .baggage-options{padding-inline:12px;border-radius:17px}
  .search-options{gap:12px}
  .search-btn{max-width:none}
  .search-panel[data-trip-type=multicity] .route-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr) 24px;gap:10px 7px}
  .search-panel[data-trip-type=multicity] .route-row>.field:nth-child(3){grid-column:1/3}
  .search-panel[data-trip-type=multicity] .remove-leg{grid-column:3;grid-row:1/3;align-self:center}
  .search-panel[data-trip-type=multicity] .route-row+.route-row{border-top:1px solid #eceef1;padding-top:15px;margin-top:5px}
  .search-panel[data-trip-type=multicity] .field input{padding-inline:11px}
  .search-panel[data-trip-type=multicity] .autocomplete-menu{top:52px}
  .search-note span{margin-top:2px}
  .legal-header img{width:165px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.search-btn{transition:none}}

/* Keep the language selector in the first header row on phones. */
@media(max-width:460px){
 .header-inner{grid-template-columns:32px minmax(65px,1fr) auto auto;gap:6px}
 .header-actions .language-control{grid-column:2;grid-row:1;justify-self:end;min-width:0;margin:0}
 .header-actions .settings-trigger{grid-column:3;grid-row:1;padding-inline:9px}
 .header-actions .account-trigger{grid-column:4;grid-row:1;padding-inline:13px;font-size:12px}
 .header-actions .language-control select{width:100%;max-width:100px;min-width:65px;padding-inline:2px;font-size:12px}
 .brand-logo{width:32px;height:32px}
}
