/* General settings */
* {
	padding: 0;
	margin: 0;
	border: 0;
}

body, html {
	background-color: #FFFFFF;
	background-image: url('../images/bg_right_line.jpg');
	background-position: right;
	background-repeat: repeat-y;
	color: #575757;
	font: normal 11px/100% Arial, Tahoma, Verdana, Helvetica, sans-serif;
	height: 100%;
}

body {
	overflow: -moz-scrollbars-vertical;
}

a {
	text-decoration: underline;
	cursor: pointer;
}


/* Container */
#container {
	width: 100%;
	height: 100%;
	overflow: visible;
	display: block;
	float: left;
	background-image: url('../images/bg_container.jpg');
	background-position: top;
	background-repeat: repeat-x;
}


/* Columns */
#leftcolumn {
	float: left;
	display: block;
	width: 193px;
	height: 500px;
	overflow: visible;
	background-image: url('../images/bg_side_column.jpg');
	background-position: top;
	background-repeat: no-repeat;
}

*+html #leftcolumn {
	width: 185px;
	padding-right: 8px;
}

#middlecolumn {
	float: left;
	display: block;
	width: 690px;
	height: 100%;
	overflow: visible;
	background-image: url('../images/bg_middle_column.jpg');
	background-position: top;
	background-repeat: no-repeat;
}

#rightcolumn {
	float: right;
	display: block;
	width: 14px;
	height: 100%;
}

#rightside {
	float: right;
	display: inline;
}

#contentborder {
	float: left;
	display: block;
	width: 100%;
	min-height: 100%;
	padding: 0px;
	margin: 0px;
	background-image: url('../images/bg_content.jpg');
	background-repeat: repeat-y;
}

* html #contentborder {
	height: 100%;
	overflow: visible;
}


/* Header */
#logo {
	margin: 98px 0px 0px 4px;
	float: left;
}

* html #logo {
	margin-left: 0px;
	left: -10px;
	position: absolute;
}

*+html #logo {
	margin-left: 0px;
	left: -10px;
	position: absolute;
}

#navigation {
	margin: 83px 0px 0px 0px;
	height: 22px;
	width: 680px;
	float: left;
	overflow: hidden;
}

#navigation .inner {
	padding: 2px 0px 0px 10px;
}

#navigation table {
	display: inline;
	float: left;
}

#navigation table img {
	margin: 0px;
	padding: 0px;
	float: left;
}

#navigation table td.middle {
	background-image: url('../images/top_navi_active_middle.jpg');
	background-repeat: repeat-x;
}

#navigation .topnavilink, #navigation .topnavilinkactive {
	float: left;
	height: 22px;
	margin-right: 15px;
	color: #FFFFFF;
	font-size: 14px;
	font-weight: bold;
	text-decoration: none;
}

#navigation .topnavilink {
	margin-top: 4px;
}

#navigation a.topnavilinkactive {
	color: #565656;
}

#navigation #menu {
	float: left;
	display: inline;
	width: 520px;
}

#navigation #smalllinks {
	float: right;
	display: inline;
	width: 150px;
	text-align: right;
	color: #FFFFFF;
	margin: 3px 7px 0px 0px;
}

#navigation #smalllinks a {
	color: #FFFFFF;
	text-decoration: none;
	font-size: 10px;
}

#topbar {
	height: 24px;
	width: 680px;
	padding: 0px;
	margin: 0px;
	float: left;
	text-align: right;
}

#topbar #searchbox {
	width: 165px;
	margin: 4px 8px 0px 0px;
	padding: 0px;
	float: right;
	display: inline;
}

#topbar #searchbox input.text {
	font-size: 10px;
	margin-top: 1px;
	width: 100px;
	float: right;
}

#topbar #searchbox input.searchbutton {
	margin: 0px 0px 0px 4px;
	float: right;
}

#topbar #icons {
	float: right;
	display: inline;
}

* html #topbar #icons {
	width: 75px;
}

