body {
	background: 				#fff;
	text-align:					center;
	padding:					0;
	margin:						0;
	font-family:				Arial, Verdana, sans-serif;
}

code {
	font-family:				Arial, Verdana, sans-serif;
	color:						#58585A;
}

img {
	border:						0;
}

.clr {
	clear:						both;
}

a {
	cursor:						pointer;
}

form,
fieldset {
	border:						none;
	padding:					0;
}

fieldset {
	margin-bottom:				20px;
}

.standardFieldset label {
	width:						170px;
	float:						left;
}

.textareaFieldset textarea {
	display:					block;
	width:						300px;
}

.elementChooser label {
	display:					block;
}

.elementChooser #service_container {
	padding:					10px 0;
}

.mhCartItem {
	margin:						2px 0;
}

.standardFieldset div {
	clear:						left;
	margin-bottom:				10px;
}


#shadowTop,
#main {
	margin:						0 auto;	
	width:						995px;
}

#mainWrapper {
	padding:					0 8px;
	position:					relative;
}

#main {		
	text-align:					left;
	background:					url(../img/layout/bg_main.png) repeat-y;	
}

#shadowTop{
	width: 						995px;
	height:						26px;
	background:					url(../img/layout/shadow_top.png) no-repeat;
}

#shadowBottom {
	background:					url(../img/layout/shadow_bottom.png) no-repeat;
}

#header {
	height:						70px;
	background:					#fff;
	position:					relative;
}

#langSwitcher {
	position:					absolute;
	top:						38px;
	left:						610px;
	font-size:					12px;
}

#langSwitcher a {
	color:						#58585a;
	text-decoration:			none;
}

#langSwitcher a:hover {
	text-decoration:			underline;
}

#langSwitcher a.active{
	font-weight:				bold;
}

#bacteria {
	height:						70px;
	background:					url(../img/layout/bacteria_header.jpg) no-repeat;
	border-top:					5px solid #dfe4e8;
	border-bottom:				5px solid #dfe4e8;
}

#shadowHeader {
	height:						7px;
	background:					url(../img/layout/header_shadow.png) no-repeat;
	overflow:					hidden; /* IE bug */
}

#header a img {
	position:					absolute;
	left:						228px;
	top:						-13px;	
}

#header form,
#header fieldset {
	border:						none;
	padding:					0;
	position:					relative;
	display:					block;
	width:						230px;
}

#header form {
	position:					absolute;
	top:						27px;
	left:						740px;
}

#header label {
	display:					none;
}

#header input {
	width:						150px;
	border:						1px solid #cecfd0;
	padding:					3px;
	margin-top:					6px;
}

#header #btSearch {
	position:					absolute;
	top:						1px;
	right:						0;
	width:						auto;
	margin:						0;
	border:						none;
	
}

#nav {
	float:						left;
	height:						512px;
	width:						214px;
	background:					url(../img/layout/bg_nav.png) no-repeat;
}

#content {
	width:						741px;
	margin-left:				229px;
	padding-bottom:				20px;
	font-size:					14px;
}

#content,
#content h2 a {
	color:						#58585A;
}

#col1 {
	float:						left;
	width:						510px;
	min-height:					300px;
    position:                   relative;
}

#oneColFullWidth {
	float:						left;
	width:						736px;
}

#col2 {
	float:						right;
	width:						213px;
	min-height:					300px;
}

#oneCol {
	width:						500px;
	padding:					0 0 0 100px;
	float:						left;
}

#nav ul {
	padding:					0;
	margin:						0 0 22px 0;
	list-style:					none;
}

#nav li {
	border-bottom:				1px solid #dfe4e8;
}

#nav li a {
    background:                 no-repeat left 10px;
}

#nav li a {
	display:					block;
	background-image:			url(../img/layout/bg_nav_standard.png);
	line-height:				27px;
	padding-left:				30px;
	font-size:					14px;
	color:						#000;
	text-decoration:			none;
	height:						27px;
}

