* {
	margin: 0;
	padding: 0;
	border: 0;
	box-sizing: content-box;
	scroll-behavior: smooth !important;
}
html {height:101%;font-size:16px;}
body { margin:0px; padding:0px; font-family: 'Poppins'; font-size:1rem; color:#000000; background-color:#FFFFFF; text-align:center; height:100%; overflow-y:scroll; }
img { border:0px; width:100%; height:auto;}
video { width: 100%; height: auto;}
a { text-decoration:none; }
a.btn{ display:inline-block;font-size: 0.9rem; background-color: #3AAEEF; color: #FFFFFF; padding: 10px 20px 10px 20px; text-transform: uppercase; }
p { font-size: 1rem; margin: 0px auto 20px auto; max-width: 95%;}
ul { font-size: 1rem; margin: 0px 0px 20px 0px;}
h1 { font-size: 1.5rem; margin: 0px auto 30px auto; max-width: 95%; }
h2 { font-size: 1.2rem; margin: 0px auto 30px auto; max-width: 95%; }
h2.bborder { background-image:url('../images/borderh2.png'); background-position:bottom center;background-repeat:no-repeat; line-height: 2.5; font-weight: bold; }
h3 { font-size: 1.1rem; margin: 0px auto 20px auto; max-width: 95%; }
i strong{ display: none; }
em strong{ display: none; }
.visually-hidden { display: none; }
.anchor b, .anchor strong{ display: none; }
#kontakt section{ position:relative; } 
#claas, #klincke { position:absolute; top: -70px; } 
header { position:fixed; width: 100%; height: 50px; text-align: right; background-color: #FFFFFF; box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19); z-index: 200;}

header div{ display:inline-block; padding: 0% 3% 0% 3%; width:auto; }
header div div{  width:auto; padding:0px 0px 0px 0px;}
#logo {position:absolute; top:15px; left:3%; max-width: 100px; z-index: 100; }
#search label{ position: relative; width:20px; margin-right: 20px; margin-bottom:-5px; }
#search form{ display: none; position: absolute; top: 70px; right: 7%; background-color: #FFFFFF; border: 1px solid #CCCCCC; padding: 20px;  z-index: 100; }
#search form input{ border: 1px solid #CCCCCC; font-size: 1rem;padding: 10px; }
#switch-lang { position: relative; font-size: 0px; height: 16px; color: #000000; height: 16px; text-align: right; margin: 10px 50px 0px 0px; }
#switch-lang li{ display: inline-block; border-right: 2px solid; width: 40px; padding: 0px 0px 0px 0px; margin: 0px 0px 0px 0px; font-size: 1rem; line-height: 16px; text-align: center; }
#switch-lang li:last-child{ border-right: 0px;}
#switch-lang li.lang-active{ background-color:transparent;  }
#switch-lang li a{ padding: 0px 0px 0px 0px; margin: 0px 0px 0px 0px; color: #000000; }
#switch-lang li.lang-active a{ color: #3AAEEF; }

#showmenu {display:none; -webkit-appearance:none;}
#showsearch {display:none; -webkit-appearance:none;}
.showmenu{ position:absolute; top:12px; right:15px;height:30px; width:30px; text-decoration:none;background-image:url('../images/background_resmenu.png');background-position:top right;background-repeat:no-repeat;display:block;z-index:200; cursor:pointer; } 
.showsearch{ cursor:pointer; } 
#showmenu:checked ~ #mainmenu {display:block; }
#showsearch:checked ~ #search form {display:block; }
#mainmenu { display:none; position: fixed; top: 0px; left: 0px; width: 100%; height: 100%; background-color: #FFFFFF; text-align: center; padding: 60px 0px 60px 0px; z-index: 20; }
#mainmenu ul{ position: relative; height:90%; overflow: auto; }
#mainmenu li{ margin: 10px 0px 10px 0px; }
#mainmenu li a { color:#000000;  font-size: 1.3rem; }
#mainmenu li li a { font-size: 1.1rem; }

#spacer { margin-top: 50px; }
#illu { position: fixed; font-size: 0; top: 50px; left: 0px; width: 100%; }
.srcillu { display: none;  }
.srcillu:first-child { display: inline; }
#slider { height: 100%; width: 100%; }
#slider div{ position: absolute; top:0px; left: 0px; height: 100%; width: 100%; background-repeat: no-repeat; background-size: cover; background-position: center center; }
#illutext { position: absolute; top: 30%; left: 7%;  color: #FFFFFF; text-align: left; max-width: 90%;  }
#illutext p{ font-size: 1.9rem; font-weight: bold; line-height: 1; margin: 0px 0px 30px 0px; white-space:nowrap; }
#illutext span, #illutext span{ font-size: 0.7rem; line-height: 1; white-space:nowrap; font-weight: normal; }
#illutext a{ display:inline-block;font-size: 0.9rem; background-color: #3AAEEF; color: #FFFFFF; padding: 10px 20px 10px 20px; text-transform: uppercase; }
#illu .dots { position:absolute; bottom:6%; width: 100%; text-align: center;  font-size: 2rem; }
#illu .dots div{ display:inline-block; width:12px; height:12px; margin: 0px 5px 0px 5px; cursor: pointer; background-image:url('../images/sl-off.png');background-repeat: no-repeat; background-size: cover; background-position: center center; }
#illu .dots div.don{ background-image:url('../images/sl-on.png'); }

#content { position: relative; background-color: #FFFFFF; }
.blog-item .item-content { padding: 50px 50px 50px 50px; }
.blog-item:nth-child(even) { background-color: #E2E7EA; }
.item-page { }
.item-page a{ color:#3AAEEF; }
.item-page a.btn{ display:inline-block;font-size: 0.9rem; background-color: #3AAEEF; color: #FFFFFF; padding: 10px 20px 10px 20px; text-transform: uppercase; font-weight: normal; }
.item-page section ul{ list-style-type: none; text-align: left; width:80%; }
.item-page section ul li{ font-weight: bold; background-image:url('../images/bullet.png'); background-position:center left; background-repeat:no-repeat; background-size: 30px auto; padding: 10px 10px 10px 40px; }
.item-page section { padding: 50px 0px 50px 0px; }
.item-pagehome section { padding: 50px 0px 50px 0px; }
.item-page section section  { padding: 0px; }
.item-pagehome section section  { padding: 0px; }
.item-page section section.col5347 { font-size: 0; max-width: 90%; margin: 30px auto 30px auto; }
.item-page section section.col5347 section{ display: inline-block; width: 100%; text-align: left; vertical-align: top; margin: 0px 0px 30px 0px; }

.item-page section section.col4753 { font-size: 0; max-width: 90%; margin: 30px auto 30px auto;}
.item-page section section.col4753 section{ display: inline-block; width: 100%; text-align: left; vertical-align: top; margin: 0px 0px 30px 0px; }

.item-page section section.col5050 { font-size: 0; max-width: 90%; margin: 30px auto 30px auto;text-align: left; }
.item-page section section.col5050 section{ display: inline-block; width: 100%; padding: 0% 0% 0% 0%;  vertical-align: top; }
.item-page section section.col5050 section h3{ font-size: 1.5rem; }
.item-page section section.col5050 section ul{ width: 100%; }
.item-page section section.col5050 section li{ font-weight: bold; background-image:url('../images/pdf.png'); background-position:center left; background-repeat:no-repeat; background-size: 20px auto; padding: 10px 10px 10px 40px; }
.item-page section section.col5050 section li.ivideo{ background-image:url('../images/video.png'); }
.item-page section section.col4040 { font-size: 0; width: 90%; max-width: 1040px; margin: 30px auto 30px auto; text-align: left;}
.item-page section section.col4040 section{ display: inline-block; width: 100%;  vertical-align: top;}
.item-page section section.col4040 section ul { }
.item-page section section.col4040 section ul li{ padding: 10px 10px 10px 40px; width:90%;}
.item-page section section.col303030 { font-size: 0; width: 90%; max-width: 1040px; margin: 30px auto 30px auto; text-align: left; }
.item-page section section.col303030 section{ display: inline-block; width: 100%; max-width: 330px; text-align: left; }



.item-page section.sponsoring { padding: 0px 0px 50px 0px; }
.item-page section.sponsoring section section { font-size: 0; width: 90%; max-width: 1040px; margin: 30px auto 30px auto; text-align: center; }
.item-page section.sponsoring section section section{ display: inline-block; width: 100%; max-width: 330px; text-align: center; vertical-align: top; margin: 0px 0px 20px 0px; }
.item-page section.sponsoring section section section h3{ margin: 0px 0px 20px 0px; width: 90%; }
.item-page section.sponsoring section section section p{ margin: 0px 0px 20px 0px; width: 90%; }
.item-page section.sponsoring section section section img{ width: 60%; }

#kontakt h3{ color: #3AAEEF; border-top: 1px solid #CCCCCC; margin: 0% auto 0% auto; padding: 40px 0px 20px 0px; max-width: 1040px; text-align: left; }
#kontakt .fa-solid { color: #3AAEEF; margin-right: 5px; }
#kontakt a { color: #000000; font-weight: normal; }

.item-page section.bimage { background-repeat: no-repeat; background-size: cover; background-position: center center; color:#FFFFFF; }
.item-page section.image { padding: 0px; font-size: 0; }
.item-page section.grey { background-color: #E2E7EA; }
.item-page section.blue { background-color: #3AAEEF; color: #FFFFFF;  width: 90%; max-width: 1040px; margin: 30px auto 30px auto; }
.item-page section.blue p{ padding: 30px; text-align: left; }

.item-page section section.w80 { width: 90%; max-width: 1040px; margin: 30px auto 30px auto; text-align: left; }

.item-image img{  max-width: 600px; }
section.col6535 { font-size: 0; }
section.col6535 section { display: inline-block; width:100%; font-size: 1rem; vertical-align: top; }
section.col6535 section:first-child { width:100%; margin-bottom: 30px; }
section.col6535 section section:first-child, section.col6535 section section { width:100%; }

section.col353035 { font-size: 0; margin-bottom: 40px; }
section.col353035 section { display: inline-block; width:35%; font-size: 1rem; vertical-align: top;  }
section.col353035 section:nth-child(2) { width:28%; margin: 0 1% 0 1%; }
section.col353035 section img{ object-fit: cover; height: 300px; }

#stellenangebote section{ max-width: 90%; margin: 30px auto 30px auto; }

.tcontent { padding: 0px; text-align: left; width: 90%; }

.tcontent h3{ color:#3AAEEF; cursor: pointer; background-position:right 30px; background-repeat:no-repeat; background-image:url('../images/minus.png'); background-size: 50px auto; padding: 20px; width:90%; }
.tcontent h3.tplus{ background-image:url('../images/plus.png'); color: #000000; }

.tcontent p{ max-height:1000px; padding: 20px; width:90%; transition: all 300ms ease 0ms; }
.tcontent ul{ max-height:1000px; width:90%; transition: all 300ms ease 0ms; }
.tcontent a{ color:#3AAEEF; float: none; }

.tcontent div{ box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 60px 0 rgba(0, 0, 0, 0.19); transition: all 300ms ease 0ms; }
.tcontent div.tclose{ border-bottom: 1px solid #000000; background-color: transparent; box-shadow: none; }
.tcontent div.tclose p{ height:0px; overflow: hidden; margin:0px; padding:0px; }
.tcontent div.tclose ul{ height:0px; overflow: hidden; margin:0px; }
.tcontent span.clear{ display: block;clear:both; font-size:0;}


.newsflash { position:relative;font-size: 0; max-width: 90%; margin: 30px auto 30px auto; }
.newsflash h4{ margin:15px 10px 15px 10px; white-space: normal; }
.newsflash p{ margin:10px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; white-space: normal; hyphens: auto; overflow: hidden; }
.newsflash-image { font-size: 0; }
.newsflash-image img{ object-fit: cover; height: 220px; }
.newsflash div div { display: none; width: 100%; margin:10px 0px 10px 0px; background-color: #FFFFFF; overflow: hidden; }
.newsflash div div div { display: inline-block; width: 100%; margin:0%; padding:0; }
.newsflash div div div div{ width: 100%; vertical-align:top; text-align: left; }

.ncmd { display: inline-block; position: absolute; top: 45%; width: 20px; font-size: 2rem; cursor: pointer; background-color: #000000; color: #FFFFFF; height: 10%; background-size: 100% auto; background-position:center center;background-repeat:no-repeat; }
.ncmd span{ display:none; }
#nleft { left: -40px;  background-image:url('../images/nleft.png');  }
#nright { right: -40px; background-image:url('../images/nright.png'); }

.container_news { font-size: 0;}
.container_news div{  display: inline-block; width: 50%; font-size: 1rem; }


footer { position: relative; width: 100%; background-color: #292929; color: #FFFFFF; padding-top: 20px; }
footer a{ color: #FFFFFF; }
footer div{ font-size: 0; margin: 0% 7% 0% 7%; }
footer div div{ display:inline-block; width: 100%; font-size: 1rem; margin: 0%; vertical-align: top; }
footer img{ width: 30px; margin: 10px; }

#imprint { }
#imprint li{ display: inline-block; margin: 0px 10px 0px 10px;}
#arrtop { position: fixed; right: 10px; bottom:20px; display:none; width: 30px;  }


@media all and (min-width: 600px){
	.item-page section section.col4040 section{ display: inline-block; width: 50%;  vertical-align: top;}
	.newsflash div div div div{ width: 50%; }
}


@media all and (min-width: 800px){
	.newsflash div div div div{ width: 50%; }
	
}

@media all and (min-width: 900px){

	

	.item-page section section.col5347 section{ width: 47%;   }
	.item-page section section.col5347 section:first-child{ width: 47%; padding-right: 6%;}

	.item-page section section.col4753 section{ width: 47%; }
	.item-page section section.col4753 section:last-child{ width: 47%; padding-left: 6%; }
	

	.item-page section section.col5050 section{ display: inline-block; width: 48%; padding: 0% 0% 0% 2%;  vertical-align: top; }
	.item-page section section.col5050 section h3{ font-size: 1.5rem; }
	
	section.col6535 section { display: inline-block; width:35%; font-size: 1rem; vertical-align: top; }
	section.col6535 section:first-child { width:65%; margin-bottom: 0px; }

   .item-page section section.col303030 section{ width: 33.33%; }
   .item-page section.sponsoring section section section{ width: 33.33%;  }

}

@media all and (min-width: 1024px){
	p { font-size: 1rem; margin: 0px auto 20px auto; max-width: 90%;}
	h1 { font-size: 2.6rem; margin: 0px auto 30px auto; max-width: 90%;}
	h2 { font-size: 2rem; margin: 0px auto 30px auto; max-width: 90%; }
	h2.bborder { line-height: 2.5; }
	h3 { font-size: 1.2rem; margin: 0px auto 20px auto;max-width: 90%; }
	

	header { height: 70px; }
	header div{ height:70px; }
	header div div{ height:auto; vertical-align: middle; }
	
	#spacer { margin-top: 70px; }

	#illu { top: 70px;}
	#search label{  width:20px; margin-right: 20px; margin-bottom:-5px;  font-size: 1.5rem; }
	#search form{ display: none; position: absolute; top: 70px; right: 7%; background-color: #FFFFFF; border: 1px solid #CCCCCC; padding: 20px;  z-index: 100; }
	#search form input{ border: 1px solid #CCCCCC; font-size: 1rem;padding: 10px; }
	#switch-lang { font-size: 0px; height: 16px; color: #000000; height: 16px; text-align: right; margin: -8px 0px 0px 0px;  }
	
	#switch-lang li{ display: inline-block; border-right: 2px solid; width: 40px; padding: 0px 0px 0px 0px; margin: 0px 0px 0px 0px; font-size: 1rem; line-height: 16px; text-align: center;}
	#switch-lang li:last-child{ border-right: 0px;}
	#switch-lang li.lang-active{ background-color:transparent;  }
	#switch-lang li a{ padding: 0px 0px 0px 0px; margin: 0px 0px 0px 0px; color: #000000; }
	#switch-lang li.lang-active a{ color: #3AAEEF; }
	
	.showmenu{ display:none; } 

	#mainmenu { display:block; position: relative; top: auto; left: auto; width: auto; background-color: transparent; padding: 0px 0px 0px 0px; margin-right: 15px; height:auto; }
	#mainmenu ul{margin: 0px 0px 0px 0px; height: 70px; overflow: visible;}
	#mainmenu li{ position:relative; margin: 0px 20px 0px 0px; display:inline-block; }
	#mainmenu li a { color:#000000;  font-size: 1rem; line-height: 70px; }
	#mainmenu li.active a { color:#3AAEEF; }
	#mainmenu ul ul { display: none; position: absolute; top: 70px; left: -20px;}
	#mainmenu ul li:hover ul, #mainmenu ul li:active ul{ display:block; }
	#mainmenu li li{ background-color: #000000; border-bottom: 1px solid #3AAEEF; width:100%; text-align: left; opacity: 0.6}
	#mainmenu li li a{ color:#FFFFFF; line-height: 45px; padding: 0px 20px 0px 20px; font-size: 1rem; }
	#mainmenu li.active li a{ color:#FFFFFF; }
	#spacer.home { margin-top: 0px; }
	#illu.home { top: 0px; }
	header.home {  background-color: transparent; box-shadow: none; }
	header.home #switch-lang { color: #FFFFFF; }
	header.home #switch-lang a{ color: #FFFFFF; }
	header.home #switch-lang li.lang-active a{ color: #3AAEEF; }
	header.home #mainmenu li a { color:#FFFFFF; }
	header.home #mainmenu li.active a { color:#3AAEEF; }
	header.home #search label { color:#FFFFFF; }

	
	#illutext { top: 30%; left: 3%; }
	#illutext p{ font-size: 4rem; margin: 0px 0px 30px 0px; }
	#illutext span{ font-size: 1.5rem; }
	#illutext a{ font-size: 0.9rem; }
	
	.blog-item .item-content { padding: 50px 3% 50px 3%; }
	.blog-item .item-content h1.blog-item .item-content{ max-width: 900px; font-size: 2.6rem; margin: 0px auto 20px auto; }
	.item-page h1{ max-width: 900px; font-size: 2rem; margin: 0px auto 20px auto; }
	.blog-item .item-content p, .item-page p{ max-width: 900px; margin: 0px auto 20px auto; }
	.blog-item .item-content ul, .item-page ul{ max-width: 900px; margin: 0px auto 20px auto; }
	.blog-item .item-content .newsflash h4{ margin:15px 20px 15px 20px; }
	.blog-item .item-content .newsflash p{ margin:10px 20px 20px 20px; }
	
	.newsflash { max-width: 900px; margin: 30px auto 30px auto; }
	
	
	

/*
.newsflash { position:relative;font-size: 0; max-width: 90%; margin: 30px auto 30px auto; }
.newsflash h4{ margin:15px 10px 15px 10px; }
.newsflash p{ margin:10px; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
.newsflash-image { font-size: 0; }
.newsflash-image img{ object-fit: cover; height: 300px; }
.newsflash div div { display: none; width: 100%; margin:10px 0px 10px 0px; background-color: #FFFFFF; overflow: hidden; }
.newsflash div div div { display: inline-block; width: 100%; margin:0%; padding:0; }
.newsflash div div div div{ width: 100%; vertical-align:top; text-align: left; }


*/

	.newsflash-image img{  height: 300px; }
	.newsflash div div { width: 49%; margin:0% 0.5% 0% 0.5%; white-space: nowrap; }


	
	
	.ncmd { top: 40%; height: 20%; }
	#arrtop { position: fixed; right: 15px; bottom:20px; display:none; width: 40px;  }
	footer div div{ width: 33.33%; vertical-align: top; }
	footer img{ width: 30px; margin: 0px 10px 10px 10px; }
	footer .flft{  text-align: left; }
	footer .frgt{  text-align: right; }
}

.pdfthumbs { max-width: 1100px; margin: 0px auto 0px auto;}
.pdfthumbs div{ display: inline-block; width: 15%; }
.pdfthumbs div img{ width: 90%; border: 1px solid #2e2a2b; border: 1px solid #2e2a2b; }
	
.fimg img { max-width: 100px; float:left; margin: 0px 20px 10px 0px;}
	
@media all and (min-width: 1200px){
	h1 { font-size: 2.6rem; margin: 0px auto 30px auto; max-width: 1100px; }
	h2 { font-size: 2rem; margin: 0px auto 30px auto; max-width: 1100px; }
	
	header div{ padding: 0% 7% 0% 7%;  }

	
	#logo { top:15px; left:7%; max-width: 130px; }

	#mainmenu { margin-right: 50px; }


	#illutext p{ font-size: 5rem; }
	#illutext span{ font-size: 2rem; }

	
	.blog-item .item-content { padding: 50px 7% 50px 7%; }
	.blog-item .item-content h1.blog-item .item-content{ max-width: 1100px;  }
	.item-page h1{ max-width: 1100px; }
	.blog-item .item-content p, .item-page p{ max-width: 1100px;  }
	.blog-item .item-content h3, .item-page h3{ max-width: 1100px;  }
	.blog-item .item-content ul, .item-page ul{ max-width: 1100px; }
	
	.blog-item .item-content .newsflash h4{ margin:30px 20px 30px 20px; }
	.blog-item .item-content .newsflash p{ margin:10px 20px 20px 20px; }

	.newsflash { max-width: 900px; margin: 30px auto 30px auto; }

	
	
	.newsflash { position:relative;font-size: 0; max-width: 1100px;  }
	.newsflash-image img{ object-fit: cover; height: 340px; }

.item-page section section.col5347 { max-width: 1100px;  }


.item-page section section.col4753 { max-width: 1100px; }


.item-page section section.col5050 { max-width: 1100px; }

#arrtop { position: fixed; right: 20px; bottom:20px; display:none; width: 50px;  }
}

@media all and (min-width: 1300px){

}

@media all and (min-width: 1600px){
	
}

@media all and (min-width: 2200px){
	
}