/**********************************************************************************
Farben einsetzen var(--farbe_dunkelblau);
**********************************************************************************/
:root {
  	--farbe_dunkelblau: #213a8f;
	--farbe_dunkelgelb: #ffd500;
	--farbe_hellblau: 	#e9eef4;
	--farbe_hellgelb: 	#fff0a6;
	--farbe_dunkelgelb: #f7d748;
	--farbe_grau: 		#c7c7c7;
	--farbe_hellgrau: 	#e1e1e1;
}

/*---------------------------------------------------------------------------------------
R E S E T S   A N D   B A S E   S E T T I N G S
----------------------------------------------------------------------------------------*/
html, body {
	height: 100%;
	}
body {
	margin:0;
	padding:0;
	font-size:17px;
	text-align:left;
	line-height: 150%;
	font-family: 'Public Sans', sans-serif;
	background: #fff url(../img/bg_site.png) repeat-x;
	background-size: auto 357px;
	color:#1a171b;
	}
body.kgv2025{
	background: #fff url(../img/bg_site_2025.png) repeat-x;
}
h1 {
	font-size: 36px;
	font-weight: normal;
	font-family: 'Bitter', sans-serif;
	color: var(--farbe_dunkelblau);
	margin-top: 42px;
	margin-bottom: 32px;
	line-height:120%;
	}
h1:first-of-type{
	margin-top: 0px;
}

h2, h2 a, h2 a:visited {
	margin-top: 36px;
	margin-bottom: 22px;
	font-size: 24px;
	font-family: 'Bitter', sans-serif;
	font-weight: normal;
    color: var(--farbe_dunkelblau);
	line-height:120%;
	}

#content h3 {
	font-size: 20px;
	font-weight: 600;
	margin-top: 25px;
	margin-bottom: 10px;
	color: var(--farbe_dunkelblau);
	}
#content h4 {
	font-size: 18px;
	font-weight: 600;
	margin-top: 25px;
	margin-bottom: 10px;
	color: var(--farbe_dunkelblau);
	}
a, a:visited {
	color: #003d8f;
	font-weight: bold;
	text-decoration:none;
}

a:hover {
	text-decoration:underline;
	}
* 	{
	margin:0;
	padding:0;
}
strong{
	font-weight: 600;	
}

.ce_text.bgvblau{
	background-color: #003d8f;
	color: #fff !important;
	display: block;
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 25px;
}
.bgvblau a{
	color: #fff !important;
}
.ce_text.bgvblau h1, .ce_text.bgvblau h2, .ce_text.bgvblau h3{
	color: #fff !important;
}
#content .bgvblau_block ul {
    list-style-image: url(../img/dot.png);
}
#content .bgvblau h1, #content .bgvblau h2, #content .bgvblau h3 {
    margin-top: 10px;
}
.bgvblau_block .ce_text h2:first-of-type{
	margin-top: 10px;
}
a.blauerbutton{
	color: #fff !important;
	background-color: #003d8f;
	display: inline-block;
	padding: 10px;
	margin-top: 20px;
	text-decoration: none !important;
	border: 1px solid #003d8f;
}
a.blauerbutton:hover{
	color: #003d8f !important;
	background-color: #fff;
}




/*---------------------------------------------------------------------------------------
H T M L   E l e m e n t s   i n   u s e d   s e q u e n c e
----------------------------------------------------------------------------------------*/
#wrapper {
	min-height: 900px;
	max-width: 1200px;
	width: 98%;
	text-align: left;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-left: 1%;
	padding-right: 1%;
}
#theme {
	float: left;
	width: 100%;
	height: 320px;
	background-position: left top !important;
	background-size: auto 100% !important;
	box-shadow: 2px 5px 5px #999;
	}
#theme.kgv2025 {
	float: left;
	width: 100%;
	height: 150px;
	height: 200px !important;
	box-shadow: none;
	margin-bottom: 110px;
	margin-top:19px;
	background-image: url(../img/header_2025.jpg);
	background-size: cover;
	}
#header_print {
	display: none;
	}
#header {
	margin-bottom: 70px;
	//box-shadow: 0px 5px 5px #000;
	}
#nav {
	margin-top: 340px;
	margin-bottom: 0px;
	clear: both;
	width: 900px;
	font-size: 19px;
	font-weight:bold;
	margin-left: 0px;
	font-family: 'Bitter', sans-serif;
	}
#nav.kgv2025 {
	margin-top: 210px !important;
	}
#left {
	width: 26%;
	padding-top: 12px;
	margin-bottom: 30px;
	}
#main{
	padding-left: 7%;
	width: 67%;
}
.kgvfullwidth #main{
	padding-left: 0%;
	width: 100%;
}
.nosubnav  #left {
	width: 0%;
	height: 20px;
	padding-top: 12px;
	}
