/* =========================================================
   Elite Motion base
   ========================================================= */
@font-face {
	font-family: "Ysabeau Office";
	src: url("../fonts/ysabeau-office/YsabeauOffice-VariableFont_wght.woff2") format("woff2");
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
}
main {
	padding:0 !important;
	overflow-x:hidden;
	margin-top:0 !important;
}
main > div,
main > div > div {
	margin:0 !important;
	padding:0 !important;
}
.elite-motion-section {
	position: relative;
	/*overflow: hidden;*/
	padding: clamp(3rem, 7vw, 7rem) clamp(1rem, 5vw, 4rem);
	z-index: 1;
	max-width:100vw !important;
	width:100vw !important;
}
.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)).elite-motion-section {
	max-width:100vw !important;
	width:100vw !important;
	padding:0 0 0 !important;
	min-height:630px;
	display:flex;
	flex-direction:column;
}
.elite-motion-section__inner {
	position: relative;
	z-index: 2;
	max-width: 1360px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: clamp(2rem, 5vw, 5rem);
	padding-top:3vh;
}

.elite-motion-section__content {
	position: relative;
	z-index: 5;
	flex: 1 1 50%;
	background: rgba(255,255,255,0.8);
	padding: 25px;
	border-radius: 5px;
	box-shadow: none;
	transition: all 0.3s;
	margin-top:50px;
	width:60%;
	min-width:60%;
}
.elite-motion-section:not(:first-of-type) .elite-motion-section__content:hover {
	box-shadow: -5px 5px 5px 3px rgba(0,0,0,0.1);
	transform:scale(1.05);
}

.elite-motion-section__title {
	margin-top: 0;
}
.elite-motion-section h1 {
	font-family: "Yanone Kaffeesatz";
	font-size: 92px;/*150px;*/
	text-transform: uppercase;
	font-weight: bold;
	margin:0;
}
.elite-motion-section__body > :first-child {
	margin-top: 0;
}

.elite-motion-section__body > :last-child {
	margin-bottom: 0;
}

.elite-motion-section__images {
	position: relative;
	z-index: 2;
	flex: 1 1 50%;
	min-height: 360px;
	perspective: 1000px;
	perspective-origin: center;
}

.elite-motion-section__image {
	display: block;
	height: auto;
	max-width: 100%;
}
/*.trapezoid-section {
	position: relative;
	max-width: 1100px;
	margin: 0 auto;
	padding: 100px 24px;
}*/

/*.elite-motion-section::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100vw;
	height: 360px;
	transform: translate(-50%, -50%);
	background: var(--colour);
	z-index: -1;
}*//*
.elite-motion-section::before {
	content: "";
	position: absolute;
	top: -0.2%;
	left: 0%;
	width: 100vw;
	height: 20%;
	background: var(--colour, #fff);
	z-index: 2;
}

.elite-motion-section::after {
	content: "";
	position: absolute;
	bottom: -0.2%;
	left: 0%;
	width: 100vw;
	height: 20%;
	background: var(--colour, #fff);
	z-index: 3;
}
.elite-motion-section:nth-of-type(odd)::before {	clip-path: polygon(	0 0,	100% 0,	0 100%);}

.elite-motion-section:nth-of-type(odd)::after {		clip-path: polygon(	100% 100%,	100% 0,	0 100%);}
.elite-motion-section:nth-of-type(even)::before {	clip-path: polygon(	0 0,	100% 0,	100% 100%);}

.elite-motion-section:nth-of-type(even)::after {	clip-path: polygon(	0 0,	100% 100%,	0 100%);}*/
.entry-content{overflow:hidden;}
/* =========================================================
   Motion transform variables

   Important:
   JS writes to --elite-motion-x / y / rotate.
   CSS positioning should use normal left/top/right/bottom where possible.
   If layout transform is needed, use --elite-layout-* variables.
   ========================================================= */

