.elementor-2101 .elementor-element.elementor-element-e3a8ab9{--display:flex;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-2101 .elementor-element.elementor-element-dac109b{text-align:center;}.elementor-2101 .elementor-element.elementor-element-dac109b .elementor-heading-title{font-family:"Helvetica", Sans-serif;font-weight:600;text-transform:uppercase;}.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-2101 .elementor-element.elementor-element-d48602b .elementor-field-group{padding-right:calc( 15px/2 );padding-left:calc( 15px/2 );margin-bottom:10px;}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-form-fields-wrapper{margin-left:calc( -15px/2 );margin-right:calc( -15px/2 );margin-bottom:-10px;}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-field-group.recaptcha_v3-bottomleft, .elementor-2101 .elementor-element.elementor-element-d48602b .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-2101 .elementor-element.elementor-element-d48602b .elementor-labels-inline .elementor-field-group > label{padding-left:15px;}body:not(.rtl) .elementor-2101 .elementor-element.elementor-element-d48602b .elementor-labels-inline .elementor-field-group > label{padding-right:15px;}body .elementor-2101 .elementor-element.elementor-element-d48602b .elementor-labels-above .elementor-field-group > label{padding-bottom:15px;}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-field-type-html{padding-bottom:0px;color:var( --e-global-color-secondary );}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-field-group .elementor-field{color:var( --e-global-color-secondary );}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-button{font-family:"Roboto", Sans-serif;font-weight:600;text-transform:uppercase;}.elementor-2101 .elementor-element.elementor-element-d48602b .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-button[type="submit"]{color:#ffffff;}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-2101 .elementor-element.elementor-element-d48602b .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-2101 .elementor-element.elementor-element-d48602b .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-2101 .elementor-element.elementor-element-d48602b .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-2101 .elementor-element.elementor-element-d48602b .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-2101 .elementor-element.elementor-element-d48602b{--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-progress-height:20px;--e-form-steps-indicator-progress-border-radius:20px;--e-form-steps-indicator-progress-meter-color:var( --e-global-color-secondary );}/* Start custom CSS for form, class: .elementor-element-d48602b *//* =================================================================== */
/* FINALE LÖSUNG (Version 4)                                         */
/* =================================================================== */

/* TEIL 1: LAYOUT-GRUNDLAGEN (DAS NEUE FUNDAMENT) */
.formx .elementor-field-option:has([id^="form-field-check"]) {
    position: relative !important;
    width: 250px;
    height: 350px;
    margin: 15px;
    flex-shrink: 0;
    overflow: hidden; /* Wichtig für den Slider, damit Bilder nicht überlaufen */
}

/* Die Inputs werden wie bisher unsichtbar gemacht. */
.formx [id^="form-field-check"] {
    position: absolute;
    opacity: 0;
    width: 100%;
    height: 100%;
    cursor: pointer;
    z-index: 10;
}

/* TEIL 2: STYLING DER LABELS (DEINE BILDER) */
.formx [id^="form-field-check"] + label {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border: 5px solid #fff;
    border-radius: 0px;
    transition: all 0.2s ease-in;
    /* Hintergrundbilder werden jetzt per JS gesetzt, diese Zeilen können weg:
       background-size: cover;
       background-repeat: no-repeat;
       background-position: center;
    */
    /* Original-Text im Label verstecken oder anpassen, da wir ihn ersetzen */
    font-size: 0 !important; /* Text komplett unsichtbar machen */
    color: transparent !important; /* Oder transparent */
    padding: 0;
    display: flex; /* Flexbox für Slider-Container */
    align-items: center;
    justify-content: center;
}

/* Neue CSS-Regeln für den Slider-Container und die Bilder */
.image-slider-container {
    position: absolute; /* Positioniert den Slider im Label */
    width: 100%;
    height: 100%;
    overflow: hidden; /* Wichtig, um nur das aktuelle Bild zu zeigen */
}

.slider-image {
    position: absolute;
    width: 100%;
    height: 100%;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0; /* Standardmäßig unsichtbar */
    transition: opacity 0.5s ease-in-out; /* Weicher Übergang zwischen Bildern */
}

.slider-image.active {
    opacity: 1; /* Aktives Bild sichtbar machen */
}

/* Optional: Overlay für den originalen Label-Text, falls du ihn behalten möchtest */
.label-text-overlay {
    position: absolute;
    bottom: 10px; /* Position am unteren Rand */
    left: 0;
    width: 100%;
    text-align: center;
    color: #ffd700; /* Deine Textfarbe */
    font-size: 18px;
    z-index: 15; /* Über den Bildern */
    /* Füge hier weitere Stile für den Text hinzu (Hintergrund, Padding etc.) */
}

/* TEIL 3: BILDER ZUWEISEN (WIRD NUN PER JAVASCRIPT ERFOLGEN)
   Alle deine .formx #form-field-checkX-Y + label { background-image: url(...); } Regeln
   sind nicht mehr nötig, da die Bilder durch JavaScript dynamisch zugewiesen werden.
   Du definierst die Bild-URLs im JavaScript-Objekt `imageSlidersData`.
*/


/* TEIL 4: "CHECKED" UND "HOVER" STILE (Bleiben weitestgehend gleich) */
.formx [id^="form-field-check"]:checked + label {
    border-color: #ffd700;
    /*box-shadow: inset 0 0 0 1000px rgba(125, 37, 43, 0.7);*/
}

.formx [id^="form-field-check"] + label:hover {
    border-color: #ffd700;
    box-shadow: inset 0 0 0 1000px rgba(0, 0, 255, 0.2);
}/* End custom CSS */