.nosubnav  #main{
	padding-left: 0%;
	width: 100%;
}
@media only screen and (max-width: 1200px) {
	#wrapper{
		padding-left: 0%;
		padding-right: 0%;
		width: 100%;
	}
	#nav{
		width: 900px;
		margin-left: 20px;
	}
	#left {
		width: 24%;
		padding-left: 2%;
		}
	#main{
		width: 66%;
		padding-left: 2%;
		padding-right: 2%;
	}	
}
@media only screen and (max-width: 900px) {
	#nav{
		font-size: 18px;
	}	
}
@media screen and (min-width: 768px) {	
	#menumobilebutton{
		display: none;
	}
}
@media screen and (max-width: 768px) {
	#header {
   		margin-bottom: 20px;
	}
	#header .mod_navigation {
		display:none;
	}
	#left {
		display: none;
		}
	#main{
		width: 94%;
		padding-left: 3%;
		padding-right: 3%;
	}
	#menumobilebutton{
		position: absolute;
		top: 81px;
		right: 20px;
		padding-bottom: 10px;
		padding-left: 10px;	
		width: 45px;
		height: 45px;
	}
	#menumobilebutton.kgv2025{
		top: 8px;
		right: 20px;
	}
	#menumobilebutton img{
		box-shadow: 2px 4px 4px #000;
	}	
	#menumobilebutton.kgv2025 img{
		box-shadow: none;
	}
	#theme.kgv2025 {
		height: 130px !important;
		margin-bottom: 0px;
		background-image: none;
	}
}
.mod_newslist h2{
	margin-top: 20px;
}
.mod_newslist h2 a{
	text-decoration: none !important;	
}
.mod_newslist h2 a:hover{
	text-decoration: underline !important;	
}
.projekte_berufsbildung div h2{
	margin-top: 8px;
	margin-bottom: 8px;
}
.projekte_berufsbildung div h2 a{
	font-size: 22px !important;
}
.mod_newslist .float_left{
	padding-bottom: 0px;
}
.newsbild{
	width: 280px;
}
@media screen and (max-width: 670px) {
	#theme {
		background-position: -40px top !important;
	}
	.mod_newslist img{
		width: 150px;
	}
	.mod_newslist{
		font-size: 17px;
		word-wrap: break-word;
	}
	.mod_newslist .image_container, .mod_newslist img{
		width: 100% !important;
	}
}
@media screen and (max-width: 670px) {
	#theme {
		background-position: -40px top !important;
	}
	.mod_newslist img{
		width: 150px;
	}
}
@media screen and (max-width: 470px) {
	#menumobilebutton{
		top: 250px;
		left: 10px;
	}
	#menumobilebutton.kgv2025{
		top: 8px;
		right: 20px !important;
		left: auto;
	}
}
.mod_newslist .empty{
	display: none;
}

.pagination{
	width: 70%;
	float: left;
}
.pagination ul li{
	width: auto;
	text-align: center;
	color: #fff !important;
	background-color: #003d8f;
	display: inline-block;
	padding: 10px;
	padding-left: 20px !important;
	padding-right: 20px !important;
	margin-right: 20px;
	text-decoration: none !important;
	border: 1px solid #003d8f;
}
.pagination ul li a{
	color: #fff !important;
}
.zumarchiv{
	color: #fff !important;
	background-color: #003d8f;
	display: inline-block;
	padding: 10px;
	margin-top: 50px;
	text-decoration: none !important;
	border: 1px solid #003d8f;
	float: right;
}

.newsfull_box{
	display: block;
	width: 100%;
	height: 50px;
}
.newsfull_datum{
	font-size: 13px;
	display: block;
	float: left;
	margin-right: 30px;
}
.newsfull_back, p.back{
	font-size: 13px;
	display: block;
	float: left;
	
}

.homebutton{
	position: absolute;
	z-index: 1000;
	width: 400px;
	height: 100px;
	top: 80px;
}
.homebutton.kgv2025{
	position: absolute;
	z-index: 1000;
	width: 230px;
	height: 45px;
	top: 5px;
	left: 0px;
}
@media only screen and (max-width: 1200px) {
	.homebutton.kgv2025{
		margin-left: 20px;
	}	
}
@media screen and (max-width: 470px) {
	.homebutton{
		width: 320px;
	}	
}
.newsarchiv{
	margin-top: 10px;
}
.newsarchiv h2{
	margin-top: 0px;
}

/*--------------------------------------------------------
Videoausgabe
---------------------------------------------------------*/
.layout_videos{
	display: block;
	width: 50%;
	height: 350px;
	float: left;
}
.layout_videos h3{
	margin-top: 10px !important;
}
.layout_videos h3 a{
	font-size: 20px;
	text-decoration: none !important;
}
.layout_videos h3 a:hover{
	text-decoration: underline !important;
}
.videobild{
	width: 95% !important;
}
@media screen and (max-width: 600px) {
	.layout_videos{
		display: block;
		width: 100%;
		height: 500px;
		float: left;
	}
}
@media screen and (max-width: 500px) {
	.layout_videos{
		height: 350px;
	}
}
.mod_newsreader figure.video_container  {
	margin-top: 10px;
	margin-left: 0px;
}



/*--------------------------------------------------------
Meta Navigation Wrap
---------------------------------------------------------*/
#metanavwrap {
	float: left;
	width: 700px;
	height: 37px;
	font-size: 15px;
	}
#metanav {
	float: left;
	margin-top: 4px;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 4px;
	font-size: 14px;
	font-weight: normal;
	}
#metanav a {
	font-weight: normal;
	color: var(--farbe_dunkelblau);
	}	
#metanav.kgv2025 {
	margin-top: 20px;
	margin-left: 260px;
	}
