.elementor-13017 .elementor-element.elementor-element-1a7ba1cc .elementor-repeater-item-54cf4c7.jet-parallax-section__layout .jet-parallax-section__image{background-size:auto;}.elementor-widget-divider .elementor-divider__text{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-13017 .elementor-element.elementor-element-3fd98ce9{--divider-border-style:solid;--divider-color:#3696CD;--divider-border-width:2px;}.elementor-13017 .elementor-element.elementor-element-3fd98ce9 > .elementor-widget-container{margin:-25px 0px 0px 0px;}.elementor-13017 .elementor-element.elementor-element-3fd98ce9 .elementor-divider-separator{width:100%;}.elementor-13017 .elementor-element.elementor-element-3fd98ce9 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.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 );}.elementor-13017 .elementor-element.elementor-element-3ee6274d .elementor-heading-title{font-family:"Arial", Sans-serif;font-size:24px;font-weight:700;color:var( --e-global-color-50dc38b0 );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-13017 .elementor-element.elementor-element-5e4634c3{font-family:"Montserrat", Sans-serif;font-size:17px;font-weight:500;}.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{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, .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 .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__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-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:20px;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-20px;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-group > label{font-family:"Montserrat", Sans-serif;font-weight:400;line-height:1.5em;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-type-html{padding-bottom:0px;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );color:#ffffff;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );color:#ffffff;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-13017 .elementor-element.elementor-element-3ff5790 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-13017 .elementor-element.elementor-element-3ff5790{--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-13017 .elementor-element.elementor-element-1a7ba1cc:not(.elementor-motion-effects-element-type-background), .elementor-13017 .elementor-element.elementor-element-1a7ba1cc > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-13017 .elementor-element.elementor-element-1a7ba1cc > .elementor-background-overlay{background-color:#ffffff;opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-13017 .elementor-element.elementor-element-1a7ba1cc{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 0px 0px 0px;}.elementor-13017 .elementor-element.elementor-element-698fa92 .elementor-repeater-item-54cf4c7.jet-parallax-section__layout .jet-parallax-section__image{background-size:auto;}.elementor-13017 .elementor-element.elementor-element-7a04028{--divider-border-style:solid;--divider-color:#3696CD;--divider-border-width:2px;}.elementor-13017 .elementor-element.elementor-element-7a04028 > .elementor-widget-container{margin:-25px 0px 0px 0px;}.elementor-13017 .elementor-element.elementor-element-7a04028 .elementor-divider-separator{width:100%;}.elementor-13017 .elementor-element.elementor-element-7a04028 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-13017 .elementor-element.elementor-element-1b8b16b .elementor-heading-title{font-family:"Arial", Sans-serif;font-size:24px;font-weight:700;color:var( --e-global-color-50dc38b0 );}.elementor-13017 .elementor-element.elementor-element-698fa92:not(.elementor-motion-effects-element-type-background), .elementor-13017 .elementor-element.elementor-element-698fa92 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-13017 .elementor-element.elementor-element-698fa92 > .elementor-background-overlay{background-color:#ffffff;opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-13017 .elementor-element.elementor-element-698fa92{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:15px 0px 20px 0px;}.elementor-13017 .elementor-element.elementor-element-1f1ff98f{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;}.elementor-13017 .elementor-element.elementor-element-1f1ff98f > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-13017 .elementor-element.elementor-element-59b4042e:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-13017 .elementor-element.elementor-element-59b4042e > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-bc-flex-widget .elementor-13017 .elementor-element.elementor-element-59b4042e.elementor-column .elementor-widget-wrap{align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-59b4042e.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-start;align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-59b4042e > .elementor-element-populated{border-style:solid;border-color:#3696CD;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:10px 10px 10px 10px;--e-column-margin-right:10px;--e-column-margin-left:10px;padding:020px 20px 20px 20px;}.elementor-13017 .elementor-element.elementor-element-59b4042e > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-widget-image .widget-image-caption{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-13017 .elementor-element.elementor-element-86ffc54{text-align:center;}.elementor-13017 .elementor-element.elementor-element-412ab126:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-13017 .elementor-element.elementor-element-412ab126 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-bc-flex-widget .elementor-13017 .elementor-element.elementor-element-412ab126.elementor-column .elementor-widget-wrap{align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-412ab126.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-start;align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-412ab126 > .elementor-element-populated{border-style:solid;border-color:#3696CD;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:10px 10px 10px 10px;--e-column-margin-right:10px;--e-column-margin-left:10px;padding:020px 20px 20px 20px;}.elementor-13017 .elementor-element.elementor-element-412ab126 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-13017 .elementor-element.elementor-element-61e6538a:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-13017 .elementor-element.elementor-element-61e6538a > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-bc-flex-widget .elementor-13017 .elementor-element.elementor-element-61e6538a.elementor-column .elementor-widget-wrap{align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-61e6538a.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-start;align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-61e6538a > .elementor-element-populated{border-style:solid;border-color:#3696CD;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:10px 10px 10px 10px;--e-column-margin-right:10px;--e-column-margin-left:10px;padding:020px 20px 20px 20px;}.elementor-13017 .elementor-element.elementor-element-61e6538a > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-13017 .elementor-element.elementor-element-c348cf4{text-align:center;}.elementor-13017 .elementor-element.elementor-element-e8e7c88{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 0px 20px 0px;}.elementor-13017 .elementor-element.elementor-element-e8e7c88 > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-13017 .elementor-element.elementor-element-240659b:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-13017 .elementor-element.elementor-element-240659b > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-bc-flex-widget .elementor-13017 .elementor-element.elementor-element-240659b.elementor-column .elementor-widget-wrap{align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-240659b.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-start;align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-240659b > .elementor-element-populated{border-style:solid;border-color:#3696CD;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:10px 10px 10px 10px;--e-column-margin-right:10px;--e-column-margin-left:10px;padding:020px 20px 20px 20px;}.elementor-13017 .elementor-element.elementor-element-240659b > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-13017 .elementor-element.elementor-element-0da4362:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-13017 .elementor-element.elementor-element-0da4362 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-bc-flex-widget .elementor-13017 .elementor-element.elementor-element-0da4362.elementor-column .elementor-widget-wrap{align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-0da4362.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-start;align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-0da4362 > .elementor-element-populated{border-style:solid;border-color:#3696CD;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:10px 10px 10px 10px;--e-column-margin-right:10px;--e-column-margin-left:10px;padding:020px 20px 20px 20px;}.elementor-13017 .elementor-element.elementor-element-0da4362 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-13017 .elementor-element.elementor-element-1156293:not(.elementor-motion-effects-element-type-background) > .elementor-widget-wrap, .elementor-13017 .elementor-element.elementor-element-1156293 > .elementor-widget-wrap > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-bc-flex-widget .elementor-13017 .elementor-element.elementor-element-1156293.elementor-column .elementor-widget-wrap{align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-1156293.elementor-column.elementor-element[data-element_type="column"] > .elementor-widget-wrap.elementor-element-populated{align-content:flex-start;align-items:flex-start;}.elementor-13017 .elementor-element.elementor-element-1156293 > .elementor-element-populated{border-style:solid;border-color:#3696CD;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;margin:10px 10px 10px 10px;--e-column-margin-right:10px;--e-column-margin-left:10px;padding:020px 20px 20px 20px;}.elementor-13017 .elementor-element.elementor-element-1156293 > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-13017 .elementor-element.elementor-element-ee811a4{text-align:center;}@media(max-width:1024px){.elementor-13017 .elementor-element.elementor-element-1a7ba1cc{padding:40px 20px 40px 20px;}.elementor-13017 .elementor-element.elementor-element-698fa92{padding:40px 20px 40px 20px;}}@media(max-width:767px){.elementor-13017 .elementor-element.elementor-element-1a7ba1cc{padding:30px 15px 30px 15px;}.elementor-13017 .elementor-element.elementor-element-698fa92{padding:30px 15px 30px 15px;}}/* Start custom CSS for form, class: .elementor-element-3ff5790 *//* ===== Modern WSDC Form Styling for Elementor ===== */

/* Form wrapper */
.elementor-13017 .elementor-element.elementor-element-3ff5790 form,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-container,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gform_wrapper,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-form-cont,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-ui,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-form {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 20px;
    padding: 28px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
    box-sizing: border-box;
    overflow-wrap: break-word;
}

/* Spacing between fields */
.elementor-13017 .elementor-element.elementor-element-3ff5790 form p,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .form-row,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .field,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .gfield,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .wpforms-field,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .elementor-field-group,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .forminator-row,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .nf-field-container {
    margin-bottom: 18px;
}

/* Labels */
.elementor-13017 .elementor-element.elementor-element-3ff5790 form label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .gfield_label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .wpforms-field-label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .elementor-field-label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .forminator-label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .nf-field-label label {
    display: block;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #0f172a;
    letter-spacing: 0.01em;
}

/* Inputs */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="text"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="email"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="url"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="tel"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="number"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="date"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="search"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="password"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 select,
.elementor-13017 .elementor-element.elementor-element-3ff5790 textarea {
    width: 100%;
    min-height: 52px;
    padding: 14px 16px;
    border: 1px solid #d1d5db;
    border-radius: 14px;
    background: #f8fafc;
    color: #0f172a;
    font-size: 16px;
    line-height: 1.4;
    box-sizing: border-box;
    transition: all 0.2s ease;
    box-shadow: none;
    appearance: none;
    max-width: 100%;
}

/* Textareas */
.elementor-13017 .elementor-element.elementor-element-3ff5790 textarea {
    min-height: 140px;
    resize: vertical;
}

/* Placeholder */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input::placeholder,
.elementor-13017 .elementor-element.elementor-element-3ff5790 textarea::placeholder {
    color: #94a3b8;
}

/* Focus state */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input:focus,
.elementor-13017 .elementor-element.elementor-element-3ff5790 select:focus,
.elementor-13017 .elementor-element.elementor-element-3ff5790 textarea:focus {
    outline: none;
    border-color: #2563eb;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
}

/* =========================================================
   SECTION HEADINGS / ZWISCHENÜBERSCHRIFTEN
   ========================================================= */

.elementor-13017 .elementor-element.elementor-element-3ff5790 h2,
.elementor-13017 .elementor-element.elementor-element-3ff5790 h3,
.elementor-13017 .elementor-element.elementor-element-3ff5790 h4,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gsection_title,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-pagebreak-left,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-title {
    display: block;
    margin-top: 34px;
    margin-bottom: 14px;
    padding: 0 0 10px 0;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    color: #0f172a;
    border-bottom: 1px solid #e5e7eb;
    letter-spacing: -0.01em;
}

.elementor-13017 .elementor-element.elementor-element-3ff5790 h2,
.elementor-13017 .elementor-element.elementor-element-3ff5790 h3,
.elementor-13017 .elementor-element.elementor-element-3ff5790 h4 {
    list-style: none;
}

/* =========================================================
   RADIO / CHECKBOX GROUP LAYOUT
   ========================================================= */

.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-subgroup,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_radio,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio ul,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox ul,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-options {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 8px;
    margin-bottom: 6px;
    padding: 0;
    list-style: none;
    max-width: 100%;
    box-sizing: border-box;
}

/* Reset default spacing */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-field-element li {
    margin: 0;
    padding: 0;
    list-style: none;
    max-width: 100%;
    box-sizing: border-box;
}

/* =========================================================
   RADIO BUTTONS AS MODERN BUTTONS
   ========================================================= */

/* Hide radios visually but keep accessible */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* Radio labels as buttons */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option input[type="radio"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice input[type="radio"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio li input[type="radio"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option input[type="radio"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item input[type="radio"] + label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 16px;
    border: 1px solid #cbd5e1;
    border-radius: 12px;
    background: #f8fafc;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    transition: all 0.18s ease;
    user-select: none;
    white-space: nowrap;
    box-sizing: border-box;
    max-width: 100%;
    margin-bottom: 0;
}

/* Radio hover */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option input[type="radio"] + label:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice input[type="radio"] + label:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio li input[type="radio"] + label:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option input[type="radio"] + label:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item input[type="radio"] + label:hover {
    background: #eff6ff;
    border-color: #93c5fd;
    color: #1d4ed8;
    transform: translateY(-1px);
}

/* Radio checked */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="radio"]:checked + label {
    background: linear-gradient(135deg, #0f172a 0%, #1e3a8a 100%);
    border-color: #1e3a8a;
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(30, 58, 138, 0.18);
}

/* Radio focus */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="radio"]:focus + label {
    box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.14);
    border-color: #2563eb;
}

/* =========================================================
   CHECKBOXES - CLEAN STANDARD STYLE
   ========================================================= */

/* Checkbox rows should take full width */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-subgroup .elementor-field-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item {
    max-width: 100%;
    box-sizing: border-box;
}

/* For checkbox containers, stack nicely */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
}

/* Make checkbox wrappers full width where possible */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li {
    width: 100%;
}

/* Style actual checkbox inputs normally */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="checkbox"] {
    appearance: auto;
    -webkit-appearance: checkbox;
    width: 18px;
    height: 18px;
    min-width: 18px;
    margin: 3px 10px 0 0;
    vertical-align: top;
    accent-color: #1e3a8a;
    position: static;
    opacity: 1;
    pointer-events: auto;
    box-shadow: none;
}

/* Place checkbox before text and prevent overflow */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Checkbox label layout */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option input[type="checkbox"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice input[type="checkbox"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li input[type="checkbox"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option input[type="checkbox"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item input[type="checkbox"] + label {
    display: inline;
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    color: #0f172a;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* If checkbox and label are wrapped together differently, force row alignment */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="checkbox"]) {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Optional subtle hover for checkbox rows */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="checkbox"]):hover {
    color: #1d4ed8;
}

/* =========================================================
   SUBMIT BUTTON
   ========================================================= */

.elementor-13017 .elementor-element.elementor-element-3ff5790 button[type="submit"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="submit"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-submit,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-submit,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gform_button,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-button,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-button-submit,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-form-content button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 54px;
    padding: 14px 24px;
    border: none;
    border-radius: 14px;
    background: linear-gradient(135deg, #0f172a 0%, #1e3a8a 100%);
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.02em;
    cursor: pointer;
    transition: transform 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
    box-shadow: 0 12px 24px rgba(30, 58, 138, 0.22);
    max-width: 100%;
    box-sizing: border-box;
}

/* Submit hover */
.elementor-13017 .elementor-element.elementor-element-3ff5790 button[type="submit"]:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="submit"]:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-submit:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-submit:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gform_button:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-button:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-button-submit:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-form-content button:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 30px rgba(30, 58, 138, 0.28);
    opacity: 0.98;
}

/* Help text / descriptions */
.elementor-13017 .elementor-element.elementor-element-3ff5790 small,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .description,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_description,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-description,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-description {
    display: block;
    margin-top: 6px;
    font-size: 13px;
    color: #64748b;
}

/* Validation / errors */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .error,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .validation_error,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_validation_message,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-error,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-error-message,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-error-msg {
    font-size: 13px;
    color: #b91c1c;
    margin-top: 6px;
}

/* Readability for long forms */
.elementor-13017 .elementor-element.elementor-element-3ff5790 form ul,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form ol {
    padding-left: 20px;
    max-width: 100%;
    box-sizing: border-box;
}

.elementor-13017 .elementor-element.elementor-element-3ff5790 form hr {
    border: 0;
    border-top: 1px solid #e5e7eb;
    margin: 24px 0;
}

/* Prevent long text from overflowing */
.elementor-13017 .elementor-element.elementor-element-3ff5790,
.elementor-13017 .elementor-element.elementor-element-3ff5790 * {
    box-sizing: border-box;
}

.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_description,
.elementor-13017 .elementor-element.elementor-element-3ff5790 p,
.elementor-13017 .elementor-element.elementor-element-3ff5790 li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 div,
.elementor-13017 .elementor-element.elementor-element-3ff5790 span {
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Mobile */
@media (max-width: 767px) {
    .elementor-13017 .elementor-element.elementor-element-3ff5790 form,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-container,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .gform_wrapper,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-form-cont,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-ui,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-form {
        padding: 18px;
        border-radius: 16px;
    }

    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="text"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="email"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="url"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="tel"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="number"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="date"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="search"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="password"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 select,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 textarea {
        font-size: 16px;
    }

    .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-subgroup,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_radio,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio ul,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox ul,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-options {
        gap: 8px;
    }

    .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option input[type="radio"] + label,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice input[type="radio"] + label,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio li input[type="radio"] + label,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option input[type="radio"] + label,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item input[type="radio"] + label {
        width: 100%;
        justify-content: center;
        white-space: normal;
        text-align: center;
    }

    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="checkbox"] {
        margin-top: 2px;
    }

    .elementor-13017 .elementor-element.elementor-element-3ff5790 button[type="submit"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="submit"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-submit,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-submit,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .gform_button,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-button,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-button-submit,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-form-content button {
        width: 100%;
    }
}


/* =========================================
   FIX: CHECKBOX TEXT OVERFLOW
   ========================================= */

/* Wichtig: erlaubt Text innerhalb von flex items zu umbrechen */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option {
    min-width: 0 !important;
}

/* Label darf schrumpfen und umbrechen */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option label {
    display: block;
    width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Container darf nicht größer als Form werden */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox ul,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-subgroup {
    max-width: 100%;
}

/* Extra safety (falls Elementor weird wrappers nutzt) */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-group {
    min-width: 0;
}

.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li label {
    line-height: 1.6;
}

/* =========================================
   FORCE RADIOS INLINE (ONLY RADIOS)
   ========================================= */

/* Nur Radio-Optionen inline */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="radio"]) {
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
}

/* Radio-Labels dürfen kompakt bleiben */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="radio"]) label {
    width: auto !important;
    white-space: nowrap;
}

/* Checkbox-Optionen wieder volle Breite */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="checkbox"]) {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    display: flex !important;
    align-items: flex-start !important;
    min-width: 0 !important;
}

