/* GrowthRidge Marketing — contact form (Formspree @formspree/ajax) styles. Loaded only on contact.html, after style.css. */
.form-success[data-fs-active] { display: block; }
.form-success:focus { outline: none; }
/* Contact form: validation, status + a11y helpers */
.split > * { min-width: 0; }
.field input, .field select, .field textarea { min-width: 0; max-width: 100%; }
.field-group { border: 0; padding: 0; margin: 0 0 20px; min-width: 0; }
.field-group legend { font-size: 13.5px; font-weight: 700; color: var(--text-primary); padding: 0; margin-bottom: 8px; }
.field .req, .form-required-note .req { color: #B42318; font-weight: 700; }
.form-required-note { font-size: 13px; color: var(--text-muted); margin: 0 0 18px; }
.field-error { display: none; font-size: 13px; font-weight: 600; color: #B42318; }
.field-error[data-fs-active] { display: block; }
.field [aria-invalid="true"] { border-color: #B42318; background: #FEF3F2; }
.form-status-error { display: none; margin-bottom: 20px; padding: 14px 16px; border-radius: 12px; border: 1.5px solid #FDA29B; background: #FEF3F2; color: #912018; font-size: 14px; font-weight: 600; line-height: 1.5; }
.form-status-error[data-fs-active] { display: block; }
.form-note a { color: #0F766E; font-weight: 600; text-decoration: underline; overflow-wrap: anywhere; }
.contact-form[aria-busy="true"] button[type="submit"] { opacity: .7; cursor: progress; }
.contact-form button[type="submit"]:disabled { transform: none; }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
@media (max-width: 640px) { .form-card { padding: 28px 22px; border-radius: var(--radius-lg); } }
@media (max-width: 380px) { .form-card { padding: 22px 16px; } .checkbox-item { padding: 11px 12px; } }