.elite-motion-section--motion-enabled .elite-motion {
	--elite-layout-x: 0px;
	--elite-layout-y: 0px;
	--elite-layout-rotate: 0deg;

	--elite-motion-x: 0px;
	--elite-motion-y: 0px;
	--elite-motion-rotate: 0deg;
	--elite-motion-rotate-x: 0deg;

	transform:
		translate3d(
			calc(var(--elite-layout-x) + var(--elite-motion-x)),
			calc(var(--elite-layout-y) + var(--elite-motion-y)),
			0
		)
		rotateX(var(--elite-motion-rotate-x))
		rotateZ(calc(var(--elite-layout-rotate) + var(--elite-motion-rotate))) !important;

	transform-style: preserve-3d;
	will-change: transform;
	transition: transform 0.08s linear;
}

@media (prefers-reduced-motion: reduce) {
	.elite-motion {
		transform: none !important;
		transition: none !important;
	}
}

/* =========================================================
   Inline layout:
   left_of_content / right_of_content

   Image 1 = bottom layer
   Image 2 = middle layer
   Image 3 = top layer
   ========================================================= */

.elite-motion-section--left-of-content .elite-motion-section__images {
	order: 1;
}

.elite-motion-section--left-of-content .elite-motion-section__content {
	order: 2;
}

.elite-motion-section--right-of-content .elite-motion-section__content {
	order: 1;
}

.elite-motion-section--right-of-content .elite-motion-section__images {
	order: 2;
}

.elite-motion-section__images--inline .elite-motion-section__image--1,
.elite-motion-section__images--inline .elite-motion-section__image--2,
.elite-motion-section__images--inline .elite-motion-section__image--3 {
	position: absolute;
	pointer-events: none;
}

.elite-motion-section__images--inline .elite-motion-section__image--1 {z-index: 1;left: -17.5%;bottom: -17.5%;width: 135%;max-width:135%}
.elite-motion-section__images--inline .elite-motion-section__image--2 {z-index: 2;right: 6%;top: 16%;width: 46%;}
.elite-motion-section__images--inline .elite-motion-section__image--3 {z-index: 3;left: 15%;top: -9%;width: 60%;}
.elite-motion-section--is-first .elite-motion-section__image--1 {z-index: 3;left: -30%;bottom: -30%;width: 180%;max-width:180%}
.elite-motion-section--is-first .elite-motion-section__image--3 {z-index: 3;left: 15%;top: -18%;width: 90%;}

/* =========================================================
   Hard-edge layout:
   hard_left / hard_right

   Image 1 = bottom layer, moves normally with page
   Image 2 = middle layer, JS moves vertically on scroll
   Image 3 = top layer, JS moves left/right and tilts on 3D X axis
   ========================================================= */

.elite-motion-section--hard-left .elite-motion-section__inner,
.elite-motion-section--hard-right .elite-motion-section__inner {
	display: block;
	min-height: 460px;
}

.elite-motion-section--hard-left .elite-motion-section__content,
.elite-motion-section--hard-right .elite-motion-section__content {
	max-width: 720px;
}

.elite-motion-section--hard-left .elite-motion-section__content {
	margin-left: auto;
}

.elite-motion-section--hard-right .elite-motion-section__content {
	margin-right: auto;
}

.elite-motion-section__images--edge {
	position: absolute;
	top: 0;
	bottom: 0;
	width: min(44vw, 560px);
	min-height: 100%;
	z-index: 1;
	pointer-events: none;
}

.elite-motion-section--hard-left .elite-motion-section__images--edge {
	left: 0;
}

.elite-motion-section--hard-right .elite-motion-section__images--edge {
	right: 0;
}

.elite-motion-section__images--edge .elite-motion-section__image--1,
.elite-motion-section__images--edge .elite-motion-section__image--2,
.elite-motion-section__images--edge .elite-motion-section__image--3 {
	position: absolute;
	max-width: none;
	pointer-events: none;
}

.elite-motion-section__images--edge .elite-motion-section__image--1 {
	z-index: 1;
	top: 50%;
	width: min(40vw, 500px);
	--elite-layout-y: -50%;
}

.elite-motion-section--hard-left .elite-motion-section__images--edge .elite-motion-section__image--1 {left: -8vw;}

.elite-motion-section--hard-right .elite-motion-section__images--edge .elite-motion-section__image--1 {right: -8vw;}

