@charset "UTF-8";


body, html {
text-rendering: optimizeLegibility;
text-rendering: geometricPrecision;
font-smooth: always;
font-smoothing: antialiased;
-moz-font-smoothing: antialiased;
-webkit-font-smoothing: antialiased;
-webkit-font-smoothing: subpixel-antialiased;
-moz-osx-font-smoothing: grayscale;
}

body {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 15px;
	margin: 0;
	padding: 0;
	overflow-y: scroll;
	line-height: 1.2em;
	color: #575759;	
}
body#pageBody {

}
.clear {
	font-size: 0.1px;
	clear: both;	
}
a img {
	border: none;	
}
/* Typo */
h1 { 
	font-weight: bold;
	font-size: 1.73em;
	line-height: 1.2em;
	padding: 0.1em 0 0 0;
	margin: 0 0 0.7em 0;
	position:relative;
}
h2 { 
	font-weight: bold;
	font-size: 1.4em;
	line-height: 1.2em;
	padding: 0.6em 0 0 0;
	margin: 0 0 0.6em 0;
}
h3 { 
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.2em;
	padding: 0.2em 0 0 0;
	margin: 0 0 0.6em 0;
}
h4, h5, h6 { 
	font-weight: bold;
	font-size: 1em;
	line-height: 1.2em;
	padding: 0.1em 0 0 0;
	margin: 0 0 0.3em 0;
}

ul, table, p {
	padding-top: 0;
	padding-bottom: 0;
	margin-top: 0;
	margin-bottom: 1em;
}
strong, b { 

}

/* Tabellen und Listen */
table {
	
}
tr {
	
}
th, td {
	text-align: left;
	vertical-align: top;
	font-weight: normal;
	padding-right: 0.5em;
}
th {
	
}
td {
	
}
.arrow {
	padding-right: 16px;
	background: url(../images/arrow_grey_small.png) no-repeat right center;	
}

a {
	font-weight: bold;
	color: #575759;
	text-decoration: none;		
}
a:hover {
	color: #000;
	text-decoration: none;		
}
a.button {
	border: 1px solid #575759;
	padding: 0.3em 0.5em;
}
a.button:hover {
	border-color: #000;
}
a.arrow {
	padding-right: 16px;	
}
#pageBody {
	background-color: #575759;
}
#pageContainer {
	width: auto;	
}
#header {
	background-color: #FFF;	
}
#header .inner {
	width: 980px;
	height: 180px;
	margin: 0 auto 0 auto;
	position:relative;
}
#header #logo {
	display: inline;
	position: absolute;
	right: 20px;
	top: 0px;
}
#header #claim {
	display: block;
	position: absolute;
	left: 30px;
	top: 18px;
	width: 528px;
	height: 23px;
	background: url(../images/claim.png) no-repeat;
	overflow: hidden;
	text-indent:-1000px;
}
#header #mainmenu {
	display: block;
	position: absolute;
	left: 30px;
	bottom: 0px;
	width: 920px;
	height: 46px;
}
#header #mainmenu ul {
	height: 46px;
	margin: 0;
	padding: 0;
	list-style: none;
}
#header #mainmenu li {
	float: left;
	font-weight: bold;
}
#header #mainmenu li a {
	display: block;
	color: #575759;
	text-decoration:none;
	padding: 15px 1em 0 1em;
	height: 31px;
	background-image: url(../images/mainmenu_button.png);
	background-repeat: repeat-x;
	background-position: 0px 50px;
	text-decoration:none;
		-o-transition:0.4s;
	-ms-transition:0.4s;
	-moz-transition:0.4s;
	-webkit-transition:0.4s;
	transition:0.4s;

}
#header #mainmenu li a:hover {
	background-position: 0px 36px;
}
#header #mainmenu li.active a {
	color: #FFF;
	background-position: 0px 0px;
}
#content .box {
	-webkit-box-shadow: 1px 1px 3px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 1px 1px 3px 0px rgba(0,0,0,0.5);
	box-shadow: 1px 1px 3px 0px rgba(0,0,0,0.5);
}
#content {
	width: 980px;
	margin: 15px auto 0 auto;
}
#content .box {
	width: 980px;
	margin-bottom: 15px;
	background-color: #FFF;	
		
}
#content .box .inner {
	position: relative;
	padding: 30px;	
		
}
#footer {
	color: #FFF;
	font-size: 1em;	
}
#footer .inner {
	width: 920px;
	margin: 0 auto 30px auto;
	padding-top: 15px;
}
#footer .contact {
	width: 300px;
	float: left;
}
#footer .topics {
	width: 600px;
	float: right;
}
#footer .topics ul {
	list-style: none;
	color: #C5C5C7;
	font-size: 1.2em;
	line-height: 1.3em;
	margin: 0;
	padding: 0;
	overflow:hidden;
}
#footer .topics li {
	display: inline;
	background: url(../images/topics_separator.png) no-repeat left 0.4em;
	margin: 0 14px 0 -14px;
	padding: 0 0 0 14px;
	
}
#footer .topics li.no_icon {
	padding-left: 0;
	background: none;	
}
#footer .copyright {
	font-size: 0.86em;
	border-top: 1px solid #AAAAAC;
	padding-top: 0.65em;
	margin-top: 2em;
}
#footer a {
	color: #FFF;
	text-decoration: underline;	
}
#footer a:hover {
	color: #FFF;
	text-decoration: none;	
}



