/* Reference 04: native Cover/Columns; Forminator owns fields and submission. */
@property --oliver-contact-hover-progress {
	syntax: "<number>";
	inherits: false;
	initial-value: 0;
}
.wp-block-cover.is-style-home-contact {
	box-sizing: border-box;
	margin-block: 0;
	padding-block: var(--oa-space-section) !important;
	padding-inline: 40px !important;
	color: var(--oa-color-white);
	font-family: "OA Hero DM Sans", sans-serif;
	/* Spring response: Jurista stiffness 500 / damping 60 / mass 1. */
	--oliver-contact-hover-ease: linear(
		0,
		0.16258,
		0.38682,
		0.56389,
		0.69198,
		0.78282,
		0.84694,
		0.89213,
		0.92399,
		0.94643,
		0.96225,
		0.9734,
		0.98126,
		0.98679,
		0.99069,
		0.99344,
		0.99538,
		0.99674,
		0.9977,
		0.99838,
		1
	);
}
.is-style-home-contact > .wp-block-cover__background {
	opacity: 1;
	background:
		linear-gradient(
			90deg,
			color-mix(in oklch, var(--oa-color-scrim) 85%, transparent) 0%,
			color-mix(in oklch, var(--oa-color-scrim) 0%, transparent) 66.0174%
		),
		linear-gradient(
			color-mix(in oklch, var(--oa-color-scrim) 80%, transparent),
			color-mix(in oklch, var(--oa-color-scrim) 80%, transparent)
		);
}
.is-style-home-contact > .wp-block-cover__image-background, .is-style-home-contact > .oa-client-picture > .wp-block-cover__image-background {
	object-position: center;
}
@media (min-width: 810px) {
	.is-style-home-contact > .wp-block-cover__image-background,
	.is-style-home-contact > .oa-client-picture > .wp-block-cover__image-background {
		object-position: 75% top;
		transform: scale(1.25);
		transform-origin: right center;
	}
}
@media (min-width: 1280px) {
	.is-style-home-contact > .wp-block-cover__image-background,
	.is-style-home-contact > .oa-client-picture > .wp-block-cover__image-background {
		object-position: right top;
		transform: scale(1.35);
	}
}
.is-style-home-contact > .wp-block-cover__inner-container {
	inline-size: 100%;
	max-inline-size: 1360px;
	margin-inline: auto;
}
.is-style-home-contact .wp-block-columns {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, calc(45% + 48px));
	gap: 10%;
	margin-block: 0;
	margin-inline: 0;
	align-items: stretch;
}
.is-style-home-contact .wp-block-column {
	min-inline-size: 0;
}
.is-style-home-contact .wp-block-column:first-child {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 32px;
	color: var(--oa-color-white);
}
.is-style-home-contact .wp-block-column:first-child > .wp-block-group > * {
	margin-block: 0;
}
.is-style-home-contact .wp-block-column:first-child h2 {
	color: var(--oa-color-white);
	font:
		300 var(--oa-type-section-title)/1.1 "OA Hero Fraunces",
		serif;
	letter-spacing: -0.06em;
	margin-block: 0;
	margin-inline: 0;
}
.is-style-home-contact .wp-block-column:first-child p {
	color: var(--oa-color-white);
	--oa-type-fluid: clamp(1rem, 0.7845745rem + 0.4255319vw, 1.125rem);
	font-size: var(--oa-type-fluid);
	line-height: 1.3;
	max-inline-size: none;
	margin-block: 0;
}
.is-style-home-contact .wp-block-column:first-child .has-lead-font-size {
	margin-block-start: 24px;
	--oa-type-fluid: clamp(1rem, 0.7845745rem + 0.4255319vw, 1.125rem);
	font-size: var(--oa-type-fluid) !important;
}
.wp-block-cover.is-style-home-contact .wp-block-column:first-child .is-style-contact-page-links {
	margin-block-start: 32px;
}
.wp-block-cover.is-style-home-contact .is-style-contact-page-links p::before {
	background: var(--oa-color-white);
}
.wp-block-cover.is-style-home-contact .is-style-contact-page-links a {
	color: var(--oa-color-white);
}
.wp-block-cover.is-style-home-contact .is-style-contact-page-links a:focus-visible {
	outline: 2px solid currentColor;
	outline-offset: 4px;
}
@media (hover: hover) and (pointer: fine) {
	.wp-block-cover.is-style-home-contact .is-style-contact-page-links a:hover {
		text-decoration: underline;
	}
}
.is-style-home-contact .wp-block-buttons {
	margin-block-start: 32px !important;
}
.is-style-home-contact .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--oa-color-white);
	color: var(--oa-color-dark);
	border: 0;
	border-radius: 0;
	padding-block: 18px;
	padding-inline: 24px;
	--oa-type-fluid: clamp(0.875rem, 0.6595745rem + 0.4255319vw, 1rem);
	font:
		500 var(--oa-type-fluid)/1.1 "OA Hero DM Sans",
		sans-serif;
	text-decoration: none;
}
.is-style-home-contact .wp-block-button__link::after,
.is-style-home-contact .forminator-button-submit::after {
	content: "";
	display: inline-block;
	inline-size: 15px;
	block-size: 15px;
	flex-shrink: 0;
	margin-inline-start: 0;
	vertical-align: -2px;
	background: currentColor;
	mask-image:
		url("../images/hero-arrow-diagonal.svg"),
		url("../images/hero-arrow-diagonal.svg");
	mask-repeat: no-repeat;
	mask-size: 9px 9px;
	mask-position:
		3px 3px,
		-10px 16px;
}
@media (prefers-reduced-motion: no-preference) {
	.is-style-home-contact .wp-block-button__link::after,
	.is-style-home-contact .forminator-button-submit::after {
		transition: mask-position 700ms var(--oliver-contact-hover-ease);
	}
}
.is-style-home-contact .forminator-button-submit::after {
	margin-inline-start: 8px;
}
.is-style-home-contact .wp-block-button__link:focus-visible {
	outline: 2px solid var(--oa-color-white);
	outline-offset: 4px;
}
.is-style-home-contact .wp-block-column:last-child {
	background: var(--oa-color-white);
	color: var(--oa-color-heading);
	padding-block: 48px;
	padding-inline: 48px;
	box-sizing: border-box;
}
.is-style-home-contact .wp-block-column:last-child > h3 {
	color: var(--oa-color-heading);
	--oa-type-fluid: clamp(1.25rem, 0.3882979rem + 1.7021277vw, 1.75rem);
	font:
		300 var(--oa-type-fluid)/1.2 "OA Hero Fraunces",
		serif;
	letter-spacing: -0.04em;
	margin-block: 0 32px;
	margin-inline: 0;
}
.is-style-home-contact .wp-block-template-part {
	margin-block: 0;
	margin-inline: 0;
}
.is-style-home-contact .forminator-ui.forminator-custom-form {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 20px 32px;
	font-family: "OA Hero DM Sans", sans-serif !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	> :is(.forminator-row, .forminator-response-message) {
	grid-column: 1 / -1;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	> .forminator-row:has(
		:is(
			.forminator-field-name,
			.forminator-field-phone,
			.forminator-field-email,
			.forminator-field-select
		)
	) {
	grid-column: auto;
}
.is-style-home-contact .forminator-ui.forminator-custom-form > p {
	display: none;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-field
	p:empty {
	display: none;
}
.is-style-home-contact .forminator-ui.forminator-custom-form .forminator-row {
	margin-block: 0 !important;
	margin-inline: 0 !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-row-last {
	margin-block-start: 4px !important;
}
.is-style-home-contact .forminator-ui.forminator-custom-form .forminator-col {
	min-inline-size: 0;
	padding-block: 0 !important;
	padding-inline: 0 !important;
	margin-block: 0;
	margin-inline: 0;
	inline-size: 100%;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-row:has(
		:is(
			.forminator-field-name,
			.forminator-field-phone,
			.forminator-field-email,
			.forminator-field-select
		)
	)
	.forminator-field {
	display: flex;
	flex-direction: column;
	block-size: 100%;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-row:has(
		:is(
			.forminator-field-name,
			.forminator-field-phone,
			.forminator-field-email,
			.forminator-field-select
		)
	)
	:is(.forminator-input, .select2-container) {
	margin-block-start: auto !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	:is(.forminator-input, .forminator-textarea, select, .select2-selection) {
	background: var(--oa-color-white) !important;
	color: var(--oa-color-heading) !important;
	border: 0 !important;
	border-block-end: 1px solid var(--wp--preset--color--blue-grey) !important;
	outline: 2px solid transparent !important;
	border-radius: 0 !important;
	padding-block: 16px !important;
	padding-inline: 0 !important;
	font-size: 16px !important;
	line-height: 1.2 !important;
	min-block-size: 50px;
	box-sizing: border-box !important;
	font-weight: 400 !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	:is(.forminator-input, .select2-selection) {
	block-size: 50px !important;
	min-block-size: 50px !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-textarea {
	min-block-size: 124px;
	resize: vertical;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	:is(
		.forminator-label,
		.forminator-checkbox__label,
		.forminator-consent__label
	) {
	color: var(--oa-color-heading) !important;
	--oa-type-fluid: clamp(0.75rem, 0.5345745rem + 0.4255319vw, 0.875rem);
	font-size: var(--oa-type-fluid) !important;
	font-weight: 400 !important;
	line-height: 1.3 !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-description {
	color: var(--oa-color-body) !important;
	font-size: 14px !important;
	line-height: 1.3 !important;
	margin-block: 8px 0 !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.select2-container {
	inline-size: 100% !important;
	max-inline-size: 100%;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.select2-selection__rendered {
	color: var(--oa-color-heading) !important;
	padding-inline-end: 8px !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.select2-selection__arrow,
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.select2-selection__arrow::before {
	color: var(--oa-color-heading) !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-checkbox__wrapper {
	padding-block: 0;
	padding-inline: 0;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-checkbox {
	min-block-size: 0;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-checkbox-box {
	inline-size: 16px !important;
	block-size: 16px !important;
	border-color: var(--oa-color-heading) !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-consent__label {
	margin-inline-start: 8px !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-consent__label
	a {
	color: var(--oa-color-heading);
	text-decoration: underline;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-button-submit {
	inline-size: 100%;
	background: var(--oa-color-action) !important;
	color: var(--oa-color-white) !important;
	min-block-size: 54px;
	padding-block: 18px !important;
	padding-inline: 24px !important;
	font:
		500 16px/1.1 "OA Hero DM Sans",
		sans-serif !important;
	box-shadow: none !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-button-submit:focus-visible {
	outline: 2px solid var(--oa-color-heading);
	outline-offset: 4px;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	:is(
		.forminator-input,
		.forminator-textarea,
		select,
		.select2-selection
	):focus,
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.select2-container--open
	.select2-selection {
	border-block-end-color: var(--oa-color-olive) !important;
	outline: 2px solid transparent !important;
	box-shadow: none !important;
}
@media (forced-colors: active) {
	.is-style-home-contact
		.forminator-ui.forminator-custom-form
		:is(.forminator-input, .forminator-textarea, select, .select2-selection):focus {
		outline-color: Highlight !important;
	}
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-field.forminator-has_error
	:is(
		.forminator-input,
		.forminator-textarea,
		.select2-selection,
		.forminator-checkbox-box
	),
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	[aria-invalid="true"] {
	border-color: var(--wp--preset--color--error) !important;
}
.is-style-home-contact
	.forminator-ui.forminator-custom-form
	.forminator-field:not(:focus-within)
	:is(.forminator-input, .forminator-textarea, select, .select2-selection) {
	border-block-end-color: var(--wp--preset--color--blue-grey) !important;
}
@media (hover: hover) and (pointer: fine) {
	.is-style-home-contact
		.forminator-ui.forminator-custom-form
		.forminator-button-submit:not(:disabled):hover {
		background: var(--oa-color-action-hover) !important;
	}
	.is-style-home-contact .forminator-button-submit:not(:disabled):hover::after {
		mask-position:
			16px -10px,
			3px 3px;
	}
}
@media (min-width: 810px) and (hover: hover) and (pointer: fine) {
	.is-style-home-contact .wp-block-button__link:hover {
		color: var(--oa-color-dark);
		background: var(--oa-color-muted-surface);
	}
	.is-style-home-contact .wp-block-button__link:hover::after {
		mask-position:
			16px -10px,
			3px 3px;
	}
}
@supports (mask-position: 0px 0px) {
	.is-style-home-contact .wp-block-button__link::after,
	.is-style-home-contact .forminator-button-submit::after {
		--oliver-contact-hover-progress: inherit;
		mask-position:
			calc(3px + 13px * var(--oliver-contact-hover-progress))
				calc(3px - 13px * var(--oliver-contact-hover-progress)),
			calc(-10px + 13px * var(--oliver-contact-hover-progress))
				calc(16px - 13px * var(--oliver-contact-hover-progress)) !important;
		transition: none;
	}
	.is-style-home-contact .wp-block-button__link {
		background: var(--oa-color-white);
		color: var(--oa-color-dark);
	}
	@media (prefers-reduced-motion: no-preference) {
		.is-style-home-contact .wp-block-button__link {
			transition: --oliver-contact-hover-progress 700ms
				var(--oliver-contact-hover-ease);
		}
	}
	.is-style-home-contact
		.forminator-ui.forminator-custom-form
		.forminator-button-submit {
		background: var(--oa-color-action) !important;
	}
	@media (prefers-reduced-motion: no-preference) {
		.is-style-home-contact
			.forminator-ui.forminator-custom-form
			.forminator-button-submit {
			transition: --oliver-contact-hover-progress 700ms
				var(--oliver-contact-hover-ease);
		}
	}
	@media (hover: hover) and (pointer: fine) {
		.is-style-home-contact
			.forminator-ui.forminator-custom-form
			.forminator-button-submit:not(:disabled):hover {
			--oliver-contact-hover-progress: 1;
			background: var(--oa-color-action) !important;
		}
	}
	@media (min-width: 810px) and (hover: hover) and (pointer: fine) {
		.is-style-home-contact .wp-block-button__link:hover {
			--oliver-contact-hover-progress: 1;
			background: var(--oa-color-white);
			color: var(--oa-color-dark);
		}
	}
}
@media (prefers-reduced-motion: reduce) {
	.is-style-home-contact .wp-block-button__link,
	.is-style-home-contact
		.forminator-ui.forminator-custom-form
		.forminator-button-submit {
		transition-duration: 100ms;
	}
	.is-style-home-contact .wp-block-button__link::after,
	.is-style-home-contact .forminator-button-submit::after {
		mask-position:
			3px 3px,
			-10px 16px !important;
		transition: none;
	}
}
@media (min-width: 810px) and (max-width: 1279px) {
	.wp-block-cover.is-style-home-contact {
		padding-inline: 32px !important;
	}
	.is-style-home-contact .wp-block-column:first-child h2 {
		font-size: var(--oa-type-section-title);
	}
	.is-style-home-contact .wp-block-columns {
		grid-template-columns: minmax(0, 1fr) minmax(0, calc(47% + 32px));
		gap: 6%;
	}
	.is-style-home-contact .wp-block-column:last-child {
		padding-block: 32px;
		padding-inline: 32px;
	}
	.is-style-home-contact .wp-block-column:last-child > h3 {
		margin-block-end: 24px;
	}
}
@media (max-width: 809px) {
	.wp-block-cover.is-style-home-contact {
		padding-inline: 20px !important;
	}
	.is-style-home-contact .wp-block-columns {
		display: flex;
		flex-direction: column;
		gap: 40px;
	}
	.is-style-home-contact .wp-block-column {
		flex-basis: auto !important;
		inline-size: 100%;
	}
	.is-style-home-contact .wp-block-column:first-child h2 {
		font-size: var(--oa-type-section-title);
	}
	.is-style-home-contact .wp-block-column:first-child p {
		line-height: 1.3;
	}
	.is-style-home-contact .wp-block-column:last-child {
		padding-block: 24px;
		padding-inline: 24px;
	}
	.is-style-home-contact .wp-block-column:last-child > h3 {
		margin-block-end: 20px;
	}
	.is-style-home-contact .wp-block-button__link {
		padding-block: 14px;
		padding-inline: 16px;
		color: var(--oa-color-dark);
	}
	.is-style-home-contact .forminator-ui.forminator-custom-form {
		grid-template-columns: minmax(0, 1fr);
		gap: 16px;
	}
	.is-style-home-contact
		.forminator-ui.forminator-custom-form
		.forminator-row:has(.forminator-field-select)
		.select2-container {
		margin-block-start: 0 !important;
	}
}
