/* XMotion Lead Capture — form styles. Brand: navy #0B1220, blue #2563EB, purple #7C3AED.
   No hidden states, no animation that moves layout. Focus is always visible. */
.xmlc-form-wrap { max-width: 640px; }
.xmlc-form p { margin: 0 0 14px; }
.xmlc-form label { display: block; font-weight: 600; margin-bottom: 6px; color: #0B1220; }
.xmlc-form input[type="text"],
.xmlc-form input[type="email"],
.xmlc-form input[type="tel"],
.xmlc-form select,
.xmlc-form textarea {
  width: 100%; padding: 12px 14px; min-height: 48px;
  border: 1px solid #CBD5E1; border-radius: 8px; background: #fff; color: #0B1220; font-size: 16px;
}
.xmlc-form input:focus, .xmlc-form select:focus, .xmlc-form textarea:focus {
  outline: 3px solid #2563EB; outline-offset: 2px; border-color: #2563EB;
}
.xmlc-submit {
  background: linear-gradient(135deg, #2563EB, #7C3AED); color: #fff; border: 0;
  padding: 14px 28px; min-height: 48px; border-radius: 8px; font-weight: 700; cursor: pointer;
}
.xmlc-submit:focus { outline: 3px solid #2563EB; outline-offset: 2px; }
/* Honeypot: visually hidden but still in the DOM. If CSS fails, it shows with a clear label. */
.xmlc-honeypot { position: absolute; left: -9999px; top: auto; width: 1px; height: 1px; overflow: hidden; }
.xmlc-success { background: #EFF6FF; border-left: 4px solid #2563EB; padding: 12px 16px; }
.xmlc-error { background: #FEF2F2; border-left: 4px solid #DC2626; padding: 12px 16px; }
@media (prefers-reduced-motion: reduce) {
  .xmlc-form *, .xmlc-submit { transition: none !important; animation: none !important; }
}
