/* @import url("fontello.css"); */
/* ---------------------------------------------------------
   Basisgestaltung und Layoutbereiche
   ---------------------------------------------------------*/
@font-face {
    font-family: "Open Sans";
    font-weight: 400;
    src: url("/layout/fonts/OpenSans-Regular.ttf");
}
@font-face {
    font-family: "Open Sans";
    font-weight: 200;
    src: url("/layout/fonts/OpenSans-Light.ttf");
}
@font-face {
    font-family: "Open Sans";
    font-weight: 600;
    src: url("/layout/fonts/OpenSans-SemiBold.ttf");
}
@font-face {
    font-family: "Open Sans";
    font-weight: 700;
    src: url("/layout/fonts/OpenSans-Bold.ttf");
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block;
} 
* {
	margin:0;
	padding:0;
}  
HTML {
  font-family:  'Open Sans', Arial, sans-serif;
  font-size: 100%; /* Browserdefault 16px */ 
  -ms-text-size-adjust: 100%; /* Prevent iOS text size adjust after orientation change */ 
  -webkit-text-size-adjust: 100%;      
}
BODY { 
  font-size: 12px; font-size: 0.75rem;
  line-height:1.2;   
  color: #000;
  background-color:#fff;  
}  

*, *:before, *:after {
	box-sizing         : border-box;
	-moz-box-sizing    : border-box;
	-webkit-box-sizing : border-box;
}

HR {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

TABLE, TR, TD, TH {
	font: 12px  'Open Sans', Arial, Verdana, sans-serif;font-size: 0.75rem; 
	vertical-align:top;
	border-spacing: 0px;
	border-style: none;
	border-collapse: collapse;
}
 
A {
  color:#000;
  text-decoration:none;
  outline: 0;
}

H1 {
	font-size:32px;font-size:2rem;
  font-weight:300;
	color:#000;
	margin-bottom:25px;
}

H2 {
	font-size:16px;font-size:1rem;
  font-weight:600;
	color:#ef7000; 
	margin-bottom:10px;
}
#v2 H2 {
	color:#ff7b1b; 
}
P {	margin-bottom:25px;line-height:1.5; }

IMG { 
  max-width:100%;
  height:auto;
}
A IMG {border:0;}  
 
/* Grid Basics */
.row { 
  position:relative;
  text-align:center;
  width:830px;
  margin: 0 auto;
}
.row:before, .row:after {
content: "";
display: table;
}
.row:after,.clear {
clear: both;
}

/* # header area ############### */
HEADER {
  position: fixed;
  left:0;
  top:0;
	width:193px;
  z-index:3001;
  background-color:#fff;
} 

#logo {
  display:block;
  position: absolute;
  left:38px;
  top:37px;
  background: url(../logo.png) no-repeat;
  width: 118px;
  height: 40px;   
}  

#v2 #logo {
	background: url(../logo_v2.png) no-repeat;
	top:27px;
	width: 120px;
	height: 55px; 
}

/* ---------------------------------------------------------
   Navigation 
   ---------------------------------------------------------*/
    
#menubutton, #menu { display: none;}
.menu { 
  display:block;
  width:100%;
  padding-top:175px;
}
.menu > ul { 
  list-style: none;
  position: relative;
  padding-left:60px;
}
.menu > ul > li { 
  margin: 0 0 12px;
  white-space:nowrap;
}
.menu > ul > li > a {
  text-decoration: none;
  color: #000;
  font-weight:700; 
  font-size: 12px;font-size: 0.75rem;
  text-transform:uppercase;
} 

.menu > ul > li > a.current,
.menu > ul > li > a:hover { 
  border-bottom: 1px solid #ef7e05;
}
#v2 .menu > ul > li > a:hover { 
  border-bottom: 1px solid #ff7b1b;
}


#language {
  color: #000;
  font-weight:600; 
  font-size: 8px;font-size: 0.5rem;
  padding:90px 0 0 29px;
}
#language UL LI {
  float:left;
  list-style:none;
  width:50%;
  letter-spacing:3px;
}    


/* # content ############### */ 
MAIN {
  margin-left:193px;
  background-color:#f5f5f5;
}  

MAIN UL {
 margin:0 0 35px 0;
}   
MAIN LI { 
 margin-bottom:10px;
 padding-left:23px;
}  

SECTION {padding:45px 0 30px 0;}

