:root{
	--dark-green: #195c4c;
	--dark-green-trans80: #195c4c55;
	--dark-green-trans30: #195c4c22;
	--middle-green: #27846e;
	--light-green: #67a999;
	--verylight-green: #85cfbc;
	--black_trans: #0003;
	--verylight-gray: #0000000a;
	--gray: #535353;
	--red: #bd1616;
	--green-gradient: linear-gradient(45deg, #27846e 0%, #195c4c 100%);
	--green-gradient-hr: linear-gradient(90deg, #195c4c 0%, #27846e 100%);
	--st-text-size: 12pt;
	--h3size: min(max(1.5vw, 15px), 20px);
	--greenwaveimg: url(../../../images/stories/welle_gruen.png);
	--whitewaveimg: url(../../../images/stories/welle_weiss.png);
}
h1{
	font-weight: 700!important;
}
h2{
	color: var(--dark-green)!important;
	font-size: 1.75rem!important;
	font-weight: 600!important;
}
h3{
	font-weight: 500!important;
}
h5, h3:not(.sppb-addon-title){
	font-size: var(--st-text-size)!important;
	line-height: 1.4!important;
	font-weight: 500!important;
	color: var(--middle-green);
}
p{
	font-size: .95rem;
	line-height: 1.6;
	color: var(--gray)!important;
	font-weight: 300!important;
}
p strong{
	font-weight: 700!important;
}
.sp-module.m3_fullsearch{
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 0 15px 8px 0;
}
.videoclaim{
	position: absolute;
	top: 17vw;
	left: 10vw;
}
.videoclaim h2{
	font-size: 2.5vw !important;
	font-weight: 800 !important;
	text-shadow: 0 0 50px #fff;
	mix-blend-mode: hard-light;
}
.teambackground{
	background-size: 126vw!important;
	background-position: right 11% top!important;
}
.hide,
.pe-7s-search::before{
	display: none!important;
}
#sp-section-1{
	z-index: 98;
	position: relative;
}
#sprechzeiten{
	position: fixed;
	background: var(--green-gradient-hr);
	color: #fff;
	right: 0;
	border-radius: 8px;
	max-width: 90vw;
	transition: all ease .2s;
	transform: translateX(100%);
	box-shadow: 0 0 15px var(--dark-green-trans80) !important;
}
#sprechzeiten::after{
	position: absolute;
	content: "\f410";
	font-family: "Font Awesome 5 Free"!important;
	font-size: 20px;
	top: 5px;
	right: 6px;
	width: 22px;
	height: 23px;
	cursor: pointer;
}
#sprechzeiten,
#sprechzeiten *{
	min-width: unset!important;
}
#sprechzeiten.active{
	transform: translateX(-20px);
}
#sprechzeiten *{
	color: #fff!important;
	max-width: max-content;
}
#sprechzeiten p{
	font-size: .85rem!important;
	margin: 5px 0;
}
/*M3-Menusize-Overwrite*/
#sp-header{
	height: 50px!important;
}
.sp-megamenu-wrapper > .sp-megamenu-parent > li > a,
.sp-megamenu-wrapper #offcanvas-toggler{
	height: 50px!important;
	line-height: 50px!important;
}
.sticky__wrapper{
	padding-top: 10px;
}
/*!M3-Menusize-Overwrite*/
#sp-topsearch{
	z-index: 11;
}
#sp-topsearch * {
	min-width: max-content;
}
.whitefont *{
	color: #fff!important;
}
*:not(.fa):not(.fab):not(.fas):not([class^="icon-"]):not([class*=" icon-"]):not(.pe):not(i){
	font-family: 'Poppins';
	hyphens: auto;
}
#icon-1674648695089,
#icon-1674648695089 *{
	height: max-content!important;
}
.com-sppagebuilder #sp-main-body .sppb-section{
	z-index: 3;
}
.com-sppagebuilder #sp-main-body .sppb-section:hover{
	z-index: 4;
}
.headervideo, 
.headervideo *{
	max-height: 36.4vw!important;
}

