/* Factory-match form · lives inside the .post-cta block on cornerstone pages */

.fm-form { margin-top: 26px; padding-top: 24px; border-top: 1px solid rgba(246, 242, 232, 0.25); }
.fm-label { font-family: 'JetBrains Mono', 'Inter', monospace; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; opacity: 0.85; margin-bottom: 14px; }
.fm-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; margin-bottom: 14px; }
.fm-grid label { display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 600; }
.fm-grid input { padding: 11px 14px; border-radius: 10px; border: 1px solid rgba(246, 242, 232, 0.35); background: rgba(246, 242, 232, 0.1); color: inherit; font-size: 15px; font-family: inherit; }
.fm-grid input::placeholder { color: inherit; opacity: 0.5; }
.fm-grid input:focus { outline: 2px solid rgba(246, 242, 232, 0.6); outline-offset: 1px; }
.fm-hp { position: absolute; left: -9999px; width: 1px; height: 1px; opacity: 0; }
.fm-submit { display: inline-flex; align-items: center; padding: 12px 26px; border-radius: 999px; border: 0; font-weight: 600; font-size: 15px; font-family: inherit; cursor: pointer; background: var(--cream, #F6F2E8); color: var(--moss-deep, #4A5B3F); transition: transform 0.18s ease; }
.fm-submit:hover { transform: translateY(-1px); }
.fm-submit[disabled] { opacity: 0.6; cursor: wait; }
.fm-note { font-size: 13px; opacity: 0.75; margin: 12px 0 0; }
.fm-status { font-size: 15px; font-weight: 600; margin: 12px 0 0; min-height: 1em; }
.fm-success { font-size: 16px; line-height: 1.5; margin: 0; }
