.elementor-356 .elementor-element.elementor-element-d44dc10{--display:flex;--min-height:100vh;--justify-content:center;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:160px;--padding-bottom:80px;--padding-left:80px;--padding-right:80px;}.elementor-356 .elementor-element.elementor-element-d44dc10.e-con{--align-self:center;}.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-356 .elementor-element.elementor-element-e4fbfa2{width:var( --container-widget-width, 700px );max-width:700px;padding:48px 48px 48px 48px;--container-widget-width:700px;--container-widget-flex-grow:0;border-style:solid;border-width:1px 1px 1px 1px;border-color:#36454F;border-radius:24px 24px 24px 24px;--e-form-steps-indicators-spacing:29px;--e-form-steps-indicator-progress-color:#4FADD5;--e-form-steps-indicator-progress-background-color:#E8E8E8;--e-form-steps-indicator-progress-height:20px;--e-form-steps-indicator-progress-border-radius:0px;--e-form-steps-indicator-progress-meter-color:#E8E8E8;}.elementor-356 .elementor-element.elementor-element-e4fbfa2.elementor-element{--align-self:center;--flex-grow:0;--flex-shrink:0;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group{padding-right:calc( 8px/2 );padding-left:calc( 8px/2 );margin-bottom:16px;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-form-fields-wrapper{margin-left:calc( -8px/2 );margin-right:calc( -8px/2 );margin-bottom:-16px;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-labels-inline .elementor-field-group > label{padding-left:16px;}body:not(.rtl) .elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-labels-inline .elementor-field-group > label{padding-right:16px;}body .elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-labels-above .elementor-field-group > label{padding-bottom:16px;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group > label, .elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-subgroup label{color:#36454F;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group > label{font-family:"Outfit", Sans-serif;font-size:16px;font-weight:400;line-height:24px;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-type-html{padding-bottom:16px;color:#36454F;font-family:"Outfit", Sans-serif;font-size:16px;font-weight:400;line-height:24px;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-field{color:#36454F;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-field, .elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-subgroup label{font-family:"Outfit", Sans-serif;font-size:16px;font-weight:400;line-height:24px;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;border-color:#C7CBCE;border-radius:8px 8px 8px 8px;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;border-color:#C7CBCE;border-radius:8px 8px 8px 8px;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-select-wrapper::before{color:#C7CBCE;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-button{font-family:"Outfit", Sans-serif;font-size:16px;font-weight:400;line-height:24px;border-radius:8px 8px 8px 8px;padding:08px 16px 8px 16px;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .e-form__buttons__wrapper__button-next{background-color:#4FADD5;color:#ffffff;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-button[type="submit"]{background-color:#4FADD5;color:#ffffff;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .e-form__buttons__wrapper__button-previous{background-color:#4FADD5;color:#ffffff;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .e-form__buttons__wrapper__button-next:hover{background-color:#367691;color:#ffffff;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-button[type="submit"]:hover{background-color:#367691;color:#ffffff;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .e-form__buttons__wrapper__button-previous:hover{background-color:#367691;color:#ffffff;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-message{font-family:"Outfit", Sans-serif;font-weight:400;}.elementor-356 .elementor-element.elementor-element-e4fbfa2 .e-form__indicators__indicator__progress__meter{font-family:"Outfit", Sans-serif;font-weight:500;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-356 .elementor-element.elementor-element-d44dc10{--padding-top:160px;--padding-bottom:80px;--padding-left:40px;--padding-right:40px;}}@media(max-width:767px){.elementor-356 .elementor-element.elementor-element-d44dc10{--padding-top:160px;--padding-bottom:0px;--padding-left:20px;--padding-right:20px;}.elementor-356 .elementor-element.elementor-element-e4fbfa2{padding:40px 40px 40px 40px;}}/* Start custom CSS for form, class: .elementor-element-e4fbfa2 */.elementor-element-e4fbfa2 .elementor-field-option {
    position: relative;
    display: flex;
    flex: 1 1 0;
    min-width: 0;
    width: auto;
    box-sizing: border-box;
    font-family: 'Outfit';
}



/* La label diventa il pulsante vero e proprio */
.elementor-element-e4fbfa2 .elementor-field-option label {
    color: #2E2E2E;
    font-family: 'Outfit' !important;
    font-size: 16px !important;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
    padding: 12px 16px;
    cursor: pointer;
    margin: 0;
    border-radius: 8px;
    border: 1px solid #C7CBCE;
    background: #ffffff;
    white-space: nowrap;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
}



