.elementor-1594 .elementor-element.elementor-element-59a47c3d{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--align-items:stretch;--gap:20px 20px;--row-gap:20px;--column-gap:20px;border-style:solid;--border-style:solid;border-width:1px 1px 1px 1px;--border-top-width:1px;--border-right-width:1px;--border-bottom-width:1px;--border-left-width:1px;border-color:#6366F142;--border-color:#6366F142;--border-radius:20px 20px 20px 20px;box-shadow:0px 18px 55px 0px rgba(2.0000000000000013, 5.999999999999986, 23, 0.1);--padding-top:50px;--padding-bottom:50px;--padding-left:50px;--padding-right:50px;}.elementor-1594 .elementor-element.elementor-element-59a47c3d:not(.elementor-motion-effects-element-type-background), .elementor-1594 .elementor-element.elementor-element-59a47c3d > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-button span{gap:10px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group{padding-right:calc( 50px/2 );padding-left:calc( 50px/2 );margin-bottom:25px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-form-fields-wrapper{margin-left:calc( -50px/2 );margin-right:calc( -50px/2 );margin-bottom:-25px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group.recaptcha_v3-bottomleft, .elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group > label, .elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-subgroup label{color:#0B1220;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-mark-required .elementor-field-label:after{color:#007FA3;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group > label{font-family:"Inter", Sans-serif;font-size:18px;font-weight:600;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-type-html{color:#0F34DD;font-family:"Inter", Sans-serif;font-size:18px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group .elementor-field{color:#586A82;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group .elementor-field, .elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-subgroup label{font-family:"Inter", Sans-serif;font-weight:400;line-height:1em;letter-spacing:-0.5px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group .elementor-field:not(.elementor-select-wrapper){border-radius:12px 12px 12px 12px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group .elementor-select-wrapper select{border-radius:12px 12px 12px 12px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-button{font-family:var( --e-global-typography-2e79638-font-family ), Sans-serif;font-size:var( --e-global-typography-2e79638-font-size );font-weight:var( --e-global-typography-2e79638-font-weight );text-transform:var( --e-global-typography-2e79638-text-transform );border-radius:12px 12px 12px 12px;padding:16px 20px 16px 20px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-ed591b4 );color:#FFFFFF;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-button[type="submit"]{background-color:var( --e-global-color-ed591b4 );color:#FFFFFF;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-button[type="submit"] svg *{fill:#FFFFFF;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .e-form__buttons__wrapper__button-previous{color:#FFFFFF;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .e-form__buttons__wrapper__button-next:hover{background-color:#D31722;color:#ffffff;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-button[type="submit"]:hover{background-color:#D31722;color:#ffffff;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .e-form__buttons__wrapper__button-previous:hover{background-color:#ED202B;color:#ffffff;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-message{font-family:"Inter", Sans-serif;font-size:18px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-message.elementor-message-success{color:var( --e-global-color-accent );}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-message.elementor-message-danger{color:var( --e-global-color-079adf0 );}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-message.elementor-help-inline{color:var( --e-global-color-accent );}.elementor-1594 .elementor-element.elementor-element-1f1d241e .e-form__indicators__indicator, .elementor-1594 .elementor-element.elementor-element-1f1d241e .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1594 .elementor-element.elementor-element-1f1d241e{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-primary-color:#98A2B3;--e-form-steps-indicator-inactive-secondary-color:#FFFFFF;--e-form-steps-indicator-active-primary-color:#FFFFFF;--e-form-steps-indicator-active-secondary-color:#E30613;--e-form-steps-indicator-completed-primary-color:#FFFFFF;--e-form-steps-indicator-completed-secondary-color:#E30613;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}@media(max-width:1024px){.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group .elementor-field, .elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-subgroup label{font-size:4.8rem;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-button{font-size:var( --e-global-typography-2e79638-font-size );}}@media(min-width:768px){.elementor-1594 .elementor-element.elementor-element-59a47c3d{--width:900px;}}@media(max-width:767px){.elementor-1594 .elementor-element.elementor-element-59a47c3d{--padding-top:50px;--padding-bottom:50px;--padding-left:15px;--padding-right:15px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group > label{font-size:16px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-type-html{font-size:16px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-group .elementor-field, .elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-field-subgroup label{font-size:16px;}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-button{font-size:var( --e-global-typography-2e79638-font-size );}.elementor-1594 .elementor-element.elementor-element-1f1d241e .elementor-message{font-size:16px;}}/* Start custom CSS for container, class: .elementor-element-59a47c3d *//* ============================================================
   DACHBAU JP – Elementor Form | CLEAN FINAL
   WICHTIG in Elementor vorab:
   • Telefon-Feld → Erweitert → Mindestlänge: 6
   • Tage-Feld → Erweitert → CSS-Klassen: elementor-field-group-tage
   • Uhrzeit-Feld → Erweitert → CSS-Klassen: elementor-field-group-uhrzeit
   ============================================================ */

/* ----------------------------------------------------------
   STEP INDICATOR
   ---------------------------------------------------------- */
.e-form__indicators {
  display: flex !important;
  align-items: center !important;
  margin-bottom: 24px !important;
  padding: 0 !important;
}

.e-form__indicators__indicator {
  display: flex !important;
  align-items: center !important;
  flex-direction: column !important;
}

.e-form__indicators__indicator__number {
  width: 32px !important;
  height: 32px !important;
  min-width: 32px !important;
  border-radius: 50% !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  border: 1.5px solid rgba(15, 23, 42, 0.15) !important;
  background: #fff !important;
  color: rgba(15, 23, 42, 0.4) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  line-height: 1 !important;
  padding: 0 !important;
  margin: 0 !important;
  box-sizing: border-box !important;
}

.e-form__indicators__indicator--state-active .e-form__indicators__indicator__number {
  background: #007FA3 !important;
  border-color: #007FA3 !important;
  color: #fff !important;
  box-shadow: 0 2px 10px rgba(0, 127, 163, 0.28) !important;
}

.e-form__indicators__indicator--state-completed .e-form__indicators__indicator__number {
  background: rgba(0, 127, 163, 0.08) !important;
  border-color: rgba(0, 127, 163, 0.3) !important;
  color: #007FA3 !important;
}

.e-form__indicators__indicator__separator {
  height: 1.5px !important;
  background: rgba(15, 23, 42, 0.1) !important;
  margin: 0 6px !important;
  flex: 1 !important;
  align-self: center !important;
}

.e-form__indicators__indicator--state-completed + .e-form__indicators__indicator__separator {
  background: rgba(0, 127, 163, 0.3) !important;
}

/* ----------------------------------------------------------
   HINT BOX
   ---------------------------------------------------------- */
.step-hint {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  margin: 0 0 20px;
  border: 1px solid rgba(17, 24, 39, 0.07);
  background: rgba(17, 24, 39, 0.025);
  border-radius: 12px;
}

.step-hint__icon {
  width: 30px;
  height: 30px;
  flex: 0 0 30px;
  display: grid;
  place-items: center;
  border-radius: 8px;
  background: rgba(0, 127, 163, 0.07);
  color: #007FA3;
  font-size: 15px;
}

.step-hint__content {
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.step-hint__title {
  font-size: 13px;
  font-weight: 600;
  color: #111827;
  margin: 0 0 2px;
  line-height: 1.3;
}

.step-hint__text {
  font-size: 12.5px;
  color: rgba(17, 24, 39, 0.65);
  margin: 0;
  line-height: 1.4;
}

.step-hint--trust {
  border-color: rgba(34, 197, 94, 0.15);
  background: rgba(34, 197, 94, 0.04);
}

.step-hint--trust .step-hint__icon {
  background: rgba(34, 197, 94, 0.1);
  color: #16A34A;
}

/* ----------------------------------------------------------
   LABELS
   ---------------------------------------------------------- */
.elementor-form .elementor-field-label {
  font-size: 13.5px !important;
  font-weight: 600 !important;
  color: rgba(15, 23, 42, 0.75) !important;
  margin-bottom: 7px !important;
  transition: color 0.2s ease !important;
}

/* ----------------------------------------------------------
   BASE FIELDS
   ---------------------------------------------------------- */
.elementor-form .elementor-select-wrapper {
  position: relative !important;
}

.elementor-form select.elementor-field,
.elementor-form input[type="text"],
.elementor-form input[type="email"],
.elementor-form input[type="tel"],
.elementor-form input[type="number"],
.elementor-form textarea.elementor-field,
.elementor-form input#form-field-upload.elementor-upload-field {
  font-size: 16px !important;
  color: rgba(15, 23, 42, 0.85) !important;
  background: #f9f9f9 !important;
  border: 1.5px solid rgba(15, 23, 42, 0.14) !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  outline: none !important;
  width: 100% !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.elementor-form select.elementor-field,
.elementor-form input[type="text"],
.elementor-form input[type="email"],
.elementor-form input[type="tel"],
.elementor-form input[type="number"] {
  height: 46px !important;
  padding: 0 14px !important;
}

.elementor-form select.elementor-field {
  padding: 0 40px 0 14px !important;
  cursor: pointer !important;
}

.elementor-form textarea.elementor-field {
  min-height: 110px !important;
  padding: 12px 14px !important;
  line-height: 1.55 !important;
  resize: vertical !important;
}

.elementor-form input#form-field-upload.elementor-upload-field {
  padding: 10px 12px !important;
  cursor: pointer !important;
}

.elementor-form .elementor-select-wrapper .select-caret-down-wrapper {
  position: absolute !important;
  top: 0 !important;
  bottom: 0 !important;
  right: 14px !important;
  height: 100% !important;
  display: flex !important;
  align-items: center !important;
  transform: none !important;
  pointer-events: none !important;
  color: rgba(15, 23, 42, 0.4) !important;
}

/* ----------------------------------------------------------
   FOCUS – BLAU
   ---------------------------------------------------------- */
.elementor-form select.elementor-field:focus,
.elementor-form input[type="text"]:focus,
.elementor-form input[type="email"]:focus,
.elementor-form input[type="tel"]:focus,
.elementor-form input[type="number"]:focus,
.elementor-form textarea.elementor-field:focus,
.elementor-form input#form-field-upload.elementor-upload-field:focus {
  border: 1.5px solid rgba(0, 127, 163, 0.45) !important;
  border-bottom: 2.5px solid #007FA3 !important;
  box-shadow: 0 2px 10px rgba(0, 127, 163, 0.08) !important;
  background: #fff !important;
  outline: none !important;
}

