/* End custom CSS */

.elementor-4522 .elementor-element.elementor-element-ce2e78c {
	--display: flex;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 20px;
	--padding-right: 20px;
}

.elementor-4522 .elementor-element.elementor-element-755060c {
	--display: flex;
	--min-height: 500px;
	--flex-direction: row;
	--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--justify-content: space-between;
	--align-items: flex-end;
	--gap: 64px 80px;
	--row-gap: 64px;
	--column-gap: 80px;
	--flex-wrap: wrap;
	--overflow: hidden;
	--overlay-opacity: .5;
	--border-radius: 24px 24px 24px 24px;
	--padding-top: 60px;
	--padding-bottom: 60px;
	--padding-left: 60px;
	--padding-right: 60px;
}

.elementor-4522 .elementor-element.elementor-element-755060c:not(.elementor-motion-effects-element-type-background), .elementor-4522 .elementor-element.elementor-element-755060c > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}

.elementor-4522 .elementor-element.elementor-element-755060c::before, .elementor-4522 .elementor-element.elementor-element-755060c > .elementor-background-video-container::before, .elementor-4522 .elementor-element.elementor-element-755060c > .e-con-inner > .elementor-background-video-container::before, .elementor-4522 .elementor-element.elementor-element-755060c > .elementor-background-slideshow::before, .elementor-4522 .elementor-element.elementor-element-755060c > .e-con-inner > .elementor-background-slideshow::before, .elementor-4522 .elementor-element.elementor-element-755060c > .elementor-motion-effects-container > .elementor-motion-effects-layer::before {
	--background-overlay: "";
}

.elementor-4522 .elementor-element.elementor-element-f915d48 {
	--display: flex;
	--flex-direction: row;
	--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
	--container-widget-height: 100%;
	--container-widget-flex-grow: 1;
	--container-widget-align-self: stretch;
	--flex-wrap-mobile: wrap;
	--justify-content: space-between;
	--align-items: flex-end;
	--padding-top: 0px;
	--padding-bottom: 0px;
	--padding-left: 0px;
	--padding-right: 0px;
}

.elementor-4522 .elementor-element.elementor-element-a33c5a4 {
	z-index: 10;
}

.elementor-4522 .elementor-element.elementor-element-a33c5a4 .elementor-heading-title {
	font-family: var(--e-global-typography-primary-font-family), Sans-serif;
	font-size: var(--e-global-typography-primary-font-size);
	font-weight: var(--e-global-typography-primary-font-weight);
	text-transform: var(--e-global-typography-primary-text-transform);
	text-decoration: var(--e-global-typography-primary-text-decoration);
	line-height: var(--e-global-typography-primary-line-height);
	color: var(--e-global-color-c5e66f3);
}

.elementor-4522 .elementor-element.elementor-element-652986e {
	--display: flex;
}

.elementor-4522 .elementor-element.elementor-element-a172c6e {
	width: auto;
	max-width: auto;
}

.elementor-4522 .elementor-element.elementor-element-a172c6e > .elementor-widget-container {
	padding: 10px 10px 10px 10px;
	border-style: solid;
	border-width: 1px 1px 1px 1px;
	border-color: var(--e-global-color-00df08d);
	border-radius: 20px 20px 20px 20px;
}

.elementor-4522 .elementor-element.elementor-element-a172c6e.elementor-element {
	--align-self: flex-start;
}

.elementor-4522 .elementor-element.elementor-element-5c33853 {
	--display: flex;
	--flex-direction: column;
	--container-widget-width: 100%;
	--container-widget-height: initial;
	--container-widget-flex-grow: 0;
	--container-widget-align-self: initial;
	--flex-wrap-mobile: wrap;
}

.elementor-4522 .elementor-element.elementor-global-4637 {
	text-align: start;
}

.elementor-4522 .elementor-element.elementor-global-4637 .widget-image-caption {
	font-size: 14px;
	line-height: 1.2em;
	margin-block-start: 10px;
}

.elementor-4522 .elementor-element.elementor-element-e6768d1 {
	--display: flex;
}

.elementor-4522 .elementor-element.elementor-element-d587a82 {
	--grid-columns: 3;
}

.elementor-4522 .elementor-element.elementor-element-d587a82 .elementor-loop-container {
	grid-auto-rows: 1fr;
}

.elementor-4522 .elementor-element.elementor-element-d587a82 .e-loop-item > .elementor-section, .elementor-4522 .elementor-element.elementor-element-d587a82 .e-loop-item > .elementor-section > .elementor-container, .elementor-4522 .elementor-element.elementor-element-d587a82 .e-loop-item > .e-con, .elementor-4522 .elementor-element.elementor-element-d587a82 .e-loop-item .elementor-section-wrap > .e-con {
	height: 100%;
}

