/**
 * Brief 2 + Contact Form 7
 * Styles bare CF7 tags to match .brief-2__form chrome (same body as Contact 1).
 */

.brief-2__form .wpcf7 {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--layout-brief2-form-gap, 2rem);
	width: 100%;
	margin: 0;
}

.brief-2__form .wpcf7-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	gap: var(--layout-brief2-form-gap, 2rem);
	width: 100%;
	margin: 0;
}

@media (min-width: 768px) {
	.brief-2__form .wpcf7-form {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		column-gap: var(--layout-brief2-row-gap, 1.5rem);
		row-gap: var(--layout-brief2-form-gap, 2rem);
	}

	.brief-2__form .wpcf7-form > p:has(textarea),
	.brief-2__form .wpcf7-form > p:has(.wpcf7-submit),
	.brief-2__form .wpcf7-form > .wpcf7-response-output {
		grid-column: 1 / -1;
	}
}

.brief-2__form .wpcf7-form > p {
	display: flex;
	flex-direction: column;
	gap: var(--layout-brief2-field-gap, 0.75rem);
	width: 100%;
	min-width: 0;
	margin: 0;
	padding-bottom: var(--layout-brief2-field-pad, 0.5rem);
}

.brief-2__form .wpcf7-form > p:has(textarea) {
	padding-top: var(--layout-brief2-brief-pad-top, 0.5rem);
	padding-bottom: var(--space-2, 0.5rem);
}

.brief-2__form .wpcf7-form > p:has(.wpcf7-submit) {
	padding-bottom: 0;
	justify-content: flex-start;
}

.brief-2__form .wpcf7-form-control-wrap {
	display: block;
	width: 100%;
}

.brief-2__form .wpcf7-form br {
	display: none;
}

/* Underline fields — same as .brief-2__control */
.brief-2__form .wpcf7-form input.wpcf7-text,
.brief-2__form .wpcf7-form input.wpcf7-email,
.brief-2__form .wpcf7-form input.wpcf7-tel,
.brief-2__form .wpcf7-form input.wpcf7-url,
.brief-2__form .wpcf7-form input.wpcf7-number,
.brief-2__form .wpcf7-form input.wpcf7-date,
.brief-2__form .wpcf7-form textarea.wpcf7-textarea {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 12px 0;
	border: 0;
	border-bottom: 1px solid var(--color-border-base, #6d6d6d);
	border-radius: 0;
	background: transparent;
	box-shadow: none;
	appearance: none;
	font-family: inherit;
	font-size: var(--font-size-compact, 14px);
	line-height: var(--font-leading-compact, 1.4);
	font-weight: var(--font-weight-medium, 500);
	color: inherit;
	caret-color: var(--color-neutral-0, #fff);
	resize: none;
	transition: border-bottom-color var(--motion-duration-instant, 150ms)
		var(--motion-easing-standard, ease);
}

.brief-2__form .wpcf7-form textarea.wpcf7-textarea {
	min-height: 2.5rem;
}

.brief-2__form .wpcf7-form input.wpcf7-text:focus,
.brief-2__form .wpcf7-form input.wpcf7-email:focus,
.brief-2__form .wpcf7-form input.wpcf7-tel:focus,
.brief-2__form .wpcf7-form input.wpcf7-url:focus,
.brief-2__form .wpcf7-form input.wpcf7-number:focus,
.brief-2__form .wpcf7-form input.wpcf7-date:focus,
.brief-2__form .wpcf7-form textarea.wpcf7-textarea:focus {
	outline: none;
	border-bottom-color: var(--color-neutral-0, #fff);
}

.brief-2__form .wpcf7-form input.wpcf7-text:focus-visible,
.brief-2__form .wpcf7-form input.wpcf7-email:focus-visible,
.brief-2__form .wpcf7-form input.wpcf7-tel:focus-visible,
.brief-2__form .wpcf7-form input.wpcf7-url:focus-visible,
.brief-2__form .wpcf7-form input.wpcf7-number:focus-visible,
.brief-2__form .wpcf7-form input.wpcf7-date:focus-visible,
.brief-2__form .wpcf7-form textarea.wpcf7-textarea:focus-visible {
	outline: 2px solid var(--color-neutral-0, #fff);
	outline-offset: 2px;
}

.brief-2__form .wpcf7-form input.wpcf7-text::placeholder,
.brief-2__form .wpcf7-form input.wpcf7-email::placeholder,
.brief-2__form .wpcf7-form input.wpcf7-tel::placeholder,
.brief-2__form .wpcf7-form input.wpcf7-url::placeholder,
.brief-2__form .wpcf7-form input.wpcf7-number::placeholder,
.brief-2__form .wpcf7-form input.wpcf7-date::placeholder,
.brief-2__form .wpcf7-form textarea.wpcf7-textarea::placeholder {
	opacity: 1;
	color: var(--color-text-secondary, #a3a3a3);
	font-weight: var(--font-weight-medium, 500);
}

/* Submit ≈ .btn-1 on dark brief-2 */
.brief-2__form .wpcf7-form input.wpcf7-submit {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: auto;
	margin: 0;
	padding: var(--layout-btn1-padding-block, 0.75rem) var(--layout-btn1-padding-inline, 1.25rem);
	border: 0;
	border-radius: var(--radius-xs, 2px);
	background-color: var(--color-neutral-0, #fff);
	box-shadow: none;
	appearance: none;
	cursor: pointer;
	font-family: inherit;
	font-size: var(--font-size-compact, 14px);
	line-height: var(--font-leading-compact, 1.4);
	font-weight: var(--font-weight-medium, 500);
	color: var(--color-text-on-inverse, #111);
	transition: opacity var(--motion-duration-instant, 150ms) var(--motion-easing-standard, ease);
}

.brief-2__form .wpcf7-form input.wpcf7-submit:hover,
.brief-2__form .wpcf7-form input.wpcf7-submit:focus-visible {
	opacity: 0.92;
}

.brief-2__form .wpcf7-form input.wpcf7-submit:focus-visible {
	outline: 2px solid var(--color-neutral-0, #fff);
	outline-offset: 2px;
}

.brief-2__form .wpcf7-spinner {
	margin-left: 0.5rem;
	vertical-align: middle;
}

.brief-2__form .wpcf7-not-valid-tip {
	margin-top: 0.35rem;
	font-size: var(--font-size-xs, 12px);
	line-height: 1.3;
	color: #ff8a8a;
}

.brief-2__form .wpcf7-response-output {
	margin: 0;
	padding: 0.75rem 0 0;
	border: 0;
	font-size: var(--font-size-compact, 14px);
	line-height: var(--font-leading-compact, 1.4);
}

.brief-2__cf7-missing {
	margin: 0;
	font-size: 0.875rem;
	color: #ff8a8a;
}
