@charset "utf-8";
/* CSS Document */

:root {
	--ptwgruen: #0b7d5d;
	--ptwgruenbg: #0b7d5d;		
	--hellgruen: #f2f8f5;
	--weißtext: #fff;
	--schwarztext: #000;
	--bgweiß: #ffff;

}	

[data-theme="daaark"] {
	--ptwgruen: #5c7d63;
	--ptwgruenbg: #2e4133;	
	--hellgruen: #2e4133;
	--weißtext: #fff;
	--schwarztext: #dce0df;
	--bgweiß: #212121;	
}

[data-theme="dark"] {
	--ptwgruen: #0b7d5d;
	--ptwgruenbg: #003d2e;	
	--hellgruen: #003d2e;
	--weißtext: #fff;
	--schwarztext: #dce0df;
	--bgweiß: #212121;	
}

/* The switch - the box around the slider */
.switch {
 font-size: 8px;
 position: relative;
 display: inline-block;
 width: 3.5em;
 height: 2em;


}

/* Hide default HTML checkbox */
.switch input {
 opacity: 0;
 width: 0;
 height: 0;
}

/* The slider */
.slider {
 position: absolute;
 cursor: pointer;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 background-color: #b2b2b2;
 transition: .4s;
 border-radius: 30px;
}

.slider:before {
 position: absolute;
 content: "";
 height: 1.4em;
 width: 1.4em;
 border-radius: 20px;
 left: 0.3em;
 bottom: 0.3em;
 background-color: white;
 transition: .4s;
 
}

input:checked + .slider {
 background-color: #0795d7;
}


input:checked + .slider:before {
 transform: translateX(1.5em);
}



body {
	margin:0px;
	font-family:'Open Sans', sans-serif;
	background-color:var(--bgweiß);
	color:var(--schwarztext);
}

header {
	background-color:var(--ptwgruenbg);
	color:var(--weißtext);
	padding-top:0.5%;
	padding-bottom:0.5%;
	
}
img {
	max-width:100%;
}

.clear {
	clear:both;
}
h1 {
	color:var(--ptwgruen);
	font-size: calc(1rem + 1.5vw);
}
h3 {
	color:var(--ptwgruen);
}

.black {
	color:var(--schwarztext);
}

.PTW {
	font-weight:800;
}

p {
	margin-top:0px;
	padding-top: 0px;
}

a:link, a:visited {
	text-decoration: underline;
	color: var(--ptwgruen);
}
#adresszeile {
	float:left;
}
#darkmodeswitch {
	float:right;
	margin-right:9%;
}

#footercontainer {
	color: white;
	text-decoration: none;

}
#footercontainer  a:link, #footercontainer a:visited {
	color: white;
	text-decoration: none;

}	
ul {
	list-style-type: square;
}
ul li::marker {
	color: var(--ptwgruen);
	font-size: 1.4em;
}

#adresszeile, .navcontainer, #bannercontainer, main, #footercontainer {
	margin-left:8%;
	margin-right:8%;
}

#logocontainer {
	float:left;
	padding-top:1%;
	padding-bottom:1%;	
}
#navigationblock {
	float:right;
	padding-top:2.5%;
	vertical-align: middle;
}


#bannercontainer {
	background-color:var(--hellgruen);
	background-image:url("../img/startseite_banner_01.webp");
	background-position:center;
	background-size:cover;
	padding-top:5%;
	padding-bottom:5%;

}
.bannerbild {
	z-index:1;
}
#bannertext {
	z-index:2;
	margin-top:3.5%;
	margin-left:9%	
}
.subheadline {
	font-weight:500;
	font-size:calc(1rem + 0.3vw);
}
#containerrahmen {
	margin-left:9%;
	margin-right:9%;	
	margin-top:5%;
}
#containerrahmen h3 {
	margin:0px;
}

.imgground_index {
	min-height: 200px;
}
.imgground {
	min-height: 350px;
}
.container1 {
	float:left;
	width:30.5%;
	margin-right:4%;	
}
.container2 {
	float:left;	
	width:30.5%;	
	margin-right:4%;	
}
.container3 {
	float:left;
	width:30.5%;	
}
.containerbild {
	float:left;
	margin-right:5%;
}

.buttonlink a:link, .buttonlink a:visited {
	text-decoration:none;
	color:var(--weißtext);
	background-color:var(--ptwgruen);
	padding-left:10px;
	padding-right:10px;
	padding-top:7px;
	padding-bottom:7px;
}
.buttonlink a:visited{
	color: var(--weißtext);
}

.textcontainer {
	margin-top:5%;
	padding-left:5%;
	padding-right:5%;
	text-align:center;
}

.container75l {
	width: 65%;
	float: left;
	margin-right: 2.5%;
}
.container25r {
	width: 30%;
	float: left;
	margin-left: 2.5%;
}
.container75r {
	width: 65%;
	float: left;
	margin-left: 2.5%;
}
.container25l {
	width: 30%;
	float: left;
	margin-right: 2.5%;
}
.container50l {
	width: 47.5%;
	float: left;
	margin-right: 2.5%;
}
.container50r {
	width: 47.5%;
	float: left;
	margin-left: 2.5%;
}