#nav li a:hover {
	font-weight:				bold;
}

#nav li.active {
	border-top:					none;
	background:					url(../img/layout/bg_nav_active.png) left -2px no-repeat;
}

#nav li ul {
	display:					none;
}

#nav li.active ul {
	display:					block;
}

#main #nav li.active ul {
	margin:						5px 0;
}

#main #nav li.active ul li {
	background:					none;
	border-bottom:				none;
	padding-left:				35px;
}

#main #nav li.active ul li a {
	background-position:		left 10px;
	display:					block;
	height:						18px;
	padding-left:				15px;
	font-weight:				normal;
	font-size:					12px;
	line-height:				18px;
}

#main #nav li.active ul li.active a {
	font-weight:				bold;
}

#main #nav li.active ul li a:hover {
	font-weight:				bold;
}

#nav li.active a {
	font-weight:				bold;
	line-height:				28px;
	background-position:		left 11px;
	padding-top:				1px;
}

#nav li.metaLink {
	border-bottom:				none;
	background-image:			none;
}

#nav li.metaLink a {
	background-image:			none;
	font-size:					13px;
}

#nav li.metaLink.trolleyLink a {
	color:						red;
	font-weight:				bold;
}

#nav .separator {
	height:						10px;
}

#nav #navPrivate a {
	background-image:			url(../img/layout/bg_nav_private.png);
}

#nav #navProducts a {
	background-image:			url(../img/layout/bg_nav_products.png);
}

#nav #navConsulting a {
	background-image:			url(../img/layout/bg_nav_consulting.png);
}

#nav #navServices a {
	background-image:			url(../img/layout/bg_nav_services.png);
}

#nav ul ul a,
#main #nav ul ul a.standard {
	background-image:			url(../img/layout/bg_subnav_standard.png);
}

#nav #navPrivate li a {
	background-image:			url(../img/layout/bg_subnav_private.png);
}

#nav #navProducts li a {
	background-image:			url(../img/layout/bg_subnav_products.png);
}

#nav #navConsulting li a {
	background-image:			url(../img/layout/bg_subnav_consulting.png);
}

#nav #navServices li a {
	background-image:			url(../img/layout/bg_subnav_services.png);
}

#memberships {
	margin:						10px 0 0 0 ;
	line-height:				45px;
}

#memberships img {
	margin:						0 20px;
	vertical-align:				middle;
}

/* Content */

h1 {
	font-size:					24px;
	font-weight:				bold;
	margin:						10px 0 20px 0;
	padding:					0;
	color:						#000;
}

#content h1 a {
    color:                      #000;
    text-decoration:            underline;
}


h2,
legend {
	font-size:					16px;
	font-weight:				bold;
	padding:					0 0 3px 0;
	margin:						0 0 9px 0;
	display:					block;
}

h2 {	
	border-bottom:				3px solid #dfe4e8;
	clear:						left;
}

h3 {
	color:						#58585a;
	font-size:					14px;
	margin:						0;
}

#content p {
	color:						#58585a;
	font-size:					14px;
	margin:						0 0 1.4em 0;
}

h3,
#content p {
	line-height:				1.4em;
}

#content p.intro {
	font-weight:				bold;
}

#content p.quote {
	font-style:					italic;
}

#content a {
	color:						#8da5c8;
	text-decoration:			none;
}

#content a:hover {
	text-decoration:			underline;
}

#content a.toLink {
	display:					block;
	background:					url(/img/layout/li.png) 0 7px no-repeat;
	color:						#000;
	padding-left:				25px;
	font-weight:				bold;
}

.box {
	margin:						0 0 20px 0;
}

#content .disclaimer h3,
#content .disclaimer p {
	font-size: 10px;
}

#content .disclaimer p {
	font-style: italic;
}

#content li {
	list-style:					none;
	padding-left:				25px;
	background:					url(/img/layout/li.png) 0 7px no-repeat;
	padding-top:				4px;
}

#content .box li a {
	color:						#58585a;
}

