
.vc_row {
	margin-left:  auto!important;
	margin-right:  auto!important;
}

 .vc_column_container > .vc_column-inner, footer .row {
    padding-left: 0px!important;
    padding-right: 0px!important;  
    padding-top: 0px;

}


.wpb_content_element{
    margin-bottom: 0px!important;
}

.gap .wpb_content_element{
   margin-right: 20px;
   
}

.th3_full_height{
	min-height: 100vh;
	background-position: 0 center!important;	
}

.th3_content_wrapper_row_full_width{
	background-color: #fff;
}



.intro{	
	display: none;
	position: fixed;
	top:0;
	z-index: 122121312313223211;
	width: 100vw;
	height: 100%;
	background-color: rgba(255, 255, 255, 1);
	
}

.introLogo{
	position: fixed;
	top:30%;
	left:50%;
	width: 240px;
	transform: translateX(-55%);
	height: 400px;
	
}

.introLogo .custom-logo {
  max-height: 260px;
  transition: .7s;
  width: inherit;
  height: 237px;
  
}

.main{	min-height: calc(100% - 160px); }

/*Responsive Bilder*/
.main img{
	max-width: 100%;
	max-height: auto;
}


iframe{
	height: calc(100vh - 400px);
}

/*################### Waypoint-Animations ################ */

.way{
	opacity: 0;
  transition: 1s;
  /*transform: translate(0px, 190px);*/
}


.wayFadeInAction{ 
	opacity: 1; 
	margin-top: 0;
}




.zoom {
overflow: hidden;

}

.bor .zoom,
.bol .zoom {
overflow: hidden;
width: 50vw;
}


.zoom img{
	transition: 1.1s;
}



.zoom img:hover{
	transform: scale(1.1);
}


.wayTxt{
	  opacity: 0;
    /*transform: translateX(-200px);*/
}

.wayTxtSlide{
	  opacity: 1;
}


.slideFromLeft{
	opacity: 0;
	transform: translateX(0px);
	animation-name:meine-animation;
  animation-delay: .5s;
  animation-duration:1.3s;
  animation-iteration-count:1;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
}


@keyframes meine-animation {
  0% {
  	opacity: 0;
    transform: translateX(-200px);
  }
  50% {  
  	opacity: 0.3; 
  }
  100% {  
  	opacity: 1;
    transform: translateX(0px);
    /* Eigenschaften zum Ende der Animation */   
  }
}


/*##################### Teaser ################## */
.teaser{
	display: block;
	overflow:hidden;	
	position: relative;
}

.teaser .t_mehr{
	position: absolute;
	z-index: 100;
	width: 24px;
	height: 170px;
	left:50%;
	bottom: 0;
	transform: translateX(-50%);


}

.t_mehr .ani{
	display: block;
	height: auto;
	text-decoration: none;
	border: 0;
	color: inherit;
	font-family: inherit;
	text-transform: inherit;
	padding: 4px 0 0 0;
	animation: elementPulseDown; /* referring directly to the animation's @keyframe declaration */
  animation-duration: 2.2s; /* don't forget to set a duration! */
  animation-iteration-count: infinite;
  animation-delay: 1s;
}


@keyframes elementPulseDown{
  0% { transform: translate3d(0, 0, 0) }
  50% { transform: translate3d(0, 16px, 0) }
  100% { transform: translate3d(0, 0px, 0) }
 }

.t_mehr .ani span{
	text-transform: uppercase;
	letter-spacing: 1.2px;
	display: block;
	font-family: fsb, sans-serif;
	color: #fff;
	transform: rotate(90deg);
}

.t_mehr .ani svg{
	margin-top: 40px;
}



.th3_teaser_half{
	height: 54vh;
	min-height: 620px; 
}


.th3_teaser_two_third{
	height: 70vh;
	min-height: 500px; 
}

.th3_teaser_full{
	height: calc(100vh - 140px);
	min-height: 100px;	
}


.teaserImage,
.th3_teaser_video{
	min-height: 100%;	
}

.teaserImage{
	-webkit-background-size: cover;
	background-size: cover;
	background-position: center left;
	background-repeat: no-repeat;

	 -webkit-transform: scaleX(-1);
  transform: scaleX(-1);

}


.teaser-text{
	position: absolute;
	top:20vh;
	width: 100%;
	-webkit-transform: scaleX(-1);
  transform: scaleX(-1);
}