body.elementor-page-4522:not(.elementor-motion-effects-element-type-background), body.elementor-page-4522 > .elementor-motion-effects-container > .elementor-motion-effects-layer {
	background-color: #fff;
}

body.elementor-page-4522 {
	margin: 50px 0px 50px 0px;
}

@media (min-width:768px) {
	.elementor-4522 .elementor-element.elementor-element-ce2e78c {
		--content-width: 1600px;
	}
	
	.elementor-4522 .elementor-element.elementor-element-f915d48 {
		--width: 100%;
	}
}

@media (max-width:1024px) and (min-width:768px) {
	.elementor-4522 .elementor-element.elementor-element-f915d48 {
		--width: 100%;
	}
}

@media (max-width:1024px) {
	.elementor-4522 .elementor-element.elementor-element-755060c {
		--min-height: 400px;
		--align-items: center;
		--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
		--gap: 48px 48px;
		--row-gap: 48px;
		--column-gap: 48px;
		--padding-top: 80px;
		--padding-bottom: 80px;
		--padding-left: 40px;
		--padding-right: 40px;
	}
	
	.elementor-4522 .elementor-element.elementor-element-f915d48 {
		--flex-direction: column;
		--container-widget-width: calc(( 1 - var(--container-widget-flex-grow) ) * 100%);
		--container-widget-height: initial;
		--container-widget-flex-grow: 0;
		--container-widget-align-self: initial;
		--flex-wrap-mobile: wrap;
		--justify-content: center;
		--align-items: center;
	}
	
	.elementor-4522 .elementor-element.elementor-element-f915d48.e-con {
		--order: 99999;
	}
	
	.elementor-4522 .elementor-element.elementor-element-a33c5a4 .elementor-heading-title {
		font-size: var(--e-global-typography-primary-font-size);
		line-height: var(--e-global-typography-primary-line-height);
	}
	
	.elementor-4522 .elementor-element.elementor-element-d587a82 {
		--grid-columns: 2;
	}
	
	body.elementor-page-4522 {
		margin: 50px 0px 50px 0px;
	}
}

@media (max-width:767px) {
	.elementor-4522 .elementor-element.elementor-element-ce2e78c {
		--padding-top: 0px;
		--padding-bottom: 0px;
		--padding-left: 0px;
		--padding-right: 0px;
	}
	
	.elementor-4522 .elementor-element.elementor-element-755060c {
		--min-height: 350px;
		--justify-content: center;
		--border-radius: 0px 0px 0px 0px;
		--padding-top: 72px;
		--padding-bottom: 72px;
		--padding-left: 20px;
		--padding-right: 20px;
	}
	
	.elementor-4522 .elementor-element.elementor-element-f915d48 {
		--justify-content: flex-start;
	}
	
	.elementor-4522 .elementor-element.elementor-element-a33c5a4 .elementor-heading-title {
		font-size: var(--e-global-typography-primary-font-size);
		line-height: var(--e-global-typography-primary-line-height);
	}
	
	.elementor-4522 .elementor-element.elementor-element-d587a82 {
		--grid-columns: 1;
	}
	
	body.elementor-page-4522 {
		margin: 0px 0px 50px 0px;
	}
}

/* Start custom CSS for container, class: .elementor-element-755060c */

/* Erzeugt das Overlay als Pseudo-Element direkt auf dem Container */
.elementor-4522 .elementor-element.elementor-element-755060c::before {
	content: "";
	position: absolute;
	inset: 0;
	/* Deckt den gesamten Container (Top, Right, Bottom, Left 0) ab */
	z-index: 1;
	pointer-events: none;
	/* Klicks gehen durch das Overlay durch */
	
	/* DESKTOP: Verlauf von Links nach Rechts */
	background: linear-gradient(90deg, rgba(4, 23, 15, .95) 0%, rgba(4, 23, 15, .7) 45%, rgba(4, 23, 15, 0) 75%);
}

/* MOBILE: Auf Smartphones geht der Verlauf weiter nach rechts für lange Textzeilen */
@media (max-width: 767px) {
	.elementor-4522 .elementor-element.elementor-element-755060c::before {
		background: linear-gradient(90deg, rgba(4, 23, 15, .98) 0%, rgba(4, 23, 15, .85) 70%, rgba(4, 23, 15, .15) 100%);
	}
}

/* Stellt sicher, dass alle Widgets im Container ÜBER dem Overlay liegen */
.elementor-4522 .elementor-element.elementor-element-755060c > .elementor-widget, .elementor-4522 .elementor-element.elementor-element-755060c > .elementor-container {
	position: relative;
	z-index: 2;
}
