.elementor-342 .elementor-element.elementor-element-ca84878{--display:flex;--min-height:0px;--justify-content:center;--margin-top:-10px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-342 .elementor-element.elementor-element-da1ef4e{--display:flex;--min-height:0px;--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:-88px;--margin-bottom:13px;--margin-left:13px;--margin-right:13px;}.elementor-342 .elementor-element.elementor-element-d29440a{margin:-45px 50px calc(var(--kit-widget-spacing, 0px) + 0px) 50px;}.elementor-342 .elementor-element.elementor-element-72d2cd3{--display:flex;--min-height:365px;--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:35px;--padding-bottom:35px;--padding-left:35px;--padding-right:35px;}.elementor-342 .elementor-element.elementor-element-72d2cd3:not(.elementor-motion-effects-element-type-background), .elementor-342 .elementor-element.elementor-element-72d2cd3 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-vamtam_accent_5 );}.elementor-342 .elementor-element.elementor-element-72d2cd3.e-con{--align-self:center;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-342 .elementor-element.elementor-element-72d2cd3{--width:100%;}}/* Start custom CSS for text-editor, class: .elementor-element-d29440a *//* ================================================
   CF7 – LAYOUT FLEX DEFINITIVO v5
   Aspetto > Personalizza > CSS Aggiuntivo
   ================================================ */

.q4-wrap {
  background: #ffffff !important;
  border-radius: 12px !important;
  padding: 48px 40px !important;
  max-width: 960px !important;
  margin: 0 auto !important;
  box-sizing: border-box !important;
}

.q4-title {
  font-size: 30px !important;
  font-weight: 700 !important;
  color: #2c2c2c !important;
  text-align: center !important;
  text-transform: uppercase !important;
  letter-spacing: 2px !important;
  margin: 0 0 32px !important;
  display: block !important;
}

/* Righe flex */
.q4-row {
  display: flex !important;
  flex-direction: row !important;
  gap: 16px !important;
  width: 100% !important;
  margin-bottom: 14px !important;
  align-items: flex-start !important;
}
.q4-col {
  flex: 1 1 0% !important;
  min-width: 0 !important;
  display: block !important;
}
.q4-col.q4-full {
  flex: 1 1 100% !important;
  width: 100% !important;
}
.q4-col .wpcf7-form-control-wrap {
  display: block !important;
  width: 100% !important;
}

/* Input */
.q4-wrap input[type="text"],
.q4-wrap input[type="email"],
.q4-wrap input[type="tel"] {
  width: 100% !important;
  height: 48px !important;
  padding: 0 14px !important;
  border: 1.5px solid #d0d0d0 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #111 !important;
  font-size: 15px !important;
  font-family: 'Roboto', sans-serif !important;
  box-sizing: border-box !important;
  outline: none !important;
  box-shadow: none !important;
  display: block !important;
  margin: 0 !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}