SECTION H1 B,SECTION H1 STRONG {
  font-weight:700;  
} 

#keyvisual {
  padding-top:0;
}
#keyvisual IMG {
  width:100%;
  height:auto;
}

#video {
	width:100%;
	height:auto;
	padding-top:0;
	overflow:hidden;
}
#video video {
	width:100%;
	height:auto;
}

BUTTON {
  height:26px;
  width:auto;
  padding:0 13px; 
  font-size:10px;font-size:0.625rem;
  font-weight:700;
  color:#fff;
  text-transform:uppercase;
  border:0; 
  border-radius:3px;
  background-color:#ef7e05;
  cursor:pointer;
  margin:5px auto 20px;
}
#v2 BUTTON {
  background-color:#ff7b1b;
}


.more {
  display:none;
  clear:both; 
  overflow:hidden;
} 


ul.tabs{
	margin: 0px;
	padding: 0px;
	list-style: none;
  margin-bottom:30px;
}
ul.tabs li{ 
  padding:0 13px; 
  font-size:10px;font-size:0.625rem;
  font-weight:700;
  color:#fff;
  text-transform:uppercase;
  border:0; 
  border-radius:3px;
  background-color:#404040;
	display: inline-block;
	padding: 7px 13px;
	cursor: pointer; 
  margin:5px 10px;
}
ul.tabs li.current,
ul.tabs li:hover {
	background: #ef7e05;
}  
#v2 ul.tabs li:hover {
	background: #ff7b1b;
}  

.tab-content{
	display: none;
}               
.tab-content.current{
	display: inherit;
}


/* moods */
.mood { 
  position:relative;
  padding:0;
  margin-bottom:80px;
} 
.mood IMG { 
  width:100%;
} 
.claim {
  position:absolute;
  top : 50%;
  left: 50%;
  width:100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform    : translate(-50%, -50%); 
  text-align:center;
  color:#fff;
  font-size:48px;font-size:3rem;
  font-weight:300;
  text-transform:uppercase;
}  
.claim B,.claim STRONG {
  color:#ef7000;
  font-weight:700;
} 
#v2 .claim B,.claim STRONG {
  color:#ff7b1b;
} 


/* accordion */
.acc H2 {
  font-size:22px;font-size:1.375rem;
  font-weight:600;
  color:#fff;
  text-align:left;
  padding:11px 0 11px 20px;
  background: #404040 url(../down.png) 98% center no-repeat;
  margin-bottom:1px;
  cursor:pointer;
}
#v2 .acc H2 {
  background: #404040 url(../down_v2.png) 98% center no-repeat;
}
.acc .drawer {
  display:none;
  padding: 20px;
  text-align:left; 
  font-weight:600;
  background-color:#fff;
  clear:both; 
  overflow:hidden;
}
.acc H3 {
  font-size:16px;font-size:1rem;
  font-weight:600;
  color:#ef7000;
  margin-bottom:10px;
}
#v2 .acc H3 {
  color:#ff7b1b;
}


UL.info {
  float:left;
  list-style:none;
  width:235px;
  margin:0 0 0 50px;
}
UL.info LI {
  font-weight:700;
  padding:0 30px 25px 0;
  margin:0;
  background: url(../info.png) right top no-repeat;
}
#v2 UL.info LI {
   background: url(../info_v2.png) right top no-repeat;
}

/* slider logos */
#slider-logos {
  width:80%;
  margin-top:50px;
  margin:50px auto;   
}

.prev {
  position:absolute;
  left:-0;
  top:90px;
  background: url(../prev_black.png) no-repeat;
  width: 26px;
  height: 44px;
  cursor:pointer; 
}
.next {
  position:absolute;
  right:-0;
  top:90px;
  background: url(../next_black.png) no-repeat;
  width: 26px;
  height: 44px;
  cursor:pointer;   
}




/* Kontaktformular */ 
.form {margin-bottom:30px;}

.form P {
  font-weight:600; 
}
 
SPAN.post {
  padding-left:25px;
  background: url(../icon_post.png) no-repeat;
}  
SPAN.gap {
  padding:0 13px;
}  
SPAN.phone {
  padding:0 8px 0 22px;
  background: url(../icon_tel.png) no-repeat;
}  
SPAN.fax {
  padding:0 8px 0 22px;
  background: url(../icon_fax.png) no-repeat;
}
A.mail {
  padding:0 8px 0 22px;
  background: url(../icon_mail.png) no-repeat;
}