.boxshadow .sppb-panel-modern{
	border: 0px solid transparent;
	border-top-width: 0px!important;
	box-shadow: 0 0 15px var(--dark-green-trans30);
}
.borderradius .sppb-panel-modern,
.borderradius .sppb-panel-modern .sppb-panel-heading{
	border: 0px solid transparent;
	border-top-width: 0px!important;
	border-radius: 8px;
}
.readheader .sppb-panel-heading,
.readheader .sppb-panel-heading *:not(i){
	color: var(--red)!important;
	font-weight: 600!important;
}

.buttoncontainer {
	width:100%;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.width30 {
	width:29% !important;
	padding-left:15px !important;
	margin-top:15px;
}
.width30:hover {
	background-color:#67a999 !important;
}
.hover-box {
	display: block;
    padding: 12px;
    background: #195c4c;
    border: 1px solid rgba(25,92,76,0.4);
    text-shadow: 1px 1px 0 rgb(0 0 0 / 50%);
    border-radius: 3px;
}
.buttoncontainer a {
	color: #fff !important;
	font-weight: 700!important;
}
.hidebelow .sp-dropdown.sp-dropdown-main,
.sp-megamenu-parent > li.hidebelow > a::after { display: none !important; }

.h2_nogap h2.sppb-addon-title{
	padding:0px !important;
	color:#ffffff;
}

.m3_fs_header h2{
	font-size: 3rem;
	font-weight: normal;
	color: var(--dark-green);
	text-transform: uppercase!important;
}

.m3_fs_introtext *{
	font-weight: 500!important;
	color: var(--middle-green)!important;
}
.slick-slide {
	height: 145px;
	border-radius: 8px;
	overflow: hidden;
}

#sp-main-body a:not(.sppb-btn, .hover-box){
	color: var(--middle-green)!important;
	font-weight: 700!important;
}
#sp-main-body .whitelinks,
#sp-main-body .whitelinks a{
	color: #fff!important;
}
.sppb-addon-content li{
	margin: 15px 0;
}
.sppb-person-designation{
	min-height: 25px;
}
.sppb-carousel-layout2 .sppb-carousel-extended-team-designation{
	margin:0!important;
}
.person-content-show-on-hover,
.sppb-gallery-btn img{
	border-radius: 5px;
}

/* M3-Entry */
.m3_entry{
	overflow: hidden;
	border-radius: 8px;
	box-shadow: 0 0 15px var(--dark-green-trans80);
	transition: all ease .2s;
}
.m3_entry:hover{
	box-shadow: 0 0 35px var(--dark-green-trans80);
	transform: scale(1.065);
}
.m3_entry *{
	text-align: left!important;
}
.m3_entry h3{
	color: #195c4c !important;
	font-size: var(--h3size)!important;
	font-weight: 700!important;
}
.m3_entry p{
	font-size: 12px;
	line-height: 1.7;
	color: var(--gray);
	margin-bottom: .5rem!important;
	font-weight: 300!important;
}
.m3_entry .sppb-addon-image-layout-content{
	--linksize: 12px;
	margin: 0!important;
	bottom: 0;
	padding: 0px 18px 0px 18px !important;
	background: transparent;
	transition: all ease .2s;
	width: 100%;
	background-color: rgba(255, 255, 255, .9);
	pointer-events: none;
}
.m3_entry:hover .sppb-addon-image-layout-content{
	padding: 0px 18px calc(var(--linksize) * 1.6) 18px !important;
}
.m3_entry .sppb-addon-image-layout-content p,
.m3_entry .sppb-addon-image-layout-content::after{
	transform-origin: bottom center;
	transform: scaleY(0);
	transition: all ease .2s;
	height: 0;
}
.m3_entry:hover .sppb-addon-image-layout-content p,
.m3_entry:hover .sppb-addon-image-layout-content::after{
	transform: scaleY(1);
	height: max-content;
}
.m3_entry .sppb-addon-image-layout-content::before{
	position: absolute;
	content: "";
	inset: 0;
	z-index: 2;
	background-image: var(--whitewaveimg);
	background-position: bottom center;
	background-size: 100%;
	background-repeat: no-repeat;
	height: 65px;
	top: -65px;
}
.m3_entry .sppb-addon-image-layout-content::after{
	position: absolute;
	content: "mehr";
	width: 100%;
	height: var(--linksize);
	bottom: calc(var(--linksize) * .5);
	font-size: var(--linksize);
	line-height: var(--linksize);
	font-weight: 700;
	color: var(--middle-green);
}
.m3_entry .sppb-addon-image-layout-text{
	position: relative;
	z-index: 3;
}
/* ! M3-Entry*/

