
html, body {
 /*height: 100%;*/
}
body {
  background:#E2E2E2; /* url(body_bg.jpg) repeat-y scroll 50%;*/
  font-family: Georgia, Palatino, Palatino Linotype, Times New Roman, serif;
  font-size: 80%;
}

/* ------------------------------------------------------------------------------------------------------------------------------ */
#main {
  background:#E2E2E2 url(body_bg.gif) repeat-y scroll 50%;
  margin:0pt auto;
  padding: 0pt 10px;
  position:relative;
  width:980px;
/*  overflow: hidden;*/
/*  min-height: 100%;*/
/*  background-color: #E2E2E2;*/
}
/* ------------------------------------------------------------------------------------------------------------------------------ */
#header {
  padding: 0pt;
  margin: 0px auto 0px auto;
}
/* ------------------------------------------------------------------------------------------------------------------------------ */
#contents {
  padding: 10px;
  background: #FFFFFF;
}
/* ------------------------------------------------------------------------------------------------------------------------------ */
#footer {
  padding: 5px 0;
/*  position: absolute;
  bottom: 0; */
 border-top:4px solid #B30000;
 font-family: Verdana, Helvetica, sans-serif;
 font-size: 9px;
 color: #666;
 line-height: 1.4em;
 width: 980px;
 background-color: #E2E2E2;
}

#footer p {
  text-align: center;
}

#logos {
  margin: -3px 2px 2px 2px;
  position:absolute;
  width: 250px;
  display: block;
  float: left;
}

/* ------------------------------------------------------------------------------------------------------------------------------ */
#bottom {
  background:#E2E2E2 url(body_bg_bottom.gif) no-repeat scroll center top;
  height: 10px;
}

/* ------------------------------------------------------------------------------------------------------------------------------ */

span.clr {display:block; clear:both; width:0; height:0; font-size:0; line-height:0;}

ul.imageRow {
/*  margin:0; 
  padding:0; */
  overflow:hidden; /* Clears the floats */
  width:100%; /* IE and older Opera fix for clearing, they need a dimension */
  list-style:none;
  clear:both;
  line-height: 160px;
}

ul.imageRow li {
  float:left;
  margin-left: 0px;
  display: inline;  /* For IE so it doesn't double the 1% left margin */
  width: 160px;
  position: relative; /* This is the key */
  line-height: 130px;
  margin: 0px;
}

.imageRow img {
/*  width: 136px;*/
}

.topVerticalAligned img, .topVerticalAligned li  {
  vertical-align: top;
}

a.photos {
/*  height: 130px; */
  line-height: 1px;
}

.bottomVerticalAligned img, .bottomVerticalAligned li {
  vertical-align: bottom;
}

ul.leftCol {
  width:120px;
  float:left;
}

ul.largeLeftCol {
  width:50px;
  float:left;
}

ul.rightCol {
  display:block;
  float:right;
  text-align: right;
  width: 120px;
}

ul.imageCol li {
  margin: 0px;
  list-style: none;
}

/* ------------------------------------------------------------------------------------------------------------------------------ */

#centerCol {
  float:left;
  display:block;
  width: 655px;
  padding: 30px;
}

div.text {
  padding: 20px;
}

.topAligned img {
  vertical-align: top;

}

img.photos {
  padding: 5px;
  border: 1px solid #DDD;
  margin: 4px;
  background-color: #FFF;
}

a:hover {border:1px; } /* hack pour IE - ne sert sinon à rien */

a:hover img.photos {
  border: 1px solid #bb6666;
}

.first-page p {
  font-style: italic;
  font-size: 1.2em;
  line-height: 170%;
  text-align: justify;
  letter-spacing: 0.05em;
}

strong {
  font-weight: bold;
}

.text em {
  font-style: italic;
}

.text p.centered {
  text-align: center;
}

.text h1 {
  font-style: italic;
  font-weight: bold;
  font-size: 200%;
  line-height: 1.5em;
  margin-top : 0.5em;
/*  margin-bottom: 0.2em;*/
  color:#B30000;
  /*font-variant: small-caps;*/
  border-bottom: 1px solid #DDDDDD;
  padding-bottom: 0.1em;
}