.q4-wrap input[type="text"]:focus,
.q4-wrap input[type="email"]:focus,
.q4-wrap input[type="tel"]:focus {
  border-color: #93c120 !important;
  box-shadow: 0 0 0 3px rgba(147,193,32,.15) !important;
}
.q4-wrap input::placeholder { color: #aaa !important; opacity: 1 !important; }

/* Select — BORDO AGGIUNTO */
.q4-wrap select {
  width: 100% !important;
  height: 48px !important;
  padding: 0 40px 0 14px !important;
  border: 1.5px solid #d0d0d0 !important;
  border-radius: 8px !important;
  background-color: #ffffff !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23555'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 14px center !important;
  color: #555 !important;
  font-size: 15px !important;
  font-family: 'Roboto', sans-serif !important;
  box-sizing: border-box !important;
  outline: none !important;
  box-shadow: none !important;
  display: block !important;
  margin: 0 !important;
  cursor: pointer !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
}
.q4-wrap select:focus {
  border-color: #93c120 !important;
  box-shadow: 0 0 0 3px rgba(147,193,32,.15) !important;
}

/* Textarea — BORDO AGGIUNTO */
.q4-wrap textarea {
  width: 100% !important;
  min-height: 180px !important;
  padding: 12px 14px !important;
  border: 1.5px solid #d0d0d0 !important;
  border-radius: 8px !important;
  background: #ffffff !important;
  color: #111 !important;
  font-size: 15px !important;
  font-family: 'Roboto', sans-serif !important;
  resize: vertical !important;
  outline: none !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  display: block !important;
  margin: 0 !important;
}
.q4-wrap textarea:focus {
  border-color: #93c120 !important;
  box-shadow: 0 0 0 3px rgba(147,193,32,.15) !important;
}
.q4-wrap textarea::placeholder { color: #aaa !important; opacity: 1 !important; }

/* Privacy — checkbox ACCANTO al testo su una riga */
.q4-privacy {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.q4-privacy .wpcf7-acceptance {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}
.q4-privacy .wpcf7-acceptance .wpcf7-list-item {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}
.q4-privacy .wpcf7-acceptance input[type="checkbox"] {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  max-width: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
  accent-color: #93c120 !important;
  box-shadow: none !important;
  border: 1px solid #aaa !important;
  cursor: pointer !important;
  display: inline-block !important;
  vertical-align: middle !important;
}
.q4-privacy .wpcf7-list-item-label {
  font-size: 13px !important;
  color: #555 !important;
  line-height: 1 !important;
  cursor: pointer !important;
  white-space: nowrap !important;
  display: inline-block !important;
  vertical-align: middle !important;
}

/* Submit — verde pieno, bordo tondo, larghezza 100% */
.q4-submit {
  display: block !important;
  width: 100% !important;
  margin: 0 !important;
}
.q4-wrap .q4-submit input[type="submit"],
.wpcf7 .q4-submit input[type="submit"],
input.wpcf7-submit {
  width: 100% !important;
  height: 56px !important;
  padding: 0 !important;
  background: #93c120 !important;
  background-color: #93c120 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  display: block !important;
  box-sizing: border-box !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  margin: 0 !important;
  transition: background .2s !important;
}
.q4-wrap .q4-submit input[type="submit"]:hover,
.wpcf7 .q4-submit input[type="submit"]:hover,
input.wpcf7-submit:hover {
  background: #7da810 !important;
  background-color: #7da810 !important;
}

/* Messaggi */
.wpcf7-response-output { margin: 16px 0 0 !important; padding: 12px 16px !important; border-radius: 8px !important; font-size: 14px !important; border: none !important; }
.wpcf7-mail-sent-ok { background: #edf7d6 !important; color: #3a6a00 !important; border-left: 4px solid #93c120 !important; }
.wpcf7-validation-errors, .wpcf7-mail-failed-error { background: #fdf0f0 !important; color: #a00 !important; border-left: 4px solid #e44 !important; }
.wpcf7-not-valid { border-color: #e44 !important; }
.wpcf7-not-valid-tip { font-size: 11px !important; color: #e44 !important; margin-top: 4px !important; display: block !important; }

/* Responsive */
@media (max-width: 768px) {
  .q4-wrap { padding: 28px 18px !important; }
  .q4-title { font-size: 22px !important; }
  .q4-row { flex-direction: column !important; gap: 12px !important; }
  .q4-privacy .wpcf7-list-item-label { white-space: normal !important; }
}/* End custom CSS */
/* Start custom CSS for container, class: .elementor-element-da1ef4e *//* ================================================
   CONTACT FORM 7 — SORELLE GARZO
   CSS DEFINITIVO v4 — tutti i fix applicati
   ================================================ */

/* ---- Griglia 2 colonne ---- */
.q4-form-grid {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px 20px !important;
  width: 100% !important;
  align-items: start !important;
}
.q4-col  { display: block !important; grid-column: span 1 !important; }
.q4-full { display: block !important; grid-column: 1 / -1 !important; }
.q4-form-grid .wpcf7-form-control-wrap { display: block !important; width: 100% !important; }

/* ---- Input text / email / tel ---- */
.q4-form-grid input[type="text"],
.q4-form-grid input[type="email"],
.q4-form-grid input[type="tel"],
.q4-form-grid input[type="number"] {
  width: 100% !important;
  height: 48px !important;
  padding: 5px 14px !important;
  border: 1px solid #cfcece !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #000 !important;
  font-size: 16px !important;
  font-family: 'Roboto', sans-serif !important;
  font-weight: 400 !important;
  outline: none !important;
  box-shadow: none !important;
  box-sizing: border-box !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  display: block !important;
  margin: 0 !important;
  transition: border-color .2s, box-shadow .2s;
}
.q4-form-grid input[type="text"]::placeholder,
.q4-form-grid input[type="email"]::placeholder,
.q4-form-grid input[type="tel"]::placeholder { color: #aaa !important; opacity: 1 !important; }
.q4-form-grid input[type="text"]:focus,
.q4-form-grid input[type="email"]:focus,
.q4-form-grid input[type="tel"]:focus {
  border-color: #93c120 !important;
  box-shadow: 0 0 0 3px rgba(147,193,32,.15) !important;
}

/* ---- Select — STESSA RIGA grazie a q4-col ---- */
.q4-form-grid select {
  width: 100% !important;
  height: 48px !important;
  padding: 5px 40px 5px 14px !important;
  border:/* End custom CSS */