.elementor .e-con-full.stage img {
	filter: grayscale(0.25);
}
#intro > .e-con-inner {
	margin-top:-13em;
	padding: 2em 1.5rem !important;
	background: rgba(var(--white), 0.85);	
	box-shadow: 0 -2em 3em rgba(var(--darkblue), 0.05), 0 0 0.375em rgba(var(--darkblue), 0.125);
	backdrop-filter: blur(3px);
	position: relative;
	z-index: 2;
}

#intro > .e-con-inner > .e-child:first-child {
	padding-top: 1.5vw;
	padding-bottom: 1em;
}
#intro .image {
	overflow: clip;
	max-height: none
}
#intro .image .elementor-widget-image {
	padding: 0 !important;
	width: auto;
	max-width: 45em;
	height: 100%;
}
#intro img {
	height: 100%;
	width:100%;
	max-width: none;
	object-fit: cover !important;
}

#intro p + p {
	margin-top:0.5em !important;
}

@media(max-width: 1200px){
	#intro > .e-con-inner {
		margin-top:-15vw;
	}
}
@media(max-width: 599px){
	#intro > .e-con-inner {
		padding: 0.5em 0.5rem !important;
	}
	#intro > .e-con-inner > .e-child:first-child {
		padding-top: 1em;
		padding-bottom: 0;
	}
	#intro .bigger {
		font-size: 1em !important;
	}
}

.e-con-inner:has(#features) {
	padding-bottom: 2vw;
}
#features {
	width: 100%;
	min-width: calc(96vw - 1em);
	left: 50%;
	position: relative;
	transform: translateX(-50%);
	border-bottom: solid 0.125em rgba(var(--darkblue), 0.5)
}
#features .as-custom-list {
	align-items: stretch;
	justify-items: stretch;
}
#features .as-custom-list li div {
	height: 100%
}
@media (max-width: 1680px) and (min-width: 1681px){
	#features  {
		font-size: calc(0.375em + 0.8vw);
	}
}
@media(max-width:1680px){
	#features  {
		font-size: calc(0.8em + 0.5vw);
		border: none;
	}
	.e-con-inner:has(#features){
		padding-top: calc(2em + 3vw);
		padding-bottom: 1vw;
	}
}

/** ÜBER UNS **/
#ueber-uns {
	padding-top: 2em;
}
#facts {
	padding-top: 2em;
}
#facts figure::before {
	content:'';
	position: absolute;
	inset: 0 0 0 0;
	box-shadow: inset 0 0 3em rgba(var(--black),0.25);
	mix-blend-mode: multiply;
}
#facts figure figcaption {
	bottom: 1.5em;
}
.cover + .e-child:has(.markerrow) {
	padding-top: 1vw;
	padding-bottom: 1vw;
	padding-right: 0;
}
.markerrow {
	background: rgb(var(--white));
	margin-left: -4.5rem;
	padding-left: 5rem !important;
	padding-right: 2vw;
	width: calc(100% + 4.5rem) !important;
	max-width: none !important;
	padding-top: 1.25rem;
	padding-bottom: 1.25rem;
	gap: 0.5rem;
	position: relative;
	filter: drop-shadow(0 0 0.25em rgba(var(--darkblue), 0.125));
}
.markerrow::before {
	content:'';
	position: absolute;
	top: 50%;
	left: 0;
	aspect-ratio: 1/1;
	height: 4rem;
	width: 4rem;
	background: rgba(var(--darkblue))url(/hausbau/wp-content/themes/gbhaus/images/favicon_white.svg) center 45% / 60% no-repeat;
	border-radius:50%;
	border: solid 0.25rem rgba(var(--white));
	margin: -2rem 0 0 -2rem !important;
}
.markerrow p {
	font-weight: 500;
	margin-top: 0
}

