/* v108: scoped flight-search refinements; all other page styles are preserved. */
#flights .field-wrap { min-width:0; }
#flights .field:focus-within { border-color:#111111; box-shadow:0 0 0 3px rgba(35,140,155,.1); }
#flights .airport-suggestions {
  position:absolute; inset:auto auto auto 0; top:calc(100% + 7px);
  width:max(100%,380px); max-width:calc(100vw - 24px); z-index:60;
  padding:0; overflow:hidden; border:1px solid #dddddd; border-radius:12px;
  background:#fff; box-shadow:0 16px 40px rgba(22,54,72,.15);
  font-weight:400; letter-spacing:normal; text-transform:none;
}
#flights .airport-suggestions[hidden] { display:none; }
.location-status { padding:10px 13px; background:#f5f5f5; color:#466370; font-size:11px; line-height:1.5; border-bottom:1px solid #e5e5e5; }
.location-options { max-height:min(340px,50vh); overflow-y:auto; overscroll-behavior:contain; scrollbar-width:thin; }
#flights .airport-suggestion { display:block; min-height:56px; padding:11px 13px; color:#171717; }
.location-option-top { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; }
#flights .airport-suggestion strong { display:block; font-size:12px; font-weight:700; line-height:1.45; overflow-wrap:anywhere; }
#flights .airport-suggestion small { display:block; margin-top:4px; font-size:10px; line-height:1.5; overflow-wrap:anywhere; color:#627f8c; }
.location-type { flex-shrink:0; font-size:9px; letter-spacing:.02em; line-height:1.7; padding:1px 6px; color:#111111; background:#f4f4f4; border-radius:4px; }
#flights .airport-suggestion:hover, #flights .airport-suggestion.is-active { background:#efefef; }
#flights .location-custom { background:#f8f8f8; border-top:1px solid #e2e2e2; }
#flights .location-custom strong { color:#111111; }
.location-empty { font-size:12px; font-weight:400; line-height:1.6; padding:15px 13px; margin:0; color:#627f8c; }
.location-footer { padding:7px 10px; border-top:1px solid #e2e2e2; background:#fff; display:grid; gap:5px; }
.location-more, .location-retry { width:100%; min-height:38px; padding:8px 10px; border:1px solid #dddddd; border-radius:6px; background:#f5f5f5; color:#111111; font-family:inherit; font-size:11px; font-weight:700; line-height:1.45; cursor:pointer; }
.location-more:hover, .location-retry:hover { background:#efefef; }
.location-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.location-data-info { margin-top:9px; max-width:900px; font-size:10px; line-height:1.65; color:#708895; }
.location-data-info summary { cursor:pointer; width:fit-content; color:#5e7b89; }
.location-data-info p { margin:8px 0 0; }
.location-data-info a { color:#111111; text-decoration:underline; text-underline-offset:2px; }
#searchresultssection .result-actions { display:flex; align-items:center; justify-content:flex-end; }
#searchresultssection .result-action {
  background:#222222!important; border-color:#222222!important; color:#fff!important;
  min-height:44px; min-width:110px; padding:11px 18px; flex:0 0 auto;
}
#searchresultssection .result-action:hover { background:#254b60!important; border-color:#254b60!important; }
#searchresultssection .result-enquiry-send {
  background:#111111; border-color:#111111; color:#fff; min-height:46px;
}
#searchresultssection .result-enquiry-send:hover { background:#111111; border-color:#111111; }
#searchresultssection .result-action:focus-visible,
#searchresultssection .result-enquiry-send:focus-visible,
#flights .location-more:focus-visible, #flights .location-retry:focus-visible {
  outline:3px solid #111111; outline-offset:3px;
}
#searchresultssection .result-body, #searchresultssection .result-enquiry-panel { min-width:0; }
#searchresultssection .result-capacity, #searchresultssection .result-enquiry-top p,
#searchresultssection #resultsroutetitle, #searchresultssection #resultssummary { overflow-wrap:anywhere; }
@media (max-width:700px) {
  #flights .airport-suggestions { width:max(100%,340px); }
  #searchresultssection .result-action { min-width:94px; padding:10px 14px; }
  #searchresultssection .result-enquiry-grid { grid-template-columns:minmax(0,1fr); }
  #searchresultssection .result-enquiry-actions { align-items:stretch; }
}
@media (max-width:460px) {
  #searchresultssection .flight-result-card { grid-template-columns:minmax(0,1fr); gap:10px; padding:13px; }
  #searchresultssection .result-actions, #searchresultssection .result-action { width:100%; }
  #searchresultssection .result-title { font-size:18px; }
  #searchresultssection .result-capacity, #searchresultssection .result-time { font-size:11px; }
  #searchresultssection .result-capacity { flex-direction:column; gap:4px; }
  #flights .location-options { max-height:min(280px,45vh); }
}


/* v219: light autocomplete dropdown styling for flight location search */
.airport-suggestions,
#flights .airport-suggestions,
.field-wrap .airport-suggestions {
  color-scheme: light;
  background:#f7f7f5 !important;
  border:1px solid #d9dde2 !important;
  border-radius:16px !important;
  box-shadow:0 18px 40px rgba(17,24,39,.12) !important;
  overflow:hidden;
}
.airport-suggestions[hidden],
#flights .airport-suggestions[hidden],
.field-wrap .airport-suggestions[hidden] { display:none; }
.location-status,
#flights .location-status,
.field-wrap .location-status {
  padding:12px 14px !important;
  background:#edf1f3 !important;
  color:#666666 !important;
  font-size:12px !important;
  line-height:1.5 !important;
  border-bottom:1px solid #dde3e8 !important;
}
.location-options,
#flights .location-options,
.field-wrap .location-options {
  max-height:min(340px,50vh);
  overflow-y:auto;
  overscroll-behavior:contain;
  background:#f7f7f5 !important;
  scrollbar-width:thin;
  scrollbar-color:#c8ced5 transparent;
}
.location-options::-webkit-scrollbar,
#flights .location-options::-webkit-scrollbar,
.field-wrap .location-options::-webkit-scrollbar { width:8px; }
.location-options::-webkit-scrollbar-thumb,
#flights .location-options::-webkit-scrollbar-thumb,
.field-wrap .location-options::-webkit-scrollbar-thumb {
  background:#c8ced5;
  border-radius:999px;
}
.airport-suggestion,
#flights .airport-suggestion,
.field-wrap .airport-suggestion {
  display:block;
  width:100%;
  min-height:60px;
  padding:13px 14px !important;
  text-align:left;
  background:#f7f7f5 !important;
  color:#17212b !important;
  border:0 !important;
  border-top:1px solid #e4e8ec !important;
}
.airport-suggestion:first-child,
#flights .airport-suggestion:first-child,
.field-wrap .airport-suggestion:first-child { border-top:0 !important; }
.airport-suggestion strong,
#flights .airport-suggestion strong,
.field-wrap .airport-suggestion strong {
  display:block;
  font-size:15px !important;
  line-height:1.35 !important;
  color:#13202c !important;
}
.airport-suggestion small,
#flights .airport-suggestion small,
.field-wrap .airport-suggestion small {
  display:block;
  margin-top:4px;
  font-size:12px !important;
  line-height:1.55 !important;
  color:#666666 !important;
}
.location-option-top {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
.location-type {
  flex-shrink:0;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:4px 10px !important;
  border-radius:999px !important;
  border:1px solid #d5dbe1 !important;
  background:#ffffff !important;
  color:#182633 !important;
  font-size:10px !important;
  line-height:1.2 !important;
  font-weight:700;
}
.airport-suggestion:hover,
.airport-suggestion.is-active,
#flights .airport-suggestion:hover,
#flights .airport-suggestion.is-active,
.field-wrap .airport-suggestion:hover,
.field-wrap .airport-suggestion.is-active {
  background:#eef2f4 !important;
}
.location-custom,
#flights .location-custom,
.field-wrap .location-custom {
  background:#f1f4f6 !important;
  border-top:1px solid #dfe5ea !important;
}
.location-empty {
  margin:0;
  padding:16px 14px;
  background:#f7f7f5 !important;
  color:#666666 !important;
  font-size:12px !important;
  line-height:1.6 !important;
}
.location-footer,
#flights .location-footer,
.field-wrap .location-footer {
  padding:10px;
  border-top:1px solid #dde3e8 !important;
  background:#f7f7f5 !important;
  display:grid;
  gap:8px;
}
.location-more,
.location-retry,
#flights .location-more,
#flights .location-retry,
.field-wrap .location-more,
.field-wrap .location-retry {
  min-height:40px;
  width:100%;
  padding:10px 12px;
  border-radius:10px !important;
  border:1px solid #d5dbe1 !important;
  background:#ffffff !important;
  color:#17212b !important;
  font-size:12px !important;
  font-weight:700;
}
.location-more:hover,
.location-retry:hover,
#flights .location-more:hover,
#flights .location-retry:hover,
.field-wrap .location-more:hover,
.field-wrap .location-retry:hover {
  background:#eef2f4 !important;
}
@media (max-width: 700px) {
  .airport-suggestions,
  #flights .airport-suggestions,
  .field-wrap .airport-suggestions {
    border-radius:14px !important;
  }
  .airport-suggestion strong,
  #flights .airport-suggestion strong,
  .field-wrap .airport-suggestion strong {
    font-size:14px !important;
  }
  .airport-suggestion small,
  #flights .airport-suggestion small,
  .field-wrap .airport-suggestion small {
    font-size:11px !important;
  }
}

/* v254 — keep homepage / shared autocomplete dropdown white and readable */
.airport-suggestions,
#flights .airport-suggestions,
.field-wrap .airport-suggestions,
#fromSuggestions,
#toSuggestions{
  background:#ffffff !important;
  color:#111111 !important;
  border:1px solid #d9d9d9 !important;
}
.location-options,
#flights .location-options,
.field-wrap .location-options,
#fromSuggestions .location-options,
#toSuggestions .location-options{
  background:#ffffff !important;
}
button.airport-suggestion,
.airport-suggestion,
#flights .airport-suggestion,
.field-wrap .airport-suggestion,
#fromSuggestions button,
#toSuggestions button{
  background:#ffffff !important;
  color:#111111 !important;
  border-top:1px solid #eceae6 !important;
}
button.airport-suggestion strong,
.airport-suggestion strong,
#flights .airport-suggestion strong,
.field-wrap .airport-suggestion strong,
#fromSuggestions button strong,
#toSuggestions button strong{
  color:#111111 !important;
}
button.airport-suggestion small,
.airport-suggestion small,
#flights .airport-suggestion small,
.field-wrap .airport-suggestion small,
#fromSuggestions button small,
#toSuggestions button small{
  color:#5f5f5f !important;
}
button.airport-suggestion:hover,
button.airport-suggestion.is-active,
.airport-suggestion:hover,
.airport-suggestion.is-active,
#flights .airport-suggestion:hover,
#flights .airport-suggestion.is-active,
.field-wrap .airport-suggestion:hover,
.field-wrap .airport-suggestion.is-active,
#fromSuggestions button:hover,
#fromSuggestions button.is-active,
#toSuggestions button:hover,
#toSuggestions button.is-active{
  background:#f5f5f3 !important;
  color:#111111 !important;
}
.location-status,
.location-footer,
.location-custom,
#flights .location-status,
#flights .location-footer,
#flights .location-custom,
.field-wrap .location-status,
.field-wrap .location-footer,
.field-wrap .location-custom{
  background:#ffffff !important;
  color:#666666 !important;
}
.location-type,
#flights .location-type,
.field-wrap .location-type{
  background:#ffffff !important;
  color:#111111 !important;
  border:1px solid #d6d6d6 !important;
}
