.elementor-widget-image .widget-image-caption{color:var( --e-global-color-text );font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-text-editor{font-weight:var( --e-global-typography-text-font-weight );color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-21161 .elementor-element.elementor-element-d3c4b63 > .elementor-widget-container{margin:0px 0px -15px 0px;}.elementor-21161 .elementor-element.elementor-element-d3c4b63{font-size:22px;font-weight:400;}.elementor-21161 .elementor-element.elementor-element-be59248 > .elementor-widget-container{margin:0px 0px -15px 0px;}.elementor-21161 .elementor-element.elementor-element-be59248{font-size:22px;font-weight:400;}.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-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );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-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .elementor-button{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-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{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-weight:var( --e-global-typography-accent-font-weight );}.elementor-21161 .elementor-element.elementor-element-5af9e03 > .elementor-widget-container{padding:1rem 1rem 1rem 1rem;border-style:solid;border-width:1px 1px 1px 1px;border-color:#888888;border-radius:1rem 1rem 1rem 1rem;box-shadow:5px 5px 10px 0px rgba(0, 0, 0, 0.25);}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-type-html{padding-bottom:0px;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-button[type="submit"]{color:#ffffff;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-message{font-size:1rem;font-weight:400;line-height:1.1rem;letter-spacing:0px;word-spacing:0px;}.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-message.elementor-message-success{color:var( --e-global-color-primary );}.elementor-21161 .elementor-element.elementor-element-5af9e03 .e-form__indicators__indicator, .elementor-21161 .elementor-element.elementor-element-5af9e03 .e-form__indicators__indicator__label{font-size:18px;font-weight:500;}.elementor-21161 .elementor-element.elementor-element-5af9e03{--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;}.elementor-21161 .elementor-element.elementor-element-e994965{font-family:"Courier Prime", Sans-serif;font-size:12px;font-weight:500;}.elementor-21161 .elementor-element.elementor-element-6b0e1c7 > .elementor-widget-container{margin:0px 0px -15px 0px;}.elementor-21161 .elementor-element.elementor-element-6b0e1c7{font-size:22px;font-weight:400;}.elementor-21161 .elementor-element.elementor-element-0ae51ea > .elementor-widget-container{margin:0px 0px -10px 0px;}.elementor-21161 .elementor-element.elementor-element-0ae51ea{font-size:18px;font-weight:600;}.elementor-21161 .elementor-element.elementor-element-dddf5ea{margin-top:-25px;margin-bottom:0px;}.elementor-21161 .elementor-element.elementor-element-f14606d{width:var( --container-widget-width, 101.401% );max-width:101.401%;--container-widget-width:101.401%;--container-widget-flex-grow:0;}.elementor-21161 .elementor-element.elementor-element-f14606d > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-21161 .elementor-element.elementor-element-00e8e1d > .elementor-widget-container{margin:0px 0px -10px 0px;}.elementor-21161 .elementor-element.elementor-element-00e8e1d{font-size:18px;font-weight:600;}.elementor-21161 .elementor-element.elementor-element-aa5313f{margin-top:-25px;margin-bottom:0px;}.elementor-21161 .elementor-element.elementor-element-ae4183b > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-21161 .elementor-element.elementor-element-56364f9{--spacer-size:50px;}/* Start custom CSS for form, class: .elementor-element-5af9e03 *//* === FORMULAR CONTAINER === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-form {
    max-width: 100%;
    background: #ffffff;
    border-radius: 8px;
    padding: 0;
}

/* === SEKTIONS-ÜBERSCHRIFTEN === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-type-html h5 {
    font-size: 20px;
    font-weight: 700;
    color: #1a1a1a;
    margin: 40px 0 24px 0;
    padding: 0 0 12px 0;
    border-bottom: 3px solid #e74c3c;
    position: relative;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-type-html h5:first-child {
    margin-top: 0;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-type-html h5::before {
    content: "";
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 60px;
    height: 3px;
    background: #c0392b;
}

/* === LABELS === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-label {
    font-size: 14px;
    font-weight: 600;
    color: #2c3e50;
    margin-bottom: 8px;
    display: block;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-mark-required .elementor-field-label::after {
    content: " *";
    color: #e74c3c;
    font-weight: 700;
}

/* === INPUT FELDER === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="text"],
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="email"],
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="url"],
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="number"],
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="date"],
.elementor-21161 .elementor-element.elementor-element-5af9e03 textarea {
    width: 100%;
    padding: 12px 16px;
    border: 2px solid #e8e8e8;
    border-radius: 6px;
    font-size: 15px;
    color: #2c3e50;
    background: #fafafa;
    transition: all 0.3s ease;
    font-family: inherit;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="text"]:hover,
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="email"]:hover,
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="url"]:hover,
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="number"]:hover,
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="date"]:hover,
.elementor-21161 .elementor-element.elementor-element-5af9e03 textarea:hover {
    border-color: #bdc3c7;
    background: #ffffff;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="text"]:focus,
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="email"]:focus,
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="url"]:focus,
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="number"]:focus,
.elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="date"]:focus,
.elementor-21161 .elementor-element.elementor-element-5af9e03 textarea:focus {
    border-color: #e74c3c;
    background: #ffffff;
    outline: none;
    box-shadow: 0 0 0 4px rgba(231, 76, 60, 0.1);
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 input::placeholder {
    color: #95a5a6;
    font-style: italic;
}

/* === RADIO BUTTONS === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-subgroup {
    display: flex;
    gap: 24px;
    margin-top: 8px;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-option {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    padding: 8px 16px;
    border: 2px solid #e8e8e8;
    border-radius: 6px;
    background: #fafafa;
    transition: all 0.3s ease;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-option:hover {
    border-color: #e74c3c;
    background: #fff5f5;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-option input[type="radio"] {
    width: 20px;
    height: 20px;
    margin: 0;
    cursor: pointer;
    accent-color: #e74c3c;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-option label {
    margin: 0;
    cursor: pointer;
    font-weight: 500;
    color: #2c3e50;
    font-size: 14px;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-option input[type="radio"]:checked + label {
    color: #e74c3c;
}

/* === CHECKBOX (AGBs) === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-type-acceptance {
    margin: 32px 0 24px 0;
    padding: 20px;
    background: #f8f9fa;
    border-radius: 8px;
    border-left: 4px solid #e74c3c;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-acceptance-field {
    width: 20px;
    height: 20px;
    margin-right: 12px;
    cursor: pointer;
    accent-color: #e74c3c;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-option label {
    font-size: 14px;
    line-height: 1.6;
}

/* === FIELD GROUPS === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-group {
    margin-bottom: 20px;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-col-50 {
    margin-bottom: 20px;
}

/* === SUBMIT BUTTON === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-button {
    width: 100%;
    padding: 16px 32px;
    background: linear-gradient(135deg, #e74c3c 0%, #c0392b 100%);
    color: #ffffff;
    border: none;
    border-radius: 8px;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: 0 4px 15px rgba(231, 76, 60, 0.3);
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-button:hover {
    background: linear-gradient(135deg, #c0392b 0%, #a93226 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(231, 76, 60, 0.4);
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-button:active {
    transform: translateY(0);
    box-shadow: 0 2px 10px rgba(231, 76, 60, 0.3);
}

/* === RECAPTCHA === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-type-recaptcha {
    margin: 24px 0;
    display: flex;
    justify-content: center;
}

/* === ZUSÄTZLICHE INFO-TEXTE === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-type-html p {
    font-size: 14px;
    color: #7f8c8d;
    line-height: 1.6;
    margin: 8px 0;
}

/* === ANIMATIONEN FÜR AUSGEBLENDETE FELDER === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-group {
    transition: opacity 0.3s ease, max-height 0.3s ease;
}

/* === RESPONSIVE DESIGN === */
@media (max-width: 768px) {
    .elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-subgroup {
        flex-direction: column;
        gap: 12px;
    }
    
    .elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-type-html h5 {
        font-size: 18px;
    }
    
    .elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="text"],
    .elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="email"],
    .elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="url"],
    .elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="number"],
    .elementor-21161 .elementor-element.elementor-element-5af9e03 input[type="date"] {
        font-size: 16px; /* Verhindert Zoom auf iOS */
    }
}