/* Slideshow */
#slideshow, #slideshow .elements, #slideshow .element {
	width: 920px;
	height: 420px;
	overflow: hidden;
	position:relative;	
}
#slideshow {
	margin-bottom: 2em;	
}
#slideshow .hotspot {
	position: absolute;
	width: 920px;
	height: 420px;
	overflow: hidden;
	text-indent: -1000px;
	z-index: 99;
	display: block;
}
#slideshow .controls {
	position: absolute;
	z-index: 100;
	right: 0px;
	bottom: 0px;
	height: 38px;
	width: 80px;
	padding: 4px 0 0 4px;
	background-color: #FFF;
}
#slideshow a.prev,
#slideshow a.next {
	display: block;
	float: left;
	width: 38px;
	height: 38px;
	background-repeat: no-repeat;
	background-position: 0px 0px;
	overflow:hidden;
	text-indent:-1000px;
	cursor:pointer;
}
#slideshow a.prev {
	background-image:url(../images/slideshow_btn_prev.jpg);
}
#slideshow a.next {
	background-image:url(../images/slideshow_btn_next.jpg);
	margin-left: 4px;
}
#slideshow .controls a:hover {
	background-position: 0px -38px;	
}
#slideshow .element {
}
#slideshow .element h2 {
	margin: 0;
	padding: 0;
	position: absolute;
	bottom: 0px;
	left: 0px;
	font-size: 1em;
	display: block;
	float: left;
	background-color: #FFF;
	padding: 12px 16px 0 10px;
	height: 30px;
}
#slideshow .element h2 span {
		
}

/* Content */
.services_overview {
	margin: 0 -10px;
}
.services_overview .element {
	position: relative;
	float: left;
	width: 450px;
	background-color: #575759;
	padding: 0;
	margin: 0 10px 10px 10px;
	color: #FFF;
}
.services_overview .element  img {
	width: 160px;
	height: 120px;
	margin: 8px;
	display: block;
	float: left;
}
.services_overview .element  .text {
	margin-left: 131px;
	height: 120px;
	margin: 8px;
	padding: 0 0 0 3px;
	overflow:hidden;
}
.services_overview .element  .text h3 {
	padding-top: 0;
	margin-bottom: 0.4em;
}
.services_overview .element  .text p {
	font-size: 0.92em;
	line-height: 1.2em;
	padding-top: 0;
	margin-bottom: 0;
}
.services_overview .element  .text strong {
	font-weight: normal;	
}

.content_element {
	
}
.content_element .inner {
	position: relative;
}
	
.content_element h2 {
	padding-top: 0;
}
.content_element .text {
	height: 180px;
	overflow:hidden;
	margin-right: 360px;
}
.projects .text {
	height: auto;
	overflow:auto;
	margin-right: 0px;
}
.content_element img {
	height: 220px;
	float: right;
	margin-left: 16px;
}
.content_element .images {
	float: right;
	width: 700px;
	text-align:right;
	margin-bottom: -16px;
}
.content_element .images img {
	margin-bottom: 16px;
	float:none;
}
.content_element .images img.small {
	height: auto;
}
.content_element .examples {
	display: inline;
	position: absolute;
	left: 30px;
	bottom: 30px;
	margin: 0;
}



.customSelect { 
	width: 400px;
	color: #FFF;
	padding: 0.5em 0.7em;
	cursor: pointer;
	background-image: url(../images/arrow_down_white.png);
	background-repeat: no-repeat;
	background-position: right center;
	background-color: #575759;
	
}

