/* Contact Form 7 — an das Design-System angeglichen */

.wpcf7-form {
	display: flex;
	flex-direction: column;
	gap: var(--space-sm);
}

.wpcf7-form p {
	margin: 0;
}

.wpcf7-form label {
	display: flex;
	flex-direction: column;
	gap: var(--space-3xs);
	font-size: 0.9rem;
	font-weight: 500;
	color: var(--ink);
}

.wpcf7-form input[type="text"],
.wpcf7-form input[type="email"],
.wpcf7-form input[type="tel"],
.wpcf7-form select,
.wpcf7-form textarea {
	width: 100%;
	box-sizing: border-box;
	font-family: var(--font-body);
	font-size: 1rem;
	padding: 0.75rem 0.9rem;
	border: 1px solid var(--border-strong);
	border-radius: var(--radius);
	background: var(--bg);
	color: var(--ink);
	transition: border-color var(--duration-fast) var(--ease-out), box-shadow var(--duration-fast) var(--ease-out);
	min-height: 44px;
}

.wpcf7-form textarea {
	min-height: 140px;
	resize: vertical;
}

.wpcf7-form input:focus,
.wpcf7-form select:focus,
.wpcf7-form textarea:focus {
	outline: none;
	border-color: var(--accent);
	box-shadow: 0 0 0 3px var(--accent-soft);
}

.wpcf7-form .wpcf7-submit {
	align-self: flex-start;
	background: var(--accent);
	color: #fff;
	border: none;
	border-radius: var(--radius);
	padding: 0.9rem 1.8rem;
	font-weight: 600;
	font-size: 0.95rem;
	cursor: pointer;
	min-height: 44px;
	transition: background var(--duration-base) var(--ease-out), transform var(--duration-fast) var(--ease-out);
}

.wpcf7-form .wpcf7-submit:hover {
	background: var(--accent-dark);
}

.wpcf7-form .wpcf7-submit:active {
	transform: scale(0.98);
}

.wpcf7-not-valid-tip {
	color: #b3261e;
	font-size: 0.82rem;
	font-weight: 500;
}

.wpcf7-response-output {
	border-radius: var(--radius);
	padding: var(--space-sm);
	font-size: 0.9rem;
}
