.elementor-1122 .elementor-element.elementor-element-005d833{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .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-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-1122 .elementor-element.elementor-element-91b491c .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-1122 .elementor-element.elementor-element-91b491c .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-1122 .elementor-element.elementor-element-91b491c .elementor-field-group.recaptcha_v3-bottomleft, .elementor-1122 .elementor-element.elementor-element-91b491c .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-1122 .elementor-element.elementor-element-91b491c .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-1122 .elementor-element.elementor-element-91b491c .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-1122 .elementor-element.elementor-element-91b491c .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-1122 .elementor-element.elementor-element-91b491c .elementor-field-type-html{padding-bottom:0px;}.elementor-1122 .elementor-element.elementor-element-91b491c .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-1122 .elementor-element.elementor-element-91b491c .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-1122 .elementor-element.elementor-element-91b491c .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-1122 .elementor-element.elementor-element-91b491c .elementor-button[type="submit"]{color:#ffffff;}.elementor-1122 .elementor-element.elementor-element-91b491c .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-1122 .elementor-element.elementor-element-91b491c .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-1122 .elementor-element.elementor-element-91b491c .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-1122 .elementor-element.elementor-element-91b491c .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-1122 .elementor-element.elementor-element-91b491c .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-1122 .elementor-element.elementor-element-91b491c .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-1122 .elementor-element.elementor-element-91b491c{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}/* Start custom CSS for form, class: .elementor-element-91b491c *//**
 * Elementor Pro Form 1122 – Geschäftliche E-Mail Prüfung
 * 
 * EINBINDEN: WordPress → Elementor → Custom Code → Neu
 * Platzierung: Body - End
 * Seite: Nur auf der Seite mit dem Rechner aktivieren
 */

(function(){
  var BLOCKED = [
    'gmail.com','googlemail.com','yahoo.com','yahoo.de','yahoo.co.uk','yahoo.fr',
    'hotmail.com','hotmail.de','hotmail.co.uk','outlook.com','outlook.de',
    'live.com','live.de','msn.com','gmx.de','gmx.net','gmx.at','gmx.ch','gmx.com',
    'web.de','freenet.de','t-online.de','icloud.com','me.com','mac.com',
    'protonmail.com','proton.me','tutanota.com','aol.com','mail.com','email.com',
    'zoho.com','yandex.com','yandex.ru','mailbox.org','posteo.de','arcor.de','1und1.de'
  ];

  function isFreeMail(email) {
    var parts = email.toLowerCase().split('@');
    return parts.length !== 2 || BLOCKED.indexOf(parts[1]) !== -1;
  }

  // Auf Elementor Form Submit Event hören
  document.addEventListener('submit', function(e) {
    var form = e.target;
    // Nur Elementor Formulare
    if (!form.classList.contains('elementor-form')) return;

    var emailField = form.querySelector('input[type="email"]');
    if (!emailField) return;

    var email = emailField.value.trim();
    if (isFreeMail(email)) {
      e.preventDefault();
      e.stopImmediatePropagation();

      // Fehlermeldung anzeigen
      var errEl = emailField.closest('.elementor-field-group');
      if (errEl) {
        var existing = errEl.querySelector('.hws-email-err');
        if (!existing) {
          var msg = document.createElement('div');
          msg.className = 'hws-email-err elementor-message elementor-message-danger';
          msg.style.cssText = 'color:#E85555;font-size:12px;margin-top:4px;font-weight:600;';
          msg.textContent = 'Bitte geschäftliche E-Mail verwenden (keine Gmail, GMX, Yahoo etc.)';
          errEl.appendChild(msg);
        }
        emailField.style.borderColor = '#E85555';
        emailField.focus();
      }
      return false;
    }

    // Fehlermeldung entfernen wenn OK
    var errEl2 = emailField.closest('.elementor-field-group');
    if (errEl2) {
      var old = errEl2.querySelector('.hws-email-err');
      if (old) old.remove();
      emailField.style.borderColor = '';
    }
  }, true);

  // Live-Validierung beim Tippen
  document.addEventListener('input', function(e) {
    var el = e.target;
    if (el.type !== 'email') return;
    var form = el.closest('.elementor-form');
    if (!form) return;

    var errEl = el.closest('.elementor-field-group');
    if (!errEl) return;

    var email = el.value.trim();
    if (email.length > 5 && isFreeMail(email)) {
      el.style.borderColor = '#E85555';
      if (!errEl.querySelector('.hws-email-err')) {
        var msg = document.createElement('div');
        msg.className = 'hws-email-err';
        msg.style.cssText = 'color:#E85555;font-size:12px;margin-top:4px;font-weight:600;';
        msg.textContent = 'Bitte geschäftliche E-Mail verwenden';
        errEl.appendChild(msg);
      }
    } else {
      el.style.borderColor = '';
      var old = errEl.querySelector('.hws-email-err');
      if (old) old.remove();
    }
  });

})();/* End custom CSS */