@media(max-width:1024px){
	.markerrow {
		padding-left: 6vw !important;
		padding-right: 1em;
	}
}
@media(max-width:767px){
	.markerrow:first-child {
		margin-top:-0.25em
	}
	.markerrow {
		margin-left: -0.5rem;
		padding: 2.5em 1em 1.5em;
		text-align: center;
		width: calc(100% + 1rem) !important;
	}
	#facts .markerrow {
		width: auto !important;
	}
	.markerrow::before {
		left: 50%;
		top:0;
	}
}

@media(max-width: 600px){
	#ueber-uns .mega h2 span {
		display: none;
	}
	#facts .cover .elementor-widget-image figure figcaption {
		font-size: 0.75em;
		bottom: 10%
	}
}

#video {
	aspect-ratio: 9/16;
	max-width: 20em;
	margin: 0 auto;
	position: relative;
	z-index: 10;
	overflow: visible;
	border: solid 0em rgb(var(--white));
	box-shadow: var(--box-shadow-box);
}

#video:has(.elementor-custom-embed-play, img){
	border: solid 1em rgb(var(--white), 1);
	box-sizing: content-box;
}
#video img {
	object-position: 0 0;
	will-change: object-position;
	animation: cover_anmim_1 30s cubic-bezier(.46,.03,.52,.96) infinite;
}
@keyframes cover_anmim_1 {
	3% {
		object-position: 1% 0;
	}
	55% {
		object-position: 99% 0;
	}
	60% {
		object-position: 99% 0;
	}
	100% {
		object-position: 1% 0;
	}
}
/**/
.elementor-element:has(>#video) {
	overflow: hidden;
	position: relative;
}
.elementor-element:has(>#video)::before {
	content:'';
	position: absolute;
	top: 25%;
	height: 50%;
	background: rgba(var(--darkblue), 0.25);
}
#video .elementor-custom-embed-play i {
	color: rgb(var(--darkblue));
	font-size: 4em;
	text-shadow: 1px 0 0.25em rgba(var(--lightblue), 0.75);
	background-color: rgba(var(--white), 0.75);
	padding: 0.125em;
	border-radius: 50%
}

@media(max-width: 767px){
	.elementor-element:has(>#video) {
		margin-left: -1.5em;
		margin-right:-1.5em;
		width: calc(100% + 3em)
	}
}

.testimonial .chapter h4 {
	margin-bottom:0
}
.testimonial > div {
	
}
.testimonial-text {
	font-weight: 600;
	font-size:1.25em;
	padding: 1em;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	gap: 0.5em
}

.testimonial-text p:first-of-type::before {
	content:'”';
	float: left;
	font-size: 2em;
	margin: -0.25em 0.0625em -2.5em -0.625em;	
}
.testimonial-text p + p {
	margin-top: 0 !important;
}
.testimonial-name {
	margin-top: 0.5em;
	opacity: 0.7
}
.testimonial-name p + p {
	margin-top:0.25em !important;
}
@media(max-width: 1200px) and (min-width: 768px){
	#video {
		margin-right: 18%;
		max-width: 75%
	}
	.elementor-element:has(> #video)::before {
		top: 10%;
		height: 80%;
	}
}
@media(max-width: 767px) {
	#testimonial {
		margin-top:0;
		margin-bottom: 2em
	}
	.testimonial-text {
		padding-top:2em;
		padding-bottom: 1.25em;
	}
	.testimonial-text p:first-of-type::before {
		font-size: 3em;
		line-height: 0;
		vertical-align: -0.325em;
		margin-left: -0.25em;
		margin-right: 0.125em;
		display: inline-block;
		float: none;
	}
}
@media(max-width: 550px) {
	#video {
		max-width: 20.5em;
	}
	.testimonial .chapter {
		text-align: center;
	}
	.testimonial img {
		margin: 0 auto 2em;
		display: block;
		max-width: 11em
	}
	.testimonial-name {
		font-size:0.9em;
		margin-top:0
	}
}
@media(max-width: 415px) {
	#video {
		max-width: calc(100% - 4em)
	}
}