#v2 SPAN.post {
  background: url(../icon_post_v2.png) no-repeat;
}  
#v2 SPAN.phone {
  background: url(../icon_tel_v2.png) no-repeat;
}  
#v2 SPAN.fax {
  background: url(../icon_fax_v2.png) no-repeat;
}
#v2 A.mail {
  background: url(../icon_mail_v2.png) no-repeat;
}

.form INPUT {
  display:block;
  width:315px;
  height:24px;
  padding:0 15px;
  font-weight:300;
  font: 12px  'Open Sans', Arial, Verdana, sans-serif;font-size: 0.75rem;
  color:#a3a3a3;
  border:1px solid #b4b4b4;
  background-color:#f5f5f5;
  margin:0 auto 3px;
} 
.form TEXTAREA { 
  display:block;
  width:315px;
  height:146px;
  padding:0 15px;
  font-weight:300;
  font: 12px  'Open Sans', Arial, Verdana, sans-serif;font-size: 0.75rem;  
  color:#a3a3a3;
  border:1px solid #b4b4b4; 
  background-color:#f5f5f5; 
  margin:0 auto 3px;
} 
.form INPUT[type="submit"] {
  height:26px;
  width:auto;
  padding:0 28px; 
  font-size:10px;
  font-weight:700;
  color:#fff;
  text-transform:uppercase;
  border:0; 
  border-radius:3px;
  background-color:#ef7e05;
  cursor:pointer;
  margin:30px auto;
}
#v2 .form INPUT[type="submit"] {
  background-color:#ff7b1b;
}
 


/* # footer ############### */
FOOTER {
  position:relative;
  width:100%;
  font-size:12px; font-size:0.75rem;
  font-weight:700;
  color:#fff;
  line-height:18px;
  padding:25px 65px 7px; 
  background-color: #404040;
  border-left:193px solid #fff;
}  

.center {
  position: absolute;
  top : 50%;
  right: 0;
  -ms-transform: translate(-50%, -50%);
  transform    : translate(-50%, -50%); 
  font-weight:400;
  font-size:10px; font-size:0.625rem;
  text-align:right;
 }                          


FOOTER A {
  color:#fff;
}





/* ---------------------------------------------------------
   @media
   ---------------------------------------------------------*/      

@media only screen and (max-width: 1024px) {

  HEADER {
    position: fixed;
    left:0;
    top:0;
  	width:100%;
    height:119px;
    z-index:3001;
    background-color:#fff;
  } 
  
  #logo {
    display:block;
    position: absolute;
    left:38px;
    top:37px;
    background: url(../logo.png) no-repeat;
    width: 118px;
    height: 40px;   
  } 
  
  #v2 #logo {
    display:block;
    position: absolute;
    left:38px;
    top:27px;
    background: url(../logo_v2.png) no-repeat;
    width: 120px;
    height: 55px;   
  } 
  
  #language {
    position:absolute;
    right:35px;
    top:42px;
    width:115px;
    font-size: 12px;font-size: 0.75rem;
    padding:32px 15px 0 0;
  }  
  #language UL { 
    display:none;
    width:108px; 
    box-shadow: 0px 0px 5px rgba(0,0,0, 0.2);
    background-color:#fff;
  } 
  .openLang #language UL {
    display:block; 
  }     
  #language UL LI {
    float:none;
    width:108px;
    letter-spacing:0;
    text-align:center;
    border-bottom:1px solid #d3d3d3;
    background-color:#fff;
  } 
  #language UL LI:last-child {
    border-bottom:0;
  }  
  #language UL LI A {
    display:block;
    padding:5px 0;  
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }
  #languagebutton {
    position:absolute;
    right:0;
    top:0;
    background: url(../globe.png) center center no-repeat;
    width: 32px;
    height: 32px;
    cursor:pointer;
  } 
  
  .menu { 
    width:auto;
    padding-top:52px;
  }
  .menu > ul { 
    padding-left:267px;
  }
  .menu > ul > li {
    float:left; 
    margin: 0 30px 0 0;
  }  
  .menu > ul li:last-child {
    margin: 0;
  }

  .row { width:679px; } 
  MAIN { margin-left:0;padding-top:119px; }
  FOOTER { border-left:0;padding-left:25px;}   
  
}

