/* 1755370686.1695 */
@charset "utf-8";


:root {
	
	--color-darkestgrey-rgb: 64,64,64;
	--color-darkestgrey: #404040;
	
	--color-darkgrey-rgb: 101,101,101;
	--color-darkgrey: #656565;
		
	--color-grey-rgb: 181,181,181;
	--color-grey: #b5b5b5;
	
}



* {
	margin:0;
	padding:0;
	line-height:100%;
	outline:0;	
}

html {
	width:100%;
	height:100%;
	-webkit-tap-highlight-color:transparent;
	font-size:100.01%;
	overflow-y: scroll;
}

#kontrolle {
	display:none;
}
	
body {
	position:relative;
	height: 100%;
	height:100%; 
	margin:0 auto;
	padding:0;
	font-size:62.5%;
	font-family:Verdana, Helvetica, Arial, san serif;
	text-align:center;
	background:#f1f1f1 url(/gif/bg-body.jpg) repeat-x left top;
	-webkit-tap-highlight-color:transparent;
}

#container {
	position:relative;
	height: auto !important;
	min-height: 99%;
	/*
	height: 99%;
	*/
	width:972px;
	margin:0 auto;
	padding:0;
	text-align:left;
	color:#000;
	font-size:100%;
}




/* ### ALLGEMEIN START ### */

hr {
	size:1px;
	width:100%;
	height:1px;
	border:none;
	/*
	background-color:#d1d1d1;
	*/
	background-color:transparent;
	border-top:1px dotted #dfdfdf;
	margin:16px 0;
	display:block;
	clear:both;
}

hr.referenzen {
	background-color:transparent;
	border-top:1px dotted #dfdfdf;
	margin-top:32px;
	clear:both;
}


#container p.top {
	clear:both;
	display:block;
	margin:6px 0 24px 0;
	padding:0;
	text-align:right;
	border-bottom:1px dotted #dfdfdf;
}

#container p.top a,
#container p.top a:hover {
	display:inline-block;
	width:20px;
	height:20px;
	margin:6px 0 0 0;
	padding:0;
	text-align:right;
	text-decoration:none;
	/*
	background:url(/gif/icons/icon-top.png) no-repeat 0px 0px;
	*/
}

.nobr {
	white-space:nowrap;
}

.cb {
	clear:both;
}

#container .blue,
#container .blue a {
	color:#007bb7 !important;
}

#container .orange {
	color:#ff7100;
}

#container .orange span {
	color:#6E6E70;
}

#container .responsive_image {
	width:100%;
	height:auto;
}


/* new clearfix */
.clearfix:after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}
	
/* Hides from IE5/Mac \*/
* html .clearfix {height: 1px;}
.clearfix {display: block;}
/* End hide from IE5/Mac */

/* ### ALLGEMEIN ENDE ### */



/* ##### HEADER START ##### */

header {
	position:relative;
	width:972px;
	height:68px;
	text-align:left;
	margin:0 auto;
	padding:10px 0 0 0;
	color:#626364;
}

header div.headinfos {
	float:left;
	width:550px;
	margin:0 0 10px 0;
	padding:0;
}

header div.headinfos h4 {	
	font-size:130%;
	text-align:left;
}

header div.headinfos h4 span {
	display:block;
	float:left;
	margin-top:6px;
	line-height:130%;
}

header div.headinfos h4 img {
	float:left;
	margin:0 20px 0 0;
}



header h6 {
	float:right;
	width:400px;
	text-align:right;
	font-size:110%;
	line-height:120%;
	font-weight:normal;
}

header h6 strong {
	font-size:140%;
	line-height:120%;
	color:#000;
}

header h6 img.logo {
	float:right;
	margin:0 0 0 10px;
}

header a {
	color:#626364;
	text-decoration:none;
}




header h6 span.icon16 {
	margin-right:24px;
	display:inline-block;
}

header div.headbutton {
	display:none;
	text-align:center;
	font-size:200%;
	color:#fff;
	background-color:#FF7100;
	padding:6px;
	cursor:pointer;
}
	
header div.headbutton span {
	cursor:pointer;
}

@media only screen and (max-width:768px){
	
	header div.headinfos {display:none;}
	header div.headbutton {display:block;}

}

@media only screen and (min-width:769px){
	
	header div.headinfos {display:block;}
	header div.headbutton {display:none;}
	
}



/* ### HEADER ENDE ### */




/* ### NAVIGATION START ### */

nav#nav {
	position:relative;
	width:972px;
	min-height:43px;
	margin:8px 0 0 0;
	padding:0;
	background:url(/gif/bg-navi.png) no-repeat left bottom;
	z-index:2;
}

nav#nav ul#mainnav {
	float:left;
	margin:18px 0 0 0;
	padding:0;
	list-style-type:none;
	text-align:left;
}

nav#nav ul#mainnav li {
	float:left;
	display:inline;
	margin:0;
	padding:0;
	text-align:left;
}

nav#nav ul#mainnav li a {
	display:block;
	float:left;
	margin:0;
	padding:6px 20px;
	color:#626364;
	font-size:120%;
	font-weight:bold;
	text-decoration:none;
	text-align:left;
	cursor: pointer;
}

nav#nav ul#mainnav li a:hover, 
nav#nav ul#mainnav li.aktiv a  {
	color:#ff7100;
	text-decoration:none;
}

nav#nav ul#mainnav li ul {
	background-color:#fff;
	width:100%;
	margin:0;
	padding:4px 0 12px 0;
}

nav#nav ul#mainnav li ul li {
	background-color:#fff;
	display:block;
}

nav#nav ul#mainnav li li a, nav#nav ul#mainnav li.aktiv li a {
	float:none;
	display:block;
	padding:6px 20px;
	text-transform:none;
	font-weight:normal;
	color:#626364;
}

nav#nav ul#mainnav li.aktiv li a:hover  {
	color:#ff7100;
	text-decoration:none;
}

nav#nav ul#mainnav li.login {
	
}

nav#nav ul#mainnav li.login img {
	float:left;
	margin:-3px 3px 0 0;
}

/* SUPER-FISH NAVI START */

/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {
	margin: 0;
	padding: 0;
	list-style: none;
}
.sf-menu li {
	position: relative;
}
.sf-menu ul {
	position: absolute;
	display: none;
	top: 100%;
	left: 0;
	z-index: 99999;
}
.sf-menu > li {
	float: left;
}
.sf-menu li:hover > ul,
.sf-menu li.sfHover > ul {
	display: block;
}

.sf-menu a {
	display: block;
	position: relative;
}
.sf-menu ul ul {
	top: 0;
	left: 100%;
}

/*** DEMO SKIN ***/
.sf-menu {
	/*
	float: left;
	margin-bottom: 1em;
	*/
}
.sf-menu ul {
	/*
	box-shadow: 2px 2px 6px rgba(0,0,0,.2);
	*/
	min-width: 12em; /* allow long menu items to determine submenu width */
}
.sf-menu a {
	/*
	border-left: 1px solid #fff;
	*/
	/* fallback colour must use full shorthand */
	/*
	border-top: 1px solid #dFeEFF; 
	border-top: 1px solid rgba(128,128,128,.5);
	padding: .75em 1em;
	*/
	text-decoration: none;
}
.sf-menu a {
	/*
	color: #13a;
	*/
}
.sf-menu li {
	/*
	background: #BDD2FF;
	*/
	/* no need for Supersubs plugin */
	white-space: nowrap; 
	-webkit-transition: background .2s;
	transition: background .2s;
	
}
.sf-menu ul li {
	/*
	background: #AABDE6;
	*/
}
.sf-menu ul ul li {
	/*
	background: #9AAEDB;
	*/
}
.sf-menu li:hover,
.sf-menu li.sfHover {
	/*
	background: #CFDEFF;
	*/
	/* only transition out, not in */
	-webkit-transition: none;
	transition: none;
}

/*** arrows (for all except IE7) **/
nav#nav .sf-arrows .sf-with-ul {
	padding-right: 2.5em;	
}
/* styling for both css and generated arrows */
nav#nav .sf-arrows .sf-with-ul:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	margin-top: -3px;
	height: 0;
	width: 0;
	/* order of following 3 rules important for fallbacks to work */
	border: 5px solid transparent;
	/* edit this to suit design (no rgba in IE8) */
	border-top-color: #ffffff; 
	border-top-color: rgba(255,255,255,1);
}
nav#nav .sf-arrows > li > .sf-with-ul:focus:after,
nav#nav .sf-arrows > li:hover > .sf-with-ul:after,
nav#nav .sf-arrows > .sfHover > .sf-with-ul:after {
	border-top-color: #ffffff; /* IE8 fallback colour */
}
/* styling for right-facing arrows */
nav#nav .sf-arrows ul .sf-with-ul:after {
	margin-top: -5px;
	margin-right: -3px;
	border-color: transparent;
	/* edit this to suit design (no rgba in IE8) */
	border-left-color: #ffffff; 
	border-left-color: rgba(255,255,255,1);
}
nav#nav .sf-arrows ul li > .sf-with-ul:focus:after,
nav#nav .sf-arrows ul li:hover > .sf-with-ul:after,
nav#nav .sf-arrows ul .sfHover > .sf-with-ul:after {
	border-left-color: #ffffff;
}



#mobnav-btn {
    display: none;
	cursor: pointer;
    float:right;
	margin-right:0;
}
.mobnav-subarrow {
    display: none;
}

@media only screen and (min-width: 769px) and (max-width: 1119px) {
		
}

