
/* plus-jakarta-sans-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/plus-jakarta-sans-v11-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/plus-jakarta-sans-v11-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* plus-jakarta-sans-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/plus-jakarta-sans-v11-latin-500.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/plus-jakarta-sans-v11-latin-500.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* plus-jakarta-sans-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 600;
  src: url('../fonts/plus-jakarta-sans-v11-latin-600.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/plus-jakarta-sans-v11-latin-600.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}

/* plus-jakarta-sans-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Plus Jakarta Sans';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/plus-jakarta-sans-v11-latin-700.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('../fonts/plus-jakarta-sans-v11-latin-700.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}


:root
{
	--fbodysize: 1.0rem;
	--ctext:#000000;
	--clink:#007A76;
	--clinkhover:#00a9a2;
	--clinkactiv:#007A76;
	--cblue: #00a9a2;
	--cgreen:#4dc07a;
	--cdarkblue:#007A76;
	--cbackground: #f6f8fa;
	--cline: #dddddd;
	--cbggrey: #85847a;
	--cgrey:#eee;
	--cdark:#000000;
	--boxwidth:1800px;
	--smallwidth:1200px;
	--maxwidth:100%;
	--contentwidth:1000px;
	--fullhdwidth:1920px;
}

html {
	/* scrollbar fix (prevent ugly left pull for lower content sites) */
	overflow-y: scroll;
	height:100%;
    scroll-behavior: smooth;
}

html, body{margin:0;padding:0; height:100%;scroll-behavior: smooth;}

