html {height:100%;}
table.our-staff td{
	width:32%;
	vertical-align:middle;
	}
.puzzle-link{
	display:none;
	}
body {
	margin: 0; padding: 0; 
	height:100%;
/*	background: #1c617c url(images/bodybg.jpg)  no-repeat fixed left top;
	-o-background-size: 100% auto, auto;
	-moz-background-size: 100% auto, auto;
	-webkit-background-size: 100% auto, auto;
	background-size: 100% auto, auto;*/
	background:url(images/bg.jpg) repeat;
	font:12px Geneva,Arial,Helvetica,sans-serif;
	color:#5F5F5F;
	line-height: 150%;
}
br.footer_br{
	display:none;
	}
table{
	max-width:100%;
	height:auto;
	}
img{
	max-width:100%;
	height:auto;
	}
.container {
	max-width: 834px;
    width: 100%;
	  
    margin: 0 auto;
	background-color:#fff;
	/*background:transparent url(images/bg30.png);*/
}

.header { width: 100%; /*background:transparent url(images/headerbg.png) repeat-x;*/ text-align:center; }
.header .logo img {max-width:100%; float:none; }



.mainbox {margin: 20px 2% 20px 2%; /*background-color:#0ff;*/}

.contentbox {width: 68%; float:left; /*background:transparent url(images/bg50.png);*/}
.contentbox .inner {min-height:330px; padding:0 5px 0 10px; }
.rightbox {width: 30%; float:right; }
.rightbox .inner {padding:0 5px 0 5px;}

#contentwide {width: 100%; }

.footer {
    width: 80%;	
    max-width: 830px;
	height:40px;
    margin: 0px auto 0 auto;
	position:relative;
	color:#8D8B8B;
	text-align:center;
}
.footer .inner{
	padding-top:10px;
	}
.footer a {
	color:#666666;
	text-decoration:underline;
	}
.footer a:hover {
	color:#666666;
	text-decoration:none;
	}




.clearer {height:10px; clear:both;}
h1.pageheading{
	border-bottom:1px dotted #A4A7A7;
	padding-bottom:5px;
	margin-bottom:10px;
	
	}
h1{
color:#EC1F26;
font-size:18px;
}
h2{
color:#3B3B3B;
font-size:18px;
}
h3{
color:#39434A;
font-size:14px;
}
h4{
color:#EC1F26;
font-size:14px;
}
h5{
color:#39434A;
font-size:12px;
text-transform:uppercase;
}
h6{

font-size:xx-small;
}
h1, h2, h3, h4, h5, h6{
 font-weight:normal;
}


/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/* http://webdesign.tutsplus.com/tutorials/site-elements/big-menus-small-screens-responsive-multi-level-navigation/ */
/* http://tessathornton.com/ */

a#mobilemenu {
    display:  none;
	text-decoration:none;   
}
a#mobilemenu span {display:block; padding: 10px 15px; font-weight: bold;}
a#mobilemenu span img { float:right; margin-top:-3px;}

a#mobilemenu1 {
    display:  none;   
}

a#mobilemenu1 span { display:block; padding: 10px 15px; font-weight: bold;}
a#mobilemenu1 span img { float:right; margin-top:-3px;}


/***********************************
	header-menu
************************************/