.teaser-text p{
	font-size: calc(1vw + 1vh + 1vmin);
	margin-bottom: 0.2em;
	background-color: #000;
	color: #fff!important;
	line-height: calc(2.4vw + 2vh + 1vmin);
	display: inline;
	padding: 10px;
	padding-inline-start:10px;
	-webkit-box-decoration-break: clone;
	box-decoration-break: clone;
}

.teaser-text p:empty{
	display: none;
}




.th3_text_left{
	left:0;
	right: auto;
}


.th3_text_center{
	text-align: center;
	left:50%;
	transform: translateX(-50%);

}










.search .teaser{
	height: 550px;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center top;
	
}

.search .teaser .row{
	height: inherit;
	width: 100%;
	max-width: 1280px;
}

.search .teaser .teaserText{
	position: absolute;
	top: calc( 45% - 20px);
  -ms-transform: translate(0, -100px); /* IE 9 */
  -webkit-transform: translate(0, -100px); /* Safari */
  transform: translate(0, -100px);
	font-size: 1.6em;
	letter-spacing: 0.6px;
	line-height: 1em;
	line-height: 1.2em;
	font-size: calc(0.8vw + 0.7vh + 1vmin);
	color: #fff;
}

.search .homeTeaser .teaser .teaserText{
	  -ms-transform: translate(0, -150px); /* IE 9 */
  -webkit-transform: translate(0, -150px); /* Safari */
  transform: translate(0, -150px);
}


.search .teaser .teaserText h1{
	font-family: notoSerifSemi;
	font-size: max(1vw, 80px);
	line-height: 1.2em;
	letter-spacing: -0.5px;
	color: #fff;
	
}

.search h2{
	margin-bottom: 20px;
}


.search h2  a{
	color: #000;
}




.parallaxe{
  /* Create the parallax scrolling effect */
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

}

.parallaxeVideo{
	backface-visibility:hidden;
	height:auto;
	min-width:100%;
	width: auto;
	margin-left: 50%;
	transform: translateX(-50%);
	position: fixed;
	top: 0;
	z-index: -10;
}


/* Bilder außerhalb des Satzspiegels*/
.bor img{
	display: block;
  position: relative;
	/*transform: translateX(-100%);*/
	margin-right: 100%;
  /*max-width: 100vw;*/
  max-width: 50vw;
  height: auto;
}



.bol img{
	display: block;
  position: relative;
	transform: translateX(-100%);
	margin-left: 100%;
  /*max-width: 100vw;*/
  max-width: 50vw;
  height: auto;
}




.bol video{
	display: block;
  position: relative;
	transform: translateX(-100%);
	margin-left: 100%;
	width: 1200px!important;
  /*max-width: 100vw;*/
  max-width: 50vw;
  height: auto;
}





.bol2 img{
	display: block;
  position: relative;
	transform: translateX(-100%);
	margin-left: calc(100% - 150px );
  max-width: 50vw;
  height: auto;
}


.spl{	padding-left: 45px; }
.spr{ padding-right: 145px; }
.spr2{ padding-right: 45px; }


.bigIcon {
  display: inline-flex;
  align-self: center;
  font-family: fsm;
	font-weight: 500;
	font-size: 1.1em;
	line-height: 2em;
	width: 320px;
	float: left;
	margin-bottom: 10px;
	color:#B1C800;
	text-transform: initial!important;

}

.bigIcon svg{
	margin-right: 20px;
	padding-top: 3px;
}



/*#################### Map-Image ################*/


.mapImage{
	position: relative;
	width: 100%;
	min-width: 1022px;
	max-width: 1022;
	margin: 42px auto;
	height: 757px;
	height: 823px;
/*	background-image: url('../layout/map2.png');*/
	background-image: url('../layout/map.svg');
	background-repeat: no-repeat;
	background-size: cover;
	
}

.area1, .area2, .area3, .area4, .area5, .area6{
	position: absolute;
	top:181px;
	left: 656px;
	width: 35px;
	height: 35px;
	cursor: pointer;
		background-image: url('../layout/pink.png');
	 animation-name: example;
  animation-duration: 2s;
  animation-iteration-count: infinite;

}


@keyframes example {
  0% {scale:1;}
  50% {scale:1.4;}
  100% {scale:1;}
}



.area2{
	top:267px;
	left: 690px;
	background-image: url('../layout/pink.png');
	background-repeat: no-repeat;
  animation-delay: 0.5s;

	
}

.area3{
	top:374px;
	left: 710px;
	background-image: url('../layout/pink.png');
}