/* ----------------------------------------------------------
   VALID STATES – GRÜN
   ---------------------------------------------------------- */
.elementor-form input[type="text"]:not(:placeholder-shown):not(:focus),
.elementor-form input[type="email"]:valid:not(:placeholder-shown):not(:focus),
.elementor-form input[type="tel"]:valid:not(:placeholder-shown):not(:focus),
.elementor-form input[type="number"]:valid:not(:placeholder-shown):not(:focus) {
  border: 1.5px solid rgba(34, 197, 94, 0.55) !important;
  background: rgba(34, 197, 94, 0.03) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2322c55e' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  padding-right: 40px !important;
  box-shadow: none !important;
}

.elementor-form textarea.elementor-field:not(:placeholder-shown):not(:focus),
.elementor-form .elementor-select-wrapper:has(select option[value=""]:not(:checked)) select {
  border: 1.5px solid rgba(34, 197, 94, 0.55) !important;
  background: rgba(34, 197, 94, 0.03) !important;
  box-shadow: none !important;
}

.elementor-form .elementor-field-group:has(input[type="text"]:not(:placeholder-shown):not(:focus)) .elementor-field-label,
.elementor-form .elementor-field-group:has(input[type="email"]:valid:not(:placeholder-shown):not(:focus)) .elementor-field-label,
.elementor-form .elementor-field-group:has(input[type="tel"]:valid:not(:placeholder-shown):not(:focus)) .elementor-field-label,
.elementor-form .elementor-field-group:has(input[type="number"]:valid:not(:placeholder-shown):not(:focus)) .elementor-field-label,
.elementor-form .elementor-field-group:has(textarea:not(:placeholder-shown):not(:focus)) .elementor-field-label,
.elementor-form .elementor-field-group:has(select option[value=""]:not(:checked)) .elementor-field-label {
  color: #16a34a !important;
}

