form[data-ef-public-lead] {
    box-sizing:border-box;
    background:#fff;
    color:#131e2f;
    border-radius:14px;
    padding:28px;
    font:400 14px/1.5 Montserrat,Arial,sans-serif;
    max-width:100%;
    min-width:0;
}
form[data-ef-public-lead] * {
    box-sizing:border-box;
}
form[data-ef-public-lead] h2,form[data-ef-public-lead] h3 {
    font:600 24px/1.25 Rubik,Arial,sans-serif;
    color:#131e2f;
    margin:0 0 16px;
}
form[data-ef-public-lead] .ef-required-note {
    font-size:13px;
    margin:0 0 16px;
    color:#526071;
}
form[data-ef-public-lead] .ef-public-fields {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px 16px;
    margin-bottom:16px;
}
form[data-ef-public-lead] .ef-form-field {
    min-width:0;
    margin:0;
}
form[data-ef-public-lead] .ef-public-wide {
    grid-column:1/-1;
}
form[data-ef-public-lead] .ef-form-field label {
    display:block;
    color:#243346;
    font-family:Montserrat,Arial,sans-serif;
    font-size:14px;
    font-weight:600;
    line-height:1.4;
    margin:0 0 6px;
}
form[data-ef-public-lead] .ef-form-field input,form[data-ef-public-lead] .ef-form-field select,form[data-ef-public-lead] .ef-form-field textarea {
    display:block;
    width:100%;
    min-width:0;
    min-height:44px;
    border:1px solid #cbd3dc;
    border-radius:6px;
    background:#fff;
    color:#131e2f;
    padding:10px;
    font:400 16px/1.4 Montserrat,Arial,sans-serif;
    margin:0;
    box-shadow:none;
}
form[data-ef-public-lead] .ef-form-field textarea {
    resize:vertical;
}
form[data-ef-public-lead] :focus-visible {
    outline:3px solid #6096d3;
    outline-offset:2px;
}
form[data-ef-public-lead] .ef-consent-box[hidden] { display:none!important; }
form[data-ef-public-lead] .ef-consent-box {
    margin:18px 0 12px;
}
form[data-ef-public-lead] .ef-consent-label {
    display:flex;
    gap:10px;
    align-items:flex-start;
    font-size:13px;
    font-weight:400;
    line-height:1.55;
    color:#526071;
    cursor:pointer;
    margin:0;
}
form[data-ef-public-lead] .ef-consent-label input {
    appearance:auto;
    flex:0 0 18px;
    width:18px;
    height:18px;
    min-height:18px;
    margin:3px 0 0;
    accent-color:#2a5f9c;
}
form[data-ef-public-lead] .ef-privacy-note {
    font-size:13px;
    line-height:1.55;
    color:#526071;
    margin:0 0 18px;
}
form[data-ef-public-lead] .ef-privacy-note a {
    color:#285b96;
    text-decoration:underline;
}
form[data-ef-public-lead] button[type=submit] {
    display:block;
    width:100%;
    min-height:48px;
    margin:0;
    padding:12px 18px;
    border:0;
    border-radius:8px;
    background:#2a5f9c;
    color:#fff;
    font:600 16px/1.4 Montserrat,Arial,sans-serif;
    cursor:pointer;
    text-transform:none;
    letter-spacing:normal;
}
form[data-ef-public-lead] button[type=submit]:disabled {
    opacity:.65;
    cursor:wait;
}
form[data-ef-public-lead] .ef-field-error {
    display:none;
    font-size:13px;
    color:#a32929;
    margin-top:4px;
}
form[data-ef-public-lead] .ef-field-error.visible {
    display:block;
}
form[data-ef-public-lead] .ef-invalid {
    border-color:#a32929!important;
}
@media(max-width:600px) {
    form[data-ef-public-lead] {
        padding:22px 18px;
    }
    form[data-ef-public-lead] .ef-public-fields {
        grid-template-columns:minmax(0,1fr);
    }
}
form[data-ef-public-lead] .ef-form-field select {
    appearance:auto;
    background-image:none;
}

/* Searchable controls retain the shared form's dimensions and validation. */
form[data-ef-public-lead] .ef-form-field {position:relative}
form[data-ef-public-lead] select.select2-hidden-accessible {
    position:absolute!important;width:1px!important;min-width:0!important;
    height:1px!important;min-height:0!important;padding:0!important;border:0!important;
}
form[data-ef-public-lead] .select2-container {max-width:100%;font:400 16px/1.4 Montserrat,Arial,sans-serif;text-align:left}
form[data-ef-public-lead] .select2-container .select2-selection--single {
    height:44px;border:1px solid #cbd3dc;border-radius:6px;background:#fff;
}
form[data-ef-public-lead] .select2-container .select2-selection__rendered {line-height:42px;padding:0 30px 0 10px;color:#131e2f}
form[data-ef-public-lead] .select2-container .select2-selection__placeholder {color:#526071}
form[data-ef-public-lead] .select2-container .select2-selection__arrow {height:42px;right:7px}
form[data-ef-public-lead] .select2-container--focus .select2-selection,
form[data-ef-public-lead] .select2-container--open .select2-selection {border-color:#2a5f9c;box-shadow:0 0 0 2px #6096d333}
form[data-ef-public-lead] .ef-invalid + .select2-container .select2-selection {border-color:#a32929}
form[data-ef-public-lead] .ef-select-dropdown {border:1px solid #aebdce;background:#fff;color:#131e2f;box-shadow:0 8px 20px #131e2f22}
form[data-ef-public-lead] .ef-select-dropdown .select2-search {padding:8px}
form[data-ef-public-lead] .ef-select-dropdown .select2-search__field {min-height:44px;padding:10px;font-size:16px;border:1px solid #aebdce;border-radius:4px}
form[data-ef-public-lead] .ef-select-dropdown .select2-results__option {padding:11px 12px;min-height:44px;margin:0;font-size:14px;line-height:1.5}
form[data-ef-public-lead] .ef-select-dropdown .select2-results__option--highlighted[aria-selected] {background:#2a5f9c;color:#fff}
form[data-ef-public-lead] .ef-select-dropdown .select2-results__options {max-height:220px;margin:0;padding:0;list-style:none}