#bauweise {
	scroll-margin-top: -3em !important;
	scroll-margin-block-start:  -3em !important;
}
#bauweise .big {
	max-width: 55em;
}
#bauweise strong {
	font-weight: 600
}
#bauweise .box:not(#komplett) {
	padding: 1.5em 2vw 1.5em 2vw !important;
}
#bauweise .elementor-widget-as_button {
	margin-top: auto;
}
#komplett h4 {
	color: rgba(var(--mediumdarkblue));
}
#komplett-desc {
	margin-bottom: 0.5em;
}

#planen h3::before,
#rohbau h3::before,
#komplett h3::before {
	content: '';
	display: inline-block;
	width: 3rem;
	height: 3rem;
	margin: -0.5rem 0.5rem -0.75rem 0;
	background: url(/hausbau/wp-content/themes/gbhaus/images/icons/haus/icon_haus_plan.svg) center no-repeat;
}
#rohbau h3::before {
	background-image: url(/hausbau/wp-content/themes/gbhaus/images/icons/haus/icon_rohbau_kran.svg);
}

#komplett h3::before {
	width: 3.5rem;
	height: 3.5rem;
	background-image: url(/hausbau/wp-content/themes/gbhaus/images/icons/haus/icon_planung_architektur_schluessel.svg);
}

@media (min-width: 768px) and (max-width: 1280px) {
	#komplett-image {
		width: auto;
		max-width: 22em
	}
	#komplett-desc {
		flex-direction: column;
		margin-bottom: 0.5em;
		width: auto;
	}
}
@media(max-width: 767px){
	#bauweise {
		padding-top: 2em;
	}
	#bauweise .box:not(#komplett) {
		padding: 1.5em 1em 1.25em !important;
	}
	#komplett {
		margin-top: 0;
	}
	#komplett-box {
		padding: 0.5em 0 0.25em 0;
	}
}
@media(max-width: 499px){
	#bauweise .big {
		font-size: 1.125em;
		margin: 0 auto;
	}
}

/** PROJEKTE **/
#projekte {
	background: linear-gradient(rgba(var(--white), 0) 30%, rgba(var(--softblue), 0.25), rgba(var(--white), 0) 90%);/**/
}

#projektteaser {
	padding: 0.5em 0
}
.projektteaser {
	display: flex;
	gap: 1.5em;
	align-items: stretch;
	margin-top:1em;
}
.projektteaser .teaser {
	position: relative;
	flex-basis: 33.333%;
	background-color: rgb(var(--white));
	display: grid;
	box-shadow: 0 0 1.5em -0.25em rgba(var(--black), 0.05);
	box-shadow: var(--box-shadow-box);
	grid-auto-rows: auto 1fr;
}
.projektteaser .teaser .edit-link {
	position: absolute;
	top:1em;
	right: 1em;
}
.projektteaser .teaser .thumb {
	aspect-ratio: 3/2
}
.projektteaser .teaser .cont {
	position: relative;
	padding: 1rem 1.25em 1.25em;
	display: flex;
	flex-direction: column;
	gap: 0.75em;
	height: 100%;
}
.projektteaser .teaser .head {
	padding-top: 0.5em;
}
.projektteaser .teaser .head h3 {
	font-size:1.625em;
	line-height: 1.1 !important;
}
.projektteaser .teaser .desc {
	font-size:0.9325em;
	color: rgba(var(--black));
}
.projektteaser .teaser .features,
.projekt .features{
	list-style: none;
	margin:0;
	padding:0;
	font-size:0.9325em;
	display: flex;
	flex-wrap: wrap;
	gap: 0.25em;
	margin-top: auto;
}
.projektteaser .teaser .features li,
.projekt .features li {
	background: rgb(var(--mediumblue), 0.35);
	color: rgba(var(--black), 0.85);
	font-weight: 500;
	padding: 0.25em 0.5em;
}
.projektteaser .teaser .btn_wrapper {
	margin-top: 0.5em !important;
	align-self: flex-start;
}
.projektteaser .teaser .btn_wrapper {
	margin-top: 0.5em !important;
	align-self: flex-start;
}
.projektteaser .teaser .btn_wrapper .button.loading {
	background-color: rgb(var(--blue));
	color: rgb(var(--white));
	border-color: transparent;
}
.projektteaser .teaser .btn_wrapper .button.loading::before {
	content:'';
	background: url(../css/images/loader.svg) center / cover;
	width: 1em;
	height: 1em;
}
/*
.projektteaser .teaser .button {
	text-transform: none;
	background-color: rgba(var(--lightred),0.25);
	color: rgba(var(--darkred), 1);
	box-shadow: 0.5em 0.5em 0
}

.projektteaser .teaser .button.blue {
	text-transform: none;
	background-color: rgba(var(--lightblue),1);
	color: rgba(var(--darkblue), 1);
	box-shadow: 0.5em 0.5em 0
}
*/