@media screen and (max-width: 840px) {
	#metanav.kgv2025 {
		position: absolute;
		height: 30px;
		width: calc(100% - 130px);
		margin-left: 0px;
		padding-left: 20px;
		padding-top: 10px;
		top: 34px;
		background-color: var(--farbe_hellblau);
	}
	#metanavright.kgv2025 {
		position: absolute;
		height: 30px;
		top: 34px;
		padding-top: 10px;
		width: 130px;
	}
	#search.kgv2025 {
		display: none;
	}
}
#metanavwrapright {
	float: right;
	width: 120px;
	height: 37px;
	font-size: 14px;
	}
#metanavright {
	float: right;
	margin-top: 0px;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0px; 
	color: #ffd500;
	background-color: var(--farbe_hellblau);
	}
#metanavright a {
	color: var(--farbe_dunkelblau) !important;
	font-weight: bold;
	}
body.kgv2025 #metanavright.kgv2025 {
	margin-top: 20px;
	
	}
#metanavright.kgv2025 li{
	padding-left: 0px;
	padding-right: 0px;
}
#metanav ul, #metanavright ul {
	float:left;
	margin: 0;
	padding: 0;
	}

#metanav li {
	float:left;
	display: block;
	width: auto;
	height: 24px;
	list-style-type:none;
	padding-left:0px;
	padding-right:10px;
	}
#metanavright li {
	float:left;
	display: block;
	width: auto;
	height: 20px;
	list-style-type:none;
	padding-left:15px;
	padding-right:15px;
	}

#metanav li.active, #metanav li.trail {
	color: #ffd500;
	}

#metanav a, #metanav a:hover, #metanavright a, #metanavright a:hover {
	display: block;
	color: var(--farbe_dunkelblau);
	text-decoration:none;
	}

#metanav a:hover, #metanavright a:hover {
	color: #ffd500;
	}
.mod_changelanguage, .mod_changelanguage a{
	float: right;
	width: 180px;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 1px;
	color: #fff;
}
.mod_changelanguage li{
	display: inline;	
}
li .lang-de, li .lang-it{
	float: right;
	width: 60px;
	text-align: right;
	margin-top: 5px;
	margin-right: 10px;
	margin-left: 0px;
	}
.mod_changelanguage span{
	
}
@media screen and (max-width: 1200px) {
	#metanavright li {
		padding-left:0px !important;
		padding-right:10px !important;
	}
}
@media screen and (max-width: 1000px) {
	#metanav li.metasitemap{
		display: none;
	}
	#metanavwrap {
		width: 700px;
	}
}
@media screen and (max-width: 1000px) {
	#metanav li.metahide1{
		display:none;
	}
	#metanavwrap {
		width: 570px;
	}
}
@media screen and (max-width: 850px) {
	#metanav li.metahide2{
		display:none;
	}
	#metanavwrap {
		width: 500px;
	}
}
@media screen and (max-width: 800px) {
	#metanav li.metahide3{
		display:none;
	}
	#metanavwrap {
		width: 425px;
	}
}
@media screen and (max-width: 700px) {
	#metanav li.metahide4{
		display:none;
	}
	#metanavwrap {
		width: 300px;
	}
}
@media screen and (max-width: 600px) {
	#metanav li.metahide5{
		display:none;
	}
	#metanavwrap {
		width: 50px;
	}
}

/*--------------------------------------------------------
Search
---------------------------------------------------------*/
span.search {
	float: left;
	display: block;
	margin: 4px 0 0 10px;
	color: #fff;
	}

#search {
	margin-top: 7px;
	float: right;
	width: 35px;
	height: 28px;
	}
#search.kgv2025 {
	margin-top: 23px;
	}
@media screen and (max-width: 950px) {
	#search.kgv2025 {
		display: none;
	}
	#metanav li.last {
	  display: none;
	}	
}
#ctrl_1 {
	border: none;
	float: left;
	width: 100px;
	height: 21px;
	padding-top: 2px;
	padding-right: 5px;
	padding-bottom: 2px;
	padding-left: 5px;
	font-size: 17px;
	background-color: #003d8f;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #FFF;
	}
#ctrl_1:focus {
	background-color: #fff;
	}

#ctrl_1_submit {
	float: left;
	border: none;
	padding-top: 6px;
	padding-right: 3px;
	padding-bottom: 0px;
	padding-left: 3px;
	font-size: 15px;
	background-color: #003d8f;
	color: #fff;
	}


/*------------------------------------------------------------------
Mobile Navigation
-------------------------------------------------------------------*/
#menumobilebutton{
	float:right;
}
#menumobile{
	background-color: #fff;
	color: #000;
}
#menumobile a{
	color: #333;	
}
#menumobile a:hover, #menumobile a.active, #menumobile a.trail{
	background-color: #777;
	color: #fff;
}
.mm-menu .mm-list > li > a.mm-subopen:after, .mm-menu .mm-list > li > a.mm-subclose:before {
	border-color: rgba(0, 0, 0, 0.7);
}


/*------------------------------------------------------------------
Container
-------------------------------------------------------------------*/
#container {
	clear: both;
	float: left;
	width: 100%;
	}
	
/*--------------------------------------------------------
Navigation Main
---------------------------------------------------------*/
#nav ul {
	float:left;
	padding: 0;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	width: 100%;
	}

#nav li {
	float:left;
	display: block;
	width: auto;
	height: 31px;
	list-style-type:none;
	padding-left:0px;
	padding-right:18px;
	}

#nav li.active, #nav li a.trail, #nav li.trail {
	color: #ffd500;
	}

