/* Concept-Image 2010
 * 
 * Colors:
 * - dark grey: #393939
 * - dark blue: #186c7b, #204672, #2d96b0, #4394AE
 * - light grey: #969696
 * - dark green: #008e33
 * Fonts:
 * - Verdana, Arial, "Lucida Sans", sans-serif;
 * - Arial, "Lucida Sans", Verdana, sans-serif;
 */

/* Generic styles */
body {
	color: #393939;
	font: normal 62.5%/125% Verdana, Arial, "Lucida Sans", sans-serif;
}
input,select,textarea { font: normal 1em Verdana, Arial, "Lucida Sans", sans-serif; }

.print {
	display: none;
}

/* Structure */
body {
	margin: 0;
	padding: 0;
}
#wrapper {
	margin: 0 auto;
	width: 960px;
}
#header {
	height: 137px;
	width: 100%;
}
#container {
	margin: 0;
	padding: 0;
}
#left {
	display: inline;
	float: left;
}
#right {
	display: inline;
	float: right;
}
#main {
	margin: 0;
	padding: 0;
}
#footer {
	margin: 0;
	padding: 0;
}

/* Styles */
body {
	background: #0C243E url("../images/body-background.png") repeat-x left top;
}

#wrapper {
	background: transparent url("../images/wrapper-corner.gif") no-repeat left top;
	padding-top: 5px;
}

#header {
	background: #FFF;
	position: relative;
	z-index: 50;
}

#lang {
	position: absolute;
	right: 100px;
	top: 32px;
}
	#lang ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
	#lang ul li {
		display: inline;
		float: left;
		margin: 0 8px 0 0;
		padding: 0;
	}
		#lang ul li a,
		#lang ul li .active {
			background: transparent url("../images/languages.png") no-repeat left top;
			border: 1px solid #F0F0F0;
			display: inline;
			float: left;
			font-size: 0;
			height: 10px;
			line-height: 0;
			overflow: hidden;
			text-align: left;
			text-indent: -9999px;
			width: 16px;
		}
		#lang ul li.home-fr a { background-position: 0px bottom; }
		#lang ul li.home-fr a:hover,
		#lang ul li.home-fr .active,
		body.fr #lang ul li.home-fr a { background-position: 0px top; border-color: #DDD; }
		#lang ul li.home-en a { background-position: -49px bottom; }
		#lang ul li.home-en a:hover,
		#lang ul li.home-en .active,
		body.en #lang ul li.home-en a { background-position: -49px top; border-color: #DDD; }
		#lang ul li.home-de a { background-position: -24px bottom; }
		#lang ul li.home-de a:hover,
		#lang ul li.home-de .active,
		body.de #lang ul li.home-de a { background-position: -24px top; border-color: #DDD; }