.topmenubar {background-color:#3b3b3b; margin-left:15px; margin-right:15px;}

/* Link Formatting */
ul.nav { 
	list-style-type: none;
	margin: 0; padding: 0;
	position: relative; 	
}

ul.nav li {
	float: left; 
	list-style-type: none;
	list-style-image: none;
	position: relative;  
	font-weight: normal; 	
	margin: 0; padding: 0;
	/*border-right: 1px solid #fff;*/
	background-color:#3b3b3b;
}
ul.nav li li {background-color:#3b3b3b;}
ul.nav li li li {background-color:#3b3b3b;}

.nav li a {
	display: block; 	
	text-decoration: none; 
	
	/*text-shadow: 1px 1px 1px #000;*/
	/*padding: 8px 12px;*/
    color:#fff;
	font-size:1.1em;
	width:134px;
	padding-top:4px;
	padding-bottom:4px;
	text-align:center;

}


/* Hover Formatting */
.nav  li a:hover/*, .nav li a:focus, .nav li a:active, .nav li a.active, .nav a.menu-current, .nav a.menu-parent*/ {
	 background-color: #ec1f26;  color: #fff;
}



/* 2 Ebene */
.nav li ul {
	background: none;
    display: none;
    width: 11em; 
    margin: 0; padding:0;
    position: absolute;
}
.nav li ul li {
	width: 11em; 
	text-align: left; 
	font-weight: normal; 
	margin: 0; 
	padding: 0;
	border-right: none;
}
.nav li ul li a {	
    color: #fff;
    font-weight: normal;
padding: 4px 5px;
	text-align:center;
	width:100%;
	
	
}


/* 2 Ebene hover */
.nav li ul a:hover,  .nav li ul a.menu-current { background-color: #ec1f26;  color: #fff;}


/* Show and hide */
.nav li:hover ul, .nav li a:focus ul {display: block; }
.nav li ul ul { display: none;}
.nav li:hover ul ul {display: none;}
.nav li:hover>ul, .nav  li li:hover>ul {display: block;  z-index: 1000;}


/* 3 Ebene  */
.nav li ul li ul	{ 
	margin: -30px 0 0 100%; 
	padding:0;
	z-index: 9999;  
	display: none;
	width: 11em; 
}
.nav li ul li ul li	{width: 11em;}


/* 4 Ebene 
.nav   li ul li ul li ul	{  width: 9em; background: #5f2e58;}
.nav  li ul li ul li ul li	{  width: 9em; }
.nav  li ul li ul li ul li a 	{ width: 8.5em;}
*/
/* Positioning hover */
.nav li {position: relative;}

.nav li:hover {
	z-index: 10000;	
	white-space: normal;						
}


/*ul.nav li.ulend {height:10px; background: transparent url(images/ulend.png) repeat-x;}*/
ul.nav > li.ulend {display:none ! important;}


/*parent menu*/
.menu-expand:hover a{ 
       background-color:#ec1f26; 
	   color:#fff;
	   /*margin-left:-2px;*/
      }


	  /*submenu*/
.nav li ul li a {
	background-color:#3b3b3b !important;
	color:#fff !important;	
}
.nav li ul li a:hover {
	background-color:#ec1f26 !important;
	color:#fff !important;	
}
/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/




@media screen and (max-width: 768px) {
body{
	line-height:180%;
	
}
ul#mobile{
overflow:hidden;
}
.nav li ul li a {	
 
width:100%;
padding: 4px 10px;
	text-align:left;
	background-color:#555555 !important;
	width:100%;
	
	
	
}
	.puzzle-link{
	display:block;
	}
	p{
		margin-left:auto;
		margin-right:auto;
		}
	.contentbox {float:left; /*background:transparent url(images/bg50.png);*/}
.contentbox .inner {min-height:auto; padding:0 15px 0 15px; }
.rightbox {float:left; }
.rightbox .inner {min-height:auto; padding:0 15px 0 15px; }
	
	.nav li a {
	display: block; 	
	text-decoration: none; 
	
	/*text-shadow: 1px 1px 1px #000;*/
	padding: 8px 12px;
    color:#fff;
	font-size:1.2em;
	width:auto;
	text-align:left;

}
	.topmenubar {background-color:#3b3b3b; margin-left:0px; margin-right:0px;}
	body { /*background-image: url(images/bodybgmobile.jpg);*/ }

	
	a#mobilemenu { 
	display:  block;  
	background: #3b3b3b;   
    color: #fff;
	width:100%;}
	
	a#mobilemenu1 { 
	display:none; 
	background: #3b3b3b;   
    color: #fff;
	width:100%;}
	
    ul#mobile, ul#mobile ul, ul#mobile ul ul {width:100% ! important; position: static ! important; margin: 0 0 0 0 ! important; display: none}
	ul#mobile li, ul#mobile li li, ul#mobile li li li {
			float: none;
			border-right: none; 
			width:100%  ! important;
			display: block;
			
	}
	
	
	ul#mobile li.menu-parent > ul, ul#mobile li.menu-current > ul {display: block}
	ul#mobile {display: block}
	
	ul#mobile a.menu-parent { /*color: #fff; background-color: #68cecf;*/}	
	#mobile a.menu-parent { /*color: #000;*/}
	#mobile a.menu-expand {
		background-image: url("images/downArrow.png");
		background-repeat: no-repeat;
		background-position: right 50%;
	}

	ul#mobile {display:none;}
	/*~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
	.container { width: 100%; }
	
	.mainbox {margin: 20px 0 20px 0;}
	.contentbox {width: 100%;}
	.rightbox {width: 100%; }
	.footer { width: 100%; }
	
	.showonmobiles {display:block ! important;}
	ul#mobile li > ul {
    display: block;}

}
@media screen and (max-width: 480px) {

	.footer{
		height:60px;
		}
	br.footer_br{
		
	display:block;
	}
	table.our-staff td{
	width:100%;
	float:left;
	vertical-align:middle;
	text-align:center;
	}
	table.our-staff{
		margin-bottom:20px;
		
		}
	form table td{
		width:100%;
		float:left;
		text-align:left !important;
		} 	
	.textfield{
		width:100%;
		}
	.email{
		width:100%;
		}
	.textarea{
		width:100%;
		}
	}