.fq-wrapper{max-width:1100px;margin:0 auto;color:#e9e9e9}
.fq-form input, .fq-form textarea, .fq-form button{font:inherit}
.fq-tabs{display:flex;gap:10px;margin-bottom:12px}
.fq-tab{padding:8px 12px;border:1px solid #444;background:#15151b;color:#eaeaea;border-radius:999px;cursor:pointer}
.fq-tab.active{border-color:#7ad7b8;background:#14221f}
.fq-panes .fq-pane{display:none}
.fq-leg{display:grid;gap:12px;align-items:end}
.fq-leg.roundtrip{grid-template-columns:1.2fr 1.2fr .9fr .6fr .9fr .6fr}
.fq-field label{display:block;margin-bottom:4px;font-size:12px;color:#bdbdbd}
.fq-field input, .fq-field textarea{width:100%;padding:10px;border-radius:8px;border:1px solid #333;background:#111;color:#eaeaea}
.fq-row{margin-top:14px}
.fq-stepper{display:inline-flex;gap:8px;align-items:center}
.fq-stepper button{width:40px;height:40px;border-radius:8px;border:1px solid #2b2b2b;background:#111;color:#eaeaea}
.fq-stepper input{width:56px;text-align:center}
.fq-actions{margin-top:14px;display:flex;align-items:center;gap:12px}
.fq-submit{padding:10px 18px;border-radius:10px;background:#2ecf97;color:#0c1b14;border:none;font-weight:600}
/* airport suggestions */
.fq-suggest{position:absolute;z-index:999;background:#0f0f0f;border:1px solid #333;border-radius:8px;margin-top:4px;max-height:260px;overflow:auto;display:none}
.fq-airport{position:relative}
.fq-suggest-item{padding:5px 5px;border-bottom:1px solid #222;cursor:pointer}
.fq-suggest-item:hover{background:#1a1a1a}
/* contact grid */
.fq-contact-grid{display:grid;grid-template-columns:1fr 1fr .5fr 1fr 1.5fr;gap:12px;margin-top:14px}
.fq-cc .fq-code-display{width:100%;padding:12px;border-radius:10px;border:1px solid #2b2b2b;background:#2ecf97;color:#0c1b14;font-weight:700}
.fq-codepicker{position:relative}
.fq-codepicker .fq-code-list{position:absolute;left:0;top:100%;min-width:260px;background:#0f0f0f;border:1px solid #333;border-radius:8px;max-height:260px;overflow:auto;display:none}
.fq-codepicker.open .fq-code-list{display:block}
.fq-code-item{padding:10px 12px;border-bottom:1px solid #222;cursor:pointer}
.fq-code-item:hover{background:#1a1a1a}
.fq-thanks pre{max-width:600px;padding:10px;border-radius:8px;background:#101010;border:1px solid #222}

/* Wider airport dropdown */
.fq-airport{position:relative}
.fq-suggest{min-width:100%; max-width:700px; width:auto; white-space:normal; box-shadow:0 10px 30px rgba(0,0,0,.25)}
.fq-suggest-item{line-height:1.25 ;font-size: 12px;}
/* Wider country code list */
.fq-codepicker .fq-code-list{min-width:360px}

/* Per-tab grid templates */
.fq-pane[data-pane="oneway"] .fq-leg{grid-template-columns:1.2fr 1.2fr .9fr .6fr}
.fq-pane[data-pane="roundtrip"] .fq-leg{grid-template-columns:1.2fr 1.2fr .9fr .6fr .9fr .6fr}
.fq-pane[data-pane="multileg"] .fq-leg{grid-template-columns:1.2fr 1.2fr .9fr .6fr .1fr}
/* Code picker tweaks */
.fq-cc .fq-code-display{width:100%;padding:12px;border-radius:10px;border:1px solid #2b2b2b;background:#2ecf97;color:#0c1b14;font-weight:700;display:block}
.fq-codepicker{position:relative;z-index:1000}
.fq-codepicker .fq-code-list{position:absolute;left:0;top:100%;min-width:360px;background:#0f0f0f;border:1px solid #333;border-radius:8px;max-height:300px;overflow:auto;display:none}
.fq-code-item{padding:10px 12px;border-bottom:1px solid #222;cursor:pointer}
.fq-code-item:hover{background:#1a1a1a}
/* Wider airport dropdown */
.fq-airport{position:relative}
.fq-suggest{min-width:100%;max-width:700px;width:auto;white-space:normal;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.fq-suggest-item{line-height:1.25}
/* ===== Responsive: mobile-first ===== */

/* Base input sizes */
.fq-field input, .fq-field textarea { font-size: 16px; }

/* Ensure suggestion dropdown doesn't overflow viewport */
.fq-suggest{
  min-width:100%;
  max-width: min(700px, 94vw);
  width:auto;
  white-space: normal;
  box-shadow: 0 10px 30px rgba(0,0,0,.25);
}

/* Country code list wider on desktop, full width on mobile */
.fq-codepicker .fq-code-list{ min-width:360px; }
@media (max-width: 480px){
  .fq-codepicker .fq-code-list{ min-width: 100%; width: 100%; }
}

/* Contact row → fluid grid */
.fq-contact-grid{
  display:grid;
  grid-template-columns: 1fr 1fr .5fr 1fr 1.5fr;
  gap:12px;
  margin-top:14px;
}
@media (max-width: 1024px){
  .fq-contact-grid{ grid-template-columns: 1fr 1fr 1fr; }
  .fq-cc{ grid-column: span 1; }
}
@media (max-width: 768px){
  .fq-contact-grid{ grid-template-columns: 1fr; }
  .fq-cc .fq-code-display{ width:100%; }
}

/* Per-tab layouts collapse cleanly */
.fq-leg{ display:grid; gap:12px; align-items:end; }
.fq-pane[data-pane="oneway"] .fq-leg{
  grid-template-columns: 1.2fr 1.2fr .9fr .6fr;
}
.fq-pane[data-pane="roundtrip"] .fq-leg{
  grid-template-columns: 1.2fr 1.2fr .9fr .6fr .9fr .6fr;
}
.fq-pane[data-pane="multileg"] .fq-leg{
  grid-template-columns: 1.2fr 1.2fr .9fr .6fr .1fr;
}

/* Tablet: 2 columns */
@media (max-width: 992px){
  .fq-pane[data-pane="oneway"] .fq-leg,
  .fq-pane[data-pane="multileg"] .fq-leg{
    grid-template-columns: 1fr 1fr;
  }
  .fq-pane[data-pane="roundtrip"] .fq-leg{
    grid-template-columns: 1fr 1fr;
  }
}

/* Mobile: single column  grid-template-columns: 1fr !important; */
@media (max-width: 640px){

  .fq-wrapper{ padding: 0 10px; }
  .fq-tabs{ flex-wrap: wrap; }
  .fq-tab{ width: auto; }
  .fq-stepper input{ width: 56px; }
  .fq-suggest{ max-width: 94vw; }
}

/* Buttons & status spacing on mobile */
@media (max-width: 480px){
  .fq-actions{ flex-direction: column; align-items: stretch; }
  .fq-submit{ width: 100%; }
}




/* === FQ: Autocomplete visibility (global) === */
.fq-airport{ position:relative; }

.fq-suggest{
  display:none;
  position:absolute;
  top:100%; left:0; right:0;
  z-index:10000;
  background:#0f0f0f;
  color:#fff;
  border:1px solid #333;
  border-radius:8px;
  margin-top:4px;
  max-height:260px;
  overflow:auto;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
  white-space:normal;
}

.fq-suggest.open{ display:block; }

.fq-suggest-item{
  padding:8px 10px;
  cursor:pointer;
  line-height:1.25;
  border-bottom:1px solid #222;
}

.fq-suggest-item:hover{ background:#1a1a1a; }
.fq-suggest-item.error{ color:#f66; }