*+html #topbar #icons {
	width: 75px;
}

#topbar #icons a {
	margin: 4px 8px 0px 0px;
	float: right;
}


/* Subnavi */
#subnavi {
	margin: 220px 0px 0px 14px;
}

#subnavi a {
	font-size: 12px;
	color: #565655;
	text-decoration: none;
}

#subnavi .sub, #subnavi .subactive {
	margin-left: 20px;
	line-height: 120%;
}

#subnavi .sub:hover, #subnavi .subactive {
	font-weight: bold;
}

ul#sliding-navigation {
	list-style: none;
	padding: 0px;
	margin: 0px;
	width: 170px;
	overflow: hidden;
}


ul#sliding-navigation li.sliding-element {
	height: 30px;
}

ul#sliding-navigation li.sliding-element a {
	display: block;
	width: 170px;
	padding: 0px;
	margin: 0;
}

ul#sliding-navigation li.sliding-element a {
	padding: 6px 5px 6px 10px;
	background: url('../images/sliding_tab_bg.jpg');
	background-repeat: no-repeat;
}

ul#sliding-navigation li.sliding-element a:hover, ul#sliding-navigation li.sliding-element a.active { font-weight: bold; }

#phonebox img {
	display: inline;
	float: left;
	margin: 0px 5px 5px 0px;
}


/* Content */
#content {
	float: left;
	width: 655px;
	/*height: 100%;*/
	padding: 15px;
}

* html #content {
	width: 650px;
}

#content, #content p {
	line-height: 120%;
	font-size: 12px;
}

#content h1 {
	line-height: 120%;
	font-size: 14px;
	font-weight: bold;
	margin: 0px 0px 8px 0px;
}

#content .cmstext {
	padding: 0px 0px 20px 0px;
}

#content a {
	color: #575757;
}

#content a:hover {
	color: #0C5798;
}

#content #ext {
	text-align: center;
	width: 100%;
	margin: 50px 0px 0px 0px;
}

#content ul, #content ol {
	padding: 0px;
	list-style: disc;
	list-style-position: inside;
}

#content .cmstext li {
	margin: 0px;
	padding-left: 25px;
	text-indent: 0px;
	line-height: 140%;
}

#content .errors {
	color: #FF0000;
	font-weight: bold;
}

* html #content ul {
	list-style-position: inside;
	margin: 0.7em 0px 0px 0px;
}

* html #content ul ul {
	margin-top: 0.2em;
}

* html #content li {
	margin: 0px 0px 0px 2em;
	padding: 0px 0px 1px 0px;
}

*+html #content ul {
	list-style-position: inside;
	margin: 0px;
}

*+html #content li {
	padding: 0px;
	display: list-item;
}

#content .cmstext ol {
	text-align: left;
}

#content .cmstext ol li {
	padding-left: 0px;
}

#content .line {
	height: 1px;
	width: 660px;
	display: block;
	background-image: url('../images/line.gif');
	background-repeat: repeat-x;
	font-size: 1px;
	clear: all;
}

*+html #content .line {
	width: 662px;
}

#content img.grayscale {
	filter: progid:DXImageTransform.Microsoft.basicimage(grayscale=1);
}

#content .defaulttable {
	border-collapse: separate;
	background-color: #D4D6D6;
}

#content .defaulttable td {
	padding: 4px;
}
#content .defaulttable td.ser {
	background-image: url('../images/Service-bg.jpg');
}

#content .defaulttable tr.odd {
	background-color: #E7E7E7;
}

#content .defaulttable tr.even {
	background-color: #FFFFFF;
}

#content .defaulttable td a, #content .defaulttable td a img {
	display: inline;
	float: none;
	margin: 0px;
	padding: 0px;
}

#content .defaulttable td a.smallbutton {
	float: left;
	padding: 0px;
	margin: 4px 0px 0px 42px;
}

#content .leftbox {
	background: url("../images/content-box-left.jpg") no-repeat;
	width: 362px;
	height: 224px;
	float: left;
}