#menu {
	background: transparent url("../images/menu.png") repeat-x left top;
	top: 73px;
	position: absolute;
	overflow: visible;
	width: 100%;
	z-index: 60;
}
	#menu ul {
		list-style: none;
		margin: 0;
		padding: 0 25px;
		text-align: center;
	}
		#menu ul li {
			background: transparent url("../images/menu.png") no-repeat left -64px;
			color: #204672;
			display: inline;
			float: left;
			margin: 0;
			padding: 0;
			position: relative;
			z-index: 51;
		}
		#menu ul li.active,
		#menu ul li.trail,
		#menu ul li.opened {
			z-index: 59;
		}
			#menu ul li a,
			#menu ul li span.active {
				background: transparent url("../images/menu.png") no-repeat right -64px;
				color: #204672;
				display: inline-block;
				font: bold 1.1em Verdana, Arial, "Lucida Sans", sans-serif;
				padding: 0 16px 0 0;
				text-decoration: none;
			}
				#menu ul li a span,
				#menu ul li span.active span {
					background: transparent url("../images/menu.png") no-repeat left -64px;
					display: inline-block;
					height: 44px;
					padding: 26px 0 0 15px;
				}
			#menu ul li a:hover {
				text-decoration: underline;
			}
			#menu ul li.active span.active,
			#menu ul li.trail a {
				background-position: right -256px;
				color: #FFF;
				text-shadow: 1px 1px 0 #000;
			}
				#menu ul li.active span.active span,
				#menu ul li.trail a span {
					background-position: left -256px;
					padding-top: 21px;
				}
			#menu ul li a:hover,
			#menu ul li.opened a,
			#menu ul li.opened span.active {
				background-position: right -128px;
				color: #FFF;
				text-decoration: none;
				text-shadow: 1px 1px 0 #000;
			}
				#menu ul li a:hover span,
				#menu ul li.opened a span,
				#menu ul li.opened span.active span {
					background-position: left -128px;
				}
			#menu ul li.active.opened a,
			#menu ul li.trail.opened span.active,
			#menu ul li.trail.opened a {
				background-position: right -256px;
				color: #FFF;
				text-decoration: none;
				text-shadow: 1px 1px 0 #000;
			}
				#menu ul li.active.opened a span,
				#menu ul li.trail.opened span.active span,
				#menu ul li.trail.opened a span {
					background-position: left -256px;
					padding-top: 21px;
				}
			#menu ul li ul {
				background: transparent url("../images/menu.png") no-repeat left bottom;
				display: block;
				left: 0;
				margin: 0 0 0 -5px;
				overflow: hidden;
				padding: 0 0 11px 0;
				position: absolute;
				top: 64px;
				visibility: hidden;
				width: 171px;
			}
				#menu ul li ul li,
				#menu ul li.trail ul li,
				#menu ul li.active ul li,
				#menu ul li.opened ul li {
					background: none;
					clear: left;
					display: block;
					float: none;
					font-size: 1.1em;
					height: auto;
					line-height: 125%;
					margin: 0 10px 5px 10px;
					padding: 0;
					width: auto;
					z-index: 59;
				}
					#menu ul li ul li a,
					#menu ul li.active ul li span.active,
					#menu ul li.trail ul li a,
					#menu ul li ul li.active span.active,
					#menu ul li ul li.trail a,
					#menu ul li.opened ul li span.active,
					#menu ul li.opened ul li a,
					#menu ul li.trail.opened ul li a,
					#menu ul li.active.opened ul li span.active {
						background: #EAEAEA;
						color: #204672;
						display: block;
						float: none;
						font-weight: bold;
						font-size: 0.9em;
						height: auto;
						line-height: 125%;
						margin: 0;
						padding: 3px;
						text-align: left;
						text-shadow: none;
						width: auto;
					}
						#menu ul li ul li a span,
						#menu ul li.active ul li span.active span,
						#menu ul li.trail ul li a span,
						#menu ul li ul li.active span.active span,
						#menu ul li ul li.trail a span,
						#menu ul li.opened ul li span.active span,
						#menu ul li.opened ul li a span,
						#menu ul li.trail.opened ul li a span,
						#menu ul li.active.opened ul li span.active span {
							background: none;
							height: auto;
							padding: 0;
						}
					#menu ul li ul li .active,
					#menu ul li ul li.active span.active,
					#menu ul li.opened ul li.active span.active,
					#menu ul li ul li.trail a,
					#menu ul li ul li a:hover,
					#menu ul li.trail.opened ul li a:hover,
					#menu ul li.active.opened ul li a:hover {
						background: #4394AE;
						color: #FFF;
						padding: 3px;
						text-decoration: none;
						text-shadow: 1px 1px 1px #204672;
					}
						#menu ul li ul li .active span,
						#menu ul li ul li.active span.active span,
						#menu ul li.opened ul li.active span.active span,
						#menu ul li ul li.trail a span,
						#menu ul li ul li a:hover span,
						#menu ul li.trail.opened ul li a:hover span,
						#menu ul li.active.opened ul li a:hover span {
							padding: 0;
						}

	html>/**/body #menu ul {
		display: table;
		margin: 0 auto;
	}
		html>/**/body #menu ul li {
			display: table-column;
		}
			html>/**/body #menu ul li a,
			html>/**/body #menu ul li span.active {
				display: table-cell;
				height: 64px;
				margin: 0;
				vertical-align: middle;
			}
				html>/**/body #menu ul li a span,
				html>/**/body #menu ul li span.active span {
					display: table-cell;
					height: 64px;
					margin: 0;
					padding-top: 0;
					vertical-align: middle;
				}
			html>/**/body #menu ul li.active span.active,
			html>/**/body #menu ul li.trail a,
			html>/**/body #menu ul li.active.opened a,
			html>/**/body #menu ul li.trail.opened span.active,
			html>/**/body #menu ul li.trail.opened a {
				height: auto;
			}
				html>/**/body #menu ul li.active span.active span,
				html>/**/body #menu ul li.trail a span,
				html>/**/body #menu ul li.active.opened a span,
				html>/**/body #menu ul li.trail.opened span.active span,
				html>/**/body #menu ul li.trail.opened a span {
					height: 56px;
					padding-bottom: 8px;
					padding-top: 0;
				}
			html>/**/body #menu ul li ul {
				display: block;
				margin: 0 0 0 -5px;
			}
				html>/**/body #menu ul li ul li,
				#menu ul li.trail ul li,
				#menu ul li.active ul li,
				#menu ul li.opened ul li {
					display: block;
				}
					html>/**/body #menu ul li ul li a,
					#menu ul li.active ul li span.active,
					#menu ul li.trail ul li a,
					#menu ul li ul li.active span.active,
					#menu ul li ul li.trail a,
					#menu ul li.opened ul li span.active,
					#menu ul li.opened ul li a,
					#menu ul li.trail.opened ul li a,
					#menu ul li.active.opened ul li span.active {
						display: block;
						height: auto;
						padding: 3px;
					}
						html>/**/body #menu ul li ul li a span,
						#menu ul li.active ul li span.active span,
						#menu ul li.trail ul li a span,
						#menu ul li ul li.active span.active span,
						#menu ul li ul li.trail a span,
						#menu ul li.opened ul li span.active span,
						#menu ul li.opened ul li a span,
						#menu ul li.trail.opened ul li a span,
						#menu ul li.active.opened ul li span.active span {
							height: auto;
							padding: 0;
						}
					html>/**/body #menu ul li ul li .active,
					#menu ul li ul li.active span.active,
					#menu ul li.opened ul li.active span.active,
					#menu ul li ul li.trail a,
					#menu ul li ul li a:hover,
					#menu ul li.trail.opened ul li a:hover,
					#menu ul li.active.opened ul li a:hover {
						height: auto;
						padding: 3px;
					}
						html>/**/body #menu ul li ul li .active span,
						#menu ul li ul li.active span.active span,
						#menu ul li.opened ul li.active span.active span,
						#menu ul li ul li.trail a span,
						#menu ul li ul li a:hover span,
						#menu ul li.trail.opened ul li a:hover span,
						#menu ul li.active.opened ul li a:hover span {
							height: auto;
							padding: 0;
						}

