/****** RESET CSS ******/

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin:0;
	padding:0;
}
fieldset,img { 
	border:0;
}
address,caption,cite,code,dfn,th,var {
	font-style:normal;
	font-weight:normal;
}
ol,ul {
	list-style:none;
}
caption,th {
	text-align:left;
}
h1,h2,h3,h4,h5,h6 {
	font-size:100%;
	font-weight:normal;
}
q:before,q:after {
	content:'';
}
abbr,acronym { 
	border:0;
}

/***********************
*******  GLOBAL  *******
***********************/

.clear {
	clear: both;
	font-size: 0;
	height: 0;
}
.print {
	display: none;
}
body {
	background: #000;
	font-family: Verdana, sans;
	font-size: 12px;
	text-align: center;
	color: #000;
}
#wrapper {
	width: 1002px;
	margin: 0 auto;
	background: url(../images/bg_wrapper.jpg) no-repeat 0 0;
	text-align: left;
}
#container {
	background: url('../images/fond_container_repeat.png') repeat-y top;
	clear: both;
	position: relative;
	top: -28px;
	z-index: 10;
}
a {
	outline: 0px;
}
.hideText {
	overflow: hidden;
	color: #111;
	text-indent: -8000px;
	font-size: 1px;
}

/**************************
*******  TYPOLIGHT  *******
**************************/

/******  mod_article  ******/
.mod_article {
	text-align: justify;
	float: left;
}
.mod_article .block {
	width: 100%;
	float: left;
	clear: both;
	margin-bottom: 10px;
	overflow: visible;
}
.mod_article h1,
.mod_article h2,
.mod_article h3,
.mod_article h4,
.mod_article h5,
.mod_article h6 {
	font-weight: bold;
	font-size: 14px;
	margin: 10px 0;
}
.mod_article p {
	margin: 0 0 12px 0;
}
.mod_article .image_container {
	text-align: center;
	line-height: 0;
}
.mod_article .image_container.cadre img {
	border: 1px solid #666;
}
.mod_article .image_container .caption {
	color: #666;
	font-size: 10px;
	font-style: italic;
	position: relative;
	z-index: 0;
}
.mod_article a {
	color: #888;
}

/******  ce_text  ******/
.ce_text {
	text-align: justify;
}
.ce_text sup {
	font-size: 10px;
}
.ce_text ul,
.ce_text ol {
	padding-left: 40px;
	list-style: disc inside;
}
.ce_text ol {
	list-style-type: decimal;
}

/******  ce_table  ******/
.ce_table  {
}
.ce_table table {
	width: 100%;
	border-right: 1px solid #777;
	border-bottom: 1px solid #777;
}
.ce_table table thead,
.ce_table table tfoot,
.ce_table table thead a,
.ce_table table tfoot a {
	color: #FFF;
}
.ce_table table thead a:hover,
.ce_table table tfoot a:hover {
	color: #BBB;
}
.ce_table table thead tr th,
.ce_table table tbody tr td,
.ce_table table tfoot tr td {
	border-left: 1px solid #777;
	border-top: 1px solid #777;
	padding: 4px 6px;
}
.ce_table table thead tr th {
	background-color: #999;
	font-weight: bold;
}
.ce_table table tfoot tr td {
	background-color: #999;
	font-weight: bold;
}
table.sortable th {
	background-image: url(../images/default.gif);
}
table.sortable th.asc {
	background-image: url(../images/asc.gif);
}
table.sortable th.desc {
	background-image: url(../images/desc.gif);
}

/****** ce_gallery ******/
.ce_gallery {
}
.ce_gallery table {
	width: 100%;
}
.ce_gallery table td {
	overflow: hidden;
}

/****** ce_download *******/
/****** ce_downloads ******/
/****** .enclosure ******/
.ce_download,
.ce_downloads {
	padding: 2px 0;
}
.ce_download img.mime_icon,
.ce_downloads img.mime_icon,
.enclosure img.mime_icon {
	margin-bottom: -4px; 
}

/****** ce_image *******/
/****** ce_hyperlink ******/
.ce_image .image_container,
.ce_hyperlink .image_container {
	width: 100%;
	text-align: center;
}
.ce_image .image_container img,
.ce_hyperlink .image_container img {
	display: block;
	margin: 0 auto;
}

/****** ce_toplink ******/
.ce_toplink {
	text-align: right;
}
.ce_toplink a {
	padding-left: 14px;
	background: url(../images/toplink.gif) no-repeat left top;
}
.ce_toplink a:hover {
	background-position: 0 -12px;
}

/****** ce_flv_jw ******/
.ce_flv_jw {
	text-align: center;
	float: left;
	clear: both;
}
.ce_flv_jw .videoPlayerNoFlash {
}

/******  tableform  ******/