#nav a {
	display: block;
	color: var(--farbe_dunkelblau);
	text-decoration:none;
	}
#nav a:hover {
	color: #ffd500;
	}


	
/*------------------------------------------------------------------
Subnavigation
-------------------------------------------------------------------*/

/* LEVEL 1 
---------------------------*/
#left ul {
	margin: 0;
	padding: 0;
	border-bottom-style: none;
	border-top-style: none;
	border-right-style: none;
	border-left-style: none;
	}
#left li{
	list-style-type: none;
	font-size: 100%;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #ebebeb;
}
/* Normaler Link */
#left ul li a {
	display: block;
	margin: 0;
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 10px;
	line-height: 1.2em;
	text-decoration: none;
	font-weight: 400;
	color: #000;
	}
/* Aktueller Button */
#left ul li strong {
	display:block;
	text-decoration:none;
	font-weight: bold;
	color: #000000;
	line-height: 1.2em;
	padding-top: 5px;
	padding-bottom: 5px;
	padding-left: 10px;
	 }
/* Aktiver Text */
#left ul li strong.active {
	list-style-type: none;
	font-size: 100%;
	color: #ffd500;
	margin-bottom: 0;
	}	
/* Rollover und Visited Links */
#left ul li a.trail  {
	list-style-type: none;
	font-size: 100%;
	background-color: #fff;
	margin-bottom: 0;
	}
#left ul li a:hover  {
	list-style-type: none;
	font-size: 100%;
	color: #ffd500;
	margin-bottom: 0;
	}
	
/* LEVEL 2
---------------------------*/
#left ul li ul {
	list-style-type:none;
	margin:0;
	margin-top:0px;
	margin-bottom:0px;
	font-size: 17px;
	}
#left ul li ul li {
	border-top:none;
	}
/* Normaler Link */
#left ul li ul li a {
	display:block;
	text-decoration:none;
	font-weight:normal;
	color:#000;
	background:none;
	padding-top: 0px;
	padding-left: 20px;
	padding-right: 0px;
	padding-bottom: 4px;
	}
#left ul li ul li a:hover {
	color: #ffd500;
	}
#left ul li ul li strong.active {
	display: block;
	text-decoration: none;
	color: #ffd500;
	font-weight: normal;
	padding-top: 0px;
	padding-left: 20px;
	padding-right: 0px;
	padding-bottom: 4px;
	}
#left ul li ul li a.trail {
	color:#000;
	}
	
/* LEVEL 3
---------------------------*/
#left .mod_navigation ul li ul li ul {
 	margin-top:0;
	}
#left .mod_navigation ul li ul li ul li a {
	display:block;
	width: 150px;
	text-decoration:none;
	font-weight:normal;
	color:#444;
	background:none;
	padding-top: 3px;
	padding-left: 40px;
	padding-right: 0px;
	padding-bottom: 6px;
	}
#left .mod_navigation ul li ul li ul li span.active {
	display:block;
	width: 150px;
	text-decoration:none;
	font-weight:normal;
	color:#ffd500;
	padding-top: 3px;
	padding-left: 40px;
	padding-right: 0px;
	padding-bottom: 6px;
	}


/*--------------------------------------------------------
Left, Inside
---------------------------------------------------------*/
#subnav{
	margin-bottom: 40px;
}
#left .inside p {
	font-size: 16px;
	padding-top: 10px;
	color: #000;
	padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;
}
#linke-spalte .block{
	border: 1px solid #003d8f;	
	margin-bottom: 20px;
}
#linke-spalte .keinrand{
	border: 0px;	
	margin-bottom: 20px;
}
#left .inside .keinrand p{
	border: 0px;	
	padding: 0px !important;
}
#linke-spalte .block h3{
	background-color: #003d8f;
	color: #fff;
	font-size: 16px;
	padding-top: 5px;
	padding-right: 10px;
	padding-bottom: 5px;
	padding-left: 10px;
}
#linke-spalte img{	
	margin: 0px;
	padding: 0px;
}
#linke-spalte figure{
	margin: 0px;
	padding: 0px;	
}
#linke-spalte figure {
	line-height: 0;
}
#linke-spalte ul {
	margin: 0;
	padding-left: 25px;
	border: none;
	font-size: 16px;
	}
#linke-spalte li{
	list-style-type: square;
	border: none;
	font-size: 16px;
	padding: 0;
	margin: 0;
}
#linke-spalte ul li a{
	padding: 0px;
	margin: 0px;
	line-height: 150%;
	color: #003d8f;
	text-decoration:underline;
}
#linke-spalte ul li a:hover{
	text-decoration:none;
	color: #003d8f;
}
.subnavend{
	//margin-bottom: 20px;
}



/*----------------------------------------------
Content
-----------------------------------------------*/
#content {
	float: left;
	width: 100%;
	margin-bottom: 70px;
	min-height: 500px;
	}

#content a	{
	color: #003d8f;
	text-decoration: none;
	}

#content a:hover {
	color: #003d8f;
	text-decoration: underline;
	}

#content a.bildlink, div.image_container a:hover {
	border: none !important;
	
	}

#content hr {
	clear: both;
	color: #003d8f;
	background-color: #EBEBEB;
	border: 0px;
	height: 1px;
	margin: 5px 0 5px 0;
	}

#content div.image_container.float_left {
	margin-right: 20px;
	margin-bottom: 20px;
	}