/* Checkbox-Label muss schrumpfen und umbrechen dürfen */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="checkbox"]) label {
    display: block !important;
    width: auto !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    line-height: 1.6 !important;
}

/* Checkbox selbst oben ausrichten */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option input[type="checkbox"] {
    flex: 0 0 18px;
    margin-top: 4px;
}

/* Falls Elementor den Checkbox-Subgroup-Container auch inline halten will */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-subgroup:has(input[type="checkbox"]) {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-3ff5790 *//* ===== Modern WSDC Form Styling for Elementor ===== */

/* Form wrapper */
.elementor-13017 .elementor-element.elementor-element-3ff5790 form,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-container,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gform_wrapper,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-form-cont,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-ui,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-form {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 20px;
    padding: 28px;
    box-shadow: 0 10px 30px rgba(15, 23, 42, 0.06);
    box-sizing: border-box;
    overflow-wrap: break-word;
}

/* Spacing between fields */
.elementor-13017 .elementor-element.elementor-element-3ff5790 form p,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .form-row,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .field,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .gfield,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .wpforms-field,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .elementor-field-group,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .forminator-row,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .nf-field-container {
    margin-bottom: 18px;
}

/* Labels */
.elementor-13017 .elementor-element.elementor-element-3ff5790 form label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .gfield_label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .wpforms-field-label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .elementor-field-label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .forminator-label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form .nf-field-label label {
    display: block;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #0f172a;
    letter-spacing: 0.01em;
}

/* Inputs */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="text"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="email"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="url"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="tel"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="number"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="date"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="search"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="password"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 select,
.elementor-13017 .elementor-element.elementor-element-3ff5790 textarea {
    width: 100%;
    min-height: 52px;
    padding: 14px 16px;
    border: 1px solid #d1d5db;
    border-radius: 14px;
    background: #f8fafc;
    color: #0f172a;
    font-size: 16px;
    line-height: 1.4;
    box-sizing: border-box;
    transition: all 0.2s ease;
    box-shadow: none;
    appearance: none;
    max-width: 100%;
}

/* Textareas */
.elementor-13017 .elementor-element.elementor-element-3ff5790 textarea {
    min-height: 140px;
    resize: vertical;
}

/* Placeholder */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input::placeholder,
.elementor-13017 .elementor-element.elementor-element-3ff5790 textarea::placeholder {
    color: #94a3b8;
}

/* Focus state */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input:focus,
.elementor-13017 .elementor-element.elementor-element-3ff5790 select:focus,
.elementor-13017 .elementor-element.elementor-element-3ff5790 textarea:focus {
    outline: none;
    border-color: #2563eb;
    background: #ffffff;
    box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.12);
}

