body { 
	background-color: #ffffff; 
	text-align: left; 
	font-family: Verdana, Arial, Helvetica, sans-serif; 
	font-size: 12px; 
	font-weight: normal; 
	color: #000000;
	margin: 0px;
	padding: 0px;
	scrollbar-face-color: #ffffff;
}




#barrierefrei, #design {
	padding: 5px;
	width: 90%;
}
#design a {
	position: relative;
	left: 26px;
	color: #333333;
	font-size: 14px;
}
#design a:before {
	content: url(/images/design.png);
	display: block;
	position: relative;
	height: 0px;
	left: -26px;
	top: -1px;
	border: none;
	z-index: 15;	
}
#barrierefrei a {
	position: relative;
	left: 26px;
	color: #333333;
}
#barrierefrei a:before {
	content: url(/images/barrierefrei.png);
	display: block;
	position: relative;
	height: 0px;
	left: -26px;
	top: -3px;
	border: none;
	z-index: 15;	
}
#barrieretext {
	float: right;
	width: 50%;
	text-align: left;
	font-size: large;	
	margin: 5% 0%;
	line-height: normal;	
}

#barreriefreimenu {
	font-size: large;
	line-height: normal;	
}
.barreriefrei #barreriefreimenu a {
	font-size: large;
	line-height: normal;		
}
#barreriefreimenu ul li, #barreriefreimenu ul ul li {
	font-size: xx-large;			
}
#barreriefreimenu ul ul {
	padding-bottom: 35px;			
}
#barreriefreimenu ul li a {
	font-size: xx-large;	
}


#headwrapper {
	width: 100%;
	margin: 0px;
	padding: 0px;
}
#head {
	width: 95%;
	max-width: 960px;
	margin: 15px auto;
	overflow: auto;
	background-image: url(/images/top_bg.jpg);
	background-repeat: repeat-x;
    overflow-y: hidden;
}
.barreriefrei #head {
	background-image: none;
	margin-top: 0px;
}
#logo {
	float: left;
	background-color: #ffffff;
}
#grouplogo {
	padding-left: 18px;
	float: right;
	background-color: #ffffff;
}
#menuwrapper {
	width: 100%;
	margin: 0px;
	padding: 0px;
	background-color: #818E94;
}
#mobilemenu { 
	display: none;
}
#menu {
	width: 95%;
	max-width: 960px;
	min-height: 80px;
	margin: 0px auto;
	background-image: url(/images/menu_bg.jpg);
	background-repeat: repeat-x;
}
#menu a {
	text-decoration: none;
}
.barreriefrei #menu {
	overflow: auto;
	min-height: 40px;
}
#header {
	text-align: center;
}
#header img {
	width: 100%;
	height: auto;
	margin: 0px;	
	max-width: 960px;
}

#mainwrapper {
	width: 100%;
	margin: 0px;
	padding: 0px;
	background-repeat: no-repeat;
}
#main {
	width: 100%;
	max-width: 960px;
	margin: 0px auto;
	padding: 20px 0px;
	line-height: 16px;
}

#main img {
	width: 100%;
	height: auto;
}
#main ul {
	padding: 0px 0px 0px 18px;
	margin-top: 10px;
}
#contentLayer {
	overflow: auto;	
	float: left;
	width: 77.25%;
	padding: 0px;
	margin: 0px 2.083%;
    margin-bottom: 0px;	  
}
.layerBreak, .layerFloat {
	width: 100%;
	padding: 0px;
	margin: 0px;
	margin-bottom: 25px;	
	clear: all;
	overflow: hidden;
}
.layerBreak p, .layerFloat p {
	/* text-align: justify; */
}


.layerFloat1 {
	float: left;
	width: 23.00%;
	padding: 0px;
	padding-right: 2%;
	margin: 0px;
	margin-bottom: 20px; 
 
}
.layerFloat2 {
	float: left;
	width: 75.00%;
	padding: 0px;
	margin: 0px;
	margin-bottom: 20px;
}


