/* Homepage "larger team" lead form. Rides the shared .modal / .modal-card chrome
   (main.css: modalIn / modalOut, covered by the global reduced-motion gate). */
.htl-card { max-width: 440px; }
.htl-form { display: flex; flex-direction: column; gap: 14px; }
.htl-field { display: flex; flex-direction: column; gap: 6px; font-size: 13px; color: var(--text-soft); }
.htl-field input, .htl-field textarea {
  width: 100%; padding: 10px 12px; font: inherit; font-size: 14px;
  color: var(--text); background: var(--bg);
  border: 1px solid var(--border); border-radius: var(--radius);
  transition: border-color .15s, box-shadow .15s;
}
.htl-field textarea { resize: vertical; min-height: 64px; }
.htl-field input:focus-visible, .htl-field textarea:focus-visible {
  outline: 2px solid var(--primary); outline-offset: 1px; border-color: var(--primary);
}
.htl-error { color: var(--danger); font-size: 13px; margin: 0; animation: htlRise .26s cubic-bezier(.2, .7, .3, 1) both; }
.htl-error a { color: var(--danger); font-weight: 600; }
.htl-form .modal-actions { margin-top: 4px; }
.htl-send { display: inline-flex; align-items: center; gap: 8px; }
.htl-send[disabled] { opacity: .7; cursor: progress; }
.htl-spin { width: 14px; height: 14px; animation: htlSpin .8s linear infinite; }
.htl-sent {
  display: flex; align-items: flex-start; gap: 12px; margin: 0;
  font-size: 14px; line-height: 1.6; color: var(--text-soft);
  animation: htlRise .42s cubic-bezier(.2, .7, .3, 1) both;
}
.htl-sent svg { flex: none; color: var(--success); margin-top: 3px; }
@keyframes htlRise { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
@keyframes htlSpin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .htl-spin { animation: none; }
}