#content div.image_container.float_right {
	margin-left: 20px;
	margin-bottom: 20px;
	margin-top: 5px;
	}

#content img, #content a img, #content img.mime_icon, #content img.mime_icon {
	border: none;
	}



.float_left {
	margin-right: 20px;
	padding: 0 10px 20px 0;
	}

#content li {
	padding-left: 3px;
	margin-bottom: 8px;
	}

#content img.mime_icon {
	margin: 0 3px -3px 0;
	padding: 0;
	border-radius: 0;
	}

#content p {
	margin-bottom: 13px;
	}

#content p.info {
	padding: 0;
	margin-top: 0px;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
	}

#content p.klein {
	font-size: 90%;
	}

#content p a.pfeil {
	padding-left: 15px;
	background: url(../img/arrow.png) no-repeat 0 5px;
	}

#content ul {
	list-style-image: url(../img/dot.png);
	margin-bottom: 15px;
	}
#content div.accordion {
	background-color: #fff;
	padding-top: 10px;
	padding-right: 0px;
	padding-bottom: 0;
	padding-left: 0px;
	}
#content div.accordion div {
	padding-top: 10px;
	}
#content .ce_accordionSingle{
	margin-bottom: 20px;
}
#content div.ce_accordion .toggler {
	margin: 10px 0 0 0;
	padding: 0 0 5px 24px;
	display: block !important;
	height: auto;
	font-size: 100%;
	line-height: 133%;
	color: #00643e;
	cursor: pointer;
	background: #eee url(../img/icon_accordion.png) no-repeat 0 0;
	}
.togglerplus{
	display: inline-block;
	height: 30px;
	vertical-align: bottom;
	font-size: 26px;
}
.togglertext{
	display: inline-block;
	height: 30px;
	vertical-align: middle;
}

#content .ce_hyperlink {
	margin: 20px 0 30px 0;
	}

#content .ce_hyperlink a {
	padding-left: 15px;
	background: url(../img/arrow.png) no-repeat 0 5px;
	}

#content .ce_download {
	margin: 0 0 30px 0;
	}
/* Einrückung bei Listen wieder herstellen */
#content ul {
	padding-left: 18px;
	list-style-type: disc;
	}

#content ol {
	padding-left: 32px;
	}
#content li p{
	padding: 0;
	margin: 0;
}
#content .ce_downloads{
	margin: 0 0 0px 0;
}
#content .ce_downloads ul, #content .ce_downloads li{
	list-style-type: none !important;
	margin: 0 0 0px 0;
	padding: 0px;
	list-style-image: none;
}
a.downloadicon[href $='.pdf'] {
	padding: 0px 0px 2px 35px !important; 
	background: url(/tl_files/layout/img/icon_pdf.png) no-repeat top left !important;
	background-size: 27px 27px !important;
	margin-bottom: 5px;
	display: inline-block;
}
a.downloadicon[href $='.doc'], a.downloadicon[href $='.docx'], a.downloadicon[href $='.DOC'] {   
	padding: 0px 0px 2px 35px !important;
	background: url(/tl_files/layout/img/icon_word.png) no-repeat top left !important;
	background-size: 27px 27px !important;
	margin-bottom: 5px;
	display: inline-block;
}
a.downloadicon[href $='.xls'], a.downloadicon[href $='.xlsx'] {
	padding: 0px 0px 2px 35px !important;
	background: url(/tl_files/layout/img/icon_excel.png) no-repeat top left !important;
	background-size: 27px 27px !important;
	margin-bottom: 5px;
	display: inline-block;
} 

#main .responsivevideo {
	position: relative;
	padding-bottom: 56.25%; /* Default for 1600x900 videos 16:9 ratio*/
	padding-top: 0px;
	height: 0;
	overflow: hidden;
	margin-bottom: 30px;
}
#main .responsivevideo iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#main .responsivevideo iframe{
	color: #fff;
	border: none;
}
img.kmufrauen{
	height: 200px;
}

.ce_accordion .toggler {
	font-size: 18px;
	padding-top: 10px;
	padding-right: 0px;
	padding-bottom: 10px;
	padding-left: 0px;
	color: #003d8f;
	cursor: pointer;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
.ce_accordion .toggler:hover {
	text-decoration: underline;
}
.pagination{
	margin-top: 50px;
}
.caption{
	font-size: 13px;
}

.pagination li{
	float: left;
	width: 70px;
	list-style-type: none;
	list-style-image: none;
}
#content .pagination ul{
	list-style-type: none;
	list-style-image: none;	
	padding-left: 0px;
}
.pagination .previous{
	width: 70px;
}
.pagination .last{
	display: none;
}
#content a.hyperlink_txt{
	display: inline-block;
	padding: 10px;
	background-color: #003d8f;
	color: #fff;
	text-decoration: none;
	margin-top: 20px;
}
#content a.hyperlink_txt:hover{
	text-decoration: underline;
}
.newsdatum{
	font-size: 12px;
}
.back{
	margin-top: 10px;
}
.mod_login label{
	display: block;
	width: 250px;
	margin-bottom: 20px;
}
.mod_newsreader figure{
	margin-top: 47px;
	margin-left: 10px;
}



