/* caveirforms - carte blanche lisible quel que soit le fond de la section Elementor */
body .caveirforms-wrap {
  background: #ffffff;
  color: #333333;
  padding: 28px;
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.14);
  max-width: 820px;
  margin: 20px auto;
  text-align: left;
  scroll-margin-top: 120px; /* ancre native + html{scroll-behavior:smooth} du thème : arrêt sous l'en-tête */
}
body .caveirforms-wrap label { color: #333333; font-weight: 600; }
body .caveirforms-wrap label small { color: #666666; font-weight: 400; }
body .caveirforms-wrap .form-control {
  background: #ffffff;
  border: 1px solid #cfd4cf;
  color: #222222;
  border-radius: 6px;
}
body .caveirforms-wrap .form-control:focus {
  border-color: #364b39;
  box-shadow: 0 0 0 2px rgba(54, 75, 57, 0.2);
  outline: none;
}
body .caveirforms-wrap .cf-legal { color: #555555; font-size: 13px; line-height: 1.5; }
body .caveirforms-wrap .cf-legal a { color: #364b39; text-decoration: underline; }
body .caveirforms-wrap .cf-legal a:hover { color: #1f2c21; }
body .caveirforms-wrap .cf-submit {
  background: #364b39;
  border: 1px solid #364b39;
  color: #ffffff;
  padding: 12px 34px;
  border-radius: 6px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  transition: background-color 0.2s ease, border-color 0.2s ease;
}
body .caveirforms-wrap .cf-submit:hover,
body .caveirforms-wrap .cf-submit:focus { background: #24332a; border-color: #24332a; color: #ffffff; }
body .caveirforms-wrap .cf-submit:focus-visible { outline: 3px solid rgba(54, 75, 57, 0.35); outline-offset: 2px; }
body .caveirforms-wrap .cf-submit:disabled { opacity: 0.65; cursor: wait; }
@media (max-width: 575.98px) {
  body .caveirforms-wrap { padding: 18px; margin: 12px auto; border-radius: 8px; }
  body .caveirforms-wrap .cf-submit { width: 100%; }
}