/* ----------------------------------------------------------
   INVALID STATES – ROT NUR BEI FEHLERN NACH EINGABE
   ---------------------------------------------------------- */
.elementor-form input[type="email"]:invalid:not(:placeholder-shown):not(:focus),
.elementor-form input[type="tel"]:invalid:not(:placeholder-shown):not(:focus) {
  border-color: rgba(220, 38, 38, 0.6) !important;
  border-bottom-color: #dc2626 !important;
  box-shadow: 0 2px 10px rgba(220, 38, 38, 0.08) !important;
  background: rgba(220, 38, 38, 0.03) !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23dc2626' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cline x1='18' y1='6' x2='6' y2='18'/%3E%3Cline x1='6' y1='6' x2='18' y2='18'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  padding-right: 40px !important;
}

.elementor-form .elementor-field-group:has(input[type="email"]:invalid:not(:placeholder-shown):not(:focus)) .elementor-field-label,
.elementor-form .elementor-field-group:has(input[type="tel"]:invalid:not(:placeholder-shown):not(:focus)) .elementor-field-label {
  color: #dc2626 !important;
}

/* Elementor Required Fehler */
.elementor-form .elementor-field-group.elementor-field-required .elementor-field:invalid {
  box-shadow: none !important;
}

/* ----------------------------------------------------------
   FILE
   ---------------------------------------------------------- */
