@charset "utf-8";

/*********/
/* Fonts */
/*********/

@import url('https://fonts.googleapis.com/css2?family=Nunito+Sans:ital,wght@0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,200;1,300;1,400;1,600;1,700;1,800;1,900&display=swap');

/*************/
/* Allgemein */
/*************/

html,body
{
	
}

body{
	overflow-y:scroll;
	font-family: 'Nunito Sans',sans-serif;
	font-size:14px;
	padding-top:151.5px;
}

a{
	border:none;
	outline:none !important;
}

h1{
	font-family: 'Nunito Sans', sans-serif;
	font-size:40px;
	font-weight:600;
	text-transform:uppercase;
	text-align:right;
	/*word-spacing: 100vw;*/
	line-height:1.05;
}

h2{
	font-family: 'Nunito Sans', sans-serif;
	font-size:30px;
	font-weight:600;
	text-transform:uppercase;
	line-height:1.05;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

h3{
	font-family: 'Nunito Sans', sans-serif;
	font-size:26px;
	font-weight:600;
	text-transform:uppercase;
	line-height:1.05;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
}

.clear{
	clear:both;
	height:0;
	line-height:0;
	font-size:0;
}

.row-eq-height {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
}

.fadelink{
	display:inline-block;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
.fadelink:hover{
	opacity:0.65;
}

blockquote{
	font-size: 1.4em;
	margin:50px auto;
	font-family:Open Sans;
	font-style:italic;
	color: #555555;
	padding:24px 32px 8px 64px;
	border-left:8px solid rgba(154,80,15,1);
	line-height:1.6;
	position: relative;
	background:rgba(245,244,241,1);
}

blockquote::before{
	font-family:Arial;
	content: "\201C";
	color:rgba(154,80,15,1);
	font-size:4em;
	position: absolute;
	left: 10px;
	top:-10px;
}

blockquote span{
	font-style:normal;
}

/************/
/* Editmode */
/************/

#editmode form[name=we_form]{
	display:block;
	height:100%;
}

#editmode div.tbButtonWysiwygBorder {
	-moz-box-sizing: initial !important;
	-webkit-box-sizing: initial !important;
	box-sizing: initial !important;
}

#editmode select{
	color:#000000;
}

/**********/
/* Header */
/**********/

header{
	box-shadow:0px 10px 50px -30px rgba(0,0,0,1);
}

.navbar-brand img{
	height:90px;
	width:auto;
}

/**********/
/* Footer */
/**********/

footer{
	padding:24px 0 40px 0;
	line-height:1.6;
	background-image:url('/images/layout/bg_footer.png');
	background-size:contain;
	background-repeat:no-repeat;
	background-position:left 0;
}

footer a{
	color:#FFFFFF;
}
footer a:hover, footer a:focus{
	text-decoration:underline;
	color:#FFFFFF;
}

/**************/
/* Navigation */
/**************/

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

header .navbar-light{
	background-image:url('/images/layout/bg_header.png');
	background-size:contain;
	background-repeat:no-repeat;
	background-position:right 0;
}

#nav_main > ul > li > a{
	vertical-align: bottom;
	text-transform:uppercase;
	padding-bottom:0;
}

#nav_main a{
	color:#000000;
	font-family: 'Nunito Sans', sans-serif;
	font-size:14px;
	font-weight:600;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	white-space: nowrap;
}

#nav_main a:hover, #nav_main a:focus, #nav_main > ul > .active > a{
	color:rgba(154,80,50,1);
}

#nav_main .dropdown-menu{
	background:rgba(245,244,241,1);
	border:none;
	border-radius:0;
	margin-left:-5px;
	margin-top:8px !important;
	box-shadow: inset 0px 30px 30px -35px rgba(0,0,0,0.25);
	padding:0;
}

#nav_main .dropdown-menu a{
	font-size:13px;
	font-weight:400;
	padding-left:15px;
	padding-right:15px;
}
#nav_main .dropdown-menu a:hover, #nav_main .dropdown-menu a:focus{
	background:transparent;
}
#nav_main .dropdown-menu a.active{
	background:rgba(154,80,50,1);
	color:#FFFFFF;
}

