/* Page Header */

.wpfox-page-header {
	--outside-margin: calc(0.5 * (100vw - var(--wp--style--global--content-size)));
	--gap-width: var(--spacing-90);
	
	--text-width: 50%;
	--text-min-height: calc(510rem / var(--base-size));
	
	--image-width: calc(100% - var(--text-width));
	--image-min-overlap: max(30px,calc(45rem / var(--base-size)));
	--image-min-height: calc(594rem / var(--base-size));
	
	--image-position: center center;
}

body.single-post .wpfox-page-header {
	--text-width: 52%;
}

.wpfox-page-header > .wrapper {
	margin: 0 calc(50% - 50vw);
	padding: 0 calc(50vw - 50%);
}

.wpfox-page-header .row {
	gap: var(--gap-width);
	flex-wrap: nowrap;
}

.wpfox-page-header .col-text {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	padding-bottom: var(--image-min-overlap);
	flex-basis: calc(var(--text-width) - 0.5 * var(--gap-width));
}

.wpfox-page-header.layout-image-text .col-text {
	order: 2;
}

.wpfox-page-header .col-text > .wrapper {
	position: relative;
	background-color: var(--wp--preset--color--custom-light-grey);
	padding: max(50px,var(--spacing-100)) 0 max(50px,var(--spacing-80));
	margin-right: calc(-1 * var(--gap-width));
	padding-right: var(--gap-width);
	margin-left: calc(-1 * var(--outside-margin));
	padding-left: var(--outside-margin);
	min-height: var(--text-min-height);
	box-sizing: border-box;
}

.wpfox-page-header.layout-image-text .col-text > .wrapper {
	margin-left: calc(-1 * var(--gap-width));
	padding-left: var(--gap-width);
	margin-right: calc(-1 * var(--outside-margin));
	padding-right: var(--outside-margin);
}

.wpfox-page-header .col-text > .wrapper .acf-innerblocks-container > :last-child {
	margin-bottom: 0;
}

.wpfox-page-header h1 {}

.wpfox-page-header .col-image {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	flex-basis: calc(var(--image-width) - 0.5 * var(--gap-width));
}

.wpfox-page-header .col-image > a {
	display: inline-block;
	width: 100%;
	height: auto;
}

.wpfox-page-header .col-image .wrapper {
	position: relative;
	height: 100%;
	min-height: var(--image-min-height);
	margin-right: calc(-1 * var(--outside-margin));
	display: block;
	width: calc(100% + var(--outside-margin));
	box-shadow: 0 0 var(--spacing-5) #00000021;
	z-index: 1;
}

.wpfox-page-header.layout-image-text .col-image .wrapper {
	margin-left: calc(-1 * var(--outside-margin));
	margin-right: 0;
}

.wpfox-page-header .col-image img {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: var(--image-position);
}

.wpfox-page-header .col-image .bgvideo {
	width: 100%;
	height: 100%;
	position: absolute;
}

.wpfox-page-header .col-image .bgvideo video {
	width: 100%;
	height: 100%;
	position: absolute;
	object-fit: cover;
	object-position: var(--image-position);
}


/* No Image or Background */

.wpfox-page-header.has-no-image .col-text {
	padding-bottom: 0;
}

.wpfox-page-header.has-no-image .col-text > .wrapper {
	position: relative;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	padding-left: calc(50vw - 50%);
	padding-right: calc(50vw - 50%);
	min-height: 0;
	padding-top: var(--spacing-80);
	padding-bottom: var(--spacing-80);
}

@media (max-width: 575px) {
	.wpfox-page-header.layout-text-image {
		padding-bottom: var(--image-min-overlap);
	}
	.wpfox-page-header > .wrapper {
		background-color: var(--wp--preset--color--custom-light-grey);
	}
	.wpfox-page-header .row {
		gap: var(--gap-width);
		flex-wrap: wrap;
	}
	.wpfox-page-header .col-text {
		padding-bottom: 0;
		flex-basis: 100%;
	}
	.wpfox-page-header .col-image {
		flex-basis: 100%;
	}
	.wpfox-page-header.layout-text-image .col-text > .wrapper {
		padding-bottom: 0;
	}
	.wpfox-page-header .col-image .wrapper {
		top: var(--image-min-overlap);
		margin-top: calc(-1 * var(--image-min-overlap));
		min-height: 70vw;
	}
}