.text h2 {
  font-style: italic;
  font-size: 175%;
  margin-top : 0.75em;
  margin-bottom: 0.5em;
  border-bottom: 1px dashed #DDDDDD;
  padding-bottom: 0.2em;

  color:#B30000;
}

.text h3 {
  font-style: italic;
  font-size: 150%;
  margin-top : 0.75em;
  margin-bottom: 0.5em;
  border-bottom: 1px dashed #DDDDDD;
  padding-bottom: 0.2em;

  color:#B30000;
}

.text p {
  font-size: 110%;
  line-height: 1.5em;
  margin-top : 0.25em;
  margin-bottom : 0.25em;
  letter-spacing: 0.05em;
  text-align: justify;
}

.spacetext p {
  margin-top : 0.75em;
}

.text ul {
  list-style-type: square;
  margin-left: 10px;
}

.text ul.compact {
  list-style-type: circle;
  margin-left: 10px;
  margin-top: 1em;
}

.text ul.compact li {
  list-style-type: circle;
  line-height: 1em;
  margin-top: 0.25em;
  margin-bottom: 0.25em
}


ul.address {
  list-style-type: none;
  margin-left: 10px;
  margin-top: 1.25em;
  margin-bottom: 1.25em;
}

.text li {
  font-size: 110%;
  margin-top: 1em;
  margin-bottom: 1em;
  margin-left: 3ex;
  padding-left: 1ex;
  line-height: 1.5em;
  text-align: justify;
}

.address li {
  margin-top : 0.25em;
  margin-bottom : 0.25em;
}

.text ul ul li {
  font-size: 100%;
}

.text h1.toggler {
  border: 1px solid #CCC;
  padding: 5px 10px;
  background-color: #EEE;
  color: #B30000; /* #AAA; */
  cursor: pointer;
  height: 100%;
/*  width: auto;  890px; */
  margin: 2px 10px 2px 20px;
}

div.togglerContents {
  background-color: #FFF;
}

.mouse-over {
  border-color: #B30000;
  background-color: #FFF;
  color: #B30000;
  cursor: pointer;
/*   width: auto; 860px; */
  margin: 20px 20px 20px 0px;
}

.mouse-out {
  border-color: #CCC;
  background-color: #EEE;
  color: #B30000; /* #AAA; */
  padding: 5px 10px;
  cursor: pointer;
/*  width: auto;  890px; */
  margin: 2px 10px 2px 20px;
}

.text h1.selected {
  border-color: #B30000;
  background: #B30000; /* url(contract.png) no-repeat scroll center left;*/
  color: #FFF;
/*  width: auto;  890px; */
  margin: 15px 0px;
}

.text hr {
  background-color: #B30000;
  color: #B30000;
  width: 50%;
  margin: 2.5em auto;
  border: none;
}

.text p.right-aligned {
  font-style: italic;
  text-align: right;
}

#accordion {
  margin-top: 20px;
}

blockquote {
  width: 20em;
  margin: auto;
  font-style: italic;
  font-size: 120%;
  padding: 10px;
  line-height: 200%;
}

blockquote .right-aligned {
  font-style: italic;
  font-size: 90%;
  line-height: 100%;
  text-align: right;
}

.right-aligned {
  text-align: right;
}


div.gallery {
  background-color:#F5F5F5;
  border:1px solid #E5E5E5;
  padding:5px;
  text-align:center;
  margin: 25px;
}

div.gallery .thumb {
}

div.thumbImage	{
  background:#EAEAEA none repeat scroll 0% 50%;
  border:1px solid #DDDDDD;
  float:left;
  height:199px;
  margin:1px;
  padding:10px;
  text-align:center;
  vertical-align:middle;
  width:199px;
}

div.thumbAlbum	{
  position: relative;
  border:1px solid #EEEEEE;
  float:left;
  margin:5px 3px 15px 3px;
  padding:5px;
  text-align:center;
  vertical-align:middle;
  width:892px;
}