.tableform table {
	width: 425px;
}
.tableform .col_first {
	padding: 0 8px 0 0;
	text-align: right;
}
.tableform select, 
.tableform input.text, 
.tableform textarea.textarea,
.tableform input.captcha,
.tableform input.upload {
	width: 300px;
	margin: 1px 0;
	padding: 2px;
	font-family: Arial, sans;
	color: #646464;
	border: 1px solid #AAA;
}
.tableform input.radio, 
.tableform input.checkbox, 
.tableform input.upload {
	margin: 1px 0;
}
.tableform input.upload {
	width: 307px;
	text-align: right;
}
.tableform select {
	width: 306px;
	padding: 0;
}
.tableform input.text,
.tableform input.captcha {
	height: 14px;
}
.tableform input.captcha {
	width: auto;
	float: right;
	margin-right: 12px;
}
.tableform span.captcha_text {
	font-style: italic;
	font-size: 10px;
	line-height: 22px;
	float: left;
}
.tableform .checkbox_container,
.tableform .radio_container {
	width: 300px;
}
.tableform .checkbox_container span,
.tableform .radio_container span {
	float: left;
}
.tableform span.mandatory {
	font-weight: bold;
}
.tableform p.error {
	color: #C00;
	margin: 0;
	padding: 2px 0 0 0;
}
.tableform .explanation {
	width: 425px;
	padding: 8px 0 4px 0;
}
.tableform .submit_container {
	padding-top: 10px;
	text-align: right;
}
.tableform .submit_container input {
	padding: 2px 4px;
	border: 1px solid #666;
	margin-right: 12px;
}

/**********************
******  HEADER  *******
**********************/

#header {
	width: 100%;
	height: 165px;
	float: left;
	overflow: visible;
	background: url(../images/bg_header.png) no-repeat 152px 53px;
	position: relative;
	z-index: 20;
}

/******  MENU  ******/

#menu {
	padding: 10px 0;
	overflow: visible;
	float: right;
	margin-right: 86px;
}
#menu ul.level_1 {
}
#menu ul.level_1 li  {
	float: left;
	height: 35px;
	margin: 10px 0 0 0px;
	position: relative;
	z-index: 50;
}
#menu ul.level_1 li a,
#menu ul.level_1 li span {
	cursor: pointer;
	display: block;
	float: left;
	height: 35px;
	position: relative;
	text-indent: -3000px;
	z-index: 50;
	width: 100%;
}
#menu ul.level_1 li.sommes_nous a,
#menu ul.level_1 li.sommes_nous span{
	background: url('../images/menu_1.png') no-repeat top left;
	width: 140px;
}
#menu ul.level_1 li.sommes_nous a:hover,
#menu ul.level_1 li.sommes_nous a.trail,
#menu ul.level_1 li.sommes_nous span.active{
	background: url('../images/menu_1.png') no-repeat bottom left;
}
#menu ul.level_1 li.expertise a,
#menu ul.level_1 li.expertise span{
	background: url('../images/menu_1.png') no-repeat -142px top;
	width: 165px;
}
#menu ul.level_1 li.expertise a:hover,
#menu ul.level_1 li.expertise a.trail,
#menu ul.level_1 li.expertise span.active{
	background: url('../images/menu_1.png') no-repeat -142px bottom;
}
#menu ul.level_1 li.realisation a,
#menu ul.level_1 li.realisation span{
	background: url('../images/menu_1.png') no-repeat -309px top;
	width: 164px;
}
#menu ul.level_1 li.realisation a:hover,
#menu ul.level_1 li.realisation a.trail,
#menu ul.level_1 li.realisation span.active{
	background: url('../images/menu_1.png') no-repeat -309px bottom;
}
#menu ul.level_1 li.contact a,
#menu ul.level_1 li.contact span{
	background: url('../images/menu_1.png') no-repeat -475px top;
	width: 85px;
}
#menu ul.level_1 li.contact a:hover,
#menu ul.level_1 li.contact a.trail,
#menu ul.level_1 li.contact span.active{
	background: url('../images/menu_1.png') no-repeat -475px bottom;
}