/*----------------------------------------------
Diverse Klassen
-----------------------------------------------*/
.galeriebox{
	width: 230px;
	height: 240px;
	float: left;
	margin-right: 30px;
	margin-bottom: 40px;
}
.galeriebox:hover{
	opacity: 0.8;
}
.gewerbeboxaktuell{
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}
.gewerbeboxaktuell figure a img{
	padding: 5px;
	width: 360px;
	height: 540px;	
	border: 1px solid #003d8f !important;
}
.gewerbeboxaktuellsmall{
	width: 200px;
	height: 250px;
	float: left;
	margin-right: 20px;
	margin-bottom: 40px;
}
.gewerbebox{
	float: left;
	margin-right: 20px;
	margin-bottom: 40px;
	
}
.gewerbebox figure a img{
	padding: 5px;
	width: 235px;
	height: 400px;	
	border: 1px solid #003d8f !important;
}
.gewerbebox:hover, .gewerbeboxaktuell:hover{
	opacity: 0.8;
}
.gewerbebox figure a img{
	height: 346px;
}
.bgvtabelle table, .ce_table table{
	width: 100%;
	-moz-hyphens: auto;
	-o-hyphens: auto;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto; 
}

@media screen and (max-width: 1200px) {
	.bgvtabelle table, .ce_table table{
		font-size: 80%;
		line-height: 130%;
	}
}
@media screen and (max-width: 700px) {
	.bgvtabelle table, .ce_table table{
		font-size: 70%;
		line-height: 100%;
	}
}

.bgvtabelle table tr th, .ce_table table thead tr th{
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: var(--farbe_hellblau);
	margin: 0px;
	padding: 3px;
	padding-left: 8px;
	padding-right: 8px;
	background-color: var(--farbe_hellblau);
}
.bgvtabelle table tr td, .ce_table table tbody tr td{
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: var(--farbe_hellblau);
	margin: 0px;
	padding: 3px;
	padding-left: 8px;
	padding-right: 8px;
	vertical-align: top;
}
.tabelle th, .ce_table table tbody th{
	font-weight: bold;
	background-color: var(--farbe_hellblau);
	text-align: left;
	padding: 3px;
}
.tabelle td{
	font-weight: normal;
	background-color: #F9F9F9;
	text-align: left;
	padding: 3px;
	vertical-align: top;
}
.tabelle th p, .tabelle td p{
	padding: 0px !important;
	margin: 0px !important;
}
.mandat{
	width: 350px;
	height: 220px;
	margin-bottom: 20px;
	margin-right: 20px;
	float: left;
	border: 1px solid #CCC;
}
.mandat .image_container{
	
	text-align: center;
}
.mandat:hover{
	border: 1px solid #003d8f;
}
.mandat a{
	display: block;
	height: 150px;
	padding: 20px;
}
.mandat .caption{
	font-size: 15px;
}
.neuezeile{
	clear: both;	
}
#newsbutton1{
	display: block;
	vertical-align: middle;
	height: 120px;
	width: 160px;
	padding: 20px;
	padding-top: 60px;
	position: absolute;
	right: 170px;
	top: -30px;
	background-color: var(--farbe_dunkelgelb);
	font-family: 'Bitter', sans-serif;
	border: none;
	color: #000;
	text-align: center;
	text-decoration: none;
	font-size: 20px;
	font-weight: bold;
	margin: 4px 2px;
	border-radius: 50%;
	box-shadow: 5px 5px 5px rgb(0,0,0,0.5);
}
#newsbutton1 .ce_text p a{
	display: block;
	height: 160px;
	width: 160px;	

}
#newsbutton1 .ce_text p a:hover{
	text-decoration: none;	
}
#newsbutton1:hover{
	box-shadow: 0px 0px 0px rgb(0,0,0,0.5);
}
@media screen and (max-width: 1020px) {
	#newsbutton1{
		vertical-align: middle;
		height: 110px;
		width: 110px;
		padding: 20px;
		position: absolute;
		right: 70px;
		top: 90px;
		font-size: 15px;
	}	
	#newsbutton1 .ce_text p a{
		display: block;
		height: 110px;
		width: 130px;	
	
	}
}
@media screen and (max-width: 768px) {
	body.kgv2025 #newsbutton1{
		width: 100%;
		height: auto;
		border-radius: 0;
		padding: 10px;
		right: 0px;
		top: 85px;
		box-shadow: none;
	}
	#header{
		height: 150px;
	}
}
@media screen and (max-width: 480px) {
	body.kgv2025 #newsbutton1{
		top: 85px;
	}
}
#newsbutton2{
	
}
.abstandunten{
	margin-bottom: 50px;
}


/*----------------------------------------------
Eigene Inhaltselemente mit Rocksolid
-----------------------------------------------*/
.eventtabelle{
	display: block;
	width: 100%;
	clear: both;	
}
.eventlabel{
	font-weight: bold;
	display: block;
	float: left;
	width: 25%;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}
.eventcontent{
	display: block;
	float: left;
	width: 75%;	
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
}

.personenbox{
	width: 225px;
	height: 450px;
	float: left;
	margin-right: 25px;
	margin-bottom: 20px;
}
.personenbild img{
	width: 100%;
}
#content .personentext h4{
	margin: 0px;
	font-weight: bold;
}
#content .personentext p{
	margin-top: 10px;
	margin-bottom: 10px;
}