@media only screen and (max-width: 768px) {
	
	header img.logo {
		width:auto;
		display:block;
	}
	
	header img.logo p strong {
	margin-top:4px;
	}
	
	header img.slogan {
		height:30px;
		float:left;
	}

	#mobnav-btn {
        display: inline-block;
    }
	
	nav#nav ul#mainnav {
		float:none;
		margin:0;
	}
	
	header,	
	nav#nav {
		display:block;
		float:none;
		margin:0;
		padding:0;
		width:auto;
	}
	
	nav#nav {
		width:100%;
		height:auto;	
		min-height:0px;
		margin:6px 0;
		border-bottom:6px solid #fff;
		background:none;
		background-color:#fff;
	}
	
	
    .mobnav-subarrow {
        display: block;
		background-color:#FF7100;
        height: 32px;
        width: 32px;
        background-position: top left!important;
        position: absolute;
        top: 0px;
        right: 6px;      
        cursor: pointer;
        -webkit-transition: all .1s ease-in-out;
        -moz-transition: all .1s ease-in-out;
        -ms-transition: all .1s ease-in-out;
        -o-transition: all .1s ease-in-out;
        transition: all .1s ease-in-out;
    }
	
	nav#nav .mobnav-subarrow span,
	nav#nav .xpopdrop .mobnav-subarrow span {
		display: block;
		height: 32px;
        width: 32px;
		color:#fff;
		font-weight:bold;
		font-size:24px;
		line-height:32px;
		text-align:center;
	}
	
	nav#nav .xpopdrop .mobnav-subarrow span {
		color:#fff;
	}
	
    nav#nav .sf-menu {
        width: 100%!important;
        display: none!important;
    }
    nav#nav .sf-menu.xactive {
        display: block!important;
    }
    .sf-menu li {
        float: none!important;
        display: block!important;
        width: 100%!important;
    }
    .sf-menu li a {
        float: none!important;
    }
    .sf-menu ul {
        position:static!important;
        display: none!important;
    }
    nav#nav .xpopdrop ul {
        display: block!important;
    }
		
	/*** arrows (for all except IE7) **/
	nav#nav .sf-arrows .sf-with-ul {
		padding-right: 2.5em;
		/*
		*padding-right: 1em; 
		*/
		/* no CSS arrows for IE7 (lack pseudo-elements) */
	}
	/* styling for both css and generated arrows */
	nav#nav .sf-arrows .sf-with-ul:after {
		content: '';
		position: absolute;
		top: 50%;
		right: 1em;
		margin-top: -3px;
		/*
		z-index:9999999;
		*/
		height: 0;
		width: 0;
		/* order of following 3 rules important for fallbacks to work */
		border: 5px solid transparent;
		border-top-color: #ffffff; /* edit this to suit design (no rgba in IE8) */
		border-top-color: rgba(255,255,255,1);
	}
	nav#nav .sf-arrows > li > .sf-with-ul:focus:after,
	nav#nav .sf-arrows > li:hover > .sf-with-ul:after,
	nav#nav .sf-arrows > .sfHover > .sf-with-ul:after {
		border-top-color: #ffffff; /* IE8 fallback colour */
	}
	/* styling for right-facing arrows */
	nav#nav .sf-arrows ul .sf-with-ul:after {
		margin-top: -5px;
		margin-right: -3px;
		border-color: transparent;
		border-left-color: #ffffff; /* edit this to suit design (no rgba in IE8) */
		border-left-color: rgba(255,255,255,1);
	}
	nav#nav .sf-arrows ul li > .sf-with-ul:focus:after,
	nav#nav .sf-arrows ul li:hover > .sf-with-ul:after,
	nav#nav .sf-arrows ul .sfHover > .sf-with-ul:after {
		border-left-color: #ffffff;
	}	
	
	
	nav#nav ul#mainnav {
		margin:0 6px 6px 0;
	}
	
	nav#nav ul#mainnav li {
		border-top:1px dotted #666666;
	}
	
	nav#nav ul#mainnav li:last-child {
		border-bottom:1px dotted #666666;
	}
	
	nav#nav ul#mainnav li a { 
		text-transform:none;
		padding:10px;
		display:block;
	}
	
	nav#nav ul#mainnav li li,
	nav#nav ul#mainnav li:last-child li,
	nav#nav ul#mainnav li li:last-child {
		border:none;
	}
	
		
}
/* SUPER-FISH NAVI ENDE */

/* ### NAVIGATION ENDE ### */



/* ### SUB-NAVIGATION START ### */

nav#subnav {
	float:left;
	width:280px;
	margin:0 40px 0 30px;
	padding:0;
}

nav#subnav ul.subnavi {
	margin:20px 20px 20px 0;
	list-style:none;
	border-top:1px dotted #dfdfdf;
}

nav#subnav ul.subnavi li {
	margin:0;
	padding:0;
	list-style:none;
	border-bottom:1px dotted #dfdfdf;
}

nav#subnav ul.subnavi li a {
	display:block;
	padding:4px;
	font-weight:normal;
	text-decoration:none;
}

nav#subnav ul.subnavi li.aktiv a, 
nav#subnav ul.subnavi li a:hover {
	color:#ff7100;
	background-color:#f1f1f1;
}

/* ### SUB-NAVIGATION ENDE ### */





/* ### BILDSTREIFEN START ### */

#bildstreifen {
	position:relative;
	width:972px;
	height:338px;
	text-align:center;
	overflow:visible;
	z-index:1;
}

#bildstreifen p {
	position:relative;
	margin:6px 0 6px -26px;
	width:1024px;
	height:100%;
	text-align:center;
	background:url(/gif/bg-bildstreifen.png) no-repeat center 338px;
}

#bildstreifen p img {
	width:100%;
	height:auto;
}

#bildstreifen #slogan {
	position:absolute;
	left:0px;
	top:232px;
	z-index:10;
	height:52px;
	display:block;
	text-align:right;
	background:url(/gif/bg-slogan.jpg) repeat-x left center;
	font-size:150%;
	font-weight:bold;
}

#bildstreifen #slogan strong {
	min-width:306px;
	color:#fff;
	display:block;
	margin:0;
	padding:6px 50px 8px 0;
}

#bildstreifen #slogan span {
	font-size:80%;
	display:block;
	margin:0;
	padding:0 10px 0 0;
}

/* ### BILDSTREIFEN ENDE ### */


/* ### BREADCRUMB START ### */


#inhalt #breadcrumb {
	display:block;
	margin:0 0 24px 30px;
	font-size:100%;
}

#inhalt #breadcrumb a {
	font-weight:normal;
	background-color:#fff;
	text-decoration:none;
}

/* ### BREADCRUMB ENDE ### */




/* ### INHALT START ### */

#inhalt a {
	color:#007BB7;
	font-weight:bold;
	text-decoration:underline;
}

#inhalt a:hover {
	text-decoration:underline;
	color:#ff7100;
}

#inhalt a.anker, #inhalt a.anker:hover {
	text-decoration:none;
	color:#007BB7;
}

#inhalt a.tel_link {
	text-decoration:none;
	color:#666;
}

#subnav a.tel_link {
	text-decoration:none;
	color:#666;
	font-weight:normal;
}

#inhalt a.teamviewer {
	display:block;
	width:236px;
	height:18px;
	padding:4px 0 0 44px;
	background:url(/gif/button-teamviewer.jpg) no-repeat left top;
	font-size:90%;
	font-weight:bold;
	text-decoration:none;
}







#inhalt {
	clear:both;
	width:970px;
	padding:12px 0 24px 0;
	margin:0 auto;
	text-align:left;
	background-color:#fff;
	border-left:1px solid #dfdfdf;
	border-right:1px solid #dfdfdf;
	border-bottom:1px solid #dfdfdf;
	color:#666;
	background:#fff url(/gif/bg-inhalt.jpg) repeat-y left 40px;
}

#home #inhalt {	
	background:#fff url(/gif/bg-inhalt-zwei.jpg) repeat-y left 40px;
}



#inhalt section {
	width:586px;
	float:right;
	margin-right:34px;
}

#home #inhalt section {
	width:100%;
	float:none;
	margin-right:0;
}

#inhalt #links {
	float:left;
	width:280px;
	margin:0 40px 0 30px;
	padding:0;
}

#inhalt #mitte {
	float:left;
	width:266px;
	margin:0 40px 0 0;
}

#inhalt #content, 
#inhalt #rechts {
	float:left;
	width:586px;
	margin:0;
}

#home #inhalt #rechts {
	width:280px;
}

#inhalt aside {
	float:none;
	width:280px;
	margin:0 40px 0 30px;
	padding:0;
} 


#home section article.box50 {
	float:left;
	display:block;
	width:415px;
	margin:0 40px 0 30px;
	padding:0;
}



#inhalt h1 {
	margin:0 0 18px 0;
	font-size:180%;
	line-height:130%;
	text-transform:uppercase;
	color:#007bb7;
}

#inhalt h2, 
#inhalt h1.small, 
#inhalt h5 {
	margin:0 0 12px 0;
	font-size:140%;
	line-height:130%;
	text-transform:uppercase;
	color:#007bb7;
}

#inhalt h1.small {
	text-transform:none;
}

#inhalt h3 {
	margin:0 0 8px 0;
	font-size:130%;
	line-height:130%;
	text-transform:uppercase;
	color:#007bb7;
}

#inhalt h3.referenzen {
	font-weight:normal;
}

#inhalt h4 {
	margin:0 0 4px 0;
	font-size:120%;
	line-height:100%;
	text-transform:uppercase;
	color:#007bb7;
}


#inhalt h2.normal, 
#inhalt h3.normal {
	margin:0 0 12px 0;
	font-size:120%;
	line-height:140%;
	text-transform:none;
	color:#666;
	font-weight:normal;
}

#inhalt h1 span, 
#inhalt h2 span, 
#inhalt h3 span, 
#inhalt h4 span {
	text-transform:none;
}

#inhalt p, 
#inhalt blockquote {
	margin:0 0 12px 0;
	font-size:120%;
	line-height:140%;
}

#inhalt p.fussnote {
	font-size:100%;
	line-height:120%;
	color:#bbb;
}

#inhalt ul, 
#inhalt ol {
	margin:0 0 12px 36px;
}

#inhalt ul ul {
	margin-top:6px;
	margin-bottom:6px;
}

#inhalt li {
	font-size:120%;
	line-height:140%;
}

#inhalt li li {
	font-size:100%;
}

#inhalt #content ul {
	list-style:none;
	margin:0 0 12px 2px;
}

#inhalt #content .error ul {
	margin-bottom:0;
}

#inhalt #content ul ul {
	margin-top:4px;
	margin-bottom:12px;
}

#inhalt #content ul li {
	margin:0 0 2px 0;
	padding:0 0 0 20px;
	background:url(/gif/icons/icon-liste.gif) no-repeat left 2px;
}

#inhalt .small {
	font-size:110%;
	line-height:120%;
}


#inhalt img.pic_r {
	float:right;
	margin:2px 0 6px 16px;
}

#inhalt img.pic {
	margin:2px 0 6px 0;
}

#inhalt img.shadow {
	-moz-box-shadow: 3px 3px 6px #727271;
	-webkit-box-shadow: 3px 3px 6px #727271;
	box-shadow: 3px 3px 6px #727271;
}


#inhalt p.portraits {
	display:block;
	width:100%;
}

#inhalt p.portraits span.portrait {
	display:block;
	float:left;
	margin:0 30px 0 0;
	font-size:90%;
}

#inhalt p.portraits span.portrait strong {
	font-size:110%;
	display:inline-block;
	margin-bottom:2px;
}

#inhalt p.portraits span.portrait img {
	-moz-box-shadow: 3px 3px 6px #727271;
	-webkit-box-shadow: 3px 3px 6px #727271;
	box-shadow: 3px 3px 6px #727271;
	margin: 0 0 6px 0;
}

#inhalt #content ul.referenzen {
	margin:0 0 12px 0;
	padding:0 0 12px 0;
	list-style:none;
}