.area4{
	top:187px;
	left: 130px;
	background-image: url('../layout/green.png');

}
/*LB*/
.area5{
	top:492px;
	left: 783px;
  animation-delay: 0.5s;
	background-image: url('../layout/yellow.png');

}
.area6{
	top:402px;
	left: 854px;
	background-image: url('../layout/blue.png');

}

.mapImage .content{
	display: none;
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: rgba(143,62,114, 0.9);
	color:#fff;
}

.mapImage .content span{
	display: block;
	margin: 160px 50px;
	color:#fff;
	font-size: 1em;
	line-height: 1.4em;
	text-align: center;
}

.mapImage .content span h2{
	margin-bottom: 30px;
}

.mapImage .content .x{
	position: absolute;
	width: 30px;
	height: 30px;
	background-image: url('../layout/x.png');
	cursor: pointer;
	right: 20px;
	top: 20px;
}


.legende span{
	line-height: 1.6em;
/*	text-decoration: underline;*/
	cursor: pointer;
}

.legende a{
/*	color:#AD6D85;*/
	color: rgb(143,62,114);
	line-height: 2.2em;
}

.legende .lk:before{
	content: '';
	display: block;
	width: 24px;
	height: 24px;
	float: left;
	margin-right: 15px;
	margin-top: 4px;
	background-size: contain;
	background-image: url('../layout/qy.png');
	
}

.legende a:before{
	content: '';
	display: block;
	width: 24px;
	height: 24px;
	margin-top: 4px;
	float: left;
	margin-right: 15px;
	background-size: contain;

}
.legende a.t2:before{
	background-image: url('../layout/blue.png');
	
}
.legende a.t3:before{
	background-image: url('../layout/pink.png');
	
}
.legende a.t1:before{
	background-image: url('../layout/yellow.png');
	
}
.legende a.t4:before{
	background-image: url('../layout/qg.png');
	
}




.main .wp-caption-text{
	position: relative;
	display: inline-block;
	font-size: 0.6em;
	line-height: 1em;
	top:-39px;
	background-color: rgba(255,255,255,0.4);
	padding: 4px;
	
}

/*##################### Slider ########################## */

.th3_slider{
position: relative;
box-sizing: content-box;

}

.owl-carousel{
	
}

.owl-stage-outer{
	height: inherit;
	
}

.owl-stage{
	height: inherit;
}

.th3_slider .item, .owl-item{
	height: inherit;
}


.th3_slider .item .leftItem{
	width: calc(50% - 15px);
	margin-right: 15px;
	float: left;
}


.th3_slider .item .rightItem{
	width: calc(50% - 15px);
	margin-left: 15px;
	float: left;
}


.th3_sldier_nav{
	width: 50px;
	height: 48px;
	background-color: #000;
	transition: .7s;
}

.th3_sldier_nav:hover{
	background-color: rgb(177,200,0);
}

.owl-nav{
	position: absolute;
	width: 100%;
	height: 1px;
	top:26%;
	transform: translateY(-50% );
}

.owl-prev{
	float: left;
}

.owl-next{
	float: right;
}


.arrow-left{
	/*background-image: url('../layout/back.svg');*/
	background-size: contain;
}

.arrow-right{
	float: left;
	/*background-image: url('../layout/next.svg');*/
	background-size: contain;
}



.owl-dots{
	position: absolute;
	left:50%;
	transform: translateX(-50%);
	bottom:10px;
}

.owl-dot{
	float: left;
}


.owl-dot span{
	display: block;
	border: 1px solid #e9e9e9;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%; 
	width: 10px;
	height: 10px;
	margin-right: 10px;
}


.owl-dot.active span{
	display: block;
	border: 1px solid #e9e9e9;
	background-color: #e9e9e9;
	width: 10px;
	height: 10px;
	margin-right: 10px;
}




/*##################################################################*/
/*####################### Content Styles ###########################*/
/*##################################################################*/



h1{
	/*text-transform: uppercase;*/
	font-family: var(--h1fontFamily), sans-serif;
	letter-spacing: .3px;
	font-size: 2em;
	font-size: var(--h1fontSize);
	line-height: 1.12em;
	color: #000;
	color: var(--h1color);
}





h2{
	font-family: var(--h2fontFamily), sans-serif;
	line-height: 1.41em;
	font-size: 2em;
	font-size: var(--h2fontSize);

}