/* =========================================================
   SECTION HEADINGS / ZWISCHENÜBERSCHRIFTEN
   ========================================================= */

.elementor-13017 .elementor-element.elementor-element-3ff5790 h2,
.elementor-13017 .elementor-element.elementor-element-3ff5790 h3,
.elementor-13017 .elementor-element.elementor-element-3ff5790 h4,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gsection_title,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-pagebreak-left,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-title {
    display: block;
    margin-top: 34px;
    margin-bottom: 14px;
    padding: 0 0 10px 0;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.3;
    color: #0f172a;
    border-bottom: 1px solid #e5e7eb;
    letter-spacing: -0.01em;
}

.elementor-13017 .elementor-element.elementor-element-3ff5790 h2,
.elementor-13017 .elementor-element.elementor-element-3ff5790 h3,
.elementor-13017 .elementor-element.elementor-element-3ff5790 h4 {
    list-style: none;
}

/* =========================================================
   RADIO / CHECKBOX GROUP LAYOUT
   ========================================================= */

.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-subgroup,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_radio,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio ul,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox ul,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-options {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 8px;
    margin-bottom: 6px;
    padding: 0;
    list-style: none;
    max-width: 100%;
    box-sizing: border-box;
}

/* Reset default spacing */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-field-element li {
    margin: 0;
    padding: 0;
    list-style: none;
    max-width: 100%;
    box-sizing: border-box;
}