#content .rightbox {
	background: url("../images/content-box-right.jpg") no-repeat;
	width: 288px;
	height: 224px;
	float: left;
	margin: 0px 0px 0px 5px;
}

#content .fullbox {
	background: url("../images/content-box-full.jpg") no-repeat;
	width: 655px;
	height: 345px;
	float: left;
	margin: 5px 0px 0px 0px;
}

* html #content .rightbox {
	margin-left: 2px;
}

#content .leftbox a, #content .rightbox a, #content .fullbox a {
	text-decoration: none;
}

#content .leftbox li, #content .rightbox li {
	padding-bottom: 5px;
	width: 340px;
	vertical-align: top;
}

* html #content .leftbox li {
	margin: 0px;
	width: 330px;
}

* html #content .rightbox li {
	margin: 0px;
	width: 260px;
}

*+html #content .leftbox li {
	margin: 0px;
	width: 330px;
}

*+html #content .rightbox li {
	margin: 0px;
	width: 260px;
}

#content .leftbox .inner, #content .rightbox .inner, #content .fullbox .inner {
	padding: 10px;
	overflow: hidden;
	z-index: 10px;
}

#content .fullbox .inner {
	padding-left: 50px;
}

#content .leftbox .inner {
	z-index: 8px;
	padding-top: 10px;
	margin: 4px 0px 2px 0px;
	padding-right: 0px;
	width: 348px;
	height: 204px;
	scrollbar-base-color:#C2D9E3;
	scrollbar-3dlight-color:#E7E7E7;
	scrollbar-arrow-color:#FFFFff;
	scrollbar-darkshadow-color:#40758C;
	scrollbar-highlight-color:#E4EEF3;
	scrollbar-shadow-color:#5595B1;
	scrollbar-track-color:#E7E7E7;
}

#content .leftbox .line, #content .rightbox .line {
	width: 270px;
	margin: 20px 0px 15px 0px;
}

#content .leftbox .line {
	width: 340px;
}

#content .fullbox .product {
	text-align: center;
	font-size: 11px;
	float: left;
	margin: 0px 5px 7px 0px;
	display: inline;
	width: 102px;
	border: 1px solid #FFFFFF;
	z-index: 5;
	line-height: 100%;
	margin-top: 0px;
}

#content .fullbox .productover {
	border: 1px solid #888888;
}

#content .fullbox .product a {
	text-decoration: none;
	font-size: 11px;
	font-weight: bold;
}

#content .fullbox .product h2 {
	display: inline;
	font-size: 11px;
}


/* Teaser */
#pageteaser {
	float: left;
	margin: 0px 0px 0px 5px;
	padding: 0px;
}

* html #pageteaser {
	margin-left: 2px;
}

#pageteaser .teaserline {
	width: 680px;
	height: 120px;
	float: left;
	background-color: #2d5974;
}

#pageteaser .teaser {
	width: 221px;
	float: left;
	height: 120px;
	color: #FFFFFF;
	font-size: 12px;
	line-height: 120%;
	padding: 0px 5px 0px 0px;
}

#pageteaser .teaser h1 {
	color: #FFFFFF;
	font-size: 12px;
	font-weight: bold;
	margin: 10px 0px 0px 0px;
	text-decoration: none;
}

* html #pageteaser .teaser h1 {
	margin-left: 3px;
}

#pageteaser .teaser a {
	float: left;
	font-size: 12px;
	font-weight: bold;
	text-decoration: none;
}

#pageteaser .teaser img {
	margin-right: 10px;
}

* html #pageteaser .teaser img {
	margin-right: 5px;
}

#pageteaser .hometeaser {
	display: block;
	margin-bottom: 1px;
}

#pageteaser .hometeaser a {
	margin: 170px 0px 0px 380px;	
	float: left;
}

#pageteaser #portfolio {
	list-style: none;
	width: 680px;
	height: 214px;
	overflow: hidden;
}