#menu ul.level_1 li ul.level_2 {
	display: none;
	font-family: Tahoma, Arial, sans serif;
	font-size: 10px;
	overflow: hidden;
	position: absolute;
	right: 0;
	top: 35px;
	width: 387px;
	z-index: 100;
}
#menu ul.level_1 li ul.level_2 li {
	height: auto;
	margin: 0;
	padding: 0;
	width: 100%;
}
#menu ul.level_1 li ul.level_2 li a,
#menu ul.level_1 li ul.level_2 li span {
	background: url('../images/fond_menu_2.png') no-repeat bottom left;	
	color: #000;	
	display: block;
	font-weight: normal;
	height: 16px;
	padding-right: 20px;
	text-align: right;
	text-decoration: none;
	text-indent: 0px;
	width: 367px;
}
#menu ul.level_1 li ul.level_2 li a:hover,
#menu ul.level_1 li ul.level_2 li a.trail,
#menu ul.level_1 li ul.level_2 li span.active{
	background: url('../images/fond_menu_2.png') no-repeat top left;
}
#lienAccueil{
	display: block;
	height: 80px;
	left: 185px;
	position: absolute;
	text-indent: -3000px;
	top: 61px;
	width: 80px;
}
.lienEspace{
	background: url('../images/espace_client.jpg') no-repeat 0 0;
	display: block;
	height: 26px;
	position: absolute;
	left: 833px;
	top: 90px;
	text-indent: -3000px;
	width: 101px;
}
.lienEspace:hover{
	background: url('../images/espace_client.jpg') no-repeat 0 -26px;
}
/*************************
*******  CONTAINER  ******
*************************/
#container_inside{
	background: url('../images/fond_container.jpg') no-repeat 194px top;
	min-height: 360px;
	width: 100%;
	overflow: hidden;
}
#container_end{
	background: url('../images/fond_container_end.jpg') no-repeat 194px top;
	clear: both;
	float: left;
	height: 20px;
	overflow: hidden;
	position: relative;
	width: 100%;
}

/********************
*******  LEFT  ******
********************/

#left {
	width: 194px;
	float: left;
	overflow: visible;
}
#left .mod_flash {
	padding: 4px 0 0 52px;
	overflow: visible;
}
#left .mod_flash * {
	outline: none;
}
#left .nav_gauche_alt {
	padding: 35px 0 0 5px;
}
#left .nav_gauche_alt a {
	width: 137px;
	height: 102px;
	padding-top: 15px;
	display: block;
}
#left .nav_gauche_alt a.link1 {
	background: url(../images/nav_gauche_alt_1.png) no-repeat 0 0;
}
#left .nav_gauche_alt a.link2 {
	background: url(../images/nav_gauche_alt_2.png) no-repeat 0 0;
}
#left .nav_gauche_alt a.link3 {
	background: url(../images/nav_gauche_alt_3.png) no-repeat 0 0;
}

/********************
*******  RIGHT  ******
********************/
#right {
	margin: 48px 35px 10px 0;
	width: 325px;
}

/********************
*******  MAIN  ******
********************/

#main {
	position: static;
	float: left;
	overflow: hidden;
	width: 790px;
}

#main .mod_article {
	padding: 0 10px;
}
#main .mod_article .ce_text,
#main .mod_article .tableform{
	font-family: Arial, Verdana, sans serif;
}
#main .ce_image .image_container,
#main .ce_hyperlink .image_container {
	width: 758px;
}

#main .mod_article .tableform .mandatory,
#main .mod_article .tableform label{
	font-weight: bold;
}

/* PLUS PRECONTACT */
#container .ce_plusprecontact {
	background: transparent url(../images/plusprecontact.png) scroll no-repeat center bottom;
	font: normal 11px/110% Arial, Verdana, sans serif;
	margin: 0;
	padding: 0;
	width: 309px;
}
#container .ce_plusprecontact .text {
	background: transparent url(../images/plusprecontact.png) scroll no-repeat center top;
	margin: 0;
	padding: 30px 10px 0 10px;
}
#right .ce_plusprecontact {
	margin-left: 14px;
}
#container .ce_plusprecontact a {
	color: #000;
}

/**********************
*******  FOOTER  ******
**********************/

#footer {
	width: 100%;
	padding: 10px 0;
	float: left;
	font: normal 10px Verdana, Arial, Helvetica, sans-serif;
	text-align: center;
	color: #4E4E4E;
}
#footer a {
	text-decoration: none;
	font-weight: bold;
	color: #4E4E4E;
}
#footer a:hover {
	text-decoration: underline;
}
#footer .mod_navigation {
	display: inline;
}

/***************************
******  PLAN DU SITE  ******
***************************/
.mod_sitemap{
	margin: 5px 0px 0px 130px;
}
.mod_sitemap ul.level_1 {
	font-size: 13px;
	text-transform: uppercase;
}
.mod_sitemap ul.level_1 li {
	padding: 10px 0;
}
.mod_sitemap ul.level_1 li a {
	text-decoration: none;
}
.mod_sitemap ul.level_1 li a:hover {
	text-decoration: underline;
}
.mod_sitemap ul.level_1 li ul.level_2 {
	font-size: 11px;
	text-transform: none;	
	padding-left: 20px;
}
.mod_sitemap ul.level_1 li ul.level_2 li {	
	padding: 0;
}
.mod_sitemap ul.level_1 li ul.level_2 li  a{
		color: #000;
	}

.mod_sitemap ul.level_1 li ul.level_2 li ul.level_3 {		
	padding-left: 40px;
}
.mod_sitemap ul.level_1 li ul.level_2 li ul.level_3  li a{
	font-style: italic;
}		