h3{
	font-family: var(--h2fontFamily), sans-serif;
	letter-spacing: .3px;
	font-size: 1.7em;
	line-height: 1.3em;
	margin: 50px 0 10px 0;
}



h3 + h2{
	font-size: 1.75em;
	/*margin-top: -0.7em;*/
}



h4{
	font-family: fsb, sans-serif;
	letter-spacing: .3px;
	font-size: 1.375em;
	line-height: 1.455em;
	margin-bottom: 10px;
}


p, ol{
/*	font-family: fsl, sans-serif;
	margin-bottom: 1em;
	font-size: 1.07em;
	font-size: 1.3em;
	line-height: 1.74em;
	line-height: 1.7em;*/



font-family: noto, sans-serif;
margin-bottom: 1.2em;
font-size: 21px;
line-height: 36px;
line-height: 33px;


}

p strong,
li strong{
/*	font-family: fsm;*/
	font-family: notobold;
	font-weight: 500;
}

.er{
	display: inline-block;
	text-indent: 30px;
	font-size: 80%;
}

.main a{
	color: rgb(143,62,114);
	display: inline-block;
}
.main a:hover{

}

.center{
	text-align: center;
}

.smallP .row  {
	max-width: 900px;
}

.smallP .row .box_wrapper .bildboxLink {
  position: relative;
  height: 100%;
  width: 100%;
  margin-bottom: 25px;
  background-size: cover;
  padding-top: calc( 100% * (140 / 300 ) );
}

.smallP .row .box_wrapper .bildboxLink a {
  margin-left: 30%;

}


.main a[href$=".zip"]:after,
.main a[href$=".pdf"]:after{
	display: block;
	content: '';
	float: right;
	width: 33px;
	height: 35px;
	margin-left: 15px;
  background-image: url('../layout/dl.png');
  background-size: contain;
  background-position: center;
}


.main .appCTA a{
	display: block;
/*	min-height: 180px;*/
	width: 550px;
	max-width: 100%;
}



.main .smallTxT{
	display: block;
	font-size: 0.7em!important;
	line-height: 1.3em!important;
}




.main .logo-small{
	max-width: 300px;
	
}

.acctxt p img.wideIMG {
  max-width: 450px;
  margin-right: 50px;
  margin-bottom: 50px;
}


/* Blöcke */


/* Aktuell Block */

 #aktuellBlock,
 .aktuellBlock{
	color: #fff;
	padding: 46px 40px!important;

	background-color: #8F3E72;
	background-image: url('../layout/bg03.jpg');
/*	background-image: url('../layout/aktuell.jpg');*/
	background-repeat: no-repeat;
	background-position: right ;
	background-size: cover;
}

.highlightBlock{
	color: #fff;
	padding: 40px;
	background-repeat: no-repeat;
	background-position: right;
	min-height: 400px;
	background-size: cover;
}



.box h1,
.aktuellBlock h1,
.highlightBlock h1{
	color: #fff;
	margin-bottom: 30px;
	font-size: max(0.9vw, 59px);
}

.box a ,
.teaser .teaserText p a,
.highlightBlock a,
.aktuellBlock a,
 a.btn{
display: inline-block;
/*background-image: url('../layout/btn.svg');*/
background-image: url('../layout/pfeil.svg');
background-repeat: no-repeat;
color: #fff;
text-transform: lowercase;
/*padding: 15px 93px 16px 12px;*/
/*padding: 13px 93px 16px 26px;*/
padding: 11px 68px 14px 20px;
margin-top: 10px;
font-size: 16px;
font-weight: bold;
text-decoration: none;
line-height: 1.13em;
/*line-height: 3em;*/

/*min-width: 336px;*/
/*text-align: left;
text-indent: 21px;
margin-left: 50%;
margin-top: 40px;
transform: translateX(-50%);

*/
}

 a.btn:after{
background: transparent!important;
display: none!important;

 }


.teaser .teaserText p a{


}


.appCTA img{
	max-width: 200px;
}


.appIcon img{
	max-width: 240px;
}


.verband{
	max-width: 154px!important;
}



.eventWrapper{
	box-sizing: border-box;
	display: flex;
	flex-wrap: wrap;
	gap:15px;
	/*justify-content: space-between;*/
}


.event{
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px; 
	-moz-background-clip: padding; 
	-webkit-background-clip: padding-box; 
	background-clip: padding-box;
	background-color: #fff;
	flex: 0 0 calc(30% - 16px);
	box-sizing: border-box;
	border: 1px solid #fafafa;
	text-decoration: none;
	color:#000;
	padding-bottom:20px;
}
.event h3, .event p, .event span{
	color:#000;
	padding:0 10px;
	font-family: noto, sans-serif;
	margin:10px 0;
}


