.elementor-widget-heading h1.elementor-heading-title {
	--line-height-title: 85px;
	line-height: var( --line-height-title );
}

.header-navi-container {
	&:has( #navigation:not( [hidden] ) ) {
		#site-logo {
			overflow: hidden;
		}
	}

	#site-logo {
		overflow: visible;

		img {
			object-position: top;
			overflow: visible;
			transition: all .5s;
		}
	}
}

.hero .titel-mitte-pfeil-unten h1 {
	--hero-font-size: calc( 10px + 2.25vw );
	font-size: var( --hero-font-size );
	line-height: calc( var( --hero-font-size ) + 10px );
}

.elementor-icon-list-icon {
	a:hover & {
		color: var( --e-global-color-primary );
	}
}

.rezension-container {
	position: relative;

	.rezension {
		max-width: 900px;

		.quoted + div {
			margin: auto 0;
		}
	}
}

.background-image {
	position: absolute;
	top: 50%;
	right: 50%;
	height: clamp( 350px, auto, 800px );
	width: min( 100vw, 1000px );
	transform: translateX( 25% ) translateY( -50% );
}

.unterseite-kompetenz {
	--padding: clamp( 100px, ( 100% - 500px ) / 2, 200px ) max( ( 100% - 500px ) / 2, 100px );
	padding: var( --padding );
}

.unterseite-firma {
	--anz-elmnts: 1;
	width: calc( 100% / var( --anz-elmnts ) - 25px / var( --anz-elmnts ) * ( var( --anz-elmnts ) - 1 ) );
}

.trenner-mitte {
	--border: 2px solid var( --e-global-color-accent );

	position: relative;

	&:before {
		content: '';
		width: calc( 100% + 25px );
		height: 100%;
		position: absolute;
		top: 0;
		left: calc( 25px / -2 );
	}
}

@media ( min-width: 768px ) {
	.unterseite-firma {
		--anz-elmnts: 2;
	}

	.trenner-mitte:before {
		border-left: var( --border );
	}
}

@media ( min-width: 1025px ) {
	.unterseite-firma {
		--anz-elmnts: 3;
	}

	.trenner-mitte:before {
		border-left: var( --border );
		border-right: var( --border );
	}
}

@media ( min-width: 1750px) {
	.header-navi-container {
		&:not( .elementor-sticky--effects ) {
			#site-logo {
				--width: 30vw;
			}

			#header {
				align-items: flex-start;
			}

			#site-logo {
				position: absolute;
			}

			#nav-oeffner-container {
				margin-left: auto;
			}
		}
	}
}

@media ( max-width: 1750px ) {
	/*.hero:has( .sticky-bottom, #Pfeil ) {
		--flex-direction: column;
		justify-content: space-between;

		> div {
			--width: 100%;
			--container-widget-width: 100%;
		}
	}*/

	.sticky-bottom {
		position: sticky;
		bottom: 0;
		background-color: var( --e-global-color-68b9408 );
	}
}

@media ( max-width: 1024px ) {
	.hero:has( .sticky-bottom, #Pfeil ) {
		--flex-direction: column;
		justify-content: space-between;

		> div {
			--width: 100%;
			--container-widget-width: 100%;
		}
	}

	.unterseite-kompetenz {
		--padding: 50px 50px 25px;
	}

	.rezension-container .rezension .swiper {
		margin: 0 10px;
	}
}

@media ( max-width: 767px ) {
	.elementor-widget-heading h1.elementor-heading-title {
		--line-height-title: calc( 10.14vw, 50px ) + 10px );
	}

	.background-image {
		top: 125px;
		transform: translateX( 25% ) translateY( 0 );
	}

	.rezension-container .rezension .swiper {
		margin: 0;
	}

	.elementor-swiper-button-prev svg {
		transform: translateY( 20px );
	}

	.elementor-swiper-button-next svg {
		transform: translateY( 20px );
	}

	.unterseite-kompetenz {
		--padding: 30px max( ( 100% - 400px ) / 2, 30px );
	}
}