#inhalt #content ul.referenzen li {
	float:left;
	display:block;
	width:262px;
	max-height:162px;
	margin:5px 10px 20px 10px;
	padding:0;
	background:none;
	text-align:center;
}

#inhalt #content ul.referenzen li:nth-child(odd) {
	clear:both;
}

#inhalt #content ul.referenzen li img {
	border:1px dotted #dfdfdf;
}


#inhalt #content ul.list-split {
	margin:0 0 12px 0;
	padding:0;
	list-style:none;
}

#inhalt #content ul.list-split li {
	float:left;
	display:block;
	width:262px;
	margin:0 0 12px 0;
	text-align:left;
}



#inhalt table.rahmen {
	margin:0 0 16px 0;
	border-right:1px solid #c3caff;
	border-bottom:1px solid #c3caff;
}

#inhalt table.rahmen th {
	background-color:#f1f1f1;
}

#inhalt table.rahmen td, #inhalt table.rahmen th {
	font-size:120%;
	line-height:130%;
	vertical-align:top;
	padding:4px;
	border-left:1px solid #c3caff;
	border-top:1px solid #c3caff;
}


.abstand_oben,
#inhalt .abstand_oben {
	margin:24px 0 0 0;
}
 



#inhalt div.kontaktadresse {
	width:300px;
	float:right;
	margin:0 0 0 48px;
	padding:0;
}











footer#footer {
	width:972px;
	text-align:right;
	margin:0 auto;
	padding:0 0 10px 0;
	background:transparent;
	color:#626364;
}

footer#footer p {
	margin:0 10px;
	padding:8px 0 0 0;
	text-align:right;
}

footer#footer p strong {
	margin:0 20px;
}

footer#footer p strong .icon {
	vertical-align:-1px;
}

footer#footer a {
	color:#626364;
	text-decoration:none;
}

footer#footer span {
	float:left;
}

footer#footer span a {
	margin:0 8px 0 4px;
}

footer#footer p.seo_home {
	margin-bottom:10px;
	padding:8px 0 0 0;
}






/* ### TAGCLOUD START ### */

#inhalt h6.tagcloud {
	text-align:center;
	color:#626364;
	font-size:130%;
	line-height:160%;
}

#inhalt h6.tagcloud a {
color:#626364;
font-weight:normal;
text-decoration:none;
}

/* ### TAGCLOUD ENDE ### */




/* ### SEOLINKS START ### */

div.seolinks {
	width:1140px;
	text-align:center;
	margin:0 auto;
	padding:0 0 10px 0;
	background:transparent;
	color:#626364;
	font-size:90%;
	overflow:visible;
}

div.seolinks p {
	margin:4px auto;
	padding:0;
	text-align:center;
	white-space:nowrap;
}

div.seolinks p strong .icon {
	vertical-align:-1px;
}

div.seolinks a {
	color:#626364;
	text-decoration:none;
}

/* ### SEOLINKS ENDE ### */








#inhalt div.danke_box {
	border:1px solid #FF7100;
	padding:6px;
}

#inhalt div.danke_box p:last-child {
	margin-bottom:0;
}

/* ##### FORMULAR START ##### */

#container section article.formular {
	margin:0;
}

#home #container section article.formular {
	margin:0 40px 0 30px;
}


#inhalt form.formular {
	width:100%;
	margin:0 0 30px 0;
	padding:0;
	font-size:100%;
	clear:none;
}

#inhalt form.formular fieldset {
	width:calc(100% - 14px);
	padding:6px;
	margin:4px 0 10px 0;
	border:1px dotted rgba(125,125,125,1);
	font-size:100%;
	clear:none;
}

#inhalt form.formular fieldset.box50 {
	width:calc(49% - 14px);
	margin:0;
}

#inhalt form.formular fieldset.error {
	border:1px dotted red;
}
	
#inhalt form.formular fieldset.box_l,
#inhalt form.formular fieldset.box_r {
	float:left;
	margin:0 2% 0 0;
}

#inhalt form.formular fieldset.box_r {
	margin:0;
}

#inhalt form.formular fieldset.box50 {
	width:48%;
}

#inhalt form.formular fieldset.no_legend {
	width:100%;
	padding:0;
	margin:4px 0 10px 0;
	border:none;
	font-size:100%;
	clear:none;
}

#inhalt form.formular fieldset legend {
	font-size:120%;
	line-height:130%;
	font-weight:bold;
	padding:6px;	
}

#inhalt form.formular fieldset legend.fehler {
	background-color:red;
	color:#fff;
}

#inhalt form.formular p.r {
	text-align:right;
}

#inhalt form.formular span.fl {
	float:left;
}

#inhalt form.formular span.fr {
	float:right;
}

#inhalt form.formular p,
#inhalt form.formular ul {
	display:block;
	margin:0 0 8px 0;
	font-size:100%;
	width:auto;
}

#inhalt form.formular li {
	font-size:120%;
	line-height:130%;
}

#inhalt form.formular li li {
	font-size:100%;
}

#inhalt form.formular ul {
	margin:0 0 4px 20px;
}

#inhalt form.formular fieldset span.txt {
	display:inline-block;
	margin:0;
	font-size:120%;
	line-height:130%;
}

#inhalt form.formular fieldset #mapbox,
#inhalt form.formular fieldset #mapbox #map_canvas {
	display:block;
	margin-bottom:0;
	padding:0;
}

#inhalt form.formular fieldset p.hinweis {
	display:block;
	clear:both;
	margin:4px 0 16px 124px;
	padding:0 0 0 44px;
	font-size:120%;
	line-height:130%;
	min-height:36px;
	background:url(/gif/icons/hinweis.png) no-repeat 4px 4px;
	/*
	https://www.iconfinder.com/iconsets/circle-icons-1
	https://www.elegantthemes.com/blog/freebie-of-the-week/beautiful-flat-icons-for-free
	*/
}

#inhalt form.formular fieldset p.full {
	margin-left:0;	
}

#inhalt form.formular fieldset label {
	display:inline-block;
	width:90px;
	margin:0;
	font-size:120%;
	line-height:110%;
	font-weight:bold;
}

#inhalt form.formular fieldset label.ort,
#inhalt form.formular fieldset label.ortsteil {
	width:40px;
	margin-left:24px;
}

#inhalt form.formular fieldset label.fl {
	float:left;
	display:inline-block;
	margin-right:4px;
}

#inhalt form.formular fieldset.border label.fl_textarea {
	margin:0;
}

#inhalt form.formular fieldset label.captcha {
	width:120px;
}

#inhalt form.formular fieldset label.radio_label {
	width:auto;
	margin-left:6px;
}

#inhalt form.formular fieldset label.checkbox_label {
	width:auto;
	margin-left:6px;
	margin-right:16px;
	vertical-align:2px;
}

#inhalt form.formular fieldset label.select,
#inhalt form.formular fieldset label.auto_label {
	width:auto;
	display:inline-block;
	margin-right:16px;
}

#inhalt form.formular select.select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border:none;
	border-radius: 0;	
	font-size:120%;
	line-height:130%;
	width:auto;
	border: 1px solid #ccc;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	padding:2px 30px 2px 2px;	
	display:inline-block;
	margin:0 24px 0 0;
	color:#666;
	background-color:#fff;
	background-image: url(/gif/icons/icon-bottom.png);
	background-repeat: no-repeat;
	background-position: right 4px top 50%;
}

#inhalt form.formular select.select option {
	padding:2px 4px;
	font-size: 100%;
	color:#666;
}

#inhalt form.formular fieldset input.txt, 
#inhalt form.formular fieldset textarea {
	display:inline-block;
	margin:0 0 0 24px;
	padding:4px;
	border:1px solid #ccc;
	font-size:120%;
	line-height:130%;
	color:#666;
	font-family:Tahoma,Verdana,Arial,san serif;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
}


#inhalt form.formular fieldset input.txt, 
#inhalt form.formular fieldset textarea {
	width:440px;
}

#inhalt form.formular fieldset textarea.fl {
	float:left;	
}

#inhalt form.formular fieldset input.nolabel, 
#inhalt form.formular fieldset textarea.nolabel {
	margin-left:0;	
	width:calc(100% - 10px);
}

#inhalt form.formular fieldset input.plz {
	width:60px;
}

#inhalt form.formular fieldset input.ort,
#inhalt form.formular fieldset select.ortsteil {
	width:298px;
	margin-left:0px;
}



#container form fieldset textarea,
#container form fieldset textarea:hover {
	box-shadow: none;
	-moz-box-shadow: none;
	-webkit-box-shadow: none;
	border:1px solid #d5d5d5;
}

#inhalt form.formular fieldset input.captcha,
#container section.breit article.formular form fieldset input.captcha {
	width:100px;
}

#inhalt form.formular fieldset input.radio, 
#inhalt form.formular fieldset input.checkbox {
	display:inline-block;
	width:16px;
	margin-left:25px;
}

#inhalt form.formular fieldset label.checkbox_txt_label {
	width:92%;
	float:left;
	margin-left:0px;
	margin-right:16px;
	vertical-align:2px;
	font-weight:normal;
}

#inhalt form.formular fieldset input.checkbox_txt_label {
	float:left;
	margin:2px 6px 0 6px;
}

#inhalt form.formular fieldset img.captcha {
	vertical-align:-8px;
	margin-right:10px;
}

#inhalt form.formular .buttons {
	display:block;
	margin:4px 0 32px 0;		
}

#inhalt form.formular button,
#inhalt form.formular input[type="submit"],
#inhalt form.formular input[type="reset"],
#inhalt form.formular button,
#inhalt form.formular input[type="submit"],
#inhalt form.formular input[type="reset"] {
	width:auto;
	height:auto;
	display:inline-block;
	text-align:center;
	cursor:pointer;
	color:#fff;
	padding:4px;
	font-size:150%;
	background:#66cc33;
	background: rgba(102,204,51, 1);
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	border:4px solid #fff;
	-webkit-box-shadow: 0px 4px 2px 0px rgba(157,156,138,0.4);
	-moz-box-shadow: 0px 4px 2px 0px rgba(157,156,138,0.4);
	box-shadow: 0px 4px 2px 0px rgba(157,156,138,0.4);
	background: -moz-linear-gradient(top,  rgba(102,204,51,1) 0%, rgba(102,204,51,0.75) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(102,204,51,1)), color-stop(100%,rgba(102,204,51,0.75)));
	background: -webkit-linear-gradient(top,  rgba(102,204,51,1) 0%,rgba(102,204,51,0.75) 100%);
	background: -o-linear-gradient(top,  rgba(102,204,51,1) 0%,rgba(102,204,51,0.75) 100%);
	background: -ms-linear-gradient(top,  rgba(102,204,51,1) 0%,rgba(102,204,51,0.75) 100%);
	background: linear-gradient(to bottom,  rgba(102,204,51,1) 0%,rgba(102,204,51,0.75) 100%);
}

