/* Factory-match form · lives inside the .cta-card block */

.fm-form { margin-top: 22px; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, 0.16); }
.fm-label { font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.1em; text-transform: uppercase; color: rgba(255, 255, 255, 0.7); margin-bottom: 12px; }
.fm-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; margin-bottom: 14px; }
.fm-grid label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 600; color: rgba(255, 255, 255, 0.9); }
.fm-grid input { padding: 10px 13px; border-radius: 10px; border: 1px solid rgba(255, 255, 255, 0.24); background: rgba(255, 255, 255, 0.08); color: #fbf9f2; font-size: 15px; font-family: inherit; }
.fm-grid input::placeholder { color: rgba(255, 255, 255, 0.45); }
.fm-grid input:focus { outline: 2px solid rgba(255, 255, 255, 0.55); outline-offset: 1px; }
.fm-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.fm-submit { display: inline-flex; align-items: center; padding: 11px 20px; border-radius: 10px; border: 0; font-weight: 600; font-size: 14px; font-family: inherit; cursor: pointer; background: var(--paper-2, #fbf9f2); color: var(--ink, #16181a); transition: transform 0.18s ease; }
.fm-submit:hover { transform: translateY(-1px); }
.fm-submit[disabled] { opacity: 0.6; cursor: wait; }
.cta-card p.fm-note { font-size: 13px; color: rgba(255, 255, 255, 0.65); margin: 12px 0 0; }
.cta-card p.fm-status { font-size: 15px; font-weight: 600; color: rgba(255, 255, 255, 0.92); margin: 12px 0 0; min-height: 1em; }
.cta-card p.fm-success { font-size: 16px; line-height: 1.5; color: rgba(255, 255, 255, 0.92); margin: 22px 0 0; padding-top: 20px; border-top: 1px solid rgba(255, 255, 255, 0.16); }
