/* Contact Form 7 forms — styled to match the original hardcoded forms exactly.
   Plain CSS (the CF7 form markup lives in the DB, so it isn't scanned by Tailwind). */

.te-form .te-form__title {
	font-size: 1.25rem;
	font-weight: 700;
	color: #0d1f3c;
	margin: 0 0 0.25rem;
}
.te-form .te-form__sub {
	font-size: 0.875rem;
	color: #6b7280;
	margin: 0 0 1.5rem;
}

/* Field stack (was space-y-5). */
.te-form .te-form__field { margin-bottom: 1.25rem; }

/* First/Last row. */
.te-form .te-form__row {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}
.te-form .te-form__row .te-form__field { margin-bottom: 0; }
.te-form .te-form__row { margin-bottom: 1.25rem; }

/* Tighter field spacing variant (Our Team form was space-y-4). */
.te-form.is-compact .te-form__field,
.te-form.is-compact .te-form__row { margin-bottom: 1rem; }

.te-form .te-form__label {
	display: block;
	font-size: 0.875rem;
	font-weight: 600;
	color: #0d1f3c;
	margin-bottom: 0.375rem;
}
.te-form .te-form__req { color: #BF4E00; } /* AA on white (4.88:1) */

/* CF7 wraps each control in a span — make it block so inputs fill the field. */
.te-form .wpcf7-form-control-wrap { display: block; }

.te-form .te-form__input {
	width: 100%;
	padding: 0.75rem 1rem;
	border: 1px solid #9ca3af;
	border-radius: 0.5rem;
	font-size: 0.875rem;
	background: #ffffff;
	color: #111827;
	transition: box-shadow 0.15s ease, border-color 0.15s ease;
}
.te-form .te-form__input::placeholder { color: #6a7282; } /* AA on white (4.84:1) */
.te-form .te-form__input:focus {
	outline: none;
	border-color: #1a5fa8;
	box-shadow: 0 0 0 2px #1a5fa8;
}
.te-form textarea.te-form__input {
	resize: none;
	min-height: 8.5rem;
}

/* Invalid state + per-field tip. Reds are darkened for WCAG AA: the tip text
   (#dc2626 on the gray form bg) clears 4.5:1, and the border (#dc2626) clears
   the 3:1 UI-component minimum. */
.te-form .wpcf7-not-valid { border-color: #dc2626; }
.te-form .wpcf7-not-valid-tip {
	display: block;
	color: #dc2626;
	font-size: 0.75rem;
	margin-top: 0.25rem;
}

/* Submit button (orange, full width, with arrow). */
.te-form .te-form__submit {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	padding: 0.875rem;
	border: 0;
	border-radius: 0.5rem;
	background: #BF4E00; /* AA: white label 4.88:1 */
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	cursor: pointer;
	transition: background 0.15s ease;
}
.te-form .te-form__submit:hover { background: #A84600; }
.te-form .te-form__submit svg { width: 1rem; height: 1rem; }

/* CF7's bottom response bar is replaced by per-field tips + the success card.
   (It sits outside .te-form, so scope to the container.) */
.te-form-container .wpcf7-response-output { display: none; }
.te-form-container .wpcf7-spinner { margin: 0 auto; }

/* Success card: no focus ring on the programmatically-focused status card;
   darker check (#15803d, 4.57:1 on the green circle) for safe AA margin. */
.te-form-success:focus { outline: none; }
.te-form-success svg { color: #15803d; }

/* Consent/legal note below the submit button (both forms). Lives in the
   template markup — not the CF7 body — so it's tracked in git and portable
   across environments. */
.te-form-disclaimer {
	margin: 1rem 0 0;
	font-family: Inter, system-ui, sans-serif;
	font-size: 12px;
	line-height: 16px; /* matches the site's tightened disclaimer leading */
	color: #6a7282; /* AA: 4.84:1 on white, 4.7:1 on the Team form's #f8f9fa */
}
/* Centered on desktop; stays left-justified on mobile/tablet. */
@media (min-width: 1024px) {
	.te-form-disclaimer { text-align: center; }
}
.te-form-disclaimer a { color: inherit; text-decoration: underline; }
.te-form-disclaimer a:hover { text-decoration: none; }

/* Mobile: submit matches the homepage CTA buttons' 18px label (site-wide);
   field labels step up on both forms; the in-form title/sub (Contact's
   "Send Us a Message") match the Our Team form header's 30px/16px scale;
   required asterisks hug their labels (the space is a text node in the
   CF7 markup, which lives in the DB); disclaimer joins the 13px legibility
   floor. */
@media (max-width: 767.98px) {
	.te-form .te-form__submit { font-size: 18px; }
	.te-form .te-form__label { font-size: 1rem; }
	.te-form .te-form__title { font-size: 30px; line-height: 1.15; margin-bottom: 0.5rem; }
	.te-form .te-form__sub { font-size: 1rem; line-height: 1.4; }
	.te-form .te-form__req { margin-left: -0.25em; }
	.te-form-disclaimer { font-size: 13px; line-height: 17px; }
}
