/* =========================================================================
   FORMS — scoped styling for Formidable forms.
   IMPORTANT: We never edit Formidable itself (that would risk Zapier). We only
   restyle its output. All rules are scoped under .lincoln-form so we touch
   nothing globally.
   ========================================================================= */

.lincoln-form { max-width: var(--container-narrow); }
.lincoln-form .frm_forms,
.lincoln-form .with_frm_style { background: transparent; border: 0; padding: 0; }

.lincoln-form .frm_form_field { margin-bottom: var(--space-4); }
.lincoln-form label,
.lincoln-form .frm_primary_label {
	display: block; font-weight: 600; margin-bottom: var(--space-1); color: var(--color-text);
}
.lincoln-form .frm_required { color: var(--color-error); }

.lincoln-form input[type="text"],
.lincoln-form input[type="email"],
.lincoln-form input[type="tel"],
.lincoln-form input[type="number"],
.lincoln-form input[type="url"],
.lincoln-form input[type="date"],
.lincoln-form select,
.lincoln-form textarea {
	width: 100%; padding: var(--space-2) var(--space-3);
	border: 1px solid var(--color-border); border-radius: var(--radius);
	font: inherit; color: var(--color-text); background: #fff;
}
.lincoln-form input:focus,
.lincoln-form select:focus,
.lincoln-form textarea:focus { outline: 3px solid var(--color-focus); outline-offset: 1px; border-color: var(--color-brand); }

.lincoln-form .frm_description { color: var(--color-text-muted); font-size: var(--fs-sm); }

.lincoln-form .frm_button_submit,
.lincoln-form input[type="submit"],
.lincoln-form button[type="submit"] {
	display: inline-flex; align-items: center; justify-content: center;
	background: var(--color-brand); color: #fff; border: 2px solid transparent;
	font-weight: 600; padding: var(--space-2) var(--space-4); border-radius: var(--radius); cursor: pointer;
}
.lincoln-form .frm_button_submit:hover,
.lincoln-form input[type="submit"]:hover,
.lincoln-form button[type="submit"]:hover { background: var(--color-brand-dark); }

/* WCAG contrast fixes for Formidable's own defaults (styling only — never
   touches fields or logic). !important overrides Formidable's higher-specificity
   default stylesheet. Applies to every form, wrapped in .lincoln-form or not. */
.frm_forms .frm_button_submit,
.frm_forms input[type="submit"],
.frm_forms button[type="submit"] { background: var(--color-brand) !important; color: #fff !important; border-color: transparent !important; }
.frm_forms .frm_button_submit:hover,
.frm_forms input[type="submit"]:hover,
.frm_forms button[type="submit"]:hover { background: var(--color-brand-dark) !important; color: #fff !important; }
/* Darken Formidable's light-gray helper/body text (#98a2b3, fails contrast). */
.frm_forms .frm_description,
.frm_forms .frm_form_field p,
.frm_forms .frm_html_container,
.frm_forms .frm_html_container p { color: #4b5563 !important; }

/* Validation messages */
.lincoln-form .frm_error { color: var(--color-error); font-size: var(--fs-sm); }
.lincoln-form .frm_blank_field input,
.lincoln-form .frm_blank_field textarea { border-color: var(--color-error); }
.lincoln-form .frm_message,
.lincoln-form .frm_success_style { color: var(--color-success); }
