.elementor-18 .elementor-element.elementor-element-359c435:not(.elementor-motion-effects-element-type-background), .elementor-18 .elementor-element.elementor-element-359c435 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(180deg, var( --e-global-color-66df147 ) 50%, var( --e-global-color-primary ) 100%);}.elementor-18 .elementor-element.elementor-element-359c435{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin-top:-120px;margin-bottom:0px;padding:40px 0px 80px 0px;}.elementor-18 .elementor-element.elementor-element-359c435 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-18 .elementor-element.elementor-element-95e2b8b{margin-top:0100px;margin-bottom:0px;}.elementor-18 .elementor-element.elementor-element-d49b197{text-align:center;}.elementor-18 .elementor-element.elementor-element-c847e52{text-align:center;}.elementor-18 .elementor-element.elementor-element-d043497{border-style:solid;border-width:1px 0px 0px 0px;border-color:var( --e-global-color-accent );margin-top:0120px;margin-bottom:0px;padding:100px 0px 0px 0px;}.elementor-bc-flex-widget .elementor-18 .elementor-element.elementor-element-a020602.elementor-column .elementor-widget-wrap{align-items:center;}.elementor-18 .elementor-element.elementor-element-a020602.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:center;align-items:center;}.elementor-18 .elementor-element.elementor-element-a020602 > .elementor-element-populated{padding:0% 4% 0% 4%;}.elementor-18 .elementor-element.elementor-element-b4ddaf1 .elementor-icon-list-icon i{color:var( --e-global-color-f3bdc57 );transition:color 0.3s;}.elementor-18 .elementor-element.elementor-element-b4ddaf1 .elementor-icon-list-icon svg{fill:var( --e-global-color-f3bdc57 );transition:fill 0.3s;}.elementor-18 .elementor-element.elementor-element-b4ddaf1{--e-icon-list-icon-size:14px;--icon-vertical-offset:0px;}.elementor-18 .elementor-element.elementor-element-b4ddaf1 .elementor-icon-list-text{color:var( --e-global-color-9bc357d );transition:color 0.3s;}.elementor-18 .elementor-element.elementor-element-71295f3{--spacer-size:80px;}@media(max-width:767px){.elementor-18 .elementor-element.elementor-element-7d4daa4{text-align:center;}}@media(min-width:768px){.elementor-18 .elementor-element.elementor-element-e039e4d{width:14.036%;}.elementor-18 .elementor-element.elementor-element-d5adf65{width:35.964%;}.elementor-18 .elementor-element.elementor-element-a020602{width:38.368%;}.elementor-18 .elementor-element.elementor-element-321122e{width:11.632%;}}/* Start custom CSS for shortcode, class: .elementor-element-e7f183a *//* 1. LAYOUT & SPALTEN */
.sandra-form-wrapper {
    max-width: 100%;
    font-family: inherit;
}

.s-field-grid {
    display: flex;
    gap: 20px;
    margin-bottom: 12px !important; /* Kompakterer Zeilenabstand */
}

.s-field-col { 
    flex: 1; 
}

.s-field-full { 
    margin-bottom: 12px !important; 
}

/* 2. BESCHRIFTUNGEN (LABELS) */
.sandra-form-wrapper label {
    display: block;
    font-weight: 700;
    margin-bottom: 2px !important; /* Zieht Text näher ans Eingabefeld */
    font-size: 0.95rem;
    color: #333;
}

.s-req {
    color: #ff4d4d; /* Das rote Sternchen für Pflichtfelder */
    margin-left: 3px;
}

/* 3. EINGABEFELDER STYLING */
.sandra-form-wrapper input[type="text"],
.sandra-form-wrapper input[type="email"],
.sandra-form-wrapper input[type="tel"],
.sandra-form-wrapper textarea {
    width: 100%;
    padding: 10px 15px;
    border: 1px solid #ccc; /* Dezenter Rahmen */
    border-radius: 4px;
    background-color: #fff;
    box-sizing: border-box;
    transition: border-color 0.3s;
}

.sandra-form-wrapper input:focus {
    border-color: #AB8934 !important; /* Goldener Rahmen bei Klick */
    outline: none;
}

