.elementor-21876 .elementor-element.elementor-element-e657a49{--display:flex;}/* Start custom CSS for shortcode, class: .elementor-element-02bc054 *//* =========================================================
   TERPENORAPY — FLUENT FORMS PRO
   CSS renforcé pour widget Shortcode Elementor
   ========================================================= */

.terp-pro-form-shell {
  width: 100%;
  max-width: 900px;
  margin: 0 auto 84px auto;
  padding: 34px;
  background: #ffffff;
  border: 1px solid rgba(46, 139, 87, 0.22);
  border-radius: 30px;
  box-shadow: 0 14px 38px rgba(20, 35, 24, 0.07);
}

/* Wrapper Fluent Forms */
.terp-pro-form-shell .fluentform,
.terp-pro-form-shell .frm-fluent-form,
.terp-pro-form-shell form {
  width: 100%;
}

/* Espacement des champs */
.terp-pro-form-shell .ff-el-group {
  margin-bottom: 20px !important;
}

/* Labels */
.terp-pro-form-shell .ff-el-input--label label,
.terp-pro-form-shell label,
.terp-pro-form-shell .ff-el-form-check-label {
  color: #172018 !important;
  font-weight: 700 !important;
  font-size: 0.95rem !important;
  line-height: 1.35 !important;
  margin-bottom: 8px !important;
}

/* Champs principaux */
.terp-pro-form-shell .ff-el-form-control,
.terp-pro-form-shell input[type="text"],
.terp-pro-form-shell input[type="email"],
.terp-pro-form-shell input[type="tel"],
.terp-pro-form-shell input[type="url"],
.terp-pro-form-shell input[type="number"],
.terp-pro-form-shell select,
.terp-pro-form-shell textarea {
  width: 100% !important;
  min-height: 50px !important;
  border: 1px solid #ece7dd !important;
  border-radius: 14px !important;
  background: #fffaf2 !important;
  color: #172018 !important;
  padding: 13px 15px !important;
  font-size: 1rem !important;
  line-height: 1.4 !important;
  box-shadow: none !important;
  outline: none !important;
}

/* Textarea */
.terp-pro-form-shell textarea {
  min-height: 135px !important;
  resize: vertical;
}

/* Focus */
.terp-pro-form-shell .ff-el-form-control:focus,
.terp-pro-form-shell input:focus,
.terp-pro-form-shell select:focus,
.terp-pro-form-shell textarea:focus {
  border-color: #2e8b57 !important;
  box-shadow: 0 0 0 3px rgba(46, 139, 87, 0.12) !important;
}

/* Placeholder */
.terp-pro-form-shell input::placeholder,
.terp-pro-form-shell textarea::placeholder {
  color: #9a9388 !important;
}

/* Checkbox / radio */
.terp-pro-form-shell .ff-el-form-check,
.terp-pro-form-shell .ff-el-form-check-label {
  color: #6d6a62 !important;
  font-size: 0.95rem !important;
}

.terp-pro-form-shell input[type="checkbox"],
.terp-pro-form-shell input[type="radio"] {
  accent-color: #2e8b57;
}

/* Bouton submit */
.terp-pro-form-shell .ff-btn-submit,
.terp-pro-form-shell button[type="submit"],
.terp-pro-form-shell input[type="submit"] {
  min-height: 54px !important;
  padding: 15px 34px !important;
  border-radius: 999px !important;
  background: #2e8b57 !important;
  color: #ffffff !important;
  border: none !important;
  font-weight: 850 !important;
  font-size: 1rem !important;
  box-shadow: 0 12px 24px rgba(46, 139, 87, 0.22) !important;
  cursor: pointer !important;
  transition: transform 0.25s ease, background 0.25s ease, box-shadow 0.25s ease !important;
}

/* Hover bouton */
.terp-pro-form-shell .ff-btn-submit:hover,
.terp-pro-form-shell button[type="submit"]:hover,
.terp-pro-form-shell input[type="submit"]:hover {
  background: #0a2a1a !important;
  transform: translateY(-2px);
  box-shadow: 0 16px 30px rgba(10, 42, 26, 0.22) !important;
}

/* Messages d’erreur */
.terp-pro-form-shell .error,
.terp-pro-form-shell .text-danger,
.terp-pro-form-shell .ff-el-is-error .ff-el-form-control {
  color: #d94a4a !important;
}

.terp-pro-form-shell .ff-el-is-error .ff-el-form-control {
  border-color: #d94a4a !important;
}

/* Message succès */
.terp-pro-form-shell .ff-message-success,
.terp-pro-form-shell .ff_success_msg {
  border-radius: 18px !important;
  border: 1px solid rgba(46, 139, 87, 0.22) !important;
  background: rgba(46, 139, 87, 0.08) !important;
  color: #0a2a1a !important;
  padding: 18px !important;
  font-weight: 700 !important;
}

/* Mobile */
@media (max-width: 767px) {
  .terp-pro-form-shell {
    margin: 0 18px 64px 18px;
    padding: 24px 20px;
    border-radius: 22px;
  }

  .terp-pro-form-shell .ff-btn-submit,
  .terp-pro-form-shell button[type="submit"],
  .terp-pro-form-shell input[type="submit"] {
    width: 100% !important;
  }

  .terp-pro-form-shell .ff-el-form-control,
  .terp-pro-form-shell input[type="text"],
  .terp-pro-form-shell input[type="email"],
  .terp-pro-form-shell input[type="tel"],
  .terp-pro-form-shell input[type="url"],
  .terp-pro-form-shell input[type="number"],
  .terp-pro-form-shell select,
  .terp-pro-form-shell textarea {
    font-size: 16px !important;
  }
}/* End custom CSS */