* html #pageteaser #portfolio {
	margin-left: 1px;
}

#pageteaser #home_cms_de, #pageteaser #home_cms_en, #pageteaser #home_ics_de, #pageteaser #home_ics_en, #pageteaser #home_contract_de, #pageteaser #home_contract_en, #pageteaser #home_idm_de, #pageteaser #home_idm_en, #pageteaser #home_file_de, #pageteaser #home_file_en, #pageteaser #home_contact_de, #pageteaser #home_contact_en, #pageteaser #home_projects_de, #pageteaser #home_projects_en, #pageteaser #home_textblocks_de, #pageteaser #home_textblocks_en {
	width: 680px;
	height: 214px;
}

#pageteaser #home_cms_de {
	background: url("../../../media/images/teasers/home-cms-de.jpg");
}

#pageteaser #home_cms_en {
	background: url("../../../media/images/teasers/home-cms-en.jpg");
}

#pageteaser #home_contract_de {
	background: url("../../../media/images/teasers/home-con-de.jpg");
}

#pageteaser #home_contract_en {
	background: url("../../../media/images/teasers/home-con-en.jpg");
}

#pageteaser #home_ics_de {
	background: url("../../../media/images/teasers/home-ics-de.jpg");
}

#pageteaser #home_ics_en {
	background: url("../../../media/images/teasers/home-ics-en.jpg");
}

#pageteaser #home_idm_de {
	background: url("../../../media/images/teasers/home-idea-de.jpg");
}

#pageteaser #home_idm_en{
	background: url("../../../media/images/teasers/home-idea-en.jpg");
}

#pageteaser #home_file_de {
	background: url("../../../media/images/teasers/home-file-de.jpg");
}

#pageteaser #home_file_en{
	background: url("../../../media/images/teasers/home-file-en.jpg");
}

#pageteaser #home_contact_de {
	background: url("../../../media/images/teasers/home-kon-de.jpg");
}

#pageteaser #home_contact_en{
	background: url("../../../media/images/teasers/home-kon-en.jpg");
}

#pageteaser #home_projects_de {
	background: url("../../../media/images/teasers/home-pro-de.jpg");
}

#pageteaser #home_projects_en{
	background: url("../../../media/images/teasers/home-pro-en.jpg");
}

#pageteaser #home_textblocks_de {
	background: url("../../../media/images/teasers/home-text-de.jpg");
}

#pageteaser #home_textblocks_en{
	background: url("../../../media/images/teasers/home-text-en.jpg");
}


/* Blur effect */
#logo_holder { position: absolute; }

#logo_holder a, #logo_holder img {
	z-index: 15; 
	position: absolute;
}

#logo_holder em {
	position: absolute;
	display: none;
	z-index: 5;
	background: url("../images/logo_de_over.png") no-repeat;
	width: 185px;
	height: 40px;
	top: 99px;
	left: 4px;
}

#logo_holder em.en {
	background: url("../images/logo_en_over.png") no-repeat;
}

.btn_blur { margin: 5px 0 0 0; }


/* General forms */
#content input.text, #content textarea, #content select {
	width: 350px;
	border: 1px solid #cecece;
	padding: 2px;
}

#content select {
	width: 356px;
}

input.button {
	margin-right: 2px;
	width: 125px;
	height: 25px;
	background-image: url('../images/bg_button.jpg');
	background-repeat: no-repeat;
	font-size: 12px;
	line-height: 100%;
	color: #FFFFFF;
	padding: 0px 0px 4px 0px;
	text-align: center;
}

input.button:hover {
	color: #444444;
	cursor: pointer;
}

* html input.button {
	padding-bottom: 0px;
}

*+html input.button {
	padding-bottom: 0px;
}


/* Contact */
#cmscontactform, #contactform, #cmscontactform form {
	padding: 0px;
	margin: 0px;
}

#contactform label {
	display: block;
	margin-top: 6px;
	line-height: 120%;
}

#contactform .optional {
	color: #999999;
}