#nav_main .dropdown-menu a:first-child{
	margin-top:8px;
}
#nav_main .dropdown-menu a:last-child{
	margin-bottom:8px;
}

#nav_top a{
	padding-top:0;
	padding-bottom:0;
	text-transform:uppercase;
	margin-left:40px;
	color:#FFFFFF;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	font-family: 'Nunito Sans', sans-serif;
	font-size:14px;
	font-weight:600;
}
#nav_top a:hover, #nav_top a:focus, #nav_top a:hover, #nav_top .active a{
	color:rgba(209,206,195,1);
}

#nav_footer a{
	font-family: 'Nunito Sans', sans-serif;
	text-transform:uppercase;
	text-decoration:none;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
#nav_footer a:hover, #nav_footer a:focus, #nav_footer a.active{
	color:rgba(209,206,195,1);
}

/***********/
/* Content */
/***********/

.main{
	position:relative;
	z-index:20;
}

.main .forSlideshow{
	position:relative;
	background:#FFFFFF;
	margin-top:-150px;
	padding-bottom:40px;
	margin-bottom:-40px;
	min-height:300px;
}
.main .forSlideshow:before{
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:300px;
	z-index:-10;
	box-shadow:0px 0 30px -15px rgba(0,0,0,1);
}
@-moz-document url-prefix() {
	.main .forSlideshow:before{
		box-shadow:0px 0 50px -30px rgba(0,0,0,1);
	}
}

.main .text p:last-child{
	margin-bottom:0;
}

.content a{
	color:rgba(154,80,15,1);
}

.content ul, .content ol{
	padding-left:20px;
}

.content ul{
	list-style: none;
}

.content ul li, .content ol li{
	margin-bottom:16px;
}

.content ul li:before {
	content: '\f04b';
	font-family: 'Font Awesome 5 Pro';
	float: left;
	margin:0.6em 0 0 -2em;
	color:rgba(154,80,15,1);
	font-weight:700;
	font-size:50%;
}

.button{
	display:inline-block;
	padding:5px 12px;
	background-color:rgba(75,61,47,1);
	color:#FFFFFF;
	text-transform:uppercase;
	font-size:15px;
	line-height:1;
	font-family: 'Nunito Sans', sans-serif;
	font-weight:600;
	text-decoration:none;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
.button:hover, #references .button:focus{
	background-color:#FFFFFF;
	color:rgba(75,61,47,1);
	text-decoration:none;
}

#map{
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	z-index:10;
}

.greyscaleEffect{
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
.greyscaleEffect:hover, .greyscaleEffect:focus{
	-webkit-filter: grayscale(1);
	filter: grayscale(1);
}

.zoomIcon{
	position:relative;
}

.zoomIcon:after, .zoomIcon:after{
	content: '\f00e';
	font-family: 'Font Awesome 5 Pro';
	position:absolute;
	top:0;
	right:0;
	bottom:0;
	left:0;
	text-align:center;
	line-height:100%;
	opacity:0;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	color:#FFFFFF;
	font-size:48px;
	text-shadow:2px 2px 5px rgba(0,0,0,0.5);
	z-index:100;
}

.zoomIcon:hover:after, .zoomIcon:focus:after{
	opacity:100;
}

#sections{
	position:relative;
	z-index:30;
}

.image{
	background-repeat:no-repeat;
	background-position:center center;
	background-size:cover;
}

section.banner{
	background-size:cover;
	background-repeat:no-repeat;
	background-position:center center;
}

section.modul3{
	overflow:hidden;
}

/*************/
/* Slideshow */
/*************/

#slideshow{
	position:relative;
	z-index:10;
}

#slideshow .carousel-inner,
section.banner{
	height:450px;
	overflow:hidden;
}

#slideshow .carousel-item{
	height:100%;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:cover;
}

#slideshow .carousel-indicators{
	bottom:150px;
}

