.elementor-11689 .elementor-element.elementor-element-6e4a2b5 .elementor-repeater-item-54cf4c7.jet-parallax-section__layout .jet-parallax-section__image{background-size:auto;}.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-11689 .elementor-element.elementor-element-7fab3d39{text-align:start;}.elementor-11689 .elementor-element.elementor-element-7fab3d39 .elementor-heading-title{font-size:45px;text-transform:uppercase;letter-spacing:2px;color:#001c31;}.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-11689 .elementor-element.elementor-element-47c334fd{--divider-border-style:solid;--divider-color:var( --e-global-color-accent );--divider-border-width:2px;}.elementor-11689 .elementor-element.elementor-element-47c334fd > .elementor-widget-container{margin:-25px 0px 0px 0px;}.elementor-11689 .elementor-element.elementor-element-47c334fd .elementor-divider-separator{width:100%;}.elementor-11689 .elementor-element.elementor-element-47c334fd .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-11689 .elementor-element.elementor-element-6e4a2b5:not(.elementor-motion-effects-element-type-background), .elementor-11689 .elementor-element.elementor-element-6e4a2b5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-6e4a2b5 > .elementor-background-overlay{background-color:#ffffff;opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-11689 .elementor-element.elementor-element-6e4a2b5{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 0px 50px 0px;}.elementor-11689 .elementor-element.elementor-element-30720efa > .elementor-background-overlay{opacity:0.07;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-11689 .elementor-element.elementor-element-30720efa{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:5px 0px 10px 0px;}.elementor-11689 .elementor-element.elementor-element-3d31b36f > .elementor-element-populated >  .elementor-background-overlay{background-color:var( --e-global-color-50dc38b0 );opacity:0.23;}.elementor-11689 .elementor-element.elementor-element-3d31b36f > .elementor-element-populated{border-style:solid;transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:0px 10px 0px 10px;}.elementor-11689 .elementor-element.elementor-element-3d31b36f > .elementor-element-populated > .elementor-background-overlay{transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.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-11689 .elementor-element.elementor-element-3800e9a0 > .elementor-widget-container{padding:10px 0px 10px 0px;}.elementor-11689 .elementor-element.elementor-element-3800e9a0{text-align:start;font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:400;}.elementor-11689 .elementor-element.elementor-element-79b49b13 .elementor-repeater-item-54cf4c7.jet-parallax-section__layout .jet-parallax-section__image{background-size:auto;}.elementor-11689 .elementor-element.elementor-element-4cf79e5e{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:400;line-height:26px;}.elementor-11689 .elementor-element.elementor-element-66360bc4{font-family:"Montserrat", Sans-serif;font-size:18px;font-weight:400;line-height:26px;}.elementor-11689 .elementor-element.elementor-element-79b49b13:not(.elementor-motion-effects-element-type-background), .elementor-11689 .elementor-element.elementor-element-79b49b13 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-79b49b13 > .elementor-background-overlay{background-color:#ffffff;opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-11689 .elementor-element.elementor-element-79b49b13{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:20px 0px 20px 0px;}.elementor-11689 .elementor-element.elementor-element-44381be5 .elementor-repeater-item-54cf4c7.jet-parallax-section__layout .jet-parallax-section__image{background-size:auto;}.elementor-11689 .elementor-element.elementor-element-6dd71b70{text-align:start;}.elementor-11689 .elementor-element.elementor-element-6dd71b70 .elementor-heading-title{font-size:45px;text-transform:uppercase;letter-spacing:2px;color:#001c31;}.elementor-11689 .elementor-element.elementor-element-01b6bf6{--spacer-size:50px;}.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-11689 .elementor-element.elementor-element-19591f4b .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:20px;}.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-20px;}.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-group.recaptcha_v3-bottomleft, .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-group > label{font-family:"Montserrat", Sans-serif;font-weight:400;line-height:1.5em;}.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-type-html{padding-bottom:0px;}.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-19591f4b .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-11689 .elementor-element.elementor-element-19591f4b .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-19591f4b .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-11689 .elementor-element.elementor-element-19591f4b .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-19591f4b{--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-11689 .elementor-element.elementor-element-48a00b9b{text-align:start;}.elementor-11689 .elementor-element.elementor-element-2348ca91{--divider-border-style:solid;--divider-color:var( --e-global-color-accent );--divider-border-width:2px;}.elementor-11689 .elementor-element.elementor-element-2348ca91 > .elementor-widget-container{margin:-25px 0px 0px 0px;}.elementor-11689 .elementor-element.elementor-element-2348ca91 .elementor-divider-separator{width:100%;}.elementor-11689 .elementor-element.elementor-element-2348ca91 .elementor-divider{padding-block-start:15px;padding-block-end:15px;}.elementor-11689 .elementor-element.elementor-element-add55a2 .elementor-repeater-item-bd7fcbc.jet-parallax-section__layout .jet-parallax-section__image{background-size:auto;}.elementor-11689 .elementor-element.elementor-element-add55a2 > .elementor-container{max-width:850px;}.elementor-11689 .elementor-element.elementor-element-44381be5:not(.elementor-motion-effects-element-type-background), .elementor-11689 .elementor-element.elementor-element-44381be5 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#ffffff;}.elementor-11689 .elementor-element.elementor-element-44381be5 > .elementor-background-overlay{background-color:#ffffff;opacity:0.5;transition:background 0.3s, border-radius 0.3s, opacity 0.3s;}.elementor-11689 .elementor-element.elementor-element-44381be5{transition:background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;padding:50px 0px 50px 0px;}@media(max-width:1024px){.elementor-11689 .elementor-element.elementor-element-7fab3d39 .elementor-heading-title{font-size:30px;line-height:38px;}.elementor-11689 .elementor-element.elementor-element-6e4a2b5{padding:40px 20px 40px 20px;}.elementor-11689 .elementor-element.elementor-element-4cf79e5e{font-size:18px;}.elementor-11689 .elementor-element.elementor-element-66360bc4{font-size:18px;}.elementor-11689 .elementor-element.elementor-element-79b49b13{padding:40px 20px 40px 20px;}.elementor-11689 .elementor-element.elementor-element-6dd71b70 .elementor-heading-title{font-size:30px;line-height:38px;}.elementor-11689 .elementor-element.elementor-element-44381be5{padding:40px 20px 40px 20px;}}@media(max-width:767px){.elementor-11689 .elementor-element.elementor-element-7fab3d39{text-align:start;}.elementor-11689 .elementor-element.elementor-element-7fab3d39 .elementor-heading-title{font-size:22px;line-height:30px;}.elementor-11689 .elementor-element.elementor-element-6e4a2b5{padding:30px 15px 30px 15px;}.elementor-11689 .elementor-element.elementor-element-30720efa{padding:0px 15px 0px 15px;}.elementor-11689 .elementor-element.elementor-element-3d31b36f > .elementor-element-populated{padding:0px 15px 0px 15px;}.elementor-11689 .elementor-element.elementor-element-4cf79e5e{font-size:16px;line-height:24px;}.elementor-11689 .elementor-element.elementor-element-66360bc4{font-size:16px;line-height:24px;}.elementor-11689 .elementor-element.elementor-element-79b49b13{padding:30px 15px 30px 15px;}.elementor-11689 .elementor-element.elementor-element-6dd71b70{text-align:start;}.elementor-11689 .elementor-element.elementor-element-6dd71b70 .elementor-heading-title{font-size:22px;line-height:30px;}.elementor-11689 .elementor-element.elementor-element-44381be5{padding:30px 15px 30px 15px;}}/* Start custom CSS for text-editor, class: .elementor-element-4cf79e5e */li {  list-style-type: disc;}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-66360bc4 */li {  list-style-type: disc;}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-4cf79e5e */li {  list-style-type: disc;}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-66360bc4 */li {  list-style-type: disc;}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-19591f4b *//* ===== Modern WSDC Form Styling for Elementor ===== */

/* Form wrapper */
.elementor-11689 .elementor-element.elementor-element-19591f4b form,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-container,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gform_wrapper,
.elementor-11689 .elementor-element.elementor-element-19591f4b .nf-form-cont,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-ui,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b form p,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .form-row,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .field,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .gfield,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .wpforms-field,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .elementor-field-group,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .forminator-row,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .nf-field-container {
    margin-bottom: 18px;
}

/* Labels */
.elementor-11689 .elementor-element.elementor-element-19591f4b form label,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .gfield_label,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .wpforms-field-label,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .elementor-field-label,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .forminator-label,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .nf-field-label label {
    display: block;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #0f172a;
    letter-spacing: 0.01em;
}

/* Inputs */
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="text"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="email"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="url"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="tel"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="number"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="date"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="search"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="password"],
.elementor-11689 .elementor-element.elementor-element-19591f4b select,
.elementor-11689 .elementor-element.elementor-element-19591f4b 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-11689 .elementor-element.elementor-element-19591f4b textarea {
    min-height: 140px;
    resize: vertical;
}

