/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0
*/

/* ===== SEPARA RECAPTCHA DA IUBENDA ===== */
.grecaptcha-badge {
  bottom: 80px !important;
}

@media only screen and (max-width: 768px) {
  .grecaptcha-badge {
    bottom: 100px !important;
  }
}

/* ===== CONTACT FORM 7 — COMPLETO ===== */

.rsvp-form {
  font-family: 'Manrope', sans-serif;
  color: #ffffff;
  max-width: 520px;
  margin: 0 auto;
  padding: 2rem 1rem;
}

.rsvp-intro {
  text-align: center;
  font-size: 16px;
  color: #ffffff;
  margin-bottom: 24px;
}

.rsvp-form label,
.rsvp-form .wpcf7-form-control-wrap label {
  display: block !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #ffffff !important;
  margin-bottom: 6px !important;
}

/* ===== CAMPI — ESCLUSO CHECKBOX ===== */
.rsvp-form input:not([type="checkbox"]):not([type="submit"]),
.rsvp-form select,
.rsvp-form textarea,
.wpcf7-form-control-wrap input:not([type="checkbox"]):not([type="submit"]),
.wpcf7-form-control-wrap select,
.wpcf7-form-control-wrap textarea {
  display: block !important;
  width: 100% !important;
  min-height: 50px !important;
  height: auto !important;
  padding: 14px 16px !important;
  margin-bottom: 20px !important;
  border-radius: 8px !important;
  border: none !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  color: #275143 !important;
  background: #ffffff !important;
  box-sizing: border-box !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.rsvp-form textarea,
.wpcf7-form-control-wrap textarea {
  min-height: 120px !important;
  resize: vertical !important;
}

.rsvp-form input:not([type="checkbox"]):not([type="submit"]):focus,
.rsvp-form select:focus,
.rsvp-form textarea:focus,
.wpcf7-form-control-wrap input:not([type="checkbox"]):not([type="submit"]):focus,
.wpcf7-form-control-wrap select:focus,
.wpcf7-form-control-wrap textarea:focus {
  outline: 2px solid #A4CCB2 !important;
  border: none !important;
}

/* ===== CHECKBOX PRIVACY ===== */
.wpcf7-acceptance,
span.wpcf7-acceptance {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  background: transparent !important;
  border: none !important;
  width: auto !important;
  min-height: auto !important;
  height: auto !important;
  padding: 0 !important;
  margin-bottom: 20px !important;
  box-shadow: none !important;
}

.wpcf7-acceptance input[type="checkbox"] {
  width: 18px !important;
  min-height: 18px !important;
  height: 18px !important;
  flex-shrink: 0 !important;
  margin: 2px 0 0 0 !important;
  padding: 0 !important;
  background: #ffffff !important;
  border: none !important;
  border-radius: 3px !important;
  accent-color: #275143 !important;
  cursor: pointer !important;
  -webkit-appearance: auto !important;
  appearance: auto !important;
}

.wpcf7-acceptance .wpcf7-list-item {
  margin: 0 !important;
  padding: 0 !important;
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
}

.wpcf7-acceptance .wpcf7-list-item-label {
  color: #ffffff !important;
  font-size: 13px !important;
  line-height: 1.5 !important;
}

.wpcf7-acceptance a {
  color: #A4CCB2 !important;
  text-decoration: underline !important;
}

/* ===== BOTTONE CF7 ONLY ===== */
.wpcf7 input[type="submit"],
.wpcf7 input[type="submit"].rsvp-btn {
  display: block !important;
  width: auto !important;
  min-width: 200px !important;
  min-height: 50px !important;
  margin: 24px auto 0 auto !important;
  padding: 14px 32px !important;
  border-radius: 8px !important;
  border: none !important;
  background: #ffffff !important;
  color: #275143 !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  cursor: pointer !important;
  letter-spacing: 0.04em !important;
  text-align: center !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  box-shadow: none !important;
  text-transform: none !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}

.wpcf7 input[type="submit"]:hover,
.wpcf7 input[type="submit"].rsvp-btn:hover {
  background: #A4CCB2 !important;
  color: #275143 !important;
}

/* ===== RIPRISTINA BOTTONE CERCA ADMINBAR ===== */
#wpadminbar input[type="submit"].adminbar-button {
  background: revert !important;
  color: revert !important;
  font-family: revert !important;
  font-size: revert !important;
  font-weight: revert !important;
  border: revert !important;
  border-radius: revert !important;
  padding: revert !important;
  min-height: revert !important;
  min-width: revert !important;
  width: revert !important;
  margin: revert !important;
  letter-spacing: revert !important;
  text-transform: revert !important;
  box-shadow: revert !important;
  appearance: revert !important;
  -webkit-appearance: revert !important;
}
/* ===== CAMPO CON ERRORE ===== */
.wpcf7-not-valid,
.wpcf7-form-control-wrap .wpcf7-not-valid {
  border: 2px solid #CF4D6F !important;
  background: #fff0f4 !important;
  color: #CF4D6F !important;
}

.wpcf7-not-valid-tip {
  display: block !important;
  color: #ffb3c6 !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  margin-top: -14px !important;
  margin-bottom: 12px !important;
}

.wpcf7-not-valid-tip::before {
  display: none !important;
}

/* ===== MESSAGGI RISPOSTA ===== */
.wpcf7-response-output {
  border: none !important;
  border-radius: 8px !important;
  padding: 14px 18px !important;
  font-family: 'Manrope', sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  text-align: center !important;
  margin-top: 20px !important;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output {
  background: #CF4D6F !important;
  color: #ffffff !important;
}

.wpcf7 form.sent .wpcf7-response-output {
  background: #A4CCB2 !important;
  color: #275143 !important;
  font-weight: 500 !important;
}