#slideshow .carousel-indicators >li{
	border-radius:50%;
	width:14px;
    height:14px;
    background-color:rgba(209,206,195,1);
	margin:0 6px;
	border:2px solid #FFFFFF;
	box-shadow:0 0 5px rgba(0,0,0,0.5);
	cursor:pointer;
}

#slideshow .carousel-indicators >li.active{
	background-color:rgba(75,61,47,1);
}

/**********/
/* Teaser */
/**********/

#teaser .item a{
	display:block;
	text-decoration:none;
}

#teaser .item img{
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
#teaser .item a:hover img, #teaser .item a:focus img{
	/*-webkit-filter: grayscale(1);
	filter: grayscale(1);*/
}

#teaser .item .title{
	display:block;
	background:rgba(75,61,47,1);
	text-align:center;
	text-transform:uppercase;
	color:#FFFFFF;
	font-family: 'Nunito Sans', sans-serif;
	font-weight:600;
	padding:4px 0;
	box-shadow: inset -40px 0px 80px -40px rgba(0,0,0,0.5);
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
#teaser .item a:hover .title{
	background-color:rgba(245,244,241,1);
	color:rgba(154,80,50,1);
}

/*************/
/* Kreislauf */
/*************/

.cycle .title{
	font-family: 'Nunito Sans', sans-serif;
	font-weight:600;
	text-transform:uppercase;
	font-size:18px;
}

.cycle .bullet{
	float:left;
	color:#FFFFFF;
	border-radius:50%;
	text-align:center;
	height:24px;
	width:24px;
	line-height:24px;
	font-family: 'Roboto',sans-serif;
	font-size:12px;
	vertical-align:middle;
	margin:1px 6px 0 0;
}

.cycle p{
	margin:0;
	line-height:1.4;
}

.cycle small{
	font-weight:300;
	line-height:1.5;
}

/*********/
/* Quote */
/*********/

.quote .col-left, .quote .col-right{
	min-height:450px;
	background-repeat:no-repeat;
	background-size:cover;
	position:relative;
}
.quote .col-left{background-position:right center; text-align:right;}
.quote .col-right{background-position:center center;}

.quote .col-left h2 span, .quote .col-left p span{
	padding:0 4px;
	font-weight:400;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
}
.quote .col-left h2 span{font-size:46px;}
.quote .col-left p span{font-size:18px; line-height:1.3;}

.quote .col-right h2, .quote .col-right p{
	position:absolute;
	left:48px;
	bottom:48px;
	right:48px;
}

.quote .col-left h2, .quote .col-left p{
	right:48px;
	bottom:48px;
	right:48px;
}

#sections .quote .col-left h2, #sections .quote .col-left p{
	position:absolute;
}

.quote .col-left h2 span,
.quote .col-right h2 span{
	padding:0 4px;
	font-size:46px;
	font-weight:400;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
}

.quote .col-left p span,
.quote .col-right p span{
	font-size:18px;
	line-height:1.3;
	padding:0 4px;
	font-weight:400;
	text-align:justify;
	margin-top:8px;
	-ms-hyphens: auto;
	-webkit-hyphens: auto;
	hyphens: auto;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
}

.content-box {
	position:relative;
	width:100%;
	min-height:450px;
}

.half-box.col-left {
	position:absolute;
	top:0;
	right:-15px;
	bottom:0;
	width:50vw;
}

.half-box.col-right {
	position:absolute;
	top:0;
	left:-15px;
	bottom:0;
	width:50vw;
}

/**************/
/* Referenzen */
/**************/

#references .item,
#references_list .item{
	display:block;
	position:relative;
}

#references .item img,
#references_list .item img{
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
#references .item:hover img, #references .item:focus img,
#references_list .item:hover img, #references_list .item:focus img{
	/*-webkit-filter: grayscale(1);
	filter: grayscale(1);*/
}