#inhalt form.formular input[type="reset"] {
	background:#F44949;
	background: rgba(244,73,73,1);
	background: -moz-linear-gradient(top,  rgba(244,73,73,1) 0%, rgba(244,73,73,0.75) 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(244,73,73,1)), color-stop(100%,rgba(244,73,73,0.75)));
	background: -webkit-linear-gradient(top,  rgba(244,73,73,1) 0%,rgba(244,73,73,0.75) 100%);
	background: -o-linear-gradient(top,  rgba(244,73,73,1) 0%,rgba(244,73,73,0.75) 100%);
	background: -ms-linear-gradient(top,  rgba(244,73,73,1) 0%,rgba(244,73,73,0.75) 100%);
	background: linear-gradient(to bottom,  rgba(244,73,73,1) 0%,rgba(244,73,73,0.75) 100%);
	margin-right:12px;
}

#inhalt form.formular#routenplaner {
	margin-bottom:16px;
}

#inhalt form.formular#routenplaner fieldset.box50 {
	width:calc(49% - 14px);
	margin:0;
	float:left;
}


#inhalt form.formular#routenplaner fieldset:nth-of-type(even).box50 {
	margin-left:2%;
}

#inhalt form.formular#routenplaner fieldset input.txt,
#inhalt form.formular#routenplaner fieldset select {
	width:calc(100% - 12px);
	margin:0;
	padding:6px;
}

#inhalt form.formular#routenplaner fieldset select {
	width:100%;
}

#inhalt form.formular#routenplaner .button {
	float:right;
	margin-top:6px;
}


div#karte {
	display:block;
	width:100%;
	min-height:500px;
	margin:20px 0;
	border:1px solid #727271;
}

div#route  {
	margin:0;
	padding:0;
	width:100%;
}


div#route > div{
	font-size:140%;
}


#content div.anfahrtsplan {
	float:right;
	margin:0 0 16px 24px;
}





#inhalt form#rueckruf {
	display:block;
	margin:0;
	padding:0;
}

#inhalt form#rueckruf fieldset {
	text-align:left;
	border:none;
	margin:0;
	padding:0;
}

#inhalt form#rueckruf fieldset div.box50 {
	/*
	float:left;
	width:49%;
	margin:0 2% 0 0;
	*/
	text-align:left;
}

#inhalt form#rueckruf fieldset div.box50:nth-child(2n) {
	margin-right:0;
}

#inhalt form#rueckruf fieldset input.txt {
	width:96%;
	padding:2%;
	margin:0 0 2% 0;
	font-size:130%;
}

#inhalt form#rueckruf fieldset input.button {
	padding:1%;
	font-size:130%;
	width:auto;
	float:right;
	margin:0;
}








@media only screen and (max-width: 1023px) {
	
	#inhalt form.formular fieldset label,
	#inhalt form.formular fieldset label.txt {
		display:block;
		width:auto;
	}

	#inhalt form.formular fieldset label.ort,
	#inhalt form.formular fieldset label.ortsteil {
		width:auto;
		display:block;
		float:none;
		margin-left:0;
	}

	#inhalt form.formular fieldset label.fl {
		width:auto;
		display:block;
		float:none;
		margin:0;
	}

	#inhalt form.formular fieldset label.radio_label {
		width:auto;
		display:inline-block;
		margin-left:6px;
	}
	
	#inhalt form.formular fieldset label.checkbox_label {
		width:auto;
		display:inline-block;
		margin-left:6px;
		margin-right:16px;
		vertical-align:2px;
	}
		
	#inhalt form.formular fieldset input.txt, 
	#inhalt form.formular fieldset textarea {
		padding:1%;
		border:1px solid #d5d5d5;
		font-size:120%;
		line-height:130%;
	}
	
	#inhalt form.formular fieldset input.txt, 
	#inhalt form.formular fieldset textarea,
	#inhalt form.formular fieldset textarea.fl,
	#inhalt form.formular fieldset input.nolabel, 
	#inhalt form.formular fieldset textarea.nolabel,
	#inhalt form.formular fieldset input.plz,
	#inhalt form.formular fieldset input.ort,
	#inhalt form.formular fieldset select.select {
		width:97.5%;
		display:block;
		float:none;
		margin:2px 0 4px 0;
	}
		
	#inhalt form.formular fieldset select.select {
		margin-left:0px;
	}
	
	#inhalt form.formular fieldset select.select {
		margin-left:0px;
	}	
	
	#inhalt form.formular fieldset select.ortsteil {
		width:100%;
	}
	
	#inhalt form.formular fieldset select.auto_width {
		width:auto;
	}

	#inhalt form.formular fieldset input.captcha {
		width:100px;
		float:left;
	}

	#inhalt form.formular fieldset input.radio, 
	#inhalt form.formular fieldset input.checkbox {
		display:inline-block;
		width:16px;
		margin-left:25px;
	}
	
	#inhalt form.formular fieldset input.radio:nth-child(1), 
	#inhalt form.formular fieldset input.checkbox:nth-child(1) {
		margin-left:0;
		border:2px solid red;
	}

	#inhalt form.formular fieldset img.captcha {
		float:left;
	}
	
	#inhalt form.formular fieldset label.checkbox_txt_label {
		width:auto;
		max-width:90%;
		float:left;
		margin-left:0px;
		margin-right:16px;
		vertical-align:2px;
		font-weight:normal;
	}

	#inhalt form.formular fieldset input.checkbox_txt_label {
		float:left;
		margin:2px 6px 0 6px;
	}

}



#inhalt .formular div.error {
	border:1px solid red;
	margin:4px 0 10px 0;
	padding:6px;
}

#inhalt .formular div.error h3 {
	margin-top:0;
	color:red;
}

#inhalt .formular div.error ul,
#inhalt .formular div.error li:last-child {
	margin-bottom:0;
}

#inhalt .formular  div.success {
	border:2px solid rgba(0,128,0,1);
	background-color:rgba(0,128,0,.125);
	margin:12px 0 18px 0;
	padding:6px;
}

#inhalt .formular div.success h2 {
	color:#008000;
	margin:0 0 2px 0;
}



#inhalt form fieldset label.txt.url,
#inhalt form fieldset input.txt.url,
#inhalt form fieldset label.url,
#inhalt form fieldset input.url {
	display:none !important;
}

#inhalt form fieldset input:focus,
#inhalt form fieldset select:focus,
#inhalt form fieldset textarea:focus {	
	background:rgba(236,236,236,.5);
}


/* ### FORMULAR ENDE ### */











/* FANCYBOX START */

/*
 * FancyBox - jQuery Plugin
 * Simple and fancy lightbox alternative
 *
 * Examples and documentation at: http://fancybox.net
 * 
 * Copyright (c) 2008 - 2010 Janis Skarnelis
 * That said, it is hardly a one-person project. Many people have submitted bugs, code, and offered their advice freely. Their support is greatly appreciated.
 * 
 * Version: 1.3.4 (11/11/2010)
 * Requires: jQuery v1.3+
 *
 * Dual licensed under the MIT and GPL licenses:
 *   http://www.opensource.org/licenses/mit-license.php
 *   http://www.gnu.org/licenses/gpl.html
 */

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	width: 40px;
	height: 40px;
	margin-top: -20px;
	margin-left: -20px;
	cursor: pointer;
	overflow: hidden;
	z-index: 1104;
	display: none;
}

#fancybox-loading div {
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 480px;
	background-image: url('/gif/fancybox/fancybox.png');
}

#fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1100;
	display: none;
}

#fancybox-tmp {
	padding: 0;
	margin: 0;
	border: 0;
	overflow: auto;
	display: none;
}

#fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	padding: 20px;
	z-index: 1101;
	outline: none;
	display: none;
}

#fancybox-outer {
	position: relative;
	width: 100%;
	height: 100%;
	background: #fff;
}

#fancybox-content {
	width: 0;
	height: 0;
	padding: 0;
	outline: none;
	position: relative;
	overflow: hidden;
	z-index: 1102;
	border: 0px solid #fff;
}

#fancybox-hide-sel-frame {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent;
	z-index: 1101;
}

#fancybox-close {
	position: absolute;
	top: -15px;
	right: -15px;
	width: 30px;
	height: 30px;
	background: transparent url('/gif/fancybox/fancybox.png') -40px 0px;
	cursor: pointer;
	z-index: 1103;
	display: none;
}

#fancybox-error {
	color: #444;
	font: normal 12px/20px Arial;
	padding: 14px;
	margin: 0;
}

#fancybox-img {
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
	border: none;
	outline: none;
	line-height: 0;
	vertical-align: top;
}

#fancybox-frame {
	width: 100%;
	height: 100%;
	border: none;
	display: block;
}

#fancybox-left, #fancybox-right {
	position: absolute;
	bottom: 0px;
	height: 100%;
	width: 35%;
	cursor: pointer;
	outline: none;
	background: transparent url('/gif/fancybox/blank.gif');
	z-index: 1102;
	display: none;
}

#fancybox-left {
	left: 0px;
}

#fancybox-right {
	right: 0px;
}

#fancybox-left-ico, #fancybox-right-ico {
	position: absolute;
	top: 50%;
	left: -9999px;
	width: 30px;
	height: 30px;
	margin-top: -15px;
	cursor: pointer;
	z-index: 1102;
	display: block;
}

#fancybox-left-ico {
	background-image: url('/gif/fancybox/fancybox.png');
	background-position: -40px -30px;
}

#fancybox-right-ico {
	background-image: url('/gif/fancybox/fancybox.png');
	background-position: -40px -60px;
}

#fancybox-left:hover, #fancybox-right:hover {
	visibility: visible; /* IE6 */
}

#fancybox-left:hover span {
	left: 20px;
}

#fancybox-right:hover span {
	left: auto;
	right: 20px;
}

.fancybox-bg {
	position: absolute;
	padding: 0;
	margin: 0;
	border: 0;
	width: 20px;
	height: 20px;
	z-index: 1001;
}

#fancybox-bg-n {
	top: -20px;
	left: 0;
	width: 100%;
	background-image: url('/gif/fancybox/fancybox-x.png');
}

#fancybox-bg-ne {
	top: -20px;
	right: -20px;
	background-image: url('/gif/fancybox/fancybox.png');
	background-position: -40px -162px;
}

#fancybox-bg-e {
	top: 0;
	right: -20px;
	height: 100%;
	background-image: url('/gif/fancybox/fancybox-y.png');
	background-position: -20px 0px;
}

#fancybox-bg-se {
	bottom: -20px;
	right: -20px;
	background-image: url('/gif/fancybox/fancybox.png');
	background-position: -40px -182px; 
}

