[hidden]{display:none!important}.umqs [hidden]{display:none!important}
.umqs{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;max-width:1180px;margin:32px auto;padding:28px;border-radius:var(--umqs-radius,24px);background:linear-gradient(135deg,var(--umqs-bg,#fff),var(--umqs-surface,#f6f9ff));box-shadow:0 22px 70px var(--umqs-shadow,rgba(17,24,39,.14));color:var(--umqs-text,#111827)}.umqs *{box-sizing:border-box}.umqs__eyebrow{margin:0 0 6px;color:var(--umqs-accent,#0057ff);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:12px}.umqs h2{margin:0;font-size:clamp(28px,4vw,44px);line-height:1.05;color:var(--umqs-text,#111827)}.umqs__header p:last-child{margin:10px 0 0;color:var(--umqs-muted,#5b6472);font-size:16px}.umqs__form{margin-top:24px}.umqs__tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}.umqs__tabs label{cursor:pointer}.umqs__tabs input{position:absolute;opacity:0;pointer-events:none}.umqs__tabs span{display:inline-flex;align-items:center;min-height:42px;padding:10px 16px;border:1px solid var(--umqs-border,#d8e1ec);border-radius:999px;background:var(--umqs-field-bg,#fff);font-weight:700;color:var(--umqs-text,#334155)}.umqs__tabs input:checked+span{border-color:var(--umqs-accent,#0057ff);background:color-mix(in srgb,var(--umqs-accent,#0057ff) 10%,white);color:var(--umqs-accent,#0057ff)}.umqs__grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.umqs__field{position:relative;display:flex;flex-direction:column;gap:7px}.umqs__field--wide{grid-column:span 2}.umqs label{font-size:13px;font-weight:800;color:var(--umqs-text,#334155)}.umqs input,.umqs select{width:100%;height:54px;border:1px solid var(--umqs-border,#d8e1ec);border-radius:16px;background:var(--umqs-field-bg,#fff);padding:0 15px;font-size:15px;color:var(--umqs-text,#111827);outline:none;transition:border-color .15s,box-shadow .15s}.umqs input:focus,.umqs select:focus{border-color:var(--umqs-accent,#0057ff);box-shadow:0 0 0 4px color-mix(in srgb,var(--umqs-accent,#0057ff) 15%,transparent)}.umqs__button{width:100%;margin-top:18px;height:58px;border:0;border-radius:18px;background:linear-gradient(135deg,var(--umqs-accent,#0057ff),var(--umqs-accent-2,#00a3ff));color:var(--umqs-button-text,#fff);font-weight:900;font-size:18px;cursor:pointer;box-shadow:0 14px 28px color-mix(in srgb,var(--umqs-accent,#0057ff) 28%,transparent);transition:transform .15s,filter .15s}.umqs__button:hover{transform:translateY(-1px);filter:brightness(.96)}.umqs__hint{margin:10px 0 0;color:var(--umqs-muted,#64748b);font-size:13px}.umqs__suggestions{display:none;position:absolute;z-index:9999;top:78px;left:0;right:0;max-height:320px;overflow:auto;background:var(--umqs-field-bg,#fff);border:1px solid var(--umqs-border,#d8e1ec);border-radius:16px;box-shadow:0 18px 45px rgba(15,23,42,.18);padding:6px}.umqs__suggestions.is-open{display:block}.umqs__suggestions button{display:flex;width:100%;justify-content:space-between;gap:10px;align-items:center;border:0;background:transparent;padding:12px;border-radius:12px;text-align:left;cursor:pointer;font-size:14px;color:var(--umqs-text,#111827)}.umqs__suggestions button:hover,.umqs__suggestions button.is-active{background:color-mix(in srgb,var(--umqs-accent,#0057ff) 8%,white)}.umqs__suggestions small{color:var(--umqs-muted,#64748b);font-weight:800;white-space:nowrap}.umqs__loading{padding:12px;color:var(--umqs-muted,#64748b);font-size:14px}.umqs-iframe-wrap{width:100%;overflow:hidden}@media(max-width:980px){.umqs__grid{grid-template-columns:repeat(2,minmax(0,1fr))}.umqs__field--wide{grid-column:span 2}}@media(max-width:640px){.umqs{padding:20px;border-radius:22px}.umqs__grid{grid-template-columns:1fr}.umqs__field--wide{grid-column:auto}.umqs__tabs{display:grid;grid-template-columns:1fr}.umqs__tabs span{justify-content:center}.umqs__suggestions{top:76px}}
.umqs__stepper{height:54px;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--umqs-border,#d8e1ec);border-radius:16px;background:var(--umqs-field-bg,#fff);padding:6px}.umqs__stepper button{width:42px;height:42px;border:0;border-radius:12px;background:color-mix(in srgb,var(--umqs-accent,#0057ff) 10%,white);color:var(--umqs-accent,#0057ff);font-size:24px;line-height:1;font-weight:900;cursor:pointer}.umqs__stepper button:disabled{opacity:.35;cursor:not-allowed}.umqs__stepper strong{min-width:32px;text-align:center;font-size:18px;color:var(--umqs-text,#111827)}.umqs__children-ages{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.umqs__child-age-field{min-width:0}@media(max-width:980px){.umqs__children-ages{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.umqs__children-ages{grid-template-columns:1fr}}

.umqs__ai{
  margin: 16px 0 0;
  padding: 16px;
  border: 1px solid var(--umqs-border);
  border-radius: calc(var(--umqs-radius) * .75);
  background: var(--umqs-field-bg);
}
.umqs__ai label{display:block;font-weight:700;margin-bottom:8px;color:var(--umqs-text)}
.umqs__ai textarea{width:100%;min-height:110px;resize:vertical;border:1px solid var(--umqs-border);border-radius:16px;padding:14px 16px;font:inherit;background:var(--umqs-field-bg);color:var(--umqs-text)}
.umqs__ai-actions{display:flex;gap:12px;align-items:center;margin-top:12px;flex-wrap:wrap}
.umqs__button--ai{width:auto;min-width:180px;margin-top:0}
.umqs__ai-actions span{color:var(--umqs-muted);font-size:14px}

/* Design 2: kompakte Vergleichsportal-Schnellsuche */
.umqs.umqs--compact{
  max-width:1180px;
  margin:18px auto;
  padding:0;
  border-radius:18px;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.umqs.umqs--compact .umqs__header{
  padding:0 4px 10px;
}
.umqs.umqs--compact .umqs__header h2{
  font-size:clamp(22px,3vw,32px);
  line-height:1.15;
}
.umqs.umqs--compact .umqs__header p{
  margin-top:4px;
  font-size:14px;
}
.umqs.umqs--compact .umqs__form{
  margin-top:0;
  padding:14px;
  border:1px solid var(--umqs-border,#d8e1ec);
  border-radius:18px;
  background:var(--umqs-field-bg,#fff);
  box-shadow:0 12px 34px var(--umqs-shadow,rgba(16,24,40,.14));
}
.umqs.umqs--compact .umqs__tabs{
  gap:0;
  margin:-14px -14px 12px;
  padding:8px 10px 0;
  border-radius:18px 18px 0 0;
  background:linear-gradient(135deg,var(--umqs-accent,#0057ff),var(--umqs-accent-2,#00a3ff));
}
.umqs.umqs--compact .umqs__tabs label{
  flex:0 0 auto;
}
.umqs.umqs--compact .umqs__tabs span{
  min-height:36px;
  padding:8px 15px;
  border:0;
  border-radius:12px 12px 0 0;
  background:transparent;
  color:color-mix(in srgb,var(--umqs-button-text,#fff) 75%,transparent);
  font-size:14px;
  font-weight:800;
}
.umqs.umqs--compact .umqs__tabs input:checked+span{
  background:var(--umqs-field-bg,#fff);
  color:var(--umqs-accent,#0057ff);
}
.umqs.umqs--compact .umqs__grid{
  display:grid;
  grid-template-columns:2fr 1.35fr 1.15fr 1.15fr 1.15fr .95fr .95fr;
  gap:8px;
  align-items:end;
}
.umqs.umqs--compact .umqs__field,
.umqs.umqs--compact .umqs__field--wide{
  grid-column:auto;
  gap:4px;
}
.umqs.umqs--compact label{
  font-size:11px;
  line-height:1;
  text-transform:none;
  color:var(--umqs-muted,#64748b);
}
.umqs.umqs--compact input,
.umqs.umqs--compact select,
.umqs.umqs--compact .umqs__stepper{
  height:48px;
  border-radius:10px;
  font-size:14px;
  border-color:var(--umqs-border,#d8e1ec);
  box-shadow:0 1px 0 rgba(15,23,42,.03);
}
.umqs.umqs--compact input,
.umqs.umqs--compact select{
  padding:0 11px;
}
.umqs.umqs--compact .umqs__stepper{
  padding:4px;
}
.umqs.umqs--compact .umqs__stepper button{
  width:36px;
  height:36px;
  border-radius:9px;
}
.umqs.umqs--compact .umqs__stepper strong{
  font-size:16px;
}
.umqs.umqs--compact .umqs__children-ages{
  grid-column:1/-1;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:8px;
}
.umqs.umqs--compact .umqs__button{
  height:50px;
  margin-top:10px;
  border-radius:12px;
  font-size:16px;
  box-shadow:0 10px 20px color-mix(in srgb,var(--umqs-accent,#0057ff) 20%,transparent);
}
.umqs.umqs--compact .umqs__suggestions{
  top:68px;
  border-radius:12px;
}
.umqs.umqs--compact .umqs__ai{
  margin:0;
  padding:10px;
  border-radius:12px;
  background:color-mix(in srgb,var(--umqs-accent,#0057ff) 5%,var(--umqs-field-bg,#fff));
}
.umqs.umqs--compact .umqs__ai textarea{
  min-height:86px;
  border-radius:12px;
}
.umqs.umqs--compact .umqs__ai-actions{
  margin-top:8px;
}
.umqs.umqs--compact .umqs__button--ai{
  min-width:160px;
}
@media(max-width:1120px){
  .umqs.umqs--compact .umqs__grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .umqs.umqs--compact .umqs__children-ages{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px){
  .umqs.umqs--compact .umqs__form{padding:12px;}
  .umqs.umqs--compact .umqs__tabs{margin:-12px -12px 12px;overflow:auto;flex-wrap:nowrap;}
  .umqs.umqs--compact .umqs__grid{grid-template-columns:1fr;}
  .umqs.umqs--compact .umqs__children-ages{grid-template-columns:1fr;}
}

/* Design 3 – extra kompakt */
.umqs.umqs--ultra{
  padding:18px;
  border-radius:18px;
}
.umqs.umqs--ultra .umqs__header{
  display:none;
}
.umqs.umqs--ultra .umqs__form{
  margin-top:0;
  padding:12px;
  border:1px solid var(--umqs-border,#d8e1ec);
  border-radius:18px;
  background:var(--umqs-field-bg,#fff);
  box-shadow:0 14px 32px var(--umqs-shadow,rgba(16,24,40,.12));
}
.umqs.umqs--ultra .umqs__tabs{
  gap:0;
  margin:-12px -12px 10px;
  padding:7px 8px 0;
  border-radius:18px 18px 0 0;
  background:linear-gradient(135deg,var(--umqs-accent,#0057ff),var(--umqs-accent-2,#00a3ff));
  flex-wrap:nowrap;
  overflow:auto;
}
.umqs.umqs--ultra .umqs__tabs label{flex:0 0 auto;}
.umqs.umqs--ultra .umqs__tabs span{
  min-height:34px;
  padding:8px 13px;
  border:0;
  border-radius:12px 12px 0 0;
  background:transparent;
  color:color-mix(in srgb,var(--umqs-button-text,#fff) 78%,transparent);
  font-size:13px;
  font-weight:800;
}
.umqs.umqs--ultra .umqs__tabs input:checked+span{
  background:var(--umqs-field-bg,#fff);
  color:var(--umqs-accent,#0057ff);
}
.umqs.umqs--ultra .umqs__grid{
  display:grid;
  grid-template-columns:1.65fr 1.1fr 1.25fr .95fr .8fr auto;
  gap:7px;
  align-items:end;
}
.umqs.umqs--ultra .umqs__field,
.umqs.umqs--ultra .umqs__field--wide{grid-column:auto;min-width:0;}
.umqs.umqs--ultra label{
  font-size:10px;
  line-height:1;
  color:var(--umqs-muted,#64748b);
  margin-bottom:4px;
}
.umqs.umqs--ultra input,
.umqs.umqs--ultra select,
.umqs.umqs--ultra .umqs__stepper,
.umqs.umqs--ultra .umqs__selectlike{
  height:44px;
  border-radius:10px;
  font-size:13px;
  border:1px solid var(--umqs-border,#d8e1ec);
  background:var(--umqs-field-bg,#fff);
  color:var(--umqs-text,#111827);
}
.umqs.umqs--ultra input,
.umqs.umqs--ultra select{padding:0 10px;}
.umqs.umqs--ultra .umqs__selectlike{
  width:100%;
  padding:0 10px;
  text-align:left;
  cursor:pointer;
  display:flex;
  align-items:center;
  justify-content:space-between;
  white-space:nowrap;
}
.umqs.umqs--ultra .umqs__selectlike:after{content:'▾';font-size:11px;color:var(--umqs-muted,#64748b);}
.umqs.umqs--ultra .umqs__field--datecombo,
.umqs.umqs--ultra .umqs__field--travellerscombo{position:relative;}
.umqs.umqs--ultra .umqs__popover{
  position:absolute;
  z-index:50;
  top:62px;
  left:0;
  min-width:320px;
  padding:14px;
  border-radius:16px;
  border:1px solid var(--umqs-border,#d8e1ec);
  background:var(--umqs-field-bg,#fff);
  box-shadow:0 18px 40px rgba(15,23,42,.18);
}
.umqs.umqs--ultra .umqs__field--travellerscombo .umqs__popover{right:0;left:auto;}
.umqs.umqs--ultra .umqs__popover-title{
  font-weight:800;
  font-size:14px;
  margin-bottom:10px;
  color:var(--umqs-text,#111827);
}
.umqs.umqs--ultra .umqs__popover-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.umqs.umqs--ultra .umqs__popover-grid--travellers{grid-template-columns:1fr;}
.umqs.umqs--ultra .umqs__popover .umqs__field{grid-column:auto;}
.umqs.umqs--ultra .umqs__popover .umqs__children-ages{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
}
.umqs.umqs--ultra .umqs__button{
  height:44px;
  margin-top:0;
  padding:0 18px;
  border-radius:10px;
  font-size:15px;
  white-space:nowrap;
  align-self:end;
}
.umqs.umqs--ultra .umqs__suggestions{top:60px;border-radius:12px;}
.umqs.umqs--ultra .umqs__ai{
  margin:0;
  padding:10px;
  border-radius:12px;
}
.umqs.umqs--ultra .umqs__ai textarea{min-height:88px;border-radius:12px;}
@media(max-width:1050px){
  .umqs.umqs--ultra .umqs__grid{grid-template-columns:1.4fr 1fr 1fr 1fr;}
  .umqs.umqs--ultra .umqs__button{grid-column:1/-1;}
}
@media(max-width:680px){
  .umqs.umqs--ultra{padding:10px;border-radius:14px;}
  .umqs.umqs--ultra .umqs__form{padding:10px;border-radius:16px;}
  .umqs.umqs--ultra .umqs__tabs{margin:-10px -10px 8px;padding:6px 6px 0;border-radius:16px 16px 0 0;}
  .umqs.umqs--ultra .umqs__tabs span{min-height:32px;padding:7px 10px;font-size:12px;}
  .umqs.umqs--ultra .umqs__grid{grid-template-columns:1fr 1fr;gap:6px;}
  .umqs.umqs--ultra .umqs__field--wide{grid-column:1/-1;}
  .umqs.umqs--ultra [data-pa-only]{grid-column:1/2;}
  .umqs.umqs--ultra .umqs__field--datecombo{grid-column:2/3;}
  .umqs.umqs--ultra .umqs__field--travellerscombo{grid-column:1/2;}
  .umqs.umqs--ultra .umqs__button{grid-column:2/3;margin-top:0;}
  .umqs.umqs--ultra input,
  .umqs.umqs--ultra select,
  .umqs.umqs--ultra .umqs__stepper,
  .umqs.umqs--ultra .umqs__selectlike,
  .umqs.umqs--ultra .umqs__button{height:42px;font-size:13px;}
  .umqs.umqs--ultra .umqs__popover{
    position:fixed;
    left:10px!important;
    right:10px!important;
    top:auto;
    bottom:16px;
    min-width:0;
    max-height:70vh;
    overflow:auto;
  }
  .umqs.umqs--ultra .umqs__popover-grid{grid-template-columns:1fr;}
}


/* v2.3.1e – Ultra Design Optimierungen */
@media(max-width:680px){
  .umqs.umqs--ultra .umqs__tabs{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:4px;
    overflow:visible;
    padding:6px;
    margin:-10px -10px 8px;
  }
  .umqs.umqs--ultra .umqs__tabs label{
    flex:1 1 auto;
    min-width:0;
  }
  .umqs.umqs--ultra .umqs__tabs span{
    width:100%;
    justify-content:center;
    border-radius:12px;
    min-height:36px;
    padding:8px 6px;
    text-align:center;
    white-space:nowrap;
  }
  .umqs.umqs--ultra .umqs__tabs input:checked+span{
    border-radius:12px;
    box-shadow:0 6px 16px rgba(15,23,42,.12);
  }

  /* Pauschalreise: kompakte Reihenfolge */
  .umqs.umqs--ultra.umqs--type-pa [data-combobox="destination"]{grid-column:1/-1;grid-row:auto;}
  .umqs.umqs--ultra.umqs--type-pa [data-pa-only]{grid-column:1/2;grid-row:auto;}
  .umqs.umqs--ultra.umqs--type-pa .umqs__field--datecombo{grid-column:2/3;grid-row:auto;}

  /* Nur Hotel: Abflug entfällt, Ziel + Zeitraum sauber ohne leere Lücke */
  .umqs.umqs--ultra.umqs--type-nh [data-combobox="destination"]{grid-column:1/-1;grid-row:auto;}
  .umqs.umqs--ultra.umqs--type-nh .umqs__field--datecombo{grid-column:1/-1;grid-row:auto;}

  /* Reisedauer und Reisende mobil nebeneinander */
  .umqs.umqs--ultra .umqs__field:has(select[name="duration"]){
    grid-column:1/2;
    grid-row:auto;
  }
  .umqs.umqs--ultra .umqs__field--travellerscombo{
    grid-column:2/3!important;
    grid-row:auto;
  }

  /* Button über volle Breite für klareren Abschluss */
  .umqs.umqs--ultra .umqs__button{
    grid-column:1/-1!important;
    width:100%;
  }

  .umqs.umqs--ultra .umqs__selectlike{
    overflow:hidden;
  }
  .umqs.umqs--ultra .umqs__selectlike span{
    overflow:hidden;
    text-overflow:ellipsis;
  }
}

/* v2.3.1ao mobile field/popover correction */
@media(max-width:1180px){
  .umqs-mobile-tabs .umqs .umqs__grid,
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--compact .umqs__grid,
  .umqs[class*="umqs--cruise-layout-"] .umqs__grid{
    width:100%!important;
    max-width:100%!important;
    grid-template-columns:1fr!important;
    align-items:stretch!important;
    justify-items:stretch!important;
  }

  .umqs-mobile-tabs .umqs .umqs__field,
  .umqs-mobile-tabs .umqs .umqs__field--wide,
  .umqs-mobile-tabs .umqs .umqs__field--airportcombo,
  .umqs-mobile-tabs .umqs .umqs__field--datecombo,
  .umqs-mobile-tabs .umqs [data-combobox="destination"],
  .umqs-mobile-tabs .umqs [data-combobox="airport"],
  .umqs-mobile-tabs .umqs [data-combobox="sunnycars-region"],
  .umqs-mobile-tabs .umqs [data-umqs-sunnycars-datecombo],
  .umqs-mobile-tabs .umqs [data-cruise-combobox="region"],
  .umqs-mobile-tabs .umqs.umqs--provider-sunnycars .umqs__field--datecombo,
  .umqs.umqs--ultra .umqs__field,
  .umqs.umqs--ultra .umqs__field--wide,
  .umqs.umqs--ultra .umqs__field--airportcombo,
  .umqs.umqs--ultra .umqs__field--datecombo,
  .umqs.umqs--ultra [data-combobox="destination"],
  .umqs.umqs--ultra [data-combobox="airport"],
  .umqs.umqs--ultra [data-combobox="sunnycars-region"],
  .umqs.umqs--ultra [data-umqs-sunnycars-datecombo],
  .umqs[class*="umqs--cruise-layout-"] .umqs__field{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    grid-column:1/-1!important;
  }

  .umqs-mobile-tabs .umqs .umqs__field > input,
  .umqs-mobile-tabs .umqs .umqs__field > select,
  .umqs-mobile-tabs .umqs .umqs__field > textarea,
  .umqs-mobile-tabs .umqs .umqs__field > button,
  .umqs-mobile-tabs .umqs .umqs__selectlike,
  .umqs-mobile-tabs .umqs .umqs__stepper,
  .umqs.umqs--ultra .umqs__field > input,
  .umqs.umqs--ultra .umqs__field > select,
  .umqs.umqs--ultra .umqs__field > textarea,
  .umqs.umqs--ultra .umqs__field > button,
  .umqs.umqs--ultra .umqs__selectlike,
  .umqs.umqs--ultra .umqs__stepper,
  .umqs[class*="umqs--cruise-layout-"] .umqs__field > input,
  .umqs[class*="umqs--cruise-layout-"] .umqs__field > select,
  .umqs[class*="umqs--cruise-layout-"] .umqs__field > textarea,
  .umqs[class*="umqs--cruise-layout-"] .umqs__field > button,
  .umqs[class*="umqs--cruise-layout-"] .umqs__selectlike,
  .umqs[class*="umqs--cruise-layout-"] .umqs__stepper{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex-basis:auto!important;
  }

  .umqs-mobile-tabs .umqs__popover,
  .umqs-mobile-tabs .umqs__airport-popover,
  .umqs-mobile-tabs [data-umqs-date-popover],
  .umqs-mobile-tabs [data-umqs-sunnycars-date-popover],
  .umqs-mobile-tabs [data-umqs-travellers-popover],
  .umqs-mobile-tabs .umqs__duration-popover,
  .umqs-mobile-tabs .umqs__suggestions,
  .umqs.umqs--ultra .umqs__popover,
  .umqs.umqs--ultra .umqs__airport-popover,
  .umqs.umqs--ultra [data-umqs-date-popover],
  .umqs.umqs--ultra [data-umqs-sunnycars-date-popover],
  .umqs.umqs--ultra [data-umqs-travellers-popover],
  .umqs.umqs--ultra .umqs__duration-popover,
  .umqs.umqs--ultra .umqs__suggestions{
    position:absolute!important;
    z-index:2147483000!important;
    top:calc(100% + 8px)!important;
    bottom:auto!important;
    left:0!important;
    right:auto!important;
    width:min(640px, calc(100vw - 32px))!important;
    min-width:0!important;
    max-width:calc(100vw - 32px)!important;
    max-height:min(68vh, 560px)!important;
    overflow:auto!important;
    border-radius:18px!important;
    transform:none!important;
  }

  .umqs-mobile-tabs .umqs__suggestions,
  .umqs.umqs--ultra .umqs__suggestions{
    width:100%!important;
    max-width:100%!important;
  }

  .umqs-mobile-tabs .umqs__field--durationcombo .umqs__popover,
  .umqs-mobile-tabs .umqs__field--travellerscombo .umqs__popover,
  .umqs-mobile-tabs .umqs__field--durationcombo .umqs__duration-popover,
  .umqs-mobile-tabs .umqs__field--travellerscombo [data-umqs-travellers-popover],
  .umqs.umqs--ultra .umqs__field--durationcombo .umqs__popover,
  .umqs.umqs--ultra .umqs__field--travellerscombo .umqs__popover,
  .umqs.umqs--ultra .umqs__field--durationcombo .umqs__duration-popover,
  .umqs.umqs--ultra .umqs__field--travellerscombo [data-umqs-travellers-popover]{
    left:auto!important;
    right:0!important;
  }
}

@media(max-width:680px){
  .umqs-mobile-tabs .umqs .umqs__grid,
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--compact .umqs__grid,
  .umqs[class*="umqs--cruise-layout-"] .umqs__grid{
    grid-template-columns:1fr!important;
  }

  .umqs-mobile-tabs .umqs .umqs__field--durationcombo,
  .umqs-mobile-tabs .umqs .umqs__field--travellerscombo,
  .umqs-mobile-tabs .umqs--provider-sunnycars .umqs__field:not(.umqs__field--wide):not(.umqs__field--datecombo),
  .umqs.umqs--ultra .umqs__field--durationcombo,
  .umqs.umqs--ultra .umqs__field--travellerscombo{
    width:100%!important;
    max-width:100%!important;
    grid-column:1/-1!important;
  }

  .umqs-mobile-tabs .umqs__popover,
  .umqs-mobile-tabs .umqs__airport-popover,
  .umqs-mobile-tabs [data-umqs-date-popover],
  .umqs-mobile-tabs [data-umqs-sunnycars-date-popover],
  .umqs-mobile-tabs [data-umqs-travellers-popover],
  .umqs-mobile-tabs .umqs__duration-popover,
  .umqs.umqs--ultra .umqs__popover,
  .umqs.umqs--ultra .umqs__airport-popover,
  .umqs.umqs--ultra [data-umqs-date-popover],
  .umqs.umqs--ultra [data-umqs-sunnycars-date-popover],
  .umqs.umqs--ultra [data-umqs-travellers-popover],
  .umqs.umqs--ultra .umqs__duration-popover{
    width:100%!important;
    max-width:100%!important;
    left:0!important;
    right:auto!important;
  }
}

/* v2.3.1ao layout lock
   Keeps the portal look stable on desktop and switches deliberately to mobile below tablet width. */
@media(min-width:1181px){
  .umqs-mobile-tabs .umqs,
  .umqs.umqs--ultra,
  .umqs.umqs--compact,
  .umqs[class*="umqs--cruise-layout-"]{
    width:100%!important;
    max-width:none!important;
    padding:22px!important;
  }

  .umqs-mobile-tabs .umqs .umqs__grid,
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--compact .umqs__grid,
  .umqs[class*="umqs--cruise-layout-"] .umqs__grid{
    grid-auto-flow:row!important;
    grid-auto-columns:auto!important;
  }

  .umqs-mobile-tabs .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid,
  .umqs.umqs--ultra:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid,
  .umqs.umqs--compact:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid{
    grid-template-columns:minmax(280px,1.6fr) minmax(190px,1.05fr) minmax(210px,1.08fr) minmax(160px,.82fr) minmax(190px,.95fr)!important;
    gap:8px!important;
  }

  .umqs-mobile-tabs .umqs.umqs--type-nh:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid,
  .umqs.umqs--ultra.umqs--type-nh:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid,
  .umqs.umqs--compact.umqs--type-nh:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid{
    grid-template-columns:minmax(360px,1.75fr) minmax(230px,1.05fr) minmax(170px,.82fr) minmax(210px,.95fr)!important;
  }

  .umqs-mobile-tabs .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__field,
  .umqs.umqs--ultra:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__field,
  .umqs.umqs--compact:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__field{
    grid-column:auto!important;
    min-width:0!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-cruise .umqs__grid,
  .umqs-mobile-tabs .umqs.umqs--provider-expedition .umqs__grid,
  .umqs.umqs--provider-cruise .umqs__grid,
  .umqs.umqs--provider-expedition .umqs__grid{
    grid-template-columns:280px 280px 72px minmax(300px,1fr) 270px 210px 250px!important;
    gap:12px!important;
    align-items:end!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-cruise [data-cruise-combobox="red"],
  .umqs-mobile-tabs .umqs.umqs--provider-expedition [data-cruise-combobox="red"],
  .umqs.umqs--provider-cruise [data-cruise-combobox="red"],
  .umqs.umqs--provider-expedition [data-cruise-combobox="red"]{
    grid-column:1!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-cruise [data-cruise-combobox="shipid"],
  .umqs-mobile-tabs .umqs.umqs--provider-expedition [data-cruise-combobox="shipid"],
  .umqs.umqs--provider-cruise [data-cruise-combobox="shipid"],
  .umqs.umqs--provider-expedition [data-cruise-combobox="shipid"]{
    grid-column:2!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-cruise .umqs__cruise-separator,
  .umqs-mobile-tabs .umqs.umqs--provider-expedition .umqs__cruise-separator,
  .umqs.umqs--provider-cruise .umqs__cruise-separator,
  .umqs.umqs--provider-expedition .umqs__cruise-separator{
    grid-column:3!important;
    align-self:end!important;
    width:72px!important;
    min-width:72px!important;
    height:58px!important;
    margin:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-cruise [data-cruise-combobox="region"],
  .umqs-mobile-tabs .umqs.umqs--provider-expedition [data-cruise-combobox="region"],
  .umqs.umqs--provider-cruise [data-cruise-combobox="region"],
  .umqs.umqs--provider-expedition [data-cruise-combobox="region"]{
    grid-column:4!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-cruise .umqs__field--datecombo,
  .umqs-mobile-tabs .umqs.umqs--provider-expedition .umqs__field--datecombo,
  .umqs.umqs--provider-cruise .umqs__field--datecombo,
  .umqs.umqs--provider-expedition .umqs__field--datecombo{
    grid-column:5!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-cruise .umqs__field--durationcombo,
  .umqs-mobile-tabs .umqs.umqs--provider-expedition .umqs__field--durationcombo,
  .umqs.umqs--provider-cruise .umqs__field--durationcombo,
  .umqs.umqs--provider-expedition .umqs__field--durationcombo{
    grid-column:6!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-cruise .umqs__field--travellerscombo,
  .umqs-mobile-tabs .umqs.umqs--provider-expedition .umqs__field--travellerscombo,
  .umqs.umqs--provider-cruise .umqs__field--travellerscombo,
  .umqs.umqs--provider-expedition .umqs__field--travellerscombo{
    grid-column:7!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-cruise .umqs__field,
  .umqs-mobile-tabs .umqs.umqs--provider-expedition .umqs__field,
  .umqs.umqs--provider-cruise .umqs__field,
  .umqs.umqs--provider-expedition .umqs__field{
    min-width:0!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-sunnycars .umqs__grid,
  .umqs.umqs--provider-sunnycars .umqs__grid{
    grid-template-columns:minmax(420px,1.55fr) minmax(280px,1fr) 260px 260px!important;
    gap:12px!important;
    align-items:end!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-sunnycars [data-combobox="sunnycars-region"],
  .umqs.umqs--provider-sunnycars [data-combobox="sunnycars-region"]{
    grid-column:1!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-sunnycars .umqs__field--datecombo,
  .umqs.umqs--provider-sunnycars .umqs__field--datecombo{
    grid-column:2!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-sunnycars .umqs__field:has(input[name="pickupTime"]),
  .umqs.umqs--provider-sunnycars .umqs__field:has(input[name="pickupTime"]){
    grid-column:3!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-sunnycars .umqs__field:has(input[name="dropoffTime"]),
  .umqs.umqs--provider-sunnycars .umqs__field:has(input[name="dropoffTime"]){
    grid-column:4!important;
  }

  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select,
  .umqs-mobile-tabs .umqs textarea,
  .umqs-mobile-tabs .umqs .umqs__selectlike,
  .umqs-mobile-tabs .umqs .umqs__stepper,
  .umqs.umqs--ultra input,
  .umqs.umqs--ultra select,
  .umqs.umqs--ultra textarea,
  .umqs.umqs--ultra .umqs__selectlike,
  .umqs.umqs--ultra .umqs__stepper{
    width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

@media(max-width:1180px){
  .umqs-mobile-tabs .umqs,
  .umqs.umqs--ultra,
  .umqs.umqs--compact,
  .umqs[class*="umqs--cruise-layout-"]{
    padding:14px!important;
  }

  .umqs-mobile-tabs .umqs .umqs__grid,
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--compact .umqs__grid,
  .umqs[class*="umqs--cruise-layout-"] .umqs__grid,
  .umqs-mobile-tabs .umqs.umqs--provider-cruise .umqs__grid,
  .umqs-mobile-tabs .umqs.umqs--provider-expedition .umqs__grid,
  .umqs-mobile-tabs .umqs.umqs--provider-sunnycars .umqs__grid,
  .umqs.umqs--provider-cruise .umqs__grid,
  .umqs.umqs--provider-expedition .umqs__grid,
  .umqs.umqs--provider-sunnycars .umqs__grid{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .umqs-mobile-tabs .umqs .umqs__field,
  .umqs-mobile-tabs .umqs .umqs__field--wide,
  .umqs-mobile-tabs .umqs .umqs__field--airportcombo,
  .umqs-mobile-tabs .umqs .umqs__field--datecombo,
  .umqs-mobile-tabs .umqs .umqs__field--durationcombo,
  .umqs-mobile-tabs .umqs .umqs__field--travellerscombo,
  .umqs-mobile-tabs .umqs [data-cruise-combobox],
  .umqs.umqs--ultra .umqs__field,
  .umqs.umqs--ultra .umqs__field--wide,
  .umqs[class*="umqs--cruise-layout-"] .umqs__field{
    grid-column:1/-1!important;
  }

  .umqs-mobile-tabs .umqs .umqs__cruise-separator,
  .umqs.umqs--provider-cruise .umqs__cruise-separator,
  .umqs.umqs--provider-expedition .umqs__cruise-separator{
    grid-column:1/-1!important;
    width:100%!important;
    height:auto!important;
    margin:2px 0!important;
  }
}

@media(max-width:380px){
  .umqs.umqs--ultra .umqs__tabs span{
    font-size:11px;
    padding-left:4px;
    padding-right:4px;
  }
}

/* v2.3.1g – Destination-Typ in Autosuggestion */
.umqs__suggestions button small{
  display:inline-flex;
  align-items:center;
  flex:0 0 auto;
  padding:3px 8px;
  border-radius:999px;
  background:color-mix(in srgb,var(--umqs-accent,#0057ff) 7%,white);
  color:var(--umqs-muted,#64748b);
  font-size:11px;
  font-weight:800;
}

/* v2.3.1h – sichtbare Typ-Kennzeichnung in der Autosuggestion */
.umqs__suggestions button{
  align-items:center;
}
.umqs__suggestion-type{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-width:54px;
  padding:3px 8px;
  border-radius:999px;
  background:color-mix(in srgb,var(--umqs-accent,#0057ff) 9%,white);
  color:var(--umqs-muted,#64748b);
  font-size:11px;
  line-height:1;
  font-weight:800;
  font-style:normal;
  white-space:nowrap;
}


/* v2.3.1ac – mobile Popup- und KI-Optimierungen */
.umqs__stepper button{
  line-height:1;
}

@media(max-width:680px){
  .umqs.umqs--ultra .umqs__popover{
    position:fixed;
    left:12px!important;
    right:12px!important;
    top:72px!important;
    bottom:auto!important;
    max-height:calc(100vh - 96px);
    overflow:auto;
    padding:12px;
    border-radius:14px;
  }

  .umqs.umqs--ultra .umqs__popover .umqs__stepper{
    height:40px;
    min-height:40px;
    gap:6px;
    padding:0 6px;
    overflow:hidden;
  }

  .umqs.umqs--ultra .umqs__popover .umqs__stepper button{
    width:30px;
    height:30px;
    min-width:30px;
    flex:0 0 30px;
    padding:0;
    font-size:18px;
    line-height:28px;
    border-radius:9px;
  }

  .umqs.umqs--ultra .umqs__popover .umqs__stepper strong{
    font-size:14px;
    min-width:20px;
  }

  .umqs__ai textarea,
  .umqs.umqs--ultra .umqs__ai textarea{
    font-size:14px;
    line-height:1.35;
  }

  .umqs__ai textarea::placeholder{
    font-size:13px;
    line-height:1.35;
  }
}

@media(max-width:420px){
  .umqs__ai textarea,
  .umqs.umqs--ultra .umqs__ai textarea{
    font-size:13px;
  }
  .umqs__ai textarea::placeholder{
    font-size:12px;
  }
}


/* v2.3.1ad – Zeitraum-Kalender und mobile Popup-Optimierung */
.umqs.umqs--ultra .umqs__date-native-hidden,
.umqs.umqs--ultra .umqs__native-select-hidden{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
  overflow:hidden!important;
}

.umqs.umqs--ultra .umqs__field--durationcombo{position:relative;}

.umqs__calendar{
  width:min(100%,340px);
}
.umqs__calendar-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:10px;
}
.umqs__calendar-head strong{
  font-size:14px;
  font-weight:900;
  text-transform:capitalize;
}
.umqs__calendar-head button{
  width:32px;
  height:32px;
  border:1px solid var(--umqs-border,#d8e1ec);
  background:var(--umqs-field-bg,#fff);
  border-radius:10px;
  font-size:20px;
  line-height:1;
  cursor:pointer;
}
.umqs__calendar-week,
.umqs__calendar-days{
  display:grid;
  grid-template-columns:repeat(7,1fr);
  gap:4px;
}
.umqs__calendar-week span{
  text-align:center;
  font-size:11px;
  font-weight:800;
  color:var(--umqs-muted,#64748b);
}
.umqs__calendar-days span,
.umqs__calendar-days button{
  height:34px;
}
.umqs__calendar-days button{
  border:0;
  border-radius:10px;
  background:transparent;
  font-size:13px;
  font-weight:800;
  color:var(--umqs-text,#111827);
  cursor:pointer;
}
.umqs__calendar-days button:hover{
  background:color-mix(in srgb,var(--umqs-accent,#0057ff) 10%,white);
}
.umqs__calendar-days button.is-range{
  background:color-mix(in srgb,var(--umqs-accent,#0057ff) 9%,white);
}
.umqs__calendar-days button.is-start,
.umqs__calendar-days button.is-end{
  background:var(--umqs-accent,#0057ff);
  color:var(--umqs-button-text,#fff);
}
.umqs__calendar-days button.is-disabled{
  opacity:.35;
  cursor:not-allowed;
}
.umqs__calendar-help{
  margin-top:10px;
  font-size:12px;
  line-height:1.35;
  color:var(--umqs-muted,#64748b);
}

.umqs__option-list{
  display:grid;
  gap:7px;
}
.umqs__option-button{
  width:100%;
  min-height:38px;
  padding:9px 11px;
  border:1px solid var(--umqs-border,#d8e1ec);
  border-radius:11px;
  background:var(--umqs-field-bg,#fff);
  color:var(--umqs-text,#111827);
  font-size:13px;
  font-weight:800;
  text-align:left;
  cursor:pointer;
}
.umqs__option-button:hover,
.umqs__option-button.is-selected{
  border-color:var(--umqs-accent,#0057ff);
  background:color-mix(in srgb,var(--umqs-accent,#0057ff) 9%,white);
  color:var(--umqs-accent,#0057ff);
}

.umqs.umqs--ultra .umqs__popover-grid--dates{
  display:block;
}

@media(max-width:680px){
  .umqs.umqs--ultra .umqs__popover{
    position:absolute!important;
    left:0!important;
    right:auto!important;
    top:calc(100% + 8px)!important;
    bottom:auto!important;
    width:min(92vw,360px);
    min-width:0;
    max-height:58vh;
    overflow:auto;
    padding:12px;
    z-index:1000;
  }
  .umqs.umqs--ultra .umqs__field--travellerscombo .umqs__popover,
  .umqs.umqs--ultra .umqs__field--durationcombo .umqs__popover{
    left:0!important;
    right:auto!important;
  }
  .umqs__calendar{
    width:100%;
  }
  .umqs__calendar-days span,
  .umqs__calendar-days button{
    height:32px;
  }
  .umqs__calendar-days button,
  .umqs__option-button{
    font-size:13px;
  }
}


/* v2.3.1ae – Kalender-Popup erst nach zweitem Datum schließen + Viewport-Schutz */
@media(max-width:680px){
  .umqs.umqs--ultra .umqs__popover{
    left:0!important;
    right:auto!important;
    width:min(92vw,360px);
    max-width:calc(100vw - 24px);
    transform:none;
  }

  .umqs.umqs--ultra .umqs__popover.umqs__popover--align-right{
    left:auto!important;
    right:0!important;
  }

  .umqs__calendar{
    width:100%;
  }

  .umqs__calendar-days button{
    height:36px;
  }
}


/* v2.3.1af – Abflughafen-Popup mit Mehrfachauswahl */
.umqs__field--airportcombo{position:relative;}
.umqs__airport-actions{
  display:flex;
  justify-content:flex-end;
  margin:-2px 0 8px;
}
.umqs__airport-actions button{
  border:0;
  background:transparent;
  color:var(--umqs-accent,#0057ff);
  font-size:12px;
  font-weight:900;
  cursor:pointer;
  padding:4px 0;
}
.umqs__airport-list{
  display:grid;
  gap:6px;
  max-height:300px;
  overflow:auto;
  padding-right:2px;
}
.umqs__airport-option{
  display:flex!important;
  align-items:center;
  gap:9px;
  margin:0!important;
  padding:9px 10px;
  border:1px solid var(--umqs-border,#d8e1ec);
  border-radius:11px;
  background:var(--umqs-field-bg,#fff);
  cursor:pointer;
}
.umqs__airport-option:hover{
  background:color-mix(in srgb,var(--umqs-accent,#0057ff) 7%,white);
}
.umqs__airport-option input{
  width:18px!important;
  height:18px!important;
  min-width:18px;
  margin:0;
  accent-color:var(--umqs-accent,#0057ff);
}
.umqs__airport-option span{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  width:100%;
  min-width:0;
}
.umqs__airport-option strong{
  font-size:13px;
  line-height:1.2;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.umqs__airport-option small{
  color:var(--umqs-muted,#64748b);
  font-size:11px;
  font-weight:900;
}

.umqs.umqs--ultra .umqs__airport-popover{
  min-width:320px;
}

@media(max-width:680px){
  .umqs.umqs--ultra .umqs__airport-popover,
  .umqs__airport-popover{
    width:min(92vw,360px);
    max-width:calc(100vw - 24px);
  }
  .umqs__airport-list{
    max-height:44vh;
  }
  .umqs__airport-option{
    padding:8px 9px;
  }
  .umqs__airport-option strong{
    font-size:13px;
  }
}


/* v2.3.1ah – mobile Popups mittig und innerhalb des Viewports */
@media(max-width:680px){
  .umqs.umqs--ultra .umqs__popover,
  .umqs.umqs--ultra .umqs__airport-popover,
  .umqs.umqs--ultra .umqs__duration-popover{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    top:50%!important;
    bottom:auto!important;
    transform:translate(-50%,-50%)!important;

    width:min(92vw,380px)!important;
    max-width:calc(100vw - 24px)!important;
    max-height:calc(100vh - 48px)!important;

    overflow:auto!important;
    min-width:0!important;
    box-sizing:border-box!important;
    z-index:10000!important;
  }

  .umqs.umqs--ultra .umqs__popover.umqs__popover--align-right{
    left:50%!important;
    right:auto!important;
    transform:translate(-50%,-50%)!important;
  }

  .umqs.umqs--ultra .umqs__calendar,
  .umqs.umqs--ultra .umqs__airport-list,
  .umqs.umqs--ultra .umqs__option-list{
    width:100%;
    max-width:100%;
  }

  .umqs.umqs--ultra .umqs__airport-list{
    max-height:calc(100vh - 180px);
  }

  .umqs.umqs--ultra .umqs__popover-title{
    font-size:14px;
    line-height:1.25;
  }

  .umqs.umqs--ultra .umqs__calendar-days button{
    height:34px;
  }
}

.umqs{
  max-width:100%;
}


/* v2.3.1ai – KI-Tab mit Icon und Farbverlauf */
.umqs__tabs .umqs__tab-ai span{
  gap:7px;
}
.umqs__tabs .umqs__tab-ai span em{
  font-style:normal;
}
.umqs__ai-tab-icon{
  width:17px;
  height:17px;
  flex:0 0 17px;
  display:inline-block;
  fill:currentColor;
}
.umqs__tabs .umqs__tab-ai.is-gradient span{
  position:relative;
  border-color:color-mix(in srgb,var(--umqs-ai-grad-1,#0057ff) 35%,var(--umqs-ai-grad-2,#ff4fd8));
  background:
    linear-gradient(var(--umqs-field-bg,#fff),var(--umqs-field-bg,#fff)) padding-box,
    linear-gradient(135deg,var(--umqs-ai-grad-1,#0057ff),var(--umqs-ai-grad-2,#ff4fd8)) border-box;
  color:var(--umqs-text,#334155);
  overflow:hidden;
}
.umqs__tabs .umqs__tab-ai.is-gradient span:before{
  content:'';
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,var(--umqs-ai-grad-1,#0057ff),var(--umqs-ai-grad-2,#ff4fd8));
  opacity:.09;
  pointer-events:none;
}
.umqs__tabs .umqs__tab-ai.is-gradient span > *{
  position:relative;
  z-index:1;
}
.umqs__tabs .umqs__tab-ai.is-gradient input:checked+span{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,var(--umqs-ai-grad-1,#0057ff),var(--umqs-ai-grad-2,#ff4fd8));
  box-shadow:0 12px 24px color-mix(in srgb,var(--umqs-ai-grad-1,#0057ff) 25%,transparent);
}
.umqs__tabs .umqs__tab-ai.is-gradient input:checked+span:before{
  opacity:0;
}
.umqs__tabs .umqs__tab-ai.is-gradient input:not(:checked)+span em{
  background:linear-gradient(135deg,var(--umqs-ai-grad-1,#0057ff),var(--umqs-ai-grad-2,#ff4fd8));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  font-weight:900;
}
.umqs__tabs .umqs__tab-ai.is-gradient input:not(:checked)+span .umqs__ai-tab-icon{
  color:var(--umqs-ai-grad-1,#0057ff);
}

@media(max-width:680px){
  .umqs__ai-tab-icon{
    width:15px;
    height:15px;
    flex-basis:15px;
  }
  .umqs.umqs--ultra .umqs__tabs .umqs__tab-ai span{
    gap:5px;
  }
}


/* v2.3.1aj – komplette KI-Farbwelt */
.umqs__ai.is-ai-gradient{
  position:relative;
  border:1px solid transparent;
  background:
    linear-gradient(135deg,var(--umqs-ai-panel-bg-1,#f5f8ff),var(--umqs-ai-panel-bg-2,#fff1fb)) padding-box,
    linear-gradient(135deg,var(--umqs-ai-panel-border-1,#0057ff),var(--umqs-ai-panel-border-2,#ff4fd8)) border-box;
  box-shadow:0 18px 45px color-mix(in srgb,var(--umqs-ai-panel-border-1,#0057ff) 12%,transparent);
}
.umqs__ai.is-ai-gradient textarea{
  border-color:color-mix(in srgb,var(--umqs-ai-panel-border-1,#0057ff) 22%,var(--umqs-border,#d8e1ec));
  background:color-mix(in srgb,var(--umqs-field-bg,#fff) 88%,white);
}
.umqs__ai.is-ai-gradient textarea:focus{
  border-color:var(--umqs-ai-panel-border-1,#0057ff);
  box-shadow:0 0 0 4px color-mix(in srgb,var(--umqs-ai-panel-border-2,#ff4fd8) 14%,transparent);
}
.umqs__button--ai.is-ai-gradient{
  background:linear-gradient(135deg,var(--umqs-ai-button-1,#0057ff),var(--umqs-ai-button-2,#ff4fd8))!important;
  color:var(--umqs-ai-button-text,#fff)!important;
  box-shadow:0 14px 30px color-mix(in srgb,var(--umqs-ai-button-1,#0057ff) 30%,transparent)!important;
}
.umqs__button--ai.is-ai-gradient:hover{
  filter:brightness(.98) saturate(1.05);
}


/* v2.3.1ak – Mobile Popups einheitlich mittig, kompakter Flughafen-Scroller, hoher z-index */
.umqs .umqs__popover,
.umqs .umqs__suggestions{
  z-index:9999!important;
}

@media(max-width:680px){
  .umqs.umqs--ultra .umqs__popover,
  .umqs.umqs--ultra .umqs__airport-popover,
  .umqs.umqs--ultra .umqs__duration-popover,
  .umqs.umqs--ultra [data-umqs-travellers-popover],
  .umqs.umqs--ultra [data-umqs-date-popover]{
    position:fixed!important;
    left:50%!important;
    right:auto!important;
    top:50%!important;
    bottom:auto!important;
    transform:translate(-50%,-50%)!important;
    width:min(92vw,380px)!important;
    max-width:calc(100vw - 24px)!important;
    max-height:calc(100vh - 48px)!important;
    overflow:auto!important;
    min-width:0!important;
    box-sizing:border-box!important;
    z-index:9999!important;
  }

  .umqs.umqs--ultra .umqs__popover.umqs__popover--align-right{
    left:50%!important;
    right:auto!important;
    transform:translate(-50%,-50%)!important;
  }

  .umqs.umqs--ultra .umqs__duration-popover,
  .umqs.umqs--ultra [data-umqs-travellers-popover]{
    max-height:min(62vh,460px)!important;
  }

  .umqs.umqs--ultra .umqs__airport-popover{
    max-height:50vh!important;
  }

  .umqs.umqs--ultra .umqs__airport-list{
    max-height:calc(50vh - 92px)!important;
    overflow-y:auto!important;
    padding-right:4px;
    scrollbar-width:thin;
  }

  .umqs.umqs--ultra .umqs__airport-list::-webkit-scrollbar{
    width:6px;
  }
  .umqs.umqs--ultra .umqs__airport-list::-webkit-scrollbar-thumb{
    background:color-mix(in srgb,var(--umqs-accent,#0057ff) 35%,#cbd5e1);
    border-radius:999px;
  }

  .umqs.umqs--ultra .umqs__calendar,
  .umqs.umqs--ultra .umqs__option-list,
  .umqs.umqs--ultra .umqs__airport-list{
    width:100%!important;
    max-width:100%!important;
  }
}


/* v2.3.1al – Reisende/Reisedauer garantiert mittig */
@media(max-width:680px){

  .umqs.umqs--ultra [data-umqs-travellers-popover],
  .umqs.umqs--ultra .umqs__duration-popover{
    position:fixed !important;
    left:12px !important;
    right:12px !important;
    top:50% !important;
    bottom:auto !important;

    width:auto !important;
    min-width:0 !important;
    max-width:none !important;

    transform:translateY(-50%) !important;
    margin:0 !important;

    z-index:9999 !important;
    overflow:auto !important;
    box-sizing:border-box !important;
  }

  .umqs.umqs--ultra [data-umqs-travellers-popover] *,
  .umqs.umqs--ultra .umqs__duration-popover *{
    max-width:100%;
  }
}


/* v2.3.1am – Container Hintergrund optional */
.umqs.no-container-bg{
  background:transparent !important;
  box-shadow:none !important;
}

.umqs.has-container-bg{
  background:var(--umqs-surface,#fff);
}


/* v2.3.1an – optionaler .umqs Container-Hintergrund */
.umqs.no-container-bg{
  background:transparent!important;
  box-shadow:none!important;
}
.umqs.has-container-bg{
  background:var(--umqs-surface,#fff);
}


/* v13 – TT-Destination-Suggest im Stil des Quick-Travel-Search-Plugins */
.umqs__suggestions .tt-suggestion,
.umqs__suggestions .umqs__destination-suggestion{
  padding:8px 10px!important;
  border-radius:4px!important;
}
.umqs__suggestions .tt-suggestion:hover,
.umqs__suggestions .umqs__destination-suggestion:hover{
  background-color:#ffcfa2!important;
}
.umqs__suggestions .destinationSuggestionType{
  margin-left:auto;
  color:var(--umqs-muted,#64748b);
  font-size:12px;
  font-weight:700;
}

/* v2.3.1ao-tt-cruise-v18 – reduziertes Schiff-Showcase ohne Hintergrund, Text rechts */
.umqs__cruise-ship-stage{
  position:relative;
  margin:28px 0 0;
  min-height:260px;
  overflow:visible;
  display:block;
  border-radius:0;
  background:transparent!important;
  box-shadow:none!important;
}
.umqs__cruise-ship-stage[hidden]{display:none!important;}
.umqs__cruise-ship-stage:before{display:none!important;}
.umqs__cruise-ship-card{
  position:relative;
  z-index:1;
  width:100%;
  min-height:260px;
  display:grid;
  grid-template-columns:minmax(320px,58%) minmax(240px,1fr);
  align-items:center;
  gap:clamp(18px,4vw,54px);
  transform:translateX(-120vw);
  opacity:0;
  will-change:transform,opacity;
  background:transparent!important;
  box-shadow:none!important;
}
.umqs__cruise-ship-card.is-sailing-in{
  animation:umqsCruiseShipSailInClean 1.05s cubic-bezier(.16,1,.3,1) forwards;
}
@keyframes umqsCruiseShipSailInClean{
  0%{transform:translateX(-120vw) scale(.98);opacity:0;}
  72%{transform:translateX(2.5%) scale(1.01);opacity:1;}
  100%{transform:translateX(0) scale(1);opacity:1;}
}
.umqs__cruise-ship-water{display:none!important;}
.umqs__cruise-ship-visual{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  height:auto;
  min-height:250px;
  display:flex;
  justify-content:flex-start;
  align-items:center;
  overflow:visible;
}
.umqs__cruise-ship-visual img{
  display:block;
  width:100%;
  max-width:min(760px,62vw);
  max-height:360px;
  object-fit:contain;
  object-position:left center;
  filter:drop-shadow(0 24px 20px rgba(15,23,42,.18));
}
.umqs__cruise-ship-card.has-real-ship-image .umqs__cruise-ship-svg{display:none!important;}
.umqs__cruise-ship-svg{
  width:100%;
  max-width:min(720px,62vw);
  height:auto;
  overflow:visible;
  filter:drop-shadow(0 24px 20px rgba(15,23,42,.18));
}
.umqs__cruise-hull{fill:color-mix(in srgb,var(--umqs-accent,#006d9c) 22%,#ffffff);}
.umqs__cruise-hull-line{fill:color-mix(in srgb,var(--umqs-accent,#006d9c) 65%,#0f172a);opacity:.95;}
.umqs__cruise-deck{fill:#ffffff;stroke:rgba(15,23,42,.14);stroke-width:2;}
.umqs__cruise-funnel{fill:var(--umqs-accent,#006d9c);}
.umqs__cruise-funnel-top{fill:var(--umqs-accent-2,#00b8d9);}
.umqs__cruise-windows path{stroke:color-mix(in srgb,var(--umqs-accent,#006d9c) 75%,#0f172a);stroke-width:10;stroke-linecap:round;}
.umqs__cruise-bow{fill:rgba(255,255,255,.26);}
.umqs__cruise-shadow,.umqs__cruise-smoke{display:none;}
.umqs__cruise-ship-meta{
  position:relative;
  left:auto;
  right:auto;
  bottom:auto;
  z-index:2;
  display:flex;
  flex-direction:column;
  gap:7px;
  padding:0;
  border-radius:0;
  background:transparent!important;
  backdrop-filter:none;
  box-shadow:none!important;
  color:var(--umqs-text,#0f172a);
  text-align:left;
  align-self:center;
  max-width:420px;
}
.umqs__cruise-ship-meta span{
  display:inline-flex;
  width:max-content;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.13em;
  color:var(--umqs-accent,#006d9c);
  padding:0 0 8px;
  border-bottom:2px solid color-mix(in srgb,var(--umqs-accent,#006d9c) 34%,transparent);
}
.umqs__cruise-ship-meta strong{
  font-size:clamp(34px,4.6vw,64px);
  line-height:.98;
  letter-spacing:-.045em;
  color:var(--umqs-text,#0f172a);
  text-shadow:0 1px 0 rgba(255,255,255,.45);
}
.umqs__cruise-ship-meta em{
  font-style:normal;
  font-size:clamp(16px,1.55vw,22px);
  font-weight:900;
  color:var(--umqs-accent,#006d9c);
}
.umqs__cruise-ship-meta:after{
  content:"";
  width:120px;
  height:4px;
  border-radius:999px;
  margin-top:10px;
  background:linear-gradient(90deg,var(--umqs-accent,#006d9c),var(--umqs-accent-2,#00b8d9));
}
@media(max-width:900px){
  .umqs__cruise-ship-card{
    grid-template-columns:1fr;
    gap:10px;
    min-height:0;
  }
  .umqs__cruise-ship-visual{
    min-height:190px;
    justify-content:center;
  }
  .umqs__cruise-ship-visual img,
  .umqs__cruise-ship-svg{
    max-width:100%;
    max-height:260px;
    object-position:center center;
  }
  .umqs__cruise-ship-meta{
    text-align:center;
    align-items:center;
    max-width:none;
  }
}
@media(max-width:600px){
  .umqs__cruise-ship-stage{margin-top:18px;min-height:0;}
  .umqs__cruise-ship-card{transform:translateX(-115vw);}
  .umqs__cruise-ship-visual{min-height:150px;}
  .umqs__cruise-ship-visual img,
  .umqs__cruise-ship-svg{max-height:205px;}
  .umqs__cruise-ship-meta span{font-size:10px;}
  .umqs__cruise-ship-meta strong{font-size:clamp(28px,12vw,44px);}
  .umqs__cruise-ship-meta em{font-size:15px;}
}

/* v2.3.1ao-tt-cruise-v19 – Kreuzfahrt Darstellungsvariante 2: Hero mit großem Schiff rechts */
.umqs.umqs--cruise-layout-hero{
  position:relative;
  overflow:hidden;
  padding:clamp(28px,4.8vw,72px) clamp(18px,4vw,58px) clamp(24px,4vw,56px)!important;
  border-radius:0!important;
  background:
    radial-gradient(circle at 32% 28%, rgba(255,255,255,.22), transparent 27%),
    linear-gradient(90deg, rgba(3,18,38,.96) 0%, rgba(10,25,42,.78) 48%, rgba(3,18,38,.96) 100%)!important;
  color:#fff!important;
  box-shadow:none!important;
  min-height:clamp(560px,58vw,760px);
}
.umqs.umqs--cruise-layout-hero:before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.06) 1px, transparent 1px) 0 0/74px 100%,
    radial-gradient(circle at 22% 54%, rgba(255,255,255,.25), transparent 28%);
  opacity:.45;
}
.umqs.umqs--cruise-layout-hero .umqs__header{
  position:relative;
  z-index:5;
  max-width:min(520px,47%);
  margin:clamp(44px,6vw,88px) 0 28px;
  color:#fff!important;
}
.umqs.umqs--cruise-layout-hero .umqs__header h2{
  color:#fff!important;
  font-size:clamp(42px,5.1vw,78px);
  line-height:.95;
  text-transform:uppercase;
  letter-spacing:-.05em;
  text-shadow:0 2px 0 #08214a, 0 0 18px rgba(255,255,255,.33);
}
.umqs.umqs--cruise-layout-hero .umqs__header p{
  color:rgba(235,245,255,.86)!important;
  font-size:clamp(16px,1.35vw,21px);
  text-shadow:0 1px 2px rgba(0,0,0,.45);
}
.umqs.umqs--cruise-layout-hero .umqs__form{
  position:relative;
  z-index:8;
  max-width:min(620px,44vw);
  margin:0;
  background:#fff!important;
  color:#071b3a!important;
  border-radius:0!important;
  border:1px solid rgba(255,255,255,.72)!important;
  box-shadow:0 22px 70px rgba(0,0,0,.34)!important;
  overflow:visible;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs{
  margin:0!important;
  transform:translateY(-100%);
  position:absolute;
  left:0;
  top:0;
  gap:10px;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs label span{
  background:rgba(255,255,255,.76)!important;
  color:#12304f!important;
  border:1px solid rgba(255,255,255,.58)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
  border-radius:8px 8px 0 0!important;
  text-transform:uppercase;
  letter-spacing:.02em;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs input:checked+span{
  background:#082a56!important;
  color:#fff!important;
}
.umqs.umqs--cruise-layout-hero .umqs__grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:0!important;
  border:0!important;
}
.umqs.umqs--cruise-layout-hero .umqs__field{
  min-width:0!important;
  padding:18px 20px!important;
  border:0!important;
  border-right:1px solid #dbe5ef!important;
  border-bottom:1px solid #dbe5ef!important;
  background:#fff!important;
  border-radius:0!important;
}
.umqs.umqs--cruise-layout-hero .umqs__field label{
  color:#071b3a!important;
  font-size:15px!important;
  font-weight:800!important;
}
.umqs.umqs--cruise-layout-hero .umqs__field input,
.umqs.umqs--cruise-layout-hero .umqs__field select,
.umqs.umqs--cruise-layout-hero .umqs__selectlike{
  color:#071b3a!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  padding-left:0!important;
}
.umqs.umqs--cruise-layout-hero .umqs__button{
  width:100%;
  border-radius:0!important;
  min-height:62px;
  background:linear-gradient(135deg,var(--umqs-accent,#006d9c),var(--umqs-accent-2,#00b8d9))!important;
}
.umqs.umqs--cruise-layout-hero .umqs__ai{
  position:relative;
  z-index:9;
  max-width:min(620px,44vw);
  margin-top:16px!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage{
  position:absolute;
  z-index:4;
  right:clamp(18px,4vw,70px);
  left:clamp(380px,39vw,660px);
  bottom:clamp(42px,5vw,86px);
  margin:0!important;
  min-height:0!important;
  overflow:visible;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{
  min-height:0!important;
  width:100%;
  display:grid;
  grid-template-columns:minmax(420px,1fr) minmax(180px,280px);
  gap:clamp(10px,2.1vw,34px);
  align-items:center;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual{
  min-height:0!important;
  justify-content:flex-start;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{
  max-width:min(760px,54vw)!important;
  max-height:clamp(290px,34vw,520px)!important;
  filter:drop-shadow(0 28px 28px rgba(0,0,0,.38));
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{
  color:#fff!important;
  text-align:left;
  align-items:flex-start;
  text-shadow:0 2px 8px rgba(0,0,0,.42);
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta span{
  display:none!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta strong{
  color:#fff!important;
  font-size:clamp(34px,4.2vw,62px)!important;
  text-shadow:0 2px 0 #09234a, 0 0 12px rgba(255,255,255,.28);
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta em{
  color:#fff!important;
  display:inline-flex;
  width:max-content;
  background:rgba(255,255,255,.92);
  color:#08214a!important;
  border-radius:6px;
  padding:7px 12px;
  box-shadow:0 12px 26px rgba(0,0,0,.24);
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta:after{
  background:#fff!important;
  opacity:.8;
}
@media(max-width:1100px){
  .umqs.umqs--cruise-layout-hero{min-height:auto;padding-bottom:32px!important;}
  .umqs.umqs--cruise-layout-hero .umqs__header,
  .umqs.umqs--cruise-layout-hero .umqs__form,
  .umqs.umqs--cruise-layout-hero .umqs__ai{max-width:100%;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage{
    position:relative;
    inset:auto;
    margin-top:24px!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{
    grid-template-columns:1fr minmax(180px,260px);
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{max-width:100%!important;}
}
@media(max-width:760px){
  .umqs.umqs--cruise-layout-hero{padding:26px 14px 28px!important;}
  .umqs.umqs--cruise-layout-hero .umqs__header{margin:18px 0 62px;text-align:center;}
  .umqs.umqs--cruise-layout-hero .umqs__tabs{width:100%;gap:6px;}
  .umqs.umqs--cruise-layout-hero .umqs__tabs label{flex:1;}
  .umqs.umqs--cruise-layout-hero .umqs__tabs label span{justify-content:center;font-size:12px!important;padding:12px 8px!important;}
  .umqs.umqs--cruise-layout-hero .umqs__grid{grid-template-columns:1fr!important;}
  .umqs.umqs--cruise-layout-hero .umqs__field{border-right:0!important;padding:15px 16px!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{grid-template-columns:1fr!important;text-align:center;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{align-items:center;text-align:center;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{max-height:230px!important;object-position:center center;}
}

/* v20 – Optimierte Kreuzfahrt-Darstellung Variante 2 nach Layout-Vorlage */
.umqs.umqs--cruise-layout-hero{
  isolation:isolate;
  max-width:1200px;
  margin-inline:auto;
  min-height:clamp(620px,58vw,760px)!important;
  padding:clamp(36px,4vw,72px) clamp(28px,4vw,58px)!important;
  background:
    radial-gradient(circle at 34% 20%, rgba(255,255,255,.20), transparent 28%),
    radial-gradient(circle at 76% 48%, rgba(255,255,255,.13), transparent 24%),
    linear-gradient(90deg, #051b32 0%, #0a223a 48%, #051827 100%)!important;
  overflow:hidden!important;
}
.umqs.umqs--cruise-layout-hero:before{
  background:
    linear-gradient(90deg, rgba(255,255,255,.055) 1px, transparent 1px) 0 0/74px 100%,
    linear-gradient(180deg, rgba(255,255,255,.035), transparent 45%)!important;
  opacity:.62!important;
}
.umqs.umqs--cruise-layout-hero:after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  z-index:1;
  background:linear-gradient(90deg, rgba(5,18,34,.08) 0%, transparent 36%, rgba(5,18,34,.30) 100%);
}
.umqs.umqs--cruise-layout-hero .umqs__header{
  position:relative;
  z-index:6;
  max-width:500px!important;
  margin:clamp(30px,4.6vw,74px) 0 clamp(150px,14vw,210px)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__header h2{
  font-size:clamp(42px,4.8vw,66px)!important;
  letter-spacing:-.045em!important;
}
.umqs.umqs--cruise-layout-hero .umqs__form{
  position:relative;
  z-index:12;
  width:min(620px,52vw)!important;
  max-width:min(620px,52vw)!important;
  margin-top:0!important;
  margin-left:0!important;
  box-shadow:0 22px 70px rgba(0,0,0,.38), 0 0 0 6px rgba(255,255,255,.06)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs{
  z-index:13!important;
  transform:translateY(calc(-100% - 4px))!important;
  left:0!important;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs label span{
  min-height:42px!important;
  padding:11px 18px!important;
  border-radius:7px 7px 0 0!important;
  font-size:13px!important;
  white-space:nowrap;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs input:checked+span{
  background:#082c5a!important;
  color:#fff!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.24), 0 10px 24px rgba(0,0,0,.22)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__button{
  min-height:56px!important;
  font-weight:800!important;
}
.umqs.umqs--cruise-layout-hero .umqs__ai{
  position:relative;
  z-index:12;
  width:min(620px,52vw)!important;
  max-width:min(620px,52vw)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage{
  position:absolute!important;
  z-index:7!important;
  left:clamp(390px,43vw,560px)!important;
  right:clamp(22px,4vw,58px)!important;
  top:clamp(190px,23vw,270px)!important;
  bottom:auto!important;
  margin:0!important;
  overflow:visible!important;
  min-height:360px!important;
  pointer-events:none;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-height:360px!important;
  transform:translateX(-115vw);
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card.is-sailing-in{
  animation:umqsShipSailIn 1.15s cubic-bezier(.18,.82,.2,1) forwards!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual{
  position:absolute!important;
  left:0!important;
  right:14%!important;
  bottom:0!important;
  display:flex!important;
  justify-content:flex-start!important;
  align-items:flex-end!important;
  min-height:320px!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{
  width:min(760px,56vw)!important;
  max-width:none!important;
  max-height:clamp(330px,37vw,500px)!important;
  object-fit:contain!important;
  object-position:left bottom!important;
  filter:drop-shadow(0 30px 22px rgba(0,0,0,.42))!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{
  position:absolute!important;
  z-index:9!important;
  top:29%!important;
  right:0!important;
  width:min(230px,21vw)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  text-align:left!important;
  color:#fff!important;
  text-shadow:0 3px 10px rgba(0,0,0,.55)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta strong{
  max-width:100%;
  color:#fff!important;
  font-size:clamp(38px,4.3vw,64px)!important;
  line-height:.92!important;
  letter-spacing:-.04em!important;
  text-shadow:0 2px 0 #061d3e, 0 0 15px rgba(255,255,255,.35)!important;
  word-break:normal;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta em{
  margin-top:12px!important;
  font-size:clamp(16px,1.6vw,24px)!important;
  line-height:1.1!important;
  border-radius:6px!important;
  padding:7px 12px!important;
  background:rgba(255,255,255,.94)!important;
  color:#08214a!important;
  box-shadow:0 12px 26px rgba(0,0,0,.25)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta:after{
  content:"";
  display:block;
  width:100%;
  height:2px;
  margin-top:13px;
  background:rgba(255,255,255,.75)!important;
}
@media(max-width:1180px){
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage{
    left:42vw!important;
    right:20px!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual{right:18%!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{width:190px!important;}
}
@media(max-width:980px){
  .umqs.umqs--cruise-layout-hero{
    min-height:auto!important;
    padding:34px 18px 30px!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__header{
    max-width:100%!important;
    margin:10px 0 70px!important;
    text-align:center!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__form,
  .umqs.umqs--cruise-layout-hero .umqs__ai{
    width:100%!important;
    max-width:100%!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage{
    position:relative!important;
    inset:auto!important;
    margin:26px 0 0!important;
    min-height:0!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(160px,230px)!important;
    gap:18px!important;
    align-items:center!important;
    min-height:0!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual{
    position:relative!important;
    inset:auto!important;
    min-height:0!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{
    width:100%!important;
    max-height:300px!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{
    position:relative!important;
    inset:auto!important;
    width:auto!important;
  }
}
@media(max-width:760px){
  .umqs.umqs--cruise-layout-hero .umqs__header{margin-bottom:76px!important;}
  .umqs.umqs--cruise-layout-hero .umqs__grid{grid-template-columns:1fr!important;}
  .umqs.umqs--cruise-layout-hero .umqs__tabs{flex-wrap:wrap!important;transform:translateY(calc(-100% - 4px))!important;}
  .umqs.umqs--cruise-layout-hero .umqs__tabs label span{font-size:11px!important;padding:10px 8px!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{grid-template-columns:1fr!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{align-items:center!important;text-align:center!important;order:-1;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta strong{font-size:clamp(32px,12vw,48px)!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{max-height:220px!important;object-position:center bottom!important;}
}

/* v21 – Hero-Variante: Schiff wieder sicher sichtbar und näher an der Vorlage */
.umqs.umqs--cruise-layout-hero{
  min-height:clamp(620px,56vw,760px)!important;
  padding:clamp(34px,4vw,70px) clamp(24px,4vw,58px)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage.is-visible{
  display:block!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage{
  position:absolute!important;
  left:min(51vw,620px)!important;
  right:42px!important;
  top:clamp(250px,30vw,360px)!important;
  bottom:auto!important;
  z-index:8!important;
  min-height:330px!important;
  pointer-events:none!important;
  overflow:visible!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{
  min-height:330px!important;
  width:100%!important;
  display:block!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual{
  position:absolute!important;
  left:-10px!important;
  right:170px!important;
  bottom:0!important;
  min-height:300px!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{
  width:min(590px,46vw)!important;
  max-width:none!important;
  max-height:clamp(250px,29vw,390px)!important;
  object-fit:contain!important;
  object-position:left bottom!important;
  opacity:1!important;
  visibility:visible!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{
  position:absolute!important;
  top:28%!important;
  right:0!important;
  width:190px!important;
  z-index:11!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  opacity:1!important;
  visibility:visible!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta strong{
  font-size:clamp(36px,4vw,58px)!important;
}
@media(max-width:980px){
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage{
    position:relative!important;
    left:auto!important;
    right:auto!important;
    top:auto!important;
    margin:28px 0 0!important;
    min-height:auto!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(150px,220px)!important;
    gap:16px!important;
    align-items:center!important;
    min-height:0!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual,
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{
    position:relative!important;
    inset:auto!important;
    width:auto!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{
    width:100%!important;
    max-height:280px!important;
  }
}
@media(max-width:760px){
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{grid-template-columns:1fr!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{align-items:center!important;text-align:center!important;order:-1;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{max-height:220px!important;object-position:center bottom!important;}
}

/* v22 – Kreuzfahrt Hero Variante 2 exakt als große Split-Hero-Bühne */
.umqs.umqs--cruise-layout-hero{
  --hero-navy:#061d36;
  --hero-navy-2:#0a2744;
  --hero-cyan:#12b5dc;
  --hero-cyan-2:#0786ad;
  position:relative!important;
  isolation:isolate!important;
  width:100%!important;
  max-width:1440px!important;
  min-height:clamp(700px,64vw,860px)!important;
  margin:0 auto!important;
  padding:clamp(70px,7vw,120px) clamp(42px,6vw,88px) clamp(58px,5vw,82px)!important;
  overflow:hidden!important;
  border-radius:0!important;
  background:
    radial-gradient(circle at 24% 30%, rgba(255,255,255,.34) 0%, rgba(255,255,255,.12) 16%, transparent 36%),
    radial-gradient(circle at 73% 53%, rgba(255,255,255,.20) 0%, rgba(255,255,255,.06) 22%, transparent 38%),
    linear-gradient(90deg, #061c34 0%, #0b2945 45%, #071d32 100%)!important;
  color:#fff!important;
  box-shadow:none!important;
}
.umqs.umqs--cruise-layout-hero::before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  opacity:.58!important;
  background:
    linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px) 0 0/76px 100%,
    linear-gradient(180deg, rgba(255,255,255,.06), transparent 55%)!important;
}
.umqs.umqs--cruise-layout-hero::after{
  content:""!important;
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  height:36%!important;
  z-index:1!important;
  pointer-events:none!important;
  background:linear-gradient(180deg, transparent 0%, rgba(255,255,255,.09) 55%, rgba(255,255,255,.12) 100%)!important;
  opacity:.42!important;
}
.umqs.umqs--cruise-layout-hero .umqs__header{
  position:relative!important;
  z-index:10!important;
  width:min(520px,42vw)!important;
  max-width:min(520px,42vw)!important;
  margin:0 0 clamp(170px,15vw,225px)!important;
  color:#fff!important;
  text-align:left!important;
}
.umqs.umqs--cruise-layout-hero .umqs__header h2{
  margin:0 0 22px!important;
  color:#fff!important;
  font-size:clamp(50px,5.2vw,76px)!important;
  line-height:.92!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:-.055em!important;
  text-shadow:
    0 3px 0 #08244a,
    0 0 0 2px #fff,
    0 0 18px rgba(255,255,255,.34)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__header p{
  margin:0 0 42px!important;
  color:rgba(238,247,255,.95)!important;
  font-size:clamp(17px,1.4vw,23px)!important;
  line-height:1.35!important;
  text-shadow:0 2px 7px rgba(0,0,0,.45)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__header p::after{
  content:"Top Reedereien\A Große Auswahl\A\A Beste Preise\A und Angebote\A\A Sicher buchen\A mit Expertenberatung";
  display:grid!important;
  grid-template-columns:repeat(3,1fr)!important;
  gap:34px!important;
  width:min(520px,42vw)!important;
  margin-top:38px!important;
  white-space:pre-line!important;
  color:rgba(238,247,255,.84)!important;
  font-size:13px!important;
  line-height:1.18!important;
  text-align:center!important;
  text-shadow:0 2px 7px rgba(0,0,0,.45)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__form{
  position:relative!important;
  z-index:20!important;
  width:min(600px,44vw)!important;
  max-width:min(600px,44vw)!important;
  margin:0!important;
  background:#fff!important;
  color:#071c39!important;
  border:0!important;
  border-radius:6px!important;
  box-shadow:0 24px 70px rgba(0,0,0,.35), 0 0 0 1px rgba(255,255,255,.45)!important;
  overflow:visible!important;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs{
  position:absolute!important;
  z-index:25!important;
  top:0!important;
  left:0!important;
  transform:translateY(calc(-100% + 1px))!important;
  display:flex!important;
  align-items:flex-end!important;
  gap:10px!important;
  margin:0!important;
  padding:0!important;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs label span{
  height:54px!important;
  padding:0 22px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  border-radius:7px 7px 0 0!important;
  border:2px solid rgba(18,181,220,.95)!important;
  background:rgba(230,249,255,.90)!important;
  color:#123654!important;
  font-size:14px!important;
  font-weight:900!important;
  line-height:1!important;
  text-transform:uppercase!important;
  letter-spacing:-.01em!important;
  box-shadow:none!important;
  white-space:nowrap!important;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs input:checked + span{
  background:#082e5d!important;
  color:#fff!important;
  border-color:#12b5dc!important;
  box-shadow:none!important;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs label:nth-child(3) span,
.umqs.umqs--cruise-layout-hero .umqs__tabs .umqs__ai-tab span{
  background:#dff8ff!important;
  color:#7b3dff!important;
}
.umqs.umqs--cruise-layout-hero .umqs__grid{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:0!important;
  background:#fff!important;
  border:0!important;
  border-radius:0!important;
}
.umqs.umqs--cruise-layout-hero .umqs__field{
  min-height:108px!important;
  padding:22px 26px 20px!important;
  border:0!important;
  border-right:1px solid #d6e3ee!important;
  border-bottom:1px solid #d6e3ee!important;
  background:#fff!important;
  color:#071c39!important;
  border-radius:0!important;
}
.umqs.umqs--cruise-layout-hero .umqs__field:nth-child(2n){border-right:0!important;}
.umqs.umqs--cruise-layout-hero .umqs__field label{
  display:block!important;
  margin:0 0 18px!important;
  color:#071c39!important;
  font-size:16px!important;
  font-weight:900!important;
  line-height:1.05!important;
}
.umqs.umqs--cruise-layout-hero .umqs__field input,
.umqs.umqs--cruise-layout-hero .umqs__field select,
.umqs.umqs--cruise-layout-hero .umqs__selectlike{
  width:100%!important;
  min-height:32px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  color:#071c39!important;
  box-shadow:none!important;
  font-size:15px!important;
  line-height:1.35!important;
}
.umqs.umqs--cruise-layout-hero .umqs__field input::placeholder{color:#7a8ba0!important;opacity:1!important;}
.umqs.umqs--cruise-layout-hero .umqs__button{
  width:calc(100% - 16px)!important;
  margin:8px!important;
  min-height:58px!important;
  border-radius:0!important;
  border:0!important;
  background:linear-gradient(135deg,#0786ad,#12b5dc)!important;
  color:#fff!important;
  font-size:16px!important;
  font-weight:900!important;
  box-shadow:none!important;
}
.umqs.umqs--cruise-layout-hero .umqs__ai{
  position:relative!important;
  z-index:23!important;
  width:min(600px,44vw)!important;
  max-width:min(600px,44vw)!important;
  margin:12px 0 0!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage{
  display:block!important;
  position:absolute!important;
  z-index:12!important;
  left:clamp(455px,42vw,650px)!important;
  right:clamp(26px,5vw,72px)!important;
  top:clamp(220px,23vw,295px)!important;
  bottom:auto!important;
  margin:0!important;
  min-height:clamp(360px,37vw,520px)!important;
  overflow:visible!important;
  pointer-events:none!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage[hidden]{display:block!important;}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{
  position:relative!important;
  display:block!important;
  width:100%!important;
  min-height:clamp(360px,37vw,520px)!important;
  transform:none!important;
  animation:none!important;
  opacity:1!important;
  visibility:visible!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card.is-sailing-in{
  animation:umqsShipSailIn 1.15s cubic-bezier(.18,.82,.2,1) forwards!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual{
  position:absolute!important;
  z-index:12!important;
  left:0!important;
  right:160px!important;
  bottom:0!important;
  top:auto!important;
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  min-height:clamp(320px,35vw,500px)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{
  display:block!important;
  width:min(760px,58vw)!important;
  max-width:none!important;
  height:auto!important;
  max-height:clamp(340px,38vw,560px)!important;
  object-fit:contain!important;
  object-position:left bottom!important;
  opacity:1!important;
  visibility:visible!important;
  filter:drop-shadow(0 30px 26px rgba(0,0,0,.42))!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{
  position:absolute!important;
  z-index:15!important;
  top:22%!important;
  right:0!important;
  width:min(250px,20vw)!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  text-align:left!important;
  color:#fff!important;
  opacity:1!important;
  visibility:visible!important;
  text-shadow:0 3px 10px rgba(0,0,0,.55)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta span{display:none!important;}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta strong{
  color:#fff!important;
  font-size:clamp(40px,4.7vw,74px)!important;
  line-height:.9!important;
  font-weight:900!important;
  letter-spacing:-.045em!important;
  text-shadow:0 3px 0 #061e42, 0 0 16px rgba(255,255,255,.40)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta em{
  display:inline-flex!important;
  align-items:center!important;
  width:max-content!important;
  max-width:100%!important;
  margin-top:12px!important;
  padding:8px 13px!important;
  background:rgba(255,255,255,.95)!important;
  color:#071c39!important;
  border-radius:6px!important;
  font-size:clamp(16px,1.6vw,24px)!important;
  font-weight:900!important;
  line-height:1.05!important;
  box-shadow:0 12px 26px rgba(0,0,0,.25)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta::after{
  content:""!important;
  display:block!important;
  width:100%!important;
  height:3px!important;
  margin-top:14px!important;
  background:rgba(255,255,255,.80)!important;
}
.umqs.umqs--cruise-layout-hero .umqs__form::after{
  content:"Erweiterte Suche⌄";
  position:absolute;
  left:0;
  top:100%;
  width:260px;
  height:66px;
  display:flex;
  align-items:center;
  padding-left:18px;
  background:#fff;
  color:#071c39;
  font-weight:800;
  box-shadow:0 20px 36px rgba(0,0,0,.22);
}
.umqs.umqs--cruise-layout-hero > .umqs__footer,
.umqs.umqs--cruise-layout-hero .umqs__hero-bottom{display:none!important;}
.umqs.umqs--cruise-layout-hero .umqs__form + *::after{display:none!important;}
.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage::after{
  content:"Passende Angebote";
  position:absolute;
  left:calc(-1 * clamp(455px,42vw,650px) + 2px);
  bottom:calc(-1 * clamp(70px,7vw,110px));
  color:#fff;
  font-size:clamp(22px,2vw,32px);
  font-weight:900;
  text-shadow:0 2px 0 #061e42, 0 0 12px rgba(255,255,255,.3);
}
@media(max-width:1180px){
  .umqs.umqs--cruise-layout-hero{min-height:760px!important;}
  .umqs.umqs--cruise-layout-hero .umqs__form,
  .umqs.umqs--cruise-layout-hero .umqs__ai{width:560px!important;max-width:48vw!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage{left:44vw!important;right:26px!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual{right:150px!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{width:210px!important;}
}
@media(max-width:980px){
  .umqs.umqs--cruise-layout-hero{
    min-height:auto!important;
    padding:34px 18px 36px!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__header{
    width:100%!important;
    max-width:100%!important;
    margin:0 0 78px!important;
    text-align:center!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__header p::after{display:none!important;}
  .umqs.umqs--cruise-layout-hero .umqs__form,
  .umqs.umqs--cruise-layout-hero .umqs__ai{
    width:100%!important;
    max-width:100%!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage{
    position:relative!important;
    inset:auto!important;
    margin:32px 0 0!important;
    min-height:auto!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(170px,240px)!important;
    gap:18px!important;
    min-height:0!important;
    align-items:center!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual,
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{
    position:relative!important;
    inset:auto!important;
    width:auto!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{
    width:100%!important;
    max-height:300px!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-stage::after{display:none!important;}
}
@media(max-width:760px){
  .umqs.umqs--cruise-layout-hero{padding:26px 12px 30px!important;}
  .umqs.umqs--cruise-layout-hero .umqs__header h2{font-size:clamp(38px,13vw,54px)!important;}
  .umqs.umqs--cruise-layout-hero .umqs__tabs{
    position:relative!important;
    transform:none!important;
    flex-wrap:wrap!important;
    margin-bottom:0!important;
    width:100%!important;
    gap:6px!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__tabs label{flex:1 1 auto!important;}
  .umqs.umqs--cruise-layout-hero .umqs__tabs label span{
    width:100%!important;
    height:44px!important;
    font-size:11px!important;
    padding:0 8px!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__grid{grid-template-columns:1fr!important;}
  .umqs.umqs--cruise-layout-hero .umqs__field{
    min-height:88px!important;
    padding:17px 18px!important;
    border-right:0!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__form::after{display:none!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-card{grid-template-columns:1fr!important;text-align:center!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta{order:-1!important;align-items:center!important;text-align:center!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta strong{font-size:clamp(34px,12vw,50px)!important;}
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-visual img,
  .umqs.umqs--cruise-layout-hero .umqs__cruise-ship-svg{max-height:230px!important;object-position:center bottom!important;}
}

/* v23 – Hero-Farben aus Backend + AI-Modus sauber isolieren */
.umqs.umqs--cruise-layout-hero{background:var(--umqs-cruise-hero-bg,#061b31)!important;color:var(--umqs-cruise-hero-text,#fff)!important;}
.umqs.umqs--cruise-layout-hero .umqs__header h2,.umqs.umqs--cruise-layout-hero .umqs__header p,.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta,.umqs.umqs--cruise-layout-hero .umqs__cruise-ship-meta strong{color:var(--umqs-cruise-hero-text,#fff)!important;}
.umqs.umqs--cruise-layout-hero [hidden]{display:none!important;}
.umqs.umqs--cruise-layout-hero .umqs__form::after{content:none!important;display:none!important;}
.umqs.umqs--cruise-layout-hero.umqs--type-ai .umqs__grid,.umqs.umqs--cruise-layout-hero.umqs--type-ai [data-umqs-manual-fields],.umqs.umqs--cruise-layout-hero.umqs--type-ai [data-umqs-manual-submit]{display:none!important;}
.umqs.umqs--cruise-layout-hero.umqs--type-ai .umqs__ai{display:block!important;}

/* v24 – Hero-Variante: transparenter Hintergrund + Tabs ohne Scrollbar */
.umqs.umqs--cruise-layout-hero{
  background:var(--umqs-cruise-hero-bg, #061b31)!important;
  color:var(--umqs-cruise-hero-text,#fff)!important;
}
.umqs.umqs--cruise-layout-hero[style*="--umqs-cruise-hero-bg:transparent"],
.umqs.umqs--cruise-layout-hero[style*="--umqs-cruise-hero-bg: transparent"]{
  background:transparent!important;
}
.umqs.umqs--cruise-layout-hero[style*="--umqs-cruise-hero-bg:transparent"]::before,
.umqs.umqs--cruise-layout-hero[style*="--umqs-cruise-hero-bg: transparent"]::before,
.umqs.umqs--cruise-layout-hero[style*="--umqs-cruise-hero-bg:transparent"]::after,
.umqs.umqs--cruise-layout-hero[style*="--umqs-cruise-hero-bg: transparent"]::after{
  display:none!important;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs{
  overflow:visible!important;
  overflow-x:visible!important;
  overflow-y:visible!important;
  scrollbar-width:none!important;
  max-width:100%!important;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs::-webkit-scrollbar{display:none!important;}
.umqs.umqs--cruise-layout-hero .umqs__tabs label{
  min-width:0!important;
}
.umqs.umqs--cruise-layout-hero .umqs__tabs label span{
  white-space:normal!important;
  overflow:visible!important;
  text-overflow:clip!important;
  text-align:center!important;
}
.umqs.umqs--cruise-layout-hero .umqs__form::after{
  content:none!important;
  display:none!important;
}
@media(max-width:760px){
  .umqs.umqs--cruise-layout-hero .umqs__tabs{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:8px!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__tabs label{
    flex:initial!important;
    width:100%!important;
  }
  .umqs.umqs--cruise-layout-hero .umqs__tabs label span{
    min-width:0!important;
    height:auto!important;
    min-height:44px!important;
    line-height:1.1!important;
  }
}

/* Cruise Variante 1: Schriftvarianten aus dem Backend */
.umqs.umqs--cruise-layout-classic{color:var(--umqs-text,#0f172a)!important;}
.umqs.umqs--cruise-layout-classic .umqs__header h2,
.umqs.umqs--cruise-layout-classic .umqs__header p,
.umqs.umqs--cruise-layout-classic label,
.umqs.umqs--cruise-layout-classic .umqs__tabs span{color:var(--umqs-text,#0f172a);}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-modern{font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-modern .umqs__header h2{font-weight:900;letter-spacing:-.035em;}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-elegant{font-family:"Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,sans-serif;}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-elegant .umqs__header h2{font-family:Georgia,"Times New Roman",serif;font-weight:700;letter-spacing:-.02em;}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-elegant label{font-weight:700;letter-spacing:.02em;}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-bold{font-family:Arial,Helvetica,sans-serif;}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-bold .umqs__header h2{text-transform:uppercase;font-weight:950;letter-spacing:.015em;}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-bold label,
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-bold .umqs__tabs span{font-weight:900;text-transform:uppercase;letter-spacing:.05em;}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-soft{font-family:"Trebuchet MS",Inter,system-ui,sans-serif;}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-soft .umqs__header h2{font-weight:800;letter-spacing:-.015em;}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-soft label{font-weight:700;}

/* v26 – getrennte Designsteuerung Tabs, Eingabefelder und Schiff-Infoblock */
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs label span{
  color:var(--umqs-cruise-tab-text,var(--umqs-text,#0f172a))!important;
}
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs input:checked + span{
  color:var(--umqs-cruise-tab-active-text,#fff)!important;
}
.umqs[class*="umqs--cruise-layout-"] .umqs__field label{
  color:var(--umqs-cruise-input-label-text,var(--umqs-text,#0f172a))!important;
}
.umqs[class*="umqs--cruise-layout-"] .umqs__field input,
.umqs[class*="umqs--cruise-layout-"] .umqs__field select,
.umqs[class*="umqs--cruise-layout-"] .umqs__selectlike{
  color:var(--umqs-cruise-input-text,var(--umqs-text,#0f172a))!important;
}
.umqs[class*="umqs--cruise-layout-"] .umqs__field input::placeholder{
  color:var(--umqs-cruise-input-placeholder-text,var(--umqs-muted,#64748b))!important;
  opacity:1!important;
}

/* Alte Variante-1-Schriftklassen sollen nur noch sehr zurückhaltend wirken; der sichtbare Stil sitzt jetzt am Schiff-Infoblock. */
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-modern,
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-elegant,
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-bold,
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-soft{
  font-family:inherit!important;
}
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-modern .umqs__header h2,
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-elegant .umqs__header h2,
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-bold .umqs__header h2,
.umqs.umqs--cruise-layout-classic.umqs--cruise-font-soft .umqs__header h2{
  font-family:inherit!important;
  text-transform:none!important;
  letter-spacing:inherit!important;
}

.umqs.umqs--ship-info-modern .umqs__cruise-ship-meta span,
.umqs.umqs--ship-info-luxury .umqs__cruise-ship-meta span,
.umqs.umqs--ship-info-minimal .umqs__cruise-ship-meta span,
.umqs.umqs--ship-info-card .umqs__cruise-ship-meta span,
.umqs.umqs--ship-info-magazine .umqs__cruise-ship-meta span{
  color:var(--umqs-cruise-ship-info-label-text,var(--umqs-accent,#0094c9))!important;
}
.umqs.umqs--ship-info-modern .umqs__cruise-ship-meta strong,
.umqs.umqs--ship-info-luxury .umqs__cruise-ship-meta strong,
.umqs.umqs--ship-info-minimal .umqs__cruise-ship-meta strong,
.umqs.umqs--ship-info-card .umqs__cruise-ship-meta strong,
.umqs.umqs--ship-info-magazine .umqs__cruise-ship-meta strong{
  color:var(--umqs-cruise-ship-info-title-text,var(--umqs-text,#0f172a))!important;
}
.umqs.umqs--ship-info-modern .umqs__cruise-ship-meta em,
.umqs.umqs--ship-info-luxury .umqs__cruise-ship-meta em,
.umqs.umqs--ship-info-minimal .umqs__cruise-ship-meta em,
.umqs.umqs--ship-info-card .umqs__cruise-ship-meta em,
.umqs.umqs--ship-info-magazine .umqs__cruise-ship-meta em{
  color:var(--umqs-cruise-ship-info-subtitle-text,var(--umqs-accent,#0094c9))!important;
}
.umqs.umqs--ship-info-modern .umqs__cruise-ship-meta::after,
.umqs.umqs--ship-info-luxury .umqs__cruise-ship-meta::after,
.umqs.umqs--ship-info-card .umqs__cruise-ship-meta::after{
  background:var(--umqs-cruise-ship-info-line,var(--umqs-accent-2,#00b8d9))!important;
}

/* Schiff-Infoblock – Modern */
.umqs.umqs--ship-info-modern .umqs__cruise-ship-meta{
  gap:8px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.umqs.umqs--ship-info-modern .umqs__cruise-ship-meta span{
  display:inline-flex!important;
  margin:0 0 6px!important;
  font-size:12px!important;
  letter-spacing:.22em!important;
  font-weight:900!important;
  text-transform:uppercase!important;
}
.umqs.umqs--ship-info-modern .umqs__cruise-ship-meta strong{
  font-size:clamp(42px,4vw,70px)!important;
  line-height:.9!important;
  font-weight:950!important;
  letter-spacing:-.055em!important;
}
.umqs.umqs--ship-info-modern .umqs__cruise-ship-meta em{
  font-size:clamp(18px,1.45vw,26px)!important;
  font-weight:900!important;
  font-style:normal!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
}
.umqs.umqs--ship-info-modern .umqs__cruise-ship-meta::after{
  content:""!important;
  display:block!important;
  width:120px!important;
  height:4px!important;
  margin-top:12px!important;
  border-radius:999px!important;
}

/* Schiff-Infoblock – Luxury */
.umqs.umqs--ship-info-luxury .umqs__cruise-ship-meta{
  gap:10px!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
}
.umqs.umqs--ship-info-luxury .umqs__cruise-ship-meta span{
  display:inline-flex!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:13px!important;
  font-style:italic!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
.umqs.umqs--ship-info-luxury .umqs__cruise-ship-meta strong{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:clamp(42px,4.1vw,72px)!important;
  font-weight:700!important;
  letter-spacing:-.035em!important;
  line-height:.95!important;
}
.umqs.umqs--ship-info-luxury .umqs__cruise-ship-meta em{
  font-size:clamp(17px,1.25vw,24px)!important;
  font-weight:700!important;
  font-style:normal!important;
  background:transparent!important;
  padding:0!important;
  box-shadow:none!important;
}
.umqs.umqs--ship-info-luxury .umqs__cruise-ship-meta::after{
  content:""!important;
  display:block!important;
  width:150px!important;
  height:2px!important;
  margin-top:12px!important;
}

/* Schiff-Infoblock – Minimal */
.umqs.umqs--ship-info-minimal .umqs__cruise-ship-meta{
  gap:4px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.umqs.umqs--ship-info-minimal .umqs__cruise-ship-meta span,
.umqs.umqs--ship-info-minimal .umqs__cruise-ship-meta::after{display:none!important;}
.umqs.umqs--ship-info-minimal .umqs__cruise-ship-meta strong{
  font-size:clamp(38px,3.6vw,64px)!important;
  font-weight:850!important;
  letter-spacing:-.05em!important;
  line-height:1!important;
}
.umqs.umqs--ship-info-minimal .umqs__cruise-ship-meta em{
  font-size:clamp(18px,1.35vw,25px)!important;
  font-weight:700!important;
  font-style:normal!important;
  background:transparent!important;
  padding:0!important;
  box-shadow:none!important;
}

/* Schiff-Infoblock – Card */
.umqs.umqs--ship-info-card .umqs__cruise-ship-meta{
  padding:22px 24px!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.86)!important;
  backdrop-filter:blur(14px)!important;
  box-shadow:0 22px 55px rgba(2,8,23,.25)!important;
  border:1px solid rgba(255,255,255,.55)!important;
  gap:7px!important;
  max-width:360px!important;
}
.umqs.umqs--ship-info-card .umqs__cruise-ship-meta span{
  display:inline-flex!important;
  margin:0!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}
.umqs.umqs--ship-info-card .umqs__cruise-ship-meta strong{
  font-size:clamp(32px,3vw,50px)!important;
  font-weight:950!important;
  line-height:1!important;
  letter-spacing:-.04em!important;
}
.umqs.umqs--ship-info-card .umqs__cruise-ship-meta em{
  font-size:clamp(16px,1.15vw,22px)!important;
  font-weight:900!important;
  font-style:normal!important;
  background:transparent!important;
  padding:0!important;
  box-shadow:none!important;
}
.umqs.umqs--ship-info-card .umqs__cruise-ship-meta::after{
  content:""!important;
  display:block!important;
  width:86px!important;
  height:4px!important;
  margin-top:12px!important;
  border-radius:999px!important;
}

/* Schiff-Infoblock – Magazine */
.umqs.umqs--ship-info-magazine .umqs__cruise-ship-meta{
  padding-left:24px!important;
  border-left:5px solid var(--umqs-cruise-ship-info-line,var(--umqs-accent-2,#00b8d9))!important;
  gap:7px!important;
  background:transparent!important;
  box-shadow:none!important;
}
.umqs.umqs--ship-info-magazine .umqs__cruise-ship-meta span{
  display:inline-flex!important;
  margin:0!important;
  font-size:12px!important;
  font-weight:900!important;
  text-transform:uppercase!important;
  letter-spacing:.24em!important;
}
.umqs.umqs--ship-info-magazine .umqs__cruise-ship-meta strong{
  font-size:clamp(46px,4.4vw,80px)!important;
  font-weight:950!important;
  line-height:.88!important;
  letter-spacing:-.065em!important;
}
.umqs.umqs--ship-info-magazine .umqs__cruise-ship-meta em{
  font-size:clamp(17px,1.35vw,25px)!important;
  font-weight:800!important;
  font-style:normal!important;
  background:transparent!important;
  padding:0!important;
  box-shadow:none!important;
}
.umqs.umqs--ship-info-magazine .umqs__cruise-ship-meta::after{display:none!important;}

/* Hero-Layout darf die Infoblock-Varianten nicht mit alten weißen Pflichtfarben überschreiben. */
.umqs.umqs--cruise-layout-hero.umqs--ship-info-modern .umqs__cruise-ship-meta strong,
.umqs.umqs--cruise-layout-hero.umqs--ship-info-luxury .umqs__cruise-ship-meta strong,
.umqs.umqs--cruise-layout-hero.umqs--ship-info-minimal .umqs__cruise-ship-meta strong,
.umqs.umqs--cruise-layout-hero.umqs--ship-info-card .umqs__cruise-ship-meta strong,
.umqs.umqs--cruise-layout-hero.umqs--ship-info-magazine .umqs__cruise-ship-meta strong{
  color:var(--umqs-cruise-ship-info-title-text,#fff)!important;
}
.umqs.umqs--cruise-layout-hero.umqs--ship-info-modern .umqs__cruise-ship-meta em,
.umqs.umqs--cruise-layout-hero.umqs--ship-info-luxury .umqs__cruise-ship-meta em,
.umqs.umqs--cruise-layout-hero.umqs--ship-info-minimal .umqs__cruise-ship-meta em,
.umqs.umqs--cruise-layout-hero.umqs--ship-info-card .umqs__cruise-ship-meta em,
.umqs.umqs--cruise-layout-hero.umqs--ship-info-magazine .umqs__cruise-ship-meta em{
  color:var(--umqs-cruise-ship-info-subtitle-text,#fff)!important;
}
.umqs.umqs--cruise-layout-hero.umqs--ship-info-card .umqs__cruise-ship-meta em{background:transparent!important;}

@media(max-width:760px){
  .umqs[class*="umqs--ship-info-"] .umqs__cruise-ship-meta{
    max-width:100%!important;
    align-items:center!important;
    text-align:center!important;
    padding-left:0!important;
    border-left:0!important;
  }
  .umqs[class*="umqs--ship-info-"] .umqs__cruise-ship-meta::after{margin-left:auto!important;margin-right:auto!important;}
  .umqs.umqs--ship-info-card .umqs__cruise-ship-meta{padding:18px!important;}
}

/* v27: optische ODER-Trennung zwischen Reederei/Schiff und Reiseziel */
.umqs[data-umqs-provider="cruise"] .umqs__cruise-separator,
.umqs .umqs__cruise-separator{
  display:flex;
  align-items:center;
  justify-content:center;
  position:relative;
  align-self:stretch;
  min-height:54px;
  color:var(--umqs-accent,#006d9c);
  font-weight:900;
  font-size:var(--umqs-cruise-separator-font-size,16px);
  text-transform:lowercase;
  letter-spacing:.01em;
  z-index:2;
}
.umqs .umqs__cruise-separator::before{
  content:"";
  position:absolute;
  top:8px;
  bottom:8px;
  left:50%;
  width:1px;
  transform:translateX(-50%);
  background:color-mix(in srgb,var(--umqs-border,#c9e6f2) 80%,var(--umqs-accent,#006d9c));
}
.umqs .umqs__cruise-separator span{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:52px;
  min-height:52px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--umqs-accent,#006d9c) 35%,var(--umqs-border,#c9e6f2));
  background:var(--umqs-field-bg,#fff);
  box-shadow:0 10px 26px rgba(15,23,42,.10);
}

.umqs.umqs--cruise-separator-text .umqs__cruise-separator::before{
  top:50%;
  bottom:auto;
  left:8px;
  right:8px;
  width:auto;
  height:1px;
  transform:translateY(-50%);
}
.umqs.umqs--cruise-separator-text .umqs__cruise-separator span{
  min-width:auto;
  min-height:auto;
  padding:4px 12px;
  border:0;
  border-radius:0;
  background:var(--umqs-surface,var(--umqs-bg,#fff));
  box-shadow:none;
}
.umqs.umqs--cruise-separator-horizontal .umqs__cruise-separator{
  grid-column:1 / -1;
  min-height:42px;
  margin:-2px 0;
}
.umqs.umqs--cruise-separator-horizontal .umqs__cruise-separator::before{
  top:50%;
  bottom:auto;
  left:0;
  right:0;
  width:auto;
  height:1px;
  transform:translateY(-50%);
}
.umqs.umqs--cruise-separator-horizontal .umqs__cruise-separator span{
  min-width:auto;
  min-height:auto;
  padding:4px 14px;
  border:0;
  border-radius:0;
  background:var(--umqs-surface,var(--umqs-bg,#fff));
  box-shadow:none;
}

.umqs.umqs--cruise-separator-none .umqs__cruise-separator{display:none!important;}
.umqs.umqs--cruise-separator-line .umqs__cruise-separator span{
  font-size:0;
  width:1px;
  min-width:1px;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
}
.umqs.umqs--cruise-separator-line .umqs__cruise-separator::before{top:0;bottom:0;width:2px;}
.umqs .umqs__field.is-cruise-muted{opacity:.48;filter:saturate(.8);transition:opacity .18s ease,filter .18s ease;}
.umqs .umqs__field.is-cruise-muted:focus-within{opacity:1;filter:none;}

/* Variante 1 kompakt: Reederei + Schiff | oder | Region | Zeitraum | Dauer | Reisende */
.umqs:not(.umqs--cruise-layout-hero) .umqs__grid:has(.umqs__cruise-separator){
  grid-template-columns:minmax(135px,1.05fr) minmax(135px,1.05fr) 74px minmax(180px,1.2fr) minmax(150px,1fr) minmax(120px,.8fr) minmax(150px,1fr)!important;
  align-items:end;
}
.umqs:not(.umqs--cruise-layout-hero) .umqs__grid:has(.umqs__cruise-separator) [data-umqs-date-field="start"],
.umqs:not(.umqs--cruise-layout-hero) .umqs__grid:has(.umqs__cruise-separator) [data-umqs-date-field="end"]{
  display:none!important;
}
.umqs:not(.umqs--cruise-layout-hero) .umqs__grid:has(.umqs__cruise-separator) .umqs__field--datecombo,
.umqs:not(.umqs--cruise-layout-hero) .umqs__grid:has(.umqs__cruise-separator) .umqs__field--travellerscombo{
  display:flex!important;
}
/* v37: field-wide darf bei Kreuzfahrt/Expedition mobil nicht auf auto gezwungen werden. */

/* Variante 2 Hero: Badge sauber zwischen Schiff und Region wie im Mockup */
.umqs.umqs--cruise-layout-hero .umqs__grid{
  grid-template-columns:1fr 1fr 74px 1.16fr 1fr 1fr 1fr!important;
  align-items:stretch!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-separator{
  min-height:108px!important;
  background:#fff!important;
  border-bottom:1px solid #d6e3ee!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-separator::before{
  top:0!important;
  bottom:0!important;
  background:#d6e3ee!important;
}
.umqs.umqs--cruise-layout-hero .umqs__cruise-separator span{
  min-width:54px!important;
  min-height:54px!important;
  color:var(--umqs-accent,#006d9c)!important;
  background:#fff!important;
  border-color:#d6e3ee!important;
  font-size:15px!important;
}
.umqs.umqs--cruise-layout-hero .umqs__field--wide{grid-column:auto!important;}
.umqs.umqs--cruise-layout-hero .umqs__field:nth-child(2n){border-right:1px solid #d6e3ee!important;}

@media(max-width:1100px){
  .umqs:not(.umqs--cruise-layout-hero) .umqs__grid:has(.umqs__cruise-separator),
  .umqs.umqs--cruise-layout-hero .umqs__grid{
    grid-template-columns:1fr 1fr!important;
  }
  .umqs .umqs__cruise-separator{
    grid-column:1/-1;
    min-height:34px!important;
    padding:2px 0;
  }
  .umqs .umqs__cruise-separator::before{
    top:50%!important;bottom:auto!important;left:0!important;right:0!important;width:auto!important;height:1px!important;transform:translateY(-50%)!important;
  }
  .umqs .umqs__cruise-separator span{min-height:38px;min-width:58px;}
  .umqs.umqs--cruise-separator-text .umqs__cruise-separator span,
  .umqs.umqs--cruise-separator-horizontal .umqs__cruise-separator span{min-height:auto;min-width:auto;}
}
/* v37: kein globales Mobile-1-Spalten-Override für Cruise/Expedition-Separator. */

/* Sunny Cars Schnellsuche */
.umqs__grid--sunnycars{grid-template-columns:2fr 1.2fr .9fr .9fr;}
.umqs.umqs--compact .umqs__grid--sunnycars{grid-template-columns:2fr 1.2fr .9fr .9fr;}
.umqs.umqs--ultra .umqs__grid--sunnycars{grid-template-columns:1.7fr 1.15fr .85fr .85fr;}
.umqs [data-umqs-sunnycars-status]{min-height:1.4em;}
@media(max-width:980px){.umqs__grid--sunnycars,.umqs.umqs--compact .umqs__grid--sunnycars,.umqs.umqs--ultra .umqs__grid--sunnycars{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:640px){.umqs__grid--sunnycars,.umqs.umqs--compact .umqs__grid--sunnycars,.umqs.umqs--ultra .umqs__grid--sunnycars{grid-template-columns:1fr;}}

/* Mobile Shortcode Tabs merged into IBE Dashboard */
.umqs-mobile-tabs{--mst-accent:#f6c800;--mst-active-bg:#fff7d6;--mst-inactive:#666;--mst-container-bg:#fff;--mst-panel-bg:#fff;--mst-radius:26px;--mst-shadow:rgba(15,23,42,.18);max-width:100%;margin:24px auto;border-radius:var(--mst-radius);background:var(--mst-container-bg);box-shadow:0 18px 48px var(--mst-shadow);overflow:hidden;color:var(--umqs-text,#0f172a)}
.umqs-mobile-tabs *{box-sizing:border-box}.umqs-mobile-tabs__bar{display:flex;align-items:stretch;gap:0;background:#fff;border-radius:var(--mst-radius) var(--mst-radius) 0 0;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;max-width:100%;overscroll-behavior-x:contain;box-shadow:0 1px 0 rgba(15,23,42,.06)}.umqs-mobile-tabs__bar::-webkit-scrollbar{display:none}.umqs-mobile-tabs__tab{appearance:none;border:0;background:transparent;color:var(--mst-inactive);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:116px;flex:1;padding:18px 12px 14px;border-radius:18px 18px 0 0;font-weight:900;font-size:14px;line-height:1.15;cursor:pointer;transition:all .18s ease;white-space:nowrap}.umqs-mobile-tabs__tab i{font-size:28px;line-height:1;color:currentColor}.umqs-mobile-tabs__tab.is-active{background:var(--mst-active-bg);color:var(--mst-accent);box-shadow:inset 0 -4px 0 var(--mst-accent)}.umqs-mobile-tabs__panels{background:var(--mst-panel-bg);padding:46px 34px 52px}.umqs-mobile-tabs__panel{display:none}.umqs-mobile-tabs__panel.is-active{display:block}.umqs-mobile-tabs .umqs{margin:0 auto!important;max-width:100%!important;box-shadow:none!important;background:transparent!important}.umqs-mobile-tabs .umqs__header{display:none!important}.umqs-mobile-tabs .umqs__form{margin-top:0!important}.umqs-mobile-tabs .umqs__button{background:var(--mst-current-button-bg,#2f2f2f)!important;color:var(--mst-current-button-text,#fff)!important;box-shadow:none!important}.umqs-mobile-tabs .umqs__tabs{margin-bottom:14px}.umqs-mobile-tabs .umqs__tabs span{border-radius:14px}.umqs-mobile-tabs--minimal_compact .umqs{padding:0!important}.umqs-mobile-tabs--minimal_compact .umqs__grid{gap:14px}.umqs-mobile-tabs--minimal_compact .umqs__button{margin-top:14px;border-radius:12px;height:54px}.umqs-mobile-tabs--pills{box-shadow:none;background:transparent;overflow:visible}.umqs-mobile-tabs--pills .umqs-mobile-tabs__bar{gap:14px;background:transparent;box-shadow:none;padding:0 0 22px}.umqs-mobile-tabs--pills .umqs-mobile-tabs__tab{flex:0 0 auto;min-width:150px;flex-direction:row;border-radius:999px;background:#f8fafc;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08);padding:14px 18px}.umqs-mobile-tabs--pills .umqs-mobile-tabs__tab i{font-size:18px}.umqs-mobile-tabs--pills .umqs-mobile-tabs__tab.is-active{box-shadow:0 10px 26px color-mix(in srgb,var(--mst-accent) 24%,transparent);background:var(--mst-accent);color:#fff}.umqs-mobile-tabs--pills .umqs-mobile-tabs__panels{border-radius:22px;box-shadow:0 18px 48px var(--mst-shadow)}
@media(max-width:900px){.umqs-mobile-tabs__panels{padding:28px 18px 32px}.umqs-mobile-tabs__tab{min-width:100px;font-size:12px}.umqs-mobile-tabs__tab i{font-size:23px}.umqs-mobile-tabs .umqs__grid{grid-template-columns:1fr 1fr!important}.umqs-mobile-tabs .umqs__field--wide{grid-column:1/-1!important}}
@media(max-width:560px){.umqs-mobile-tabs{border-radius:18px;margin:16px auto}.umqs-mobile-tabs__bar{border-radius:18px 18px 0 0}.umqs-mobile-tabs__tab{min-width:86px;padding:12px 9px 10px;font-size:11px}.umqs-mobile-tabs__tab i{font-size:21px}.umqs-mobile-tabs__panels{padding:18px 12px 22px}.umqs-mobile-tabs .umqs__grid{grid-template-columns:1fr!important}.umqs-mobile-tabs .umqs__tabs{display:flex!important;gap:8px;overflow-x:auto;scrollbar-width:none}.umqs-mobile-tabs .umqs__tabs::-webkit-scrollbar{display:none}.umqs-mobile-tabs .umqs__tabs span{white-space:nowrap;min-height:38px;padding:8px 12px}.umqs-mobile-tabs .umqs input,.umqs-mobile-tabs .umqs select{height:50px}.umqs-mobile-tabs .umqs__button{height:52px;font-size:16px}}

/* v31 – Mobile Tabs: echte kompakte Card-Integration nach Option 4 */
.umqs-mobile-tabs{
  max-width:min(100%,1280px)!important;
  background:var(--mst-container-bg,#fff)!important;
  border-radius:var(--mst-radius,26px)!important;
  overflow:hidden!important;
}
.umqs-mobile-tabs__bar{
  min-height:94px!important;
  align-items:stretch!important;
  background:#fff!important;
}
.umqs-mobile-tabs__tab{
  min-height:94px!important;
  padding:14px 12px 12px!important;
  border-radius:22px 22px 0 0!important;
  gap:8px!important;
}
.umqs-mobile-tabs__tab i{font-size:30px!important;}
.umqs-mobile-tabs__tab span{font-size:15px!important;font-weight:900!important;}
.umqs-mobile-tabs__tab.is-active{
  background:var(--mst-active-bg,#fff7d6)!important;
  color:var(--mst-accent,#f6c800)!important;
  box-shadow:inset 0 -5px 0 var(--mst-accent,#f6c800)!important;
}
.umqs-mobile-tabs__panels{
  padding:26px 28px 38px!important;
  background:var(--mst-panel-bg,#fff)!important;
}
.umqs-mobile-tabs .umqs{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  padding:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  background:transparent!important;
}
.umqs-mobile-tabs .umqs__form{
  width:100%!important;
  max-width:1120px!important;
  margin:0 auto!important;
  overflow:hidden!important;
  border:1px solid var(--mst-accent,var(--umqs-accent,#f6c800))!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 18px 45px rgba(15,23,42,.10)!important;
}
.umqs-mobile-tabs .umqs__tabs{
  margin:0!important;
  padding:12px 14px 0!important;
  gap:10px!important;
  display:flex!important;
  flex-wrap:wrap!important;
  overflow:visible!important;
  background:linear-gradient(90deg,var(--mst-accent,var(--umqs-accent,#f6c800)),color-mix(in srgb,var(--mst-accent,var(--umqs-accent,#f6c800)) 82%,#ffffff 18%))!important;
}
.umqs-mobile-tabs .umqs__tabs label{margin:0!important;}
.umqs-mobile-tabs .umqs__tabs span{
  min-height:44px!important;
  padding:10px 18px!important;
  border:0!important;
  border-radius:15px 15px 0 0!important;
  background:transparent!important;
  color:#fff!important;
  font-size:15px!important;
  font-weight:900!important;
  box-shadow:none!important;
}
.umqs-mobile-tabs .umqs__tabs input:checked + span{
  background:#fff!important;
  color:var(--mst-accent,var(--umqs-accent,#f6c800))!important;
}
.umqs-mobile-tabs .umqs__tabs .umqs__tab-ai span,
.umqs-mobile-tabs .umqs__tabs .umqs__ai-tab span{
  background:#fff5ff!important;
  color:#7c3aed!important;
}
.umqs-mobile-tabs .umqs__tabs .umqs__tab-ai input:checked + span,
.umqs-mobile-tabs .umqs__tabs .umqs__ai-tab input:checked + span{
  background:#fff!important;
  color:#7c3aed!important;
}
.umqs-mobile-tabs .umqs__grid{
  padding:20px 20px 0!important;
  gap:16px!important;
  background:#fff!important;
}
.umqs-mobile-tabs .umqs__grid:not(.umqs__grid--sunnycars):not(:has(.umqs__cruise-separator)){
  grid-template-columns:minmax(190px,1.4fr) minmax(170px,1.1fr) minmax(180px,1.15fr) minmax(135px,.8fr) minmax(160px,1fr)!important;
}
.umqs-mobile-tabs .umqs__grid--sunnycars{
  grid-template-columns:minmax(260px,1.7fr) minmax(230px,1.3fr) minmax(160px,.8fr) minmax(160px,.8fr)!important;
}
.umqs-mobile-tabs label,
.umqs-mobile-tabs .umqs label{
  color:var(--umqs-muted,#64748b)!important;
  font-size:13px!important;
  font-weight:900!important;
}
.umqs-mobile-tabs .umqs input,
.umqs-mobile-tabs .umqs select{
  height:54px!important;
  border-radius:12px!important;
  background:var(--umqs-field-bg,#fff)!important;
  border:1px solid var(--umqs-border,#d8e1ec)!important;
  font-size:15px!important;
}
.umqs-mobile-tabs .umqs__button{
  width:calc(100% - 40px)!important;
  margin:16px 20px 20px!important;
  height:56px!important;
  border-radius:12px!important;
  background:var(--mst-current-button-bg,#2f2f2f)!important;
  color:var(--mst-current-button-text,#fff)!important;
  box-shadow:none!important;
}
.umqs-mobile-tabs .umqs__suggestions{top:76px!important;}

/* Kreuzfahrten/Expedition im Mobile-Tab: kompakte Oder-Variante bleibt erhalten */
.umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
  grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) 72px minmax(180px,1.15fr) minmax(160px,1fr) minmax(130px,.8fr) minmax(160px,1fr)!important;
  align-items:end!important;
}
.umqs-mobile-tabs .umqs__cruise-separator{
  min-height:54px!important;
  align-self:end!important;
}
.umqs-mobile-tabs .umqs__cruise-separator span{
  font-size:15px!important;
}

@media(max-width:1100px){
  .umqs-mobile-tabs__panels{padding:22px 18px 30px!important;}
  .umqs-mobile-tabs .umqs__grid,
  .umqs-mobile-tabs .umqs__grid:not(.umqs__grid--sunnycars):not(:has(.umqs__cruise-separator)),
  .umqs-mobile-tabs .umqs__grid--sunnycars,
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .umqs-mobile-tabs .umqs__cruise-separator{grid-column:1/-1!important;}
}
@media(max-width:680px){
  .umqs-mobile-tabs{border-radius:20px!important;margin:14px auto!important;}
  .umqs-mobile-tabs__bar{
    min-height:78px!important;
    overflow-x:auto!important;
    justify-content:flex-start!important;
  }
  .umqs-mobile-tabs__tab{
    flex:0 0 96px!important;
    min-width:96px!important;
    min-height:78px!important;
    padding:10px 8px 9px!important;
  }
  .umqs-mobile-tabs__tab i{font-size:22px!important;}
  .umqs-mobile-tabs__tab span{font-size:11px!important;}
  .umqs-mobile-tabs__panels{padding:14px 10px 18px!important;}
  .umqs-mobile-tabs .umqs__form{border-radius:18px!important;}
  .umqs-mobile-tabs .umqs__tabs{padding:9px 9px 0!important;gap:6px!important;flex-wrap:nowrap!important;overflow-x:auto!important;scrollbar-width:none!important;}
  .umqs-mobile-tabs .umqs__tabs::-webkit-scrollbar{display:none!important;}
  .umqs-mobile-tabs .umqs__tabs span{min-height:39px!important;padding:8px 11px!important;font-size:12px!important;white-space:nowrap!important;}
  .umqs-mobile-tabs .umqs__grid,
  .umqs-mobile-tabs .umqs__grid:not(.umqs__grid--sunnycars):not(:has(.umqs__cruise-separator)),
  .umqs-mobile-tabs .umqs__grid--sunnycars,
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
    grid-template-columns:1fr!important;
    padding:14px 14px 0!important;
    gap:12px!important;
  }
  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select{height:50px!important;}
  .umqs-mobile-tabs .umqs__button{width:calc(100% - 28px)!important;margin:14px 14px 16px!important;height:52px!important;font-size:16px!important;}
}

/* v32 – Dropdowns/Popovers immer oberhalb anzeigen und Kreuzfahrt-Felder breiter */
.umqs-mobile-tabs,
.umqs-mobile-tabs__panels,
.umqs-mobile-tabs__panel,
.umqs-mobile-tabs .umqs,
.umqs-mobile-tabs .umqs__form,
.umqs-mobile-tabs .umqs__grid{
  overflow:visible!important;
}
.umqs__field:focus-within,
.umqs__field.is-open,
.umqs-mobile-tabs .umqs__field:focus-within{
  z-index:2147482000!important;
}
.umqs__suggestions,
.umqs .umqs__suggestions,
.umqs-mobile-tabs .umqs__suggestions,
.umqs__popover,
.umqs .umqs__popover,
.umqs-mobile-tabs .umqs__popover{
  z-index:2147483000!important;
}
.umqs-mobile-tabs .umqs__suggestions,
.umqs .umqs__suggestions{
  max-height:420px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}
.umqs-mobile-tabs [data-cruise-combobox="red"] .umqs__suggestions,
.umqs [data-cruise-combobox="red"] .umqs__suggestions,
.umqs-mobile-tabs [data-cruise-combobox="shipid"] .umqs__suggestions,
.umqs [data-cruise-combobox="shipid"] .umqs__suggestions{
  min-width:max(100%, 360px)!important;
}
.umqs-mobile-tabs [data-cruise-combobox="region"] .umqs__suggestions,
.umqs [data-cruise-combobox="region"] .umqs__suggestions,
.umqs-mobile-tabs [data-combobox="destination"] .umqs__suggestions,
.umqs [data-combobox="destination"] .umqs__suggestions{
  min-width:max(100%, 430px)!important;
}
.umqs-mobile-tabs [data-cruise-combobox="red"],
.umqs-mobile-tabs [data-cruise-combobox="shipid"]{
  min-width:220px!important;
}
.umqs-mobile-tabs [data-cruise-combobox="region"]{
  min-width:280px!important;
}
.umqs-mobile-tabs .umqs__suggestions button,
.umqs .umqs__suggestions button{
  white-space:normal!important;
}
.umqs-mobile-tabs .umqs__suggestions button span,
.umqs .umqs__suggestions button span{
  min-width:0!important;
}
@media(max-width:680px){
  .umqs-mobile-tabs [data-cruise-combobox="red"],
  .umqs-mobile-tabs [data-cruise-combobox="shipid"],
  .umqs-mobile-tabs [data-cruise-combobox="region"]{
    min-width:0!important;
  }
  .umqs-mobile-tabs .umqs__suggestions,
  .umqs .umqs__suggestions,
  .umqs-mobile-tabs [data-cruise-combobox="red"] .umqs__suggestions,
  .umqs-mobile-tabs [data-cruise-combobox="shipid"] .umqs__suggestions,
  .umqs-mobile-tabs [data-cruise-combobox="region"] .umqs__suggestions,
  .umqs-mobile-tabs [data-combobox="destination"] .umqs__suggestions{
    left:0!important;
    right:auto!important;
    min-width:100%!important;
    width:100%!important;
    max-width:calc(100vw - 36px)!important;
  }
}

/* v33 – stabile Desktop/Mobile Feldabstände, keine Überlappungen, einheitliche Eingabeschriften */
.umqs-mobile-tabs .umqs__grid,
.umqs-mobile-tabs .umqs__field,
.umqs-mobile-tabs .umqs__field *,
.umqs .umqs__grid,
.umqs .umqs__field,
.umqs .umqs__field *{
  min-width:0!important;
}
.umqs-mobile-tabs .umqs__field,
.umqs .umqs__field{
  position:relative!important;
  isolation:auto!important;
}
.umqs-mobile-tabs .umqs input,
.umqs-mobile-tabs .umqs select,
.umqs-mobile-tabs .umqs__selectlike,
.umqs input,
.umqs select,
.umqs__selectlike{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  font-size:16px!important;
  line-height:1.25!important;
  color:var(--umqs-input-text,var(--umqs-text,#0f172a))!important;
}
.umqs-mobile-tabs .umqs input::placeholder,
.umqs-mobile-tabs .umqs textarea::placeholder,
.umqs input::placeholder,
.umqs textarea::placeholder{
  color:var(--umqs-placeholder,#94a3b8)!important;
  opacity:1!important;
}
.umqs-mobile-tabs .umqs select,
.umqs select{
  color:var(--umqs-input-text,var(--umqs-text,#0f172a))!important;
}
.umqs-mobile-tabs label,
.umqs-mobile-tabs .umqs label,
.umqs label{
  font-size:13px!important;
  line-height:1.25!important;
}

/* Mobile-Tabs: Cruise/Expedition Felder sauber nebeneinander ohne starre Mindestbreiten */
.umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
  grid-template-columns:minmax(0,1.1fr) minmax(0,1.1fr) 76px minmax(0,1.45fr) minmax(0,1.1fr) minmax(0,.9fr) minmax(0,1.15fr)!important;
  column-gap:14px!important;
  row-gap:16px!important;
  align-items:end!important;
}
.umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) [data-cruise-combobox="red"],
.umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) [data-cruise-combobox="shipid"],
.umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) [data-cruise-combobox="region"]{
  min-width:0!important;
  width:100%!important;
  max-width:100%!important;
}
.umqs-mobile-tabs .umqs__cruise-separator{
  width:76px!important;
  max-width:76px!important;
  min-width:76px!important;
  align-self:end!important;
  justify-self:center!important;
  transform:none!important;
}
.umqs-mobile-tabs .umqs__cruise-separator span{
  white-space:nowrap!important;
}

/* Dropdowns sollen immer über Form/Card liegen und nicht abgeschnitten werden */
.umqs-mobile-tabs,
.umqs-mobile-tabs__panels,
.umqs-mobile-tabs__panel,
.umqs-mobile-tabs .umqs,
.umqs-mobile-tabs .umqs__form,
.umqs-mobile-tabs .umqs__grid,
.umqs{
  overflow:visible!important;
}
.umqs-mobile-tabs .umqs__field:focus-within,
.umqs-mobile-tabs .umqs__field.is-open,
.umqs .umqs__field:focus-within,
.umqs .umqs__field.is-open{
  z-index:2147482500!important;
}
.umqs-mobile-tabs .umqs__suggestions,
.umqs-mobile-tabs .umqs__popover,
.umqs .umqs__suggestions,
.umqs .umqs__popover{
  z-index:2147483000!important;
}
.umqs-mobile-tabs [data-cruise-combobox="red"] .umqs__suggestions,
.umqs-mobile-tabs [data-cruise-combobox="shipid"] .umqs__suggestions,
.umqs [data-cruise-combobox="red"] .umqs__suggestions,
.umqs [data-cruise-combobox="shipid"] .umqs__suggestions{
  min-width:max(100%,360px)!important;
}
.umqs-mobile-tabs [data-cruise-combobox="region"] .umqs__suggestions,
.umqs-mobile-tabs [data-combobox="destination"] .umqs__suggestions,
.umqs [data-cruise-combobox="region"] .umqs__suggestions,
.umqs [data-combobox="destination"] .umqs__suggestions{
  min-width:max(100%,430px)!important;
}

/* Auf kleineren Desktop/Tablets lieber umbrechen statt überlappen */
@media(max-width:1280px){
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) 70px minmax(0,1.35fr) minmax(0,1fr) minmax(0,1fr)!important;
  }
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field:last-of-type{
    grid-column:auto!important;
  }
}
@media(max-width:1100px){
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  .umqs-mobile-tabs .umqs__cruise-separator{
    grid-column:1/-1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:28px!important;
  }
}
@media(max-width:680px){
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
    grid-template-columns:1fr!important;
    gap:12px!important;
  }
  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select,
  .umqs-mobile-tabs .umqs__selectlike,
  .umqs input,
  .umqs select,
  .umqs__selectlike{
    font-size:15px!important;
  }
  .umqs-mobile-tabs .umqs__suggestions,
  .umqs .umqs__suggestions,
  .umqs-mobile-tabs [data-cruise-combobox="red"] .umqs__suggestions,
  .umqs-mobile-tabs [data-cruise-combobox="shipid"] .umqs__suggestions,
  .umqs-mobile-tabs [data-cruise-combobox="region"] .umqs__suggestions,
  .umqs-mobile-tabs [data-combobox="destination"] .umqs__suggestions{
    left:0!important;
    right:auto!important;
    width:min(100%,calc(100vw - 32px))!important;
    min-width:100%!important;
    max-width:calc(100vw - 32px)!important;
  }
}


/* v34 – finale mobile Struktur nach Mockup: konsistente Felder, lesbare Dropdowns, keine Überlappungen */
:root{
  --umqs-mobile-field-font:16px;
  --umqs-mobile-placeholder:#9AA3AD;
}
.umqs input,
.umqs select,
.umqs textarea,
.umqs .umqs__selectlike,
.umqs__airport-option,
.umqs__option-button,
.umqs__suggestions button{
  color:var(--umqs-input-text,var(--umqs-text,#0f172a))!important;
}
.umqs input::placeholder,
.umqs textarea::placeholder{
  color:var(--umqs-placeholder,var(--umqs-mobile-placeholder,#9AA3AD))!important;
  opacity:1!important;
}
.umqs select option,
.umqs__airport-option strong,
.umqs__airport-option small,
.umqs__airport-option span,
.umqs__popover,
.umqs__popover *{
  color:var(--umqs-text,#0f172a)!important;
}
.umqs__airport-option small,
.umqs__popover .umqs__calendar-help,
.umqs__calendar-week span{
  color:var(--umqs-muted,#64748b)!important;
}
.umqs__field,
.umqs__grid,
.umqs__form{min-width:0!important;}
.umqs__selectlike span{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}

/* Popovers und Dropdowns immer oberhalb der Cards */
.umqs-mobile-tabs,
.umqs-mobile-tabs__panels,
.umqs-mobile-tabs__panel,
.umqs-mobile-tabs .umqs,
.umqs-mobile-tabs .umqs__form,
.umqs-mobile-tabs .umqs__grid,
.umqs,
.umqs__form,
.umqs__grid{overflow:visible!important;}
.umqs__field:focus-within{z-index:2147482500!important;}
.umqs__suggestions,
.umqs__popover,
.umqs__airport-popover,
.umqs__duration-popover{z-index:2147483000!important;}
.umqs__calendar{width:100%!important;max-width:420px!important;}
.umqs__calendar-days button{min-height:38px!important;height:38px!important;font-size:14px!important;}
.umqs__calendar-head button{width:38px!important;height:38px!important;}

/* Desktop/Tablet: gleiche Feldhöhe und typografische Basis */
.umqs-mobile-tabs .umqs input,
.umqs-mobile-tabs .umqs select,
.umqs-mobile-tabs .umqs__selectlike,
.umqs input,
.umqs select,
.umqs__selectlike{
  height:56px!important;
  min-height:56px!important;
  font-size:16px!important;
  line-height:1.25!important;
}
.umqs-mobile-tabs .umqs label,
.umqs label{
  font-size:14px!important;
  line-height:1.2!important;
  font-weight:900!important;
}

/* Mobile Tabs – kompakte Cards, damit das Mockup nicht gestreckt wirkt */
@media(max-width:680px){
  .umqs-mobile-tabs{
    border-radius:22px!important;
    margin:10px auto 18px!important;
  }
  .umqs-mobile-tabs__bar{
    min-height:86px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    justify-content:flex-start!important;
    scroll-snap-type:x proximity;
  }
  .umqs-mobile-tabs__tab{
    flex:0 0 112px!important;
    min-width:112px!important;
    min-height:86px!important;
    padding:10px 8px!important;
    scroll-snap-align:start;
  }
  .umqs-mobile-tabs__tab i{font-size:24px!important;}
  .umqs-mobile-tabs__tab span{font-size:12px!important;line-height:1.15!important;white-space:normal!important;}
  .umqs-mobile-tabs__panels{padding:18px 10px 22px!important;}
  .umqs-mobile-tabs .umqs{padding:0!important;margin:0 auto!important;}
  .umqs-mobile-tabs .umqs__form{
    border-radius:22px!important;
    border-width:2px!important;
    overflow:visible!important;
  }
  .umqs-mobile-tabs .umqs__tabs{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:4px!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    scrollbar-width:none!important;
    padding:9px 9px 0!important;
  }
  .umqs-mobile-tabs .umqs__tabs::-webkit-scrollbar{display:none!important;}
  .umqs-mobile-tabs .umqs__tabs label{flex:0 0 auto!important;}
  .umqs-mobile-tabs .umqs__tabs span{
    min-height:46px!important;
    padding:10px 13px!important;
    border-radius:16px 16px 0 0!important;
    font-size:14px!important;
    line-height:1.05!important;
    white-space:nowrap!important;
  }
  .umqs-mobile-tabs .umqs__grid,
  .umqs-mobile-tabs .umqs__grid:not(.umqs__grid--sunnycars):not(:has(.umqs__cruise-separator)),
  .umqs-mobile-tabs .umqs__grid--sunnycars,
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:14px!important;
    padding:18px 16px 0!important;
  }
  .umqs-mobile-tabs .umqs__field{gap:8px!important;}
  .umqs-mobile-tabs .umqs label,
  .umqs-mobile-tabs .umqs__field label{
    font-size:14px!important;
    line-height:1.2!important;
    color:var(--umqs-muted,#64748b)!important;
  }
  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select,
  .umqs-mobile-tabs .umqs__selectlike{
    height:58px!important;
    min-height:58px!important;
    border-radius:14px!important;
    font-size:16px!important;
    padding-left:14px!important;
    padding-right:14px!important;
    color:var(--umqs-input-text,var(--umqs-text,#0f172a))!important;
    background:var(--umqs-field-bg,#fff)!important;
  }
  .umqs-mobile-tabs .umqs input::placeholder,
  .umqs-mobile-tabs .umqs textarea::placeholder{
    color:var(--umqs-placeholder,var(--umqs-mobile-placeholder,#9AA3AD))!important;
  }
  .umqs-mobile-tabs .umqs__button{
    width:calc(100% - 32px)!important;
    margin:18px 16px 18px!important;
    height:60px!important;
    border-radius:14px!important;
    font-size:18px!important;
    font-weight:900!important;
  }

  /* 1. Pauschalreise: Ziel, Abflug, Zeitraum volle Breite; Dauer/Reisende 2 Spalten */
  .umqs-mobile-tabs .umqs.umqs--type-pa [data-combobox="destination"]{grid-column:1/-1!important;}
  .umqs-mobile-tabs .umqs.umqs--type-pa [data-pa-only]{grid-column:1/-1!important;display:flex;}
  .umqs-mobile-tabs .umqs.umqs--type-pa .umqs__field--datecombo{grid-column:1/-1!important;}
  .umqs-mobile-tabs .umqs.umqs--type-pa .umqs__field:has(select[name="duration"]){grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs.umqs--type-pa .umqs__field--travellerscombo{grid-column:2/3!important;}

  /* 2. Nur Hotel: Ziel und Zeitraum volle Breite; Dauer/Reisende 2 Spalten */
  .umqs-mobile-tabs .umqs.umqs--type-nh [data-combobox="destination"]{grid-column:1/-1!important;}
  .umqs-mobile-tabs .umqs.umqs--type-nh [data-pa-only]{display:none!important;}
  .umqs-mobile-tabs .umqs.umqs--type-nh .umqs__field--datecombo{grid-column:1/-1!important;}
  .umqs-mobile-tabs .umqs.umqs--type-nh .umqs__field:has(select[name="duration"]){grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs.umqs--type-nh .umqs__field--travellerscombo{grid-column:2/3!important;}

  /* 3. Mietwagen: Abholort und Mietzeitraum volle Breite; Uhrzeiten 2 Spalten */
  .umqs-mobile-tabs .umqs__grid--sunnycars [data-combobox="sunnycars-region"]{grid-column:1/-1!important;}
  .umqs-mobile-tabs .umqs__grid--sunnycars [data-umqs-sunnycars-datecombo]{grid-column:1/-1!important;}
  .umqs-mobile-tabs .umqs__grid--sunnycars [data-umqs-sunnycars-date-field]{display:none!important;}
  .umqs-mobile-tabs .umqs__grid--sunnycars .umqs__field:has(input[name="pickupTime"]){grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs__grid--sunnycars .umqs__field:has(input[name="dropoffTime"]){grid-column:2/3!important;}

  /* 4/5. Kreuzfahrten + Expedition: Reederei, Schiff, Region, Reisende voll; Zeitraum+Dauer 2 Spalten */
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) [data-cruise-combobox="red"]{grid-column:1/-1!important;}
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) [data-cruise-combobox="shipid"]{grid-column:1/-1!important;}
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__cruise-separator{
    grid-column:1/-1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:30px!important;
    margin:-2px 0!important;
  }
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__cruise-separator::before{
    left:0!important;right:0!important;top:50%!important;height:1px!important;width:auto!important;transform:translateY(-50%)!important;
  }
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__cruise-separator span{
    min-height:30px!important;
    min-width:54px!important;
    padding:4px 10px!important;
    font-size:13px!important;
  }
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) [data-cruise-combobox="region"]{
    grid-column:1/-1!important;
    padding-bottom:18px!important;
    border-bottom:1px solid color-mix(in srgb,var(--umqs-accent,#006d9c) 28%,var(--umqs-border,#d8e1ec))!important;
  }
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field--datecombo{grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field:has(select[name="duration"]){grid-column:2/3!important;}
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field--travellerscombo{grid-column:1/-1!important;}

  /* Bei Expedition gibt es nur Expeditionsreise + AI – Tabs sauber groß */
  .umqs-mobile-tabs .umqs[data-umqs-provider="expedition"] .umqs__tabs label{flex:1 1 0!important;}

  /* Mobile Dropdowns als echte Overlays – lesbar und nicht abgeschnitten */
  .umqs-mobile-tabs .umqs__suggestions,
  .umqs .umqs__suggestions{
    position:absolute!important;
    left:0!important;
    right:auto!important;
    top:calc(100% + 8px)!important;
    width:min(100%,calc(100vw - 40px))!important;
    min-width:100%!important;
    max-width:calc(100vw - 40px)!important;
    max-height:48vh!important;
    background:#fff!important;
    color:#0f172a!important;
    border-radius:16px!important;
    box-shadow:0 24px 60px rgba(15,23,42,.26)!important;
    z-index:2147483000!important;
  }
  .umqs-mobile-tabs .umqs__suggestions button,
  .umqs .umqs__suggestions button{
    color:#0f172a!important;
    font-size:15px!important;
  }
  .umqs-mobile-tabs .umqs__suggestions small,
  .umqs .umqs__suggestions small{
    color:#64748b!important;
  }

  /* Kalender/Zeitraum Popover einheitlich groß */
  .umqs-mobile-tabs .umqs__popover,
  .umqs-mobile-tabs .umqs__airport-popover,
  .umqs-mobile-tabs [data-umqs-date-popover],
  .umqs-mobile-tabs [data-umqs-sunnycars-date-popover],
  .umqs-mobile-tabs [data-umqs-travellers-popover],
  .umqs-mobile-tabs .umqs__duration-popover{
    position:fixed!important;
    left:50%!important;
    top:50%!important;
    right:auto!important;
    bottom:auto!important;
    transform:translate(-50%,-50%)!important;
    width:min(92vw,430px)!important;
    max-width:calc(100vw - 24px)!important;
    max-height:calc(100vh - 56px)!important;
    overflow:auto!important;
    background:#fff!important;
    color:#0f172a!important;
    border-radius:18px!important;
    z-index:2147483000!important;
  }
}

@media(max-width:390px){
  .umqs-mobile-tabs .umqs__tabs span{font-size:13px!important;padding-left:9px!important;padding-right:9px!important;}
  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select,
  .umqs-mobile-tabs .umqs__selectlike{font-size:15px!important;}
}

/* v35 – finale Fixes: mobile Feldbreiten, lesbare Popups, Kalender-Mindestgröße */
.umqs,
.umqs-mobile-tabs,
.umqs-mobile-tabs__panels,
.umqs-mobile-tabs__panel,
.umqs-mobile-tabs .umqs,
.umqs-mobile-tabs .umqs__form,
.umqs-mobile-tabs .umqs__grid,
.umqs-mobile-tabs .umqs__field{
  max-width:100%!important;
  min-width:0!important;
  overflow:visible!important;
}
.umqs-mobile-tabs .umqs__field,
.umqs-mobile-tabs .umqs__field > input,
.umqs-mobile-tabs .umqs__field > select,
.umqs-mobile-tabs .umqs__field > button.umqs__selectlike,
.umqs-mobile-tabs .umqs__field .umqs__combo-input,
.umqs-mobile-tabs .umqs__selectlike,
.umqs-mobile-tabs .umqs input,
.umqs-mobile-tabs .umqs select{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
}
.umqs-mobile-tabs .umqs input,
.umqs-mobile-tabs .umqs select,
.umqs-mobile-tabs .umqs__selectlike,
.umqs input,
.umqs select,
.umqs__selectlike{
  height:56px!important;
  min-height:56px!important;
  font-size:16px!important;
  line-height:1.25!important;
  color:#0f172a!important;
  background:#fff!important;
  -webkit-text-fill-color:#0f172a!important;
}
.umqs-mobile-tabs .umqs input::placeholder,
.umqs-mobile-tabs .umqs textarea::placeholder,
.umqs input::placeholder,
.umqs textarea::placeholder{
  color:#9AA3AD!important;
  opacity:1!important;
  -webkit-text-fill-color:#9AA3AD!important;
}
.umqs-mobile-tabs .umqs option,
.umqs option{
  color:#0f172a!important;
  background:#fff!important;
}

/* Abflughafen-Popup immer lesbar */
.umqs__airport-popover,
.umqs-mobile-tabs .umqs__airport-popover,
.umqs__airport-list,
.umqs-mobile-tabs .umqs__airport-list,
.umqs__airport-option,
.umqs-mobile-tabs .umqs__airport-option,
.umqs__airport-option strong,
.umqs__airport-option span,
.umqs__airport-option small{
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
}
.umqs__airport-popover,
.umqs-mobile-tabs .umqs__airport-popover,
.umqs__airport-list,
.umqs-mobile-tabs .umqs__airport-list{
  background:#fff!important;
}
.umqs__airport-option{
  background:#fff!important;
  border-color:color-mix(in srgb,var(--umqs-accent,#f6c800) 28%,#e2e8f0)!important;
}
.umqs__airport-option:hover,
.umqs__airport-option:focus-within{
  background:color-mix(in srgb,var(--umqs-accent,#f6c800) 8%,#fff)!important;
}
.umqs__airport-actions button{
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
}

/* Desktop Kalender/Datumspopups nie winzig darstellen */
.umqs__calendar,
.umqs [data-umqs-date-popover],
.umqs [data-umqs-sunnycars-date-popover],
.umqs-mobile-tabs [data-umqs-date-popover],
.umqs-mobile-tabs [data-umqs-sunnycars-date-popover]{
  min-width:380px!important;
  min-height:390px!important;
  background:#fff!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  z-index:2147483000!important;
}
.umqs__calendar-days,
.umqs__calendar-week{
  min-width:330px!important;
}
.umqs__calendar-days button,
.umqs__calendar-days span{
  min-width:40px!important;
  min-height:40px!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
}

@media(max-width:680px){
  .umqs-mobile-tabs__panels{padding-left:10px!important;padding-right:10px!important;}
  .umqs-mobile-tabs .umqs{width:100%!important;}
  .umqs-mobile-tabs .umqs__form{width:100%!important;}
  .umqs-mobile-tabs .umqs__grid,
  .umqs-mobile-tabs .umqs__grid:not(.umqs__grid--sunnycars):not(:has(.umqs__cruise-separator)),
  .umqs-mobile-tabs .umqs__grid--sunnycars,
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    column-gap:12px!important;
    row-gap:14px!important;
    padding:16px 14px 0!important;
    width:100%!important;
  }

  /* Pauschalreise: volle Breite wie gewünscht */
  .umqs-mobile-tabs .umqs.umqs--type-pa [data-combobox="destination"],
  .umqs-mobile-tabs .umqs.umqs--type-pa [data-pa-only],
  .umqs-mobile-tabs .umqs.umqs--type-pa .umqs__field--datecombo{
    grid-column:1/-1!important;
  }
  .umqs-mobile-tabs .umqs.umqs--type-pa .umqs__field:has(select[name="duration"]){grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs.umqs--type-pa .umqs__field--travellerscombo{grid-column:2/3!important;}

  /* Nur Hotel */
  .umqs-mobile-tabs .umqs.umqs--type-nh [data-combobox="destination"],
  .umqs-mobile-tabs .umqs.umqs--type-nh .umqs__field--datecombo{
    grid-column:1/-1!important;
  }
  .umqs-mobile-tabs .umqs.umqs--type-nh .umqs__field:has(select[name="duration"]){grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs.umqs--type-nh .umqs__field--travellerscombo{grid-column:2/3!important;}

  /* Mietwagen */
  .umqs-mobile-tabs .umqs__grid--sunnycars [data-combobox="sunnycars-region"],
  .umqs-mobile-tabs .umqs__grid--sunnycars [data-umqs-sunnycars-datecombo]{
    grid-column:1/-1!important;
  }
  .umqs-mobile-tabs .umqs__grid--sunnycars .umqs__field:has(input[name="pickupTime"]){grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs__grid--sunnycars .umqs__field:has(input[name="dropoffTime"]){grid-column:2/3!important;}

  /* Kreuzfahrten/Expedition: volle Breite für Reederei, Schiff, Region; Datum+Dauer 2 Spalten; Reisende voll */
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) [data-cruise-combobox="red"],
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) [data-cruise-combobox="shipid"],
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) [data-cruise-combobox="region"]{
    grid-column:1/-1!important;
    width:100%!important;
  }
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__cruise-separator{
    grid-column:1/-1!important;
    width:100%!important;
    max-width:none!important;
    min-width:0!important;
    margin:0!important;
  }
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field--datecombo{grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field:has(select[name="duration"]){grid-column:2/3!important;}
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field--travellerscombo{grid-column:1/-1!important;}

  .umqs-mobile-tabs .umqs label,
  .umqs-mobile-tabs .umqs__field label{
    font-size:14px!important;
    line-height:1.25!important;
    margin-bottom:4px!important;
  }
  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select,
  .umqs-mobile-tabs .umqs__selectlike{
    height:56px!important;
    min-height:56px!important;
    border-radius:14px!important;
    padding:0 14px!important;
    font-size:16px!important;
  }
  .umqs-mobile-tabs .umqs__button{
    width:calc(100% - 28px)!important;
    margin:18px 14px 18px!important;
  }

  .umqs-mobile-tabs .umqs__airport-popover,
  .umqs-mobile-tabs [data-umqs-date-popover],
  .umqs-mobile-tabs [data-umqs-sunnycars-date-popover],
  .umqs-mobile-tabs [data-umqs-travellers-popover],
  .umqs-mobile-tabs .umqs__duration-popover{
    position:fixed!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    width:min(94vw,440px)!important;
    min-width:min(94vw,360px)!important;
    min-height:260px!important;
    max-height:calc(100vh - 64px)!important;
    overflow:auto!important;
    z-index:2147483000!important;
  }
  .umqs-mobile-tabs .umqs__calendar,
  .umqs-mobile-tabs [data-umqs-date-popover] .umqs__calendar,
  .umqs-mobile-tabs [data-umqs-sunnycars-date-popover] .umqs__calendar{
    min-width:0!important;
    width:100%!important;
    min-height:360px!important;
  }
}

@media(max-width:390px){
  .umqs-mobile-tabs .umqs__grid,
  .umqs-mobile-tabs .umqs__grid:not(.umqs__grid--sunnycars):not(:has(.umqs__cruise-separator)),
  .umqs-mobile-tabs .umqs__grid--sunnycars,
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
    padding-left:12px!important;
    padding-right:12px!important;
    column-gap:10px!important;
  }
  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select,
  .umqs-mobile-tabs .umqs__selectlike{font-size:15px!important;}
}

/* v36 – Mobile Finalfix: echte Full-Width-Felder, AI trennt sauber, lesbare Dropdowns */
.umqs [hidden],
.umqs-mobile-tabs [hidden],
.umqs-mobile-tabs [data-umqs-manual-fields][hidden],
.umqs.umqs--type-ai [data-umqs-manual-fields]{
  display:none!important;
}
.umqs.umqs--type-ai [data-umqs-ai-panel]:not([hidden]){
  display:block!important;
}

/* Abflughafen-Dropdown immer sichtbar/lesbar */
.umqs__airport-popover,
.umqs-mobile-tabs .umqs__airport-popover{
  background:#fff!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  border:1px solid rgba(15,23,42,.12)!important;
  box-shadow:0 24px 70px rgba(15,23,42,.28)!important;
}
.umqs__airport-list,
.umqs-mobile-tabs .umqs__airport-list{
  background:#fff!important;
  color:#0f172a!important;
}
.umqs__airport-option,
.umqs-mobile-tabs .umqs__airport-option{
  display:flex!important;
  align-items:center!important;
  width:100%!important;
  min-height:52px!important;
  background:#fff!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  border-color:color-mix(in srgb,var(--umqs-accent,#f6c800) 22%,#dbe8f0)!important;
}
.umqs__airport-option span,
.umqs-mobile-tabs .umqs__airport-option span{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  flex:1 1 auto!important;
  width:auto!important;
  min-width:0!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
}
.umqs__airport-option strong,
.umqs-mobile-tabs .umqs__airport-option strong{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  opacity:1!important;
  visibility:visible!important;
  font-weight:800!important;
}
.umqs__airport-option small,
.umqs-mobile-tabs .umqs__airport-option small{
  display:block!important;
  flex:0 0 auto!important;
  color:#64748b!important;
  -webkit-text-fill-color:#64748b!important;
  opacity:1!important;
  visibility:visible!important;
}
.umqs__airport-option input,
.umqs-mobile-tabs .umqs__airport-option input{
  flex:0 0 18px!important;
  width:18px!important;
  min-width:18px!important;
  height:18px!important;
  opacity:1!important;
  appearance:auto!important;
}

@media(max-width:680px){
  /* Alle 4 Haupttabs passen gleichzeitig ins Display */
  .umqs-mobile-tabs{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }
  .umqs-mobile-tabs__bar{
    display:grid!important;
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    overflow:visible!important;
    min-height:74px!important;
    width:100%!important;
  }
  .umqs-mobile-tabs__tab{
    min-width:0!important;
    width:100%!important;
    flex:0 1 auto!important;
    min-height:74px!important;
    padding:8px 3px 7px!important;
    gap:4px!important;
    border-radius:18px 18px 0 0!important;
    overflow:hidden!important;
  }
  .umqs-mobile-tabs__tab i{font-size:21px!important;line-height:1!important;}
  .umqs-mobile-tabs__tab span{
    font-size:10.5px!important;
    line-height:1.08!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .umqs-mobile-tabs__panels{
    padding:16px 10px 22px!important;
    overflow:visible!important;
  }
  .umqs-mobile-tabs__panel,
  .umqs-mobile-tabs__panel.is-active,
  .umqs-mobile-tabs .umqs,
  .umqs-mobile-tabs .umqs__form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }

  .umqs-mobile-tabs .umqs__grid,
  .umqs-mobile-tabs .umqs__grid--provider-urania,
  .umqs-mobile-tabs .umqs__grid--provider-traveltainment,
  .umqs-mobile-tabs .umqs__grid--provider-cruise,
  .umqs-mobile-tabs .umqs__grid--provider-expedition,
  .umqs-mobile-tabs .umqs__grid--sunnycars{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:14px 12px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:18px 16px 0!important;
  }
  .umqs-mobile-tabs .umqs__field{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    grid-column:auto!important;
  }
  .umqs-mobile-tabs .umqs__field > input,
  .umqs-mobile-tabs .umqs__field > select,
  .umqs-mobile-tabs .umqs__selectlike,
  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  /* Pauschalreisen */
  .umqs-mobile-tabs .umqs.umqs--type-pa [data-combobox="destination"],
  .umqs-mobile-tabs .umqs.umqs--type-pa [data-pa-only],
  .umqs-mobile-tabs .umqs.umqs--type-pa .umqs__field--datecombo{
    grid-column:1/-1!important;
  }
  .umqs-mobile-tabs .umqs.umqs--type-pa .umqs__field--durationcombo{grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs.umqs--type-pa .umqs__field--travellerscombo{grid-column:2/3!important;}

  /* Nur Hotel */
  .umqs-mobile-tabs .umqs.umqs--type-nh [data-combobox="destination"],
  .umqs-mobile-tabs .umqs.umqs--type-nh .umqs__field--datecombo{
    grid-column:1/-1!important;
  }
  .umqs-mobile-tabs .umqs.umqs--type-nh [data-pa-only]{display:none!important;}
  .umqs-mobile-tabs .umqs.umqs--type-nh .umqs__field--durationcombo{grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs.umqs--type-nh .umqs__field--travellerscombo{grid-column:2/3!important;}

  /* Mietwagen */
  .umqs-mobile-tabs .umqs__grid--sunnycars [data-combobox="sunnycars-region"],
  .umqs-mobile-tabs .umqs__grid--sunnycars [data-umqs-sunnycars-datecombo]{grid-column:1/-1!important;}
  .umqs-mobile-tabs .umqs__grid--sunnycars .umqs__field:has(input[name="pickupTime"]){grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs__grid--sunnycars .umqs__field:has(input[name="dropoffTime"]){grid-column:2/3!important;}

  /* Kreuzfahrten und Expeditionen */
  .umqs-mobile-tabs .umqs--provider-cruise [data-cruise-combobox="red"],
  .umqs-mobile-tabs .umqs--provider-cruise [data-cruise-combobox="shipid"],
  .umqs-mobile-tabs .umqs--provider-cruise [data-cruise-combobox="region"],
  .umqs-mobile-tabs .umqs--provider-expedition [data-cruise-combobox="red"],
  .umqs-mobile-tabs .umqs--provider-expedition [data-cruise-combobox="shipid"],
  .umqs-mobile-tabs .umqs--provider-expedition [data-cruise-combobox="region"]{
    grid-column:1/-1!important;
  }
  .umqs-mobile-tabs .umqs--provider-cruise .umqs__cruise-separator,
  .umqs-mobile-tabs .umqs--provider-expedition .umqs__cruise-separator{
    grid-column:1/-1!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    min-height:34px!important;
  }
  .umqs-mobile-tabs .umqs--provider-cruise .umqs__field--datecombo,
  .umqs-mobile-tabs .umqs--provider-expedition .umqs__field--datecombo{grid-column:1/2!important;}
  .umqs-mobile-tabs .umqs--provider-cruise .umqs__field--durationcombo,
  .umqs-mobile-tabs .umqs--provider-expedition .umqs__field--durationcombo{grid-column:2/3!important;}
  .umqs-mobile-tabs .umqs--provider-cruise .umqs__field--travellerscombo,
  .umqs-mobile-tabs .umqs--provider-expedition .umqs__field--travellerscombo{grid-column:1/-1!important;}

  .umqs-mobile-tabs .umqs label,
  .umqs-mobile-tabs .umqs__field label{
    font-size:14px!important;
    line-height:1.25!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow:visible!important;
  }
  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select,
  .umqs-mobile-tabs .umqs__selectlike{
    height:58px!important;
    min-height:58px!important;
    font-size:16px!important;
    line-height:1.25!important;
    color:#0f172a!important;
    -webkit-text-fill-color:#0f172a!important;
    background:#fff!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
  .umqs-mobile-tabs .umqs input::placeholder{
    color:#9AA3AD!important;
    -webkit-text-fill-color:#9AA3AD!important;
    opacity:1!important;
  }
  .umqs-mobile-tabs .umqs__button{
    grid-column:1/-1!important;
    width:calc(100% - 32px)!important;
    margin:18px 16px!important;
  }
}


/* v37 – Mobile Cruise/Expedition Layout Fix: kein Überlappen durch Separator-Regeln */
@media (min-width: 641px){
  .umqs:not(.umqs--cruise-layout-hero) .umqs__grid:has(.umqs__cruise-separator) .umqs__field--wide{
    grid-column:auto!important;
  }
}
@media (max-width: 640px){
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator){
    grid-template-columns:1fr 1fr!important;
    gap:14px!important;
  }
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field--wide,
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field--datecombo,
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field--travellerscombo{
    grid-column:1 / -1!important;
    width:100%!important;
    min-width:0!important;
  }
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field:not(.umqs__field--wide){
    min-width:0!important;
  }
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__cruise-separator{
    grid-column:1 / -1!important;
    width:100%!important;
    min-height:34px!important;
  }
}


/* v38 – Mobile Cruise/Expedition Grid + Airport Checkbox Fix */
@media (max-width:680px){
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field:has(select[name="duration"]),
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator) .umqs__field--durationcombo{
    grid-column:1 / 2 !important;
  }
}

/* Abflughafen: nur ein sichtbares Häkchen/Checkbox-Symbol */
.umqs__airport-option input[type="checkbox"],
.umqs-mobile-tabs .umqs__airport-option input[type="checkbox"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  flex:0 0 22px!important;
  margin:0 10px 0 0!important;
  border:2px solid color-mix(in srgb,var(--umqs-accent,#f6c800) 55%,#d8e1ec)!important;
  border-radius:4px!important;
  background:#fff!important;
  display:inline-grid!important;
  place-content:center!important;
  position:relative!important;
  opacity:1!important;
}
.umqs__airport-option input[type="checkbox"]:checked,
.umqs-mobile-tabs .umqs__airport-option input[type="checkbox"]:checked{
  background:var(--umqs-accent,#f6c800)!important;
  border-color:var(--umqs-accent,#f6c800)!important;
}
.umqs__airport-option input[type="checkbox"]:checked::after,
.umqs-mobile-tabs .umqs__airport-option input[type="checkbox"]:checked::after{
  content:""!important;
  width:7px!important;
  height:12px!important;
  border:solid #0f172a!important;
  border-width:0 3px 3px 0!important;
  transform:rotate(45deg)!important;
  margin-top:-2px!important;
}
.umqs__airport-option input[type="checkbox"]::before,
.umqs-mobile-tabs .umqs__airport-option input[type="checkbox"]::before{
  content:none!important;
  display:none!important;
}

/* v39 – Mobile AI + Airport Checkbox Fix */
/* AI Tab: manuelle Felder zuverlässig ausblenden, auch wenn hidden/class durch externe Skripte verzögert ist */
.umqs:has(input[name="type"][value="AI"]:checked) [data-umqs-manual-fields],
.umqs.umqs--type-ai [data-umqs-manual-fields],
.umqs-mobile-tabs .umqs:has(input[name="type"][value="AI"]:checked) [data-umqs-manual-fields],
.umqs-mobile-tabs .umqs.umqs--type-ai [data-umqs-manual-fields]{
  display:none!important;
  visibility:hidden!important;
  height:0!important;
  min-height:0!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
}
.umqs:has(input[name="type"][value="AI"]:checked) [data-umqs-ai-panel],
.umqs.umqs--type-ai [data-umqs-ai-panel],
.umqs-mobile-tabs .umqs:has(input[name="type"][value="AI"]:checked) [data-umqs-ai-panel],
.umqs-mobile-tabs .umqs.umqs--type-ai [data-umqs-ai-panel]{
  display:block!important;
  visibility:visible!important;
  height:auto!important;
  min-height:0!important;
  overflow:visible!important;
}
.umqs:has(input[name="type"][value="AI"]:checked) [data-umqs-manual-submit],
.umqs.umqs--type-ai [data-umqs-manual-submit]{display:none!important;}

/* Airport Checkboxen: quadratisch, klickbar, nur ein Symbol */
.umqs__airport-option{
  position:relative!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}
.umqs__airport-option input[type="checkbox"],
.umqs-mobile-tabs .umqs__airport-option input[type="checkbox"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  box-sizing:border-box!important;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  max-width:24px!important;
  flex:0 0 24px!important;
  border:2px solid color-mix(in srgb,var(--umqs-accent,#f6c800) 65%,#dbe8f0)!important;
  border-radius:4px!important;
  background:#fff!important;
  display:inline-block!important;
  position:relative!important;
  opacity:1!important;
  pointer-events:auto!important;
  z-index:2!important;
  margin:0 12px 0 0!important;
  cursor:pointer!important;
}
.umqs__airport-option input[type="checkbox"]:checked,
.umqs-mobile-tabs .umqs__airport-option input[type="checkbox"]:checked{
  background:var(--umqs-accent,#f6c800)!important;
  border-color:var(--umqs-accent,#f6c800)!important;
}
.umqs__airport-option input[type="checkbox"]:checked::after,
.umqs-mobile-tabs .umqs__airport-option input[type="checkbox"]:checked::after{
  content:""!important;
  position:absolute!important;
  left:7px!important;
  top:2px!important;
  width:7px!important;
  height:13px!important;
  border:solid #0f172a!important;
  border-width:0 3px 3px 0!important;
  transform:rotate(45deg)!important;
  display:block!important;
}
.umqs__airport-option input[type="checkbox"]::before,
.umqs-mobile-tabs .umqs__airport-option input[type="checkbox"]::before{content:none!important;display:none!important;}
.umqs__airport-option::before,
.umqs__airport-option::after{display:none!important;content:none!important;}

@media(max-width:680px){
  .umqs-mobile-tabs .umqs__airport-option{min-height:56px!important;padding:12px!important;}
  .umqs-mobile-tabs .umqs__airport-option input[type="checkbox"]{width:26px!important;height:26px!important;min-width:26px!important;max-width:26px!important;flex-basis:26px!important;}
}

/* v40 – Airport checkbox polish + expedition placeholders support */
.umqs .umqs__airport-list .umqs__airport-option,
.umqs-mobile-tabs .umqs .umqs__airport-list .umqs__airport-option{
  display:grid!important;
  grid-template-columns:28px minmax(0,1fr)!important;
  align-items:center!important;
  column-gap:14px!important;
  min-height:64px!important;
  padding:12px 16px!important;
}
.umqs .umqs__airport-list .umqs__airport-option > input[type="checkbox"],
.umqs-mobile-tabs .umqs .umqs__airport-list .umqs__airport-option > input[type="checkbox"]{
  appearance:none!important;
  -webkit-appearance:none!important;
  box-sizing:border-box!important;
  inline-size:26px!important;
  block-size:26px!important;
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  max-width:26px!important;
  min-height:26px!important;
  max-height:26px!important;
  aspect-ratio:1/1!important;
  flex:none!important;
  flex-basis:26px!important;
  display:block!important;
  position:relative!important;
  margin:0!important;
  padding:0!important;
  border:2px solid color-mix(in srgb,var(--umqs-accent,#f6c800) 58%,#d8e1ec)!important;
  border-radius:6px!important;
  background:#fff!important;
  opacity:1!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  transform:none!important;
}
.umqs .umqs__airport-list .umqs__airport-option > input[type="checkbox"]:checked,
.umqs-mobile-tabs .umqs .umqs__airport-list .umqs__airport-option > input[type="checkbox"]:checked{
  background:var(--umqs-accent,#f6c800)!important;
  border-color:var(--umqs-accent,#f6c800)!important;
}
.umqs .umqs__airport-list .umqs__airport-option > input[type="checkbox"]::before,
.umqs-mobile-tabs .umqs .umqs__airport-list .umqs__airport-option > input[type="checkbox"]::before,
.umqs .umqs__airport-list .umqs__airport-option::before,
.umqs .umqs__airport-list .umqs__airport-option::after{
  content:none!important;
  display:none!important;
}
.umqs .umqs__airport-list .umqs__airport-option > input[type="checkbox"]:checked::after,
.umqs-mobile-tabs .umqs .umqs__airport-list .umqs__airport-option > input[type="checkbox"]:checked::after{
  content:""!important;
  position:absolute!important;
  left:8px!important;
  top:3px!important;
  width:7px!important;
  height:13px!important;
  border:solid #0f172a!important;
  border-width:0 3px 3px 0!important;
  transform:rotate(45deg)!important;
  display:block!important;
}
.umqs .umqs__airport-list .umqs__airport-option > span,
.umqs-mobile-tabs .umqs .umqs__airport-list .umqs__airport-option > span{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
}
.umqs .umqs__airport-list .umqs__airport-option strong,
.umqs-mobile-tabs .umqs .umqs__airport-list .umqs__airport-option strong{
  color:#0f172a!important;
  font-weight:800!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
.umqs .umqs__airport-list .umqs__airport-option small,
.umqs-mobile-tabs .umqs .umqs__airport-list .umqs__airport-option small{
  color:#64748b!important;
  font-weight:900!important;
}

/* v2.3.1ao visual-only portal search redesign
   Only presentation overrides. No markup, JS, form names, hidden fields or flows are changed. */
:root{
  --umqs-portal-blue:#063b73;
  --umqs-portal-blue-hover:#052f5b;
  --umqs-portal-yellow:#ffcc00;
  --umqs-portal-ink:#101828;
  --umqs-portal-muted:#667085;
  --umqs-portal-line:#d8e2ea;
  --umqs-ai-pill-gradient:linear-gradient(135deg,#4f46e5,#c026d3);
}

.umqs,
.umqs-mobile-tabs .umqs{
  font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
  color:var(--umqs-portal-ink)!important;
}

.umqs{
  border:0!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 18px 50px rgba(16,24,40,.16)!important;
}

.umqs__header{
  margin-bottom:14px!important;
}

.umqs__header h2,
.umqs h2{
  color:var(--umqs-portal-ink)!important;
  letter-spacing:0!important;
}

.umqs__header p,
.umqs__hint{
  color:var(--umqs-portal-muted)!important;
}

/* Top/mobile product tabs */
.umqs-mobile-tabs{
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
}

.umqs-mobile-tabs__bar{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:7px!important;
  padding:7px!important;
  border:1px solid rgba(6,59,115,.1)!important;
  border-radius:24px!important;
  background:rgba(255,255,255,.9)!important;
  box-shadow:0 14px 34px rgba(16,24,40,.08)!important;
}

.umqs-mobile-tabs__tab{
  min-height:64px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:10px!important;
  border:1px solid transparent!important;
  border-radius:18px!important;
  background:transparent!important;
  color:#24364b!important;
  font-weight:850!important;
  box-shadow:none!important;
  position:relative!important;
}

.umqs-mobile-tabs__tab i{
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:currentColor!important;
  font-size:20px!important;
}

.umqs-mobile-tabs__tab span{
  color:currentColor!important;
  font-size:15px!important;
  font-weight:850!important;
}

.umqs-mobile-tabs__tab:after{
  content:""!important;
  position:absolute!important;
  left:18px!important;
  right:18px!important;
  bottom:7px!important;
  height:3px!important;
  border-radius:999px!important;
  background:transparent!important;
}

.umqs-mobile-tabs__tab:hover,
.umqs-mobile-tabs__tab:focus-visible{
  background:#f6f9fb!important;
  border-color:rgba(6,59,115,.12)!important;
  outline:none!important;
}

.umqs-mobile-tabs__tab.is-active{
  background:linear-gradient(180deg,#fff 0%,#f8fbfd 100%)!important;
  color:var(--umqs-portal-blue)!important;
  border-color:rgba(6,59,115,.16)!important;
  box-shadow:0 10px 22px rgba(6,59,115,.12)!important;
}

.umqs-mobile-tabs__tab.is-active:after{
  background:var(--umqs-portal-yellow)!important;
}

.umqs-mobile-tabs__panels{
  margin-top:12px!important;
  padding:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

/* Travel type pills */
.umqs__tabs{
  display:inline-flex!important;
  max-width:100%!important;
  gap:10px!important;
  padding:0!important;
  margin:0 0 14px!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}

.umqs__tabs label{
  display:inline-flex!important;
}

.umqs__tabs span{
  min-height:38px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  padding:8px 16px!important;
  border:0!important;
  border-radius:999px!important;
  background:#eef4f8!important;
  color:#24364b!important;
  font-size:13px!important;
  font-weight:900!important;
  box-shadow:none!important;
}

.umqs__tabs input:checked+span{
  background:var(--umqs-portal-yellow)!important;
  color:#1f2933!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)!important;
}

.umqs__tabs .umqs__tab-ai span,
.umqs__tabs .umqs__tab-ai input:checked+span{
  background:var(--umqs-ai-pill-gradient)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(192,38,211,.25),inset 0 0 0 1px rgba(255,255,255,.22)!important;
}

.umqs__ai-tab-icon{
  width:16px!important;
  height:16px!important;
  fill:currentColor!important;
}

/* Portal-style vacation/hotel search bar */
.umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid{
  gap:8px!important;
  align-items:stretch!important;
  padding:8px!important;
  border:2px solid var(--umqs-portal-yellow)!important;
  border-radius:16px!important;
  background:var(--umqs-portal-yellow)!important;
  box-shadow:0 12px 28px rgba(111,86,0,.13)!important;
}

.umqs.umqs--ultra:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid{
  grid-template-columns:minmax(250px,1.65fr) minmax(170px,1.08fr) minmax(180px,1.08fr) minmax(140px,.82fr) minmax(150px,.9fr)!important;
}

.umqs.umqs--ultra.umqs--type-nh:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid{
  grid-template-columns:minmax(310px,1.85fr) minmax(190px,1.05fr) minmax(150px,.82fr) minmax(160px,.9fr)!important;
}

.umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__field{
  gap:0!important;
}

.umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__field--wide{
  grid-column:span 1!important;
}

.umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs label,
.umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__field label{
  min-height:22px!important;
  padding:0 12px 5px!important;
  color:#1f2933!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:0!important;
}

.umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) input,
.umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) select,
.umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__selectlike,
.umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__stepper{
  height:58px!important;
  min-height:58px!important;
  border:0!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#0f172a!important;
  box-shadow:0 1px 0 rgba(0,0,0,.05)!important;
  font-size:15px!important;
}

.umqs__selectlike{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
}

.umqs__selectlike:after{
  content:""!important;
  width:10px!important;
  height:10px!important;
  border-right:3px solid currentColor!important;
  border-bottom:3px solid currentColor!important;
  transform:rotate(45deg)!important;
  opacity:.65!important;
  margin-left:10px!important;
}

/* Modular search products keep a calmer light surface */
.umqs.umqs--provider-cruise .umqs__grid,
.umqs.umqs--provider-expedition .umqs__grid,
.umqs.umqs--provider-sunnycars .umqs__grid{
  gap:12px!important;
  padding:14px!important;
  border:1px solid #e1e9ef!important;
  border-radius:22px!important;
  background:#f7fafc!important;
}

.umqs.umqs--provider-cruise .umqs__field label,
.umqs.umqs--provider-expedition .umqs__field label,
.umqs.umqs--provider-sunnycars .umqs__field label{
  color:#344054!important;
  font-size:12px!important;
  font-weight:900!important;
}

.umqs.umqs--provider-cruise input,
.umqs.umqs--provider-cruise select,
.umqs.umqs--provider-cruise .umqs__selectlike,
.umqs.umqs--provider-cruise .umqs__stepper,
.umqs.umqs--provider-expedition input,
.umqs.umqs--provider-expedition select,
.umqs.umqs--provider-expedition .umqs__selectlike,
.umqs.umqs--provider-expedition .umqs__stepper,
.umqs.umqs--provider-sunnycars input,
.umqs.umqs--provider-sunnycars select,
.umqs.umqs--provider-sunnycars .umqs__selectlike{
  min-height:58px!important;
  border:1px solid #dbe5ec!important;
  border-radius:15px!important;
  background:#fff!important;
  color:#0f172a!important;
  box-shadow:0 1px 1px rgba(16,24,40,.03)!important;
}

.umqs.umqs--provider-cruise .umqs__field--travellerscombo,
.umqs.umqs--provider-expedition .umqs__field--travellerscombo{
  grid-column:auto/span 2!important;
}

/* Buttons */
.umqs__button,
.umqs__button--ai,
.umqs__button--ai.is-ai-gradient{
  min-height:58px!important;
  border:0!important;
  border-radius:12px!important;
  background:var(--umqs-portal-blue)!important;
  color:#fff!important;
  font-weight:900!important;
  box-shadow:0 12px 28px rgba(6,59,115,.25)!important;
  filter:none!important;
}

.umqs__button:hover,
.umqs__button--ai:hover,
.umqs__button--ai.is-ai-gradient:hover{
  background:var(--umqs-portal-blue-hover)!important;
  transform:translateY(-1px)!important;
  filter:none!important;
}

.umqs__button:focus-visible,
.umqs input:focus,
.umqs select:focus,
.umqs textarea:focus,
.umqs__selectlike:focus-visible{
  outline:none!important;
  border-color:var(--umqs-portal-blue)!important;
  box-shadow:0 0 0 4px rgba(6,59,115,.18)!important;
}

/* Popovers and suggestion menus */
.umqs__popover,
.umqs__suggestions,
.umqs__airport-popover,
.umqs__duration-popover{
  border:1px solid var(--umqs-portal-line)!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 24px 70px rgba(16,24,40,.2)!important;
}

.umqs__suggestions button,
.umqs__option-button,
.umqs__airport-option{
  border-radius:12px!important;
}

.umqs__suggestions button:hover,
.umqs__suggestions button.is-active,
.umqs__option-button:hover,
.umqs__option-button.is-selected,
.umqs__airport-option:hover{
  background:rgba(6,59,115,.07)!important;
  color:#0f172a!important;
}

.umqs__calendar-days button.is-start,
.umqs__calendar-days button.is-end{
  background:var(--umqs-portal-blue)!important;
  color:#fff!important;
}

.umqs__calendar-days button.is-range{
  background:rgba(6,59,115,.1)!important;
}

/* Mobile */
@media(max-width:680px){
  .umqs-mobile-tabs__bar{
    position:sticky!important;
    top:0!important;
    z-index:5!important;
    margin:0 -8px 8px!important;
    padding:6px!important;
    gap:5px!important;
    border:1px solid rgba(6,59,115,.1)!important;
    border-radius:0 0 20px 20px!important;
    background:rgba(255,255,255,.94)!important;
    box-shadow:0 10px 26px rgba(16,24,40,.12)!important;
  }

  .umqs-mobile-tabs__tab{
    min-height:60px!important;
    flex-direction:column!important;
    gap:4px!important;
    padding:6px 4px!important;
    border-radius:14px!important;
    color:#40566e!important;
  }

  .umqs-mobile-tabs__tab i{
    font-size:20px!important;
  }

  .umqs-mobile-tabs__tab span{
    font-size:11px!important;
    line-height:1.12!important;
  }

  .umqs-mobile-tabs__tab.is-active{
    background:var(--umqs-portal-blue)!important;
    color:#fff!important;
    box-shadow:0 8px 18px rgba(6,59,115,.2)!important;
  }

  .umqs,
  .umqs-mobile-tabs .umqs{
    margin:0 auto!important;
    padding:12px!important;
    border-radius:18px!important;
  }

  .umqs__header{
    display:none!important;
  }

  .umqs__tabs{
    width:100%!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    gap:4px!important;
    padding:4px!important;
    margin:0 0 10px!important;
    border-radius:14px!important;
    background:#eef4f8!important;
    scrollbar-width:none!important;
  }

  .umqs__tabs::-webkit-scrollbar{
    display:none!important;
  }

  .umqs__tabs label{
    flex:1 0 auto!important;
  }

  .umqs__tabs span{
    width:100%!important;
    min-height:40px!important;
    padding:8px 12px!important;
    border-radius:11px!important;
    white-space:nowrap!important;
  }

  .umqs__grid,
  .umqs-mobile-tabs .umqs__grid,
  .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
    padding:8px!important;
    border-radius:15px!important;
  }

  .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid{
    background:var(--umqs-portal-yellow)!important;
    border:0!important;
  }

  .umqs__field,
  .umqs__field--wide,
  .umqs__field--airportcombo,
  .umqs__field--datecombo,
  .umqs--provider-cruise [data-cruise-combobox],
  .umqs--provider-expedition [data-cruise-combobox]{
    grid-column:1/-1!important;
  }

  .umqs__field--durationcombo,
  .umqs__field--travellerscombo,
  .umqs--provider-sunnycars .umqs__field:not(.umqs__field--wide):not(.umqs__field--datecombo){
    grid-column:auto!important;
  }

  .umqs input,
  .umqs select,
  .umqs textarea,
  .umqs__selectlike,
  .umqs__stepper,
  .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) input,
  .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) select,
  .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__selectlike,
  .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__stepper{
    height:54px!important;
    min-height:54px!important;
    border-radius:11px!important;
  }

  .umqs__button{
    width:100%!important;
    min-height:58px!important;
    margin-top:12px!important;
  }

  .umqs__popover,
  .umqs__suggestions,
  .umqs__airport-popover,
  .umqs__duration-popover,
  .umqs [data-umqs-date-popover],
  .umqs [data-umqs-travellers-popover]{
    position:fixed!important;
    left:8px!important;
    right:8px!important;
    top:auto!important;
    bottom:8px!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    max-height:min(78vh,620px)!important;
    overflow:auto!important;
    border-radius:20px!important;
    padding:16px 14px 14px!important;
  }
}

/* v2.3.1ao visual-only hardening overrides
   Beats legacy .umqs-mobile-tabs, .umqs--ultra and cruise layout rules without changing behavior. */
.umqs-mobile-tabs .umqs,
.umqs-mobile-tabs .umqs.umqs--ultra,
.umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"],
.umqs.umqs--ultra,
.umqs[class*="umqs--cruise-layout-"]{
  border:0!important;
  border-radius:18px!important;
  background:#fff!important;
  box-shadow:0 18px 50px rgba(16,24,40,.16)!important;
}

.umqs-mobile-tabs .umqs .umqs__form,
.umqs-mobile-tabs .umqs.umqs--ultra .umqs__form,
.umqs.umqs--ultra .umqs__form,
.umqs[class*="umqs--cruise-layout-"] .umqs__form{
  margin-top:0!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.umqs-mobile-tabs .umqs .umqs__tabs,
.umqs-mobile-tabs .umqs.umqs--ultra .umqs__tabs,
.umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"] .umqs__tabs,
.umqs.umqs--ultra .umqs__tabs,
.umqs.umqs--compact .umqs__tabs,
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs{
  width:auto!important;
  max-width:100%!important;
  display:inline-flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:10px!important;
  margin:0 0 14px!important;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  overflow:visible!important;
}

.umqs-mobile-tabs .umqs .umqs__tabs label,
.umqs-mobile-tabs .umqs.umqs--ultra .umqs__tabs label,
.umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"] .umqs__tabs label,
.umqs.umqs--ultra .umqs__tabs label,
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs label{
  flex:0 0 auto!important;
  margin:0!important;
  padding:0!important;
}

.umqs-mobile-tabs .umqs .umqs__tabs label span,
.umqs-mobile-tabs .umqs.umqs--ultra .umqs__tabs label span,
.umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"] .umqs__tabs label span,
.umqs.umqs--ultra .umqs__tabs label span,
.umqs.umqs--compact .umqs__tabs label span,
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs label span{
  min-height:38px!important;
  width:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  padding:8px 16px!important;
  border:0!important;
  border-radius:999px!important;
  background:#eef4f8!important;
  color:#24364b!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1.2!important;
  letter-spacing:0!important;
  text-transform:none!important;
  box-shadow:none!important;
}

.umqs-mobile-tabs .umqs .umqs__tabs input:checked + span,
.umqs-mobile-tabs .umqs.umqs--ultra .umqs__tabs input:checked + span,
.umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"] .umqs__tabs input:checked + span,
.umqs.umqs--ultra .umqs__tabs input:checked + span,
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs input:checked + span{
  background:var(--umqs-portal-yellow)!important;
  color:#1f2933!important;
  box-shadow:inset 0 0 0 1px rgba(0,0,0,.05)!important;
}

.umqs-mobile-tabs .umqs .umqs__tabs .umqs__tab-ai span,
.umqs-mobile-tabs .umqs .umqs__tabs .umqs__tab-ai.is-gradient span,
.umqs-mobile-tabs .umqs.umqs--ultra .umqs__tabs .umqs__tab-ai span,
.umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"] .umqs__tabs .umqs__tab-ai span,
.umqs.umqs--ultra .umqs__tabs .umqs__tab-ai span,
.umqs.umqs--ultra .umqs__tabs .umqs__tab-ai.is-gradient span,
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs .umqs__tab-ai span,
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs .umqs__tab-ai.is-gradient span,
.umqs-mobile-tabs .umqs .umqs__tabs .umqs__tab-ai input:checked + span,
.umqs.umqs--ultra .umqs__tabs .umqs__tab-ai input:checked + span,
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs .umqs__tab-ai input:checked + span{
  background:var(--umqs-ai-pill-gradient)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 10px 24px rgba(192,38,211,.25),inset 0 0 0 1px rgba(255,255,255,.22)!important;
}

.umqs-mobile-tabs .umqs .umqs__tabs .umqs__tab-ai span:before,
.umqs-mobile-tabs .umqs .umqs__tabs .umqs__tab-ai input:checked + span:before,
.umqs.umqs--ultra .umqs__tabs .umqs__tab-ai span:before,
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs .umqs__tab-ai span:before{
  content:none!important;
  display:none!important;
}

.umqs-mobile-tabs .umqs .umqs__tabs .umqs__tab-ai span em,
.umqs.umqs--ultra .umqs__tabs .umqs__tab-ai span em,
.umqs[class*="umqs--cruise-layout-"] .umqs__tabs .umqs__tab-ai span em{
  color:inherit!important;
  background:transparent!important;
  -webkit-text-fill-color:currentColor!important;
  font-style:normal!important;
}

.umqs-mobile-tabs .umqs .umqs__button,
.umqs-mobile-tabs .umqs .umqs__button--ai,
.umqs-mobile-tabs .umqs .umqs__button--ai.is-ai-gradient,
.umqs-mobile-tabs .umqs.umqs--ultra .umqs__button,
.umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"] .umqs__button,
.umqs.umqs--ultra .umqs__button,
.umqs.umqs--compact .umqs__button,
.umqs[class*="umqs--cruise-layout-"] .umqs__button,
.umqs[class*="umqs--cruise-layout-"] .umqs__button--ai.is-ai-gradient{
  width:100%!important;
  min-height:58px!important;
  height:58px!important;
  margin:14px 0 0!important;
  border:0!important;
  border-radius:12px!important;
  background:var(--umqs-portal-blue)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:18px!important;
  font-weight:900!important;
  box-shadow:0 12px 28px rgba(6,59,115,.25)!important;
  filter:none!important;
  opacity:1!important;
}

.umqs-mobile-tabs .umqs .umqs__button:hover,
.umqs-mobile-tabs .umqs .umqs__button--ai:hover,
.umqs.umqs--ultra .umqs__button:hover,
.umqs[class*="umqs--cruise-layout-"] .umqs__button:hover{
  background:var(--umqs-portal-blue-hover)!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  filter:none!important;
}

.umqs-mobile-tabs .umqs .umqs__grid,
.umqs-mobile-tabs .umqs.umqs--ultra .umqs__grid,
.umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"] .umqs__grid,
.umqs.umqs--ultra .umqs__grid{
  gap:12px!important;
  align-items:stretch!important;
}

.umqs-mobile-tabs .umqs--provider-cruise .umqs__grid,
.umqs-mobile-tabs .umqs--provider-expedition .umqs__grid,
.umqs-mobile-tabs .umqs--provider-sunnycars .umqs__grid,
.umqs.umqs--provider-cruise .umqs__grid,
.umqs.umqs--provider-expedition .umqs__grid,
.umqs.umqs--provider-sunnycars .umqs__grid{
  padding:14px!important;
  border:1px solid #e1e9ef!important;
  border-radius:22px!important;
  background:#f7fafc!important;
  box-shadow:none!important;
}

.umqs-mobile-tabs .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid,
.umqs.umqs--ultra:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid{
  padding:8px!important;
  border:2px solid var(--umqs-portal-yellow)!important;
  border-radius:16px!important;
  background:var(--umqs-portal-yellow)!important;
  box-shadow:0 12px 28px rgba(111,86,0,.13)!important;
}

.umqs-mobile-tabs .umqs .umqs__field label,
.umqs-mobile-tabs .umqs.umqs--ultra .umqs__field label,
.umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"] .umqs__field label,
.umqs.umqs--ultra .umqs__field label,
.umqs[class*="umqs--cruise-layout-"] .umqs__field label{
  color:#344054!important;
  font-size:12px!important;
  font-weight:900!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

.umqs-mobile-tabs .umqs input,
.umqs-mobile-tabs .umqs select,
.umqs-mobile-tabs .umqs textarea,
.umqs-mobile-tabs .umqs .umqs__selectlike,
.umqs-mobile-tabs .umqs .umqs__stepper,
.umqs.umqs--ultra input,
.umqs.umqs--ultra select,
.umqs.umqs--ultra textarea,
.umqs.umqs--ultra .umqs__selectlike,
.umqs.umqs--ultra .umqs__stepper,
.umqs[class*="umqs--cruise-layout-"] input,
.umqs[class*="umqs--cruise-layout-"] select,
.umqs[class*="umqs--cruise-layout-"] .umqs__selectlike,
.umqs[class*="umqs--cruise-layout-"] .umqs__stepper{
  min-height:58px!important;
  height:58px!important;
  border:1px solid #dbe5ec!important;
  border-radius:15px!important;
  background:#fff!important;
  color:#0f172a!important;
  -webkit-text-fill-color:#0f172a!important;
  box-shadow:0 1px 1px rgba(16,24,40,.03)!important;
  font-size:15px!important;
}

.umqs-mobile-tabs .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) input,
.umqs-mobile-tabs .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) select,
.umqs-mobile-tabs .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__selectlike,
.umqs-mobile-tabs .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__stepper,
.umqs.umqs--ultra:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) input,
.umqs.umqs--ultra:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) select,
.umqs.umqs--ultra:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__selectlike,
.umqs.umqs--ultra:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__stepper{
  border:0!important;
  border-radius:10px!important;
}

.umqs-mobile-tabs .umqs--provider-cruise .umqs__field--travellerscombo,
.umqs-mobile-tabs .umqs--provider-expedition .umqs__field--travellerscombo,
.umqs.umqs--provider-cruise .umqs__field--travellerscombo,
.umqs.umqs--provider-expedition .umqs__field--travellerscombo{
  grid-column:auto/span 2!important;
}

@media(max-width:680px){
  .umqs-mobile-tabs .umqs .umqs__tabs,
  .umqs-mobile-tabs .umqs.umqs--ultra .umqs__tabs,
  .umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"] .umqs__tabs,
  .umqs.umqs--ultra .umqs__tabs,
  .umqs[class*="umqs--cruise-layout-"] .umqs__tabs{
    width:100%!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    gap:4px!important;
    padding:4px!important;
    margin:0 0 10px!important;
    border-radius:14px!important;
    background:#eef4f8!important;
  }

  .umqs-mobile-tabs .umqs .umqs__tabs label,
  .umqs.umqs--ultra .umqs__tabs label{
    flex:1 0 auto!important;
  }

  .umqs-mobile-tabs .umqs .umqs__tabs label span,
  .umqs.umqs--ultra .umqs__tabs label span{
    width:100%!important;
    min-height:40px!important;
    padding:8px 12px!important;
    border-radius:11px!important;
    white-space:nowrap!important;
  }
}

/* v2.3.1ao final mobile containment override
   Must stay at EOF: older mobile rules above use fixed widths and two-column fragments. */
@media(max-width:680px){
  .umqs-mobile-tabs,
  .umqs-mobile-tabs *,
  .umqs-mobile-tabs *::before,
  .umqs-mobile-tabs *::after{
    box-sizing:border-box!important;
  }

  .umqs-mobile-tabs{
    width:100%!important;
    max-width:100vw!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  .umqs-mobile-tabs__bar{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:auto!important;
  }

  .umqs-mobile-tabs__tab{
    min-width:72px!important;
    flex:1 1 72px!important;
    padding:9px 5px 8px!important;
    gap:3px!important;
  }

  .umqs-mobile-tabs__tab i{
    font-size:18px!important;
  }

  .umqs-mobile-tabs__tab span{
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font-size:10px!important;
    line-height:1.05!important;
  }

  .umqs-mobile-tabs__panels{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    padding:16px 10px 20px!important;
    overflow:visible!important;
  }

  .umqs-mobile-tabs .umqs,
  .umqs-mobile-tabs .umqs.umqs--ultra,
  .umqs-mobile-tabs .umqs.umqs--compact,
  .umqs-mobile-tabs .umqs[class*="umqs--cruise-layout-"]{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0 auto!important;
    padding:10px!important;
    overflow:visible!important;
  }

  .umqs-mobile-tabs .umqs__form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:visible!important;
  }

  .umqs-mobile-tabs .umqs__tabs{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:4px!important;
    padding:4px!important;
    overflow:hidden!important;
  }

  .umqs-mobile-tabs .umqs__tabs label{
    flex:1 1 0!important;
    min-width:0!important;
    max-width:100%!important;
  }

  .umqs-mobile-tabs .umqs__tabs label span{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:36px!important;
    padding:7px 7px!important;
    gap:4px!important;
    border-radius:999px!important;
    font-size:12px!important;
    line-height:1.05!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  .umqs-mobile-tabs .umqs__tabs .umqs__tab-ai span{
    font-size:11px!important;
    padding-left:6px!important;
    padding-right:6px!important;
  }

  .umqs-mobile-tabs .umqs__tabs .umqs__tab-ai svg,
  .umqs-mobile-tabs .umqs__tabs .umqs__tab-ai .umqs__ai-tab-icon{
    width:13px!important;
    height:13px!important;
    min-width:13px!important;
  }

  .umqs-mobile-tabs .umqs__grid,
  .umqs-mobile-tabs .umqs__grid--sunnycars,
  .umqs-mobile-tabs .umqs__grid--provider-urania,
  .umqs-mobile-tabs .umqs__grid--provider-traveltainment,
  .umqs-mobile-tabs .umqs__grid--provider-cruise,
  .umqs-mobile-tabs .umqs__grid--provider-expedition{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-columns:auto!important;
    gap:9px!important;
    padding:10px!important;
    overflow:visible!important;
    align-items:stretch!important;
    justify-items:stretch!important;
  }

  .umqs-mobile-tabs .umqs__field,
  .umqs-mobile-tabs .umqs__field--wide,
  .umqs-mobile-tabs .umqs__field--airportcombo,
  .umqs-mobile-tabs .umqs__field--datecombo,
  .umqs-mobile-tabs .umqs__field--durationcombo,
  .umqs-mobile-tabs .umqs__field--travellerscombo,
  .umqs-mobile-tabs .umqs__grid--sunnycars .umqs__field,
  .umqs-mobile-tabs .umqs__grid--sunnycars [data-combobox="sunnycars-region"],
  .umqs-mobile-tabs .umqs__grid--sunnycars [data-umqs-sunnycars-datecombo],
  .umqs-mobile-tabs .umqs__grid--sunnycars .umqs__field:has(input[name="pickupTime"]),
  .umqs-mobile-tabs .umqs__grid--sunnycars .umqs__field:has(input[name="dropoffTime"]),
  .umqs-mobile-tabs [data-combobox],
  .umqs-mobile-tabs [data-cruise-combobox]{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    grid-column:1/-1!important;
    grid-row:auto!important;
    justify-self:stretch!important;
  }

  .umqs-mobile-tabs .umqs__field > input,
  .umqs-mobile-tabs .umqs__field > select,
  .umqs-mobile-tabs .umqs__field > textarea,
  .umqs-mobile-tabs .umqs__field > button,
  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select,
  .umqs-mobile-tabs .umqs textarea,
  .umqs-mobile-tabs .umqs button.umqs__selectlike,
  .umqs-mobile-tabs .umqs .umqs__selectlike,
  .umqs-mobile-tabs .umqs .umqs__stepper{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex:0 1 auto!important;
    flex-basis:auto!important;
    display:flex!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .umqs-mobile-tabs .umqs input,
  .umqs-mobile-tabs .umqs select,
  .umqs-mobile-tabs .umqs textarea,
  .umqs-mobile-tabs .umqs .umqs__selectlike,
  .umqs-mobile-tabs .umqs .umqs__stepper{
    height:54px!important;
    min-height:54px!important;
    padding-left:14px!important;
    padding-right:14px!important;
    font-size:15px!important;
  }

  .umqs-mobile-tabs .umqs__selectlike > span,
  .umqs-mobile-tabs .umqs__stepper > span,
  .umqs-mobile-tabs .umqs__stepper strong{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .umqs-mobile-tabs .umqs__button{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
}

@media(max-width:390px){
  .umqs-mobile-tabs__tab{
    min-width:66px!important;
    padding-left:4px!important;
    padding-right:4px!important;
  }

  .umqs-mobile-tabs .umqs__tabs label span{
    font-size:11px!important;
    padding-left:5px!important;
    padding-right:5px!important;
  }

  .umqs-mobile-tabs .umqs__tabs .umqs__tab-ai span{
    font-size:10px!important;
  }
}

/* v2.3.1ap mobile field safety
   Prevents inputs/select-like controls from overflowing their grid cells without changing order or field grouping. */
.umqs,
.umqs-mobile-tabs,
.umqs-mobile-tabs__panel,
.umqs__grid,
.umqs__field,
.umqs__field--wide,
.umqs__children-ages,
.umqs__child-age-field{
  min-width:0!important;
  max-width:100%;
}

.umqs__grid,
.umqs__children-ages{
  grid-auto-columns:minmax(0,1fr)!important;
}

.umqs input,
.umqs select,
.umqs textarea,
.umqs button,
.umqs__selectlike,
.umqs__stepper{
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
}

@media(max-width:1180px){
  .umqs-mobile-tabs .umqs,
  .umqs.umqs--ultra,
  .umqs.umqs--compact,
  .umqs[class*="umqs--cruise-layout-"]{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  .umqs-mobile-tabs .umqs .umqs__grid,
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--compact .umqs__grid,
  .umqs[class*="umqs--cruise-layout-"] .umqs__grid{
    width:100%!important;
    max-width:100%!important;
  }

  .umqs-mobile-tabs .umqs .umqs__field,
  .umqs.umqs--ultra .umqs__field,
  .umqs.umqs--compact .umqs__field,
  .umqs[class*="umqs--cruise-layout-"] .umqs__field{
    width:auto!important;
    max-width:100%!important;
  }
}

@media(max-width:680px){
  .umqs input,
  .umqs select,
  .umqs textarea,
  .umqs__selectlike,
  .umqs__stepper{
    width:100%!important;
  }
}

/* v2.3.1aq – stricter mobile grid containment
   Keeps every visible field inside the yellow/form grid on phones and prevents
   duration/travellers from being squeezed into a broken two-column row. */
@media(max-width:680px){
  .umqs,
  .umqs.umqs--ultra,
  .umqs.umqs--compact,
  .umqs-mobile-tabs,
  .umqs-mobile-tabs .umqs{
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }

  .umqs .umqs__form,
  .umqs.umqs--ultra .umqs__form,
  .umqs-mobile-tabs .umqs__form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  .umqs .umqs__grid,
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--compact .umqs__grid,
  .umqs-mobile-tabs .umqs .umqs__grid,
  .umqs-mobile-tabs .umqs .umqs__grid:not(.umqs__grid--sunnycars):not(:has(.umqs__cruise-separator)),
  .umqs-mobile-tabs .umqs .umqs__grid--sunnycars,
  .umqs-mobile-tabs .umqs .umqs__grid:has(.umqs__cruise-separator){
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-columns:minmax(0,1fr)!important;
    align-items:stretch!important;
    justify-items:stretch!important;
    overflow:hidden!important;
  }

  .umqs .umqs__field,
  .umqs .umqs__field--wide,
  .umqs .umqs__field--airportcombo,
  .umqs .umqs__field--datecombo,
  .umqs .umqs__field--durationcombo,
  .umqs .umqs__field--travellerscombo,
  .umqs [data-combobox="destination"],
  .umqs [data-combobox="airport"],
  .umqs [data-pa-only],
  .umqs [data-umqs-datecombo],
  .umqs [data-umqs-travellerscombo],
  .umqs [data-umqs-date-field],
  .umqs [data-umqs-traveller-field],
  .umqs-mobile-tabs .umqs .umqs__field,
  .umqs-mobile-tabs .umqs [data-combobox],
  .umqs-mobile-tabs .umqs [data-pa-only],
  .umqs-mobile-tabs .umqs [data-umqs-datecombo],
  .umqs-mobile-tabs .umqs [data-umqs-travellerscombo]{
    grid-column:1/-1!important;
    grid-row:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    justify-self:stretch!important;
  }

  .umqs .umqs__field > input,
  .umqs .umqs__field > select,
  .umqs .umqs__field > textarea,
  .umqs .umqs__field > button,
  .umqs .umqs__selectlike,
  .umqs .umqs__stepper,
  .umqs-mobile-tabs .umqs .umqs__field > input,
  .umqs-mobile-tabs .umqs .umqs__field > select,
  .umqs-mobile-tabs .umqs .umqs__field > textarea,
  .umqs-mobile-tabs .umqs .umqs__field > button,
  .umqs-mobile-tabs .umqs .umqs__selectlike,
  .umqs-mobile-tabs .umqs .umqs__stepper{
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    box-sizing:border-box!important;
    flex:0 1 auto!important;
  }

  .umqs .umqs__selectlike > span,
  .umqs-mobile-tabs .umqs .umqs__selectlike > span{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

/* v2.3.1ar – mobile single-column field alignment
   Reisende stays as a full-width row directly after Reisedauer; full-width controls
   cannot exceed the same grid width as Reederei. */
@media(max-width:680px){
  .umqs-mobile-tabs .umqs,
  .umqs-mobile-tabs .umqs__form,
  .umqs-mobile-tabs .umqs__grid,
  .umqs.umqs--ultra,
  .umqs.umqs--ultra .umqs__form,
  .umqs.umqs--ultra .umqs__grid{
    min-width:0!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  .umqs-mobile-tabs .umqs__grid,
  .umqs-mobile-tabs .umqs__grid--provider-urania,
  .umqs-mobile-tabs .umqs__grid--provider-traveltainment,
  .umqs-mobile-tabs .umqs__grid--provider-cruise,
  .umqs-mobile-tabs .umqs__grid--provider-expedition,
  .umqs-mobile-tabs .umqs__grid--sunnycars,
  .umqs-mobile-tabs .umqs__grid:has(.umqs__cruise-separator),
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--provider-cruise .umqs__grid,
  .umqs.umqs--provider-expedition .umqs__grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-columns:minmax(0,1fr)!important;
    justify-items:stretch!important;
    align-items:stretch!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }

  .umqs-mobile-tabs .umqs__field,
  .umqs-mobile-tabs .umqs__field--wide,
  .umqs-mobile-tabs .umqs__field--airportcombo,
  .umqs-mobile-tabs .umqs__field--datecombo,
  .umqs-mobile-tabs .umqs__field--durationcombo,
  .umqs-mobile-tabs .umqs__field--travellerscombo,
  .umqs-mobile-tabs .umqs [data-combobox],
  .umqs-mobile-tabs .umqs [data-cruise-combobox],
  .umqs-mobile-tabs .umqs [data-pa-only],
  .umqs-mobile-tabs .umqs [data-umqs-datecombo],
  .umqs-mobile-tabs .umqs [data-umqs-travellerscombo],
  .umqs.umqs--ultra .umqs__field,
  .umqs.umqs--ultra .umqs__field--wide,
  .umqs.umqs--ultra .umqs__field--airportcombo,
  .umqs.umqs--ultra .umqs__field--datecombo,
  .umqs.umqs--ultra .umqs__field--durationcombo,
  .umqs.umqs--ultra .umqs__field--travellerscombo,
  .umqs.umqs--ultra [data-combobox],
  .umqs.umqs--ultra [data-cruise-combobox],
  .umqs.umqs--ultra [data-pa-only],
  .umqs.umqs--ultra [data-umqs-datecombo],
  .umqs.umqs--ultra [data-umqs-travellerscombo]{
    grid-column:1/-1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    justify-self:stretch!important;
    box-sizing:border-box!important;
  }

  .umqs-mobile-tabs .umqs__field--durationcombo,
  .umqs-mobile-tabs .umqs .umqs__field:has(select[name="duration"]),
  .umqs.umqs--ultra .umqs__field--durationcombo,
  .umqs.umqs--ultra .umqs__field:has(select[name="duration"]){
    grid-column:1/-1!important;
  }

  .umqs-mobile-tabs .umqs__field--travellerscombo,
  .umqs-mobile-tabs .umqs [data-umqs-travellerscombo],
  .umqs.umqs--ultra .umqs__field--travellerscombo,
  .umqs.umqs--ultra [data-umqs-travellerscombo]{
    grid-column:1/-1!important;
    width:100%!important;
    max-width:100%!important;
    clear:both!important;
  }

  .umqs-mobile-tabs .umqs__field > input,
  .umqs-mobile-tabs .umqs__field > select,
  .umqs-mobile-tabs .umqs__field > textarea,
  .umqs-mobile-tabs .umqs__field > button,
  .umqs-mobile-tabs .umqs__selectlike,
  .umqs-mobile-tabs .umqs__stepper,
  .umqs.umqs--ultra .umqs__field > input,
  .umqs.umqs--ultra .umqs__field > select,
  .umqs.umqs--ultra .umqs__field > textarea,
  .umqs.umqs--ultra .umqs__field > button,
  .umqs.umqs--ultra .umqs__selectlike,
  .umqs.umqs--ultra .umqs__stepper{
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    box-sizing:border-box!important;
    justify-self:stretch!important;
  }

  .umqs-mobile-tabs .umqs__suggestions,
  .umqs-mobile-tabs .umqs__airport-popover,
  .umqs-mobile-tabs [data-umqs-date-popover],
  .umqs-mobile-tabs [data-umqs-travellers-popover],
  .umqs-mobile-tabs .umqs__duration-popover,
  .umqs.umqs--ultra .umqs__suggestions,
  .umqs.umqs--ultra .umqs__airport-popover,
  .umqs.umqs--ultra [data-umqs-date-popover],
  .umqs.umqs--ultra [data-umqs-travellers-popover],
  .umqs.umqs--ultra .umqs__duration-popover{
    left:0!important;
    right:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }
}

/* v2.3.1as – akribischer Mobile-Raster-Fix
   Ziel: keine Feld-/Popover-Überbreite, Reisende immer als eigene Zeile direkt nach Reisedauer. */
@media (max-width: 680px){
  .umqs,
  .umqs *{
    box-sizing:border-box!important;
  }

  .umqs,
  .umqs-mobile-tabs .umqs,
  .umqs.umqs--ultra,
  .umqs.umqs--compact,
  .umqs[class*="umqs--cruise-layout-"]{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }

  .umqs .umqs__form,
  .umqs .umqs__grid,
  .umqs-mobile-tabs .umqs .umqs__form,
  .umqs-mobile-tabs .umqs .umqs__grid,
  .umqs.umqs--ultra .umqs__form,
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--compact .umqs__form,
  .umqs.umqs--compact .umqs__grid,
  .umqs[class*="umqs--cruise-layout-"] .umqs__form,
  .umqs[class*="umqs--cruise-layout-"] .umqs__grid{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-columns:minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    justify-items:stretch!important;
    align-items:stretch!important;
    overflow:visible!important;
  }

  .umqs .umqs__field,
  .umqs .umqs__field--wide,
  .umqs .umqs__field--airportcombo,
  .umqs .umqs__field--datecombo,
  .umqs .umqs__field--durationcombo,
  .umqs .umqs__field--travellerscombo,
  .umqs [data-combobox],
  .umqs [data-cruise-combobox],
  .umqs [data-pa-only],
  .umqs [data-umqs-datecombo],
  .umqs [data-umqs-travellerscombo],
  .umqs [data-umqs-sunnycars-datecombo]{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    justify-self:stretch!important;
    float:none!important;
    clear:both!important;
    overflow:visible!important;
  }

  /* Reihenfolge bleibt grundsätzlich DOM-Reihenfolge; nur Reisende wird sicher direkt unter Reisedauer gehalten. */
  .umqs .umqs__field--durationcombo,
  .umqs .umqs__field:has(select[name="duration"]){
    order:50!important;
    grid-column:1 / -1!important;
  }

  .umqs .umqs__field--travellerscombo,
  .umqs [data-umqs-travellerscombo]{
    order:51!important;
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    flex-basis:100%!important;
  }

  .umqs .umqs__button,
  .umqs [data-umqs-manual-submit]{
    order:99!important;
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .umqs .umqs__field > input,
  .umqs .umqs__field > select,
  .umqs .umqs__field > textarea,
  .umqs .umqs__field > button,
  .umqs .umqs__selectlike,
  .umqs .umqs__stepper,
  .umqs input,
  .umqs select,
  .umqs textarea{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    flex:0 1 auto!important;
    flex-basis:auto!important;
    justify-self:stretch!important;
    overflow:hidden!important;
  }

  .umqs .umqs__selectlike > span,
  .umqs .umqs__selectlike span{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  /* Dropdowns/Popover nicht mehr viewport-breit, sondern maximal so breit wie das zugehörige Eingabefeld. */
  .umqs .umqs__suggestions,
  .umqs .umqs__airport-popover,
  .umqs [data-umqs-date-popover],
  .umqs [data-umqs-sunnycars-date-popover],
  .umqs [data-umqs-travellers-popover],
  .umqs .umqs__duration-popover,
  .umqs .umqs__popover{
    left:0!important;
    right:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    transform:none!important;
    box-sizing:border-box!important;
  }
}


/* v2.3.1at – Mobile-Feldraster final
   Desktop bleibt unangetastet. Mobil werden nur die Eingabefelder sauber in ein
   dynamisches 2-Spalten-Raster gelegt: breite Felder spannen komplett, kleine
   Paar-Felder teilen sich die Zeile. Kein Feld/Popover darf breiter als die Karte sein. */
@media (max-width: 767px){
  .umqs,
  .umqs-mobile-tabs,
  .umqs-mobile-tabs *,
  .umqs *{box-sizing:border-box!important;}

  .umqs-mobile-tabs .umqs,
  .umqs{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }

  .umqs-mobile-tabs .umqs__form,
  .umqs .umqs__form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }

  .umqs-mobile-tabs .umqs__grid,
  .umqs .umqs__grid{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    column-gap:14px!important;
    row-gap:12px!important;
    align-items:end!important;
    justify-items:stretch!important;
    overflow:visible!important;
  }

  /* Standard: Felder sind nie breiter als ihre Rasterzelle. */
  .umqs-mobile-tabs .umqs__grid > .umqs__field,
  .umqs .umqs__grid > .umqs__field{
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    inline-size:100%!important;
    margin:0!important;
    float:none!important;
    justify-self:stretch!important;
    overflow:visible!important;
  }

  /* Breite Eingabefelder wie Reederei, Schiff, Ziel/Hotel, Abflughafen und Zeitraum. */
  .umqs-mobile-tabs .umqs__field--wide,
  .umqs-mobile-tabs .umqs__field--airportcombo,
  .umqs-mobile-tabs .umqs__field--datecombo,
  .umqs-mobile-tabs .umqs__grid > .umqs__field[data-combobox],
  .umqs-mobile-tabs .umqs__grid > .umqs__field[data-cruise-combobox],
  .umqs-mobile-tabs .umqs__grid > .umqs__field[data-umqs-sunnycars-datecombo],
  .umqs .umqs__field--wide,
  .umqs .umqs__field--airportcombo,
  .umqs .umqs__field--datecombo,
  .umqs .umqs__grid > .umqs__field[data-combobox],
  .umqs .umqs__grid > .umqs__field[data-cruise-combobox],
  .umqs .umqs__grid > .umqs__field[data-umqs-sunnycars-datecombo]{
    grid-column:1 / -1!important;
  }

  /* Feld-Paare bleiben mobil zweispaltig wie im Zielbild. */
  .umqs-mobile-tabs .umqs__field--durationcombo,
  .umqs-mobile-tabs .umqs__field--travellerscombo,
  .umqs .umqs__field--durationcombo,
  .umqs .umqs__field--travellerscombo{
    grid-column:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    order:initial!important;
  }

  /* Wenn der verfügbare Platz extrem klein wird, bleiben die Felder lesbar und laufen trotzdem nicht über. */
  @media (max-width: 359px){
    .umqs-mobile-tabs .umqs__grid,
    .umqs .umqs__grid{column-gap:10px!important;}
    .umqs-mobile-tabs .umqs__field--durationcombo .umqs__selectlike,
    .umqs-mobile-tabs .umqs__field--travellerscombo .umqs__selectlike,
    .umqs .umqs__field--durationcombo .umqs__selectlike,
    .umqs .umqs__field--travellerscombo .umqs__selectlike{padding-left:14px!important;padding-right:12px!important;}
  }

  .umqs-mobile-tabs .umqs__field > input,
  .umqs-mobile-tabs .umqs__field > select,
  .umqs-mobile-tabs .umqs__field > textarea,
  .umqs-mobile-tabs .umqs__field > button,
  .umqs-mobile-tabs .umqs__selectlike,
  .umqs-mobile-tabs .umqs__stepper,
  .umqs .umqs__field > input,
  .umqs .umqs__field > select,
  .umqs .umqs__field > textarea,
  .umqs .umqs__field > button,
  .umqs .umqs__selectlike,
  .umqs .umqs__stepper{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    flex:0 1 auto!important;
    justify-self:stretch!important;
    overflow:hidden!important;
  }

  .umqs-mobile-tabs .umqs__field > input,
  .umqs-mobile-tabs .umqs__field > select,
  .umqs-mobile-tabs .umqs__field > textarea,
  .umqs .umqs__field > input,
  .umqs .umqs__field > select,
  .umqs .umqs__field > textarea{display:block!important;}

  .umqs-mobile-tabs .umqs__selectlike span,
  .umqs .umqs__selectlike span{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .umqs-mobile-tabs .umqs__cruise-separator,
  .umqs .umqs__cruise-separator{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .umqs-mobile-tabs .umqs__suggestions,
  .umqs-mobile-tabs .umqs__airport-popover,
  .umqs-mobile-tabs .umqs__duration-popover,
  .umqs-mobile-tabs .umqs__popover,
  .umqs-mobile-tabs [data-umqs-date-popover],
  .umqs-mobile-tabs [data-umqs-sunnycars-date-popover],
  .umqs-mobile-tabs [data-umqs-travellers-popover],
  .umqs .umqs__suggestions,
  .umqs .umqs__airport-popover,
  .umqs .umqs__duration-popover,
  .umqs .umqs__popover,
  .umqs [data-umqs-date-popover],
  .umqs [data-umqs-sunnycars-date-popover],
  .umqs [data-umqs-travellers-popover]{
    left:0!important;
    right:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    transform:none!important;
    box-sizing:border-box!important;
  }
}

/* v2.3.1au – finaler Mobile-Containment-Fix
   Nur Mobile: alle Formularfelder werden durchgehend mit minmax(0,1fr) geführt,
   alte min-width/flex/grid-Regeln werden am CSS-Ende überschrieben. */
@media (max-width: 767px){
  .umqs,
  .umqs-mobile-tabs,
  .umqs-mobile-tabs__panel,
  .umqs-mobile-tabs__panels,
  .umqs *{
    box-sizing:border-box!important;
  }

  .umqs-mobile-tabs .umqs,
  .umqs,
  .umqs.umqs--ultra,
  .umqs.umqs--compact,
  .umqs[class*="umqs--cruise-layout-"]{
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }

  .umqs-mobile-tabs .umqs__form,
  .umqs .umqs__form,
  .umqs.umqs--ultra .umqs__form,
  .umqs.umqs--compact .umqs__form,
  .umqs[class*="umqs--cruise-layout-"] .umqs__form{
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    overflow-x:hidden!important;
  }

  .umqs-mobile-tabs .umqs__grid,
  .umqs .umqs__grid,
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--compact .umqs__grid,
  .umqs[class*="umqs--cruise-layout-"] .umqs__grid,
  .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid,
  .umqs.umqs--ultra:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid,
  .umqs.umqs--type-nh:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid{
    display:grid!important;
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-auto-columns:minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    gap:12px!important;
    align-items:stretch!important;
    justify-items:stretch!important;
    overflow:visible!important;
  }

  .umqs-mobile-tabs .umqs__grid > .umqs__field,
  .umqs .umqs__grid > .umqs__field,
  .umqs .umqs__field,
  .umqs .umqs__field--wide,
  .umqs .umqs__field--airportcombo,
  .umqs .umqs__field--datecombo,
  .umqs .umqs__field--durationcombo,
  .umqs .umqs__field--travellerscombo,
  .umqs [data-combobox],
  .umqs [data-cruise-combobox],
  .umqs [data-pa-only],
  .umqs [data-umqs-datecombo],
  .umqs [data-umqs-travellerscombo],
  .umqs [data-umqs-date-field],
  .umqs [data-umqs-traveller-field],
  .umqs [data-umqs-sunnycars-datecombo],
  .umqs--provider-sunnycars .umqs__field:not(.umqs__field--wide):not(.umqs__field--datecombo){
    grid-column:1 / -1!important;
    grid-row:auto!important;
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    flex:0 1 100%!important;
    flex-basis:100%!important;
    float:none!important;
    clear:both!important;
    margin-left:0!important;
    margin-right:0!important;
    overflow:visible!important;
  }

  .umqs .umqs__field--durationcombo,
  .umqs .umqs__field:has(select[name="duration"]){
    grid-column:1 / -1!important;
    order:50!important;
  }

  .umqs .umqs__field--travellerscombo,
  .umqs [data-umqs-travellerscombo]{
    grid-column:1 / -1!important;
    order:51!important;
  }

  .umqs-mobile-tabs .umqs__field > input,
  .umqs-mobile-tabs .umqs__field > select,
  .umqs-mobile-tabs .umqs__field > textarea,
  .umqs-mobile-tabs .umqs__field > button,
  .umqs .umqs__field > input,
  .umqs .umqs__field > select,
  .umqs .umqs__field > textarea,
  .umqs .umqs__field > button,
  .umqs input,
  .umqs select,
  .umqs textarea,
  .umqs button,
  .umqs .umqs__selectlike,
  .umqs .umqs__stepper{
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    flex:0 1 auto!important;
    flex-basis:auto!important;
    justify-self:stretch!important;
    overflow:hidden!important;
  }

  .umqs .umqs__selectlike{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
  }

  .umqs .umqs__selectlike > span,
  .umqs .umqs__selectlike span{
    display:block!important;
    min-inline-size:0!important;
    min-width:0!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .umqs .umqs__button,
  .umqs [data-umqs-manual-submit],
  .umqs .umqs__cruise-separator,
  .umqs .umqs__children-ages{
    grid-column:1 / -1!important;
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
  }

  .umqs .umqs__suggestions,
  .umqs .umqs__airport-popover,
  .umqs .umqs__duration-popover,
  .umqs .umqs__popover,
  .umqs [data-umqs-date-popover],
  .umqs [data-umqs-sunnycars-date-popover],
  .umqs [data-umqs-travellers-popover]{
    left:0!important;
    right:auto!important;
    inline-size:100%!important;
    width:100%!important;
    max-inline-size:100%!important;
    max-width:100%!important;
    min-inline-size:0!important;
    min-width:0!important;
    transform:none!important;
    box-sizing:border-box!important;
  }
}


/* v2.3.1av – Mobile Raster: 1/1 Felder wirklich volle Breite, nur Dauer/Reisende 1/2
   Desktop unverändert. Der Block steht bewusst am Dateiende und überschreibt frühere min-width/grid/flex-Regeln. */
@media (max-width: 767px){
  .umqs-mobile-tabs,
  .umqs-mobile-tabs__panel,
  .umqs-mobile-tabs__panels,
  .umqs,
  .umqs *{
    box-sizing:border-box!important;
  }

  .umqs-mobile-tabs .umqs,
  .umqs-mobile-tabs .umqs__form,
  .umqs,
  .umqs .umqs__form{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    overflow-x:hidden!important;
  }

  .umqs-mobile-tabs .umqs__grid,
  .umqs .umqs__grid,
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--compact .umqs__grid,
  .umqs[class*="umqs--cruise-layout-"] .umqs__grid{
    display:grid!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-auto-columns:minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    column-gap:14px!important;
    row-gap:12px!important;
    align-items:end!important;
    justify-items:stretch!important;
    overflow:visible!important;
  }

  .umqs-mobile-tabs .umqs__grid > .umqs__field,
  .umqs .umqs__grid > .umqs__field{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    margin-left:0!important;
    margin-right:0!important;
    float:none!important;
    clear:none!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    overflow:visible!important;
    display:flex!important;
    flex-direction:column!important;
  }

  /* Diese Felder sind mobil immer 1/1, also über beide Grid-Spalten. */
  .umqs-mobile-tabs .umqs__grid > .umqs__field--wide,
  .umqs-mobile-tabs .umqs__grid > .umqs__field--airportcombo,
  .umqs-mobile-tabs .umqs__grid > .umqs__field--datecombo,
  .umqs-mobile-tabs .umqs__grid > [data-combobox="destination"],
  .umqs-mobile-tabs .umqs__grid > [data-combobox="airport"],
  .umqs-mobile-tabs .umqs__grid > [data-combobox="sunnycars-region"],
  .umqs-mobile-tabs .umqs__grid > [data-cruise-combobox="red"],
  .umqs-mobile-tabs .umqs__grid > [data-cruise-combobox="shipid"],
  .umqs-mobile-tabs .umqs__grid > [data-cruise-combobox="region"],
  .umqs-mobile-tabs .umqs__grid > [data-umqs-datecombo],
  .umqs-mobile-tabs .umqs__grid > [data-umqs-sunnycars-datecombo],
  .umqs .umqs__grid > .umqs__field--wide,
  .umqs .umqs__grid > .umqs__field--airportcombo,
  .umqs .umqs__grid > .umqs__field--datecombo,
  .umqs .umqs__grid > [data-combobox="destination"],
  .umqs .umqs__grid > [data-combobox="airport"],
  .umqs .umqs__grid > [data-combobox="sunnycars-region"],
  .umqs .umqs__grid > [data-cruise-combobox="red"],
  .umqs .umqs__grid > [data-cruise-combobox="shipid"],
  .umqs .umqs__grid > [data-cruise-combobox="region"],
  .umqs .umqs__grid > [data-umqs-datecombo],
  .umqs .umqs__grid > [data-umqs-sunnycars-datecombo]{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    flex-basis:auto!important;
  }

  /* Nur die kleinen Paar-Felder bleiben 1/2. */
  .umqs-mobile-tabs .umqs__grid > .umqs__field--durationcombo,
  .umqs-mobile-tabs .umqs__grid > .umqs__field--travellerscombo,
  .umqs .umqs__grid > .umqs__field--durationcombo,
  .umqs .umqs__grid > .umqs__field--travellerscombo{
    grid-column:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    order:initial!important;
    clear:none!important;
  }

  .umqs-mobile-tabs .umqs__grid > .umqs__field--durationcombo{grid-column:1 / 2!important;}
  .umqs-mobile-tabs .umqs__grid > .umqs__field--travellerscombo{grid-column:2 / 3!important;}
  .umqs .umqs__grid > .umqs__field--durationcombo{grid-column:1 / 2!important;}
  .umqs .umqs__grid > .umqs__field--travellerscombo{grid-column:2 / 3!important;}

  .umqs-mobile-tabs .umqs__field > label,
  .umqs .umqs__field > label{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .umqs-mobile-tabs .umqs__field > input,
  .umqs-mobile-tabs .umqs__field > select,
  .umqs-mobile-tabs .umqs__field > textarea,
  .umqs-mobile-tabs .umqs__field > button,
  .umqs-mobile-tabs .umqs__selectlike,
  .umqs-mobile-tabs .umqs__stepper,
  .umqs .umqs__field > input,
  .umqs .umqs__field > select,
  .umqs .umqs__field > textarea,
  .umqs .umqs__field > button,
  .umqs .umqs__selectlike,
  .umqs .umqs__stepper{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    flex:0 1 auto!important;
    flex-basis:auto!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    overflow:hidden!important;
  }

  .umqs-mobile-tabs .umqs__selectlike,
  .umqs .umqs__selectlike{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
  }

  .umqs-mobile-tabs .umqs__selectlike > span,
  .umqs .umqs__selectlike > span{
    display:block!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }

  .umqs-mobile-tabs .umqs__button,
  .umqs-mobile-tabs [data-umqs-manual-submit],
  .umqs-mobile-tabs .umqs__cruise-separator,
  .umqs-mobile-tabs .umqs__children-ages,
  .umqs .umqs__button,
  .umqs [data-umqs-manual-submit],
  .umqs .umqs__cruise-separator,
  .umqs .umqs__children-ages{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  .umqs-mobile-tabs .umqs__suggestions,
  .umqs-mobile-tabs .umqs__airport-popover,
  .umqs-mobile-tabs .umqs__duration-popover,
  .umqs-mobile-tabs .umqs__popover,
  .umqs-mobile-tabs [data-umqs-date-popover],
  .umqs-mobile-tabs [data-umqs-sunnycars-date-popover],
  .umqs-mobile-tabs [data-umqs-travellers-popover],
  .umqs .umqs__suggestions,
  .umqs .umqs__airport-popover,
  .umqs .umqs__duration-popover,
  .umqs .umqs__popover,
  .umqs [data-umqs-date-popover],
  .umqs [data-umqs-sunnycars-date-popover],
  .umqs [data-umqs-travellers-popover]{
    left:0!important;
    right:auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    transform:none!important;
    box-sizing:border-box!important;
  }
}

/* v2.3.1aw – Mobile Feldraster final: Urlaub/Hotel Felder exakt wie gewünscht
   Mobile only: Reiseziel 1/1, Abflughafen 1/1, Reisezeitraum 1/1, Reisedauer 1/2, Reisende 1/2. Desktop bleibt unverändert. */
@media (max-width: 767px){
  .umqs-mobile-tabs,
  .umqs-mobile-tabs *,
  .umqs,
  .umqs *{
    box-sizing:border-box!important;
  }

  .umqs-mobile-tabs .umqs,
  .umqs-mobile-tabs .umqs__form,
  .umqs-mobile-tabs .umqs__grid,
  .umqs .umqs__form,
  .umqs .umqs__grid{
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    overflow-x:hidden!important;
  }

  .umqs-mobile-tabs .umqs__grid,
  .umqs .umqs__grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-auto-columns:minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    column-gap:14px!important;
    row-gap:12px!important;
    align-items:end!important;
    justify-items:stretch!important;
  }

  .umqs-mobile-tabs .umqs__grid > .umqs__field,
  .umqs .umqs__grid > .umqs__field{
    min-width:0!important;
    max-width:100%!important;
    width:100%!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    margin:0!important;
    float:none!important;
    clear:none!important;
    justify-self:stretch!important;
    align-self:stretch!important;
  }

  /* Standard: breite Suchfelder nehmen immer beide Rasterspalten ein. */
  .umqs-mobile-tabs .umqs__grid > .umqs__field--wide,
  .umqs-mobile-tabs .umqs__grid > .umqs__field--airportcombo,
  .umqs-mobile-tabs .umqs__grid > .umqs__field--datecombo,
  .umqs-mobile-tabs .umqs__grid > [data-combobox="destination"],
  .umqs-mobile-tabs .umqs__grid > [data-combobox="airport"],
  .umqs-mobile-tabs .umqs__grid > [data-umqs-datecombo],
  .umqs-mobile-tabs .umqs__grid > [data-combobox="sunnycars-region"],
  .umqs-mobile-tabs .umqs__grid > [data-umqs-sunnycars-datecombo],
  .umqs .umqs__grid > .umqs__field--wide,
  .umqs .umqs__grid > .umqs__field--airportcombo,
  .umqs .umqs__grid > .umqs__field--datecombo,
  .umqs .umqs__grid > [data-combobox="destination"],
  .umqs .umqs__grid > [data-combobox="airport"],
  .umqs .umqs__grid > [data-umqs-datecombo],
  .umqs .umqs__grid > [data-combobox="sunnycars-region"],
  .umqs .umqs__grid > [data-umqs-sunnycars-datecombo]{
    grid-column:1 / -1!important;
  }

  /* Urlaub/Pauschalreise: die ersten drei sichtbaren Felder sind 1/1. */
  .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-pa .umqs__grid > [data-combobox="destination"],
  .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-pa .umqs__grid > [data-pa-only],
  .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-pa .umqs__grid > [data-umqs-datecombo],
  .umqs.umqs--provider-urania.umqs--type-pa .umqs__grid > [data-combobox="destination"],
  .umqs.umqs--provider-urania.umqs--type-pa .umqs__grid > [data-pa-only],
  .umqs.umqs--provider-urania.umqs--type-pa .umqs__grid > [data-umqs-datecombo]{
    grid-column:1 / -1!important;
  }

  /* Nur Hotel: Reiseziel und Reisezeitraum 1/1, Dauer/Reisende bleiben 1/2. */
  .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-nh .umqs__grid > [data-combobox="destination"],
  .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-nh .umqs__grid > [data-umqs-datecombo],
  .umqs.umqs--provider-urania.umqs--type-nh .umqs__grid > [data-combobox="destination"],
  .umqs.umqs--provider-urania.umqs--type-nh .umqs__grid > [data-umqs-datecombo]{
    grid-column:1 / -1!important;
  }

  .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-nh .umqs__grid > [data-pa-only],
  .umqs.umqs--provider-urania.umqs--type-nh .umqs__grid > [data-pa-only]{
    display:none!important;
  }

  /* Reisedauer/Reisende exakt 1/2 + 1/2. */
  .umqs-mobile-tabs .umqs__grid > .umqs__field--durationcombo,
  .umqs .umqs__grid > .umqs__field--durationcombo{
    grid-column:1 / 2!important;
  }
  .umqs-mobile-tabs .umqs__grid > .umqs__field--travellerscombo,
  .umqs .umqs__grid > .umqs__field--travellerscombo{
    grid-column:2 / 3!important;
  }

  /* Die klassischen Datums-/Reisendenfelder dürfen im Ultra-Mobile-Layout kein zusätzliches Raster erzeugen. */
  .umqs-mobile-tabs .umqs.umqs--ultra .umqs__grid > [data-umqs-date-field],
  .umqs-mobile-tabs .umqs.umqs--ultra .umqs__grid > [data-umqs-traveller-field="adults"],
  .umqs-mobile-tabs .umqs.umqs--ultra .umqs__grid > [data-umqs-traveller-field="children"],
  .umqs.umqs--ultra .umqs__grid > [data-umqs-date-field],
  .umqs.umqs--ultra .umqs__grid > [data-umqs-traveller-field="adults"],
  .umqs.umqs--ultra .umqs__grid > [data-umqs-traveller-field="children"]{
    display:none!important;
  }

  /* Harte Breitenbremse gegen alte min-width-/calc-Regeln in Inputs, Buttons und Selectlikes. */
  .umqs-mobile-tabs .umqs__field > input,
  .umqs-mobile-tabs .umqs__field > select,
  .umqs-mobile-tabs .umqs__field > textarea,
  .umqs-mobile-tabs .umqs__field > button,
  .umqs-mobile-tabs .umqs__selectlike,
  .umqs-mobile-tabs .umqs__stepper,
  .umqs .umqs__field > input,
  .umqs .umqs__field > select,
  .umqs .umqs__field > textarea,
  .umqs .umqs__field > button,
  .umqs .umqs__selectlike,
  .umqs .umqs__stepper{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    flex:0 1 auto!important;
    flex-basis:auto!important;
    margin-left:0!important;
    margin-right:0!important;
    transform:none!important;
    overflow:hidden!important;
  }

  .umqs-mobile-tabs .umqs__selectlike > span,
  .umqs .umqs__selectlike > span{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}


/* v2.3.1ax – Mobile-Containment wirklich auf DOM-Ebene
   Grund: ältere Ultra-Mobile-Regeln setzten einzelne Felder wieder auf 1/2. Diese Regeln
   greifen ohne Annahme über PA/NH-Klassen und nur im Urania-Urlaub/Hotel-Grid. */
@media (max-width: 767px){
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)),
  body .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)){
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    gap:14px!important;
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    overflow:visible!important;
  }

  /* Reiseziel, Abflughafen und Reisezeitraum: immer volle Reihe. */
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > [data-combobox="destination"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > [data-combobox="airport"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > [data-umqs-datecombo],
  body .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > [data-combobox="destination"],
  body .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > [data-combobox="airport"],
  body .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > [data-umqs-datecombo]{
    grid-column:1 / -1!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    justify-self:stretch!important;
  }

  /* Reisedauer + Reisende: je 1/2. */
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field--durationcombo,
  body .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field--durationcombo{
    grid-column:1 / 2!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field--travellerscombo,
  body .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field--travellerscombo{
    grid-column:2 / 3!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
  }

  /* Alle sichtbaren Controls füllen immer ihren Grid-Track, nie mehr und nie weniger. */
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field,
  body .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field{
    min-width:0!important;
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
  }
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field > input:not([type="hidden"]),
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field > select,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field > button.umqs__selectlike,
  body .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field > input:not([type="hidden"]),
  body .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field > select,
  body .umqs.umqs--provider-urania .umqs__grid:not(:has(.umqs__cruise-separator)) > .umqs__field > button.umqs__selectlike{
    display:flex!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    box-sizing:border-box!important;
    justify-self:stretch!important;
  }
}

/* v2.3.1az – Mobile-Raster-Fallback für Pauschalreisen/Nur Hotel.
   Die eigentliche Anordnung wird zusätzlich per Inline-JS gesetzt, damit ältere CSS-Regeln keine Chance haben. */
@media (max-width:767px){
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid,
  body .umqs.umqs--provider-urania .umqs__grid{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    gap:12px 14px!important;
    width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
  }
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid > [data-combobox="destination"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-pa .umqs__grid > [data-combobox="airport"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid > [data-umqs-datecombo],
  body .umqs.umqs--provider-urania .umqs__grid > [data-combobox="destination"],
  body .umqs.umqs--provider-urania.umqs--type-pa .umqs__grid > [data-combobox="airport"],
  body .umqs.umqs--provider-urania .umqs__grid > [data-umqs-datecombo]{grid-column:1/-1!important;}
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid > .umqs__field--durationcombo,
  body .umqs.umqs--provider-urania .umqs__grid > .umqs__field--durationcombo{grid-column:1/2!important;}
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid > .umqs__field--travellerscombo,
  body .umqs.umqs--provider-urania .umqs__grid > .umqs__field--travellerscombo{grid-column:2/3!important;}
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__grid > .umqs__field,
  body .umqs.umqs--provider-urania .umqs__grid > .umqs__field,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__field > input:not([type="hidden"]),
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__field > select,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania .umqs__selectlike,
  body .umqs.umqs--provider-urania .umqs__field > input:not([type="hidden"]),
  body .umqs.umqs--provider-urania .umqs__field > select,
  body .umqs.umqs--provider-urania .umqs__selectlike{
    width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;
  }
}


/* v2.3.1ba – Urlaub/Hotel mobile Felder nach Kreuzfahrt-Basis
   Die Urania-Felder werden mobil wie die funktionierenden Kreuzfahrt-Felder behandelt:
   Container = 2-Spalten-Raster, Reiseziel/Abflughafen/Reisezeitraum = volle Zeile,
   Reisedauer/Reisende = je eine halbe Zeile. Desktop bleibt unangetastet. */
@media (max-width: 767px){
  body .umqs.umqs--provider-urania [data-umqs-manual-fields],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields]{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-auto-flow:row!important;
    align-items:end!important;
    gap:12px 14px!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }

  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field,
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__children-ages,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__children-ages{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    box-sizing:border-box!important;
    margin-left:0!important;
    margin-right:0!important;
    justify-self:stretch!important;
    align-self:stretch!important;
    flex:0 1 auto!important;
    transform:none!important;
  }

  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__mobile-fullrow,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__mobile-fullrow,
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-combobox="destination"],
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-combobox="airport"],
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-umqs-datecombo],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-combobox="destination"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-combobox="airport"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-umqs-datecombo]{
    grid-column:1 / -1!important;
  }

  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-combobox="destination"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-combobox="destination"]{ order:10!important; }
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-combobox="airport"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-combobox="airport"]{ order:20!important; }
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-umqs-datecombo],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-umqs-datecombo]{ order:30!important; }

  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field--durationcombo,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field--durationcombo{
    order:40!important;
    grid-column:1 / 2!important;
  }
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field--travellerscombo,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field--travellerscombo{
    order:41!important;
    grid-column:2 / 3!important;
  }

  body .umqs.umqs--provider-urania.umqs--type-nh [data-umqs-manual-fields] > [data-combobox="airport"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-nh [data-umqs-manual-fields] > [data-combobox="airport"]{
    display:none!important;
  }
  body .umqs.umqs--provider-urania.umqs--type-nh [data-umqs-manual-fields] > [data-umqs-datecombo],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-nh [data-umqs-manual-fields] > [data-umqs-datecombo]{ order:20!important; }
  body .umqs.umqs--provider-urania.umqs--type-nh [data-umqs-manual-fields] > .umqs__field--durationcombo,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-nh [data-umqs-manual-fields] > .umqs__field--durationcombo{ order:30!important; }
  body .umqs.umqs--provider-urania.umqs--type-nh [data-umqs-manual-fields] > .umqs__field--travellerscombo,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--type-nh [data-umqs-manual-fields] > .umqs__field--travellerscombo{ order:31!important; }

  body .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-date-field],
  body .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-traveller-field="adults"],
  body .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-traveller-field="children"],
  body .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-traveller-field="ages"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-date-field],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-traveller-field="adults"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-traveller-field="children"],
  body .umqs-mobile-tabs .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-traveller-field="ages"]{
    display:none!important;
  }

  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > input:not([type="hidden"]),
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > select,
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > button.umqs__selectlike,
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > textarea,
  body .umqs.umqs--provider-urania [data-umqs-manual-fields] .umqs__stepper,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > input:not([type="hidden"]),
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > select,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > button.umqs__selectlike,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > textarea,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] .umqs__stepper{
    display:flex!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    inline-size:100%!important;
    max-inline-size:100%!important;
    min-inline-size:0!important;
    box-sizing:border-box!important;
    margin-left:0!important;
    margin-right:0!important;
    flex:0 1 auto!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }

  body .umqs.umqs--provider-urania [data-umqs-manual-fields] .umqs__selectlike > span,
  body .umqs-mobile-tabs .umqs.umqs--provider-urania [data-umqs-manual-fields] .umqs__selectlike > span{
    min-width:0!important;
    max-width:100%!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
  }
}

/* v2.3.1bb – finale mobile Korrektur nach Kreuzfahrt-Basis.
   Mobile Grid wird bewusst deaktiviert; Feldbreiten laufen über block/inline-block. */
@media (max-width: 767px) {
  .umqs-mobile-tabs .umqs__grid,
  .umqs .umqs__grid,
  .umqs.umqs--ultra .umqs__grid,
  .umqs.umqs--compact .umqs__grid,
  .umqs[class*="umqs--cruise-layout-"] .umqs__grid,
  .umqs:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid,
  .umqs.umqs--ultra:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid,
  .umqs.umqs--type-nh:not(.umqs--provider-cruise):not(.umqs--provider-expedition):not(.umqs--provider-sunnycars) .umqs__grid {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    font-size: 0 !important;
  }

  .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field {
    min-width: 0 !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 0 12px 0 !important;
    vertical-align: top !important;
    font-size: 15px !important;
  }

  .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-combobox="destination"],
  .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-combobox="airport"],
  .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-umqs-datecombo],
  .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field--datecombo {
    display: block !important;
    width: 100% !important;
    inline-size: 100% !important;
    max-inline-size: 100% !important;
    clear: both !important;
  }

  .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field--durationcombo,
  .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field:has(select[name="duration"]) {
    display: inline-flex !important;
    width: calc(50% - 7px) !important;
    inline-size: calc(50% - 7px) !important;
    max-width: calc(50% - 7px) !important;
    max-inline-size: calc(50% - 7px) !important;
    margin-right: 14px !important;
    clear: left !important;
  }

  .umqs.umqs--provider-urania [data-umqs-manual-fields] > [data-umqs-travellerscombo],
  .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field--travellerscombo {
    display: inline-flex !important;
    width: calc(50% - 7px) !important;
    inline-size: calc(50% - 7px) !important;
    max-width: calc(50% - 7px) !important;
    max-inline-size: calc(50% - 7px) !important;
    margin-right: 0 !important;
    clear: none !important;
  }

  .umqs.umqs--provider-urania.umqs--type-nh [data-umqs-manual-fields] > [data-combobox="airport"] {
    display: none !important;
  }

  .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-date-field],
  .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-traveller-field="adults"],
  .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-traveller-field="children"],
  .umqs.umqs--provider-urania.umqs--ultra [data-umqs-manual-fields] > [data-umqs-traveller-field="ages"] {
    display: none !important;
  }

  .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > input:not([type="hidden"]),
  .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > select,
  .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > textarea,
  .umqs.umqs--provider-urania [data-umqs-manual-fields] > .umqs__field > button,
  .umqs.umqs--provider-urania [data-umqs-manual-fields] .umqs__selectlike,
  .umqs.umqs--provider-urania [data-umqs-manual-fields] .umqs__stepper {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    inline-size: 100% !important;
    max-inline-size: 100% !important;
    min-inline-size: 0 !important;
    box-sizing: border-box !important;
  }

  .umqs.umqs--provider-urania [data-umqs-manual-fields] .umqs__popover,
  .umqs.umqs--provider-urania [data-umqs-manual-fields] .umqs__airport-popover,
  .umqs.umqs--provider-urania [data-umqs-manual-fields] [data-umqs-date-popover],
  .umqs.umqs--provider-urania [data-umqs-manual-fields] [data-umqs-travellers-popover],
  .umqs.umqs--provider-urania [data-umqs-manual-fields] .umqs__duration-popover,
  .umqs.umqs--provider-urania [data-umqs-manual-fields] .umqs__suggestions {
    left: 50% !important;
    right: auto !important;
    transform: translateX(-50%) !important;
    width: min(420px, calc(100vw - 24px)) !important;
    max-width: calc(100vw - 24px) !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }
}