#references .item .text,
#references_list .item .text{
	display:flex;
	align-items: center;
	justify-content: center;
	flex-flow: column wrap;
	position:absolute;
	left:0;
	top:20px;
	right:0;
	bottom:0;
	opacity:0;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}
#references .item:hover .text, #references .item:focus .text,
#references_list .item:hover .text, #references_list .item:focus .text{
	opacity:1;
}

#references .item .text .title,
#references_list .item .text .title{
	font-family: 'Nunito Sans', sans-serif;
	font-weight:400;
	font-size:22px;
	text-transform:uppercase;
	margin:0 30px;
}

#references .item .text .title, #references .item .text .subtitle,
#references_list .item .text .title, #references_list .item .text .subtitle{
	line-height:1;
}

#references .item .text .title .line, #references .item .text .subtitle .line ,
#references_list .item .text .title .line, #references_list .item .text .subtitle .line{
	display:block;
	text-align:center;
}

#references .item .text .title .line > span, #references .item .text .subtitle .line > span,
#references_list .item .text .title .line > span, #references_list .item .text .subtitle .line > span{
	padding:0 5px;
	line-height:1;
	box-decoration-break: clone;
	-webkit-box-decoration-break: clone;
}

#references_list .item .text .title{font-size:44px;}
#references_list .item .text .subtitle{font-size:22px;}

/**********/
/* Bilder */
/**********/

/**************/
/* Responsive */
/**************/

@media (max-width: 1199px)
{
	.quote .col{
		height:400px;
		min-height:auto;
	}
	.quote .col h2 span{
		font-size:38px;
	}
	.quote .col p span{
		font-size:18px;
	}
	
	#references_list .item .text .title{font-size:32px;}
	#references_list .item .text .subtitle{font-size:18px;}
}

@media (max-width: 991px)
{
	header .navbar-light{
		background-size:983px 116px;
		background-position:center top;
	}
	header .navbar-light .navbar-nav{
		margin-top:10px;
		margin-bottom:5px;
	}
	
	#nav_main .dropdown-menu{
		box-shadow:none;
		margin-top:0 !important;
		padding-left:8px;
	}
	
	footer{
		background-size:cover;
		background-position:center center;
	}
	
	#slideshow .carousel-inner,
	section.banner{
		height:400px;
	}
	
	.quote .col{
		position:static;
	}
	
	.quote .col-right h2{
		left:48px;
	}
	.quote .col h2 span{
		font-size:34px;
	}
	.quote .col p span{
		font-size:14px;
	}
	
	.content-box {
		min-height:auto;
		position:static;
	}
	.half-box.col-left, .half-box.col-right{
		top:auto;
		left:0;
		right:0;
		bottom:auto;
		width:auto;
		height:400px;
		min-height:400px;
	}
}

@media (min-width: 768px)
{
	
}

@media (max-width: 767px)
{
	body{
		padding-top:76px;
	}
	
	header .navbar-light{
		background-size:664px 76px;
	}
	
	.navbar-brand img{
		height:50px;
	}
	
	#slideshow .carousel-inner,
	section.banner{
		height:300px;
	}
	
	#slideshow .carousel-indicators{
		bottom:0;
	}
	
	#teaser .container:first-child{
		margin-top:0;
	}
	
	.quote .col{
		height:300px;
	}
	
	.half-box.col-left, .half-box.col-right{
		height:300px;
		min-height:300px;
	}
}

@media (max-width: 576px)
{
	h1{
		font-size:10vw;
	}
	
	.quote .col-right h2{
		left:16px;
		bottom:24px;
	}
	
	.quote .col h2 span{
		font-size:8vw;
	}
	.quote .col p span{
		font-size:3vw;
	}
}

@media screen and (min-width: 992px) and (max-width: 1199px) 
{
	.navbar-brand img{
		height:70px;
	}
}

/**************/
/* webEdition */
/**************/

#editmode .wetextarea{
	resize:none;
}

#tinymce{
	padding:0;
}

#editmode #sections .we_blockControls:last-child{
	padding:8px 8px 1px 13px;
	border:1px dashed #A5AAAE;
}