/* News */
.news .sppb-addon-article{
	height: 100%;
	box-sizing: border-box;
	border-radius: 8px;
	box-shadow: 0 0 15px var(--dark-green-trans30);
	overflow: hidden;
	transform-origin: center;
	transition: all ease .2s;
}
.news .sppb-addon-article:hover{
	transform: scale(1.05);
	box-shadow: 0 0 30px var(--dark-green-trans30);
}
#sp-main-body .news a:not(.sppb-readmore),
#sp-main-body .news h3{
	font-size: var(--h3size)!important;
	color: var(--dark-green)!important;
	font-weight: 700!important;
}
#sp-main-body .news .sppb-article-introtext{
	font-size: .95rem;
	line-height: 1.6;
	color: var(--gray) !important;
	font-weight: 300 !important;
	text-align: justify;
}
.news img{
	width: 100%;
	height: auto;
	position: relative;
}
.news .sppb-article-img-wrap{
	width: 100%;
	height: auto;
	position: relative;
	display: block;
}
.news .sppb-article-img-wrap::after{
	position: absolute;
	content: "";
	z-index: 2;
	background-image: var(--greenwaveimg), linear-gradient(180deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
	background-position: bottom center;
	background-size: 100%, contain;
	background-repeat: no-repeat;
	height: 125px;
	width: 100%;
	bottom: -10px;
}
.news .sppb-article-info-wrap{
	padding: 15px;
}
.news .sppb-row > *{
	margin-bottom: 20px;
}
/* !News */

.greenwavebg .sppb-row {
	background: rgba(255, 255, 255, .9);
	background: linear-gradient(180deg, rgba(255, 255, 255, .9) 0%, rgba(255, 255, 255, 1) 100%);
}
.greenwavebg .sppb-row::before {
	position: absolute;
	content: "";
	inset: 0;
	z-index: 2;
	background-image: var(--greenwaveimg);
	background-position: bottom center;
	background-size: 100% 100%;
	background-repeat: no-repeat;
	height: 65px;
	top: -65px;
}
.greenwavebg.whitewaveoverwrite .sppb-row::before {
	background-image: var(--whitewaveimg);
}
.sppb-gallery{
	display: flex;
	flex-wrap: nowrap;
}
.sppb-gallery li{
	flex-grow: 1;
	flex-shrink: 1;

}
.sppb-gallery img{
	width: 100%!important;
	transition: all ease .2s!important;
	z-index: 1;
	box-shadow: 0 0 0 #0005;
}
.sppb-gallery img:hover{
	transform: scale(1.1);
	position: relative;
	z-index: 6;
	box-shadow: 0 0 10px #0005;
}
.quote h2{
	line-height: 1.8!important;
}

.m3_cover_img *:not(a){
	width: 100%;
	height: auto;
}
.m3_cover_img .sppb-addon-title{
	position: absolute;
	bottom: 0;
	z-index: 6;
	font-weight: 600;
	font-size: 1.25rem;
	text-align: left;
	padding: 7px 10px;
	color: #195c4c!important;
	margin:0!important;
	background-color: rgba(255, 255, 255, .9);
	border-radius: 0 0 5px 5px;
	padding-top: 0px;
	width: 100%!important;
	box-shadow: unset!important;
}
.m3_cover_img .sppb-addon-title::after{
	display: none!important;
}
.m3_cover_img .sppb-addon-title::before{
	position: absolute;
	content: "";
	inset: 0;
	top: 0px;
	z-index: 2;
	background-image: var(--whitewaveimg);
	background-position: bottom center;
	background-size: 100%;
	background-repeat: no-repeat;
	height: 65px;
	top: -65px;
}
.m3_cover_img h3.sppb-addon-title{
	font-size: 1.75rem;
}
div.m3_cover_img{
	position: relative;
	transition: all ease .3s;
	box-shadow: 0px 0px 0px #195c4caa;
}
div.m3_cover_img:hover{
	transform: scale(1.1);
	box-shadow: 0px 0px 25px #195c4caa;
}
.sppb-carousel-extended-team-content{
	all: unset!important;
}
.sppb-carousel-extended-team-content-wrap{
	padding-top: 15px;
}

.sectionheader h2{
	padding-bottom: 10px;
}
.sectionheader h2,
.m3_module_header .sppb-addon-title{
	font-weight: 500;
	color: var(--middle-green)!important;
	box-shadow: inset 0 -2px 0 var(--verylight-gray)!important;
	position: relative;
}
.sectionheader h2::after,
.m3_module_header .sppb-addon-title::after{
	position: absolute;
	content: "";
	/*display: none!important;*/
	background: var(--dark-green);
	width: 30%!important;
	transition: all ease .2s;
	float: unset!important;
	left: 0;
	bottom: 0;
	height: 2px;
}
.sectionheader h2:hover::after,
.m3_module_header:hover .sppb-addon-title::after{
	width: 80%!important;
}
/*.m3_section:nth-child(odd)::before{
	--shadowspread: 100px;
	position: absolute;
	content: "";
	width: calc(100% + calc(var(--shadowspread) * 3));
	height: 100%;
	top: 0;
	left: calc(var(--shadowspread) * -1.5);
	box-shadow: inset 0 0 var(--shadowspread) var(--black_trans) !important;
}*/
.m3_section:nth-child(even){
	background-color: var(--verylight-gray);
}

.greengradient{
	background: var(--dark-green);
	background: var(--green-gradient-hr);
}

.h2_nogap .sppb-addon-content {
	color:#ffffff;
}

.icons-noborder ul >li {
	border-bottom: none !important;
}

.sp-dropdown-main {
	background-color:#ffffff !important;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item a {
	color:var(--dark-green) !important;
}

.sp-megamenu-parent .sp-dropdown li.sp-menu-item.active > a,
.sp-megamenu-parent .sp-dropdown li.sp-menu-item a:hover {
	background:var(--dark-green) !important;
	background:var(--green-gradient-hr) !important;
	color:#ffffff !important;
	border-radius: 6px!important;
}

.whitefont, .whitefont *{
	color: #fff;
}

.whitefontimportant, .whitefontimportant h3, .whitefontimportant h1, .whitefontimportant h2 {
	color: #fff !important;
}

.acc-invert-dark .sppb-panel-modern>.sppb-panel-heading {
	background-color:var(--dark-green) !important;
}
.acc-invert-dark .sppb-panel-modern>.sppb-panel-collapse{
	background-color:var(--dark-green) !important;
}

.acc-invert-medium .sppb-panel-modern>.sppb-panel-heading {
	background-color:var(--middle-green) !important;
}
.acc-invert-medium .sppb-panel-modern>.sppb-panel-collapse{
	background-color:var(--middle-green) !important;
}

.acc-invert-light .sppb-panel-modern>.sppb-panel-heading {
	background-color:var(--light-green) !important;
}
.acc-invert-light .sppb-panel-modern>.sppb-panel-collapse{
	background-color:var(--light-green) !important;
}

.acc-invert-verylight .sppb-panel-modern>.sppb-panel-heading {
	background-color:var(--verylight-green) !important;
}
.acc-invert-verylight .sppb-panel-modern>.sppb-panel-collapse{
	background-color:var(--verylight-green) !important;
}


.m3-spacer {
	width:100%;
	min-height:350px;
	background-image: linear-gradient(90deg, rgba(1,69,108,0) 0%, rgba(1,69,108,0.4) 35%, rgba(1,69,108,0.9) 100%), url(../../../images/m3/faq1.jpg);
	background-repeat:no-repeat;
	background-position:top center;
	background-size: cover;
	color:#fff;
}

.m3-hover-01, .m3-hover-02, .m3-hover-03, .m3-hover-04 {
	width:100%;
	height:200px;
}

.m3-hover-01:hover {
	background-image: url(../../../images/m3/komplett.png);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:100px 100px;
}

.m3-hover-02:hover {
	background-image: url(../../../images/m3/herzgefaess.png);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:100px 100px;
}

.m3-hover-03:hover {
	background-image: url(../../../images/m3/basis.png);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:100px 100px;
}

.m3-hover-04:hover {
	background-image: url(../../../images/m3/fitness.png);
	background-repeat:no-repeat;
	background-position:center center;
	background-size:100px 100px;
}

.search-open-icon, .search-close-icon {
	color:var(--dark-green);
}

.sp-default-logo {
	width:352px !important;
}

.metanav {
	margin-top:20px;
}

.dropdown-toggle::after {
	display:none !important;
}

.m3-flex {
	display:flex;
	font-size:12px;
}

.m3-flex p {
	text-align:center;
	padding-right:20px;
	color:var(--dark-green);
}

#sp-top3 {
	padding-top:8px;
}

