/* ============================================================
   FORMULAIRES
   ============================================================ */
.form-group { margin-bottom: var(--space-3); }
.form-label {
  display: block; font-size: var(--text-sm); font-weight: 500;
  color: var(--color-text-2); margin-bottom: 6px;
}
.form-control {
  width: 100%; min-height: 48px;
  padding: 10px var(--space-3);
  font-size: var(--text-base); font-family: inherit;
  color: var(--color-text);
  background: var(--color-white);
  border: 1px solid var(--color-border);
  border-radius: var(--radius-md);
  transition: border-color .2s, box-shadow .2s;
}
.form-control:focus {
  outline: none;
  border-color: var(--color-primary);
  box-shadow: 0 0 0 3px rgba(27,67,50,0.12);
}
.form-control.is-error { border-color: var(--color-danger); }
.form-error {
  font-size: var(--text-xs); color: var(--color-danger);
  margin-top: 4px; display: block;
}
.form-hint { font-size: var(--text-xs); color: var(--color-text-3); margin-top: 4px; }
select.form-control { appearance: none; cursor: pointer; }
textarea.form-control { min-height: 120px; resize: vertical; }

/* Champ honeypot — invisible */
.form-honey { position: absolute; left: -9999px; opacity: 0; pointer-events: none; }