table.cours {
  margin: 10px;
  font-family: Verdana, Helvetica, sans-serif;
  line-height: 2em;
  border:1px solid #B30000;
  width: 900px;
  border-collapse: collapse;
}

table.cours th, table.cours td {
  padding: 0.5em;
}

table.cours th {
  font-size: 120%;
  font-weight: bold;
  background-color: #B30000;
  color: #FFF;
}

table.cours tr {
  font-size: 100%;
}

table.cours tr.even {
  background-color: #EEE;
}

table.cours tr.past {
  font-size: 100%;
  color: #AAA;
  font-style: italic;
}

table.cours td {
  border: 1px solid #DDD;
}

table.cours tr.empty td {
  background-color: #B30000;
  padding: 1px;
}

table.cours td.course-name {
  background-color: #EEE;
  font-size: 120%;
  font-weight: bold;
  color: #B30000;
    font-style: normal;
}

table.cours tr.last td {
  border-bottom: 1px solid #B30000;
}

table.inscription {
  margin: 10px;
  line-height: 2em;
  border-collapse: collapse;
  width: 600px;
  font-family: Verdana, Helvetica, sans-serif;
}

table.inscription td {
  border: 1px solid #DDD;
  padding: 2px 10px;
}

table.inscription td.label {
  background-color: #EEE;
  font-size: 100%;
  font-weight: normal;
}

/* Styles for the LightBox ------------------------------------------------------------------------------------------------------ */
#lbOverlay {
	position: absolute;
	left: 0;
	width: 100%;
	background-color: #000;
	cursor: pointer;
}

#lbCenter, #lbBottomContainer {
	position: absolute;
	left: 50%;
	overflow: hidden;
	background-color: #fff;
}

#lbCenter {
   background-color: #fff;
}

#lbBottomContainer {
  background-color: #2A2A2A;
}

.lbLoading {
	background: #fff url(loading.gif) no-repeat center;
}

#lbImage {
	border: 20px solid #fff;
}


.lightboxDesc a {
	color: #999999;
	text-decoration: none;
}

.lightboxDesc a:hover {
	color: #000000;
	text-decoration: none;
}

#lbPrevLink, #lbNextLink {
	display: block;
	width: 80px;
	outline: none;
}


#lbPrevLink {
	float: left;
	text-align: left;
}


#lbNextLink {
	float: right;
	text-align: right;
}

.controls {
  font-family: Verdana, Helvetica, sans-serif;
  font-size: 11px;
  color: #AAA;
}

.controls a:hover {
  color: #B30000;
}

.controls strong {
  font-weight: bold;
  color: #DDD;
}

.controls a {
  color: #AAA;
}

#lbControls {
	display: block;
	overflow: hidden;
	border-bottom: 1px solid #333;
}

#lbBottom {
	color: #AAA;
	line-height: 1.4em;
	text-align: left;
	border-bottom: 5px solid #2A2A2A;
	border-left: 20px solid #2A2A2A;
	border-right: 20px solid #2A2A2A;
	border-top-style: none;
}

#lbCloseLink {
	clear: both;
	display: block;
	float: right;
	width: 65px;
	height: 20px;
	background: transparent url(fileclose.png) no-repeat right;*/
	margin: 0px 0px 0px 0px;
	text-align: left;
}

#lbNumber {
  float:left;
  text-align: center;
  vertical-align: middle;
}

#lbCaption, #lbDescription {
	margin-right: 71px;
	/*border: 1px solid #000;*/
}

#lbDescription {
  font-family: Verdana, Helvetica, sans-serif;
  font-size: 10px;
}

#lbCaption {
  font-size: 100%;
	font-weight: bold;
	font-style: italic;
	color: #DCDCDC;
	margin-top: 10px;
}


.lightboxDesc {
	display: none;
}


/* Styles for tool tips --------------------------------------------------------------------------------------------------------- */
.tool-tip {
	color: #fff;
	width: 139px;
	z-index: 13000;
}
 
