.elementor-7 .elementor-element.elementor-element-c343193{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7 .elementor-element.elementor-element-17822e4{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}/* Start custom CSS for container, class: .elementor-element-c343193 *//* ============================================
   BEST-VERSICHERUNG — Custom Form CSS
   FINALE VERSION
   ============================================ */

/* --- SCHLEIER-FIX --- */
.custom-lead-form,
.elementor-widget-container .custom-lead-form,
.elementor section .custom-lead-form,
[class*="elementor"] .custom-lead-form {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    opacity: 1 !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    position: relative !important;
    z-index: 10 !important;
    isolation: isolate !important;
}
.custom-lead-form::after {
    display: none !important;
    content: none !important;
    background: none !important;
    opacity: 0 !important;
}
.elementor-section:has(.custom-lead-form),
.elementor-container:has(.custom-lead-form),
.e-con:has(.custom-lead-form),
.elementor-widget:has(.custom-lead-form) {
    background: transparent !important;
    background-image: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}
.custom-lead-form > *,
.custom-lead-form .wpcf7-form {
    background: transparent !important;
    position: relative;
    z-index: 1;
}

/* --- 1. CONTAINER --- */
.custom-lead-form {
    background: #ffffff !important;
    background-color: #ffffff !important;
    padding: 220px 60px 56px 60px !important;
    border-radius: 24px !important;
    box-shadow:
        0 1px 2px rgba(0,0,0,0.04),
        0 8px 24px rgba(0,0,0,0.06),
        0 32px 64px rgba(0,0,0,0.08) !important;
    max-width: 860px;
    margin: auto;
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
    isolation: isolate !important;
    border: 1px solid rgba(0,0,0,0.06) !important;
    color-scheme: light !important;
}

/* --- 2. LOGO --- */
.custom-lead-form::before {
    content: "" !important;
    display: block !important;
    position: absolute !important;
    top: 10px !important;
    left: 0px !important;
    width: 320px !important;
    height: 180px !important;
    background-image: url("https://best-versicherung.ch/wp-content/uploads/2026/03/best-versicherung.ch_.png") !important;
    background-repeat: no-repeat !important;
    background-size: contain !important;
    background-position: left center !important;
    opacity: 1 !important;
    z-index: 2 !important;
}

/* --- 3. TABS --- */
.form-tabs,
.form-tabs .wpcf7-radio {
    display: flex !important;
    justify-content: center !important;
    background: #f1f5f9 !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 4px !important;
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
    gap: 0 !important;
}
.form-tabs { margin-bottom: 28px !important; }
.form-tabs input[type="radio"] { display: none !important; }
.form-tabs .wpcf7-list-item { margin: 0 !important; }
.form-tabs .wpcf7-list-item-label {
    display: inline-block !important;
    width: 200px !important;
    text-align: center !important;
    padding: 11px 0 !important;
    border-radius: 9px !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #64748b !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    white-space: nowrap !important;
    user-select: none !important;
    border: none !important;
    background: transparent !important;
}
.form-tabs .wpcf7-list-item-label:hover { color: #1e3a5f !important; }
.form-tabs input[type="radio"]:checked + .wpcf7-list-item-label {
    background: #1e3a5f !important;
    color: #ffffff !important;
    font-weight: 600 !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.12) !important;
}

/* --- 4. HEADER --- */
.form-header { text-align: center !important; margin-bottom: 36px !important; }
#dynamic-h1 {
    text-align: center !important;
    margin-top: 12px !important;
    font-size: 28px !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    color: #0f1f35 !important;
    letter-spacing: -0.5px !important;
}
.subline {
    text-align: center !important;
    margin: 8px auto 32px auto !important;
    color: #64748b !important;
    font-size: 15px !important;
    line-height: 1.6 !important;
    max-width: 520px;
}