#logo {
	left: 25px;
	top: 0;
	position: absolute;
}
	#logo ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
		#logo ul li {
			display: block;
			margin: 0;
			padding: 0;
		}
			#logo ul li a,
			#logo ul li span.active {
				background: transparent url("../images/logo.png") no-repeat left top;
				display: block;
				font-size: 0;
				height: 63px;
				overflow: hidden;
				text-align: left;
				text-decoration: none;
				text-indent: -9999px;
				width: 177px;
			}

#newsletter {
	position: absolute;
	right: 185px;
	top: 27px;
}
	#newsletter ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
		#newsletter ul li {
			display: block;
			margin: 0;
			padding: 0;
		}
			#newsletter ul li a,
			#newsletter ul li span.active {
				background: transparent url("../images/buttons.png") no-repeat left top;
				color: #FFF;
				display: block;
				font-size: 0.9em;
				font-weight: bold;
				height: 21px;
				line-height: 21px;
				text-align: center;
				text-decoration: none;
				text-shadow: 1px 1px 1px #204672;
				width: 169px;
			}
			#newsletter ul li a:hover {
				text-decoration: underline;
			}

#blog {
	position: absolute;
	right: 5px;
	top: 0px;
	z-index: 70;
}
	#blog ul {
		list-style: none;
		margin: 0;
		padding: 0;
	}
		#blog ul li {
			display: block;
			margin: 0;
			padding: 0;
		}
			#blog ul li a,
			#blog ul li span.active {
				background: transparent url("../images/blog.png") no-repeat left top;
				display: block;
				font-size: 0;
				height: 74px;
				overflow: hidden;
				text-align: left;
				text-decoration: none;
				text-indent: -9999px;
				width: 83px;
			}
			body.en #blog ul li a,
			body.en #blog ul li span.active { background-image: url("../images/blog-en.png"); }
			#blog ul li a:hover,
			#blog ul li span.active {
				background-position: left bottom;
			}

