/* leadfarmer-form.css — formulaire lead maison, style brutal cohérent parc. */
.lf-form { --lf-accent: #0d9488; max-width: 620px; margin: 1.75rem auto; }
.lf-form .lf-loading { padding: 1rem; text-align: center; color: #6b7280; font-size: .9rem; }

.lf-card {
  background: #fff;
  border: 3px solid #111;
  border-radius: 14px;
  box-shadow: 6px 6px 0 var(--lf-accent);
  padding: 1.25rem 1.25rem 1.4rem;
}
.lf-skip { display: inline-block; float: right; margin: -.2rem 0 .3rem .5rem; font-size: .76rem; font-weight: 700; color: var(--lf-accent); text-decoration: none; border-bottom: 1px dashed var(--lf-accent); cursor: pointer; }
.lf-skip:hover { opacity: .75; }
.lf-head h3 { margin: 0 0 .3rem; font-size: 1.18rem; line-height: 1.25; color: #111; }
.lf-head p { margin: 0 0 1rem; font-size: .92rem; color: #4b5563; }

.lf-trust { display: flex; flex-wrap: wrap; gap: .4rem .5rem; list-style: none; margin: 0 0 .2rem; padding: 0; }
.lf-trust li { font-size: .76rem; font-weight: 700; color: #065f54; background: color-mix(in srgb, var(--lf-accent) 14%, #fff); border: 1.5px solid var(--lf-accent); border-radius: 999px; padding: .18rem .55rem; }
.lf-trust li::before { content: "✓ "; }
.lf-sec { margin: 1.1rem 0 .5rem; font-size: .7rem; font-weight: 800; letter-spacing: .06em; text-transform: uppercase; color: var(--lf-accent); border-bottom: 2px solid #eee; padding-bottom: .25rem; }
.lf-sec:first-of-type { margin-top: .2rem; }
.lf-fields { display: grid; gap: .8rem; }
.lf-field { display: flex; flex-direction: column; gap: .25rem; }
.lf-field label { font-size: .85rem; font-weight: 600; color: #1f2937; }
.lf-field input, .lf-field select, .lf-field textarea {
  width: 100%;
  border: 2px solid #111;
  border-radius: 8px;
  padding: .55rem .65rem;
  font-size: .95rem;
  font-family: inherit;
  background: #fff;
  box-sizing: border-box;
}
.lf-field input:focus, .lf-field select:focus, .lf-field textarea:focus {
  outline: none;
  border-color: var(--lf-accent);
  box-shadow: 0 0 0 3px color-mix(in srgb, var(--lf-accent) 25%, transparent);
}
.lf-field textarea { resize: vertical; }

.lf-consent {
  display: flex; align-items: flex-start; gap: .5rem;
  margin: 1rem 0 .4rem; font-size: .8rem; color: #4b5563; line-height: 1.4;
}
.lf-consent input { margin-top: .15rem; flex: 0 0 auto; }
.lf-consent a { color: var(--lf-accent); }

.lf-submit {
  width: 100%;
  margin-top: .6rem;
  border: 3px solid #111;
  border-radius: 10px;
  background: var(--lf-accent);
  color: #fff;
  font-weight: 800;
  font-size: 1rem;
  padding: .8rem 1rem;
  cursor: pointer;
  box-shadow: 4px 4px 0 #111;
  transition: transform .08s, box-shadow .08s;
}
.lf-submit:hover { transform: translate(-1px,-1px); box-shadow: 5px 5px 0 #111; }
.lf-submit:active { transform: translate(2px,2px); box-shadow: 2px 2px 0 #111; }
.lf-submit:disabled { opacity: .6; cursor: default; box-shadow: 4px 4px 0 #111; transform: none; }

.lf-legal { margin: .7rem 0 0; font-size: .72rem; color: #9ca3af; text-align: center; }
.lf-msg { margin-top: .7rem; padding: .55rem .7rem; border: 2px solid #b91c1c; border-radius: 8px; color: #b91c1c; font-size: .85rem; background: #fef2f2; }

.lf-done { text-align: center; }
.lf-done-ic {
  width: 52px; height: 52px; margin: 0 auto .6rem;
  border-radius: 50%; background: var(--lf-accent); color: #fff;
  font-size: 1.7rem; line-height: 52px; font-weight: 800;
}
.lf-done h3 { margin: 0 0 .3rem; color: #111; }
.lf-done p { margin: 0; color: #4b5563; font-size: .92rem; }

@media (max-width: 480px) {
  .lf-card { box-shadow: 4px 4px 0 var(--lf-accent); padding: 1rem; }
  .lf-head h3 { font-size: 1.05rem; }
}