@media(max-width: 1024px){
	.projektteaser .teaser .cont {
		_font-size: 0.9em
	}
}

@media(max-width: 1024px){
	.projektteaser {
		flex-wrap: wrap;
		justify-content: center;
	}
	.projektteaser .teaser {
		min-width: 280px;
		max-width: calc(50% - 0.5em);
		flex-grow: 1;
	}
}
@media(max-width: 680px){
	.projektteaser .teaser {
		min-width: 100%;
		box-shadow: 0 0 1.5em -0.5em rgba(var(--black), 0.15);
	}
	.projektteaser .teaser .head h3 {
		font-size:1.5em !important;
	}
}

/** PROJEKT-DETAIL **/
#projektdetails {
	
}

.projekt-detail-target {
	position: fixed;
	z-index: 1005;
	inset: 0 0 0 0;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: rgba(var(--darkblue), 0.9);
	background-repeat: repeat;
	background-image: url(/hausbau/wp-content/themes/gbhaus/images/gallery_pattern.svg);
	background-size: 2em;
	backdrop-filter: blur(3px);
	padding: 1em 0.5em 1em
}
.projekt-detail-target:not(.show) {
	display: none;
}
.projektdetail .edit-link{
	position: absolute
}
.projektdetail > .closer {
	width: 2.5em;
	height: 2.5em;
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgba(var(--white), 0.5);
	color: rgba(var(--black));
	z-index: 10000;
	right: 0;
	top: 0;
	text-align: center;
}
.projektdetail > .closer:hover {
	cursor:pointer;
}
.projektdetail > .closer::before {
	content: "\e802";
	font-family: "web-icon-dk";
	font-size: 1em;
    color:rgb(var(--black));
}

.projektdetail {
	position: relative;
	background: rgba(var(--white));
	height: max-content;
	max-height: 100%;
	max-width: 80em;
	width: 100vh;
	overflow: hidden;
	box-shadow: 0 0 0.5em rgba(var(--black)), 0 0 10em 2em rgba(var(--darkblue))
}
.projektdetail > .inner {
	max-height: calc(100vh - 2em);
	overflow-y: auto;
	overflow-x: hidden;
	padding: 1.5em;
}
.projektdetail .projekt {
	display: grid;
	grid-template-areas: 
		"thumb cont"
		"gallery gallery";
	grid-template-columns: minmax(0, 12em) minmax(0, 1fr);
	gap: 1em 1.5em;
}
.projektdetail .projekt .thumb {		
	grid-area: thumb;
}
.projektdetail .projekt .cont {		
	grid-area: cont;
	align-self: center;
	display: flex;
	flex-direction: column;
	gap: 0.5em;
}
.projektdetail .projekt .head .title {
	margin-top:0 !important;
}
.projektdetail .projekt .head .chapter {
	font-size: 0.8em
}
.projektdetail .projekt .cont .desc {		
	font-size: 0.9em;
	font-weight: 500;
	color: rgb(var(--black));
}
.projektdetail .projekt .cont .features {		
	font-size: 0.825em;
}
.projektdetail .projekt .gallery {		
	grid-area: gallery;
}
.projektdetail .projekt .gallery .slider-gallery:has(.bx-controls) {		
	padding-bottom: 1em;
}