/* 4. FEHLERMELDUNGEN (ROTE X ENTFERNEN) */
span.wpcf7-not-valid-tip {
    display: none !important; /* Versteckt die roten Boxen komplett */
}

.wpcf7-not-valid {
    border: 1px solid #ff4d4d !important; /* Nur der Rahmen wird rot bei Fehlern */
    background-color: #fff5f5 !important;
}

/* 5. AUSWAHL-LISTEN (CHECKBOXES) */
.s-section-title {
    font-weight: 700;
    margin: 25px 0 10px 0;
    color: #000;
}

.s-option-list span.wpcf7-list-item {
    display: block; /* Optionen untereinander statt nebeneinander */
    margin: 0 0 8px 0;
}

/* 6. SONSTIGES-BEREICH (EINRÜCKUNG) - UPDATE */
.s-indent { 
    margin-top: 5px; 
    margin-left: 25px; 
    padding: 15px;
    /* HIER GEÄNDERT: Hintergrund entfernt, damit er die gleiche Farbe wie der Rest hat */
    background: transparent !important; 
    border-radius: 4px;
    /* Optional: Wenn du gar keinen Rahmen um das Extrafeld willst, entferne auch padding und border-radius */
}

/* 7. GOLDENER SENDEN-BUTTON */
.sandra-form-wrapper .wpcf7-submit {
    background-color: #2C4A52 !important;
    color: #fff !important;
    padding: 15px 60px !important;
    border: none !important;
    border-radius: 0;
    font-weight: 700;
    text-transform: uppercase;
    cursor: pointer;
    transition: opacity 0.3s;
    margin-top: 20px;
}

.sandra-form-wrapper .wpcf7-submit:hover { 
    opacity: 0.9; 
}

/* 8. MOBILE OPTIMIERUNG */
@media (max-width: 600px) {
    .s-field-grid { 
        flex-direction: column; 
        gap: 12px; 
    }
}

/* 1. Etwas mehr Platz für die Labels (nicht mehr ganz so nah) */
.sandra-form-wrapper label {
    margin-bottom: 5px !important; /* Von 2px auf 5px erhöht */
    display: block !important;
}

/* 2. Checkbox-Fix: Kästchen und Text wieder auf eine Linie bringen */
.s-option-list .wpcf7-list-item {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important; /* Abstand zwischen Kästchen und Text */
    margin-bottom: 10px !important;
}

/* Verhindert, dass das Kästchen durch das globale Styling riesig wird */
.s-option-list input[type="checkbox"] {
    width: auto !important;
    margin-top: 4px !important;
    flex-shrink: 0;
}

/* 3. Gezieltes Entfernen von Umbrüchen, OHNE die Listen zu stören */
.s-field-grid br, .s-field-full br {
    display: none !important;
}

/* 4. Sicherstellen, dass die Überschriften der Sektionen genug Platz haben */
.s-section-title {
    margin-top: 30px !important;
    margin-bottom: 15px !important;
    display: block;
    font-weight: 700;
}
/* Entfernt den vertikalen roten Strich bei nicht ausgefüllten Feldern */
.wpcf7-form-control-wrap.has-failed, 
.wpcf7-not-valid {
    border-left: none !important;
    border: none !important;
    box-shadow: none !important;
}

/* Verhindert, dass das Theme einen roten Balken vor die Checkboxen setzt */
span.wpcf7-form-control-wrap {
    border: none !important;
}

/* Erzwingt die korrekte Schriftart für alle Formular-Elemente */
.sandra-form-wrapper, 
.sandra-form-wrapper input, 
.sandra-form-wrapper textarea, 
.sandra-form-wrapper select, 
.sandra-form-wrapper button,
.sandra-form-wrapper label {
    font-family: inherit !important;
}

/* Macht alle Auswahlmöglichkeiten (Checkboxen/Radio-Texte) schlank */
.sandra-form-wrapper .s-option-list label,
.sandra-form-wrapper .s-option-list .wpcf7-list-item-label {
    font-weight: 400 !important; /* Setzt die Schrift auf "normal" */
}

/* Die großen Überschriften bleiben zur Orientierung fett */
.sandra-form-wrapper .s-section-title {
    font-weight: 700;
}/* End custom CSS */