.wechselelement img {
	padding: 20px 0px 0px 20px;
	min-width: 80px;
	height: auto;
}
.wechselelement h1 { 
	font-family: Verdana, Arial, Helvetica, sans-serif; 
	font-size: 14px; 
	font-weight: normal; 
	text-decoration: none; 
	color: #808D93; 
	margin: 0px 0px 0px 20px; 
	padding: 0px 0px 14px 0px;
	text-transform: uppercase;
	border-bottom: 1px solid #808D93;
}
#infolayer .layerBreak, #infolayer .layerFloat {
	float: right;
	width: 16.5%;
	padding: 0px;
	margin: 0px 2.083% 0px 0px;   
}
#infolayer2 {
	margin: 0px 2.083% 0px -2.083%; 
}
.team {
    margin: 0px 0px 0px 20px;        
}
.teambox {
    clear: left;  
    overflow: auto;
    max-width: 400px;
    margin-top: 18px;
} 
.teamimage {
    width: 47%;
    margin-right: 6%;
    float: left;
}
.teamcontact {
    width: 100%;
    min-height: 130px;
    min-width: 120px;
    color: #333333;
    font-size: 12px;
    background-color: #77848A;    
    float: left;
}
#main .teamdata {
    background-color: #E8E9EB;
    padding: 12px 2px 12px 12px;
    margin: 0px 0px 16px 0px;
}
#main .teamdata ul {
    list-style: none;
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
}
#main .teamdata li {
    margin: 0px 0px 0px 0px;
    padding: 0px 0px 0px 0px;
    font-size: 10px;
}
#main .teamdata li.pos {
    margin-bottom: 10px;
}
#main .teamdata li a {
    text-decoration: none;
    color: #333333;
    font-size: 10px;
}
#main .wechselelement .teamimage img {
    padding: 0px 0px 0px 0px;
    height: auto;
    width: 100%;
    max-width: 136px;
    max-height: 136px;
}




#footerwrapper {
	width: 100%;
	margin: 0px;
	padding: 0px;
	background-color: #EDEEF0;
}
#footer {
	width: 95%;
	max-width: 960px;
	margin: 0px auto;
	border-top: 1px solid #818E96;
	padding: 25px 2.083%;
	overflow: auto;
	font-family: Verdana, Arial, Helvetica, sans-serif; 
	font-size: 12px; 
	font-weight: normal; 
	color: #808F96;
}
#footer ul {
	list-style: none;
	margin: 0px;
	padding: 0px;
	clear: all;
}
#footer li {
	padding: 2px 0px;
}
#footer a {
	color: #808F96;
	font-family: Verdana, Arial, Helvetica, sans-serif; 
	font-size: 12px; 
	text-decoration: none;
}
#adress {
	float: left;
	width: 25.54%;
	min-width: 180px;
    margin-bottom: 30px;
}
#footer h2 {
	margin: 0px;
	padding: 0px;
	padding-bottom: 15px;
	font-family: Verdana, Arial, Helvetica, sans-serif; 
	font-size: 14px; 
	color: #808F96;
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
#footer h2.company {
	text-transform: none;
}
#secondMenu {
	float: left;
	width: 30.54%;
	min-width: 180px;
    margin-bottom: 20px;
}
#secondMenu ul {
	text-transform: uppercase;
	letter-spacing: 0.05em;
}
#secondMenu h2 {
	margin-left: 27px;
}

#secondMenu h2:before {
	content: url(/images/icon_fernwartung.png);
	display: block;
	position: relative;
	height: 0px;
	left: -30px;
	bottom: 4px;
	text-align: left;
	border: none;
	z-index: 10;
}
#call, #casting {
	float: right;
	width: 20.54%;
	font-family: Verdana, Arial, Helvetica, sans-serif; 
	font-size: 12px;
	min-width: 240px;
}
#call h2, #casting h2 {
	margin-left: 27px;
}
#call h2:before {
	content: url(/images/icon_callback.png);
	display: block;
	position: relative;
	height: 0px;
	left: -30px;
	bottom: 4px;
	text-align: left;
	border: none;
	z-index: 10;
}
#call a, #casting a {
	text-decoration: none;
}
#call a.text, #casting a.text {
	text-decoration: underline;
}
#casting h2:before {
	content: url(/images/icon_casting.png);
	display: block;
	position: relative;
	height: 0px;
	left: -30px;
	bottom: 4px;
	text-align: left;
	border: none;
	z-index: 10;
}





.zoom:after  {
	content: url(/images/lupe.gif);
	display: block;
	position: relative;
	height: 0px;
	right: 4px;
	bottom: 16px;
	text-align: right;
	border: none;
	z-index: 10;
}