/* # 768 # */
@media only screen and (max-width: 768px) { 

  HEADER {background-color:#f5f5f5;height:51px;} 
  #logo {
    left:22px;
    top:15px;
    background-size: contain;
    width: 55px;
    height: 20px;   
  } 

	#v2 #logo {
		left:22px;
		top:15px;
		background-size: contain;
		width: 60px;
		height: 28px;   
	}     
  
  #topnav { 
    display:block;
    width:100%;
    margin-top:0x;
    margin-left:-100%;
    background-color:#f5f5f5;
    border-top:1px solid #404040;
    overflow:hidden;
    -webkit-transition: margin-left 0.2s linear;  
    -moz-transition: margin-left 0.2s linear; 
    -ms-transition: margin-left 0.2s linear; 
    transition: margin-left 0.2s linear;
  }
  .openNav #topnav {
    margin-left:0;
  }   
  
  .menu { padding-top:0; }
  .menu > ul { padding-left:0;}
  .menu > ul > li {float:none; margin: 0;border-bottom:1px solid #404040;}
  .menu > ul > li > a {
    display:block;
    text-align:center;
    padding:20px 0;
    font-size: 18px;font-size: 1.125rem;
  } 

  .menu > ul > li > a.current,
  .menu > ul > li > a:hover { 
    border-bottom: 0;
  }
  #menubutton {
    display:block; 
    width:51px;
    height:51px;
    line-height:51px;
    margin:0 auto; 
    color:#000;
    text-align:center;
    background: url(../burger.png) no-repeat;
    background-position:center center;    
    z-index:1001;  
  }  
  
  #language {
    right:17px;
    top:10px;
  }    
       
  
  MAIN {padding-top:51px;} 
 
  .row { width:560px; } 
  
  .claim {font-size:28px;font-size:1.75rem;}   
  
  .acc H2 {
    background-position:96% center;
  }   
  
  #v2 .acc H2 {
    background-position:96% center;
  } 
  
}         
/* # 560 # */
@media only screen and (max-width: 670px) {  
 
  .row { width:480px; }
  
}         
/* # 560 # */
@media only screen and (min-width: 320px) and (max-width: 480px) {  
 
  .row { width:273px; } 
  .menu > ul > li { margin: 0 18px 0 0;}   
  
  .claim {font-size:14px;font-size:0.875rem;}
  
  .acc H2 {
    background-position:94% center;
  } 
  
  #v2 .acc H2 {
    background-position:94% center;
  } 
  
  UL.info {
    float:none;
    width:auto;
    margin:0 0 0 5px;
  }
  UL.info LI {
    padding:0 0 15px 0;
    margin:0;
  } 
  
  BUTTON.country {
    height:21px;
    padding:0 6px;
  } 
  
  .form INPUT,.form TEXTAREA {
    width:273px;
  } 
  .form P { font-size:10px;font-size:0.625rem;margin-bottom: 8px;} 
  #contact SPAN {
    background-size:contain;
  }
  SPAN.post { padding-left:19px;}  
  SPAN.gap { padding:0 2px;} 
  A.mail {
    display:inline-block;
    padding:0 5px 0 22px;
    white-space:nowrap;
    line-height:30px;
    background-position: 0 center;
  } 
   
  FOOTER {
    font-size:8px; font-size:0.5rem;
    line-height:18px;
  }  
  
} 



/* ---------------------------------------------------------
   Print styles
   ---------------------------------------------------------*/
@media print {
  * {
    color:#000 !important;
    box-shadow:none !important;
    text-shadow:none !important;
		background:transparent !important;
    }
	html { background-color:#fff; }
	nav,#language,#menubutton,#slider { display:none; }

	/* Show link destinations in brackets after the link text */
	a[href]:after { content: " (" attr(href) ") "; }
	a[href] {
		font-weight:bold;
		text-decoration:underline;
		color:#06c;
		border:none;
	}
	/* Don't show link destinations for JavaScript or internal links */ 
	a[href^="javascript:"]:after, a[href^="#"]:after { content:""; }
	
	/* Show abbr title value in brackets after the text */
	abbr[title]:after { content: " (" attr(title) ")"; }

	figure { 
		margin-bottom:1em; 
		overflow:hidden;
	}

	figure img { border:1px solid #000; }
  
  #footer {display:none;}
}


/* formularfeld verstecken f�r robots */
INPUT.reqboth {
  position: absolute;
  left:-999em;
}

/* END */