#fancybox-bg-s {
	bottom: -20px;
	left: 0;
	width: 100%;
	background-image: url('/gif/fancybox/fancybox-x.png');
	background-position: 0px -20px;
}

#fancybox-bg-sw {
	bottom: -20px;
	left: -20px;
	background-image: url('/gif/fancybox/fancybox.png');
	background-position: -40px -142px;
}

#fancybox-bg-w {
	top: 0;
	left: -20px;
	height: 100%;
	background-image: url('/gif/fancybox/fancybox-y.png');
}

#fancybox-bg-nw {
	top: -20px;
	left: -20px;
	background-image: url('/gif/fancybox/fancybox.png');
	background-position: -40px -122px;
}

#fancybox-title {
	font-family: Helvetica;
	font-size: 12px;
	z-index: 1102;
}

.fancybox-title-inside {
	padding-bottom: 10px;
	text-align: center;
	color: #333;
	background: #fff;
	position: relative;
}

.fancybox-title-outside {
	padding-top: 10px;
	color: #fff;
}

.fancybox-title-over {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #FFF;
	text-align: left;
}

#fancybox-title-over {
	padding: 10px;
	background-image: url('/gif/fancybox/fancy_title_over.png');
	display: block;
}

.fancybox-title-float {
	position: absolute;
	left: 0;
	bottom: -20px;
	height: 32px;
}

#fancybox-title-float-wrap {
	border: none;
	border-collapse: collapse;
	width: auto;
}

#fancybox-title-float-wrap td {
	border: none;
	white-space: nowrap;
}

#fancybox-title-float-left {
	padding: 0 0 0 15px;
	background: url('/gif/fancybox/fancybox.png') -40px -90px no-repeat;
}

#fancybox-title-float-main {
	color: #FFF;
	line-height: 29px;
	font-weight: bold;
	padding: 0 0 3px 0;
	background: url('/gif/fancybox/fancybox-x.png') 0px -40px;
}

#fancybox-title-float-right {
	padding: 0 0 0 15px;
	background: url('/gif/fancybox/fancybox.png') -55px -90px no-repeat;
}

/* FANCYBOX ENDE */
/* ANPASSUNGEN FANCYBOX START */

#fancybox-title {
	font-family: Helvetica;
	font-size: 120%;
	z-index: 1102;
	line-height:130%;
}

#fancybox-title div,
#fancybox-title div p {
	margin:0;
	padding:0;
	text-align:left;
}

#fancybox-title div p {
	line-height:120%;
}

#fancybox-title div p img.minilogo {
	float:left;
	margin:0 10px 10px 0;
}

/* ANPASSUNGEN FANCYBOX ENDE */


#cookie-bar {z-index:99999;background:rgba(255,255,255,0.95); height:auto; line-height:140%; font-size:140%; color:#444; text-align:center; padding:10px 0;}
#cookie-bar.fixed {position:fixed; top:0; left:0; width:100%;}
#cookie-bar.fixed.bottom {bottom:0; top:auto;}
#cookie-bar p {margin:0; padding:0;}
#cookie-bar a {color:#ffffff; display:inline-block; border-radius:3px; text-decoration:none; padding:3px 6px 5px 5px; margin-left:8px;}
#cookie-bar .cb-enable {background:#444;}
#cookie-bar .cb-enable:hover {background:#222;}
#cookie-bar .cb-disable {background:#990000;}
#cookie-bar .cb-disable:hover {background:#bb0000;}
#cookie-bar .cb-policy {background:none; display:block;clear:both;}
#cookie-bar .cb-policy:hover {background:none;}
#cookie-bar a.cb-policy {color:#444;}
#cookie-bar a.cb-policy span {text-decoration:underline;}




/* #### 360 Grad PANO START #### */

#container .space_bottom,
body.vr360 #container .space_bottom {
	margin-bottom:30px;
}

#container .flex-container {
	display: flex;
	flex-flow: row wrap;
	width:100% !important;
	height:auto;
}

body.vr360 {
	width:100%;
	height:100%;	
	display: flex;
    flex-flow: row wrap;
    flex-grow: 1;
    flex-basis: 0;
}

body.vr360 #navi,
body.vr360 footer,
body.vr360 #bildstreifen {
	display: flex;
	flex-flow: row wrap;
}

body.vr360 footer {
	width:100%;
	margin-left:auto;
	margin-right:auto;
}

body.vr360 #content { 	
	clear:both;
	background:none;
	background-color:#fff;	
	display: flex;
	flex-flow: row wrap;	
}

body.vr360 #content div.flexbox {
	display: flex;
    flex-flow: row wrap;
    flex-grow: 1;
    flex-basis: 0;
	text-align:left;
}

body.vr360 #content div.flexbox .box_vr360 {	
	position:relative;	
	width:100%;	
	height:60vh;
	display:block;	
}

body.vr360 #content div.flexbox .box_vr360 .photosphere {
	width: 100%;
	height: 100%;	
	display:block;	
}

#content .box_vr360 .hinweis_handy {
	position:absolute;
	top:50%;
	left:0;
	margin:0 auto;
	z-index:99999;	
	text-align:center;	
	width:100%;
}	
	
#content .box_vr360 .hinweis_handy p {
	width:calc(100% - 8px);
	display:block;
	padding:4px;
	color:#fff;
	background:rgba(0,0,0,0.8);
	text-align:center;
	margin:0 auto;
	font-size:200%;
}

.psv-hud {
	cursor:url('/includes/photo-sphere/mousecursor360vr.png'), auto !important;
}
	
.psv-button.custom-button {
	font-size: 22px;
	line-height: 20px;
}

.demo-label {
	color: white;
	font-size: 20px;
    font-family: Helvetica, sans-serif;
    text-align: center;
    padding: 5px;
    border: 1px solid white;
    background: rgba(0,0,0,0.4);
}
		
.psv-caption {
	-webkit-box-flex: 10;
	-webkit-flex-grow: 10;
	-moz-flex-grow: 10;
	-ms-flex-positive: 10;
	flex-grow: 10;
	color: rgba(255, 255, 255, 0.7);
	margin: 10px;
	overflow: hidden;
	text-align: center; 
}

.psv-caption-icon {
	height: 20px;
	width: 20px;
	cursor: pointer;
}

.psv-caption-icon * {
	fill: rgba(255, 255, 255, 0.7); 
}

.psv-caption-content {
	font-family: sans-serif;
	white-space: nowrap;
	font-weight:bold;
	font-size:120%;
}

/* #### 360 Grad PANO ENDE #### */










/* ### RESPONSIVE VIDEO START ### */

/* YouTube START */

#content .youtubevideo {
	border:none;
	width:650px;
	height:366px;
}

#content div.responsive-video {
	position:relative;
	padding-bottom:56.25%; /* Default for 1600x900 videos 16:9 ratio*/ 
	padding-top:0px;
	height:0;
	overflow:hidden;
	margin-bottom:16px;
}

#content div.responsive-video iframe {
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	border:none;
}

.youtube-player {
	position: relative;
	padding-bottom: 56.23%;
	/* Use 75% for 4:3 videos */
	height: 0;
	overflow: hidden;
	max-width: 100%;
	background: #000;
	margin: 0px;
}
    
.youtube-player iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 100;
	background: transparent;
}
    
.youtube-player img {
	bottom: 0;
	display: block;
	left: 0;
	margin: auto;
	max-width: 100%;
	width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	border: none;
	height: auto;
	cursor: pointer;
	-webkit-transition: .4s all;
	-moz-transition: .4s all;
	transition: .4s all;
}
    
.youtube-player img:hover {
	-webkit-filter: brightness(75%);
}
    
.youtube-player .play {
	height: 72px;
	width: 72px;
	left: 50%;
	top: 50%;
	margin-left: -36px;
	margin-top: -36px;
	position: absolute;
	background: url("/gif/icons/bt_play.png") no-repeat;
	cursor: pointer;
}

/* YouTube ENDE */	
	

/* YouTube Blocked Start */

#container div.responsive-video.blocked {
	position:relative;
}

#container div.responsive-video.blocked .message {
	position: absolute;
	top: 0;
	left: 0;
	width:100%;
	height:100%;
	padding:0;
	z-index:100 !important;
}

#container div.responsive-video.blocked .message .textblock {
	position: absolute;
	left:10px;
	bottom:10px;
	z-index:200 !important;
	text-align:left;
	width:calc(100% - 20px);
}	

#container div.responsive-video.blocked .message p,
#container div.responsive-video.blocked .message * {
	color:#fff !important;
}

#container div.responsive-video.blocked .message p {
	line-height:120%;
	margin-left:0;
	margin-right:0;
	font-size:110%;
}

#container div.responsive-video.blocked .message a {
	cursor: pointer;
	color:red !important;	
}

#container div.responsive-video.blocked .message a.youtube-blocked {
	color:#fff !important;
	background-color:red;
	padding:4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	margin:6px auto 0 auto !important;
	display:inline-block;
}

#container div.responsive-video.blocked .message a.pref,
#container div.responsive-video.blocked .message a.ext {
	margin:6px auto 0 auto !important;
	display:inline-block;
}

#container div.responsive-video.blocked .message a.pref,
#container div.responsive-video.blocked .message a.button_link {
	color:#fff !important;
	background:rgba(0,0,0,.5);
	padding:4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	margin:6px auto 0 auto !important;
	display:inline-block;
}

#container div.responsive-video.blocked .message a.extlink {
	text-decoration:none;
}

#container div.responsive-video.blocked .message span {
	padding:1px 4px !important;
	line-height:140%;
	background-color:rgba(0,0,0,.5) !important;
}

@media (max-width: 960px) {
	
	#container div.responsive-video.blocked .message p {
		line-height:110%;	
		font-size:90%;
	}
	
}

/* YouTube Blocked ENDE */

/* Vimeo Blocked Start */

#container div.vimeo-player {
	position: relative;
	padding-bottom: 56.25%; /* Default for 1600x900 videos 16:9 ratio*/
	padding-top: 0px;
	height: 0;
	overflow: hidden;
	margin-bottom:16px;
}

#container div.vimeo-player iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#container div.vimeo-player img {
	width: 100%;
	height: 100%;
}


#container div.vimeo-player.blocked {
	position:relative;
	background-color:rgba(0,0,0,.5) !important;
}

#container div.vimeo-player.blocked .message {
	position: absolute;
	top: 0;
	left: 0;
	width:100%;
	height:100%;
	padding:0;
	z-index:100 !important;
}

#container div.vimeo-player.blocked .message .textblock {
	position: absolute;
	left:10px;
	bottom:0px;
	z-index:200 !important;
	text-align:left;
	width:calc(100% - 20px);
}	

