.wpcf7-form { max-width: 640px; }
.wpcf7-form p { margin-bottom: 1.25rem; }
.wpcf7-form label { display: block; font-weight: 600; margin-bottom: 0.4rem; font-size: var(--step--1); }
.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form textarea {
	width: 100%;
	padding: 0.85rem 1rem;
	border: 1px solid var(--border);
	border-radius: var(--radius);
	font-family: var(--font-body);
	font-size: var(--step-0);
	background: var(--white);
	color: var(--text);
	transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}
.wpcf7-form input:focus,
.wpcf7-form textarea:focus {
	outline: none;
	border-color: var(--primary);
	box-shadow: 0 0 0 3px oklch(38% 0.08 235 / 0.15);
}
.wpcf7-form textarea { min-height: 140px; resize: vertical; }
.wpcf7-form input[type="submit"] {
	display: inline-flex;
	align-items: center;
	padding: 0.9rem 1.8rem;
	border-radius: var(--radius);
	background: var(--primary);
	color: var(--white);
	border: none;
	font-weight: 600;
	font-size: var(--step-0);
	cursor: pointer;
	min-height: 44px;
	transition: background var(--transition-fast), transform var(--transition-fast);
}
.wpcf7-form input[type="submit"]:hover { background: var(--primary-dark); }
.wpcf7-form input[type="submit"]:active { transform: scale(0.98); }
.wpcf7-form .wpcf7-not-valid-tip { color: oklch(50% 0.18 25); font-size: var(--step--1); margin-top: 0.35rem; }
.wpcf7-response-output { border-radius: var(--radius); padding: 1rem 1.25rem; margin-top: 1rem; }