#container {
	background: #FFF;
	position: relative;
	z-index: 20;
}

#main {
	font-size: 1em;
	line-height: 130%;
	overflow: hidden;
}

#detail {
	position: relative;
}

#detail div.ce_text {
	position: absolute;
	left: 335px;
	top: 142px;
	width: 308px;
	z-index: 1000;
}

#search-product {}
	#search-product h3 {
		font-size: 0;
		height: 0;
		margin: 0;
		overflow: hidden;
		padding: 0;
		text-align: left;
		text-indent: -9999px;
	}
	#search-product .search_group {
	}
		#search-product .search_group p {
			color: #FFF;
			font: normal 1em Verdana, Arial, "Lucida Sans", sans-serif;
			padding: 0;
			margin: 0;
		}
		#search-product .search_group form {
			margin: 5px 0;
		}
			#search-product .search_group form input.text {
				background: #F5F5F5 url("../images/input-background.png") repeat-x left top;
				border: 1px solid #AEAEAE;
				color: #666;
				float: left;
				margin: 1px 5px 1px 0;
				padding: 1px;
			}
			#search-product .search_group form input.text:focus,
			#search-product .search_group form input.text:hover {
				background: #FFF;
				border: 1px solid #939393;
				color: #393939;
			}
			#search-product .search_group form input.submit {
				background: transparent url("../images/buttons.png") no-repeat left -42px;
				border: 0;
				color: #FFF;
				cursor: pointer;
				display: block;
				float: left;
				font-size: 0.9em;
				font-weight: bold;
				height: 17px;
				line-height: 17px;
				outline: 0;
				overflow: visible;
				padding: 0 0 1px 0;
				text-align: center;
				text-decoration: none;
				text-shadow: 1px 1px 1px #204672;
				width: 20px;
			}
			#search-product .search_group form input.submit:hover {
				text-decoration: underline;
			}
	#search-product .clearall {
		display: none;
	}

#phone {}
	#phone input.text,
	#phone select,
	#phone textarea {
		background: #F5F5F5 url("../images/input-background.png") repeat-x left top;
		border: 1px solid #AEAEAE;
		color: #666;
		margin: 1px 0;
		padding: 1px;
	}
	#phone label {
		padding: 2px 0;
	}
	#phone form {}
		#phone form input.text:focus,
		#phone form select:focus,
		#phone form textarea:focus,
		#phone form input.text:hover,
		#phone form select:hover,
		#phone form textarea:hover {
			background: #FFF;
			border: 1px solid #939393;
			color: #393939;
		}
		#phone form select.error, 
		#phone form input.error, 
		#phone form textarea.error {
			background: #fdf8b3;
			border-color: #DD1515;
		}
		#phone form input.error:focus,
		#phone form select.error:focus,
		#phone form textarea.error:focus,
		#phone form input.error:hover,
		#phone form select.error:hover,
		#phone form textarea.error:hover {
			background: #fdf8b3;
			border-color: #DD1515;
			color: #393939;
		}
	#phone p.error {
		display: none;
	}
	#phone span.mandatory {
		visibility: hidden;
	}
	#phone .submit_container {
		clear: both;
		margin: 0;
		overflow: hidden;
		text-align: right;
		width: 100%;
	}
		#phone .submit_container input.submit {
			background: transparent url("../images/buttons.png") no-repeat left -21px;
			border: 0;
			color: #FFF;
			cursor: pointer;
			display: block;
			float: right;
			font-size: 0.9em;
			font-weight: bold;
			height: 21px;
			line-height: 21px;
			outline: 0;
			overflow: visible;
			padding: 0 0 1px 0;
			text-align: center;
			text-decoration: none;
			text-shadow: 1px 1px 1px #204672;
			width: 79px;
		}
		#phone .submit_container input.submit:hover {
			text-decoration: underline;
		}