.customSelect.customSelectHover {
	background-color: #6F6F72;
	cursor: pointer;
}

.customSelect.customSelectOpen {
}

.customSelect.customSelectFocus {
/* Styles for when the select box is in focus */
}

.customSelect.customSelectDisabledOption {
/* Styles for when the selected item is a disabled one */
}

.customSelect.customSelectDisabled {
/* Styles for when the select box itself is disabled */
}

.customSelectInner {
	width: 380px;
}


/* Infobox */
.infobox_container {
	margin: 0 -12px;
}
.infobox {
	width: 290px;
	min-height: 300px;	
	margin: 0 12px;
	float: left;
	position: relative;
	padding: 0 0 20px 0;
}
.infobox img {
	margin: 0.2em 0 1em 0;	
}
.infobox a.arrow {
	position: absolute;
	left: 0px;
	bottom: 0px;	
}

#service_selector {
	position: absolute;
	width: 500px;
	right: 20px;
	top: 32px;
}
#service_selector span.title {
	float: left;
	display: block;
	padding: 0.5em 1em 0.5em 0;
}
#service_selector select {

}
.projects {
	margin: -5px -5px;
}
.projects .element {
	float: left;
	margin: 2px;
	border: 3px solid #FFF;
	-o-transition:0.4s;
	-ms-transition:0.4s;
	-moz-transition:0.4s;
	-webkit-transition:0.4s;
	transition:0.4s;
}
.projects .element:hover {
	border: 3px solid #575759;
}
.projects .element img {
	
}

/* Partner */
/*
.partner_overview {
	margin: 0 -10px;
}
.partner_overview .element {
	position: relative;
	float: left;
	width: 450px;
	background-color: #575759;
	padding: 0;
	margin: 0 10px 10px 10px;
	color: #FFF;
}
.partner_overview .element .image {
	width: 180px;
	height: 180px;
	margin: 8px;
	float: left;
	position: relative;
}
.partner_overview .element .image a {
	position: absolute;
	left: 0px;
	top: 0px;
	display: block;
	width: 100%;
	height: 100%;
}
.partner_overview .element .image table {
	width: 100%;
	height: 100%;
	margin: 0;
}
.partner_overview .element .image td {
	padding: 0;
	background-color: #FFF;
	text-align:center;
	vertical-align:middle;
}
.partner_overview .element .image img {
	
}
.partner_overview .element  .text {
	width: 246px;
	height: 160px;
	margin: 8px 8px 8px 0;
	float: left;
}
.partner_overview .element  .text h3 {
	padding-top: 0;
	margin-bottom: 0.4em;
}
.partner_overview .element  .text p {
	font-size: 0.92em;
	line-height: 1.2em;
	padding-top: 0;
	margin-bottom: 0;
}
.partner_overview .element .text a {
	color: #FFF;
	text-decoration: underline;	
}
.partner_overview .element .text a:hover {
	color: #FFF;
	text-decoration: none;	
}
*/
.partner_overview {
	margin: 0 -10px;
}
.partner_overview .element {
	position: relative;
	float: left;
	width: 448px;
	padding: 0;
	border: 1px solid #575759;
	margin: 0 10px 10px 10px;
	
}
.partner_overview .element .image {
	width: 180px;
	height: 140px;
	margin: 8px auto;
	position: relative;
}
.partner_overview .element .image a {
}
.partner_overview .element .image table {
	width: 180px;
	height: 140px;
	margin: 0;
}
.partner_overview .element .image td {
	width: 180px;
	height: 140px;
	padding: 0;
	background-color: #FFF;
	text-align:center;
	vertical-align:middle;
}
.partner_overview .element .image img {
	max-height: 140px;
}
.partner_overview .element  .text {
	height: 50px;
	margin: 0px;
	padding: 8px;
	text-align:center;
	background-color: #575759;
	color: #FFF;
}
.partner_overview .element  .text h3 {
	font-size: 1.1em;
	padding-top: 0.2em;
	margin-bottom: 0.2em;
}
.partner_overview .element  .text p {
	font-size: 0.92em;
	line-height: 1.2em;
	padding-top: 0;
	margin-bottom: 0;
}
.partner_overview .element .text a {
	color: #FFF;
	text-decoration:underline;
}
.partner_overview .element .text a:hover {
}
