/* ============================================================
   Modal "Kostenlose Anfrage" - Redesign v7
   aufnaeher.de
   ============================================================ */

/* ── Modal Overlay & Container ── */
#elementor-popup-modal-1041 {
  background-color: rgba(10, 10, 10, 0.85) !important;
  backdrop-filter: blur(4px);
}

#elementor-popup-modal-1041 .dialog-message {
  width: 920px !important;
  max-width: 96vw !important;
  height: auto !important;
  max-height: calc(100vh - 48px) !important;
  overflow-y: auto;
  border-radius: 16px;
  align-items: flex-start !important;
}

/* Sanfte Animation ohne Bounce/Overshoot */
#elementor-popup-modal-1041 .dialog-widget-content {
  animation-timing-function: cubic-bezier(0.22, 0.61, 0.36, 1) !important;
  animation-duration: 0.28s !important;
}

#elementor-popup-modal-1041 .dialog-widget-content {
  background-image: none !important;
  background-color: #fff !important;
  border-radius: 16px !important;
  box-shadow: 0 24px 60px rgba(0,0,0,0.5) !important;
  margin: 0 !important;
  overflow: hidden;
  position: relative !important;
}

/* ── Close Button ── */
#elementor-popup-modal-1041 .dialog-close-button {
  top: 12px !important;
  right: 12px !important;
  z-index: 10;
  background: rgba(255,255,255,0.15);
  border-radius: 50%;
  width: 30px !important;
  height: 30px !important;
  display: flex !important;
  align-items: center;
  justify-content: center;
  transition: background 0.2s;
  font-size: 16px !important;
}
#elementor-popup-modal-1041 .dialog-close-button:hover {
  background: rgba(255,255,255,0.28);
}
#elementor-popup-modal-1041 .dialog-close-button svg {
  width: 14px;
  height: 14px;
  fill: #fff !important;
}

/* ── Modal Header ── */
.elementor-1041 .elementor-element.elementor-element-34e74e3 {
  padding: 0 !important;
}

.elementor-1041 .elementor-element.elementor-element-5561696 > .elementor-element-populated {
  padding: 0 !important;
}

.elementor-1041 .elementor-element.elementor-element-e616ef6 {
  background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
  padding: 16px 24px !important;
  margin: 0 !important;
  border-bottom: 2px solid #f5a623;
}

.elementor-1041 .elementor-element.elementor-element-e616ef6 .elementor-heading-title {
  color: #ffffff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px;
  margin: 0 !important;
  line-height: 1.3;
}

/* ── Form Container ── */
.elementor-1041 .elementor-element.elementor-element-d516e62 > .elementor-widget-container {
  background-color: #fff !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Unteren Rand gleich wie oben (paddingTop=8px → paddingBottom=8px) */
.elementor-1041 .elementor-element.elementor-element-d516e62 {
  padding-bottom: 8px !important;
}

/* ── WPForms global reset ── */
#wpforms-form-1056,
#wpforms-form-1056 * {
  box-sizing: border-box;
}

#wpforms-form-1056 .wpforms-field-container {
  margin: 0;
}

/* Fix: WPForms JS setzt gridTemplateRows inline mit veralteten Höhen —
   !important überschreibt normale Inline-Styles laut CSS-Cascade */
.wpforms-field-container {
  grid-template-rows: auto !important;
}

/* ── Layout Spalten: 50/50 Grid ── */
#wpforms-form-1056 .wpforms-field-layout-preset-50-50 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0 !important;
  align-items: start;
}

/* ── LINKE SPALTE: Kontaktformular ── */
#wpforms-form-1056 .wpforms-layout-column:first-child {
  padding: 20px 22px !important;
  background: #fff !important;
}

/* ── RECHTE SPALTE: Konfiguration Summary Card ── */
#wpforms-form-1056 .wpforms-layout-column:last-child {
  padding: 20px 20px !important;
  background: #f5f6f8 !important;
  border-left: 1px solid #e4e6ea !important;
}

/* ── Labels: kompakter ── */
#wpforms-form-1056 .wpforms-field-label {
  font-size: 11px !important;
  font-weight: 600 !important;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #555 !important;
  margin: 0 0 4px 0 !important;
  display: block;
  line-height: 1.3 !important;
}

/* Sublabels in Name field */
#wpforms-form-1056 .wpforms-field-sublabel {
  font-size: 10px !important;
  color: #999 !important;
  margin-top: 2px !important;
}