.projektdetail .projekt .gallery .slider figure {
	aspect-ratio: 3/2;
	background-color: transparent;
}
.projektdetail .projekt .gallery .slider .slide {
	padding:0;
}
.projektdetail .projekt .gallery .bx-wrapper img {
	position: absolute;
}
.projektdetail .projekt .bx-wrapper .bx-prev, 
.projektdetail .projekt .bx-wrapper .bx-next {
	background-color: rgba(var(--white), 1);
	opacity: 1
}
.projektdetail .projekt .bx-wrapper .bx-prev {
	left:-1em;
	border-radius: 0 1em 1em 0;
}
.projektdetail .projekt .bx-wrapper .bx-next {
	right:-1em;
	border-radius: 1em 0 0 1em;
}
.projektdetail .projekt .bx-wrapper .bx-prev::before, 
.projektdetail .projekt .bx-wrapper .bx-next::after {
	font-size: 1.25em;
	top:0.33em;
	left: 0.325em;
}
.projektdetail .projekt .bx-wrapper .bx-prev::before {
	left: 0.25em;
}
.projektdetail .projekt .bx-wrapper .bx-pager, 
.projektdetail .projekt .bx-wrapper .bx-controls-auto {
	bottom: 0.5em;
}
@media(max-height: 699px) and (orientation: landscape) {
	.projektdetail .projekt {
		font-size: 0.8em
	}
}
@media(max-width: 599px) or (max-height: 500px){
	.projektdetail > .inner {
		padding: 2.5em 1em 2.5em;
	}
	.projektdetail .projekt {
		grid-template-areas:
			"cont"
			"gallery";
		grid-template-columns: 1fr;
		gap: 1em 1.5em;
	}
	.projektdetail .projekt .thumb {
		display: none;
	}
	.projektdetail .projekt .gallery {
		margin-top: 0.25em;
	}
	.projektdetail .projekt .bx-wrapper .bx-pager {
		bottom: 0;
		display: flex;
		justify-content: space-evenly;
	}
	.projektdetail .projekt .bx-wrapper .bx-pager .bx-pager-item {
		width: auto;
		flex-grow: 1;
		flex-shrink: 1;
	}
	.projektdetail .projekt .bx-wrapper .bx-pager a,
	.projektdetail .projekt .bx-wrapper .bx-pager a span {
		width: 100%;
		min-width: 100%;
		flex-grow: 1;
		flex-shrink: 1;
	}
}
@media (max-width: 464px){
	#projekte .elementor-widget-container:has(.grid){
		margin-top:0;
	}
	#projekte .grid, ul.grid {
		margin: auto -0.25rem;
		width: calc(100% + 0.5em);
	}
	#projekte .grid .item {
		width: 50% !important;
		border-width: 0.125em
	}
}

/** PROZESS **/
#prozess .big {
	max-width: 55em;
}
.prozessteaser::after{
	content:'';
	position: absolute;
	z-index: -1;
	top:-2em;
	bottom:-2em;
	left: 50%;
	width: 100vw;
	transform: translateX(-50%);
	background-color: rgba(var(--softblue),0.25);
	background: linear-gradient(rgba(var(--softblue),0), rgba(var(--white),1)20%, rgba(var(--white),1)80%, rgba(var(--softblue),0));
	
}
.prozessteaser {
	display: flex;
	position: relative;
	z-index: 2;
	gap: 1em;
	margin-top: 2em;
	margin-bottom: calc(3em + 1vw);	
}
@media (min-width: 1750px) {
	.prozessteaser {
		margin-left:-4em;
		margin-right: -4em
	}
	.prozessteaser .cont {
		max-width: 16em
	}
}
.prozessteaser::before {
	content: '';
	position: absolute;
	inset: 50% 0 auto 0;
	transform: translateY(-50%);
	border-top: solid 0.375em rgba(var(--darkblue));
}

.prozessteaser .step {
	position: relative;
	width: 20%;
	display: grid;
	grid-template-rows: 1fr 1fr;
	gap: 3em 2em
}

