.wp-block-wrd-contact-header {
	isolation: isolate;
	position: relative;
}

.wp-block-wrd-contact-header__bg {
	position: absolute;
	z-index: -1;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
}

@media (width >= 40rem /* 640px */) {
	.wp-block-wrd-contact-header__bg {
		width: 66%;
	}
}

@media (width >= 64rem /* 1024px */) {
	.wp-block-wrd-contact-header__bg {
		width: 50%;
	}
}

@media (width >= 80rem /* 1280px */) {
	.wp-block-wrd-contact-header__bg {
		width: 33%;
	}
}

@media (width >= 96rem /* 1536px */) {
	.wp-block-wrd-contact-header__bg {
		width: 35rem;
	}
}

.wp-block-wrd-contact-header__socials svg {
	height: calc(var(--spacing) * 8);
	width: auto;
	fill: #567cc8;
}

.wp-block-wrd-contact-header__form {
	.wpcf7-form {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 1.5rem;
	}

	.wpcf7-form > label {
		display: flex;
		flex-direction: column;
		gap: 0.75rem;
		font-weight: 500;
		font-size: 0.875rem;
		order: 10;

		&:has(select, textarea) {
			grid-column: span 2;
		}
	}

	.wpcf7-form-control-wrap:has(.wpcf7-text, .wpcf7-select, .wpcf7-textarea) {
		display: flex;
		border-radius: 0.25rem;
		background-color: #f8f8f8;
		font-size: 1rem;
		font-weight: 400;
		transition: background-color 150ms ease, outline 250ms ease,
			outline-offset 250ms ease;
		outline: 1px solid transparent;
		outline-offset: 0;

		&:hover {
			background-color: #eeeeee;
		}

		&:focus-within {
			outline: 1px solid var(--colourway__primary);
			outline-offset: 2px;
		}
	}

	.wpcf7-form-control.wpcf7-text,
	.wpcf7-form-control.wpcf7-select,
	.wpcf7-form-control.wpcf7-textarea {
		display: block;
		width: 100%;
		min-width: 0px;
		padding: 0.75rem;

		&:focus {
			outline: none;
		}
	}

	.wpcf7-submit {
		order: 20;
	}

	.wpcf7-response-output {
		grid-column: span 2;
		padding: 0.75rem !important;
		margin: 0 !important;
		border: none !important;
		background-color: #f8f8f8;
		border-radius: 0.25rem;
		order: 15;
	}

	.wpcf7 form.sent .wpcf7-response-output {
		background: linear-gradient(45deg, #fae4c1, #dbdb9a, #8aa568);
		color: #25421d;
	}

	.wpcf7 form.failed .wpcf7-response-output,
	.wpcf7 form.aborted .wpcf7-response-output,
	.wpcf7 form.spam .wpcf7-response-output,
	.wpcf7 form.invalid .wpcf7-response-output,
	.wpcf7 form.unaccepted .wpcf7-response-output,
	.wpcf7 form.payment-required .wpcf7-response-output {
		background: linear-gradient(45deg, #f1dbba, #f5c260, #cbad94);
		color: #4f2625;
	}
}