/* ── Input-Felder in der linken Spalte ── */
#wpforms-form-1056 .wpforms-layout-column:first-child input[type="text"],
#wpforms-form-1056 .wpforms-layout-column:first-child input[type="email"],
#wpforms-form-1056 .wpforms-layout-column:first-child input[type="tel"],
#wpforms-form-1056 .wpforms-layout-column:first-child input[type="number"],
#wpforms-form-1056 .wpforms-layout-column:first-child select,
#wpforms-form-1056 .wpforms-layout-column:first-child textarea {
  width: 100% !important;
  padding: 8px 11px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  color: #222 !important;
  background: #fff !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06) !important;
  outline: none !important;
  height: auto !important;
  min-height: 0 !important;
}

/* Input-Felder in der rechten Spalte (Konfiguration) */
#wpforms-form-1056 .wpforms-layout-column:last-child input[type="text"],
#wpforms-form-1056 .wpforms-layout-column:last-child input[type="email"],
#wpforms-form-1056 .wpforms-layout-column:last-child input[type="tel"],
#wpforms-form-1056 .wpforms-layout-column:last-child input[type="number"],
#wpforms-form-1056 .wpforms-layout-column:last-child select,
#wpforms-form-1056 .wpforms-layout-column:last-child textarea {
  width: 100% !important;
  padding: 7px 10px !important;
  border: 1px solid #dde0e6 !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  color: #222 !important;
  background: #ffffff !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  box-shadow: none !important;
  outline: none !important;
  height: auto !important;
  min-height: 0 !important;
}

/* Allgemeiner Input-Fallback */
#wpforms-form-1056 input[type="text"],
#wpforms-form-1056 input[type="email"],
#wpforms-form-1056 input[type="tel"],
#wpforms-form-1056 input[type="number"],
#wpforms-form-1056 select,
#wpforms-form-1056 textarea {
  width: 100% !important;
  padding: 7px 10px !important;
  border: 1px solid #e0e0e0 !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  line-height: 1.4 !important;
  color: #222 !important;
  background: #fff !important;
  transition: border-color 0.2s, box-shadow 0.2s !important;
  box-shadow: none !important;
  outline: none !important;
  height: auto !important;
  min-height: 0 !important;
}

#wpforms-form-1056 input:focus,
#wpforms-form-1056 select:focus,
#wpforms-form-1056 textarea:focus {
  border-color: #f5a623 !important;
  box-shadow: 0 0 0 3px rgba(245,166,35,0.15) !important;
}

#wpforms-form-1056 textarea {
  min-height: 68px !important;
  resize: vertical !important;
}

/* ── Felder-Abstände: KOMPAKT ── */
#wpforms-form-1056 .wpforms-field {
  margin: 0 0 10px 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

#wpforms-form-1056 .wpforms-field-row,
#wpforms-form-1056 .wpforms-field-row-block {
  margin-bottom: 0 !important;
}

/* ── Name-Felder nebeneinander ── */
#wpforms-form-1056 .wpforms-field-name fieldset {
  padding: 0 !important;
  border: none !important;
  margin: 0 !important;
}

#wpforms-form-1056 .wpforms-field-name .wpforms-field-row {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 8px !important;
}

#wpforms-form-1056 .wpforms-field-name .wpforms-field-row > div {
  margin: 0 !important;
  padding: 0 !important;
}

/* ── Visueller Abschnitt-Trenner in der linken Spalte ── */
/* Firma → kleines Icon / Trennbalken vor Lieferadresse */
#wpforms-form-1056 .wpforms-layout-column:first-child .wpforms-field:first-child {
  padding-bottom: 10px !important;
  margin-bottom: 4px !important;
}

/* ── Abschnittsüberschriften (Section-Header links) ── */
/* Wir nutzen ein HTML-Feld oder pseudo-Trennlinie wenn nötig */

/* ── Radio & Checkbox Buttons (rechte Spalte – auf grauem BG) ── */
#wpforms-form-1056 .wpforms-field-radio,
#wpforms-form-1056 .wpforms-field-checkbox {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
  padding: 0 !important;
  border-radius: 0 !important;
  margin-bottom: 10px !important;
  position: relative;
  overflow: visible;
}

/* Entferne den gelben Glow (::before Dekoration) von ALLEN Feldern */
#wpforms-form-1056 .wpforms-field::before,
#wpforms-form-1056 .wpforms-field::after {
  content: none !important;
  display: none !important;
  background: none !important;
  background-image: none !important;
}