/* Traccia di sfondo: barra sottile e squadrata, come da Figma */
.e-form__indicators--type-progress_bar .e-form__indicators__indicator__progress {
    height: 4px;
    background-color: #eeeeee;
    border-radius: 0;
    overflow: hidden;
    position: relative;
    /*margin-top: 50px;*/
}
/* Barra piena: blu del brand, nessun testo dentro */
.e-form__indicators--type-progress_bar .e-form__indicators__indicator__progress__meter {
    height: 100%;
    background-color: #4fadd5;
    border-radius: 0;
    transition: width 0.3s ease;
    /* Nasconde la percentuale nativa dentro la barra (verrà mostrata sotto, come da Figma) */
    font-size: 0;
}
/* Testo "Avanzamento XX%" sotto la barra, creato via JS */
.progress-avanzamento-testo {
    font-size: 16px;
    line-height: 1.5;
    color: #56636B;
    width: 100%;
    margin: 8px 0 0 0;
    font-family: 'Outfit';
}
.progress-avanzamento-testo strong {
    font-weight: 700;
    font-family: 'Outfit';
}
.e-form__indicators {
    display: flex;
    flex-direction: column;
}
.e-form__indicators--type-progress_bar {
    margin-bottom: 32px;
}
.elementor-button.elementor-size-sm.e-form__buttons__wrapper__button.e-form__buttons__wrapper__button-previous {
    margin-bottom: 20px;
    background-color: transparent;
    color: black;
    padding: 0px;
    font-weight: normal;
    position: absolute; 
    top: 0; 
    left: 0;
}
.elementor-button.elementor-size-sm.e-form__buttons__wrapper__button.e-form__buttons__wrapper__button-previous:hover {
    margin-bottom: 20px;
    background-color: transparent;
    color: black;
    padding: 0px;
    font-weight: normal;
}
.e-form__buttons {
    position: static !important;
}
.elementor-form {
    position: relative !important;
}
.elementor-field-type-step {
    position: static !important;
}

.elementor-element-e4fbfa2 .elementor-field-option input[type="radio"]:active ~ label{
    border-color: #4FADD5;
}

.elementor-element-e4fbfa2 .elementor-field-option input[type="radio"]:checked ~ label{
    border:1px solid #36454F !important;
    color:  #4FADD5;
}

.elementor-element-e4fbfa2 .elementor-field-option input[type="radio"]:hover ~ label {
    border-radius: 8px;
    border: 1px solid #36454F;
}

.elementor-button.elementor-size-sm.e-form__buttons__wrapper__button.e-form__buttons__wrapper__button-previous {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: 'Outfit';
    color: #56636B;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px; 
}

.elementor-button.elementor-size-sm.e-form__buttons__wrapper__button.e-form__buttons__wrapper__button-previous:hover {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-family: 'Outfit';
    color: #56636B;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px; 
}


.elementor-button.elementor-size-sm.e-form__buttons__wrapper__button.e-form__buttons__wrapper__button-previous::before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16' fill='none'%3E%3Cpath d='M10 4.00015C10 4.00015 6.00001 6.94609 6 8.00016C5.99999 9.05422 10 12.0001 10 12.0001' stroke='%2356636B' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
}
input{
    font-family: 'Outfit';
}

.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){
    padding: 12px 16px;
}

.elementor-field-subgroup.elementor-subgroup-inline .elementor-field-option {
    padding-inline-end: 0;
}

.elementor-field-subgroup.elementor-subgroup-inline {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    gap: 8px;
}

@media (min-width: 768px) {
    .elementor-column.elementor-col-100, .elementor-column[data-col="100"] {
        width: 100%;
    }
}

.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-field, .elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-subgroup label{
    width: 100%;
}

.elementor-field-subgroup{
    display: flex;
    flex-wrap: nowrap;
}

.title{
    font-family: Outfit;
font-size: 36px;
font-style: normal;
font-weight: 700;
line-height: 44px;
color: #36454F;
margin-block-start: 0px;
    margin-block-end:0px;
}

.sottotitolo{
    color:  #36454F;
    font-family: Outfit;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 24px;
}

.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group {
    margin-bottom: 16px;}
    
.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-field:not(.elementor-select-wrapper) {
    border-radius: 8px;
    border: 1px solid #C7CBCE;
}

.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-field:not(.elementor-select-wrapper):hover {
    border-radius: 8px;
    border: 1px solid #36454F;
}

.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-field:not(.elementor-select-wrapper):focus {
    border-radius: 8px;
    border: 1px solid #4FADD5 !important;
    outline: none;
}

.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-field:not(.elementor-select-wrapper):focus.cf-has-value {
    border: 1px solid #36454F !important;
}

.e-form__buttons {
    width: 100%;
}

.elementor-field-group.e-form__buttons__wrapper.elementor-field-type-next {
    width: 100%;
}

.elementor-button.elementor-size-sm.e-form__buttons__wrapper__button.e-form__buttons__wrapper__button-next {
    width: 100%;
}

.elementor-field-type-step:has(.elementor-field-option input[type="radio"]) .e-form__buttons__wrapper__button-next {
    display: none;
}

.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-group .elementor-field, .elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-subgroup label{
    font-size: 16px !important;
    line-height: 24px !important;
    padding: 12px 16px;
}

.elementor-field-group.e-form__buttons__wrapper.elementor-field-type-previous {
    flex: 0 0 0 !important;
    width: 0 !important;
    min-width: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
}

@media(max-width:1024px){
    .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group .elementor-field-subgroup, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>.elementor-select-wrapper, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>input, .elementor-form-fields-wrapper.elementor-labels-above .elementor-field-group>textarea {
    flex-basis: 100%;
    max-width: 100%;
    display: flex;
    flex-direction: column;
}
}


.elementor-field-type-acceptance.elementor-field-group .elementor-field-subgroup .elementor-field-option label {
    font-size: 12px !important;
    color:  #36454F !important;
font-family: 'Outfit' !important;
font-style: normal;
font-weight: 400 !important;
line-height: 16px !important; 
}

.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label {
    transition: none !important;
}

.elementor-356 .elementor-element.elementor-element-e4fbfa2 .elementor-field-type-acceptance .elementor-field-subgroup .elementor-field-option label::before {
    content: none !important;
    display: none !important;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-2ddd526 */.elementor-356 .elementor-element.elementor-element-2ddd526 .grb-text-label {
    color: #000000;
}/* End custom CSS */