.elementor-form input[type="file"] {
  border: 1.5px solid rgba(15, 23, 42, 0.12) !important;
  background: #f9f9f9 !important;
  box-shadow: none !important;
}

.elementor-form .elementor-field-group:has(input[type="file"]) .elementor-field-label {
  color: rgba(15, 23, 42, 0.75) !important;
}

.elementor-form input#form-field-upload::file-.elementor-1594 .elementor-element.elementor-element-59a47c3d-button,
.elementor-form input#form-field-upload::-webkit-file-upload-button {
  background: #fff !important;
  color: rgba(15, 23, 42, 0.8) !important;
  border: 1px solid rgba(15, 23, 42, 0.15) !important;
  padding: 6px 10px !important;
  border-radius: 7px !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  margin-right: 10px !important;
  transition: all 0.18s ease !important;
}

.elementor-form input#form-field-upload::file-.elementor-1594 .elementor-element.elementor-element-59a47c3d-button:hover,
.elementor-form input#form-field-upload::-webkit-file-upload-button:hover {
  background: rgba(15, 23, 42, 0.04) !important;
  border-color: rgba(15, 23, 42, 0.25) !important;
}

/* ----------------------------------------------------------
   STEP 3 – CHECKBOX CARDS
   ---------------------------------------------------------- */
.elementor-form .elementor-field-group-tage .elementor-field-subgroup {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 7px !important;
}

.elementor-form .elementor-field-group-uhrzeit .elementor-field-subgroup {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 7px !important;
}

.elementor-form .elementor-field-group-tage .elementor-field-option,
.elementor-form .elementor-field-group-uhrzeit .elementor-field-option {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  width: 100% !important;
  padding: 10px 12px !important;
  border: 1.5px solid rgba(15, 23, 42, 0.12) !important;
  border-radius: 10px !important;
  background: #f5f5f5 !important;
  cursor: pointer !important;
  user-select: none !important;
  box-sizing: border-box !important;
  transition: border-color 0.15s ease, background 0.15s ease !important;
}

.elementor-form .elementor-field-group-tage .elementor-field-option:hover,
.elementor-form .elementor-field-group-uhrzeit .elementor-field-option:hover {
  border-color: rgba(0, 127, 163, 0.3) !important;
  background: #fff !important;
}

.elementor-form .elementor-field-group-tage .elementor-field-option:has(input:checked),
.elementor-form .elementor-field-group-uhrzeit .elementor-field-option:has(input:checked) {
  border-color: #007FA3 !important;
  background: rgba(0, 127, 163, 0.06) !important;
}

.elementor-form .elementor-field-group-tage .elementor-field-option input[type="checkbox"],
.elementor-form .elementor-field-group-uhrzeit .elementor-field-option input[type="checkbox"] {
  width: 15px !important;
  height: 15px !important;
  margin: 0 !important;
  flex-shrink: 0 !important;
  accent-color: #007FA3 !important;
}

.elementor-form .elementor-field-group-tage .elementor-field-option > label,
.elementor-form .elementor-field-group-uhrzeit .elementor-field-option > label {
  font-size: 13.5px !important;
  font-weight: 500 !important;
  color: rgba(15, 23, 42, 0.85) !important;
  margin: 0 !important;
  cursor: pointer !important;
  line-height: 1.2 !important;
}

/* ----------------------------------------------------------
   DATENSCHUTZ
   ---------------------------------------------------------- */
.elementor-form .elementor-field-group-datenschutz {
  margin-top: 8px !important;
}

.elementor-form .elementor-field-group-datenschutz .elementor-field-subgroup {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
}

.elementor-form .elementor-field-group-datenschutz .elementor-field-option {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  width: 100% !important;
}