.event .img img{
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px; 
	-moz-background-clip: padding; 
	-webkit-background-clip: padding-box; 
	background-clip: padding-box;
	margin-bottom: 20px;

}


/*------------------- Partner -------------------*/

.partner_wrapper{
	display: flex;
	justify-content: space-between;
	
}
.partner_wrapper img{
	min-height: 86px;
	height: 100%;
	max-width: 170px;
	
}

.moveRight{
	margin-left:20px;
}


/* ################### Die Partnerbox auf der Partnerseite 2025 ###################### */

.partnerbox{
	background-color: #fff;
	padding: 50px;
}

.partnerbox img{
	width: 70%;
	max-width: 400px;
	margin: 30px 0;
/*	float: left;*/
}


.pinkBG{
	background-image: url('https://echt-schoen-schraeg.de/wp-content/uploads/2022/06/bg02.jpg');
	background-size: cover;
	background-position: top right;
	box-flex-group: no-repeat;
	color: #fff!important;
	padding: 50px;
}

.pinkBG .wpb_wrapper{
	padding: 25px;
}

.pinkBG2{
	background-color: rgb(143,62,114);
}

.pinkBG2 h1, 
.pinkBG2 h2, 
.pinkBG2 p {
  color: #fff;
}

.pinkBG2 h1, 
.pinkBG2 h2{
  margin-bottom: 30px;
  font-size: max(0.9vw, 39px);
}



.partnerkacheln {
    display: flex;
    flex-wrap: wrap;
    gap: 25px;
}


.partnerkacheln .wpb_wrapper p {
    display: flex;           /* macht das <p> zum Flex-Container */
    flex-wrap: wrap;         /* erlaubt Zeilenumbruch */
    gap: 25px;               /* Abstand zwischen den Kacheln */
    margin: 0;      
                      /* WPBakery-P <p> hat oft Margin */
}

.partnerkacheln .wpb_wrapper p a {
    flex: 0 0 calc((100% - 80px)/2); /* 2 Spalten */
    box-sizing: border-box;
    display: block;
}

.partnerkacheln .wpb_wrapper p a img {
    width: 100%;
    max-width: 500px;
    height: auto;
    display: block;
}

/* ab Tablet/kleineren Desktop-Breite */
@media (max-width: 768px) {
    .partnerkacheln .wpb_wrapper p a {
        flex: 0 0 100% ; /* 2 Spalten mit Gap */
        
    }
}



/*------------------- Back to top ---------------------------*/


#totop{
	position: fixed;
	right: 0px;
	bottom:50px;
	display: block;
	width: 50px;
	height: 50px;
	margin: 0 auto;
	background-color: #000;
	cursor: pointer;
	text-align: center;
	z-index: 12312934891;
}


#totop span  {
	float: left;
	display: block;
	width: 100%;
	height: 100%;
	padding: 7px;
}


#totop span.up:before {
	content: '';
	display: inline-block;
	width: 100%;
	height: 100%;
	vertical-align: middle;
  background-origin: content-box;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("../layout/icons/totop.svg");
  transition: .4s;
}


/*------------------- Back to top ende---------------------------*/








/*############## Footer ################### */




footer{
  position: relative;
/*  background-image: url('../layout/footer.png');*/
  background-image: url('../layout/footer.jpeg');
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  min-height: 475px;
  padding-top: 40px;

}


footer .row{
	padding:10px 0 10px 0;
	display: flex;
	flex-wrap: wrap;

}

footer .row .landkreis img{

	max-width: 170px;
	width: 100%;
	height: auto;
	margin-right: 10px;
	display: inline-block;
}


footer strong{
	font-family: var(--naviFont);
	text-transform: uppercase;
	font-size: 1.5em;
}

footer h2, footer p{
  color: #fff;
	font-size: 1em;
	line-height: 25px;
}



footer a{
  color: #fff;
  transition: color 0.3s ease-in-out;
}


footer a:hover{
  color: #e9e9e9;
}



footer .footerNavi a{
/*	line-height: 2.5em;*/
display: inline-block;
margin-bottom: 17px;

	text-decoration: none;
	
}




.footer-upper{
	width: 1800px;
	min-height: 260px;

	color: #fff;
	
}
.footer-bottom{

}