/* =========================================================
   RADIO BUTTONS AS MODERN BUTTONS
   ========================================================= */

/* Hide radios visually but keep accessible */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* Radio labels as buttons */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option input[type="radio"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice input[type="radio"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio li input[type="radio"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option input[type="radio"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item input[type="radio"] + label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 10px 16px;
    border: 1px solid #cbd5e1;
    border-radius: 12px;
    background: #f8fafc;
    color: #0f172a;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    transition: all 0.18s ease;
    user-select: none;
    white-space: nowrap;
    box-sizing: border-box;
    max-width: 100%;
    margin-bottom: 0;
}

/* Radio hover */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option input[type="radio"] + label:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice input[type="radio"] + label:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio li input[type="radio"] + label:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option input[type="radio"] + label:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item input[type="radio"] + label:hover {
    background: #eff6ff;
    border-color: #93c5fd;
    color: #1d4ed8;
    transform: translateY(-1px);
}

/* Radio checked */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="radio"]:checked + label {
    background: linear-gradient(135deg, #0f172a 0%, #1e3a8a 100%);
    border-color: #1e3a8a;
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(30, 58, 138, 0.18);
}

/* Radio focus */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="radio"]:focus + label {
    box-shadow: 0 0 0 4px rgba(37, 99, 235, 0.14);
    border-color: #2563eb;
}

/* =========================================================
   CHECKBOXES - CLEAN STANDARD STYLE
   ========================================================= */

/* Checkbox rows should take full width */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-subgroup .elementor-field-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item {
    max-width: 100%;
    box-sizing: border-box;
}

/* For checkbox containers, stack nicely */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
}

/* Make checkbox wrappers full width where possible */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li {
    width: 100%;
}

/* Style actual checkbox inputs normally */
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="checkbox"] {
    appearance: auto;
    -webkit-appearance: checkbox;
    width: 18px;
    height: 18px;
    min-width: 18px;
    margin: 3px 10px 0 0;
    vertical-align: top;
    accent-color: #1e3a8a;
    position: static;
    opacity: 1;
    pointer-events: auto;
    box-shadow: none;
}

