.elementor-1187 .elementor-element.elementor-element-110a3cf{--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-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.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{color:var( --e-global-color-text );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{color:var( --e-global-color-text );}.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 .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.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-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.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-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group{padding-right:calc( 2px/2 );padding-left:calc( 2px/2 );margin-bottom:10px;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-form-fields-wrapper{margin-left:calc( -2px/2 );margin-right:calc( -2px/2 );margin-bottom:-10px;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-labels-inline .elementor-field-group > label{padding-left:9px;}body:not(.rtl) .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-labels-inline .elementor-field-group > label{padding-right:9px;}body .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-labels-above .elementor-field-group > label{padding-bottom:9px;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-html{padding-bottom:0px;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-button[type="submit"]{color:#ffffff;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-1187 .elementor-element.elementor-element-15d6c43 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-1187 .elementor-element.elementor-element-15d6c43{--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;}/* Start custom CSS for form, class: .elementor-element-15d6c43 *//* =========================================
   FORM ELEMENTOR - STILE PROFESSIONALE
   Versione ottimizzata: select pulita + acceptance ordinate
========================================= */

/* Form generale */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-form{
    display:flex;
    flex-wrap:wrap;
    gap:16px;
}

/* Gruppi campo */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group{
    width:100%;
    margin-bottom:0 !important;
    position:relative;
}

/* Label */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
    font-weight:700;
    color:#1c2740;
    letter-spacing:0.2px;
}

/* =========================
   CAMPI STANDARD
========================= */
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="text"],
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="email"],
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="tel"],
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="number"],
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="url"],
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="password"],
.elementor-1187 .elementor-element.elementor-element-15d6c43 textarea,
.elementor-1187 .elementor-element.elementor-element-15d6c43 select{
    width:100%;
    min-height:54px;
    padding:14px 18px !important;
    border-radius:14px !important;
    border:1px solid #d9e2ef !important;
    background:#ffffff !important;
    color:#1f2937 !important;
    font-size:15px !important;
    line-height:1.4 !important;
    box-shadow:0 6px 18px rgba(15,23,42,0.04);
    transition:border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
    outline:none !important;
    box-sizing:border-box !important;
}

/* Evita che Elementor applichi box strani ai campi */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field{
    box-sizing:border-box !important;
}

/* Textarea */
.elementor-1187 .elementor-element.elementor-element-15d6c43 textarea{
    min-height:130px;
    resize:vertical;
    padding-top:16px !important;
}

/* Placeholder */
.elementor-1187 .elementor-element.elementor-element-15d6c43 input::placeholder,
.elementor-1187 .elementor-element.elementor-element-15d6c43 textarea::placeholder{
    color:#94a3b8 !important;
    opacity:1;
    font-size:14px;
}

/* Hover campi */
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="text"]:hover,
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="email"]:hover,
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="tel"]:hover,
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="number"]:hover,
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="url"]:hover,
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="password"]:hover,
.elementor-1187 .elementor-element.elementor-element-15d6c43 textarea:hover,
.elementor-1187 .elementor-element.elementor-element-15d6c43 select:hover{
    border-color:#bfd1ea !important;
    box-shadow:0 10px 24px rgba(30,64,175,0.08);
}

/* Focus campi */
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="text"]:focus,
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="email"]:focus,
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="tel"]:focus,
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="number"]:focus,
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="url"]:focus,
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="password"]:focus,
.elementor-1187 .elementor-element.elementor-element-15d6c43 textarea:focus,
.elementor-1187 .elementor-element.elementor-element-15d6c43 select:focus{
    border-color:#2563eb !important;
    background:#ffffff !important;
    box-shadow:0 0 0 4px rgba(37,99,235,0.12), 0 12px 26px rgba(37,99,235,0.10);
}

/* =========================
   SELECT
========================= */

/* Wrapper select Elementor */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group .elementor-select-wrapper{
    position:relative;
    width:100%;
}

/* Rimuove eventuali icone/frecce native Elementor */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group .select-caret-down-wrapper,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group .eicon-caret-down{
    display:none !important;
}

/* Select pulita */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-select-wrapper select,
.elementor-1187 .elementor-element.elementor-element-15d6c43 select{
    appearance:none !important;
    -webkit-appearance:none !important;
    -moz-appearance:none !important;
    padding-right:52px !important;
    background-image:none !important;
}

/* Freccia custom */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group .elementor-select-wrapper::after{
    content:"";
    position:absolute;
    top:50%;
    right:18px;
    width:10px;
    height:10px;
    border-right:2px solid #2563eb;
    border-bottom:2px solid #2563eb;
    transform:translateY(-60%) rotate(45deg);
    pointer-events:none;
    z-index:2;
}

/* Fix IE / Edge vecchi */
.elementor-1187 .elementor-element.elementor-element-15d6c43 select::-ms-expand{
    display:none;
}

/* =========================
   CHECKBOX / RADIO / ACCEPTANCE
========================= */

/* Reset wrapper */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-checkbox,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-radio,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-acceptance,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-checkbox .elementor-field-subgroup,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-radio .elementor-field-subgroup,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-acceptance .elementor-acceptance-field{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    min-height:auto !important;
    padding:0 !important;
}

