/* Page Section */

.wpfox-page-section {
	--page-section-spacing-default: max(80px, var(--spacing-200));
	--page-section-spacing-top: var(--page-section-spacing-default);
	--page-section-spacing-bottom: var(--page-section-spacing-default);
	--page-section-spacing-top-scalar: 1;
	--page-section-spacing-bottom-scalar: 1;
	--page-section-padding-top: calc(var(--page-section-spacing-top) * var(--page-section-spacing-top-scalar));
	--page-section-padding-bottom: calc(var(--page-section-spacing-bottom) * var(--page-section-spacing-bottom-scalar));
	--page-section-margin-top: calc(var(--page-section-spacing-top) * var(--page-section-spacing-top-scalar));
	--page-section-margin-bottom: calc(var(--page-section-spacing-bottom) * var(--page-section-spacing-bottom-scalar));
	margin-top: var(--page-section-margin-top);
	margin-bottom: var(--page-section-margin-bottom);
}

@media (max-width: 959px) {
	.entry-content > .wpfox-page-section:last-child > .wrapper {
		padding-bottom: 90px;
	}
}

.wpfox-page-section > .wrapper {
	position: relative;
	padding-top: var(--page-section-padding-top);
	padding-bottom: var(--page-section-padding-bottom);
	max-width: none !important;
	margin-left: calc(50% - 50vw) !important;
	margin-right: calc(50% - 50vw) !important;
	padding-left: calc(50vw - 50%);
	padding-right: calc(50vw - 50%);
	background-color: inherit;
	background-image: inherit;
	overflow: hidden;
}

.wpfox-page-section:not(.has-background) {
	--page-section-padding-top: 0px;
	--page-section-padding-bottom: 0px;
}

.wpfox-page-section.has-background {
	--page-section-margin-top: 0px;
	--page-section-margin-bottom: 0px;
}

.wpfox-page-section>* {
	max-width: var(--wp--custom--content-size);
	margin-left: auto !important;
	margin-right: auto !important;
}

.wpfox-page-section.has-full-height > .wrapper {
	min-height: calc(100vh - var(--header-height) - var(--page-section-margin-top) - var(--page-section-margin-bottom) - var(--page-section-padding-top) - var(--page-section-padding-bottom));
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.wpfox-page-section .bgimage {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.wpfox-page-section .bgimage img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.wpfox-page-section .bgvideo, .wpfox-page-section .bgvideo::after, .wpfox-page-section .bgvideo video {
	position: absolute;
	top: 0;
	left: 0;
	max-width: none !important;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.wpfox-page-section .bgvideo::after {
	background-color: var(--wp--preset--color--default-text);
	content: "";
	opacity: 0.32;
}

.wpfox-page-section .bgpattern {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: 100% auto;
	background-repeat: no-repeat;
}

.wpfox-page-section .bgpattern::before,
.wpfox-page-section .bgpattern::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: 100% auto;
	background-repeat: no-repeat;
}

.wpfox-page-section .bgpattern.dots-top::before,
.wpfox-page-section .bgpattern.dots-both::before {
	background-image: url('../../assets/images/pattern-dots-top.png');
	background-position: top left;
}

.wpfox-page-section .bgpattern.dots-bottom::after,
.wpfox-page-section .bgpattern.dots-both::after {
	background-image: url('../../assets/images/pattern-dots-bottom.png');
	background-position: bottom right;
}

@media (max-width: 959px) {
	.wpfox-page-section .bgpattern::before,
	.wpfox-page-section .bgpattern::after {
		background-size: 960px auto;
	}
}

.wpfox-page-section .inner-blocks {
	position: relative;
}

.wpfox-page-section .acf-innerblocks-container > .wp-block-group {
	margin: 0 auto;
}


/* Page Section - Intro Section */

.wpfox-page-section.is-style-intro>.wrapper {
	text-align: center;
}

.wpfox-page-section.is-style-intro>.wrapper>* {
	max-width: max(900px, 900rem/var(--base-size));
	margin-left: auto;
	margin-right: auto;
}

.wpfox-page-section.is-style-intro h2,
.wpfox-page-section.is-style-intro .has-h-2-font-size {
	--font-size: 50;
}

.wpfox-page-section.is-style-intro h2+*,
.wpfox-page-section.is-style-intro .has-h-2-font-size+* {
	margin-top: var(--spacing-25);
}

.wpfox-page-section.is-style-intro p {
	--font-size: 22;
}