/* --- 5. VERSICHERUNGS-BUTTONS --- */
.insurance-selection {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-bottom: 44px;
}
.insurance-selection input[type="checkbox"] { display: none !important; visibility: hidden !important; }
.insurance-selection .wpcf7-list-item { margin: 0 !important; }
.insurance-selection .wpcf7-list-item-label {
    display: inline-flex !important;
    align-items: center;
    gap: 8px;
    padding: 11px 20px !important;
    border: 1.5px solid #e2e8f0 !important;
    background: #fafafa !important;
    border-radius: 12px !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #475569 !important;
    cursor: pointer;
    transition: all 0.2s ease !important;
    letter-spacing: 0.1px;
    user-select: none;
}
.insurance-selection .wpcf7-list-item-label:hover {
    background: #f0f6ff !important;
    border-color: #93b4d4 !important;
    color: #1e3a5f !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(30,58,95,0.1) !important;
}
.insurance-selection input:checked + .wpcf7-list-item-label {
    background: #1e3a5f !important;
    border-color: #1e3a5f !important;
    color: #ffffff !important;
    box-shadow: 0 4px 14px rgba(30,58,95,0.25) !important;
    transform: translateY(-1px);
}
.insurance-selection input:checked + .wpcf7-list-item-label::before { filter: brightness(0) invert(1) !important; }
.insurance-selection input:checked + .wpcf7-list-item-label:hover { background: #16304f !important; border-color: #16304f !important; }

/* --- 6. SVG ICONS --- */
.insurance-selection .wpcf7-list-item-label::before {
    content: "" !important;
    display: inline-block !important;
    width: 18px !important;
    height: 18px !important;
    flex-shrink: 0 !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
    background-size: contain !important;
    transition: filter 0.2s ease !important;
}
.insurance-selection .wpcf7-list-item:nth-child(1) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M18.92 6.01C18.72 5.42 18.16 5 17.5 5h-11c-.66 0-1.21.42-1.42 1.01L3 12v8c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-1h12v1c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-8l-2.08-5.99zM6.5 16c-.83 0-1.5-.67-1.5-1.5S5.67 13 6.5 13s1.5.67 1.5 1.5S7.33 16 6.5 16zm11 0c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM5 11l1.5-4.5h11L19 11H5z'/%3E%3C/svg%3E") !important; }
.insurance-selection .wpcf7-list-item:nth-child(2) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M19 7c0-1.1-.9-2-2-2h-3l2 4h-4L10 6H7C4.24 6 2 8.24 2 11s2.24 5 5 5c2.42 0 4.44-1.72 4.9-4h2.2c.46 2.28 2.48 4 4.9 4 2.76 0 5-2.24 5-5 0-2.42-1.72-4.44-4-4.9V7h-1zm-12 7c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3zm12 0c-1.66 0-3-1.34-3-3s1.34-3 3-3 3 1.34 3 3-1.34 3-3 3z'/%3E%3C/svg%3E") !important; }
.insurance-selection .wpcf7-list-item:nth-child(3) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M21 16v-2l-8-5V3.5c0-.83-.67-1.5-1.5-1.5S10 2.67 10 3.5V9l-8 5v2l8-2.5V19l-2 1.5V22l3.5-1 3.5 1v-1.5L13 19v-5.5l8 2.5z'/%3E%3C/svg%3E") !important; }
.insurance-selection .wpcf7-list-item:nth-child(4) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M12 21.35l-1.45-1.32C5.4 15.36 2 12.28 2 8.5 2 5.42 4.42 3 7.5 3c1.74 0 3.41.81 4.5 2.09C13.09 3.81 14.76 3 16.5 3 19.58 3 22 5.42 22 8.5c0 3.78-3.4 6.86-8.55 11.54L12 21.35z'/%3E%3C/svg%3E") !important; }
.insurance-selection .wpcf7-list-item:nth-child(5) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M10 20v-6h4v6h5v-8h3L12 3 2 12h3v8z'/%3E%3C/svg%3E") !important; }
.insurance-selection .wpcf7-list-item:nth-child(6) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M4 10v7h3v-7H4zm6 0v7h3v-7h-3zM2 22h19v-3H2v3zm14-12v7h3v-7h-3zM11.5 1L2 6v2h19V6l-9.5-5z'/%3E%3C/svg%3E") !important; }
.insurance-selection .wpcf7-list-item:nth-child(7) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M12 1L3 5v6c0 5.55 3.84 10.74 9 12 5.16-1.26 9-6.45 9-12V5l-9-4zm0 4c1.4 0 2.8 1.1 2.8 2.5V9c.6 0 1.2.6 1.2 1.2v3.5c0 .7-.6 1.3-1.2 1.3H9.2C8.6 15 8 14.4 8 13.7v-3.5C8 9.6 8.6 9 9.2 9V7.5C9.2 6.1 10.6 5 12 5zm0 1.5c-.8 0-1.3.5-1.3 1V9h2.6V7.5c0-.5-.5-1-1.3-1z'/%3E%3C/svg%3E") !important; }
.insurance-selection .wpcf7-list-item:nth-child(8) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M11.8 10.9c-2.27-.59-3-1.2-3-2.15 0-1.09 1.01-1.85 2.7-1.85 1.78 0 2.44.85 2.5 2.1h2.21c-.07-1.72-1.12-3.3-3.21-3.81V3h-3v2.16c-1.94.42-3.5 1.68-3.5 3.61 0 2.31 1.91 3.46 4.7 4.13 2.5.6 3 1.48 3 2.41 0 .69-.49 1.79-2.7 1.79-2.06 0-2.87-.92-2.98-2.1h-2.2c.12 2.19 1.76 3.42 3.68 3.83V21h3v-2.15c1.95-.37 3.5-1.5 3.5-3.55 0-2.84-2.43-3.81-4.7-4.4z'/%3E%3C/svg%3E") !important; }
.insurance-selection .wpcf7-list-item:nth-child(9) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M20 4H4c-1.11 0-2 .89-2 2v12c0 1.11.89 2 2 2h16c1.11 0 2-.89 2-2V6c0-1.11-.89-2-2-2zm0 14H4v-6h16v6zm0-10H4V6h16v2z'/%3E%3C/svg%3E") !important; }
.insurance-selection .wpcf7-list-item:nth-child(10) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M3.5 18.49l6-6.01 4 4L22 6.92l-1.41-1.41-7.09 7.97-4-4L2 16.99l1.5 1.5z'/%3E%3C/svg%3E") !important; }
.insurance-selection .wpcf7-list-item:nth-child(11) .wpcf7-list-item-label::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='%231e3a5f'%3E%3Cpath d='M20 6h-2.18c.07-.44.18-.88.18-1.36C18 2.53 15.47 0 12.36 0c-.96 0-1.86.28-2.65.73L11 2.08C11.42 1.87 11.88 1.75 12.36 1.75c1.79 0 3.25 1.46 3.25 3.25 0 .48-.11.92-.28 1.36H8.67c-.17-.44-.28-.88-.28-1.36C8.39 3.21 9.85 1.75 11.64 1.75c.12 0 .22.01.33.02L13.35 0C12.95 0 12.55 0 12.15 0 9.04 0 6.5 2.53 6.5 4.64c0 .48.1.92.17 1.36H4c-1.1 0-2 .9-2 2v11c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 13H4V8h16v11z'/%3E%3C/svg%3E") !important; }

/* --- 7. SECTION TITLE --- */
.form-section-title {
    text-align: center;
    margin: 44px 0 20px 0;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: #94a3b8 !important;
    text-transform: uppercase !important;
    letter-spacing: 2px !important;
}

/* --- 8. LAYOUT ROWS --- */
.form-row { display: flex !important; gap: 16px !important; margin-bottom: 16px !important; }
.form-group { flex: 1; text-align: left; display: flex; flex-direction: column; gap: 6px; }
.form-group label {
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #1e293b !important;
    margin-bottom: 6px !important;
    display: block !important;
    letter-spacing: 0.1px;
}

/* --- 9. FORMULARFELDER --- */
.custom-lead-form input[type="text"],
.custom-lead-form input[type="email"],
.custom-lead-form input[type="tel"],
.custom-lead-form input[type="number"],
.custom-lead-form select,
.custom-lead-form textarea {
    background: #eef2f7 !important;
    background-color: #eef2f7 !important;
    border: 1.5px solid #b8c9dc !important;
    border-radius: 10px !important;
    padding: 13px 16px !important;
    font-size: 15px !important;
    color: #1e293b !important;
    width: 100% !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background 0.2s ease !important;
    outline: none !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    box-shadow: inset 0 1px 4px rgba(0,0,0,0.07) !important;
    color-scheme: light !important;
}
.custom-lead-form input::placeholder,
.custom-lead-form textarea::placeholder { color: #7a90a8 !important; font-size: 14px !important; }
.custom-lead-form input:focus,
.custom-lead-form select:focus,
.custom-lead-form textarea:focus {
    background: #ffffff !important;
    background-color: #ffffff !important;
    border-color: #1e3a5f !important;
    box-shadow: 0 0 0 3px rgba(30,58,95,0.12), inset 0 1px 3px rgba(0,0,0,0.04) !important;
}
.custom-lead-form select {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 14px center !important;
    background-size: 16px !important;
    padding-right: 42px !important;
    cursor: pointer !important;
}
.custom-lead-form select:invalid,
.custom-lead-form select option[value=""] { color: #94a3b8 !important; }

/* --- 10. ABSENDEN BUTTON --- */
.absenden-btn {
    width: 100% !important;
    background: #1e3a5f !important;
    background-image: none !important;
    color: #ffffff !important;
    border-radius: 12px !important;
    height: 56px !important;
    border: none !important;
    font-weight: 700 !important;
    font-size: 16px !important;
    letter-spacing: 0.3px !important;
    cursor: pointer !important;
    margin-top: 8px !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 4px 14px rgba(30,58,95,0.2) !important;
}
.absenden-btn:hover {
    background: #16304f !important;
    box-shadow: 0 6px 20px rgba(30,58,95,0.3) !important;
    transform: translateY(-1px) !important;
}
.absenden-btn:active {
    transform: translateY(0px) !important;
    box-shadow: 0 2px 8px rgba(30,58,95,0.2) !important;
}

/* --- 13. ERFOLGSMELDUNG --- */
.success-message {
    background: #f0fdf4 !important;
    color: #16a34a !important;
    border: 1.5px solid #bbf7d0 !important;
    border-radius: 12px !important;
    padding: 20px 24px !important;
    margin-top: 16px !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    text-align: center !important;
    line-height: 1.5 !important;
}
.wpcf7-response-output { display: none !important; }
.wpcf7-honeypot { display: none !important; }

/* --- LANGUAGE SWITCHER --- */
.language-switcher {
    position: absolute !important;
    top: 28px !important;
    right: 60px !important;
    z-index: 3 !important;
    line-height: 1 !important;
}
.language-switcher .lang-btn {
    background: transparent !important;
    border: 2px solid transparent !important;
    border-radius: 8px !important;
    padding: 4px 6px !important;
    font-size: 22px !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    opacity: 0.5 !important;
    display: inline !important;
    float: none !important;
    width: auto !important;
    height: auto !important;
    margin: 0 2px !important;
    vertical-align: middle !important;
}
.language-switcher .lang-btn:hover { opacity: 0.85 !important; transform: scale(1.15) !important; }
.language-switcher .lang-btn.active {
    opacity: 1 !important;
    border-color: #1e3a5f !important;
    background: #f0f6ff !important;
}

/* --- TRUST BAR — table layout, immer nebeneinander --- */
table.trust-bar {
    width: 100% !important;
    border-collapse: collapse !important;
    border-top: 1px solid #e2e8f0 !important;
    margin-top: 20px !important;
    display: table !important;
}
table.trust-bar tr {
    display: table-row !important;
}
table.trust-bar td.trust-item {
    display: table-cell !important;
    text-align: center !important;
    vertical-align: middle !important;
    white-space: nowrap !important;
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #475569 !important;
    padding: 16px 8px !important;
}
table.trust-bar td.trust-item svg {
    display: inline-block !important;
    vertical-align: middle !important;
    margin-right: 5px !important;
    margin-bottom: 1px !important;
}

/* --- TESTIMONIALS --- */
.social-proof {
    display: flex !important;
    gap: 16px !important;
    margin-top: 24px !important;
    flex-wrap: wrap !important;
    border-top: 1px solid #e2e8f0 !important;
    padding-top: 24px !important;
}
.review-item {
    flex: 1 !important;
    min-width: 180px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 12px !important;
    padding: 16px !important;
}
.review-stars {
    color: #f59e0b !important;
    font-size: 14px !important;
    margin-bottom: 8px !important;
    letter-spacing: 2px !important;
}
.review-text {
    font-size: 13px !important;
    color: #475569 !important;
    font-style: italic !important;
    margin: 0 0 8px 0 !important;
    line-height: 1.5 !important;
}
.review-author {
    font-size: 12px !important;
    font-weight: 600 !important;
    color: #1e3a5f !important;
}

/* --- IMPRESSUM --- */
.impressum-box {
    margin-top: 24px !important;
    padding: 16px 20px !important;
    background: #f8fafc !important;
    border: 1px solid #e2e8f0 !important;
    border-radius: 10px !important;
    font-size: 12px !important;
    color: #64748b !important;
    line-height: 1.8 !important;
}
.impressum-box strong {
    color: #1e293b !important;
    font-size: 13px !important;
    display: block !important;
    margin-bottom: 4px !important;
}

/* --- MOBILE --- */
@media (max-width: 640px) {
    .custom-lead-form {
        padding: 80px 16px 28px 16px !important;
        border-radius: 16px !important;
        margin: 0 !important;
    }
    .custom-lead-form::before {
        top: 16px !important;
        left: 16px !important;
        width: 110px !important;
        height: 36px !important;
    }
    .form-tabs, .form-tabs .wpcf7-radio {
        width: 100% !important;
        max-width: 100% !important;
    }
    .form-tabs .wpcf7-list-item-label {
        width: auto !important;
        padding: 10px 12px !important;
        font-size: 12px !important;
    }
    #dynamic-h1 { font-size: 18px !important; }
    .subline { font-size: 13px !important; }
    .insurance-selection { justify-content: flex-start !important; }
    .insurance-selection .wpcf7-list-item-label {
        padding: 9px 12px !important;
        font-size: 12px !important;
    }
    .form-row { flex-direction: column !important; gap: 12px !important; }

    /* Trust Bar — 2x2 Grid auf Mobile */
    table.trust-bar {
        display: block !important;
        width: 100% !important;
    }
    table.trust-bar tr {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }
    table.trust-bar td.trust-item {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: 11px !important;
        padding: 10px 6px !important;
        background: #f8fafc !important;
        border: 1px solid #e2e8f0 !important;
        border-radius: 8px !important;
        text-align: center !important;
    }
    table.trust-bar td.trust-item svg {
        width: 13px !important;
        height: 13px !important;
        flex-shrink: 0 !important;
        margin-right: 4px !important;
    }
    .social-proof {
        flex-direction: column !important;
        gap: 12px !important;
    }
    .impressum-box {
        font-size: 11px !important;
        padding: 12px 14px !important;
    }
}/* End custom CSS */