#picZoom, #galleryZoom {
	display: none;
	padding-top: 3010px;
	width: 98%;
	height: 2000px;
	background-color: #ffffff;
	background-color: rgba(255,255,255,0.85);
	z-index: 11;
}
#picZoomField {
	margin: 0px auto;
	padding: 19px;
	border: 1px #B9C0CA solid;
	background-color: #ffffff;
	cursor: pointer;
}
#picZoomField:before {
	content: url(/images/close.gif);
	display: block;
	position: relative;
	height: 0px;
	right: 4px;
	top: 4px;
	text-align: right;  
	border: none;
	z-index: 15;
}
#picZoomImg {
	width: 100%;
	height: auto;
}


.galleryLayer {
	clear: both;
	overflow: auto;
	padding: 0px;
	margin: 0px;
}
.galleryImg {
	text-align: center;
}

.galleryCol > a:after {
	content: url(/images/lupe.gif);
	display: block;
	position: relative;
	height: 0px;
	right: 4px;
	bottom: 16px;
	text-align: right;
	border: none;
	z-index: 10;
}
.galleryCol, .galleryColMore {
	float: left;
	vertical-align: top;
	padding: 0px 14px 10px 0px;
	margin: 0px;
}

.galleryMore {
	text-align: center;
	background-color: #EFECE5;
    border: 1px solid #CA902C;
   	padding: 5px 5px 12px 5px;
   	margin-top: 24px;
}
.galleryMoreA {
	text-decoration: none; 
}
.galleryMoreArrow {
	font-family: Verdana, Arial, Helvetica, sans-serif; 
	font-size: 36px; 
	font-weight: normal; 
	text-decoration: none; 
	color: #CA902C;
}
.galleryMore {
	font-family: Verdana, Arial, Helvetica, sans-serif; 
	font-size: 11px; 
	font-weight: normal; 
	color: #CA902C;
}



#galleryZoomField {
	margin: 0px auto;
	margin-top: -60px;	
	padding: 19px 19px 7px 19px;
	border: 1px #B9C0CA solid;
	background-color: #ffffff;
}
#galleryZoomNr {
	float: left;
	font-size: 11px;
}
#galleryZoomClose {
	text-align: right;
}
#galleryZoomImgLayer {
	clear: both;
	text-align: center;
	position: relative;
	top: -8px;
}
#galleryZoomWidth {
	width: 100%;
	margin: 0px auto;
}
#galleryZoomImg {
	width: 100%;
	height: auto;	
}
#galleryZoomTitle {
	text-align: left;
	font-size: 18px; 
	font-weight: bold; 
	color: #2D3235; 
	margin: 10px 0px;
	padding: 0px;
}
#galleryZoomText {
	text-align: left;
}
#galleryNav {
	width: 100%;
	margin: 0px auto;
	position: relative;
	top: 160px;
	z-index: 15;
}
#galleryNavBack {
	float: left;
	height: 60px;
}
#galleryNavFor {
	text-align: right;
	height: 60px;
}
#galleryNavBack a, #galleryNavFor a {
	font-size: 28px; 
	font-weight: bold; 
	color: #999999; 
	text-decoration: none; 
	background-color: #ffffff;
	padding: 5px 14px;
	border: 1px #B9C0CA solid;
}
#galleryNavBack a.end, #galleryNavFor a.end {
	color: #eeeeee; 
}
.galleryThumbOverLayer {
	width: 100%;
	overflow: scroll;
	overflow-y: hidden;
	display: none;
}
.galleryThumb {
	float: left;
	padding: 10px 10px 10px 0px; 
}


/* Formatierungen für die Formulare */
.layer {
	float: left;
	width: 100%;
	padding: 0px;
	margin: 0px;
}
#ClientCLayer {
	display: none;
}
label.anim {
    position: relative;
    display: inline-block;
    margin-top: 20px;
    width: 100%;
}
label.anim span {
  position: absolute;
  z-index: 1;
  cursor: text;
  pointer-events: none;
  color: #333333;
  padding: 7px;
  /* Firefox does not respond well to different line heights. Use padding instead. */
  line-height: 17px;
  /* This gives a little gap between the cursor and the label */
  margin-left: 2px;
  top: 0px;
}
input, select, textarea, input[type="file"]	{ 
	font-family: Verdana, Arial, Helvetica, sans-serif; 
	font-size:12px; 
	text-decoration:none; 
	font-weight: normal; 
	color:#000000; 
    border: 1px solid #818E96;
    padding: 7px;
}
input { 
    border: 0px solid #ffffff;
    border-bottom: 1px solid #818E96;
    border-left: 1px solid #818E96;
}
#CVCLayer [type="file"]    {
    border: 0px solid #ffffff;
    border-bottom: 1px solid #818E96;
    border-left: 1px solid #818E96;
    background-color: #ffffff;
}
.formLayer {
	margin: 0px auto;
	width: 90%;
	max-width: 700px;
	border: 1px solid #EDEEF0;
	padding: 20px;
}
.formFieldset {
	border: 0px;
	margin: 0px;
    overflow: auto;
    padding: 0px;
}
.formColBreak {
	clear: both;
	width: 100%;
	margin: 2.5% 0%;
}
.formColBlock {
	float: left;
	width: 50%;
	margin: 10px 0px;
}

