/* M&B Immobiliensuche – Widget-Styles. Farben/Masse kommen als CSS-Variablen aus den Elementor-Einstellungen. */
.mb-immosuche{
  --mb-card-bg:rgba(255,255,255,.92);--mb-card-border:rgba(255,255,255,.6);--mb-card-radius:14px;--mb-card-blur:14px;
  --mb-label:#5b6474;--mb-field-text:#1b2436;--mb-field-border:#d9dee8;--mb-field-height:52px;--mb-field-radius:8px;
  --mb-primary:#0d1f4f;--mb-primary-hover:#08163a;--mb-on-primary:#fff;--mb-accent:#E9C24A;
  --mb-pill-text:#fff;--mb-pill-bg:rgba(255,255,255,.12);--mb-pill-bg-hover:rgba(255,255,255,.26);--mb-pill-border:rgba(255,255,255,.35);
  width:100%;
}
.mb-immosuche__card{
  display:grid;grid-template-columns:1fr 1fr auto;gap:12px;align-items:end;
  width:100%;margin:0 auto;padding:14px;
  background:var(--mb-card-bg);border:1px solid var(--mb-card-border);border-radius:var(--mb-card-radius);
  -webkit-backdrop-filter:blur(var(--mb-card-blur));backdrop-filter:blur(var(--mb-card-blur));
}
.mb-immosuche__field{display:flex;flex-direction:column;gap:6px;margin:0;min-width:0}
.mb-immosuche__label{font-size:12px;line-height:1;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--mb-label)}
.mb-immosuche__select{position:relative;display:block}
.mb-immosuche__select select{
  width:100%;height:var(--mb-field-height);margin:0;padding:0 40px 0 14px;
  appearance:none;-webkit-appearance:none;
  border:1px solid var(--mb-field-border);border-radius:var(--mb-field-radius);background:#fff;box-shadow:none;
  font-family:inherit;font-size:1em;font-weight:500;line-height:normal;color:var(--mb-field-text);cursor:pointer;
}
.mb-immosuche__select select:focus{outline:3px solid var(--mb-accent);outline-offset:1px;border-color:var(--mb-primary)}
.mb-immosuche__chevron{position:absolute;right:14px;top:50%;width:16px;height:16px;transform:translateY(-50%);color:var(--mb-primary);pointer-events:none}
.mb-immosuche__submit{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  height:var(--mb-field-height);padding:0 28px;border:0;border-radius:var(--mb-field-radius);
  background:var(--mb-primary);color:var(--mb-on-primary);
  font-family:inherit;font-size:.94em;font-weight:600;letter-spacing:.02em;line-height:1;white-space:nowrap;cursor:pointer;
  transition:background .2s ease,transform .2s ease;
}
.mb-immosuche__submit:hover{background:var(--mb-primary-hover);color:var(--mb-on-primary);transform:translateY(-1px)}
.mb-immosuche__submit:focus-visible{outline:3px solid var(--mb-accent);outline-offset:2px}
.mb-immosuche__icon{display:inline-flex;align-items:center;line-height:1}
.mb-immosuche__icon svg,.mb-immosuche__icon i{width:1em;height:1em;font-size:1.05em;fill:currentColor}
.mb-immosuche__pills{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:22px}
.mb-immosuche__pill{
  display:inline-flex;align-items:center;gap:8px;padding:9px 16px;border-radius:999px;
  border:1px solid var(--mb-pill-border);background:var(--mb-pill-bg);color:var(--mb-pill-text);
  font-size:.875em;font-weight:500;line-height:1.2;text-decoration:none;transition:background .2s ease;
}
.mb-immosuche__pill:hover,.mb-immosuche__pill:focus-visible{background:var(--mb-pill-bg-hover);color:var(--mb-pill-text)}
.mb-immosuche__pill:focus-visible{outline:3px solid var(--mb-accent);outline-offset:2px}
.mb-immosuche__pill .mb-immosuche__icon svg,.mb-immosuche__pill .mb-immosuche__icon i{font-size:.95em}
@media (max-width:767px){
  .mb-immosuche__card{grid-template-columns:1fr}
  .mb-immosuche__submit{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .mb-immosuche__submit,.mb-immosuche__pill{transition:none}
  .mb-immosuche__submit:hover{transform:none}
}