.elementor-form .elementor-field-group-datenschutz #form-field-datenschutz {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  margin: 2px 0 0 0 !important;
  accent-color: #007FA3 !important;
  flex-shrink: 0 !important;
}

.elementor-form .elementor-field-group-datenschutz label[for="form-field-datenschutz"] {
  font-size: 14px !important;
  line-height: 1.6 !important;
  color: rgba(15, 23, 42, 0.72) !important;
  margin: 0 !important;
  display: inline !important;
}

.elementor-form .elementor-field-group-datenschutz label[for="form-field-datenschutz"] a {
  color: rgba(15, 23, 42, 0.78) !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
  text-decoration-thickness: 1px !important;
}

/* ----------------------------------------------------------
   BUTTONS
   ---------------------------------------------------------- */
.elementor-form .e-form__buttons__wrapper {
  display: flex !important;
  justify-content: stretch !important;
  width: 100% !important;
  margin-top: 8px !important;
}

.elementor-form .e-form__buttons__wrapper__button-previous {
  display: none !important;
}

.elementor-form .e-form__buttons__wrapper__button-next,
.elementor-form button[type="submit"] {
  display: flex !important;
  width: 100% !important;
  min-width: 0 !important;
  flex: 0 0 auto !important;
  height: 50px !important;
  white-space: nowrap !important;
  font-size: 14.5px !important;
  font-weight: 700 !important;
  letter-spacing: 0.2px !important;
  background: #007FA3 !important;
  color: #fff !important;
  border: none !important;
  border-radius: 10px !important;
  box-shadow: 0 2px 14px rgba(0, 127, 163, 0.24) !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  cursor: pointer !important;
  padding: 0 24px !important;
  transition: background 0.18s ease, box-shadow 0.18s ease !important;
}

.elementor-form .e-form__buttons__wrapper__button-next:hover,
.elementor-form button[type="submit"]:hover {
  background: #006b8b !important;
  box-shadow: 0 4px 20px rgba(0, 127, 163, 0.32) !important;
}

/* ----------------------------------------------------------
   RESPONSIVE
   ---------------------------------------------------------- */
@media (max-width: 767px) {
  .e-form__indicators__indicator__number {
    width: 28px !important;
    height: 28px !important;
    min-width: 28px !important;
    font-size: 12px !important;
  }

  .step-hint {
    gap: 10px;
    padding: 10px 12px;
    margin-bottom: 14px;
  }

  .step-hint__icon {
    width: 24px;
    height: 24px;
    flex: 0 0 24px;
    font-size: 13px;
  }

  .step-hint__title {
    font-size: 12px;
  }

  .step-hint__text {
    font-size: 11.5px;
  }

  .elementor-form .elementor-field-group-tage .elementor-field-subgroup {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .elementor-form .elementor-field-group-datenschutz {
    margin-top: 10px !important;
  }

  .elementor-form .elementor-field-group-datenschutz .elementor-field-subgroup,
  .elementor-form .elementor-field-group-datenschutz .elementor-field-option {
    gap: 9px !important;
  }

  .elementor-form .elementor-field-group-datenschutz #form-field-datenschutz {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    margin-top: 2px !important;
  }

  .elementor-form .elementor-field-group-datenschutz label[for="form-field-datenschutz"] {
    font-size: 13.5px !important;
    line-height: 1.55 !important;
  }

  .elementor-form .e-form__buttons__wrapper {
    display: flex !important;
    width: 100% !important;
  }

  .elementor-form .e-form__buttons__wrapper__button-next,
  .elementor-form button[type="submit"] {
    width: 100% !important;
    min-width: 0 !important;
    height: 46px !important;
    font-size: 13.5px !important;
    padding: 0 18px !important;
    justify-content: center !important;
  }

  .elementor-form button[type="submit"] i,
  .elementor-form button[type="submit"] svg,
  .elementor-form .e-form__buttons__wrapper__button-next i,
  .elementor-form .e-form__buttons__wrapper__button-next svg {
    display: none !important;
  }
}
.elementor-form .e-form__step {
  min-height: auto !important;
}

.elementor-form .elementor-field-group {
  margin-bottom: 25px !important;
}

.elementor-form .elementor-field-group-datenschutz {
  margin-bottom: 0px !important;
}

.elementor-form .e-form__buttons {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.elementor-form .e-form__buttons__wrapper {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.elementor-form .elementor-field-type-step {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}/* End custom CSS */