#content .personenfunktion{
	display: block;
	width: 100%;
}
#content .personenmail {
	display: block;
	width: 100%;
   	padding:0 0 0 35px !important;
   	background: url(/files/layout/img/icon_email.png) no-repeat top left !important;
   	background-size: 26px 26px !important;
}
#content .personentelefon {
	display: block;
	width: 100%;
   	padding:0 0 0 35px !important;
   	background: url(/files/layout/img/icon_telefon.png) no-repeat top left !important;
   	background-size: 26px 26px !important;
}
#content .eventbgv {
	display: block;
	width: 100%;
   	padding:3px 0 3px 45px !important;
   	background: url(/files/layout/img/icon_event_bgv.png) no-repeat center left !important;
   	background-size: 30px 20px !important;
}
#content .eventpartner {
	display: block;
	width: 100%;
   	padding:3px 0 3px 45px !important;
   	background: url(/files/layout/img/icon_kalender.png) no-repeat center left !important;
   	background-size: 32px 32px !important;
}
#content .eventkmuimpuls {
	display: block;
	width: 100%;
   	padding:3px 0 3px 45px !important;
   	background: url(/files/layout/img/icon_event_kmuimpuls.png) no-repeat center left !important;
   	background-size: 32px 32px !important;
}

#content .logobox{
	width: 220px;
	height: 150px;
	padding: 10px;
	text-align: center;
	margin-bottom: 20px;
	margin-right: 20px;
	float: left;
	border: 1px solid #CCC;
}
.logobox .logobild{
	height: 120px;
	width: 220px;
	display: table-cell;
	vertical-align:middle;
	text-align: center;
}
#content .logobox img{	
	max-width: 200px;
	max-height: 120px;
}
#content .logobox:hover{
	border: 1px solid #003d8f;
}
#content .logobezeichnung{
	font-size: 13px;
}
#content .logobox a{
	display: block;
	height: 150px;
	padding: 20px;
}

.bgvblau_block{
	margin-top: 20px;
	margin-bottom: 20px;
}
.bgvblau_hervorhebung{
	color: #003d8f;
	font-weight: bold;
}
.bgvblau_block{
	background-color: var(--farbe_hellblau);
	color: #000;
	display: block;
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 25px;
}
.bgvgelb_block{
	margin-top: 20px;
	margin-bottom: 20px;
}
.bgvgelb_block{
	background-color: var(--farbe_hellgelb);
	color: #000;
	display: block;
	padding-top: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	padding-left: 25px;
}

.neuezeile{
	display: block;
	clear:both;
}





/*----------------------------------------------
Footer
-----------------------------------------------*/
#footer {
	width: 100%;
	text-align: left;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	background-color: var(--farbe_hellblau);
	font-size:16px;
	height: 500px;
	color: var(--farbe_dunkelblau);
}
#footer .inside {
	max-width: 1200px;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
	padding-bottom: 40px;
	background-color: var(--farbe_hellblau);
	}
#topfooter{
	float: left;
	display: block;
	width: 96%;
	padding: 2%;
	padding-top: 4%;
}
#subfooter{
	float: left;
	display: block;
	width: 96%;
	height: 50px;
	padding: 2%;
	margin-bottom: 100px;
	clear: both;
}
.footercontent {
	height: 200px;
	float: left;
	width: 20%;
	padding-right: 5%;
	margin-bottom: 20px;
	color: var(--farbe_dunkelblau);
	}
.footercontent a {
	color: var(--farbe_dunkelblau);
	text-decoration: none;
	}

.footercontent a:hover {
	color: #ffd500;
}
#wirtschaftsstandort{
	display: block;
	float: right;
	width: 600px;
	margin-top: 0px;
	text-align:right;
}
.org_fiutscher{
	width: 19%;
	float: left;
	margin-right: 3%;
}
.org_kmuimpuls{
	width: 7%;
	float: left;
	margin-right: 3%;
	padding-top: 0px;	
}
.org_dwgr{
	width: 19%;
	float: left;
	margin-right: 3%;
	padding-top: 10px;
}
.org_economia{
	width: 16%;
	float: left;
	margin-right: 3%;
	padding-top: 5px;
}
.org_akwirtschaft{
	width: 25%;
	float: left;
	margin-right: 0px;
	padding-top: 0px;	
}

#imp a {
	color: #fff;
	text-decoration:none;
	}
#imp a:hover {
	color: #ffd500;
	}
@media screen and (max-width: 800px) {
	.footercontent {
		width: 32%;
		padding-right: 1%;
	}	
}
@media screen and (max-width: 500px) {
	.footercontent {
		width: 45%;
		font-size: 12px;
		line-height: 170%;
	}	
}
@media screen and (max-width: 700px) {
	#wirtschaftsstandort{
		float: left;
		margin-top: 20px;
		width: 100%;
		text-align: center;
	}
}
@media screen and (max-width: 500px) {
	#footer {
		height: 1000px;
	}	
	.org_fiutscher, .org_kmuimpuls, .org_dwgr, .org_economia, .org_akwirtschaft{
		width: 50%;
		margin-left: 25%;
		margin-right: 25%;
		margin-top: 10px;
		margin-bottom: 10px;
		text-align: center;
	}
}
.showmobile{
	display: none;
}
.hidemobile{
	display: block;
}
@media screen and (max-width: 570px) {
	.showmobile{
		display: block;
	}
	.hidemobile{
		display: none;
	}	
}




