body { 	
	background: #fff url(img/pattern.gif) repeat center center;
	margin: 0; padding: 0;
	height:100%;
	width:100%;
}


/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
	Layout Blocks
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
.wrapper { /* Holds the page items in place */
	XXmin-height:90%;
	box-shadow: 0px 20px 40px -20px rgba(0, 0, 0, 0.4);	

}
.wrapper, #topmenubox .m_inner { width: 90%; max-width: 1500px; margin: 0 auto 0 auto; background:white;}
.topspacer {padding-top: 200px;  width:100%; }

.topheader {position:relative;  padding-bottom: 12%; width:100%; background: #fff url(img/header.jpg) no-repeat fixed center top; background-size: 100% auto, auto;}
.topheader p {bottom:10%; width:90%; position:absolute; text-align: center; padding: 0 5%; font-size:1.6em; line-height:110%; color:#fff; text-shadow: 0px 2px 30px #000; }

.innerheader {height:400px; width:100%; background: #fff url(slides/01b.jpg) no-repeat center center;}
.flex-direction-nav {display:none;}
.flexslider { margin: 0 0 0 0 ! important;}


/*frontpage*/
#topparallax {width:100%; position:relative; padding-top:41%; background: #fff url(img/parallaxheader2.jpg) no-repeat; background-position: center 0; background-size: 100% auto, auto;}
#topparallax .ptext {bottom:20%; width:90%; position:absolute; text-align: center; padding: 3% 5%; background: rgba(0,0,0,0.4); border-top: 1px solid #fff; border-bottom: 1px solid #fff;  }
#topparallax .ptext * {text-shadow: 0px 2px 30px #000;  color: #fff ! important;}
#topparallax a.topdown img {width:100px; margin-top: 20px}

.contentbox { background: #fff; padding: 20px 4%}





/*===========================================================
Contentbereich
*/

.container {margin: 0 auto 0 auto; width: 100%; max-width:1200px; padding-top: 30px;}



/*====================================================
Alles rechts neben left
ab hier: 1/3 grid
*/
.mainbox {}

.content { /* main content */
	width: 73%;
	float: left;
	display:inline;
	margin-left: 0;
}

.usegrid3 .content.contentnarrow {width: 66%;}

.mainbox .contentwide  {width:100%; margin:0 0 0 0;}






#rightbox { width: 25%; float: right; display:inline; border-left:1px #ddd solid; }
.usegrid3 #rightbox {width: 30%;}

#rightbox .inner { margin: 0 3% 3px 3%; font-size:0.9em; line-height:135%}
#rightbox .inner img { max-width:100%; height:auto ! important;}




.clearcontent {height:60px; clear:both; }

.footerbox {min-height:30px; font-size:12px; color: #333; width: 100%; background: #DF952C; padding-top:8px;}
.footerbox .left {width: 100%; margin:0; float:right;}
.footerbox  .center {width: 100%; margin:0;}

#gototopswitch {float:right; margin: 0;}







/* Top and Menu Box */
#topmenubox {width: 100%; height:200px; margin:0 0 0 0; position:fixed; z-index:5000; width: 100%; top:0; left:0%;  transition: 0.5s all;}
#topmenubox .m_inner {position:relative; height:100%; background: #fff; }
#topmenubox a.logo img {max-height:80%; max-width:100%; position: absolute; left: 7%; bottom:70px; top:5px;}
#topmenubox.reduced {height:130px; transition: 0.5s all;}
#topmenubox.reduced a.logo img {max-height:65%; max-width:100%; position: absolute; left: 4%; bottom:65px; top:10px;}

/* Search Box in header */
li.search_box_li a {border: none ! important;}

.menuebox {width: 75%; height:100%; float:left; position:relative;} 
.toggleMobileMenu {display:none;}
#openrightboxswitch, #closerightboxswitch{display:none;}

/* nav: see below */




/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  */
.breadcrumbs {
	height:30px;
	line-height:100%;
	margin: 0 0 0 0;
	padding: 3px 0 3px 0;
	clear:both;	
}

.innerbc {
	font-size:14px;
	margin:10px 0 0 25%;
	XXwidth: 450px;
}

.breadcrumbs .innerbc span {
	background: transparent url(img/bclink.gif) no-repeat; 
	padding: 6px 2px 0px 12px; font-weight: normal; }
	
.breadcrumbs .innerbc a {
	padding:1px;
	border-bottom: 1px dotted #505567;
	text-decoration: none;
}
.breadcrumbs .innerbc a:hover {border-bottom: 1px solid #505567;}
	
.breadcrumbs .innerbc .menu-current a{
	color: #000000;
}


.frontpage .breadcrumbs {display:none;}

#aprevnext {display:block; width:90px; height:27px; float:right;}
#aprevnext a {display:block; width:40px; height:27px; float:right; opacity:0.5; border:none;}
#aprevnext a.aprev {background: url(img/prev.png) no-repeat center top;  }
#aprevnext a.anext {background: url(img/next.png) no-repeat center top;  }
#aprevnext a:hover {opacity:0.8}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
	####	Header Menu #####
	#######################

	Horizontal Drop-Down Menu based off :
	http://www.tanfa.co.uk/css/examples/menu/tutorial-h.asp
	
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~  */


/* Remove List Formattings
~~~~~~~~~~~~~~~~~~~~  */
#nav {
	position: absolute;
	right: 0;
	bottom:0;	
	border: 0;	
	padding:0;
	background: #fff url(img/btback1.png) top left repeat-x;
	width:100%;
}

#nav ul,  #nav2 ul {
	/*list-style-type: none;
	list-style-image: none;*/
	margin: 0;
	padding: 0;
	width: 100%;
	max-width:1500px;
	position: relative;
	z-index: 800;
	background: #fff url(img/btback1.png) top left repeat-x;

}
#nav ul li,  #nav2 ul li {
	/*list-style-type: none;
	list-style-image: none;*/
	margin: 0;
	padding: 0;
}


/* Root Level Link Formatting */
#nav ul li {float: left; display:inline; }
#nav ul li a {display: block; XXtext-shadow: 1px 2px 8px #000; XXtext-shadow: 1px 4px 4px #000; font-size: 14px; border-right:1px #fff solid; color: #fff; text-decoration: none; XXfont-weight: bold; background: #fff url(img/btback1.png) top left repeat-x; }
#nav ul li a span {display:block; padding: 4px 10px 2px 10px; }
/* Root Level link hover */
#nav ul li a:hover, #nav li a:focus, #nav li a:active, #nav ul li a.active, #nav a.menu-current, #nav a.menu-parent {color: #fff; background: #fff url(img/btback2.png) top left repeat-x;  }


/*Current page Customisations*/
#nav a.menu-current		{font-weight: normal; background: #fff url(img/btback2.png) top left repeat-x;}



/* 2nd Child menu */
#nav  li ul {position: absolute; right:10000px; width: 200px; opacity:0.0; text-transform: none; border-bottom: 1px solid #fff; border-left: 1px solid #fff; font-size: 13px; background: #DF922F; color: #fff; box-shadow: 0px 10px 10px -4px rgba(0, 0, 0, 0.4);}
#nav  li ul li {text-align: left; font-weight: normal; margin: 0; padding: 0; line-height: 1.2em;  }
#nav  li ul li a {width: 200px;  text-align:left; height:auto; text-shadow: none; margin:0; padding: 0; color: #fff; border-top: 1px solid #fff; font-weight: normal; font-size: 14px; background: none;}
#nav  li ul li a span {display:block; padding:8px; }


/* 2nd Child link hover */
#nav  li ul a:hover,  #nav  li ul a.menu-current {  text-shadow: 1px 2px 4px #000;}
#nav  li ul a.menu-expand {background: transparent url(img/arr-right.png) no-repeat right 5px ; }
#nav  li ul a.menu-parent {background: #333 url(img/arr-right.png) no-repeat right 5px; }

/* Show and hide */
#nav  li:hover ul, #nav  li a:focus ul, #nav li.tabselected ul {right:-20px; XXmargin: -3px 0 0 0; opacity:1; transition:0.5s opacity;}
#nav  li ul ul { margin-left: -10000px; opacity:0.0; transition:0.5s opacity;}
#nav  li:hover ul ul, #nav  li.subMenu ul ul { margin-left: -10000px; opacity:0.0; transition:0.5s opacity;}
#nav  li:hover>ul, #nav  li li:hover>ul { opacity:1; margin-left: 0;  transition:0.5s opacity; z-index: 1000;}
#nav  ul li ul li:hover>ul {margin-left: -30%;  opacity:0.9;}



/* 3rd Child Menu Appreances */
#nav  li ul li ul	{ width: 180px; margin: 10px 0 0 -40%; z-index: 2000; }
#nav  li ul li ul li	{width: 100%;}
#nav  li ul li ul li a 	{ width: 100%;}



/* Positioning the Pop-out Drops */
#nav li {position: relative;}

#nav ul ul ul {
	position: absolute;
	top: 1px;
	left: 100%;
}



/* Better: */
#nav li:hover {
	z-index: 1000;	/* ...and here. this makes sure active item is always above anything else in the menu */
	white-space: normal;/* required to resolve IE7 :hover bug (z-index above is ignored if this is not present)
							see http://www.tanfa.co.uk/css/articles/pure-css-popups-bug.asp for other stuff that work */
}



/* end menu */
/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */

#footer_menu {padding-bottom: 10px;}
#footer_menu a { display: inline-block; padding: 2px 10px; border-right: 0px solid #fff; color:#fff;}
#footer_menu a:first-child {border-left: 0px solid #fff;}
#footer_menu a.menu-current {font-weight:bold; color: white;}

	
/*Extra cookie_permission */
#cookie_permission {position:fixed; top:0; right:0; z-index:9950; width: 200px; padding:10px; background: #555; text-align:center; font-size: 0.9em; line-height:120%; border-radius: 0 0 0 25px; box-shadow: 0 10px 50px 0 rgba(0, 0, 0, 0.2); }
#cookie_permission p , #cookie_permission a {color:#fff;}
#cookie_permission a.cookieaccepted {color:#000; background: #eeb300; display:block; padding:5px; border-radius: 15px; border: 1px solid #fff; font-weight:bold;}




/*Extra Colorpicker */
#colorpickericon {display:block; width:24px; height:24px; background: url(img/colorpicker.png) no-repeat; z-index:5000;
position: absolute; top:230px; right:0; cursor:pointer; }
#colorpicker {display:none; width:90px; background: #ddd; position: absolute; top:100px; right:0; z-index:5000; font-size:12px;line-height:100%; box-shadow: 0 20px 50px 0 rgba(0, 0, 0, 0.1);}
.pickerfield {width:100%; height:40px; float:left;}