#container div.vimeo-player.blocked .message p,
#container div.vimeo-player.blocked .message * {
	color:#fff !important;
}

#container div.vimeo-player.blocked .message p {
	line-height:120%;
	margin-left:0;
	margin-right:0;
	font-size:110%;
}

#container div.vimeo-player.blocked .message a {
	cursor: pointer;
	color:red !important;	
	border:none !important;
	text-decoration: none !important; 
}

#container div.vimeo-player.blocked .message a.vimeo-blocked {
	color:#fff !important;
	background-color:red;
	padding:4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	margin:6px auto 0 auto !important;
	display:inline-block;
}

#container div.vimeo-player.blocked .message a.pref,
#container div.vimeo-player.blocked .message a.ext {
	margin:6px auto 0 auto !important;
	display:inline-block;
}

#container div.vimeo-player.blocked .message a.pref,
#container div.vimeo-player.blocked .message a.button_link {
	color:#fff !important;
	background:rgba(0,0,0,.5);
	padding:4px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	margin:6px auto 0 auto !important;
	display:inline-block;
}

#container div.vimeo-player.blocked .message a.extlink {
	text-decoration:none;
}

#container div.vimeo-player.blocked .message span {
	padding:1px 4px !important;
	line-height:140%;
	background-color:rgba(0,0,0,.5) !important;
}

@media (max-width: 960px) {
	
	#container div.vimeo-player.blocked .message p {
		line-height:110%;	
		font-size:90%;
	}
	
}

/* Vimeo Blocked Ende */


.vimeo-player img {
	bottom: 0;
	display: block;
	left: 0;
	margin: auto;
	max-width: 100%;
	width: 100%;
	position: absolute;
	right: 0;
	top: 0;
	border: none;
	height: auto;
	cursor: pointer;
	-webkit-transition: .4s all;
	-moz-transition: .4s all;
	transition: .4s all;
}
    
.vimeo-player img:hover {
	-webkit-filter: brightness(75%);
}


/* ### RESPONSIVE VIDEO ENDE ### */








/* ### GMAP INFOFENSTER STYLES START ### */

.gm-style .gm-style-iw-t {
    position: absolute;
    width: 100%;
}

.gm-style .gm-style-iw-c {
    position: absolute;
    box-sizing: border-box;
    overflow: hidden;
    top: 0;
    left: 0;
    transform: translate(-50%,-100%);
    background-color: white;
    border-radius: 8px;
    padding: 12px;
    box-shadow: 0 2px 7px 1px rgba(0,0,0,0.3);
}

.gm-style .gm-style-iw-d {
    box-sizing: border-box;
    overflow: auto;
}

.gm-style .gm-style-iw-t::after {
    background: linear-gradient(45deg,rgba(255,255,255,1) 50%,rgba(255,255,255,0) 51%,rgba(255,255,255,0) 100%);
    box-shadow: -2px 2px 2px 0 rgba(178,178,178,.4);
    content: "";
    height: 15px;
    left: 0;
    position: absolute;
    top: 0;
    transform: translate(-50%,-50%) rotate(-45deg);
    width: 15px;
}

.gm-style-iw-a {
	position: absolute; 
	left: 15px; 
	top: 15px;
}
.gm-style-iw-t {
	right: 0px; 
	bottom: 59px;
}
.gm-style-iw gm-style-iw-c {
	max-width: 654px; 
	max-height: 541px;
}
.gm-style-iw-d {
	max-width: 618px; 
	max-height: 505px;
}


.fancybox_content {
	font-size:100%;
	width:auto;
	min-width:216px;
	height:auto;
	min-height:120px;
	overflow-y:auto;
	margin:0;
	padding:6px;
	display:inline-block;
	background-color:#fff;
}

.fancybox_content * {}

.fancybox_content p,
.fancybox_content p a {
	margin:0 !important;
	padding:0;
}

.fancybox_content a {
	color:#009AE7 !important;	
}

.fancybox_content img.pic_object {
	width:100%;
	max-width:216px;
	height:auto;
	margin-bottom:2px;
}

.fancybox_content {
	text-align:left;
}

.fancybox_content p {
	text-align:left;
	line-height:130% !important;
	margin:0 0 3px 0;
}

#container .fancybox_content p.object_name a {
	font-weight:600;	
	color:#555 !important;
	font-size:120%;
}

#container .fancybox_content p.object_location a {
	font-weight:400;	
	color:#555 !important;
	font-size:70%;
	line-height:100% !important;
}


/* ### GMAP INFOFENSTER STYLES ENDE ### */



/* ### GMAP CONTROL STYLES START ### */

#map-controls {
	display:none;
}

 .gm-style .controls {
        font-size: 28px;  /* this adjusts the size of all the controls */

        background-color: white;
        box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 4px -1px;
        box-sizing: border-box;
        border-radius: 2px;
        cursor: pointer;
        font-weight: 300;
		height: 1em;
        width: 1em;
        margin: 6px;
        text-align: center;
        user-select: none;
        padding: 2px;
      }
      .gm-style .controls button {
        border: 0;
        background-color: white;
        color: rgba(0, 0, 0, 0.6);
      }
      .gm-style .controls button:hover {
        color: rgba(0, 0, 0, 0.9);
      }

      .gm-style .controls.zoom-control {
        display: flex;
        flex-direction: column;
        height: auto;
      }
      .gm-style .controls.zoom-control button {
        font: 0.85em Arial;
        margin: 1px;
        padding: 0px;
      }
	  
	  .gm-style .controls.streetview-control {
        display: flex;
        flex-direction: column;
        height: auto;
      }

      .gm-style .controls.maptype-control {
        display: flex;
        flex-direction: row;
        width: auto;
      }
      .gm-style .controls.maptype-control button {
        display: inline-block;
        font-size: 0.5em;
        margin: 0 1px;
        padding: 0 6px;
      }
      .gm-style .controls.maptype-control.maptype-control-is-map .maptype-control-map {
        font-weight: 700;
      }
      .gm-style .controls.maptype-control.maptype-control-is-satellite .maptype-control-satellite {
        font-weight: 700;
      }

      .gm-style .controls.fullscreen-control button {
        display: block;
        font-size: 1em;
        height: 100%;
        width: 100%
      }
      .gm-style .controls.fullscreen-control .fullscreen-control-icon {
        border-style: solid;
        height: 0.25em;
        position:absolute;
        width: 0.25em;
      }
      .gm-style .controls.fullscreen-control .fullscreen-control-icon.fullscreen-control-top-left {
        border-width: 2px 0 0 2px;
        left: 0.1em;
        top: 0.1em;
      }
      .gm-style .controls.fullscreen-control.is-fullscreen .fullscreen-control-icon.fullscreen-control-top-left {
        border-width: 0 2px 2px 0;
      }
      .gm-style .controls.fullscreen-control .fullscreen-control-icon.fullscreen-control-top-right {
        border-width: 2px 2px 0 0;
        right: 0.1em;
        top: 0.1em;
      }
      .gm-style .controls.fullscreen-control.is-fullscreen .fullscreen-control-icon.fullscreen-control-top-right {
        border-width: 0 0 2px 2px;
      }
      .gm-style .controls.fullscreen-control .fullscreen-control-icon.fullscreen-control-bottom-left {
        border-width: 0 0 2px 2px;
        left: 0.1em;
        bottom: 0.1em;
      }
      .gm-style .controls.fullscreen-control.is-fullscreen .fullscreen-control-icon.fullscreen-control-bottom-left {
        border-width: 2px 2px 0 0;
      }
      .gm-style .controls.fullscreen-control .fullscreen-control-icon.fullscreen-control-bottom-right {
        border-width: 0 2px 2px 0;
        right: 0.1em;
        bottom: 0.1em;
      }
      .gm-style .controls.fullscreen-control.is-fullscreen .fullscreen-control-icon.fullscreen-control-bottom-right {
        border-width: 2px 0 0 2px;
      }

/* ### GMAP CONTROL STYLES ENDE ### */



/* ### GMAP DIRECTIONS STYLES START ### */

.adp,
.adp table  {
	font-family: 'Alegreya San';
	font-style: normal;
	font-weight: 400;
}

.adp b,.adp-list b {
	font-weight:400
}

.adp-warnbox {
margin:5px 0 3px 0
}

.warnbox-content {
	background:transparent;
	background:none;
}

.warnbox-c1,
.warnbox-c2 {
	background:transparent;
	background:none;
	font-size:1px;
	height:1px;
	margin-top:0;
	overflow:hidden
}

.warnbox-c1 {
	margin:0 2px
}

.warnbox-c2 {
	margin:0 1px
}

.adp-list {
	background:#fff;
	border:1px solid #cdcdcd;
	cursor:pointer;
	padding:4px;
	font-family: 'Alegreya San';
	font-style: normal;
	font-weight: 400;
}

.adp-fullwidth {
	width:100%
}

.adp-listsel {
	background:#eee;
	text-decoration:none
}

.adp-listheader {
	padding:4px
}

.adp-placemark {
	background:#eee;
	border:1px solid silver;
	color:#000;
	cursor:pointer;
	margin:10px 0px 10px 0px;
	vertical-align:middle
}

.adp-placemark tr td,
.adp-placemark .adp-text {
	vertical-align:middle;
	padding:4px !important;
}

img.adp-marker {
	width:22px;
	height:40px
}

img.adp-marker2 {
	width:27px;
	height:43px
}

.adp-details,
.adp-legal {
	color:#676767
}

.adp-summary {
	padding:0 3px 3px 3px
}

.adp-step,
.adp-substep {
	border-top:1px solid #cdcdcd;
	margin:0;
	padding:6px 3px 3px 3px !important;
	vertical-align:middle;
	line-height:120%;
}

.adp-list img,
.adp-substep img {
	width:15px;
	height:15px;
	position:relative;
	top:2px;
	margin-right:3px
}

.adp-distance {
	white-space:nowrap
}

.adp-step,
.adp-text {
	width:100%;
}

.adp-directions {
cursor:pointer;
	border-collapse:collapse
}

.adp-list .gm-arrow {
	width:8px;
	height:9px;
	margin:5px 0 3px
}

.adp-agencies {
	font-size:80%;
	margin:5px 0
}
.adp-summary-duration {
	float:right;
	margin-left:7px;
	white-space:nowrap
}

.adp-substep .gm-line {
	margin-right:4px
}

.adp-substep .adp-stepicon {
	overflow:hidden;
	position:relative;
	top:0;
	left:0;
	width:16px;
	height:16px
}

