#join-form .wpcf7, 
#join-form .wpcf7 *{ box-sizing:border-box; }

#join-form .wpcf7 form{ margin:0; }

#join-form .wpcf7 p{ margin:0 0 6px; padding:0; }

#join-form .wpcf7 label{ display:block; font-weight:600; margin:0 0 5px; }

#join-form .wpcf7-form-control-wrap{ display:block; width:100%; }

#join-form .wpcf7 input[type="text"],
#join-form .wpcf7 input[type="email"],
#join-form .wpcf7 input[type="tel"],
#join-form .wpcf7 select,
#join-form .wpcf7 textarea{
  display:block;
  width:100%;
  max-width:100%;
  min-width:0;
  padding:6px 10px;
  line-height:1.1;
  border:1px solid rgba(0,0,0,.14);
  border-radius:10px;
  background:#fff;
  outline:0;
}

#join-form .wpcf7 input:focus,
#join-form .wpcf7 select:focus,
#join-form .wpcf7 textarea:focus{
  border-color:rgba(46,125,50,.60);
  box-shadow:0 0 0 3px rgba(46,125,50,.12);
}

#join-form .wpcf7 textarea{
  min-height:80px;
  resize:vertical;
}



#join-form .cf7-privacy{ font-weight:400; margin:6px 0 10px; }

#join-form .wpcf7-submit{
  width:100%;
  padding:12px 14px;
  border:0;
  border-radius:12px;
  background:#2B70BA;
  color:#fff;
  font-weight:700;
  cursor:pointer;
}



/* ULTRA COMPACT: poco spazio tra un campo e la label successiva */
#join-form .wpcf7 p{
  margin: 0 0 2px;   /* distanza tra campi */
}

#join-form .wpcf7 label{
  margin: 0 0 2px;   /* distanza label->campo */
  line-height: 1.1;
}

#join-form .wpcf7 input[type="text"],
#join-form .wpcf7 input[type="email"],
#join-form .wpcf7 input[type="tel"],
#join-form .wpcf7 select,
#join-form .wpcf7 textarea{
  padding: 4px 10px;
  line-height: 1.05;
}

#join-form .cf7-row{
  gap: 6px;          /* spazio tra colonne */
  margin: 0 0 4px;   /* spazio tra righe */
}

#join-form .wpcf7 textarea{
  min-height: 60px;
}

/* CHIUDE DAVVERO LO SPAZIO TRA CAMPO E LABEL SUCCESSIVA */
#join-form .wpcf7 br{ display:none !important; }

#join-form .wpcf7 p{
  margin: 0 0 2px !important;
  padding: 0 !important;
}

#join-form .wpcf7 label{
  margin: 0 0 2px !important;
  padding: 0 !important;
  line-height: 1.1 !important;
}

#join-form .wpcf7 .wpcf7-form-control-wrap{
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

#join-form .wpcf7 input[type="text"],
#join-form .wpcf7 input[type="email"],
#join-form .wpcf7 input[type="tel"],
#join-form .wpcf7 select,
#join-form .wpcf7 textarea{
  margin: 0 !important;
  padding: 8px 12px !important;
  line-height: 1.2 !important;
}

#join-form .cf7-row{
  gap: 6px !important;
  margin: 0 0 2px !important;
}

#join-form .wpcf7 textarea{
  min-height: 80px !important;
}