#contactform span.radio, #contactform input.radio {
	display: inline;
	float: left;
}

#contactform span.radio {
	padding: 0px 0px 0px 3px;
	height: 18px;
	line-height: 130%;
	margin-right: 20px;
}

#contactform .contacttype {
	display: block;
	width: 100%;
	float: left;
	padding: 3px 0px 8px 0px;
}

* html #contactform .contacttype {
	float: none;
}

*+html #contactform .contacttype {
	float: none;
}


/* Mailings */
#mailsubscription .errors p {
	color: red;
	font-size: 1.1em;
	margin: 0px;
	padding: 0px;
	line-height: 120%;
	font-weight: bold;
}

#mailsubscription form {
	float: left;
	display: block;
	clear: both;
	margin-bottom: 25px;
	width: 100%;
}

#mailsubscription .cmstext {
	margin: 0px;
	padding: 0px;
}

#mailsubscription h1 {
	margin-bottom: 0px;
	padding-bottom: 3px;
}

#mailsubscription p {
	margin-top: 0px;
}

* html #mailsubscription form {
	margin-bottom: 5px;
}

*+html #mailsubscription form {
	margin-bottom: 5px;
}

#mailsubscription .forminputelement {
	width: 100%;
	float: left;
	display: block;
	clear: both;
	margin: 0px 0px 2px 0px;
	padding: 0px;
}

#mailsubscription .forminputelement label {
	font-size: 1.1em;
	line-height: 150%;
	width: 100%;
	float: left;
	display: block;
	clear: both;
	margin: 0px;
	padding: 0px;
}

#mailsubscription .forminputelement input, #mailsubscription .forminputelement select {
	font-size: 1.1em;
	line-height: 150%;
}

#mailsubscription form input.text {
	width: 250px;
	clear: both;
	float: left;
}

#mailsubscription form select {
	width: 256px;
}

#mailsubscription form input.button {
	display: block;
	clear: both;
	float: left;
}


/* Search */
#content #searchresults {
	margin: 0px;
	padding: 0px;
}

#content #searchresults li {
	padding-bottom: 20px;
}

#content #searchresults .match {
	font-weight: bold;
	font-style: italic;
	display: inline;
}

#content #searchresults table.navi {
	padding: 0px;
	margin: 0px;
}

#content #searchresults table.navi td {
	line-height: 100%;
	height: 20px;
	vertical-align: center;
}

#content #searchresults table.navi td img {
	margin-top: 3px;
	height: 13px;
	width: 13px;
}

*+html #content #searchresults table.navi td img { 
	margin-top: 0px;
}


/* Auto complete function */
.ac_results {
	padding: 0px;
	border: 1px solid #ccc;
	background-color: Window;
	overflow: hidden;
	z-index: 99999;
}

.ac_results ul {
	width: 100%;
	list-style-position: outside;
	list-style: none;
	padding: 0;
	margin: 0;
}

.ac_results li {
	margin: 0px;
	padding: 2px 5px;
	cursor: default;
	display: block;
	/* 
	if width will be 100% horizontal scrollbar will apear 
	when scroll mode will be used
	*/
	/*width: 100%;*/
	font: menu;
	font-size: 11px;
	font-weight: bold;
	/* 
	it is very important, if line-height not setted or setted 
	in relative units scroll will be broken in firefox
	*/
	line-height: 16px;
	overflow: hidden;
	cursor: pointer;

}

.ac_loading {
	background : Window url('../images/indicator.gif') right center no-repeat;
}

.ac_over {
	background-color: #004D8C;
	color: #FFFFFF;
	font-size: 11px;
	font-weight: bold;
	cursor: pointer;
}

.ac_moreItems {
	text-align: center;
	background-color: InactiveCaption;
	color: InactiveCaptionText;
	margin: 0px;
	padding: 0px 5px;
	cursor: default;
	display: block;
	width: 100%;
	font: bold menu 12px;
	overflow: hidden;
	-moz-user-select: none;
	-khtml-user-select: none;
}