/* Auch sicherstellen dass keine Felder-Hintergründe übrig bleiben */
#wpforms-form-1056 .wpforms-field-text,
#wpforms-form-1056 .wpforms-field-email,
#wpforms-form-1056 .wpforms-field-phone,
#wpforms-form-1056 .wpforms-field-name,
#wpforms-form-1056 .wpforms-field-number,
#wpforms-form-1056 .wpforms-field-select,
#wpforms-form-1056 .wpforms-field-textarea,
#wpforms-form-1056 .wpforms-field-file-upload,
#wpforms-form-1056 .wpforms-field-html {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

#wpforms-form-1056 .wpforms-list-inline {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 4px !important;
}

#wpforms-form-1056 .wpforms-list-inline li {
  display: inline-block !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Befestigung / Grundstoff: Vollbreiten-Buttons innerhalb der Boxen */
#wpforms-1056-field_8-container,
#wpforms-1056-field_9-container {
  overflow: hidden !important;
}

#wpforms-1056-field_8,
#wpforms-1056-field_8-container .wpforms-list-inline {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 6px !important;
  width: 100% !important;
}

#wpforms-1056-field_8 li,
#wpforms-1056-field_8-container .wpforms-list-inline li {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
}

#wpforms-1056-field_8 li label,
#wpforms-1056-field_8-container .wpforms-list-inline li label {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 36px !important;
  white-space: normal !important;
  text-align: center !important;
}

#wpforms-1056-field_9,
#wpforms-1056-field_9-container .wpforms-list-inline {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 6px !important;
  width: 100% !important;
}

#wpforms-1056-field_9 li,
#wpforms-1056-field_9-container .wpforms-list-inline li {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
}

#wpforms-1056-field_9 li label,
#wpforms-1056-field_9-container .wpforms-list-inline li label {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 36px !important;
  white-space: normal !important;
  text-align: center !important;
}

/* Pill Buttons – Standard (weiß auf grauem Hintergrund) */
#wpforms-form-1056 .wpforms-list-inline li label {
  display: inline-flex !important;
  align-items: center;
  padding: 5px 12px !important;
  border: 1px solid #d5d9e0 !important;
  border-radius: 14px !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #444 !important;
  cursor: pointer;
  transition: all 0.15s ease !important;
  background: #fff !important;
  white-space: nowrap;
  line-height: 1.3 !important;
  margin: 0 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

#wpforms-1056-field_8 li label,
#wpforms-1056-field_9 li label,
#wpforms-1056-field_8-container .wpforms-list-inline li label,
#wpforms-1056-field_9-container .wpforms-list-inline li label {
  display: flex !important;
  width: 100% !important;
  justify-content: center !important;
  text-align: center !important;
  white-space: normal !important;
}

#wpforms-form-1056 .wpforms-list-inline li label:hover {
  border-color: #f5a623 !important;
  color: #222 !important;
}

#wpforms-form-1056 .wpforms-list-inline li input[type="radio"],
#wpforms-form-1056 .wpforms-list-inline li input[type="checkbox"] {
  position: absolute !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  pointer-events: none !important;
}

#wpforms-form-1056 .wpforms-list-inline li input[type="radio"]:checked + label,
#wpforms-form-1056 .wpforms-list-inline li input[type="checkbox"]:checked + label {
  background: #f5a623 !important;
  border-color: #f5a623 !important;
  color: #111 !important;
  font-weight: 700 !important;
}

/* ── Datei-Upload kompakt ── */
#wpforms-form-1056 .wpforms-field-file-upload input[type="file"] {
  border: 1px dashed #c5c9d0 !important;
  border-radius: 6px !important;
  padding: 6px 8px !important;
  font-size: 11px !important;
  background: #fff !important;
  width: 100% !important;
  cursor: pointer;
}

/* ── Datenschutz Checkbox ── */
#wpforms-form-1056 .wpforms-field-checkbox.wpforms-list-1-columns,
#wpforms-form-1056 .wpforms-field-checkbox:not(.inlinefloat):not(.wpforms-list-inline) {
  margin-top: 4px !important;
}

/* Datenschutz-Label komplett ausblenden (legend element) */
#wpforms-form-1056 .wpforms-field-checkbox:not(.inlinefloat) legend.wpforms-field-label,
#wpforms-form-1056 .wpforms-field-checkbox:not(.inlinefloat) > .wpforms-field-label {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  width: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  position: absolute !important;
  clip: rect(0,0,0,0) !important;
}

#wpforms-form-1056 .wpforms-field-checkbox:not(.inlinefloat) fieldset {
  border: none !important;
  padding: 0 !important;
  margin: 0 !important;
}

#wpforms-form-1056 .wpforms-field-checkbox:not(.inlinefloat):not(.wpforms-list-inline) ul {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#wpforms-form-1056 .wpforms-field-checkbox:not(.inlinefloat):not(.wpforms-list-inline) li label {
  font-size: 11px !important;
  color: #666 !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
  font-weight: 400 !important;
  padding: 0 !important;
  border: none !important;
  border-radius: 0 !important;
  background: none !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  cursor: pointer;
}

