html {
	padding: 0;
	margin: 0;	
}

body {
	font-family: Arial;
	font-size: 13px;
	line-height: 16px;
	color: #6e6e6e;
	padding: 0;
	margin: 0;
}

div.wrapper {	
	width: 900px;
	padding: 0 15px 15px 15px;
	margin: 0 auto;
}

h1, h2, h3, h4 {
	color: black;
	padding: 0;
	margin: 0;
	font-weight: normal;
}

h1 {
	margin-bottom: 15px;
	font-size: 20px;
	line-height: 24px;	
}

h2 {
	font-size: 16px;
	line-height: 20px;	
}

h3 {
	font-size: 14px;
	line-height: 16px;	
}

h4 {
	font-size: 13px;
	font-weight: bold;
}

a {
	color: #9fc100;
	text-decoration: none;
}

a.text {
	color: inherit;
}

hr {
	clear: both;
	height: 13px;
	background: url('../images/hr.gif') left center repeat-x;
	border: none;
	padding: 0;
	margin: 10px 0;
	color: white;
}

a:hover {
	text-decoration: underline;
}

img {
	border: 0;
}

p {
	margin-top: 5px;
	margin-bottom: 15px;
}

/* Navigation und Header */

#wrapper {
	width: 900px;
	padding: 0 15px;
	margin: 0 auto;
}

#top {
	position: relative;
	background: url('../images/dipro-logo.gif') 4px 43px no-repeat;
	height: 150px;
}

a.nav-logo {
	display: block;
	float: left;
	width: 300px;
	height: 130px;
	margin: 10px;
}

#dots {
	position: absolute;
	right: 15px;
	top: 27px;
	z-index: 100;
}

#top ul {
	float: right;
	margin: 105px 0 0 0;
	padding: 0;
}

#top li {
	display: block;
	padding: 0 10px;
	float: left;
}

#top li a {
	display: block;
	height: 18px;
	background-position: center -18px;
	background-repeat: no-repeat;
}

#top li a:hover {
	background-position: center 2px;
}

#top li a.active {
	background-position: center -38px;
}

a.nav-Startseite {
	background-image: url('../images/navigation/nav-home.gif');
	width: 42px;
}

a.nav-Referenzen {
	background-image: url('../images/navigation/nav-referenzen.gif');
	width: 80px;
}

a.nav-Produkte {
	background-image: url('../images/navigation/nav-produkte.gif');
	width: 65px;
}

a.nav-Kontakt {
	background-image: url('../images/navigation/nav-kontakt.gif');
	width: 56px;
}

a.nav-Team {
	background-image: url('../images/navigation/nav-team.gif');
	width: 38px;
}

a.nav-Impressum {
	background-image: url('../images/navigation/nav-impressum.gif');
	width: 78px;
}

#main {
	float: left;
	width: 900px;
	background: url('../images/balken.gif') top no-repeat;
	padding-top: 27px;
}

#footer {
	clear: both;	
	padding: 10px;
	background-color: #eaeaea;	
	text-align: right;
}

#footer span.info {
	float: left;
}

/* General */

div.box {
	float: left;
	width: 100%;
	margin-bottom: 12px;
}

div.halfbox {
	float: left;
	width: 580px;
	margin-bottom: 12px;
}

div.sidebox {
	float: right;
	width: 285px;
}

img.decoration {
	float: right;
	margin: 40px 0 10px 0;
}

img.right {
	float: right;
}

a.back {
	display: block;
	padding-left: 20px;
	background: url('../images/arrow-back.gif') left center no-repeat;
}

div.success {
	background: url('../images/success.gif') 0px 5px no-repeat;
}

div.error {
	background: url('../images/fail.gif') 0px 5px no-repeat;
}

div.success, div.error {
	padding: 12px 0 0 60px;
	margin-bottom: 12px;
	min-height: 50px;
}

/* Startseite */

#home div#main {
	background: url('../images/home-balken.gif') top no-repeat;
	padding-top: 258px;
	position: relative;
}

#slideshow {
	position: absolute;
	left: 615px;
	top: 70px;
	z-index: 100;
}

#home div#main ul {
	margin: 0;
	padding: 0;
}

#home div#main li {
	display: block;
	padding: 0 20px 15px 26px;
	background: url('../images/listdot.gif') left top no-repeat;
}

#home div#main h2 {
	margin-bottom: 2px;
}