.elite-motion-section__images--edge .elite-motion-section__image--2 {
	z-index: 2;
	top: 18%;
	width: min(20vw, 240px);
}

.elite-motion-section--hard-left .elite-motion-section__images--edge .elite-motion-section__image--2 {	left: 4vw;}

.elite-motion-section--hard-right .elite-motion-section__images--edge .elite-motion-section__image--2 {	right: 4vw;}

.elite-motion-section__images--edge .elite-motion-section__image--3 {
	z-index: 3;
	top: 82%;
	width: min(22vw, 260px);
}

.elite-motion-section--hard-left .elite-motion-section__images--edge .elite-motion-section__image--3 {	left: 2vw;}

.elite-motion-section--hard-right .elite-motion-section__images--edge .elite-motion-section__image--3 {	right: 2vw;}
.elite-motion-section__background {
	position: sticky;
	top: 0;
	height: 100vh;
	width:100vw;
	margin-bottom: -100vh;
	background-image: var(--elite-motion-background-image);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 0;
	pointer-events: none;
}

.elite-motion-section--has-background-image {
/*	min-height: 120vh;*/
}

.elite-motion-section--has-background-image .elite-motion-section__inner {
	position: relative;
	z-index: 2;
}

.elite-motion-section--has-background-image .elite-motion-section__content {
	position: relative;
	z-index: 3;
}
/* =========================================================
   Motion disabled fallback
   ========================================================= */

.elite-motion-section--motion-disabled .elite-motion-section__image {
	transform: none !important;
	transition: none !important;
}

/* =========================================================
   Mobile
   ========================================================= */

@media (max-width: 767px) {
	.elite-motion-section {
		padding: 3rem 1.25rem;
	}

	.elite-motion-section__inner {
		display: flex;
		flex-direction: column;
		gap: 2rem;
		min-height: 0;
	}

	.elite-motion-section__content,
	.elite-motion-section__images {
		order: initial;
		width: 100%;
		flex: none;
	}

	.elite-motion-section__images {
		min-height: 260px;
	}

	.elite-motion-section__images--edge {
		position: relative;
		inset: auto;
		width: 100%;
		min-height: 260px;
	}

	.elite-motion-section--hard-left .elite-motion-section__content,
	.elite-motion-section--hard-right .elite-motion-section__content {
		max-width: none;
		margin: 0;
	}

	.elite-motion-section__images--inline .elite-motion-section__image--1,
	.elite-motion-section__images--edge .elite-motion-section__image--1 {
		width: min(78vw, 360px);
		left: 50%;
		right: auto;
		top: 50%;
		bottom: auto;
		--elite-layout-x: -50%;
		--elite-layout-y: -50%;
	}

	.elite-motion-section__images--inline .elite-motion-section__image--2,
	.elite-motion-section__images--edge .elite-motion-section__image--2 {
		width: min(42vw, 190px);
		left: auto;
		right: 8%;
		top: 12%;
	}

	.elite-motion-section__images--inline .elite-motion-section__image--3,
	.elite-motion-section__images--edge .elite-motion-section__image--3 {
		width: min(50vw, 230px);
		left: 8%;
		right: auto;
		top: auto;
		bottom: 4%;
	}
	.elite-motion-section--motion-enabled .elite-motion {
		transform:
			translate3d(
				calc(var(--elite-layout-x) + var(--elite-motion-x)),
				calc(var(--elite-layout-y) + var(--elite-motion-y)),
				0
			)
			rotateX(var(--elite-motion-rotate-x, 0deg))
			rotateZ(calc(var(--elite-layout-rotate) + var(--elite-motion-rotate))) !important;

		transform-style: preserve-3d;
	}
}
.elite-motion-section .wp-element-button {
	background:#c53c68;
	border-radius:5px;
	font-weight:bold;
	color:white;
	outline:none;
	-webkit-outline:none;
}
.elite-motion-section .wp-element-button:hover {
	color:#c53c68;
	background:white;
	outline:1px solid #c53c68;
	-webkit-outline:1px solid #c53c68;
}
.elite-motion-section--is-first .elite-motion-section__inner{
	padding-top:0;
}
.elite-motion-section--is-first .elite-motion-section__content{
	background:transparent;
}