/*
label.label70 {

	min-width: 220px;
	display: inline-block;
}
label.label100 {

	min-width: 85px;
	display: inline-block;
}
*/

input {
	margin: 1px 0px 2px 0px;
	width: 95%;
}



select {
	margin: 1px 0px 2px 3px;
}
input[type="radio"], input[type="checkbox"] {
	margin: 1px 3px 2px 0px;
	padding: 0px;
	width: auto;
	display: inline-block;
	vertical-align: top;
}
textarea {
	width: 95%;
}
#CenterButtonLayer {
	text-align: center;
}

.divmiddle {
    float: left;
    width: 48%;
    padding-right: 1%;
    min-width: 300px;
}

.divleft {
    float: left;
    width: 25%;
    min-width: 120px;
}
.divright {
    float: left;
    width: 73%;
}
.divColor {
    background-color: #efefef;
    padding: 5px 10px;
    margin: 5px 0px;
    width: 95%;
}
.divColor label {
    min-width: 380px;
    display: inline-block;
}

#googleTerms {
    font-size: 10px;
}
#googleTerms a {
    font-size: 10px;
}


.errorText { 
	color: #cc0000;
}
.errorField 	{ 
	color: #2D3235; 
	background-color:#ffe1e1;
}
.formInfo {
	font-size: 11px;
}
.multipleSelectLayer label {
	vertical-align: top;
}
/* Ende Formatierungen für die Formulare */


.position1 {
	display: block;
}
.position2 {
	display: none;
}

@media screen and (min-width: 1px) {

}
@media screen and (min-width: 1030px) {
	.layerbox {
		width: 46%;
		max-width: 327px;
	}
}

@media screen and (max-width: 740px) {
	.position1 {
		display: none;
	}
	.position2 {
		display: block;
	}
	#contentLayer {
		width: 95.83%;
	}
	.layerFloat1, .layerFloat2 {
		width: 100%;
		padding: 0px;
	}
	#barrieretext {
		float: none;
		width: 100%;
	} 
	#infolayer2 {
		clear: both;
		padding-top: 40px;
	}
    .divColor label {
        min-width: 0px;
    }	
	
	#mobilemenu {
		display: block;
		width: 40px;
		height: 0px;
		position: relative;
		top: -42px;
		float: right;
		z-index: 100px;
	}
    #mobilemenu a {
		display: block;
		background-image: url(/images/mobilemenu.jpg);
		background-repeat: no-repeat;
		color: #818E94;
		text-decoration: none;
		padding: 24px 2px 2px 2px;
		text-align: center;
	}
	#menu {
		overflow: hidden; 
		min-height: 0px;
		max-height: 0px;
	}
	#menu.mobile { 
		max-height: 850em; 
	}
	
	.barreriefrei #mobilemenu {
		display: none;	
	}
	.barreriefrei #menu {
		overflow: auto;
		min-height: 40px;
	}
			
}

@media screen and (max-width: 550px) {
    #secondMenu {
        float: none;
        overflow: auto;
        width: 90%;
    }
}
   
@media screen and (max-width: 420px) {
	#grouplogo, #line {
		display: none;
	} 
	#galleryZoomField {
		margin-top: -50px;	
		padding: 19px 7px 3px 7px;
	}
	#galleryZoomImgLayer {
		top: -15px;
	}
	#galleryNav {
		top: 100px;
	}
	#galleryNavBack, #galleryNavFor {
		height: 40px;
	}
	#galleryNavBack a, #galleryNavFor a {
		font-size: 20px; 
		padding: 3px 9px;
	}
    .divleft, .divright {
        float: none;
        width: 100%;
    }
	
}
@media screen and (max-width: 340px) {
	.position1 {
		display: none;
	}
	
	#infolayer2 {
		clear: both;
		padding-top: 0px;
	}
}