#sp-footer {
	padding-bottom:0px !important;
}

/* GTranslate */
.switcher.notranslate .option.active{
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: #000a;
	display: block;
	z-index: 99999;
}
.switcher.notranslate .option.active > div{
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: grid;
	grid-template-columns: repeat(3, 161px);
	width: max-content;
	grid-gap:2px;
	padding:10px;
	border: 1px solid #CCCCCC;
	background-color: #fff;
	border-radius: 8px;
}
#sp-topsearch .switcher .option a{
	color: var(--dark-green)!important;
	border-radius: 5px;
	padding: .75rem .5rem;
}
#sp-topsearch .switcher .option a.selected,
#sp-topsearch .switcher .option a:hover{
	background-color: var(--dark-green)!important;
	color: #fff!important;
}
.switcher .selected{
	background: #fff!important;
}
#sp-topsearch .switcher .selected a{
	color: var(--dark-green)!important;
	border: 1px solid var(--dark-green) !important;
	border-radius: 5px;
}
/*****/

@media (min-width: 1200px){
	.sppb-row-container, .container {
		width: unset!important;
		max-width: 1320px!important;
	}
}
@media (max-width: 992px){
	.mobileflex > .sppb-row,
	.mobileflex > .sppb-column-addons{
		display: flex;
		gap: 20px;
	}
	.mobileflex > .sppb-row > *,
	.mobileflex > .sppb-column-addons > *{
		flex-basis: 100%;
	}
	#sp-logo, #sp-topsearch {
		width:100%;
	}
}

@media(max-width:769px) {
	.pull-right {
		float: none !important;
	}
	.pull-left {
		float: none !important;
	}
	.m3-flex {
		padding-top:15px;
		display: flex;
		width: 100%;
		justify-content: center;
	}
	.top-search-wrapper {
		display:none !important;
	}
	#sprechzeiten{
		margin: 0!important;
		top: 5vh;
	}
	#sp-footer{
		padding: 20px 5vw!important;
	}
}

@media(max-width:650px) {
	#sp-logo .sp-default-logo, #sp-logo .sp-retina-logo {
		max-width:100% !important;
		max-height:100% !important;
		width:auto !important;
		height:auto !important;
	}
	
	.mobile-centered {
		display:flex !important;
		flex-wrap:wrap;
		justify-content:center;
	}
}