footer {
	background-color:var(--ptwgruenbg);
	margin-top:5%;
}
#footercontainer {
	color:var(--weißtext);
	padding-top:2%;
	padding-bottom:2%;	
}
/* Menü */

nav.navigation{
	margin-right:9%;
	width:100%;
	z-index:5;
}
ul.nav-menu li, ul.nav-menu li a{
	display: inline-block;
}
ul.nav-menu{
	padding-left:10px;
	list-style: none;
	margin:0px;
}
ul.nav-menu li a{
	margin-left: 10px;
	color:var(--textschwarz);
	text-decoration:none;
}
.aktiv {
	color: var(--ptwgruen) !important;
	font-weight: bold;
}
ul.nav-menu li a:hover{
	color:var(--ptwgruen);
}
.nav-toggle{
	display:none;
	position:absolute;
	right:9%;
	width:50px;
	height:50px;
	background-color:var(--weißtext);
	cursor:pointer;
}
span.icon-bar{
	position:absolute;
	right:12px;
	display:block;
	width:26px;
	height:2px;
	background-color:var(--ptwgruen);
	-webkit-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.icon-bar:nth-child(1){
  top:17px;
}
.icon-bar:nth-child(2){
  top:24px;
}
.icon-bar:nth-child(3){
  top:31px;
}
.nav-overlay{
	position:absolute;
	top:0px;
	right:0;
	bottom:0;
	left:0;
	background-color:rgba(0,0,0,0.5);
	z-index:1;
	opacity:0;
	visibility:hidden;
	-webkit-transition-duration: 0.3s;
	-o-transition-duration: 0.3s;
	transition-duration: 0.3s;
}
.nav-overlay.active{
	opacity:1;
	visibility:visible;
}

.hrlinie {
	color:var(--ptwgruen);
	border:2px solid var(--ptwgruen);
	margin-bottom: 30px;
	
}
.block {
	margin-top: 2%;
	margin-bottom: 2%;
	max-width: 250px;
}
.dlblock {
	margin-top: 2%;
	margin-bottom: 2%;
	max-width: 250px;
}	
.regnr {
	color: var(--ptwgruen);
	font-weight: bold;

}	
.downloadimg {
	border: 1px solid #D2D2D2;		

}


@media only screen and (max-width:812px){
#adresszeile {
	display:none;
}
#adresszeile, main, #footercontainer {
	margin-left:1%;
	margin-right:1%;
}
#bannercontainer {
	margin:0px;
}
.navcontainer img {
	margin-left:18%;
}

.container1, .container2, .container3 {
	float:none;
	width:100%;
	border-bottom:3px solid var(--ptwgruen);
}
	
	.container25r, .container50l, .container50r, .container75l, .container75r, .container25l {
		float: none;
		width: 100%;
		margin: 0px;
	}
.container2, .container3 {
	margin-top:15%;
}
.textcontainer {
	text-align:left;
}
	
nav.navigation {
		height:50px;
	}
	ul.nav-menu{
		position:absolute;
		top:10%;
		width:100%;
		height:0;
		padding:0;
		overflow:hidden;
	}
	ul.nav-menu.active{
		height:auto;
		z-index:4;
	}
	ul.nav-menu li{
		width:100%;
		margin:0px;
	}
	ul.nav-menu li a{
		margin-left:0px;
		width:100%;
		padding-top:15px;
		padding-bottom:10px;
		text-align:center;
		background-color:var(--ptwgruen);
		color:var(--weißtext);
		
	}
	ul.nav-menu li a:hover{
		background-color:var(--weißtext);
		color:var(--ptwgruen);
	}
	.nav-toggle{
		display:block;
	}
	#navigationblock {
		float:none;
	}
	.navcontainer {
	margin-left:0px;
	}
.textcontainer {
	padding-left:0px;
}
.aktiv {
	color: var(--weißtext) !important;
	font-weight: bold;
}	
.dlblock {
	margin-bottom: 20%;
}		
}

@media only screen and (min-width:812px) and (max-width:1238px){
	nav.navigation {
		height:50px;
	}
	ul.nav-menu{
		position:absolute;
		top:10%;
		width:100%;
		height:0;
		padding:0;
		overflow:hidden;
	}
	ul.nav-menu.active{
		height:auto;
		z-index:4;
	}
	ul.nav-menu li{
		width:100%;
		margin:0px;
	}
	ul.nav-menu li a{
		margin-left:0px;
		width:84%;
		padding-top:15px;
		padding-bottom:10px;
		text-align:center;
		background-color:var(--ptwgruen);
		color:var(--weißtext);
	}
	ul.nav-menu li a:hover{
		background-color:var(--weißtext);
		color:var(--ptwgruen);
	}
	.nav-toggle{
		display:block;
	}
	#navigationblock {
		float:none;
	}
.aktiv {
	color: var(--weißtext) !important;
	font-weight: bold;
}	
.dlblock {
	margin-bottom: 20%;
}		
}

/* Animations*/
       .fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  }
  @-webkit-keyframes fadeIn {
  0% {opacity: 0;}
  100% {opacity: 1;}
  }
  @keyframes fadeIn {
  0% {opacity: 0;}
  100% {opacity: 1;}
  } 