/* Place checkbox before text and prevent overflow */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Checkbox label layout */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option input[type="checkbox"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice input[type="checkbox"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li input[type="checkbox"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option input[type="checkbox"] + label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item input[type="checkbox"] + label {
    display: inline;
    margin: 0;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.5;
    color: #0f172a;
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* If checkbox and label are wrapped together differently, force row alignment */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="checkbox"]) {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 0;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Optional subtle hover for checkbox rows */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="checkbox"]):hover {
    color: #1d4ed8;
}

/* =========================================================
   SUBMIT BUTTON
   ========================================================= */

.elementor-13017 .elementor-element.elementor-element-3ff5790 button[type="submit"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="submit"],
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-submit,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-submit,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gform_button,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-button,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-button-submit,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-form-content button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 54px;
    padding: 14px 24px;
    border: none;
    border-radius: 14px;
    background: linear-gradient(135deg, #0f172a 0%, #1e3a8a 100%);
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    letter-spacing: 0.02em;
    cursor: pointer;
    transition: transform 0.18s ease, box-shadow 0.18s ease, opacity 0.18s ease;
    box-shadow: 0 12px 24px rgba(30, 58, 138, 0.22);
    max-width: 100%;
    box-sizing: border-box;
}

/* Submit hover */
.elementor-13017 .elementor-element.elementor-element-3ff5790 button[type="submit"]:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="submit"]:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-submit:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-submit:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gform_button:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-button:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-button-submit:hover,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-form-content button:hover {
    transform: translateY(-1px);
    box-shadow: 0 16px 30px rgba(30, 58, 138, 0.28);
    opacity: 0.98;
}