span.sideheading {
	display: block;
	font-size: 20px;
	line-height: 24px;
	color: #9fc100;
	margin-bottom: 12px;
}

div.whitelabels {
	float: left;
	margin-bottom: 10px;
}

div.whitelabels img {
	float: left;
}

/* Impressum */

table.pretty, table.contact {
	margin-top: 10px;
	font-size: 13px;
	border-collapse: collapse;
}

table.pretty td {
	padding-bottom: 16px;
}

table.pretty th {
	color: black;
	font-weight: normal;	
	padding: 0 15px 16px 0;
	text-align: left;
	vertical-align: top;
}

/* Contact */

table.contact th {
	width: 130px;
	padding: 0 15px 8px 0;
	color: black;
	font-weight: normal;	
	text-align: right;
	vertical-align: top;
}

table.contact td {
	padding-bottom: 8px;
}

table.contact textarea {
	width: 405px;
	height: 135px;
}

table.contact input[type=text] { width: 405px; }
table.contact tr.captcha input { width: 70px; }
table.contact tr.captcha { color: black; }
table.contact tr.captcha a {
	font-weight: bold;
}

div.contact {
	padding-bottom: 15px;
	border-bottom: 1px dotted #6e6e6e;
}

/* Referenzen */

div.referenzen {
	float: left;
	width: 100%;
	padding-top: 23px;
}

div.neu {
	background: url('../images/ref-neu.gif') top left no-repeat;
	margin-bottom: 5px;	
}

div.weitere {
	background: url('../images/ref-weitere.gif') top left no-repeat;
	margin-bottom: 20px;
}

div.referenzen a {
	position: relative;
	display: block;
	float: left;	
	width: 110px;
	height: 110px;
	padding: 0 3px 3px 0;
	text-decoration: none;
	z-index: 10;
	color: white; /* IE6 text-decoration bug */
}

div.referenzen a:hover {
	margin-bottom: 0px; /* IE7 z-index refresh trigger */
	z-index: 20;
}

div.referenzen img {
	border: 0;
}

div.referenzen a.last {
	padding: 0 0 3px 0;
	margin-left: -1px;
}

span.teaserbox {
	display: block;
	position: absolute;
	top: 85px;
	z-index: 100;
	background-color: #666666;
}

span.teasercontent {
	display: block;
	position: relative;
	top: -5px;
	left: -5px;
	width: 220px;
	padding: 24px;
	border: 5px solid #aed300;
	background-color: white;
	color: #6e6e6e;	
}

span.teaserbox strong { color: black; }

div.referenzen a span.teaserbox { visibility: hidden; }
div.referenzen a:hover span.teaserbox { visibility: visible; }

span.teaserbox span.title {
	color: black;
	font-size: 16px;
	line-height: 20px;
}

span.fakelink {
	margin-top: 50px;
	color: #9fc100;
	font-weight: bold;
}

/* Referenzen Details */

div.pictures {
	float: left;
	width: 300px;
	margin-bottom: 10px;	
}

div.pictures p.subtitle {
	margin: 4px 0 15px 0;
	font-size: 12px;
}

div.content {
	float: right;
	width: 550px;
	margin-bottom: 25px;
}

div.content b {
	color: black;
	font-size: 16px;
	font-weight: normal;
	line-height: 24px;
}

/* Team */

div.team {
	float: left;
	margin-bottom: 20px;
}

div.team a {
	display: block;
	width: 210px;
	height: 55px;
	background-repeat: no-repeat;
	background-position: 220px top;
	color: #6e6e6e;
	font-size: 12px;
	text-align: right;
	padding: 65px 90px 0 0;
	text-decoration: none;
}

div.team a.active {
	background-position: 220px bottom;
	background-color: #aed300;
}

div.team a:hover {
	background-position: 220px center;
}

div.team a.active:hover {
	background-position: 220px bottom;
}

div.teambox {
	float: right;
	width: 520px;
	padding-right: 30px;
	margin-bottom: 20px;
}

div.teambox div.picture {
	float: left;
	width: 265px;
	height: 430px;
	padding-top: 25px;
	background-repeat: no-repeat;
	background-position: -90px top;
}

div.teambox div.description {
	padding-top: 85px;
	margin-right: 20px;
}

div.team span {
	color: black;
	font-size: 14px;
	line-height: 16px;
}