#wpforms-form-1056 .wpforms-field-checkbox:not(.inlinefloat):not(.wpforms-list-inline) li input[type="checkbox"] {
  position: static !important;
  opacity: 1 !important;
  width: 14px !important;
  height: 14px !important;
  margin: 0 !important;
  accent-color: #f5a623;
  pointer-events: auto !important;
}

/* ── Datenschutz Checkbox: kein Springen, grüne Custom-Box ── */

/* li-Layout fixieren */
#wpforms-form-1056 #wpforms-1056-field_26-container li {
  display: flex !important;
  align-items: center !important;
  list-style: none !important;
}

/* Native Input ausblenden (2-ID-Spezifizität überschreibt die Klassen-Regel oben) */
#wpforms-form-1056 #wpforms-1056-field_26_1 {
  position: absolute !important;
  opacity: 0 !important;
  width: 0 !important;
  height: 0 !important;
  pointer-events: none !important;
}

/* Label-Zeile */
#wpforms-form-1056 #wpforms-1056-field_26-container li label {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  cursor: pointer !important;
  font-size: 11px !important;
  color: #555 !important;
  line-height: 1.4 !important;
  user-select: none !important;
}

/* Custom Checkbox-Box via ::before */
#wpforms-form-1056 #wpforms-1056-field_26-container li label::before {
  content: '' !important;
  display: inline-block !important;
  min-width: 18px !important;
  width: 18px !important;
  height: 18px !important;
  border: 2px solid #d0d5dd !important;
  border-radius: 4px !important;
  background-color: #fff !important;
  background-image: none !important;
  flex-shrink: 0 !important;
  transition: background-color 0.15s ease, border-color 0.15s ease !important;
}

/* Grün wenn angehakt */
#wpforms-form-1056 #wpforms-1056-field_26_1:checked + label::before {
  background-color: #22c55e !important;
  border-color: #22c55e !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpolyline points='2%2C6.5 4.5%2C9 10%2C3' stroke='white' stroke-width='1.8' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-size: 11px 11px !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
}

/* Hover: grüner Rahmen als Vorschau */
#wpforms-form-1056 #wpforms-1056-field_26-container li label:hover::before {
  border-color: #22c55e !important;
}

/* ── Submit Button ── */
#wpforms-form-1056 .wpforms-submit-container {
  margin: 14px 0 0 0 !important;
  padding: 14px 22px 20px !important;
  border-top: 1px solid #e8e8e8 !important;
  background: #fff !important;
  grid-column: 1 / -1 !important;
}

#wpforms-form-1056 .wpforms-submit {
  background: linear-gradient(135deg, #f5a623 0%, #e08e00 100%) !important;
  color: #111 !important;
  border: none !important;
  border-radius: 7px !important;
  padding: 11px 28px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px;
  cursor: pointer !important;
  transition: transform 0.15s, box-shadow 0.15s !important;
  box-shadow: 0 3px 10px rgba(245,166,35,0.35) !important;
  width: auto !important;
  text-transform: none !important;
}

#wpforms-form-1056 .wpforms-submit:hover {
  transform: translateY(-1px) !important;
  box-shadow: 0 6px 16px rgba(245,166,35,0.45) !important;
}

/* ── HTML-Feld: "IHRE AUFNÄHERINFORMATIONEN" Header ── */
.elementor-1041 .wpforms-field.wpforms-field-html,
#wpforms-1056-field_21-container {
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  color: #333 !important;
  align-self: stretch !important;
}

#wpforms-1056-field_21 {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  outline: 0 !important;
}

#wpforms-1056-field_21-container {
  border: 0 !important;
  box-shadow: none !important;
  margin-bottom: -10px !important;
  padding-bottom: 0 !important;
}

#wpforms-1056-field_21-container hr,
#wpforms-1056-field_21 hr,
.elementor-1041 .wpforms-field.wpforms-field-html hr {
  display: none !important;
  border: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

#wpforms-1056-field_21 br {
  display: none !important;
}

#wpforms-1056-field_21 > span {
  display: block !important;
  margin-top: 4px !important;
}

#wpforms-1056-field_21::after,
#wpforms-1056-field_21-container::after,
.elementor-1041 .wpforms-field.wpforms-field-html::after {
  content: none !important;
  display: none !important;
}

#wpforms-1056-field_5-container {
  margin-top: 0 !important;
}