#network {}
	#network ul {
		height: 100%;
		list-style: none;
		margin: 0;
		padding: 0;
		width: 100%;
	}
		#network ul li {
			height: 100%;
			margin: 0;
			padding: 0;
			width: 100%;
		}
			#network ul li a,
			#network ul li span.active {
				background: transparent url("../images/network-hover.gif") no-repeat -9999px -9999px;
				display: block;
				font-size: 0;
				height: 100%;
				overflow: hidden;
				text-align: left;
				text-indent: -9999px;
				width: 100%;
			}

#footer {
	background: transparent url("../images/wrapper-corner.gif") no-repeat left bottom;
	border-top: 1px solid #D5D5D5;
	color: #969696;
	font: normal 1em Arial, "Lucida Sans", Verdana, sans-serif;
	line-height: 150%;
	padding: 5px;
	text-align: center;
}
	#footer .title {
		text-transform: uppercase;
	}
	#footer .ci a {
		color: #969696;
		text-decoration: none;
	}
	#footer .ci a:hover {
		text-decoration: underline;
	}
	#footer .links {
		color: #000;
	}
	#footer .links a,
	#footer .links .active {
		color: #969696;
		text-decoration: underline;
	}
	#footer .links a:hover,
	#footer .links .active {
		color: #393939;
		text-decoration: none;
	}

/* Autocompleter */
ul.autocompleter-choices {
	background: #FFF;
	border: 1px solid #7F9DB9;
	font: normal 1em Verdana, Arial, sans-serif;
	list-style: none;
	margin: 0 1px;
	padding: 0;
	position: absolute;
}
	ul.autocompleter-choices li {
		border-bottom: 1px dotted #969696;
		cursor: default;
		margin-bottom: -1px;
		padding: 0;
	}
	ul.autocompleter-choices .first {
		background: #FFF url("../images/references_suggests.png") no-repeat left top;
		padding-top: 23px;
	}
	body.en ul.autocompleter-choices .first { background-image: url("../images/references_suggests_en.png"); }
	ul.autocompleter-choices li.more {
		background: #FFF url("../images/more.gif") no-repeat 6px center;
		cursor: default;
		font-size: 0;
		height: 14px;
		overflow: hidden;
		text-align: left;
		text-indent: -9999px;
	}
	ul.autocompleter-choices .type { background-position: 0px top; }
	ul.autocompleter-choices .brand { background-position: -300px top; }
	ul.autocompleter-choices .family { background-position: -600px top; }
	ul.autocompleter-choices .autocompleter-selected,
	ul.autocompleter-choices .autocompleter-selected a {
		background-color: #6E99C0;
		color: #FFF;
	}
	ul.autocompleter-choices .autocompleter-queried {
		font-weight: bold;
	}
		ul.autocompleter-choices li a {
			color: #393939;
			cursor: pointer;
			display: block;
			padding: 4px 6px;
			text-decoration: none;
		}
		ul.autocompleter-choices li a:hover {
			color: #FFF;
			text-decoration: none;
		}
		ul.autocompleter-choices li a:active {
			border: 0;
			outline: 0;
		}