.adp-substep .adp-stepicon .adp-maneuver {
	background-size:19px 630px;
	position:absolute;
	left:0;
	width:16px;
	height:16px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-ferry {
	background-position:0 -614px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-ferry-train {
	background-position:0 -566px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-merge {
	background-position:0 -143px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-straight {
	background-position:0 -534px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-fork-left {
	background-position:0 -550px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-ramp-left {
	background-position:0 -598px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-roundabout-left {
	background-position:0 -197px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-turn-left,
.adp-substep .adp-stepicon .adp-maneuver.adp-keep-left {
	background-position:0 -413px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-turn-sharp-left {
	background-position:0 0
}

.adp-substep .adp-stepicon .adp-maneuver.adp-turn-slight-left {
	background-position:0 -378px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-uturn-left {
	background-position:0 -305px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-fork-right {
	background-position:0 -499px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-ramp-right {
	background-position:0 -429px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-roundabout-right {
	background-position:0 -232px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-turn-right,
.adp-substep .adp-stepicon .adp-maneuver.adp-keep-right {
	background-position:0 -483px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-turn-sharp-right {
	background-position:0 -582px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-turn-slight-right {
	background-position:0 -51px
}

.adp-substep .adp-stepicon .adp-maneuver.adp-uturn-right {
	background-position:0 -35px
}

div#route > div {
	font-size:120% !important;
	color:rgba(76,76,72,1) !important;
	font-family: Tahoma, Helvetica, Verdana, Arial, san-serif;
	font-weight:400 !important;	
}

div#route div.adp-summary {
	font-size:140% !important;
}

div#route div.adp-substep {
	font-size:140% !important;
}

/* ### GMAP DIRECTIONS STYLES ENDE ### */





/* GMAP Blocked Start */

#box_karte.blocked {
	position:relative;
}

#box_karte.blocked .message {
	position: absolute;
	top: 1px;
	left: 1px;	
	width: calc(100% - 60px);
	height: calc(100% - 60px);		
	z-index:100 !important;
	border:0px solid red !important;	
	background:rgba(0,0,0,.5) url(/gif/bg-routenplaner.jpg) no-repeat center center !important;
	color:#fff !important;
	text-align:center;
	padding:30px;
}

#box_karte.blocked #karten_box {
	background:rgba(0,0,0,.75);
}

#box_karte.blocked .message p,
#box_karte.blocked .message * {
	color:#fff !important;
}

#box_karte.blocked .message a {
	cursor: pointer;
	color:red !important;
}

#box_karte.blocked .message a.googlemaps-blocked {
	color:#fff !important;
	background-color:red;
	padding:6px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	margin-bottom:6px;
	display:inline-block;
}

/* GMAP Blocked Ende */




/* Buttons Start */

#content .link_button {
	width:auto;
	height:auto;
	display:inline-block;
	text-align:center;
	text-decoration:none !important;
	cursor:pointer;
	padding:6px;
	font-size:100%;		
	color:rgba(0,123,183,1);
	border:2px solid rgba(0,123,183,1);	
	background-color:#fff;
	-webkit-transition: color 400ms ease-out, background-color 200ms ease-in;
    transition: color 400ms ease-out, background-color 200ms ease-in;	
}

#content :hover.link_button,
#content a:hover.link_button {
	text-decoration:none;
	color:#fff !important;	
	background-color:rgba(0,123,183,1);	
	padding:6px;
}

#content :hover.link_button * {
	text-decoration:none;
	color:#fff !important;
}

#content .link_button_small {
	width:auto;
	height:auto;
	display:inline-block;
	text-align:center;
	text-decoration:none !important;
	cursor:pointer;
	font-size:90%;	
	padding:6px;
	color:rgba(0,123,183,1);
	border:1px solid rgba(0,123,183,1);	
	background-color:#fff;
	-webkit-transition: color 400ms ease-out, background-color 200ms ease-in;
    transition: color 400ms ease-out, background-color 200ms ease-in;
	font-weight:400 !important;
}

#content :hover.link_button_small,
#content a:hover.link_button_small {
	text-decoration:none;
	color:#fff !important;
	background-color:rgba(0,123,183,1);
	padding:6px;
	
}

#content :hover.link_button_small * {
	text-decoration:none;
	color:#fff !important;
}

/* Buttons Ende */










/* ### KLARO START ### */



.cookie_klaro .cookie-modal,
.cookie_klaro .cookie-notice {
	font-size: 100%;
}

.cookie_klaro .cookie-modal .switch, 
.cookie_klaro .cookie-notice .switch {
	position: relative;
	display: inline-block;
	width: 50px;
	height: 30px;
}

.cookie_klaro .cookie-modal .cm-app-input:checked + .cm-app-label .slider, 
.cookie_klaro .cookie-notice .cm-app-input:checked + .cm-app-label .slider {
	background-color: #0885BA;
}

.cookie_klaro .cookie-modal .cm-app-input.required:checked + .cm-app-label .slider, 
.cookie_klaro .cookie-notice .cm-app-input.required:checked + .cm-app-label .slider {
	opacity: 0.8;
	background-color: #006A4E;
	cursor: not-allowed;
}

.cookie_klaro .cookie-modal .slider, 
.cookie_klaro .cookie-notice .slider {
	box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.2), 5px 5px 10px 0 rgba(0, 0, 0, 0.19);
}

.cookie_klaro .cookie-modal .cm-app-input, 
.cookie_klaro .cookie-notice .cm-app-input {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	width: 50px;
	height: 30px;
}

.cookie_klaro .cookie-modal .cm-app-label,
.cookie_klaro .cookie-notice .cm-app-label {}

.cookie_klaro .cookie-modal .cm-app-label .slider,
.cookie_klaro .cookie-notice .cm-app-label .slider {
	position: absolute;
	cursor: pointer;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: #ccc;
	-webkit-transition: .4s;
	transition: .4s;
	width: 50px;
	display: inline-block;
}

.cookie_klaro .cookie-modal .cm-app-label .slider:before,
.cookie_klaro .cookie-notice .cm-app-label .slider:before {
	position: absolute;
	content: "";
	height: 20px;
	width: 20px;
	left: 5px;
	bottom: 5px;
	background-color: white;
	-webkit-transition: .4s;
	transition: .4s;
}

.cookie_klaro .cookie-modal .cm-app-label .slider.round,
.cookie_klaro .cookie-notice .cm-app-label .slider.round {
	border-radius: 30px;
}

.cookie_klaro .cookie-modal .cm-app-label .slider.round:before,
.cookie_klaro .cookie-notice .cm-app-label .slider.round:before {
	border-radius: 50%;
}

.cookie_klaro .cookie-modal .cm-app-label input:focus + .slider,
.cookie_klaro .cookie-notice .cm-app-label input:focus + .slider {
	box-shadow: 0 0 1px #0885BA;
}

.cookie_klaro .cookie-modal .cm-app-label input:checked + .slider:before,
.cookie_klaro .cookie-notice .cm-app-label input:checked + .slider:before {
	-webkit-transform: translateX(20px);
	-ms-transform: translateX(20px);
	transform: translateX(20px);
}

.cookie_klaro .cookie-modal .cm-app-input:focus + .cm-app-label .slider,
.cookie_klaro .cookie-notice .cm-app-input:focus + .cm-app-label .slider {
	box-shadow: 0 4px 6px 0 rgba(125, 125, 125, 0.2), 5px 5px 10px 0 rgba(125, 125, 125, 0.19);
}

.cookie_klaro .cookie-modal .cm-app-input:checked + .cm-app-label .slider:before,
.cookie_klaro .cookie-notice .cm-app-input:checked + .cm-app-label .slider:before {
	-webkit-transform: translateX(20px);
	-ms-transform: translateX(20px);
	transform: translateX(20px);
}

.cookie_klaro .cookie-modal .slider,
.cookie_klaro .cookie-notice .slider {
	box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.2), 5px 5px 10px 0 rgba(0, 0, 0, 0.19);
}

.cookie_klaro .cookie-modal a,
.cookie_klaro .cookie-notice a {
	color: #00AA3E;
	font-size:105% !important;
	text-decoration: none;
	margin:0 !important;
}

.cookie_klaro .cookie-modal p,
.cookie_klaro .cookie-modal strong,
.cookie_klaro .cookie-modal h1,
.cookie_klaro .cookie-modal h2,
.cookie_klaro .cookie-modal ul,
.cookie_klaro .cookie-modal li,
.cookie_klaro .cookie-notice p,
.cookie_klaro .cookie-notice strong,
.cookie_klaro .cookie-notice h1,
.cookie_klaro .cookie-notice h2,
.cookie_klaro .cookie-notice ul,
.cookie_klaro .cookie-notice li {
	font-family: inherit;
	color: #555;	
}

.cookie_klaro .cookie-modal p,
.cookie_klaro .cookie-modal strong,
.cookie_klaro .cookie-modal h1,
.cookie_klaro .cookie-modal h2,
.cookie_klaro .cookie-modal ul,
.cookie_klaro .cookie-modal li {
	color: #fff !important;
}

.cookie_klaro .cookie-modal p,
.cookie_klaro .cookie-modal li {
	line-height:140%;
	font-size:100%;
}


.cookie_klaro .cookie-modal p,
.cookie_klaro .cookie-modal h1,
.cookie_klaro .cookie-modal h2,
.cookie_klaro .cookie-modal ul,
.cookie_klaro .cookie-modal li,
.cookie_klaro .cookie-notice p,
.cookie_klaro .cookie-notice h1,
.cookie_klaro .cookie-notice h2,
.cookie_klaro .cookie-notice ul,
.cookie_klaro .cookie-notice li {
	display: block;
	text-align: left;
	margin: 0;
	padding: 0;
	margin-top: 7px;
}

.cookie_klaro .cookie-modal .cm-link,
.cookie_klaro .cookie-notice .cm-link {
	padding-left: 4px;
	vertical-align: middle;
}

.cookie_klaro .cookie-notice .cm-link.cm-learn-more {
	padding:8px;
	display:inline-block;
	background-color:#555;
	color:#fff;
	vertical-align: top;
	margin:0;
	font-size:100% !important;
	font-weight:400 !important;
}

.cookie_klaro .cookie-modal .cm-btn,
.cookie_klaro .cookie-notice .cm-btn {
	background: #555;
	color: #fff;
	border-radius: 0px;
	padding: 8px;
	margin-right: 5px;
	border: 0;
	cursor:pointer;
}

.cookie_klaro .cookie-modal .cm-btn:disabled,
.cookie_klaro .cookie-notice .cm-btn:disabled {
	opacity: 0.5;
}

.cookie_klaro .cookie-modal .cm-btn.cm-btn-sm,
.cookie_klaro .cookie-notice .cm-btn.cm-btn-sm {
	font-size: 100%;
}

.cookie_klaro .cookie-modal .cm-btn.cm-btn-close,
.cookie_klaro .cookie-notice .cm-btn.cm-btn-close {
	background: #eee;
	color: #555;
}

