.elementor-606 .elementor-element.elementor-element-143b039b{--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:-143px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-606 .elementor-element.elementor-element-559b218{--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:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-606 .elementor-element.elementor-element-69050d4{--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:50px;--margin-bottom:50px;--margin-left:0px;--margin-right:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:30%;--padding-right:30%;}.elementor-606 .elementor-element.elementor-element-4ffdf6d .elementor-heading-title{font-size:26px;}/* Start custom CSS for wpforms, class: .elementor-element-80c5e4f */:root,.wpforms-container,body{
  --dmf-accent:#008DD2;        /* bordo attivo, contorno di focus, link */
  --dmf-btn-bg:#008DD2;        /* sfondo del pulsante */
  --dmf-btn-bg-hover:#0A7CB8;
  --dmf-btn-text:#ffffff;      /* testo del pulsante */

  --dmf-ink:#0F1117;           /* etichette */
  --dmf-text:#1F2933;          /* testo digitato */
  --dmf-muted:#5A6675;         /* descrizioni */
  --dmf-border:#DCE3EC;
  --dmf-field-bg:#ffffff;
  --dmf-subtle:#F5F8FB;
  --dmf-error:#B3261E;         /* rosso scuro: 6.4:1 su bianco */
  --dmf-error-bg:#FDF2F1;
  --dmf-ok:#1B5E20;
  --dmf-ok-bg:#F1F8F2;
  --dmf-radius:10px;
  }


body.dm-teal{
  --dmf-accent:#00695F; --dmf-btn-bg:#00695F; --dmf-btn-bg-hover:#004D45;
  --dmf-btn-text:#ffffff;
}

body.dm-sakura{
  --dmf-accent:#9B3D6B; --dmf-btn-bg:#EDA0CB; --dmf-btn-bg-hover:#E188BB;
  --dmf-btn-text:#211A1F;
}

/* ============================================================
   2. CONTENITORE
   ============================================================ */
.wpforms-container{
  max-width:720px !important; margin:0 !important;
  font-family:inherit !important;
}
.wpforms-container *,
.wpforms-container *::before,
.wpforms-container *::after{ box-sizing:border-box !important; }
.wpforms-form{ font-family:inherit !important; }
.wpforms-field{ padding:0 0 1.35rem !important; }
.wpforms-head-container{ margin-bottom:1.6rem !important; }

/* ============================================================
   3. ETICHETTE
   ============================================================ */
.wpforms-field-label{
  display:block !important; margin:0 0 .45rem !important;
  font-family:inherit !important; font-weight:700 !important;
  font-size:.97rem !important; line-height:1.35 !important;
  color:var(--dmf-ink,#0F1117) !important; letter-spacing:-.005em !important;
}

.wpforms-required-label{
  color:var(--dmf-error,#B3261E) !important; font-weight:700 !important;
  margin-left:.15rem !important;
}
.wpforms-required-label::after{
  content:" obbligatorio" !important; font-size:.78rem !important;
  font-weight:600 !important; color:var(--dmf-muted,#5A6675) !important;
  letter-spacing:.02em !important;
}
body.dm-en .wpforms-required-label::after,
html[lang^="en"] .wpforms-required-label::after{ content:" required" !important; }

.wpforms-field-sublabel,
.wpforms-field-description{
  font-size:.87rem !important; line-height:1.5 !important;
  color:var(--dmf-muted,#5A6675) !important; margin:.4rem 0 0 !important;
  font-family:inherit !important;
}

/* ============================================================
   4. CAMPI
   ============================================================ */
.wpforms-form input[type=text],
.wpforms-form input[type=email],
.wpforms-form input[type=tel],
.wpforms-form input[type=url],
.wpforms-form input[type=number],
.wpforms-form input[type=password],
.wpforms-form input[type=date],
.wpforms-form select,
.wpforms-form textarea{
  width:100% !important; max-width:100% !important;
  min-height:50px !important;
  padding:.78rem .95rem !important;
  font-family:inherit !important;
  font-size:1rem !important; line-height:1.5 !important;
  color:var(--dmf-text,#1F2933) !important;
  background:var(--dmf-field-bg,#ffffff) !important;
  border:1.5px solid var(--dmf-border,#DCE3EC) !important;
  border-radius:var(--dmf-radius,10px) !important;
  box-shadow:none !important;
  transition:border-color .15s ease, box-shadow .15s ease !important;
  -webkit-appearance:none !important; appearance:none !important;
}
.wpforms-form textarea{ min-height:150px !important; resize:vertical !important; }

.wpforms-form input::placeholder,
.wpforms-form textarea::placeholder{
  color:#8A93A1 !important; opacity:1 !important;   /* 4.6:1 su bianco */
}

.wpforms-form input:hover,
.wpforms-form select:hover,
.wpforms-form textarea:hover{ border-color:#B9C3D1 !important; }

.wpforms-form input:focus,
.wpforms-form select:focus,
.wpforms-form textarea:focus{
  border-color:var(--dmf-accent,#008DD2) !important;
  box-shadow:0 0 0 3px rgba(0,0,0,.10) !important;
  outline:2px solid transparent !important;   /* visibile in alto contrasto */
  outline-offset:2px !important;
}
.wpforms-form input:focus-visible,
.wpforms-form select:focus-visible,
.wpforms-form textarea:focus-visible{
  outline:3px solid var(--dmf-accent,#008DD2) !important; outline-offset:2px !important;
  box-shadow:none !important;
}


.wpforms-form select{
  background-image:linear-gradient(45deg,transparent 50%,var(--dmf-muted,#5A6675) 50%),
                   linear-gradient(135deg,var(--dmf-muted,#5A6675) 50%,transparent 50%) !important;
  background-position:calc(100% - 20px) calc(50% + 2px),calc(100% - 14px) calc(50% + 2px) !important;
  background-size:6px 6px,6px 6px !important;
  background-repeat:no-repeat !important;
  padding-right:2.6rem !important;
}

/* ============================================================
   5. CASELLE E SCELTE
   ============================================================ */
.wpforms-field-radio ul,
.wpforms-field-checkbox ul,
.wpforms-field-gdpr-checkbox ul{
  list-style:none !important; margin:0 !important; padding:0 !important;
  display:grid !important; gap:.55rem !important;
}
.wpforms-field-radio li,
.wpforms-field-checkbox li,
.wpforms-field-gdpr-checkbox li{
  display:flex !important; align-items:flex-start !important; gap:.65rem !important;
  margin:0 !important;
}
.wpforms-form input[type=checkbox],
.wpforms-form input[type=radio]{
  flex:0 0 auto !important; width:20px !important; height:20px !important;
  margin:.18rem 0 0 !important; accent-color:var(--dmf-accent,#008DD2) !important;
  cursor:pointer !important;
}
.wpforms-field-radio li label,
.wpforms-field-checkbox li label,
.wpforms-field-gdpr-checkbox li label{
  font-family:inherit !important; font-weight:400 !important;
  font-size:.97rem !important; line-height:1.5 !important;
  color:var(--dmf-text,#1F2933) !important; cursor:pointer !important; margin:0 !important;
}
.wpforms-form input[type=checkbox]:focus-visible,
.wpforms-form input[type=radio]:focus-visible{
  outline:3px solid var(--dmf-accent,#008DD2) !important; outline-offset:2px !important;
}

.wpforms-field-gdpr-checkbox{
  background:var(--dmf-subtle,#F5F8FB) !important;
  border:1px solid var(--dmf-border,#DCE3EC) !important;
  border-radius:var(--dmf-radius,10px) !important;
  padding:1rem 1.1rem !important;
}
.wpforms-field-gdpr-checkbox a{
  color:var(--dmf-accent,#008DD2) !important; text-underline-offset:2px !important;
}


.wpforms-form input.wpforms-error,
.wpforms-form select.wpforms-error,
.wpforms-form textarea.wpforms-error{
  border-color:var(--dmf-error,#B3261E) !important;
  border-width:2px !important;
  background:var(--dmf-error-bg,#FDF2F1) !important;
}
.wpforms-form label.wpforms-error,
.wpforms-form em.wpforms-error{
  display:flex !important; align-items:flex-start !important; gap:.4rem !important;
  margin:.45rem 0 0 !important;
  font-family:inherit !important; font-style:normal !important;
  font-size:.88rem !important; font-weight:600 !important;
  line-height:1.45 !important; color:var(--dmf-error,#B3261E) !important;
}
.wpforms-form label.wpforms-error::before,
.wpforms-form em.wpforms-error::before{
  content:"!" !important; flex:0 0 auto !important;
  width:16px !important; height:16px !important; margin-top:.1rem !important;
  border-radius:50% !important; background:var(--dmf-error,#B3261E) !important;
  color:#fff !important; font-size:.72rem !important; font-weight:700 !important;
  line-height:16px !important; text-align:center !important;
}
.wpforms-error-container{
  background:var(--dmf-error-bg,#FDF2F1) !important;
  border:1px solid var(--dmf-error,#B3261E) !important;
  border-left-width:4px !important;
  border-radius:0 var(--dmf-radius,10px) var(--dmf-radius,10px) 0 !important;
  padding:.95rem 1.1rem !important; margin:0 0 1.4rem !important;
  color:var(--dmf-error,#B3261E) !important; font-family:inherit !important;
  font-size:.95rem !important; font-weight:600 !important;
}

/* ============================================================
   7. PULSANTE
   ============================================================ */
.wpforms-submit-container{ padding-top:.4rem !important; }
.wpforms-form button[type=submit],
.wpforms-form button.wpforms-submit{
  display:inline-flex !important; align-items:center !important; justify-content:center !important;
  min-height:52px !important; padding:.9rem 2rem !important;
  font-family:inherit !important; font-weight:700 !important;
  font-size:1rem !important; line-height:1 !important;
  color:var(--dmf-btn-text,#ffffff) !important;
  background:var(--dmf-btn-bg,#008DD2) !important;
  border:2px solid var(--dmf-btn-bg,#008DD2) !important;
  border-radius:var(--dmf-radius,10px) !important;
  box-shadow:none !important; cursor:pointer !important;
  transition:background .15s ease, transform .15s ease !important;
}
.wpforms-form button[type=submit]:hover{
  background:var(--dmf-btn-bg-hover,#0A7CB8) !important;
  border-color:var(--dmf-btn-bg-hover,#0A7CB8) !important;
  color:var(--dmf-btn-text,#ffffff) !important;
  transform:translateY(-2px) !important;
}
.wpforms-form button[type=submit]:focus-visible{
  outline:3px solid var(--dmf-accent,#008DD2) !important; outline-offset:3px !important;
}
.wpforms-form button[type=submit]:disabled,
.wpforms-form button[type=submit].wpforms-disabled{
  opacity:.55 !important; cursor:not-allowed !important; transform:none !important;
}

/* ============================================================
   8. CONFERMA
   ============================================================ */
.wpforms-confirmation-container-full,
div.wpforms-confirmation-container-full{
  background:var(--dmf-ok-bg,#F1F8F2) !important;
  border:1px solid #C6E0C8 !important;
  border-left:4px solid var(--dmf-ok,#1B5E20) !important;
  border-radius:0 var(--dmf-radius,10px) var(--dmf-radius,10px) 0 !important;
  padding:1.25rem 1.35rem !important; margin:0 !important;
  font-family:inherit !important; color:var(--dmf-text,#1F2933) !important;
}
.wpforms-confirmation-container-full p{ margin:0 !important; }

/* ============================================================
   9. VARIE
   ============================================================ */
.wpforms-field-row{ display:grid !important; gap:0 1rem !important;
  grid-template-columns:1fr 1fr !important; }
@media (max-width:600px){
  .wpforms-field-row{ grid-template-columns:1fr !important; }
  .wpforms-form button[type=submit]{ width:100% !important; }
}
.wpforms-page-indicator{ font-family:inherit !important; }
.wpforms-page-indicator-page-progress{ background:var(--dmf-accent,#008DD2) !important; }

@media (prefers-reduced-motion:reduce){
  .wpforms-container *{ transition:none !important; }
  .wpforms-form button[type=submit]:hover{ transform:none !important; }
}
@media (prefers-contrast:more){
  .wpforms-form input,
  .wpforms-form select,
  .wpforms-form textarea{ border-width:2px !important; border-color:#4A5461 !important; }
}/* End custom CSS */