#col1 ul {
	margin:						0 0 20px 0;
	padding:					0;
}

#col1.productList .box ul {
	margin-left:				190px;
}

#col2 ul {
	margin:						0;
	padding:					0;
}

#col1 .box img {
	float:						left;
	margin:						0 19px 10px 0;
}

#col2 .box img {
	display:					block;
	margin:						0 0 12px 0;
}

.catProducts h2 {
	border-bottom-color:		#de004e;
}

.catServices h2 {
	border-bottom-color:		#46a72a;
}

.catConsulting h2 {
	border-bottom-color:		#0381c0;
}

.catPrivate h2 {
	border-bottom-color:		#f39400;
}

.inactiveInput {
	color:						#999999;
}

#service_container td {
	padding:					2px 5px;
}


#newsletter label {
	display:					block;
}

#content #newsletterSuccess {
	color:						#f97704;
	font-weight:				bold;
}


.box.twitter {
	text-align:					center;
}

#col2 .box.twitter img {
	margin:						3px auto 0 auto;
}

.box .date {
	float:						right;
	margin:						0 0 10px 5px;
	font-weight:				bold;
}

.linkPdf {
	background:					url(/img/layout/pdf.png) left center no-repeat;
	padding-left:				20px;
}

.contactInfo {
	border-collapse:			collapse;
	border-spacing:				0;
	border:						0;
	margin-bottom:				10px;
}

.contactInfo th,
.contactInfo td {
	padding:					0 5px;;
}

.contactInfo th {
	text-align:					left;
	padding-left:				0;
}

.country {
	width:						220px;
	height:						290px;
	margin-right:				20px;
	float:						left;
}

#content .country ul {
	margin:						5px 0 40px 0;
	padding:					0;
}

#content .country li {
	font-size:					12px;
	background:					none;
	list-style-type:			square;
	padding:					0;
	margin:						0 0 0 20px;
}

#msgSuccess {
	border:						1px solid #DFE4E8;
	background:					#dff73e;
	padding:					20px;
	color:						#000;
	font-weight:				bold;
}

.imageList img {
	margin-bottom:				10px;
}

.conditions {
	height:						130px;
	overflow:					auto;
	padding:					10px;
	border:						1px solid #dfe4e8;
}

.vertDataTable th {
	padding-right:				20px;
	padding-left:				0;
}


.requirements h2,
.requirements h4 {
	font-size:					14px;
	border:						0;
	font-weight:				normal;
	font-style:					italic;
}

.dataTable,
.requirements table {
	background:					#f0f0f1;
	border:						1px solid #dfe4e8;
	margin-bottom:				5px;
	width:						99%;
}

.dataTable * ,
.requirements table * {
	font-size:					12px;
	padding:					2px 5px;
}

.dataTable thead th,
.requirements thead th {
	font-weight:				bold;
	border-bottom:				1px solid #dfe4e8;
	
}

.dataTable th,
.requirements th {
	font-weight:				normal;
}

.dataTable .price {
	text-align:					right;
}


.publicationList input {
	margin:						0 20px 0 0;
}

.publicationList td {
	padding:					12px 0;
}

/* ############################################ */
/* trolley */
/* ############################################ */


.trolley {
	width:						100%;
	border-spacing:				0;
	border:						0;
	border-collapse:			collapse;
}

.trolley th,
.trolley td {
	padding:					2px 5px;
	vertical-align:				top;
	
}

.trolley thead th {
	border-bottom:				1px solid #dfe4e8;
	text-align:					center;
}

.trolley th {
	text-align:					right;
	
}

.trolley td.price {
	text-align:					right;
	white-space:				nowrap;
}

.trolley .total * {
	font-weight:				bold;
}

.trolley .total .price {
	border-top:					3px double #dfe4e8;
}

.paymentChoice div {
	width:						150px;
	float:						left;
}

.mainButton {
	text-align:					center;
	margin-top:					20px;
}

.mainButton img,
.mainButton input {
	margin:						0 auto;
}