.cookie_klaro .cookie-modal .cm-btn.cm-btn-success,
.cookie_klaro .cookie-notice .cm-btn.cm-btn-success {
	background: #00AA3E;
}

.cookie_klaro .cookie-modal .cm-btn.cm-btn-info,
.cookie_klaro .cookie-notice .cm-btn.cm-btn-info {
	background: #0885BA;
}

.cookie_klaro .cookie-modal .cm-btn.cm-btn-right,
.cookie_klaro .cookie-notice .cm-btn.cm-btn-right {
	float: right;
	margin-left: 5px;
	margin-right: 0;
}

.cookie_klaro .cookie-notice .cm-btn-danger {
	background-color:red;
}

.cookie_klaro .cookie-modal {
	width: 100%;
	height: 100%;
	position: fixed;
	overflow: hidden;
	left: 0;
	top: 0;
	z-index: 9999999 !important;
}

.cookie_klaro .cookie-modal .cm-bg {
	background: rgba(255,255,255,.85);
	height: 100%;
	width: 100%;
	position: fixed;
	top: 0 !important;
	left: 0;
}

.cookie_klaro .cookie-modal .cm-modal {
	z-index: 1001;
	box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.2), 5px 5px 10px 0 rgba(0, 0, 0, 0.19);
	width: 90%;
	max-height: 98%;
	top: 50%;
	left:5%;
	transform: translateY(-50%);
	position: fixed;
	overflow: auto;
	background: #333;
	color: #fff;
}


@media (min-width: 1024px) {
	.cookie_klaro .cookie-modal .cm-modal {
		border-radius: 4px;
		position: relative;
		margin: 0 auto;
		max-width: 640px;
		height: auto;
		width: auto;
	}
}

.cookie_klaro .cookie-modal .cm-modal .hide {
	border: none;
	background: none;
	position: absolute;
	top: 20px;
	right: 20px;
	z-index: 1;
}

.cookie_klaro .cookie-modal .cm-modal .hide svg {
	stroke: #eee;
}

.cookie_klaro .cookie-modal .cm-modal .cm-footer {
	padding:10px;
	border-top: 1px solid #555;
}

.cookie_klaro .cookie-modal .cm-modal .cm-footer-buttons::before,
.cookie_klaro .cookie-modal .cm-modal .cm-footer-buttons::after {
	content: " ";
	display: table;
}

.cookie_klaro .cookie-modal .cm-modal .cm-footer-buttons::after {
	clear: both;
}

.cookie_klaro .cookie-modal .cm-modal .cm-footer .cm-powered-by {
	font-size:100%;
	padding-top: 4px;
	text-align: center;
}

.cookie_klaro .cookie-modal .cm-modal .cm-footer .cm-powered-by a {
	color: #555;
}

.cookie_klaro .cookie-modal .cm-modal .cm-header {
	padding:10px;
	padding-right: 24px;
	border-bottom: 1px solid #555;
}

.cookie_klaro .cookie-modal .cm-modal .cm-header h1 {
	margin: 0 0 6px 0;
	font-size:220%;
	display: block;
}

.cookie_klaro .cookie-modal .cm-modal .cm-header h1.title {
	padding-right: 20px;
}

.cookie_klaro .cookie-modal .cm-modal .cm-header p {
	margin: 0;
	font-size:130% !important;
	display: block;
}

.cookie_klaro .cookie-modal .cm-modal label.cm-app-label {
	font-size:120% !important;
}
.cookie_klaro .cookie-modal .cm-modal p.cm-app-description,
.cookie_klaro .cookie-modal .cm-modal p.purposes {
	font-size:110% !important;
}

.cookie_klaro .cookie-modal .cm-modal p.purposes {
	margin:0 !important;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body {
	padding:10px;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body ul {
	display: block;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body span {
	display: inline-block;
	width: auto;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body ul.cm-apps {
	padding: 0;
	margin: 0;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body ul.cm-apps li.cm-app {
	position: relative;
	line-height: 20px;
	vertical-align: middle;
	padding-left: 60px;
	min-height: 40px;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body ul.cm-apps li.cm-app:first-child {
	margin-top: 0;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body ul.cm-apps li.cm-app .switch {
	position: absolute;
	left: 0;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body ul.cm-apps li.cm-app p {
	margin-top: 0;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body ul.cm-apps li.cm-app p.purposes {
	font-size:100%;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body ul.cm-apps li.cm-app.cm-toggle-all {
	border-top: 1px solid #555;
	padding-top:10px;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body ul.cm-apps li.cm-app span.cm-app-title {
	font-weight: 600;
	color:#fff !important;
}

.cookie_klaro .cookie-modal .cm-modal .cm-body ul.cm-apps li.cm-app span.cm-opt-out,
.cookie_klaro .cookie-modal .cm-modal .cm-body ul.cm-apps li.cm-app span.cm-required {
	padding-left: 2px;
	font-size:100%;
}


.cookie_klaro .cookie-notice {	
	z-index:99999999;		
	position:fixed;	
	left:calc(50% - 260px);
	/*
	bottom:50px;
	*/
	bottom:33%;
	top:auto;
	width:460px;
	height:auto;	
	padding:16px 30px;		
	font-size:100%;
	line-height:120%;	
	text-align:center;	
	border:2px solid rgba(var(--color-darkestgrey-rgb),1) !important;
	color:rgba(var(--color-darkestgrey-rgb),1) !important;
	border-radius: 2px;
	background:rgba(250,250,250,1);
	box-shadow: 0 4px 6px 0 rgba(0, 0, 0, 0.2), 5px 5px 10px 0 rgba(0, 0, 0, 0.19);
	
}

@media (min-width: 990px) {
	.cookie_klaro .cookie-notice {		
		display:block !important;
		text-align:center !important;
	}
}


@media (max-width: 616px) {
	.cookie_klaro .cookie-notice {
		padding:10px 14px;		
		left:50%;
		right:auto;
		bottom:10px;
		width:calc(96% - 28px);
		margin-left:-48%;		
		word-wrap: break-word;	
	}
}

.cookie_klaro .cookie-notice .cn-body {
	margin:0 auto !important;	
	text-align:left !important;
}

.cookie_klaro .cookie-notice .cn-body p {	
	margin-bottom: 5px;
	line-height:140%;
	font-size:130%;
}

.cookie_klaro .cookie-notice .cn-body p.cn-changes {
	text-decoration: underline;
}

.cookie_klaro .cookie-notice .cn-body strong {}

.cookie_klaro .cookie-notice .cn-body .cn-learn-more {
	display: inline-block;
}

.cookie_klaro .cookie-notice .cn-body p.cn-ok {
	padding-top: 5px;
	margin: 0;
}

.cookie_klaro .cookie-notice-hidden {
	display: none !important;
}

.cookie_klaro .cookie-notice .cn-body p.cn-ok {
	text-align:center;
	display: flex;
	flex-direction:column;
	flex-wrap: wrap;
	justify-content: center;
	flex-flow: row wrap;
}


.cookie_klaro .cookie-notice .cn-body p.cn-ok button.cm-btn-danger,
.cookie_klaro .cookie-notice .cn-body p.cn-ok button.cm-btn-success,
.cookie_klaro .cookie-notice .cn-body p.cn-ok a.cm-link.cm-learn-more {
	cursor: pointer;
	transition: all 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;	
	color:rgba(var(--color-darkest-grey-rgb),1);	
	border:none !important; 	
	border-radius: 2px;
	overflow:hidden;	
	display: inline-block;
	position: relative;
	padding: 7px 14px;
	width:auto;	
	margin:6px auto;
	overflow-wrap: break-word !important;	
	line-height:100% !important; 	
}

.cookie_klaro .cookie-notice .cn-body p.cn-ok button.cm-btn-danger:hover,
.cookie_klaro .cookie-notice .cn-body p.cn-ok button.cm-btn-success:hover,
.cookie_klaro .cookie-notice .cn-body p.cn-ok a.cm-link.cm-learn-more:hover {
	background-color: transparent;
	text-shadow: none;
}

.cookie_klaro .cookie-notice .cn-body p.cn-ok button.cm-btn-success {	
	background: rgba(var(--color-darkgrey-rgb),1);
	border: 2px solid rgba(var(--color-darkgrey-rgb),1);	
	color:rgba(255,255,255,1) !important;	
}

.cookie_klaro .cookie-notice .cn-body p.cn-ok button.cm-btn-success:hover {
	background:rgba(54,193,64,1);
	border: 2px solid rgba(54,193,64,1);
	color:rgba(255,255,255,1) !important;
}

.cookie_klaro .cookie-notice .cn-body p.cn-ok button.cm-btn-success:before {}


.cookie_klaro .cookie-notice .cn-body p.cn-ok button.cm-btn-danger {	
	background: rgba(var(--color-darkgrey-rgb),.1);
	border: 2px solid rgba(var(--color-darkgrey-rgb),0);
	color:rgba(var(--color-darkestgrey-rgb),1) !important;		
	border:none !important; 	
}

.cookie_klaro .cookie-notice .cn-body p.cn-ok button.cm-btn-danger:hover {	
	background: rgba(244,73,73,1);
	border: 2px solid rgba(244,73,73,1);
	color:rgba(255,255,255,1) !important;	
}

.cookie_klaro .cookie-notice .cn-body p.cn-ok button.cm-btn-danger:before {}

.cookie_klaro .cookie-notice .cn-body p.cn-ok a.cm-link.cm-learn-more {		
	background: rgba(var(--color-darkgrey-rgb),.1);
	border: 2px solid rgba(var(--color-darkgrey-rgb),.1) !important;
	color:rgba(var(--color-darkestgrey-rgb),1) !important;		
	margin-top:5px !important;
	padding:5px 14px !important;
	height:100% !important;	
	line-height:100% !important;	
}

.cookie_klaro .cookie-notice .cn-body p.cn-ok a.cm-link.cm-learn-more:hover {
	background: rgba(var(--color-darkgrey-rgb),.25);
	border: 2px solid rgba(var(--color-darkgrey-rgb),.1) !important;
	color:rgba(var(--color-darkestgrey-rgb),1) !important;	
	
}


/* ### KLARO ENDE ### */


body.modal-open { overflow: hidden; }

/*
.cookie_klaro {
	width:100% !important;
	height:100% !important;
	top:0;
	left:0;
	position:absolute !important;
	z-index:99999 !important;
	background-color:rgba(128,128,128,.125);
	overflow: hidden;
}
*/


#inhalt div.newsmeldung {
	border:2px dotted #ff7100;
	background-color:rgba(255, 113, 0, 0);
	padding:8px;
	margin-bottom:16px;
}

#inhalt div.newsmeldung p.datum {
	font-size:90%;
	margin-bottom:2px;
}

#inhalt div.newsmeldung h2 {
	margin-bottom:4px;
}

