/**
 * forms.css
 * Shared styling for every form on the site: the contact section,
 * WordPress comment form, and search form — no plugin/page-builder
 * form styles to override.
 */

.form-row {
	display: flex;
	flex-direction: column;
	gap: var(--space-2);
	margin-bottom: var(--space-4);
}

.form-row label {
	font-weight: 600;
	font-size: 0.9375rem;
}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="number"],
textarea,
select {
	width: 100%;
	padding: var(--space-3) var(--space-4);
	border: 1px solid var(--dg-border);
	border-radius: var(--radius-md);
	background: var(--dg-surface);
	transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

input:focus,
textarea:focus,
select:focus {
	outline: none;
	border-color: var(--dg-secondary);
	box-shadow: 0 0 0 3px var(--dg-primary-100);
}

textarea {
	resize: vertical;
	min-height: 120px;
}

.contact__form {
	display: flex;
	flex-direction: column;
}

/* ---------- WordPress comment form ---------- */
.comment-form p {
	margin-bottom: var(--space-4);
}

.comment-form label {
	display: block;
	font-weight: 600;
	margin-bottom: var(--space-2);
}

.comment-form input,
.comment-form textarea {
	width: 100%;
}

.comment-reply-title {
	font-size: 1.25rem;
	margin-bottom: var(--space-4);
}

/* ---------- Search form ---------- */
.search-form {
	display: flex;
	gap: var(--space-2);
	max-width: 480px;
	margin-inline: auto;
}

.search-form .search-field {
	flex: 1;
}