/* === FOKUS-INDIKATOR FÜR BARRIEREFREIHEIT === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 *:focus-visible {
    outline: 2px solid #e74c3c;
    outline-offset: 2px;
}

/* === DISCLAIMER TEXT AM ENDE === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-widget-text-editor strong {
    color: #2c3e50;
    display: block;
    margin-top: 16px;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-widget-text-editor ul {
    list-style: none;
    padding-left: 0;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-widget-text-editor ul li::before {
    content: "✓ ";
    color: #27ae60;
    font-weight: bold;
    margin-right: 8px;
}

/* === GLOBALE FORMULAR-FEHLERMELDUNG === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-message.elementor-message-danger {
    background: #fff5f5;
    border-left: 5px solid #e74c3c;
    color: #c0392b;
    padding: 16px 20px;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 600;
    margin: 24px 0;
    display: flex;
    align-items: center;
    gap: 12px;
    box-shadow: 0 4px 12px rgba(231, 76, 60, 0.15);
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-message.elementor-message-danger::before {
    content: "⚠️";
    font-size: 20px;
    line-height: 1;
}

/* === FELD-BEZOGENE FEHLERMELDUNG === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-error {
    color: #c0392b;
    font-size: 13px;
    font-weight: 600;
    margin-top: 6px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-error::before {
    content: "❗";
    font-size: 14px;
}

/* === INPUT MIT FEHLER === */
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-group.elementor-field-error input,
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-group.elementor-field-error textarea,
.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-group.elementor-field-error select {
    border-color: #e74c3c;
    background: #fff5f5;
    box-shadow: 0 0 0 3px rgba(231, 76, 60, 0.12);
}

/* === FEHLER-SHAKE (OPTIONAL) === */
@keyframes formShake {
    0% { transform: translateX(0); }
    25% { transform: translateX(-4px); }
    50% { transform: translateX(4px); }
    75% { transform: translateX(-2px); }
    100% { transform: translateX(0); }
}

.elementor-21161 .elementor-element.elementor-element-5af9e03 .elementor-field-error {
    animation: formShake 0.3s ease-in-out;
}/* End custom CSS */