.elementor-1041 .wpforms-field.wpforms-field-html *,
.elementor-1041 .wpforms-field.wpforms-field-html p,
.elementor-1041 .wpforms-field.wpforms-field-html h1,
.elementor-1041 .wpforms-field.wpforms-field-html h2,
.elementor-1041 .wpforms-field.wpforms-field-html h3,
.elementor-1041 .wpforms-field.wpforms-field-html h4,
.elementor-1041 .wpforms-field.wpforms-field-html span,
.elementor-1041 .wpforms-field.wpforms-field-html div {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  color: #444 !important;
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  line-height: 1.5 !important;
  text-transform: uppercase !important;
  letter-spacing: 1px !important;
}

.elementor-1041 .wpforms-field.wpforms-field-html span,
.elementor-1041 .wpforms-field.wpforms-field-html em {
  font-weight: 400 !important;
  font-size: 10px !important;
  color: #888 !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
}

/* ── Field description (Hinweistexte) ── */
#wpforms-form-1056 .wpforms-field-description {
  font-size: 10px !important;
  color: #999 !important;
  margin: 2px 0 0 0 !important;
  line-height: 1.3 !important;
}

/* ── Scrollbar im Modal ── */
#elementor-popup-modal-1041 .dialog-message::-webkit-scrollbar {
  width: 6px;
}
#elementor-popup-modal-1041 .dialog-message::-webkit-scrollbar-track {
  background: transparent;
}
#elementor-popup-modal-1041 .dialog-message::-webkit-scrollbar-thumb {
  background: #ccc;
  border-radius: 3px;
}

/* ── Address Group fix ── */
#wpforms-form-1056 .kv-address-group-fields {
  display: block !important;
  margin-top: 6px !important;
}

#wpforms-form-1056 .kv-address-group-fields > div {
  margin-bottom: 6px !important;
}

/* ── Adressfelder eng gruppieren ── */
/* Straße: Label "Lieferung nach..." kleiner Abstand zum nächsten Feld */
#wpforms-1056-field_29-container {
  margin-bottom: 3px !important;
}
/* Wohnort direkt drunter, kein Abstand */
#wpforms-1056-field_31-container {
  margin-bottom: 3px !important;
}
/* PLZ direkt drunter */
#wpforms-1056-field_30-container {
  margin-bottom: 3px !important;
}
/* Land: etwas mehr Abstand nach unten (trennt zur E-Mail) */
#wpforms-1056-field_32-container {
  margin-bottom: 12px !important;
}

/* ── Konfigurationsfelder: Labels auf grauem BG ── */
#wpforms-form-1056 .wpforms-layout-column:last-child .wpforms-field-label {
  color: #4a4e5a !important;
}

/* ── Responsive (Mobile) ── */
@media (max-width: 767px) {
  #elementor-popup-modal-1041 .dialog-message {
    width: 95vw !important;
    max-height: 90vh !important;
  }

  #wpforms-form-1056 .wpforms-field-layout-preset-50-50 {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  #wpforms-form-1056 .wpforms-layout-column:last-child {
    border-left: none !important;
    border-top: 2px solid #e4e6ea !important;
    padding-top: 16px !important;
    margin-top: 0 !important;
  }

  .elementor-1041 .elementor-element.elementor-element-e616ef6 {
    padding: 14px 18px !important;
  }

  #wpforms-form-1056 .wpforms-submit-container {
    padding: 12px 16px 16px !important;
  }

  /* Datenschutz-Checkbox auf Mobil: Checkbox oben ausrichten wenn Text umbricht */
  #wpforms-form-1056 #wpforms-1056-field_26-container li label {
    align-items: flex-start !important;
    line-height: 1.55 !important;
    font-size: 12px !important;
  }
  #wpforms-form-1056 #wpforms-1056-field_26-container li label::before {
    margin-top: 2px !important;
    flex-shrink: 0 !important;
  }
}

/* ── Modal Preloader (beim Absenden) ── */
.kv-modal-preloader {
  display: none;
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, 0.88);
  backdrop-filter: blur(3px);
  z-index: 9999;
  border-radius: 16px;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 14px;
}
.kv-modal-preloader.kv-visible {
  display: flex !important;
}
.kv-modal-spinner {
  width: 44px;
  height: 44px;
  border: 3px solid #ececec;
  border-top-color: #f5a623;
  border-radius: 50%;
  animation: kvModalSpin 0.75s linear infinite;
}
@keyframes kvModalSpin {
  to { transform: rotate(360deg); }
}
.kv-modal-preloader-text {
  font-size: 13px;
  font-weight: 600;
  color: #555;
  letter-spacing: 0.2px;
}
