.elementor-10923 .elementor-element.elementor-element-4fabfdf{--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;--margin-top:45px;--margin-bottom:65px;--margin-left:0px;--margin-right:0px;}.elementor-10923 .elementor-element.elementor-element-9aea4e7{text-align:center;}.elementor-10923 .elementor-element.elementor-element-9aea4e7 .elementor-heading-title{font-weight:700;}.elementor-10923 .elementor-element.elementor-element-af064ac > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-10923 .elementor-element.elementor-element-af064ac{text-align:start;font-size:22px;}.elementor-10923 .elementor-element.elementor-element-af064ac p{margin-block-end:30px;}.elementor-10923 .elementor-element.elementor-element-54a29ec{text-align:center;}.elementor-10923 .elementor-element.elementor-element-54a29ec .elementor-heading-title{font-family:"Caveat", Sans-serif;font-weight:700;line-height:35px;}.elementor-10923 .elementor-element.elementor-element-298a76f .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-10923 .elementor-element.elementor-element-298a76f .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-10923 .elementor-element.elementor-element-298a76f .elementor-field-group.recaptcha_v3-bottomleft, .elementor-10923 .elementor-element.elementor-element-298a76f .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-10923 .elementor-element.elementor-element-298a76f .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-10923 .elementor-element.elementor-element-298a76f .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-10923 .elementor-element.elementor-element-298a76f .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-10923 .elementor-element.elementor-element-298a76f .elementor-field-type-html{padding-bottom:0px;}.elementor-10923 .elementor-element.elementor-element-298a76f .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-10923 .elementor-element.elementor-element-298a76f .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-10923 .elementor-element.elementor-element-298a76f .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-10923 .elementor-element.elementor-element-298a76f .elementor-button[type="submit"]{color:#ffffff;}.elementor-10923 .elementor-element.elementor-element-298a76f .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-10923 .elementor-element.elementor-element-298a76f .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-10923 .elementor-element.elementor-element-298a76f .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-10923 .elementor-element.elementor-element-298a76f .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-10923 .elementor-element.elementor-element-298a76f .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-10923 .elementor-element.elementor-element-298a76f .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-10923 .elementor-element.elementor-element-298a76f{--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;}:root{--page-title-display:none;}/* Start custom CSS for heading, class: .elementor-element-54a29ec */.highlight {
  background-image: linear-gradient(89.58deg, #3186FF 50.14%, #346BF0 72.225%, #4EA0FF 99.775%);
  background-size: 100% 38%;
  background-position: bottom;
  background-repeat: no-repeat;
  display: inline;
}/* End custom CSS */
/* Start custom CSS for form, class: .elementor-element-298a76f *//* ================================================================
   FORM ELEMENTOR
   ================================================================ */

/* Wrapper generale del form */
.elementor-form .elementor-form-fields-wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 0 25px;
  gap: 8px;
  border-radius: 16px;
}

/* Campi input */
.elementor-form .elementor-field-group {
  flex: 1 1 auto;
  min-width: 120px;
  margin: 0 !important;
}
.elementor-form .elementor-field {
  border: 1px solid #1a1a2e !important;
  outline: none !important;
  box-shadow: none !important;
  background: #ffffff !important;
  padding: 12px 16px !important;
  font-size: 15px;
  color: #1a1a2e;
  border-radius: 16px;
}
.elementor-form .elementor-field:focus {
  border-color: #3b5bdb !important;
  box-shadow: none !important;
}
.elementor-form .elementor-field::placeholder {
  color: #000;
}

/* Checkbox / Acceptance - testo grigio chiaro */
.elementor-form .elementor-field-type-checkbox label,
.elementor-form .elementor-field-type-acceptance label {
  color: #1D1D1F !important;
}

/* "Privacy Policy" bianco e bold */
.elementor-form .elementor-field-type-checkbox label a,
.elementor-form .elementor-field-type-acceptance label a {
  color: #000 !important;
  font-weight: 700 !important;
}

/* ================================================================
   BOTTONE SUBMIT — stile Gemini con gradiente animato
   ================================================================ */

/* Posizionamento nel layout del form */
.elementor-form .elementor-field-type-submit {
  flex: 0 0 auto;
  margin: 15px auto 0 !important;
}

/* Struttura base del bottone */
.elementor-form .elementor-button {
  position: relative !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;

  height: 48px;
  padding: 0 32px !important;
  border-radius: 60px !important;
  border: none !important;

  /* Sfondo trasparente: ci pensa il ::before con il gradiente */
  background: transparent !important;
  box-shadow: none !important;

  color: #ffffff !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  cursor: pointer;
  white-space: nowrap;
}

/* Pseudo-elemento: gradiente largo il doppio,
   inizialmente shiftato a sinistra di metà (nascosto) */
.elementor-form .elementor-button::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 200%;
  border-radius: 60px;
  background: linear-gradient(
    89.58deg,
    #3186ff 50.14%,
    #346bf0 72.225%,
    #4ea0ff 99.775%
  );
  transition: transform 0.5s;
  pointer-events: none;
  z-index: 1;
  transform: translate(-50%); /* posizione di default: nascosto a sx */
}

/* Al hover: il gradiente scorre nella posizione visibile */
.elementor-form .elementor-button:hover::before {
  transform: translate(0);
}

/* Il wrapper del testo deve stare sopra al gradiente */
.elementor-form .elementor-button .elementor-button-content-wrapper {
  position: relative;
  z-index: 2;
}

@media (max-width: 480px) {
  .elementor-form .elementor-form-fields-wrapper {
    padding: 0 8px;
  }
}

/* ================================================================
   MESSAGGIO DI SUCCESSO
   ================================================================ */
.elementor-form .elementor-message.elementor-message-success {
  margin-top: 20px !important;
  padding: 10px 18px;
  background-color: #eef4ff;
  border-left: 3px solid #3b5bdb;
  border-radius: 8px;
  color: #1a1a2e;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.01em;
}/* End custom CSS */