/**
 * Optional styling for Contact Form 7 and WPForms.
 *
 * Loaded only when one of those plugins is active. Forms inherit the Servnora
 * typography, colour and spacing tokens so that they match the rest of the site.
 */

.wpcf7 label,
.wpforms-field-label {
	color: var(--wp--preset--color--contrast);
	display: block;
	font-size: var(--wp--preset--font-size--small);
	font-weight: 650;
	margin-block-end: 0.35rem;
}

.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="url"],
.wpcf7 input[type="date"],
.wpcf7 input[type="number"],
.wpcf7 select,
.wpcf7 textarea,
.wpforms-form input[type="text"],
.wpforms-form input[type="email"],
.wpforms-form input[type="tel"],
.wpforms-form input[type="url"],
.wpforms-form input[type="number"],
.wpforms-form select,
.wpforms-form textarea {
	background-color: var(--wp--preset--color--base);
	border: 1px solid var(--wp--preset--color--border);
	border-radius: var(--wp--custom--radius--small);
	color: var(--wp--preset--color--contrast);
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--medium);
	line-height: 1.5;
	padding: 0.75rem 0.9rem;
	inline-size: 100%;
}

.wpcf7 :where(input, select, textarea):focus-visible,
.wpforms-form :where(input, select, textarea):focus-visible {
	border-color: var(--wp--preset--color--primary);
	outline: 2px solid var(--wp--preset--color--primary);
	outline-offset: 1px;
}

.wpcf7 input[type="submit"],
.wpcf7 button[type="submit"],
.wpforms-form button[type="submit"],
.wpforms-form input[type="submit"] {
	background-color: var(--wp--preset--color--primary);
	border: 2px solid var(--wp--preset--color--primary);
	border-radius: var(--wp--custom--radius--small);
	color: var(--wp--preset--color--base);
	cursor: pointer;
	font-family: var(--wp--preset--font-family--sans);
	font-size: var(--wp--preset--font-size--medium);
	font-weight: 600;
	min-block-size: 48px;
	padding: 0.9rem 1.75rem;
}

.wpcf7 input[type="submit"]:hover,
.wpcf7 button[type="submit"]:hover,
.wpforms-form button[type="submit"]:hover,
.wpforms-form input[type="submit"]:hover {
	background-color: var(--wp--preset--color--primary-strong);
	border-color: var(--wp--preset--color--primary-strong);
}

.wpcf7 form .wpcf7-response-output {
	border-radius: var(--wp--custom--radius--small);
	border-width: 1px;
	font-size: var(--wp--preset--font-size--small);
	margin-inline: 0;
	padding: 0.85rem 1rem;
}

.wpcf7-not-valid-tip,
.wpforms-error {
	color: #9b1c1c;
	font-size: var(--wp--preset--font-size--caption);
}

.wpforms-container .wpforms-field {
	padding-block: 0.6rem;
}