/*------------------------------------
Formular Kontakt
-------------------------------------*/
#main .ce_form .widget{
	margin-bottom: 15px;
}
button.submit {
	font-size: 18px;
    padding:10px 15px; 
    background: var(--farbe_dunkelblau);
    border:0 none;
    cursor:pointer;
	color: #fff;
}
#main .ce_form label, #main .mod_form label {
	color: #000000;
	margin-bottom: 0;
	padding-right: 20px;
	width: 100%;
	display: block;
}
#main .ce_form .breit label, #main .mod_form .breit label {
    color: #000000;
    float: left;
    margin-bottom: 0;
    padding-right: 20px;
    width: 450px;
}
#main .ce_form input, #main .ce_form textarea, #main .mod_form input, #main .mod_form textarea, #main .ce_form select {
    background-color: #FFFFFF;
    border-color: #CCCCCC;
    border-style: solid;
    border-width: 1px 1px 1px;
    color: #000000;
    margin-bottom: 10px;
    padding: 3px 5px;
    width: 340px;
}
#main .ce_form select {
    width: 240px;
}
fieldset.checkbox_container, fieldset.radio_container {
    border: 0 none;
    margin: 10px 0 0;
    padding: 0;
}
#main .radio_container legend {
    border: 0 none;
    display: block;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
	width:360px;
}


#main .checkbox_container input, #main .radio_container input {
    background-color: #FFFFFF;
    border: 0 none;
    float: left;
    height: 20px;
    margin: 0 10px 0 0;
    width: 20px;
}
#main .radio_container label {
    padding-right: 10px;
    width: auto;
}

span.mandatory, span.captcha_text {
    color: #003D8F;
}
#main .ce_form textarea, #main .mod_form textarea {
    border-left: 1px solid #CCCCCC;
    border-right: 1px solid #CCCCCC;
    height: 100px;
}
#main .ce_form p.error, #main .mod_form p.error {
	color: #C00;
	padding-right: 0;
	width: 300px;
	display: block;
	margin-top: 0;
	margin-right: -2px;
	margin-bottom: 0;
	margin-left: 0;
}
#main .submit_container input {
	color: #003D8F;
	display: inline;
	float: left;
	height: 30px;
	padding: 0;
	width: 150px;
	margin-top: 20px;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0px;
}
#main .checkbox_container legend {
    margin-bottom: 10px;
    width: auto;
	float:left;
}
.checkbox_container span {
    display: inline-block;
    //float: left;
	margin-left: 0;
	width: 540px;
	clear: both;
}
legend span.mandatory {
	display: inline;
}
/*
.row_11 {
	margin-left:140px;
	font-size:0.75em;
}
*/
.usermessage{
	background-color: #FFC;
	padding: 10px;
	border: 1px solid #900;	
}
/*------------------------------------
Formular Events anmelden
-------------------------------------*/
select,input,textarea {
	font-size:99%;
	font-family: 'Public Sans', sans-serif;
	background-color: #FFFFFF;
	}

form {
	margin:0;
	padding:0;
	}
#main .mod_EventEditor input {
    background-color: #FFFFFF;
    border-color: #CCCCCC;
    border-style: solid;
    border-width: 1px 1px 1px;
    color: #000000;
    margin: 6px 5px 5px 0;
    padding: 3px 5px;
    width: 230px;
}
#main .mod_EventEditor textarea {
	background-color: #FFFFFF;
    border-color: #CCCCCC;
    border-style: solid;
    border-width: 1px 1px 1px;
    color: #000000;
    margin: 0.25em 0.25em 0.25em 0;
    padding: 3px 5px;
	width:300px;

	}
div.mod_EventEditor .label {
	width:200px;
	}
#main .mod_EventEditor input.captcha {
	width:50px;
	}
#main .mod_EventEditor p.error {
	color: #003D8F;
	}
#main .mod_EventEditor .captcha span.mandatory {
	display: none;
}
#formulartabelle td{
	padding: 2px;
	padding-left: 4px;
}

#dvanmeldung{
	font-size: 16px;
}
#dvanmeldung p{
	display: block;
}
#dvanmeldung label{
	display: block;
	width: 100%;
	margin-top: 20px;
}
#dvanmeldung input, #dvanmeldung select, #dvanmeldung textarea {
	background-color: #FFFFFF;
    border-color: #CCCCCC;
    border-style: solid;
    border-width: 1px 1px 1px;
    color: #000000;
    margin: 0.25em 0.25em 0.25em 0;
    padding: 3px 5px;
	width:300px;	
}
#dvanmeldung input[type=radio]{
	width: 30px;
}
@media screen and (max-width: 800px) {
	#an_verband{
		width: 90%;
	}
	#an_funktion{
		width: 90%;
	}
}




/*------------------------------------
Events
-------------------------------------*/
#events h2{
	margin-top: 20px;	
}
#events .teaser{
	margin-bottom: 25px;	
}




/*----------------------------------------------
Contao Additional Classes
-----------------------------------------------*/
img, img a {
	border:0;
	}

.inside {
	position:relative;
	text-align:left;
	}

.block {
	overflow:hidden;
	}

.clear, #clear {
	height:0.1px;
	font-size:0.1px;
	line-height:0.1px;
	clear:both;
	}

.invisible {
	width:0px;
	height:0px;
	left:-1000px;
	top:-1000px;
	position:absolute;
	overflow:hidden;
	display:inline;
	}