.prozessteaser .step::before {
	content: '';
	position: absolute;
	top: 50%;
	left: 0;
	width: 2em;
	aspect-ratio: 1/1;
	border-radius: 50%;
	transform: translate(-50%, -50%);
	border: solid 0.325em rgb(var(--white));
	background-color: rgba(var(--darkblue));
}

.prozessteaser .step .thumb {
	grid-row: 1;
	display: flex;
	align-items: flex-end;
	justify-content: flex-start;
}

.prozessteaser .step .cont {
	grid-row: 2;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding-top: 1.5em;
	gap: 0.5em
}

.prozessteaser img {
	max-width: 100%;
	max-height: 10em;
	padding: 0.5em;
	background: radial-gradient(rgba(var(--blue), 0.65), rgba(var(--blue), 0) 65%)
}
.prozessteaser .cont .title {
	padding-left: 1.125em;
	position: relative;
}
.prozessteaser .cont .title span {
	position: absolute;
	left:0;
	width: 1em;
}
.prozessteaser .desc {
	color: rgb(var(--black))
}
.prozessteaser .desc strong {
	font-weight: 600;
	color: rgb(var(--black))
}

@media (min-width: 1023px) and (max-width:1100px){
	.prozessteaser .desc {
		font-size:0.9em;
		hyphens: auto;
	}
}

@media(min-width: 1024px){
	/* Jeder 2. Step: oben Content, unten Bild */
	.prozessteaser .step:nth-child(2n) .cont {
		grid-row: 1;
		align-items: flex-end;
		justify-content: flex-end;
		padding-top: 0;
		padding-bottom: 1.5em;
	}

	.prozessteaser .step:nth-child(2n) .thumb {
		grid-row: 2;
		align-items: start
	}

	.prozessteaser .step:nth-child(2n) .cont .head,
	.prozessteaser .step:nth-child(2n) .cont .desc {
		width: 100%;
	}
}

@media (max-width: 1023px) {
	#prozess .e-con-inner {
		padding-top: 2.5em;
		padding-bottom: 1.5em;
	}
	#prozess .big {
		max-width: 40em;
		margin: 0 auto
	}
	.prozessteaser {
		display: flex;
		flex-direction: column;
		gap: 1em;
		margin-top: 3em;
		margin-left: auto;
		margin-right: auto;
		max-width: 600px;
	}

	.prozessteaser::before {
		inset: -2em auto -1em 50%;
		transform: translateX(-50%);
		border-top: none;
		border-left: solid 0.325em rgba(var(--darkblue));
	}

	.prozessteaser .step {
		width: 100%;
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto;
		gap: 3em;
	}

	.prozessteaser .step::before {
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	.prozessteaser .step .thumb {
		grid-column: 1;
		grid-row: 1;
		justify-content: flex-end;
		align-items: center;
	}

	.prozessteaser .step .cont {
		grid-column: 2;
		grid-row: 1;
		padding-top: 0;
		align-items: flex-start;
		justify-content: center;
	}
}
@media(max-width: 1023px) and (min-width: 500px){
	/* jeder 2. Step gespiegelt */
	.prozessteaser .step:nth-child(2n) .thumb {
		grid-column: 2;
		justify-content: flex-start;
	}

	.prozessteaser .step:nth-child(2n) .cont {
		grid-column: 1;
		align-items: flex-end;
		text-align: right;
	}
	.prozessteaser .step:nth-child(2n) .cont .title span {
		position: static;
		margin-right:0.25em;
	}
}

@media(max-width: 499px){
	.prozessteaser {
		gap: 2em;
	}
	.prozessteaser::before {
		inset: -2em auto -1em 35%;
		border-left-width: 0.25em;
	}
	.prozessteaser .step {
		grid-template-columns: 0.52fr 1fr;
	}
	.prozessteaser .step::before {
		left: 35%;
	}
	.prozessteaser .step .thumb {
		margin-left:-1.5em;
	}
	.prozessteaser .step .cont .desc {
		margin-right:-1.5em;
		font-size: 0.95em
	}
	/*
	.prozessteaser .step:nth-child(2n) .cont .desc {
		margin-left:-1.5em;
		margin-right: 0;
	}*/
	.prozessteaser .cont .title {
		font-size: 1.325em !important;
		padding:0;
	}
	.prozessteaser .cont .title span {
		position: static;
		margin-right:0.25em;
	}
	#prozess .big {
		font-size: 1.125em
	}
}