body{font-family: 'Plus Jakarta Sans', sans-serif; font-size:16px;color:var(--ctext); background-color: #fff;font-weight:400;}

h1, h2, h3, .h1, .h2, .h3{font-family: 'Plus Jakarta Sans', sans-serif; padding:0;margin:0;font-weight:600;}
h1, .h1{font-size:30px;color:var(--cdarkblue);padding-bottom:40px;}
h2, .h2{font-size:20px;color:var(--cdarkblue);padding-bottom:12px;}
h3, .h3{font-size:16px;color:var(--cdarkblue);padding-bottom:12px;display:block;}

h1 span.light{text-transform:none;font-weight:400;display:block;}
h2 span.light{text-transform:none;font-weight:400;display:block;}

.moduletable h2, .moduletable .h2{font-size:30px;}

p{margin:0;padding:0 0 20px 0;line-height:1.5}

figure, figure.img{margin:0;padding:0;line-height:0;}
img{max-width:100%;height:auto;}

figcaption{line-height:1.1;font-size:14px;padding-top:4px;color:#333333;}

a{color:var(--clink);text-decoration:none;}
a:hover{color:var(--clinkhover);}

a.back{font-weight:600;margin-top:20px;display:block;}
a.back:before{content: '\e64a';font-family: 'themify';position: relative;display:inline-block;font-size:14px;}

p.readmore a, .protxt a, .itemtxt p a{font-weight:600;}

.clr{clear:both;}
b, strong{font-weight:600;}

table td{vertical-align:top;}

.blau{color:var(--cdarkblue);}

ul, ol{margin:0;padding:0 0 20px 40px;line-height:1.5}

#headerwrap{}
#headerwrap:after{content:'';display:table;clear:both;}

#headinner{grid-gap: 1em 3%; display: grid; grid-auto-flow: row; grid-template-columns: 1fr 60px;align-items:center;width:90%;max-width:var(--boxwidth);margin:10px auto;}
#headinner #slogan {order:2; grid-column: 1 /3;}

#logo{text-align:left;}
#logo a{display:block;}
#logo p{margin:0;padding:0;line-height:0;}
#logo img{max-width:260px;width:100%;}

#slogan{}
#slogan h1{margin:0;padding:0;text-transform:uppercase;font-size:18px;}
#slogan h1 span.light{text-transform:none;font-weight:400;display:block;}

header{  border-bottom: 5px solid; border-image: linear-gradient(to right,  var(--cblue), var(--cgreen)) 1;background-color:#ffffff;}
body.home header{border-bottom:none;}
header.smaller{height:80px;z-index:99;border-bottom: 3px solid; border-image: linear-gradient(to right,  var(--cblue), var(--cgreen)) 1;background-color:#ffffff;}
body.home header.smaller{border-bottom: 3px solid; border-image: linear-gradient(to right,  var(--cblue), var(--cgreen)) 1;background-color:#ffffff;}
header.smaller #logo img{height:50px;width:auto;}
header.smaller #topbar{display:none;}
header.smaller #headerwrap{margin-top:0px; }
header.smaller #headerinner{padding-top:6px;}

@keyframes fadeIn {    from { opacity: 0; }
    to { opacity: 1; }
}

.fade-in {
    animation: fadeIn 1.5s ease-in /* remove infinite*/
}
.zoom-in-out-element {

}

@keyframes zoom-in-zoom-out {
  0% {
    scale: 100%;
  }
  50% {
    scale: 110%;
  }
  100% {
    scale: 100%;
  }
}


#mainwrap{position:relative;}

#button{position:absolute;width:160px;height:160px;border-radius:50%;z-index:20;background-color:#ffffff;display:grid;justify-items:center;align-items:end;border:solid 1px var(--cblue);  top: 15vh;
  left: 5%; animation: zoom-in-zoom-out 4s ease infinite ;}
#buttoninner{text-align:center;padding:30px;}
#buttoninner p{line-height:1.2;padding-bottom:4px;}
#buttoninner a:after{content: '\e663';font-family: 'themify';position: relative;text-align: center;font-size:30px;display:block;color:var(--cblue);}


nav#mainmenu{float:right;padding-right:3%;}

#topinner, #ctop2inner, #cbottom1inner, #cbottom2inner, #cbottom3inner, #cbottom4inner, #bottom1inner, #bottom2inner, #bottom3inner, #bottom4inner, #footerinner{width:92%; max-width:var(--boxwidth); margin:auto;padding:60px 0;}
#bottom1inner:after, #bottom4inner:after{display:table;content:'';clear:both;}
#contentinner{width:100%; max-width:var(--maxwidth); margin:auto;}

body.home #cbottom1inner{max-width:var(--smallwidth);}

#news{ color:#ffffff;padding:90px 0;background-image:linear-gradient(90deg, var(--cblue) 0%, var(--cgreen) 100%);  scroll-margin-top: 60px;}
#newsinner{width:90%; max-width:var(--smallwidth); margin:auto;background-color:#ffffff;color:var(--ctext);}
#news h2 .light{font-size:20px;}

#bottom1wrap{ color:var(--ctext);padding:40px 30px;/*background-image:linear-gradient(90deg, var(--cgreen) 0%, var(--cblue) 100%);*/}

#bottom4wrap{ color:#ffffff;padding:40px 0 10px 0;background-image:linear-gradient(90deg, var(--cblue) 0%, var(--cgreen) 100%);}
#bottom4wrap h2{color:#ffffff;font-size:24px;}
#bottom4wrap a{color:#ffffff;}
#bottom4wrap h3{color:var(--ctext);}

#footerwrap{background-color:var(--cdark);color:#ffffff;}
#footerwrap a{color:#ffffff;}

#footerwrap ul{margin:0;padding:0; list-style:none;}
#footerwrap ul li{margin:0;padding:8px 0;}

#footer1{padding-bottom:50px;}
#footer2{font-size:12px;}

totop{display:grid;text-align:center;align-items:center;width:40px;height:40px;border-radius:50%;background-color:rgba(255,255,255,0.8);color:var(--cblue);position:fixed;bottom:40px;right:1.5%;z-index:20;}
totop a:before{content: '\e660';font-family: 'themify';position: relative;text-align: center;font-size:24px;display:block;color:var(--cblue);}
totop .visually-hidden{display:none;}

/* Extrafelder */
ul.fields-container{margin:0;padding:0;list-style:none;}
ul.fields-container li{margin:0;padding:0;}
span.field-label, span.field-value {display:table-cell;}
span.field-label{min-width:140px;padding-right:10px;}
ul.fields-container li table{padding-bottom:20px;}

.items-leading, .item-page-all{width:90%;max-width:var(--contentwidth);margin:auto;padding-bottom:60px;}
#titlewrap{max-width:var(--contentwidth);margin:auto;padding:60px 0 30px 0;}
.item-page-all .itemtxt{margin-top:30px;}
body.home .item-page-all{width:100%;max-width:100%;padding:0;}
body.home .item-page-all .itemtxt{margin-top:0px;}

.itemimg{position:relative;}
.itemimg .wasserlogo{position:absolute;right:6px;bottom:2px;z-index:2;}


body.home #contentinner .itemgrid .itemimg{background-image:linear-gradient(90deg, #00ac92 0%,#00ac92 50%, #47b27a 50%, #47b27a 100%);}
body.home .itemgrid .itemimg figure{max-width:var(--fullhdwidth);margin:auto;}
.fulltext{max-width:var(--boxwidth);margin:auto;}

body.home .com-content-article__body{ color:#ffffff;padding:60px 4% 20px 4%;background-image:linear-gradient(90deg, var(--cblue) 0%, var(--cgreen) 100%);}
body.home .com-content-article__body h1, body.home .com-content-article__body h2, body.home .com-content-article__body h3{color:#ffffff;}
body.home .com-content-article__body p{padding-bottom:30px;}

body.home .com-content-article__body .wf-columns-stack-large, body.home .com-content-article__body .wf-columns-stack-medium, body.home .com-content-article__body .wf-columns-stack-small,body.home .com-content-article__body .wf-columns-stack-xlarge{display:grid;grid-gap: 1em 10%;grid-auto-flow: row; grid-template-columns: 1fr;align-items:start;}

.faktengrid .hgimgleft{height: 300px;background-image:url('../images/osnabrueck.jpg');background-repeat:no-repeat;background-size:cover;  background-position: center center;}
.faktengrid .hgimgright{height: 300px;background-image:url('../images/solarlux.jpg');background-repeat:no-repeat;background-size:cover;  background-position: center center;}
.faktengrid .fields-container{padding:40px 30px;}
.faktengrid span.field-entry .h3{display:block;padding-bottom:4px;margin-bottom:4px;border-bottom:solid 1px var(--cline);}
.faktengrid ul.fields-container li{padding-bottom:10px;}
.faktengrid ul.fields-container li table td:first-child{padding-right:4px;}

li.logos ul{display:grid; grid-gap: 20px ;grid-auto-flow: row; grid-template-columns: 1fr 1fr; margin: 0 0 1em; align-items:center;}

.moduletable.tbl table{border-collapse:collapse;margin-top:10px;margin-bottom:30px;width:100%;}
.moduletable.tbl table td{padding:6px 6px 6px 0;border-bottom:solid 1px var(--cline); }
.moduletable.lastright.tbl table td:last-child{text-align:right; }

.moduletable.zitat{font-weight:600;font-size:18px;text-align:center;}
.moduletable.leftside, .moduletable.rightside{text-align:center;}

.moduletable.bgwhite{background-color:#ffffff;color:var(--ctext);}
.moduletable.bgwhite a{color:#ffffff;color:var(--clink)!important;}
.moduletable.bgwhite p:last-child{padding-bottom:0;}
.moduletable.bgwhite > div{padding:16px;}

#footer2 .moduletable.bgwhite{border-radius:10px;}


.columns-2 {grid-gap: 2em; display: grid; grid-auto-flow: row; grid-template-columns: 1fr ; margin: 0 0 4em; }

.columns-3 {grid-gap: 2em; display: grid; grid-auto-flow: row; grid-template-columns: 1fr 1fr; margin: 0 0 1em; }
.columns-3 .blog-item {display: flex; flex-direction: column;margin-bottom:0;}
.columns-3 .item-block{margin-bottom:0;}

li.projekt{position:relative;}
li.projekt .probg{background-image:linear-gradient(180deg, var(--cgreen) 0%, var(--cblue) 100%);padding-left:50px;}
li.projekt .protxt{background-color:#ffffff;padding:16px;font-size:15px;-webkit-hyphens: auto;  -ms-hyphens: auto;     hyphens: auto; }
li.projekt .protxt h3{color:var(--ctext);}
li.projekt .wasserlogo{position:absolute;right:0;bottom:10px;}


.aspitemgrid{margin-bottom:50px;}
.aspitemgrid .itemimg img{border-radius:50%;width:100%;max-width:200px;}
.aspitemgrid .itemtxt p:last-child{padding:0;}


/* Pagination */
.pagination > li > a, .pagination > li > span { line-height: 1.4; color:#4c7b1c!important;}
.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus { z-index: 2; color: #fff!important; cursor: default; background-color: #4c7b1c!important; border-color: #4c7b1c!important;}


/*Convert Forms */
.convertforms.cf-success .cf-response { background-color: var(--cdarkblue)!important; display: block;}
div#cf_1{background:none!important;font-family: 'Plus Jakarta Sans', sans-serif!important;margin:0;padding:0;}
.convertforms .cf-content-wrap, .convertforms .cf-form-wrap{padding:0!important;}

/* Downloads */
a.download{margin:0 0 0 16px;padding:0 0 10px 0;display:block;position:relative;}
a.download:before{content: '\e632';font-family: 'themify';position: absolute;text-align: center;font-size:12px;font-weight:400;left:-16px;top:2px;}
a.download span.dlfile{hyphens: auto;hyphenate-limit-chars: auto 6;hyphenate-limit-lines: 6;-webkit-hyphens: auto;-webkit-hyphenate-limit-chars: auto 3;
-webkit-hyphenate-limit-lines: 4;-ms-hyphens: auto;-ms-hyphenate-limit-chars: auto 3;-ms-hyphenate-limit-lines: 4;}
a.download span.dltitle + span {display:none;}
a.download span.dltitle + span.dlfile {display:block;}

.mobilemenuck-bar-title{display:none!important;}
.mobilemenuck-bar-button{position:relative!important;margin-bottom:0px!important;}

/* Cookie-Button */
button.cooktext{border:none;background:none;padding:0;font-size:20px;font-family: 'Cabin', sans-serif;color:#ffffff;cursor: pointer;}


@media (min-width: 500px) {
	li.logos ul{grid-template-columns: 1fr 1fr 1fr; }
	.columns-2 {grid-gap: 2em; display: grid; grid-auto-flow: row; grid-template-columns: 1fr 1fr; margin: 0 0 4em; }
}


@media (min-width: 768px) {
	#headinner{grid-gap: 1em 2%; display: grid; grid-auto-flow: row; grid-template-columns: 200px 1fr 60px;}
	#headinner #slogan {order:0; grid-column: 2 /3;}

	li.logos ul{grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; }

	li.projekt .probg{padding-left:150px;}
	li.projekt .protxt{position:absolute;background-color:#ffffff;top:10px;left:10px;bottom:10px;width:200px;z-index:10;padding:16px;font-size:15px;}


	.aspitemgrid{grid-gap: 1em 4%; display: grid; grid-auto-flow: row; grid-template-columns: 140px  150px  1fr;align-items:center;margin-bottom:50px;}

	#footer2 .itemgrid{grid-gap: 1em 4%; display: grid; grid-auto-flow: row; grid-template-columns: 1fr  2fr;align-items:center;margin:10px 0px 0 0;}


}

@media (min-width: 960px) {
	li.projekt .probg{padding-left:130px;}
	li.projekt .protxt{width:70%;z-index:10;padding:10px;font-size:15px;}
}

@media (min-width: 992px) {
	#bottom1inner{  display: flex; align-items: center;}
}

@media (min-width: 1000px) {
	nav#mainmenu{position:relative;}
	nav#mainmenu ul{margin:0;padding:0;list-style-type:none; position:relative;text-align:left;}
	nav#mainmenu ul li {display:inline-block;padding:0 8px ; position: relative; float: left; list-style: none; line-height:20px;}
    nav#mainmenu ul li{line-height:20px;padding-left:20px;position:relative;}
    nav#mainmenu ul li a {padding-bottom:4px;color:var(--clink);display: block;}
    nav#mainmenu ul li.active a {border-bottom:solid 0px ;color:var(--clinkactiv);}
    nav#mainmenu ul li.active ul li a{border:none;color:var(--clink)}
    nav#mainmenu ul li ul li.active a {color:var(--clinkactiv);}
    nav#mainmenu ul li ul li.active ul li a{color:var(--clink)}
    nav#mainmenu ul li ul li ul li.active a {color:var(--clinkactiv);}

	nav#mainmenu ul li:first-child {}
	nav#mainmenu ul li:last-child {border:none;}
	nav#mainmenu ul li:hover {}

	nav#mainmenu ul li:hover > ul,  nav#mainmenu ul li:focus > ul{position:absolute; top: 100%; left: 0px; padding-top:6px;z-index:90;background-color:#fff;opacity:0.95;}
    nav#mainmenu ul li:not(.focus):not(:hover) > ul {position: absolute;  left: -999em !important;   opacity: 0 !important;}
    nav#mainmenu ul li.js-keyboardFocus.isActive > ul{position:absolute; top: 100%; left: 0px !important; padding-top:6px;z-index:90;background-color:#fff;opacity:0.95 !important;}

	nav#mainmenu ul ul li { float: none; width: 220px;}
	nav#mainmenu ul li ul li{padding:8px;text-transform:none;border-bottom:solid 1px #423e3f;}

	nav#mainmenu ul ul li a { padding: 6px 6px 6px 0;}
	nav#mainmenu ul ul li {border:none;}

	/*Top 3. Ebene */
	nav#mainmenu ul li:hover ul li ul, nav#mainmenu ul li:focus ul li ul{display:none;}

	body.home .com-content-article__body .wf-columns-stack-large, body.home .com-content-article__body .wf-columns-stack-medium, body.home .com-content-article__body .wf-columns-stack-small,body.home .com-content-article__body .wf-columns-stack-xlarge{display:grid;grid-gap: 1em 10%;grid-auto-flow: row; grid-template-columns: 3fr 2fr;align-items:start;}

	#slogan h1 {font-size:26px;}

	.aspitemgrid{grid-gap: 1em 4%; display: grid; grid-auto-flow: row; grid-template-columns: 140px  180px 1fr;}

	#news .itemgrid{grid-gap: 1em 4%; display: grid; grid-auto-flow: row; grid-template-columns: 1fr 1fr;align-items:center;}


}


@media (min-width: 1024px) {
	li.projekt .protxt{width:52%;z-index:10;padding:16px;font-size:15px;}
}

@media (min-width: 1100px) {
	#slogan h1 span.light{display:inline;}
}

@media (min-width: 1200px) {
	header{position:fixed;height:90px;width:100%;z-index:20; }
	#mainwrap{padding-top:90px;}
	#slogan h1 {font-size:30px;}
	.moduletable.leftside .itemgrid{display: grid; grid-gap: 1em 30px; grid-auto-flow: row; grid-template-columns: 1fr 150px;align-items:center;margin-right:10%;}
	.moduletable.rightside .itemgrid{display: grid; grid-gap: 1em 30px; grid-auto-flow: row; grid-template-columns: 150px 1fr;align-items:center;margin-left:10%;}
	.moduletable.leftside .itemgrid .itemimg{order:2;}
	.moduletable.leftside .itemgrid .itemtxt{text-align:right;}
	.moduletable.rightside .itemgrid .itemtxt{text-align:left;}
	.faktengrid{display:grid;grid-gap: 1em 0%;grid-auto-flow: row; grid-template-columns: 1fr 2fr 1fr;align-items:center;}
	.faktengrid .hgimgleft{height: 100%;background-image:url('../images/osnabrueck_big.jpg');}
	.faktengrid .hgimgright{height: 100%;background-image:url('../images/solarlux_big.jpg');}

	li.projekt .probg{padding-left:150px;}
	li.projekt .protxt{width:200px;z-index:10;padding:16px;font-size:15px;}
	li.logos ul{grid-gap: 40px ;}


	#news h2 {font-size:36px;}
	#news h2 .light{font-size:24px;}
	#bottom1inner, #bottom2inner, #bottom3inner, #bottom4inner, #footerinner{padding:90px 0;}

	#bottom4inner{display:grid;grid-gap: 1em 4%;grid-auto-flow: row; grid-template-columns: 8fr 4fr ;align-items:end;}
	#bottom4inner .moduletable.bgwhite{margin-bottom:60px;}

	#footer1{padding-bottom:0;}
	#footerwrap #footerinner{grid-gap: 1em 4%; display: grid; grid-auto-flow: row; grid-template-columns: 1fr 5fr ;align-items:center;}

}

@media (min-width: 1400px) {
	#slogan h1 {font-size:32px;}
	.faktengrid ul.fields-container { columns: 2;  -webkit-columns: 2;  -moz-columns: 2;   gap: 20px;  }
	#footerwrap #footerinner{grid-template-columns: 1fr 3fr ;align-items:center;}
	#button{top: 60px; left: auto; right: 12%;}

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

	li.projekt .probg{padding-left:150px;}
	li.projekt .protxt{width:40%;}

	.moduletable.lefttab{margin-left:10%;}
	#news{padding:180px 0;}
}

@media (min-width: 1600px) {
	#slogan h1 {font-size:40px;}
	#button{ top: 60px; left: auto; right: 10%;}

}


@media (min-width: 1800px) {
	li.projekt .probg{padding-left:150px;}
	li.projekt .protxt{position:absolute;background-color:#ffffff;top:10px;left:10px;bottom:10px;width:200px;z-index:10;padding:16px;font-size:15px;}
	li.logos ul{grid-gap: 60px ;}
	#footerwrap #footerinner{grid-template-columns: 1fr 2fr ;align-items:center;}
	#button{width:200px;height:200px;font-size:20px; top: 60px; left: auto; right: 14%;}
}

@media (min-width: 2000px) {
	#button{width:200px;height:200px;font-size:20px; top: 60px; left: auto; right: 20%;}
	#news{padding:240px 0;}
}

@media (max-width: 1199px) {
	#bottom4inner .col-md-8, #bottom4inner .col-md-4{width:100%;display:block;float:none;}
}

@media (max-width: 999px) {
	#newsinner .itemtxt{padding:30px 6%;}

}

@media (max-width: 449px) {
	#logo img{max-width:160px;width:100%;}
}