/* Resizable textareas */
#content .resizable-textarea {
	margin: 0px;
}

#content div.grippie {
	background: #EEEEEE url('../images/grippie.png') no-repeat scroll center 2px;
	border-color: #DDDDDD;
	border-style: solid;
	border-width: 0pt 1px 1px;
	cursor: s-resize;
	height: 9px;
	overflow: hidden;
	margin: 0px;
}

#content .resizable-textarea textarea {
	display: block;
	margin-bottom: 0pt;
	margin: 0px;
}


/* Reflection */
#container canvas, #container img.reflect, #container img.reflected, #container .rheight33 {
	margin: 0px;
	padding: 0px;
}

#container .rheight33 {
	display: inline;
	float: left;
}


/* Special pages */
#pageteaser .teaserbox {
	width: 680px;
}

#pageteaser .teaserbox .leftbox, #pageteaser .teaserbox .rightbox {
	width: 200px;
	padding: 42px 88px 0px 10px;
	color: #FFFFFF;
	font-size: 12px;
	line-height: 110%;
	float: left;
}

#pageteaser .teaserbox .rightbox {
	width: 260px;
}

#pageteaser #teaserproducts {
	height: 172px;
	background-image: url('../../../media/images/teasers/products.jpg');
}

#pageteaser #teaserproducts .leftbox, #pageteaser #teaserproducts .rightbox {
	height: 120px;
}


/* Lightbox galleries */
#jquery-overlay {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 90;
	width: 100%;
	height: 500px;
}
#jquery-lightbox {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
	text-align: center;
	line-height: 0;
}
#jquery-lightbox a img { border: none; }
#lightbox-container-image-box {
	position: relative;
	background-color: #fff;
	width: 250px;
	height: 250px;
	margin: 0 auto;
}
#lightbox-container-image { padding: 10px; }
#lightbox-loading {
	position: absolute;
	top: 40%;
	left: 0%;
	height: 25%;
	width: 100%;
	text-align: center;
	line-height: 0;
}
#lightbox-nav {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 10;
}
#lightbox-container-image-box > #lightbox-nav { left: 0; }
#lightbox-nav a { outline: none;}
#lightbox-nav-btnPrev, #lightbox-nav-btnNext {
	width: 49%;
	height: 100%;
	zoom: 1;
	display: block;
}
#lightbox-nav-btnPrev { 
	left: 0; 
	float: left;
}
#lightbox-nav-btnNext { 
	right: 0; 
	float: right;
}
#lightbox-container-image-data-box {
	font: 10px Verdana, Helvetica, sans-serif;
	background-color: #fff;
	margin: 0 auto;
	line-height: 1.4em;
	overflow: auto;
	width: 100%;
	padding: 0 10px 0;
}
#lightbox-container-image-data {
	padding: 0 10px; 
	color: #666; 
}
#lightbox-container-image-data #lightbox-image-details { 
	width: 70%; 
	float: left; 
	text-align: left; 
}	
#lightbox-image-details-caption { font-weight: bold; }
#lightbox-image-details-currentNumber {
	display: block; 
	clear: left; 
	padding-bottom: 1.0em;	
}			
#lightbox-secNav-btnClose {
	width: 66px; 
	float: right;
	padding-bottom: 0.7em;	
}


td.service {
	width:50%; 
	background-image: url(/media/images/teasers/service-bg.jpg); 
	background-repeat:no-repeat; 
	padding-top:20px; 
	padding-left:12px;
}

td.service table {
	width: 290px;
	height: 113px;
}

.produkte {
height: 125px;
padding:5px 7px;
margin: 0px;
width: 307px;
vertical-align: text-top;
}

.produkte_head{
height: 37px;
background-image: url(/media/images/teasers/produkt_bg.jpg);
background-repeat:no-repeat; 
padding-left:15px;
padding-top:10px; 
font-weight:bold;
margin-buttom:0px;
}