/* Placeholder */
.elementor-11689 .elementor-element.elementor-element-19591f4b input::placeholder,
.elementor-11689 .elementor-element.elementor-element-19591f4b textarea::placeholder {
    color: #94a3b8;
}

/* Focus state */
.elementor-11689 .elementor-element.elementor-element-19591f4b input:focus,
.elementor-11689 .elementor-element.elementor-element-19591f4b select:focus,
.elementor-11689 .elementor-element.elementor-element-19591f4b 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-11689 .elementor-element.elementor-element-19591f4b h2,
.elementor-11689 .elementor-element.elementor-element-19591f4b h3,
.elementor-11689 .elementor-element.elementor-element-19591f4b h4,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gsection_title,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-pagebreak-left,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b h2,
.elementor-11689 .elementor-element.elementor-element-19591f4b h3,
.elementor-11689 .elementor-element.elementor-element-19591f4b h4 {
    list-style: none;
}

/* =========================================================
   RADIO / CHECKBOX GROUP LAYOUT
   ========================================================= */

.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-subgroup,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_radio,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio ul,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox ul,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* Radio labels as buttons */
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option input[type="radio"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice input[type="radio"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio li input[type="radio"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option input[type="radio"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option input[type="radio"] + label:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice input[type="radio"] + label:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio li input[type="radio"] + label:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option input[type="radio"] + label:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item input[type="radio"] + label:hover {
    background: #eff6ff;
    border-color: #93c5fd;
    color: #1d4ed8;
    transform: translateY(-1px);
}

/* Radio checked */
.elementor-11689 .elementor-element.elementor-element-19591f4b 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-11689 .elementor-element.elementor-element-19591f4b 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-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-subgroup .elementor-field-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item {
    max-width: 100%;
    box-sizing: border-box;
}

/* For checkbox containers, stack nicely */
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
}

/* Make checkbox wrappers full width where possible */
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li {
    width: 100%;
}

/* Style actual checkbox inputs normally */
.elementor-11689 .elementor-element.elementor-element-19591f4b 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-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Checkbox label layout */
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option input[type="checkbox"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice input[type="checkbox"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li input[type="checkbox"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option input[type="checkbox"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .gchoice:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option:has(input[type="checkbox"]):hover {
    color: #1d4ed8;
}

/* =========================================================
   SUBMIT BUTTON
   ========================================================= */

.elementor-11689 .elementor-element.elementor-element-19591f4b button[type="submit"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="submit"],
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-submit,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-submit,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gform_button,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-button,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-button-submit,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b button[type="submit"]:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="submit"]:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-submit:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-submit:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gform_button:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-button:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-button-submit:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b small,
.elementor-11689 .elementor-element.elementor-element-19591f4b .description,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_description,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-description,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-description {
    display: block;
    margin-top: 6px;
    font-size: 13px;
    color: #64748b;
}

/* Validation / errors */
.elementor-11689 .elementor-element.elementor-element-19591f4b .error,
.elementor-11689 .elementor-element.elementor-element-19591f4b .validation_error,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_validation_message,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-error,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-error-message,
.elementor-11689 .elementor-element.elementor-element-19591f4b .nf-error-msg {
    font-size: 13px;
    color: #b91c1c;
    margin-top: 6px;
}

/* Readability for long forms */
.elementor-11689 .elementor-element.elementor-element-19591f4b form ul,
.elementor-11689 .elementor-element.elementor-element-19591f4b form ol {
    padding-left: 20px;
    max-width: 100%;
    box-sizing: border-box;
}

.elementor-11689 .elementor-element.elementor-element-19591f4b form hr {
    border: 0;
    border-top: 1px solid #e5e7eb;
    margin: 24px 0;
}

/* Prevent long text from overflowing */
.elementor-11689 .elementor-element.elementor-element-19591f4b,
.elementor-11689 .elementor-element.elementor-element-19591f4b * {
    box-sizing: border-box;
}

.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_description,
.elementor-11689 .elementor-element.elementor-element-19591f4b p,
.elementor-11689 .elementor-element.elementor-element-19591f4b li,
.elementor-11689 .elementor-element.elementor-element-19591f4b div,
.elementor-11689 .elementor-element.elementor-element-19591f4b span {
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Mobile */
@media (max-width: 767px) {
    .elementor-11689 .elementor-element.elementor-element-19591f4b form,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-container,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .gform_wrapper,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .nf-form-cont,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-ui,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-form {
        padding: 18px;
        border-radius: 16px;
    }

    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="text"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="email"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="url"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="tel"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="number"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="date"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="search"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="password"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b select,
    .elementor-11689 .elementor-element.elementor-element-19591f4b textarea {
        font-size: 16px;
    }

    .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-subgroup,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_radio,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio ul,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox ul,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-options {
        gap: 8px;
    }

    .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option input[type="radio"] + label,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice input[type="radio"] + label,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio li input[type="radio"] + label,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option input[type="radio"] + label,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item input[type="radio"] + label {
        width: 100%;
        justify-content: center;
        white-space: normal;
        text-align: center;
    }

    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="checkbox"] {
        margin-top: 2px;
    }

    .elementor-11689 .elementor-element.elementor-element-19591f4b button[type="submit"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="submit"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-submit,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-submit,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .gform_button,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-button,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-button-submit,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .nf-form-content button {
        width: 100%;
    }
}


/* =========================================
   FIX: CHECKBOX TEXT OVERFLOW
   ========================================= */

/* Wichtig: erlaubt Text innerhalb von flex items zu umbrechen */
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option {
    min-width: 0 !important;
}

/* Label darf schrumpfen und umbrechen */
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox ul,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-subgroup {
    max-width: 100%;
}

/* Extra safety (falls Elementor weird wrappers nutzt) */
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-group {
    min-width: 0;
}

.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li label {
    line-height: 1.6;
}

/* =========================================
   FORCE RADIOS INLINE (ONLY RADIOS)
   ========================================= */

/* Nur Radio-Optionen inline */
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option:has(input[type="radio"]) label {
    width: auto !important;
    white-space: nowrap;
}

/* Checkbox-Optionen wieder volle Breite */
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option input[type="checkbox"] {
    flex: 0 0 18px;
    margin-top: 4px;
}

/* Falls Elementor den Checkbox-Subgroup-Container auch inline halten will */
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-19591f4b *//* ===== Modern WSDC Form Styling for Elementor ===== */

/* Form wrapper */
.elementor-11689 .elementor-element.elementor-element-19591f4b form,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-container,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gform_wrapper,
.elementor-11689 .elementor-element.elementor-element-19591f4b .nf-form-cont,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-ui,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b form p,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .form-row,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .field,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .gfield,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .wpforms-field,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .elementor-field-group,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .forminator-row,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .nf-field-container {
    margin-bottom: 18px;
}

/* Labels */
.elementor-11689 .elementor-element.elementor-element-19591f4b form label,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .gfield_label,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .wpforms-field-label,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .elementor-field-label,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .forminator-label,
.elementor-11689 .elementor-element.elementor-element-19591f4b form .nf-field-label label {
    display: block;
    margin-bottom: 8px;
    font-size: 14px;
    font-weight: 600;
    color: #0f172a;
    letter-spacing: 0.01em;
}

/* Inputs */
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="text"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="email"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="url"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="tel"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="number"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="date"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="search"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="password"],
.elementor-11689 .elementor-element.elementor-element-19591f4b select,
.elementor-11689 .elementor-element.elementor-element-19591f4b 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-11689 .elementor-element.elementor-element-19591f4b textarea {
    min-height: 140px;
    resize: vertical;
}

/* Placeholder */
.elementor-11689 .elementor-element.elementor-element-19591f4b input::placeholder,
.elementor-11689 .elementor-element.elementor-element-19591f4b textarea::placeholder {
    color: #94a3b8;
}

/* Focus state */
.elementor-11689 .elementor-element.elementor-element-19591f4b input:focus,
.elementor-11689 .elementor-element.elementor-element-19591f4b select:focus,
.elementor-11689 .elementor-element.elementor-element-19591f4b 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-11689 .elementor-element.elementor-element-19591f4b h2,
.elementor-11689 .elementor-element.elementor-element-19591f4b h3,
.elementor-11689 .elementor-element.elementor-element-19591f4b h4,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gsection_title,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-pagebreak-left,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b h2,
.elementor-11689 .elementor-element.elementor-element-19591f4b h3,
.elementor-11689 .elementor-element.elementor-element-19591f4b h4 {
    list-style: none;
}

/* =========================================================
   RADIO / CHECKBOX GROUP LAYOUT
   ========================================================= */

.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-subgroup,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_radio,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio ul,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox ul,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b input[type="radio"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

/* Radio labels as buttons */
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option input[type="radio"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice input[type="radio"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio li input[type="radio"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option input[type="radio"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option input[type="radio"] + label:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice input[type="radio"] + label:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio li input[type="radio"] + label:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option input[type="radio"] + label:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item input[type="radio"] + label:hover {
    background: #eff6ff;
    border-color: #93c5fd;
    color: #1d4ed8;
    transform: translateY(-1px);
}

/* Radio checked */
.elementor-11689 .elementor-element.elementor-element-19591f4b 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-11689 .elementor-element.elementor-element-19591f4b 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-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-subgroup .elementor-field-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item {
    max-width: 100%;
    box-sizing: border-box;
}

/* For checkbox containers, stack nicely */
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox ul {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: stretch;
}

/* Make checkbox wrappers full width where possible */
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li {
    width: 100%;
}

/* Style actual checkbox inputs normally */
.elementor-11689 .elementor-element.elementor-element-19591f4b 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-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item {
    display: block;
    width: 100%;
    max-width: 100%;
    box-sizing: border-box;
}

/* Checkbox label layout */
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option input[type="checkbox"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice input[type="checkbox"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li input[type="checkbox"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option input[type="checkbox"] + label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .gchoice:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option:has(input[type="checkbox"]):hover {
    color: #1d4ed8;
}

/* =========================================================
   SUBMIT BUTTON
   ========================================================= */

.elementor-11689 .elementor-element.elementor-element-19591f4b button[type="submit"],
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="submit"],
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-submit,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-submit,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gform_button,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-button,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-button-submit,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b button[type="submit"]:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b input[type="submit"]:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-submit:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-submit:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gform_button:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-button:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-button-submit:hover,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b small,
.elementor-11689 .elementor-element.elementor-element-19591f4b .description,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_description,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-description,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-description {
    display: block;
    margin-top: 6px;
    font-size: 13px;
    color: #64748b;
}

/* Validation / errors */
.elementor-11689 .elementor-element.elementor-element-19591f4b .error,
.elementor-11689 .elementor-element.elementor-element-19591f4b .validation_error,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_validation_message,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-error,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-error-message,
.elementor-11689 .elementor-element.elementor-element-19591f4b .nf-error-msg {
    font-size: 13px;
    color: #b91c1c;
    margin-top: 6px;
}

/* Readability for long forms */
.elementor-11689 .elementor-element.elementor-element-19591f4b form ul,
.elementor-11689 .elementor-element.elementor-element-19591f4b form ol {
    padding-left: 20px;
    max-width: 100%;
    box-sizing: border-box;
}

.elementor-11689 .elementor-element.elementor-element-19591f4b form hr {
    border: 0;
    border-top: 1px solid #e5e7eb;
    margin: 24px 0;
}

/* Prevent long text from overflowing */
.elementor-11689 .elementor-element.elementor-element-19591f4b,
.elementor-11689 .elementor-element.elementor-element-19591f4b * {
    box-sizing: border-box;
}

.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_description,
.elementor-11689 .elementor-element.elementor-element-19591f4b p,
.elementor-11689 .elementor-element.elementor-element-19591f4b li,
.elementor-11689 .elementor-element.elementor-element-19591f4b div,
.elementor-11689 .elementor-element.elementor-element-19591f4b span {
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Mobile */
@media (max-width: 767px) {
    .elementor-11689 .elementor-element.elementor-element-19591f4b form,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-container,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .gform_wrapper,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .nf-form-cont,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-ui,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-form {
        padding: 18px;
        border-radius: 16px;
    }

    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="text"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="email"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="url"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="tel"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="number"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="date"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="search"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="password"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b select,
    .elementor-11689 .elementor-element.elementor-element-19591f4b textarea {
        font-size: 16px;
    }

    .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-subgroup,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_radio,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio ul,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox ul,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-options {
        gap: 8px;
    }

    .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option input[type="radio"] + label,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice input[type="radio"] + label,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-radio li input[type="radio"] + label,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option input[type="radio"] + label,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item input[type="radio"] + label {
        width: 100%;
        justify-content: center;
        white-space: normal;
        text-align: center;
    }

    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="checkbox"] {
        margin-top: 2px;
    }

    .elementor-11689 .elementor-element.elementor-element-19591f4b button[type="submit"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b input[type="submit"],
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-submit,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-submit,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .gform_button,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-button,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-button-submit,
    .elementor-11689 .elementor-element.elementor-element-19591f4b .nf-form-content button {
        width: 100%;
    }
}


/* =========================================
   FIX: CHECKBOX TEXT OVERFLOW
   ========================================= */

/* Wichtig: erlaubt Text innerhalb von flex items zu umbrechen */
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option {
    min-width: 0 !important;
}

/* Label darf schrumpfen und umbrechen */
.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .forminator-option label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpcf7-list-item label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .gfield_checkbox,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox ul,
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-subgroup {
    max-width: 100%;
}

/* Extra safety (falls Elementor weird wrappers nutzt) */
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-group {
    min-width: 0;
}

.elementor-11689 .elementor-element.elementor-element-19591f4b .gchoice label,
.elementor-11689 .elementor-element.elementor-element-19591f4b .wpforms-field-checkbox li label {
    line-height: 1.6;
}

/* =========================================
   FORCE RADIOS INLINE (ONLY RADIOS)
   ========================================= */

/* Nur Radio-Optionen inline */
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option:has(input[type="radio"]) label {
    width: auto !important;
    white-space: nowrap;
}

/* Checkbox-Optionen wieder volle Breite */
.elementor-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .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-11689 .elementor-element.elementor-element-19591f4b .elementor-field-option input[type="checkbox"] {
    flex: 0 0 18px;
    margin-top: 4px;
}

/* Falls Elementor den Checkbox-Subgroup-Container auch inline halten will */
.elementor-11689 .elementor-element.elementor-element-19591f4b .elementor-field-subgroup:has(input[type="checkbox"]) {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
}/* End custom CSS */