/* ############################################ */
/* forms */
/* ############################################ */

div.error {
	color:						red;
	font-weight:				bold;
	margin:						5px 0 10px 0;
}

#content #newsletterError {
	color:						red;
}

fieldset div {
	clear:						left;
	margin:						0 0 5px 0;
}

fieldset label {
	float:						left;
	line-height:				20px;
	width:						200px;
}

fieldset .origin label {
	float: 						none;
	width:						auto;
}

.origin {
	display:					none;
}

#origin_internet_wrapper,
#origin_other_wrapper {
	padding:					0 0 0 20px;
}

#origin_internet_other_wrapper {
	padding:					0 0 0 40px;
}

fieldset #origin_internet_other_wrapper label {
	float: 						left;
	width: 						190px;
}

fieldset #origin_internet_other_wrapper input {
	float: 						left;
	width: 						30px;
}

#origin_internet_other_wrapper #origin_3_input {
	width:						100px;
	float:						none;
	margin:						0 0 0 10px;
}

fieldset div.error label {
	color:						red;
}

fieldset div.error input {
	border:						1px solid red;
}

.productElement {
	margin-bottom:				10px;
}

.productElement label {
	width:						50px;
}


.productElement select.productSelection {
	width:						200px;
}

.textareaWrapper label {
	display:					block;
}

.textareaWrapper {
	margin-bottom:				10px;
}

.textareaWrapper textarea {
	width:						500px;
	height:						60px;
}

.productEdit th {
	vertical-align:				top;
}

.productEdit textarea {
	width:						300px;
	height:						200px;
	line-height:				1.3em;
	font-size:					12px;
	padding:					2px;
	font-family:				Arial, sans-serif;
}

.productEdit input {
	width:						300px;
}

.uploadForm .preview {
	width:						150px;
}

.uploadForm label {
	display:					block;
	float:						none;
	width:						auto;
}

table.contact {
	border-spacing:				0;
	border:						0;
	border-collapse:			collapse;
}

table.contact th {
	padding-left:				0;
	padding-right:				15px;
}

.forgotPassword {
	display:					block;
	margin:						5px 0 0 200px;
}

#loginForm #i_login_email,
#loginForm #i_login_password {
	width:						150px;
}

.individualOrderWrapper {
    display:                    none;
}

.service_plus h3 {
    height:                     26px;
    overflow:                   hidden;
}

.service_plus h3 span {
    float:                      left;
    padding-top:                2px;
    line-height:                23px;
}

.service_plus h3 img {
    margin-left:                10px;
}

#GalleryWrapper {
    position:                   relative;
    width:                      510px;
    float:                      left;
}

#imagePreviewList {
    position:                   absolute;
    top:                        0;
    left:                       0;
    width:                      210px;
    height:                     430px;
    overflow:                   auto;
}

#imagePreviewList .previewItem {
    margin:                     0 0 10px 0;
    cursor:                     pointer;
}

#imageDetail {
    width:                      440px;
    min-height:                 440px;
    margin-left:                245px;
    position:                   relative;
    overflow:                   hidden;
}

#imageDetail div.imageItem {
    position:                   absolute;
    top:                        0;
    left:                       0;
    width:                      440px;
    height:                     380px;
    overflow:                   hidden;
    background:                 #fff url(/img/layout/ajaxloader.gif) center center no-repeat;
    z-index:                    0;
}

#imageDetail div.imageItem.active {
    display:                    block;
    z-index:                    200;
}

#imageDetail div.imageItem .description {
    position:                   absolute;
    bottom:                     0;
}

#galleryCategories {
    height:                     127px;
    overflow:                   hidden;
    margin:                     0 0 20px 0;
}

#galleryCategories a {
    float:                      left;
    height:                     17px;
    width:                      102px;
    overflow:                   hidden;
    font-size:                  11px;
    color:                      #fff;
    white-space:                nowrap;
    text-align:                 center;
    padding-top:                110px;
}