/* Help text / descriptions */
.elementor-13017 .elementor-element.elementor-element-3ff5790 small,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .description,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_description,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-description,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-description {
    display: block;
    margin-top: 6px;
    font-size: 13px;
    color: #64748b;
}

/* Validation / errors */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .error,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .validation_error,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_validation_message,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-error,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-error-message,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-error-msg {
    font-size: 13px;
    color: #b91c1c;
    margin-top: 6px;
}

/* Readability for long forms */
.elementor-13017 .elementor-element.elementor-element-3ff5790 form ul,
.elementor-13017 .elementor-element.elementor-element-3ff5790 form ol {
    padding-left: 20px;
    max-width: 100%;
    box-sizing: border-box;
}

.elementor-13017 .elementor-element.elementor-element-3ff5790 form hr {
    border: 0;
    border-top: 1px solid #e5e7eb;
    margin: 24px 0;
}

/* Prevent long text from overflowing */
.elementor-13017 .elementor-element.elementor-element-3ff5790,
.elementor-13017 .elementor-element.elementor-element-3ff5790 * {
    box-sizing: border-box;
}

.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_description,
.elementor-13017 .elementor-element.elementor-element-3ff5790 p,
.elementor-13017 .elementor-element.elementor-element-3ff5790 li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 div,
.elementor-13017 .elementor-element.elementor-element-3ff5790 span {
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Mobile */
@media (max-width: 767px) {
    .elementor-13017 .elementor-element.elementor-element-3ff5790 form,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-container,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .gform_wrapper,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-form-cont,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-ui,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-form {
        padding: 18px;
        border-radius: 16px;
    }

    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="text"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="email"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="url"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="tel"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="number"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="date"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="search"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="password"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 select,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 textarea {
        font-size: 16px;
    }

    .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-subgroup,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_radio,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio ul,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox ul,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-options {
        gap: 8px;
    }

    .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option input[type="radio"] + label,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice input[type="radio"] + label,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-radio li input[type="radio"] + label,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option input[type="radio"] + label,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item input[type="radio"] + label {
        width: 100%;
        justify-content: center;
        white-space: normal;
        text-align: center;
    }

    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="checkbox"] {
        margin-top: 2px;
    }

    .elementor-13017 .elementor-element.elementor-element-3ff5790 button[type="submit"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 input[type="submit"],
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-submit,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-submit,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .gform_button,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-button,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-button-submit,
    .elementor-13017 .elementor-element.elementor-element-3ff5790 .nf-form-content button {
        width: 100%;
    }
}


/* =========================================
   FIX: CHECKBOX TEXT OVERFLOW
   ========================================= */

/* Wichtig: erlaubt Text innerhalb von flex items zu umbrechen */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option {
    min-width: 0 !important;
}

/* Label darf schrumpfen und umbrechen */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .forminator-option label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpcf7-list-item label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option label {
    display: block;
    width: 100%;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Container darf nicht größer als Form werden */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .gfield_checkbox,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox ul,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-subgroup {
    max-width: 100%;
}

/* Extra safety (falls Elementor weird wrappers nutzt) */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-group {
    min-width: 0;
}

.elementor-13017 .elementor-element.elementor-element-3ff5790 .gchoice label,
.elementor-13017 .elementor-element.elementor-element-3ff5790 .wpforms-field-checkbox li label {
    line-height: 1.6;
}

/* =========================================
   FORCE RADIOS INLINE (ONLY RADIOS)
   ========================================= */

/* Nur Radio-Optionen inline */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="radio"]) {
    width: auto !important;
    max-width: none !important;
    flex: 0 0 auto !important;
    display: inline-flex !important;
}

/* Radio-Labels dürfen kompakt bleiben */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="radio"]) label {
    width: auto !important;
    white-space: nowrap;
}

/* Checkbox-Optionen wieder volle Breite */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="checkbox"]) {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    display: flex !important;
    align-items: flex-start !important;
    min-width: 0 !important;
}

/* Checkbox-Label muss schrumpfen und umbrechen dürfen */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option:has(input[type="checkbox"]) label {
    display: block !important;
    width: auto !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
    line-height: 1.6 !important;
}

/* Checkbox selbst oben ausrichten */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-option input[type="checkbox"] {
    flex: 0 0 18px;
    margin-top: 4px;
}

/* Falls Elementor den Checkbox-Subgroup-Container auch inline halten will */
.elementor-13017 .elementor-element.elementor-element-3ff5790 .elementor-field-subgroup:has(input[type="checkbox"]) {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
}/* End custom CSS */