/* Nicolas « Neovov » Le Gall pour Neoma Interactive - http://neoma-interactive.com */
/* @group global.css */

	/* @group Reset */

		/* http://meyerweb.com/eric/tools/css/reset/index.html */
		/* v1.0 | 20080212 */

		html, body, div, span, object, iframe,
		h1, h2, h3, h4, h5, h6, p, blockquote, pre,
		a, abbr, address, cite, code,
		del, dfn, em, img, ins, kbd, q, samp,
		small, strong, sub, sup, var,
		b, i,
		dl, dt, dd, ol, ul, li,
		fieldset, form, label, legend,
		table, caption, tbody, tfoot, thead, tr, th, td,
		article, aside, dialog, figure, header,
		hgroup, menu, nav, section,
		time, mark, audio, video {
			margin: 0;
			padding: 0;
			border: 0;
			/*outline: 0;*/
			font-size: 100%;
			vertical-align: baseline;
			background: transparent;
		}

		body { line-height: 1; }
			/*:focus { outline: 0; }*/

		blockquote, q { quotes: none; }
		blockquote:before, blockquote:after,
		q:before, q:after {
			content: '';
			content: none;
		}

		ins { text-decoration: none; }
		del { text-decoration: line-through; }

		ol, ul { list-style: none; }

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

	/* @end of Reset */

	/* @group HTML5 */

		article, aside, dialog, figure, footer, header,
		hgroup, nav, section { display: block; }

	/* @end of HTML5 */

	/* @group Microformats */

		address.vcard span { display: block; }

		address.vcard .locality,
		address.vcard .postal-code,
		address.vcard .tel span { display: inline; }

	/* @end of Microformats */

	/* @group Global */

		body {
			background: #FFF;
			font: normal normal 87.5%/1.5 Arial, sans-serif;
			color: #555;
		}

		a { text-decoration: underline; }
			a img { border: 0; }

		/* @group LoVe-HAte */

			a,
			a:link,
			a:visited { color: #3EABBA; }

			a:hover,
			a:focus,
			a:active { text-decoration: none; }

		/* @end of LoVe-HAte */

		abbr {
			border-bottom-width: 1px;
			border-bottom-style: dotted;
			cursor: help;
		}

		address { font-style: normal; }

		label, button { cursor: pointer; }

	/* @end of Global */

	/* @group Layout */

		.content {
			width: 980px;
			margin: 0 auto;
		}

		#header {}

		#container { padding-top: 25px; }
			#container .content { overflow: hidden; }

			#content {
				width: 610px;
				padding: 0 30px 0 20px;
				float: left;
			}

			#sidebar {
				width: 320px;
				float: right;
			}

		#footer {}

	/* @end of Layout */

	/* @group Classes */

		/* @group Button */

			a.button {
				background: url(img/button.png) no-repeat;
				width: 110px; /* background's width - padding-right - padding-left (118 - 4 - 4) */
				height: 28px; /* background's height - padding-top - padding-bottom (36 - 4 - 4) */
				padding: 4px;
				display: block;
				line-height: 28px; /* same as height */
				font-weight: bold;
				text-align: center;
				text-decoration: none;
				color: #000;
				cursor: pointer;
			}

			a.button:hover,
			a.button:focus { text-decoration: underline; }

		/* @end of Button */

		p.special { color: #3EABBA; }
		p.warning { color: #B44141; }

	/* @end of Classes */

	/* @group #header */

		#header {
			background: #FFF url(img/back-header.png) repeat-x 0 bottom;
			border-bottom: 2px solid #FFF;
			margin-top: 5px;
		}

			#header .content { position: relative; }

				#header h1 { background: #FFF; }

				#header .deco-menu {
					background: #76ADEF url(img/back-menu.png) no-repeat center top;
					height: 48px; /* background's height */
					position: relative;
				}

					/* @group #menu */

						#menu {
							margin-top: 6px;
							position: absolute;
							top: 0;
							right: 0;
							font-size: 16px; /* We have to fix the font-size because of the background's applied on hover */
							font-weight: bold;
						}

							#menu li {
								background-repeat: no-repeat;
								margin-left: 10px;
								float: left;
								text-align: center;
							}

								#menu a,
								#menu span {
									background-repeat: no-repeat;
									height: 37px; /* background's height - padding-top - padding-bottom (45 - 4 - 4) */
									padding: 4px; /* Corresponding to the size of the background's shadow */
									display: block;
									line-height: 37px; /* Same as height to center verticaly */
								}

							/* @group LoVe-HAte */

								#menu a,
								#menu a:link,
								#menu a:visited { color: #505050; }

								#menu .selected a,
								#menu .selected a:link,
								#menu .selected a:visited,
								#menu .selected span,
								#menu a:hover,
								#menu a:focus,
								#menu a:active,
								#menu .cleaning:hover span {
									text-decoration: none;
									color: #FFF;
								}

								/* Faking link */
								#menu span       { text-decoration: underline; }
								/*#menu span:hover { cursor: pointer; }*/

								/* Setting sprite */
								#menu a,
								#menu .cleaning { background: url(img/sprites-menu.png) no-repeat 0 -45px; }

							/* @end of LoVe-HAte */

							#menu .who,
							#menu .what       { width: 167px; }
							#menu .engagement { width: 157px; }

							#menu .cleaning {
								width: 194px;
								height: 135px;
							}

							#menu .who.selected a,
							#menu .who a:hover,
							#menu .who a:focus { background-position: 0 0; }

							#menu .cleaning.selected { background-position: -167px 0; }

							#menu .cleaning:hover,
							#menu .cleaning:focus { background-position: -685px 0; }

							#menu .what.selected a,
							#menu .what a:hover,
							#menu .what a:focus { background-position: -361px 0; }

							#menu .engagement.selected a,
							#menu .engagement a:hover,
							#menu .engagement a:focus { background-position: -528px 0; }

							#menu span {
								height: 34px;
								padding-bottom: 1px;
							}

							#menu .cleaning:hover ul,
							#menu .cleaning:focus ul { visibility: visible; }

							#menu .cleaning ul {
								padding: 0 4px;
								visibility: hidden;
								font-size: 14px; /* We have to fix the font-size because of the background */
							}

								#menu .cleaning ul li {
									margin: 0;
									float: none;
								}

									#menu .cleaning ul a {
										background: none;
										height: 30px;
										padding: 0 0 1px;
										line-height: 30px; /* Same as height to center verticaly */
									}

								/* @group LoVe-HAte */

									#menu .cleaning ul a,
									#menu .cleaning ul a:link,
									#menu .cleaning ul a:visited { color: #FFF; }

									#menu .cleaning.selected ul a,
									#menu .cleaning.selected ul a:link,
									#menu .cleaning.selected ul a:visited { text-decoration: underline; }

									#menu .cleaning.selected ul a:hover,
									#menu .cleaning.selected ul a:focus,
									#menu .cleaning.selected ul a:active { text-decoration: none; }

								/* @end of LoVe-HAte */

					/* @end of #menu */

				#baseline {
					background: #4174B4 url(img/deco-header.jpg) no-repeat 0 bottom;
					height: 23px;
					color: #FFF;
				}

					#baseline-1 { margin-bottom: 32px; }

	/* @end of #header */

	/* @group #container */

		#container {
			background: url(img/back-container.png) repeat-x 0 top;
			margin-bottom: 30px;
		}

		/* @group #content */

		/* @group Pages */

			.who #content p,
			.what #content ul,
			.engagement #content div { padding-left: 300px; }

			.what #content,
			.engagement #content div { height: 370px; }

			/* @group .home */

				.home #header { background-image: url(img/home/back-header.png); }
					.home #header .deco-menu { background-image: url(img/home/back-menu.png); }

					.home #baseline {
						background-image: url(img/home/deco-header.jpg);
						height: 228px; /* base height - padding-top (243 - 15) */
						padding: 15px 48px 0 460px;
						text-align: right;
					}

					.home #header .deco {
						background: url(img/home/deco-baseline.jpg) no-repeat;
						width: 415px;
						height: 243px;
						position: absolute;
						bottom: 0;
						left: -5px;
					}

				.home #content {
					background-image: url(img/content/deco-home.jpg);
					background-position: 360px 0;
				}

				.home #content div {
					width: 315px;
					margin-bottom: 3em;
				}

					.home #content li { margin-bottom: .5em; }

				.home #content .box { width: 100%; }

			/* @end of .home */

			/* @group .who */

				.who #content { background-image: url(img/content/deco-who.jpg); }

			/* @end of .who */

			/* @group .cleaning */

				.cleaning #content div { margin-bottom: 3em; }

					.cleaning #content .special { padding-left: 355px; }

				.cleaning #content ul {
					margin-left: .5em;
					margin-bottom: 2em;
				}

				.cleaning #content li {
					background: none;
					padding: 0;
					margin-bottom: 0;
				}

			/* @end of .cleaning */

			/* @group .who */

				.what #content { background-image: url(img/content/deco-what.jpg); }

			/* @end of .who */

			/* @group .engagement */

				.engagement #content { background-image: url(img/content/deco-engagement.jpg); }

					.engagement #content div { margin-bottom: 2em; }

						.engagement #content .special { margin-bottom: 1em; }

						.engagement #content div ul { margin-left: 10px; }

							.engagement #content li {
								background-position: 0 .6em;
								margin-bottom: 1em;
							}

			/* @end of .engagement */

			/* @group .team */

				.team #content .special { margin-bottom: 1em; }

				.team #content ul { margin: 0; }

					.team #content li {
						background: none;
						min-height: 96px; /* regular height - padding-top (130 - 18 - 16) */
						padding: 0;
						padding-top: 18px;
						padding-bottom: 16px;
						border-top: 1px solid #E5E5E5;
						margin: 0;
						overflow: hidden;
					}

						.team #content li img {
							background: #E5E5E5;
							padding: 2px;
							float: left;
						}

						.team #content li h3 {
							background: none;
							padding: 0;
							border: 0;
							margin: 0;
							font-size: 100%;
							font-weight: bold;
							color: inherit;
						}

						.team #content li h3,
						.team #content li p { padding-left: 105px; }

						.team #content li p {
							margin-bottom: 1em;
							font-size: 85.7%;
						}

							.team #content .family-name { text-transform: uppercase; }

			/* @end of .team*/

			/* @group .map */

				.map #content li { margin-bottom: 1em; }

					.map #content .deeper { background: none; }

						.map #content .deeper ul { margin-top: 1em;}

			/* @end of .map */

			/* @group .legal */

				.legal #content div { margin-bottom: 2.5em; }

					.legal #content address,
					.legal #content li { margin-bottom: 1em; }

			/* @end of .legal */

		/* @end of Pages */

			#content {
				background-repeat: no-repeat;
				background-position: 20px 40px;
			}

				#content h2 {
					background: url(img/list.png) no-repeat left;
					padding-left: 25px;
					border-bottom: 1px solid #3EABBA;
					margin-bottom: 20px;
					font-size: 1.357em;
					font-weight: normal;
					text-transform: uppercase;
					color: #3EABBA;
				}

				#content h3 {
					background: url(img/list-special.png) no-repeat left;
					padding-left: 25px;
					border-bottom: 1px solid #4174B4;
					margin-bottom: 1em;
					font-size: 1.286em;
					font-weight: bold;
					color: #4174B4;
				}

				#content h4 {
					font-weight: bold;
					text-transform: uppercase;
				}

					#content h4 span {
						font-weight: normal;
						text-transform: none;
					}

				#content p,
				#content li { margin-bottom: 2.5em; }

				#content ul { margin-left: 20px; }

					#content li {
						background: url(img/list-small.png) no-repeat left;
						padding-left: 15px;
					}

			/* @group Classes */

				/* @group .toc */

					#content .toc {
						width: 300px;
						margin: 0 45px 0 0;
						float: left;
					}

						#content .toc li {
							background: url(img/list-toc.png) no-repeat left center;
							padding-left: 15px;
							margin-bottom: 0;
						}

							#content .toc a { color: #666; }

				/* @end of .toc */

				#content .special h2 {
					background-image: url(img/list-special.png);
					border-color: #4174B4;
					color: #4174B4;
				}

				/* @group .warning */

					#content .warning h3 {
						background-image: url(img/list-warning.png);
						border-color: #B44141;
						text-transform: uppercase;
						color: #B44141;
					}

					#content .warning p { margin-bottom: 1.5em; }

					#content .warning ul {
						margin-bottom: 1em;
						list-style: disc inside;
					}

						#content .warning li { margin-bottom: .5em; }

				/* @end of .warning */

				/* @group .box */

					#content .box {
						background: url(img/back-box.png) no-repeat center top;
						width: 100%;
						height: 80px;
					}

						#content .box h2 {
							background: none;
							padding: 5px 12px 6px;
							border: 0;
							margin: 0;
						}

						#content .box ul {
							padding: 10px;
							margin: 0;
							overflow: hidden;
							list-style: disc inside;
						}

							#content .box li {
								background: none;
								width: 195px;
								padding: 0;
								margin-bottom: 1em;
								float: left;
							}

				/* @end of .box */

			/* @end of Classes */

		/* @end of #content */

		/* @group #sidebar */

			#sidebar {}

				#sidebar h2 {
					border-bottom: 1px solid #B1B3B4;
					margin-bottom: 10px;
					font-size: 1.357em;
				}

				/* @group #contact */

					#contact { margin-bottom: 20px; }

						#contact address { font-size: 16px; }

				/* @end of #contact */

				/* @group #team */

					#team {
						background: url(img/deco-team.png) no-repeat 0 90%;
						border-bottom: 1px solid #B1B3B4;
						overflow: hidden;
					}

						#team p {
							padding: 0 20px 0 80px;
							text-align: right;
						}

						#team .button {
							margin: 6px 20px 6px;
							float: right;
						}

				/* @end of #team */

		/* @end of #sidebar */

	/* @end of #container */

	/* @group #footer */

		#footer {
			background: #4174B4 url(img/back-footer.png) repeat-x 0 top;
			height: 200px;
			color: #FFF;
			font-size: 10px;
		}

			#footer a { color: #FFF; }

			#footer .content {
				background: url(img/deco-footer.png) no-repeat 630px top;
				height: 65px;
				padding-top: 32px;
			}

				#footer p,
				#footer ul { float: left; }

				#footer ul { margin-left: .5em; }

					#footer li {
						padding-left: .5em;
						border-left: 1px solid #FFF;
						margin-right: .5em;
						display: inline;
					}

	/* @end of #footer */

/* @end of global.css */