.tool-title {
	font-weight: bold;
	font-family: Verdana, Helvetica, sans-serif;
	font-size: 11px;
	margin: 0;
	color: #B30000;
	padding: 8px 8px 4px;
	background: url(bubble.png) top left;
}
 
.tool-text {
	font-size: 10px;
	font-family: Verdana, Helvetica, sans-serif;
	font-style: italic;
	padding: 4px 8px 8px;
	background: url(bubble.png) bottom right;
}


/* Styles for the MENU ---------------------------------------------------------------------------------------------------------- */
#menu {
  position:relative;
  margin-top:-5px;
	display:block;
	height:39px;
	font-size:14px;
	font-weight:bold;
	font-style: italic;
	background:transparent url(bgOFF.gif) repeat-x top left;
	border-top:4px solid #B30000;
}

#menu ul {
  margin:0;
	padding:0;
	list-style-type:none;
	width:auto;
}

#menu ul li {
  display:block;
	float:left;
	margin:0;
}

#menu ul li a {
  display:block;
	float:left;
	color:#666;
	text-decoration:none;
	padding:9px 20px 0 20px;
	height:25px;
	background:transparent url(bgDIVIDER.gif) no-repeat top right;
}

#menu ul li a:hover {
  color:#B30000;
	background: #fff url(bgDIVIDER.gif) no-repeat top right;
}

#menu ul li a.current {
  color:#FFFFFF;
	background:#fff url(bgON.gif) repeat-x top left;
}

#menu ul li a.current:hover {
  color:#FFFFFF;
	background:#fff url(bgON.gif) repeat-x top left;
}

/* FORMS -------------------------------------------------------------------------------------------------------------------------*/
form     {margin: 0; padding: 0;}
fieldset {margin: 1em 0; border: none; border-top: 1px solid #B30000; width: 900px; padding: 10px;} 
legend   {margin: 0.7em 0; padding: 0 .5em; background: transparent; font-size: 180%;  font-style: italic; color:#888888;} 
label    {float: left; width: 140px; padding: 0 10px; text-align: right; font-size: 120%;} 

fieldset div 
         {margin-bottom: .5em; padding: 0; display: block;} 

fieldset div.fValidator-msg 
         {color:#CC0000;
          font-family:Verdana,Tahoma,Helvetica;
          font-size:80%;
          margin:0pt 0pt 0pt 160px;
          padding:3px;
         }





fieldset  input, fieldset div textarea, fieldset div select
         { border: 1px solid #d0d0d0; padding: 1px; font-family: Verdana, Tahoma, Helvetica, Arial; font-size: 100%;} 
         
fieldset div.fm-req input, div.fm-req textarea, div.fm-req select
         { border: 1px solid #888888; } 

fieldset th {text-align : left;}
/* required fields - does not work in IE */ 
fieldset div.fm-req > label 
         { font-weight: bold; } 

fieldset div.fm-opt > label 
         { font-style: italic; } 

fieldset .noborder
         { border-style: none; } 

/*
fieldset div textarea
         { width: 450px;}
*/
fieldset div select #act
         { width: 500px;}
         
div.fm-multi div 
         {margin: 5px 0; } 
div.fm-multi input 
         {width: 1em; } 
div.fm-multi label 
         {display: block; width: 200px; padding-left: 5em; text-align: left; } 
#fm-submit 
         {clear: both; padding-top: 1em; margin: 0 0 1em 1em; } 
#fm-submit input 
         {border: 1px solid #333; padding: 2px 1em; background: #555; color: #fff; font-size: 100%; } 
input:focus, textarea:focus 
         {background: #f5f5f5; color: #000; } 

p.error { color: #da251d; }

div.recap {
  border: 1px solid #EEE;
  padding: 10px;
}

#warning {
  border: 3px double #B30000;
  margin: 10px;
  padding: 10px;
  font-size: 110%;
}

#warning strong {
  font-weight: bold;
}

p.error404 {
  border:1px solid;
  color:#DA251D;
  font-family:Verdana,Tahoma,Helvetica,Arial;
  font-size:140%;
  margin:2em auto;
  padding:0.5em;
  height: 100%;
}