.pickerfield input[type="color"] {width:100%; height:20px; padding:0; border:0; cursor:pointer;}
.pickerfield input[type="text"] {width:90%; height:20px; padding:1px 3%; border: 1px solid #999;; cursor:text;}


a.colpick-button {display:block; clear:both; width:80%; margin:10px auto; padding:3px; background: rgba(255,255,255,0.2); text-align:center; border: 1px solid #666; border-radius: 15px;  cursor:pointer;}
#colorpicker-info {display:none; position: absolute; width:160px; padding:10px; top:0; left:-180px; background: #eee; box-shadow: 0 20px 50px 0 rgba(0, 0, 0, 0.1);}

#gototopswitch {float:right; margin:0;}

/* Login Box */

#showlogin {display:block; float:left; position:relative;  width:30px; text-align:right; margin:10px 6px 0 0; }
#login-box {position:absolute; width:250px; left:10px; top:-10px; padding:5px; font-size:11px; z-index:2000; background: #eee; box-shadow: 0 5px 20px 0 rgba(0, 0, 0, 0.2);}
#login-box td {vertical-align: top; }
#login-box .loginsubmit {border:0;}
#login-box .inputfield {width:100px; border: 1px solid #c9e8f9; padding:1px; line-height: 1em;}

/*COuld bee visible on Desktop*/
#nav2 {width:250px; height: auto; position:absolute; left:-300px; }	

.showonmobiles  {display:none;}

/*frontteaserblock*/

.frontteaserblock {margin:50px 0; width:100%; overflow:hidden;}
.frontteaserblock div {width:101%;}
.frontteaserblock div a {float:left; display:block; width:23.8%; margin: 0 1% 10px 0; padding-bottom:10px; opacity:0.9; background:#fff; border-bottom: 2px solid #eee; }
.frontteaserblock div a span {display:block;}
.frontteaserblock div a span.picturebackground {width:100%; background-size: 100% auto, auto; background-position: center center;  transition:0.6s all;}
.frontteaserblock div a img {width:100%; float:left; opacity:1; transition:0.9s all;}
.frontteaserblock div a .mt_title {margin:10px 5px 0 10px; height:40px; font-size:16px; line-height:120%; font-weight:bold; color:black; }
.frontteaserblock div a .mt_desc {margin:0 5px 0 10px; XXheight:130px; line-height:120%; font-size:0.9em; color:black;}

.frontteaserblock div a:hover  {opacity:1;}
.frontteaserblock div a:hover span.picturebackground {width:100%; background-size: 180% auto, auto; }
.frontteaserblock div a:hover img {opacity:0;}

/*    Button    */

.button {
	-moz-box-shadow:inset 0px 1px 0px 0px #333;
	-webkit-box-shadow:inset 0px 1px 0px 0px #333;
	box-shadow:inset 0px 1px 0px 0px #333;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #333), color-stop(1, #004172) );
	background:-moz-linear-gradient( center top, #333 5%, #004172 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#333', endColorstr='#004172');
	background-color:#004172;
	-webkit-border-top-left-radius:6px;
	-moz-border-radius-topleft:6px;
	border-top-left-radius:6px;
	-webkit-border-top-right-radius:6px;
	-moz-border-radius-topright:6px;
	border-top-right-radius:6px;
	-webkit-border-bottom-right-radius:6px;
	-moz-border-radius-bottomright:6px;
	border-bottom-right-radius:6px;
	-webkit-border-bottom-left-radius:6px;
	-moz-border-radius-bottomleft:6px;
	border-bottom-left-radius:6px;
	text-indent:0;
	display:inline-block;
	color:#ffffff;
	font-family:Verdana;
	font-size:12px;
	font-weight:bold;
	font-style:normal;
	height:30px;
	line-height:30px;
	width:183px;
	text-decoration:none;
	text-align:center;
	text-shadow:1px 1px 0px #b23e35;
}
.button:hover {
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #eee), color-stop(1, #eee) );
	background:-moz-linear-gradient( center top, #eee 5%, #eee 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#eee', endColorstr='#eee');
	background-color:#eee;
}
.button:active {
	position:relative;
	top:1px;
}
.button a:link, a:visited, a strong {
	color: #fff;
}
.button a:hover {
	text-decoration:underline;
	color: #fff;
}
/* Button Ende  */


/*    ButtonOK    */

.buttonOK {
	-moz-box-shadow:inset 0px 1px 0px 0px #333;
	-webkit-box-shadow:inset 0px 1px 0px 0px #333;
	box-shadow:inset 0px 1px 0px 0px #333;
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #333), color-stop(1, #004172) );
	background:-moz-linear-gradient( center top, #333 5%, #004172 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#333', endColorstr='#004172');
	background-color:#004172;
	-webkit-border-top-left-radius:6px;
	-moz-border-radius-topleft:6px;
	border-top-left-radius:6px;
	-webkit-border-top-right-radius:6px;
	-moz-border-radius-topright:6px;
	border-top-right-radius:6px;
	-webkit-border-bottom-right-radius:6px;
	-moz-border-radius-bottomright:6px;
	border-bottom-right-radius:6px;
	-webkit-border-bottom-left-radius:6px;
	-moz-border-radius-bottomleft:6px;
	border-bottom-left-radius:6px;
	text-indent:0;
	display:inline-block;
	color:#ffffff;
	font-family:Verdana;
	font-size:12px;
	font-weight:bold;
	font-style:normal;
	height:20px;
	line-height:30px;
	width:50px;
	text-decoration:none;
	text-align:center;
	text-shadow:1px 1px 0px #b23e35;
}
.buttonOK:hover {
	background:-webkit-gradient( linear, left top, left bottom, color-stop(0.05, #eee), color-stop(1, #eee) );
	background:-moz-linear-gradient( center top, #eee 5%, #eee 100% );
	filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#eee', endColorstr='#eee');
	background-color:#eee;
}
.buttonOK:active {
	position:relative;
	top:1px;
}
.buttonOK a:link, a:visited, a strong {
	color: #fff;
}
.buttonOK a:hover {
	text-decoration:underline;
	color: #fff;
}
/* ButtonOK Ende  */




/* ====================================================================================================================
Responsive:
*/
@media screen and (min-width: 1200px) {
	.XXwrapper  {background-position: center -120px;}
}

@media screen and (min-width: 1025px) {
	
}


/*Smaller Screens */
@media screen and (max-width: 1500px) {
	.wrapper,  .mainbox, #topmenubox .m_inner  {width:100%; margin: 0 0 0 0;}
	.XXtopheader {background-size: 100% auto;}
}

/*Smaller Screens */
@media screen and (max-width: 1180px) {
	
	XXbody {font-size: 14px;}
	
	.container {padding-top: 2px;}		
	.mainbox .contentwide  {width:96%; margin:0 0 0 2%;}
	#rightbox { width: 33%;}
	#rightbox .inner { margin: 0 5% 0 5%;}
	
	#topmenubox {height: 100px ! important;}
	#topmenubox #nav {display:none;}
			
	.toggleMobileMenu {display:block; float:left; width:50px; height:50px; background: url(img/menuswitch.png) no-repeat top right; margin:10px 4% 0 0;}
	
	.topspacer {padding-top: 100px;  }	
	#XXtopparallax {padding-top: 50%; }


	
	
	/*Nav*/
	
	.breadcrumbs { height:560px; }
	
	#nav2 {width:250px; height: auto; position:absolute; left:-300px; top:100px; z-index:2000; transition: left 1s; }
	#nav2  {background: #eee url(img/glitzi.png) no-repeat right 0px; box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.4);}
	
	#nav2 li {width:250px;  padding: 0 0 0 0; }
	#nav2 li a {display:block; padding: 12px 0 12px 20px; font-size:18px;  color:#fff; text-decoration: none; border-bottom: 1px solid #fff; background-color: #333;}
	#nav2 li a hover{display:block; padding: 12px 0 12px 20px; font-size:18px;  color:#fff; background-color: #333;}
	#nav2 li li a {padding: 10px 0 10px 30px; font-size:16px;  }
	#nav2 li li li a {padding: 8px 0 8px 40px; font-size:14px; }
	#nav2 li li li li a {padding: 6px 0 6px 50px; font-size:13px; ;}
	
	#nav2 li ul {display:none;}
	#nav2 li.menu-parent > ul, #nav2 li.menu-current > ul {display:block; background-color: #333;}
	#nav2 li.is_opened > ul, #nav2 li.is_opened > ul {display:block;}
	
	#nav2 li a.menu-expand {background: #333 url(img/arr-down.png) no-repeat left center ;}
	#nav2 li a.menu-current { color:#fff;  text-shadow: 1px 2px 4px #000;}
	
	#nav2 ul li a.menu-expand.is_opened, #nav2 ul li a.menu-parent {font-weight:bold; color: #fff; background: #333 url(img/arr-right.png) no-repeat 2px center ; }
	#nav2close {display:none; z-index:1990; position:absolute; top:0; width:100%;  height: 900px; background-image:none;}
	
	
	
	.breadcrumbs { width: 100%; height: auto; }
	.innerbc { margin: 2px 0 5px 2%; width: 96%; }
	.innerbc span  {display: block; float:left; padding: 2px 2px 2px 12px; margin: 0 0 5px 0;}
	.innerbc b  {display: none;}
	
	.mobilemenuopen  #nav2 {left:0; }
	.mobilemenuopen #nav2close {display:block;} 
	
	 
	h1 { font-size: 2.2em;}
	h2 {font-size: 1.8em;}
	h3 {font-size: 1.6em; }
	
	
}


/* ======================================================================
Smaller Screens */
@media screen and (max-width: 768px) {
	.content {width:96%; margin:0 0 0 2%; float: none; }
	.mainbox, .content, .contentwide, .contentwidenarrow, #rightbox, .main {float: none; width:100% ! important; border-left:none; display:block;}
	#rightbox  {border-top:10px solid #999; padding-top:20px;}
	#rightbox .inner { margin: 0 0 0 0;}
	
	.XXfrontpage .wrapper  {background-position: center top;}
	.topheader  {padding-bottom: 30%;  background-size:  100% auto, auto; background-image: url(img/header-mobile.jpg);}
	
	#topparallax {width:100%; position:relative; padding-top:80%; background-image: url(img/parallaxheader-mobile.jpg); }
	#topparallax .ptext {bottom:5%; }
	#topparallax a.topdown {display:none; }
	
	h1 { font-size: 2.0em;}
	h2 {font-size: 1.6em;}
	h3 {font-size: 1.4em; }
	#topparallax p {line-height:120%;}

	.frontteaserblock div a {width:49%; }	
#topmenubox a.logo img {max-height:80%; max-width:100%; position: absolute; left: 7%; bottom:70px; top:5px;}
#topmenubox.reduced {height:130px; transition: 0.5s all;}
#topmenubox.reduced a.logo img {max-height:65%; max-width:100%; position: absolute; left: 9%; bottom:65px; top:10px;}
}

/* ======================================================================
Smaller Screens */
@media screen and (max-width: 480px) {
	#topparallax .ptext {bottom:0; }
	.topheader p { font-size:1.4em; }
	h1 { font-size: 1.8em;}
	h2 {font-size: 1.6em;}
	h3 {font-size: 1.3em;}
	
	.frontteaserblock div {width:100%;}
	.frontteaserblock div a {float:none; width:100%; clear:left; height:auto ! important; clear:both; border:none;}
	.frontteaserblock div .row1 {}	
	.frontteaserblock div a .mt_title {height:auto; margin-bottom:20px;}
}


/*google maps responsive*/
.responsive_map {
   height: 0;
   overflow: hidden;
   padding-bottom: 56%;
   position: relative;
}

.responsive_map iframe {
   height: 100%;
   max-height:500px;
   left: 0;
   position: absolute;
   top: 0;
   width: 100%;
   max-width:700px;
}

