/***********/
/* General */
/***********/

* {

padding:0;
margin:0;

}
a img {

/* pour niquer les contours bleus pas beaux */
border-width:0;
vertical-align:middle;

}

div.cul,div.cur,div.cll,div.clr {

position:absolute;
width:10px;
height:10px;
font-size:1px; /* correction bug IE */

}
div.cul {

top:0;
left:0;
background:transparent none no-repeat scroll top left;

}
div.cur {

top:0;
right:0;
background:transparent none no-repeat scroll top right;

}
div.cll {

bottom:0;
left:0;
background:transparent none no-repeat scroll bottom left;

}
div.clr {

bottom:0;
right:0;
background:transparent none no-repeat scroll bottom right;

}
div.bu {

height:10px;
margin:0 10px;
font-size:1px; /* correction bug IE */
background:transparent none repeat-x scroll top left;

}
div.bl {

height:9px;
border-bottom:1px solid #000;
margin:0 10px;
font-size:1px;

}
span.title {

position:relative;
top:-8px;

}

/***************/
/* Main Layout */
/***************/

html {

/* pour le sticky footer */
height:100%;

}
body#layout {

/* pour le sticky footer */
height:100%;
background:transparent none no-repeat fixed center bottom;

}
div#layout_nonfooter {

/* pour le sticky footer */
min-height:100%;
/* preserve la colonne centrale pour les grandes polices */
min-width:26em;
/* margin laterales = largeur des colonnes laterales */
margin-left:16.5em;
margin-right:0em;

}
div#layout_header {

/* empeche le recouvrement par les divs laterales relatives */
position:relative;
margin-left:-16.5em;
margin-right:-0em;
height:100px;
line-height:100px;
border-bottom:1px solid #000;
text-align:center;
background:transparent none no-repeat scroll 16.5em 0px;

}
div#layout_topmenu {

height:1.5em;
padding:0 0 0 16.5em;
border-width:0px 1px 1px 1px;
border-style:solid;
margin:0 0 0 -16.5em;
background:transparent none repeat-x scroll top left;

}
div#layout_logoleft {

display:inline;
z-index:1;
position:relative;
float:left;
width:16.5em;
margin-left:-16.5em;
text-align:center;

}
div#layout_leftmenu {

/* empeche un probleme sur les marges negatives sous IE */
display:inline;
position:relative;
/* beuh c'est la colonne de gauche quoi */
float:left;
width:15em;
padding:10px 0 10px 1.5em;
/* pour sortir la colonne de la colonne centrale left margin = -(width + 2 * padding lateral) */
/* pour que la colonne deborde dans la colonne centrale de 1px
   comme ca elle pousse le clearer quand elle grandit -> margin-right = 1px */
margin:0px 1px 10px -16.5em;

}
div#layout_content {

padding:0 20px 10px 5px;

}
/* pousse le sticky footer lorsque les colonnes grandissent */
div#layout_clearer {

/* clear les colonnes laterales */
clear:both;
/* height du clearer = height du footer,
   pour pas que les colonnes passent sous le footer */
height:35px;

}
div#layout_footer {

/* empeche le recouvrement par les divs laterales relatives */
position:relative;
height:35px;
/* footer min_width = min_width de la colonne centrale + 2 * largeur des colonnes laterales
   pour que le footer fasse toujours la largeur de l'ecran */
min-width:42.5em;
/* margin_top = -height du clearer, pour le ramener dans l'ecran */
margin-top:-35px;
margin-left:16.5em;
margin-right:0em;
text-align:center;
line-height:35px;

}

/************/
/* Top Menu */
/************/

div#layout_topmenu ul {

position:absolute;
list-style:none;
z-index:1;

}
div#layout_topmenu div.menu {

line-height:1.5em;

}
div#layout_topmenu li div.menu a,
div#layout_topmenu li div.menu div {

display:block;
padding:0 5px;
border-style:solid;
border-width:0px 1px 1px 1px;
text-decoration:none;
font-weight:900;
background:transparent none repeat-x scroll top left;

}
div#layout_topmenu li ul {

width:11em;

}
div#layout_topmenu li li div.menu a,
div#layout_topmenu li li div.menu div {

padding:0 4px;
border-style:solid;
border-width:0px 1px;
font-weight:normal;

}
div#layout_topmenu li {

float:left;
width:6.5em;

}
div#layout_topmenu li.footer {

position:relative;

}
div#layout_topmenu li li {

width:11em;
		
}
div#layout_topmenu li li ul {

float:left;
margin-left:11em;
		
}
div#layout_topmenu li ul,
div#layout_topmenu li:hover ul ul,
div#layout_topmenu li:hover ul ul ul,
div#layout_topmenu li.iehover ul ul,
div#layout_topmenu li.iehover ul ul ul {

left:-2000em;

}
div#layout_topmenu li:hover ul,
div#layout_topmenu li li:hover ul,
div#layout_topmenu li li li:hover ul,
div#layout_topmenu li.iehover ul,
div#layout_topmenu li li.iehover ul,
div#layout_topmenu li li li.iehover ul {

left:auto;
		
}