/* Box esterno */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-checkbox .elementor-field-subgroup,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-radio .elementor-field-subgroup,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-acceptance .elementor-acceptance-field{
    display:block;
    width:100%;
    background:#f8fbff !important;
    border:1px solid #dbe6f3 !important;
    border-radius:14px !important;
    padding:14px 16px !important;
    box-sizing:border-box !important;
    overflow:hidden;
}

/* Riga singola */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-option,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-acceptance-field label{
    display:flex !important;
    align-items:flex-start !important;
    gap:10px !important;
    margin:0 !important;
    width:100%;
}

/* Checkbox / radio */
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="checkbox"],
.elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="radio"]{
    flex:0 0 18px;
    width:18px !important;
    height:18px !important;
    min-width:30px !important;
    min-height:18px !important;
    margin:2px 0 0 0 !important;
    padding:0 !important;
    border:none !important;
    box-shadow:none !important;
    accent-color:#2563eb;
    transform:none !important;
    background:transparent !important;
}

/* Testo accanto al checkbox */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-option label,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-acceptance-field label span,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-option span{
    display:block !important;
    flex:1 1 auto;
    font-size:13px !important;
    line-height:1.6 !important;
    color:#4b5563 !important;
    font-weight:500;
    margin:0 !important;
    word-break:break-word;
}

/* Rimuove eventuali box interni strani */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-acceptance-field > span,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-option > span{
    background:transparent !important;
    border:none !important;
    padding:0 !important;
    margin:0 !important;
    box-shadow:none !important;
}

/* Link */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-option a,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-acceptance-field a{
    color:#1d4ed8 !important;
    font-weight:700;
    text-decoration:none;
}

.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-option a:hover,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-acceptance-field a:hover{
    text-decoration:underline;
}

/* =========================
   SUBMIT
========================= */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-submit{
    margin-top:6px;
    display:flex;
    justify-content:flex-start;
}

.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-submit .elementor-button,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-submit button[type="submit"]{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:auto !important;
    min-width:220px;
    max-width:100%;
    min-height:54px;
    padding:14px 28px !important;
    border:none !important;
    border-radius:14px !important;
    background:linear-gradient(135deg,#123a7a 0%,#2563eb 100%) !important;
    color:#ffffff !important;
    font-size:15px !important;
    font-weight:800 !important;
    letter-spacing:0.2px;
    line-height:1.2;
    box-shadow:0 14px 30px rgba(37,99,235,0.22);
    transition:transform 0.25s ease, box-shadow 0.25s ease, filter 0.25s ease;
    box-sizing:border-box !important;
}

.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-submit .elementor-button:hover,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-submit button[type="submit"]:hover{
    transform:translateY(-2px);
    box-shadow:0 18px 34px rgba(37,99,235,0.28);
    filter:brightness(1.03);
}

.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-submit .elementor-button:active,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-submit button[type="submit"]:active{
    transform:translateY(0);
    box-shadow:0 10px 20px rgba(37,99,235,0.20);
}

/* =========================
   MESSAGGI
========================= */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-message{
    margin-top:14px;
    font-size:14px;
    border-radius:14px;
    padding:12px 16px;
}

/* Errori */
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group.elementor-has-error input,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group.elementor-has-error textarea,
.elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group.elementor-has-error select{
    border-color:#dc2626 !important;
    box-shadow:0 0 0 4px rgba(220,38,38,0.10);
}

/* =========================
   RESPONSIVE
========================= */
@media (max-width:767px){
    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-form{
        gap:14px;
    }

    .elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="text"],
    .elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="email"],
    .elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="tel"],
    .elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="number"],
    .elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="url"],
    .elementor-1187 .elementor-element.elementor-element-15d6c43 input[type="password"],
    .elementor-1187 .elementor-element.elementor-element-15d6c43 textarea,
    .elementor-1187 .elementor-element.elementor-element-15d6c43 select{
        min-height:50px;
        padding:13px 15px !important;
        font-size:14px !important;
        border-radius:13px !important;
    }

    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-select-wrapper select,
    .elementor-1187 .elementor-element.elementor-element-15d6c43 select{
        padding-right:46px !important;
    }

    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-group .elementor-select-wrapper::after{
        right:16px;
        width:9px;
        height:9px;
    }

    .elementor-1187 .elementor-element.elementor-element-15d6c43 textarea{
        min-height:115px;
    }

    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-submit{
        justify-content:stretch;
    }

    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-submit .elementor-button,
    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-submit button[type="submit"]{
        width:100% !important;
        min-width:100%;
        min-height:52px;
        font-size:15px !important;
        border-radius:13px !important;
    }

    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-checkbox .elementor-field-subgroup,
    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-radio .elementor-field-subgroup,
    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-type-acceptance .elementor-acceptance-field{
        padding:12px 14px !important;
    }

    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-field-option label,
    .elementor-1187 .elementor-element.elementor-element-15d6c43 .elementor-acceptance-field label{
        gap:9px;
    }
}/* End custom CSS */