/** FAQ **/
#faq .mega h2 .small {
	font-size: 0.85em;
	vertical-align: 0.0625em;
}
#faq .faq {
	max-width: 70em;
	margin: 0 auto;
}
@media(max-width: 600px){
	#faq .faq {
		margin: -1em -1em 0
	}
	#faq .mega h2 {
		font-size: calc(1em + 0.875em)
	}
}
@media(max-width: 499px){
	#faq .big {
		
	}
}


/** CTA Footer **/
#cta-footer {
	background: linear-gradient(rgba(var(--white), 1));
	margin-top: calc(4em + 1vw) !important;
	padding-top: calc(2em + 1vw);
	padding-bottom:3vw;
	_box-shadow: var(--box-shadow-box);
	filter: drop-shadow(0 -0.25em 0.125em rgba(var(--darkblue), 0.05) );
	position: relative;
}
#cta-footer .e-con-inner {
	align-items: center;
	justify-content: center;
	text-align: center
}
#cta-footer .e-con-inner::before {
	content: '';
	position: absolute;
	top: 0;
	width: 4rem;
	height: 4rem;
	aspect-ratio: 1/1;
	background: url("../images/favicon_white.svg") 50% 50% /auto 60% no-repeat;
	background-color: rgba(var(--darkblue));
	border: solid 0.325em rgba(var(--white));
	box-sizing: content-box;
	border-radius: 50%;
	margin: -2rem auto 0;
}
#cta-footer .cta-box {
	_background-color: rgba(var(--white), 1);
	_box-shadow: var(--box-shadow-box);
	_border: solid 1px rgba(var(--mediumblue))
}
#cta-footer .cta-box p {
	font-weight: 500;
}

@media(max-width: 667px){
	#cta-footer {
		padding-bottom: 2em;
		filter: drop-shadow(0 -0.5em 0.125em rgba(var(--darkblue), 0.15) );
	}
	#cta-footer .chapter {
		max-width: 15em;
	}
}

.elementor-widget-image.marker img {
	display: block;
	position: relative;
	z-index: 1;
	padding-right: 3em;
	object-position: center bottom;
}
.elementor-widget-image.marker::before {
	content:'';
	position: absolute;
	z-index: 1;
	inset: 3em 0em -3em 3em;
	/*background-color: rgba(var(--lightred), 0.35);*/
	background-color: rgba(var(--darkblue), 1);
	/*background-color: rgb(164, 104, 111);*/
}
#fuehstueck .elementor-widget-image {
	max-height: 433px;
}
#fuehstueck .elementor-widget-image.marker::before {
	inset: 3em 0em -3em 3em;
}
#fuehstueck .elementor-widget-image img {
	object-position: center bottom;
	padding-right: 4em;
}
#meetings .elementor-widget-image.marker img {
	padding-right: 2em
}
#meetings .elementor-widget-image.marker::before {
	inset: -4em 5em -4em 3em;
	background-color: rgba(var(--darkblue), 1);
}
@media(max-width: 767px){
	#fuehstueck .elementor-widget-image.marker img {
		padding-right: 2em;
	}
	#fuehstueck .elementor-widget-image.marker::before {
		inset: 3em 0em -2em 2em;
	}
	#meetings .e-con-inner {
		padding-bottom: 0;
	}
	#meetings .elementor-widget-image.marker {
		margin-bottom: 2em;
	}
	#meetings .elementor-widget-image.marker img {
		padding-right: 0
	}
	#meetings .elementor-widget-image.marker::before {
		inset: -2em 2em -2em 2em;
	}
	#meetings > .e-con-inner {
		padding-top:1em;
	}
	#meetings > .e-con-inner > .e-child > .e-child:has(img){
		order: 2;
		margin-top:2em;
	}
}