/*************/
/* Left Menu */
/*************/

div#layout_leftmenu div.menu {

position:relative;
margin-bottom:10px;

}
div#layout_leftmenu div.menu span,
div#layout_leftmenu div.menu a {

display:block;
text-decoration:none;

}
div#layout_leftmenu dt {

border-left:1px solid #000;
border-right:1px solid #000;
background:transparent none repeat-x scroll bottom left;

}
div#layout_leftmenu dt span,
div#layout_leftmenu dt a {

position:relative;
top:-8px;
padding-left:10px;
font-weight:900;

}
div#layout_leftmenu dd span,
div#layout_leftmenu dd a {

padding-left:1em;
border-left:1px solid #000;
border-right:1px solid #000;

}

/*******************/
/* Languages links */
/*******************/

div#layout_leftmenu div.lang {

position:relative;
margin-bottom:10px;

}
div#layout_leftmenu div.lang div.header {

padding:0 10px;
text-align:center;
font-weight:900;
border-left:1px solid #000;
border-right:1px solid #000;
background:transparent none repeat-x scroll bottom left;

}
div#layout_leftmenu div.lang div.body {

padding:5px 0;
text-align:center;
border-left:1px solid #000;
border-right:1px solid #000;

}
div#layout_leftmenu a.lang {

margin:0 5px;
text-decoration:none;

}

/*********/
/* Login */
/*********/

div#layout_leftmenu div.login {

position:relative;
margin-bottom:10px;

}
div#layout_leftmenu div.login h4.header {

padding:0 10px;
text-align:center;
border-left:1px solid #000;
border-right:1px solid #000;
background:transparent none repeat-x scroll bottom left;

}
div#layout_leftmenu div.login div.body {

text-align:center;
border-left:1px solid #000;
border-right:1px solid #000;

}

/*********/
/* Pages */
/*********/

div.page {

position:relative;
margin-top:10px;

}
div.page h3.header {

padding:0 10px;
border-left:1px solid #000;
border-right:1px solid #000;
text-align:center;
background:transparent none repeat-x scroll bottom left;

}
div.page div.content {

padding:0 10px;
border-left:1px solid #000;
border-right:1px solid #000;

}
div.page div.footer {

padding:0 10px;
border-left:1px solid #000;
border-right:1px solid #000;
text-align:right;

}
div.page div.footer i {

position:relative;
bottom:-8px;

}

/********/
/* News */
/********/

div.news {

margin:0;

}
div.news div.page_content {

padding:0 0 0.5em 1.5em;
border-bottom:1px solid #CCC;

}
div.news_header {

vertical-align:middle;
cursor:pointer;

}
div.news_date {

padding-top:0em;
float:right;
font-size:80%;
font-style:italic;

}
div.news_footer {

padding:0 5px;
font-size:1em;

}

/********/
/* Gals */
/********/

div.gal {

padding:0 60px;
border:1px solid #CCC;
text-align:center;

}
div.gal img.single {

max-width:100%;

}
table.gal {

margin:45px auto;
border-spacing:10px;

}
table.gal td {

width:130px;
height:100px;
border-right:1px solid #999;
border-bottom:1px solid #999;

}
table.gal a {

display:block;
border:1px solid #CCC;
background-color:#FFF;
text-align:center;
height:98px;
line-height:98px;

}
table.gal span {

padding-top:1px;
padding-bottom:1px;

}
table.gal img {

border:1px solid #000;
margin:2px;
vertical-align:middle;

}
table.gal a:hover {

position:relative;
width:248px;
height:188px;
margin:-47px -62px;
line-height:184px;

}
table.gal a:hover img {

width:auto;
height:auto;

}

/***********/
/* General */
/***********/

div.page div.content li {

margin-left:2em;
line-height:1.5em;

}
div.page div.content img {

margin:3px;

}
div.page div.content img.i01 {

border:1px solid #000;

}
div.page div.content p {

padding:0.5em 0;

}
div.page div.content h4 {

padding:0.5em 0;
text-indent:1em;

}
div.page div.content table.t01 {

margin:0 auto;
border:2px solid #000;
border-collapse:collapse;

}
div.page div.content table.t01 th {

padding:3px 5px;
border:2px solid #000;
background-color:#CCC;

}
div.page div.content table.t01 td {

padding:3px 5px;
border:1px solid #000;
border-right:2px solid #000;

}
div.page div.content table.t01 tr:hover td {

background-color:#DDD;

}
div.page div.content table.t02 {

margin:0 auto;
border-collapse:collapse;

}
p.page div.index a {

text-decoration:none;

}
p.page_index {

font-size:80%;
color:#999;

}
p.page_index a {

text-decoration:none;
color:#999;

}
p.page_index a:hover {

text-decoration:underline;
color:#000;

}

/*********/
/* Forms */
/*********/

form fieldset {

padding:10px 30px 10px 30px;

}
form p.hint {

color:#999;
font-style:italic;
font-size:80%;

}
form p.hint_error {

color:#F00;
font-weight:bold;
font-style:italic;
font-size:80%;

}
form *.error {

color:#F00;
font-weight:bold;

}


