/* Simple Contact Form — minimal layout styles.
   The wpcf7-*, form-control, btn and btn-theme classes are expected to be
   styled by your theme / Contact Form 7. These rules only handle the grid. */

.scf-wrapper {
	max-width: 700px;
	margin: 0 auto;
}

.scf-form .scf-row {
	display: flex;
	flex-wrap: wrap;
	gap: 16px;
	margin-bottom: 16px;
}

.scf-form .scf-col {
	flex: 1 1 0;
	min-width: 0;
	display: flex;
	flex-direction: column;
}

.scf-form label {
	margin-bottom: 6px;
	font-weight: 600;
}

.scf-form .form-control {
	width: 100%;
	padding: 10px 12px;
	box-sizing: border-box;
}

.scf-form textarea.form-control {
	resize: vertical;
}

.scf-required {
	color: #d63638;
}

/* Submit button spinner (shown while an AJAX request is in flight).
   wpcf7's own `has-spinner` styling may also apply if Contact Form 7 is
   active; this provides a standalone fallback so the button still spins. */
.scf-form .wpcf7-submit.submitting {
	position: relative;
	opacity: 0.85;
	cursor: progress;
	pointer-events: none;
	padding-right: 2.5em;
}

.scf-form .wpcf7-submit.submitting::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0.9em;
	width: 1em;
	height: 1em;
	margin-top: -0.5em;
	border: 2px solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	animation: scf-spin 0.6s linear infinite;
}

@keyframes scf-spin {
	to {
		transform: rotate( 360deg );
	}
}

/* Hide the honeypot field from real users. */
.scf-hp {
	position: absolute !important;
	left: -9999px !important;
	top: -9999px !important;
	height: 0;
	overflow: hidden;
}

/* Notices */
.scf-notice {
	padding: 12px 16px;
	margin-bottom: 16px;
	border-radius: 4px;
}

.scf-notice ul {
	margin: 0;
	padding-left: 18px;
}

.scf-success {
	background: #edfaef;
	border: 1px solid #46b450;
	color: #1e7c30;
}

.scf-error {
	background: #fbeaea;
	border: 1px solid #d63638;
	color: #a02124;
}

/* Stack columns on small screens. */
@media ( max-width: 600px ) {
	.scf-form .scf-row {
		flex-direction: column;
		gap: 12px;
	}
}
