/* ==============================================
   Feuille de style de base
   © Fred Petit Air Passion
   20/01/2011
   ============================================== */

/* --- STYLES DE BASE POUR LE TEXTE ET LES PRINCIPAUX ÉLÉMENTS --- */

/* Page ============================================== */
html {
	font-size: 100%; /* Bug Internet explorer. */
	background-color: #CCF;
}

body {
	width: 980px;		/* prevoir plutot 960px */
	margin: 1em auto;
	padding: 0;	/* em pour les marges verticales et ex pour les marges horizontales */
	font-family: 'Amaranth', Arial, Helvetica, "Nimbus Sans L", sans-serif; /* 3 */
	font-size: 1.0em; 		/* 0.65 à 1 em */
	line-height: 1.25;		
	color: #666;
	background-color: #CCF;
}

header, nav, footer, figure, section, article, figcaption, aside {
    display: block;
    margin: 0;
}

/* Titres ============================================== */
h1, h2, h3, h4, h5, h6 {
	margin: 0 0 0.2em 0; 	/* On diminue la marge du bas des titres */
	font-weight: normal; 	
}

h1 {
	font-size: 2.4em;
	font-weight: bold; 	
}

h2 {font-size: 2.0em;}
h3 {font-size: 1.8em;}
h4 {font-size: 1.4em;}
h5 {font-size: 1.2em;}
h6 {font-size: 1.0em;}


/* Liens ============================================== */
a {
	font-weight: bold;
	text-decoration: none;
}

a:link {
	color: #00F;
}

a:visited {
	color: #009;
}

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

a img {
	border: medium none; 
}

img {
	margin: 0 15px 0 0;
	border-radius: 15px;
}


/* Listes ============================================== */
ul, ol {
	margin: .75em 0 .75em 4ex;
	padding: 0; 
}

ul {
	list-style-type: disc;
}

ul.none {
	list-style-type: none;
}

li {
	margin: 0;
	padding: 0;
}

/* Paragraphes ============================================== */
p {
	margin: 0.75em 0;
	text-align: justify;
}

li p, blockquote p {
	margin: 0.2em 0;
	color: #F00;
}


/* Citations ============================================== */
blockquote, q {
	font-size: 1.1em;
	font-style: italic;
	font-family: Georgia, "Bitstream Vera Serif", Norasi, serif;
}

blockquote {
	margin: .75em 0 .75em 4ex;
}

cite {
	font-style: italic;
}


/* Divers éléments de type en-ligne ============================================== */
em {
	font-style: italic;
}

strong {
	font-weight: bold;
	color: #333;
}

/* Sections et articles ============================================== */
section {
	border: solid 1px grey;
	border-radius : 15px;
	padding: 0;
	margin: 15px 0;
}

section > h1 {
	color: #FFF;
	margin: 0 0 10px 0;
	padding: 10px;
	background: #060;
	border-radius : 15px 15px 0 0;
}

article {
	padding: 10px;
}

article > h1 {
	margin-top: 0;
	font-size: 2em;
}

article > h2 {
	font-size: 1.4em;
}

article img {
	float: left;
	margin: 0 10px 10px 0;
}

article hr {
	clear: left;
}

/* Conteneur entête ----------------------------------------------- */
header {
	height: 180px;
	background-image: url(/images/logo.jpg);
	background-repeat: no-repeat;
	background-color: #6CF;
	padding: 0;
	margin: 0 10px 10px 10px;
	border-radius: 15px;
}

header > div:first-child {
	margin-left: 300px;
	padding: 25px 0 0 0;
}

header h1 {
	font-size: 1.8em;
	margin: 0;
	display: inline-block;
}

header h2 {
	display: inline-block;
	font-size: 1.2em;
	margin: 0 0 0 2ex;
}

header h3 {
	font-size: 1.2em;
	margin: 0;
}

/* Menu horizontal ------------------------------------------------- */
nav#nav_0 {
	overflow: auto;
	width: 960px;
	height: 30px;
	margin: 0 10px;
	padding: 5px 0;
	
	-webkit-border-radius: 15px;
	-moz-border-radius: 15px;
	border-radius: 15px;
	
	-webkit-box-shadow: #666 2px 4px 3px;
	-moz-box-shadow: #666 2px 4px 3px;
	box-shadow: #666 2px 4px 3px;
	
	background: #E6F74B;
	background: -webkit-gradient(linear, 0 0, 0 bottom, from(#E6F74B), to(#2D922A));
	background: -webkit-linear-gradient(#E6F74B, #2D922A);
	background: -moz-linear-gradient(#E6F74B, #2D922A);
	background: -ms-linear-gradient(#E6F74B, #2D922A);
	background: -o-linear-gradient(#E6F74B, #2D922A);
	background: linear-gradient(#E6F74B, #2D922A);
	-pie-background: linear-gradient(#E6F74B, #2D922A);
	
	behavior: url(/css/pie.htc);
}

nav#nav_0 ul {
	list-style-type: none;
	margin: 0;
	padding: 0.2em 0;
	text-align: right;
}

nav#nav_0 ul:first-child {
	text-align: center;
	/* float: left; */
}

nav#nav_0 li {
	display: inline;
	padding: 0 1.0ex;
	margin: 0;
}


/* Conteneur corps middle ------------------------------------------- */
div#x400 {
	width: 100%;
	min-height: 500px;
	display: table;
	table-layout: fixed;
	border-spacing: 10px;
	overflow: hidden;
	vertical-align: text-top;
}


/* Conteneur corps (menu + contenu) ---------------------------------- */
nav#nav_1, div#x500, nav#nav_2 {
	display: table-cell;
	overflow: hidden;
}

/* Menu vertical gauche ---------------------------------------------- */
nav#nav_1 {
	overflow: auto;
	background-color: #0FF;
	width: 160px;
	border-radius: 15px;
}

nav#nav_1 dl {
	margin: 15px 0;
	padding: 0;
}

nav#nav_1 dt {
	margin: 0 ;
	padding: 0.5em 0 0 1.0ex;
	font-weight: bold;
	background-color: #0F0;
}

nav#nav_1 dd {
	margin: 0 ;
	padding: 0;
}

nav#nav_1 ul {
	list-style-type: none ;
	margin: 0;
	padding: 0;
}

nav#nav_1 li {
	margin: 0;
	padding: 0 0 0 2.0ex;
	background-color: #FF0;
}

nav#nav_1 a {
	color: #000;
	text-decoration: none;
	display: block;
	height: 100%;
}

nav#nav_1 a:hover {
	background: #eee;
}


/* Conteneur central ------------------------------------------------- */
div#x500 {
	background-color: #FFC;
	padding: 25px;
	border-radius: 15px;
}

div#x510 {
	min-height: 500px;
}

/* Menu vertical droit ----------------------------------------------- */
nav#nav_2 {
	overflow: auto;
	background-color: #6F9;
	width: 160px;
}

nav#nav_2 dl {
	margin: 0 0 1em 0;
	padding: 0;
}

nav#nav_2 dt {
	margin: 0 ;
	padding: 0.5em 0 0 1.0ex;
	font-weight: bold;
	background-color: #0F0;
}

nav#nav_2 dd {
	margin: 0 ;
	padding: 0;
}

nav#nav_2 ul {
	list-style-type: none ;
	margin: 0;
	padding: 0;
}

nav#nav_2 li {
	margin: 0;
	padding: 0 0 0 2.0ex;
	background-color: #FF0;
}

nav#nav_2 a {
	color: #000;
	text-decoration: none;
	display: block;
	height: 100%;
}

nav#nav_2 a:hover {
	background: #eee;
}


/* Bas de Page  ================================================== */
footer {
	font-size: 0.8em;
	text-align: center;
	margin: 0 10px;
	/* border-top: thin solid grey; */
}

footer p {
	margin: 0;
	text-align: center;
}

footer > section {
	padding: 0.5em 0;
}

footer > section:first-child {
	border-radius: 15px;
	/* height: 40px; */
	/* background-image: url(/images/BandeauInf.jpg); */
	/* background-repeat: repeat-x; */
	/* background-color: #333;
	color: #FFF; */
}

/* Tables           ================================================== */
table.tarif {
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 1px;
	border-color: #999;
}

table.tarif td {
	text-align: center;
}

table.tarif th {
	background:#0C0;
}

table.tarif tr {
	background: #0FF;
}

table.tarif tr.odd {
	background: #0CC;
}

/* Tables           ================================================== */
table.planning {
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 1px;
	border-color: #999;
}

table.planning td {
	text-align: center;
}

table.planning th {
	background:#0C0;
}

table.planning tr {
	background: #0FF;
}

table.planning tr.odd {
	background: #0CC;
}


/* Classes diverses ================================================== */
div.container {
	overflow: auto;	/* Permet d'éviter le clear: both - Entourer les float avec un div de class container */
	width: 100%;
}


.separation {
	clear: both;
	visibility: hidden;
}

.nodisplay {
	display: none;
}

.floatleft {
	float: left;
}

.floatright {
	float: right;
}

.right {
	text-align: right;
}

.center {
	text-align: center;
}

.left {
	text-align: left;
}

.comment {
	color: #999;
	font-style:italic;
}

.important {
	color: #F00;
	font-weight: bold;
}

#map {	width: 620px;
	height: 400px;
	margin-bottom: 10px;
}

form#x599 fieldset {
	background-color:#C0C0C0;
	border: 1px solid #444;
	margin: 10px 0;
	padding: 10px;
}

form#x599 p {
	margin: 0.4em 0;
}

form#x599 legend {
	background-color:#666;
	color:#FFF;
	font-size: 1.2em;
	padding-left: 1em;
	padding-right: 1em;
}

form#x599 .erreur {
	color:#F00;
}

form#x599 input {
	font-family: Verdana, Geneva, sans-serif;
	width: 25em;
}

form#x599 input[type="submit"] {
	width: 10em;
}

form#x599 input:focus {
	background-color:#CFC;
	border:#3C0 solid 1px;
}

form#x599 textarea {
	font-family: Verdana, Geneva, sans-serif;
	width: 35em;
	height: 10em;
	font-size: 0.8em; 		/* 0.65 à 1 em */
}

form#x599 .submit {
	color:#00F;
	width: 8em;
}

label {
	display: inline-block;
	width: 100px;
	vertical-align: top;
}

label.required {
	font-weight: bold;
}

label.required:after {
	content: '*';
}

form#x599 label span {
	display: inline-block;
	width: 12em;
}

#photo {
	left: 2em;
	top: 2em;
	border: 2px solid gray;
	background-color: #ddd;
	position: fixed;
}

#photo-closer {
    position: absolute;
    top: 0;
    right: 2px;
    font-weight: bold;
    font-size: small;
    color: maroon;
    cursor: pointer;
}

#photo-contents {
    margin: 1em 0.5em 0.5em 0.5em;
	cursor: move;
}

#photo h2 {
	margin: 0.5em 0 0 0;
	text-align: center;
	background-color: #ddd;
}

#photo p {
    margin: 0.5em 0;
	text-align:center;
}

#photo .commentCount {
    color: #444;
}

#photo .tags {
    font-size: small;
    color: gray;
}

#thumbs_1 {
	overflow: auto; 
	list-style: none; 
	margin: 0; 
	padding: 0;
}

#thumbs_1 li {
	display: inline-block;
	/* float:left; */
}

#thumbs_1 a {
	display:block; 
	padding: 5px; 
	outline:none;
}

#thumbs_1 img {
	margin: 0;
}

#thumbs_1 a:hover, #thumbs_1 a:focus {
	background: #FF0;
}

#thumbs_1 a.active {
	background: #090;
}

#viewer {
	position: relative; 
	width: 700px;
	min-height: 500px;	
}

#viewer img[src*="loader"] {
	position:absolute; 
	left:50%; 
	top:50%; 
	margin:-15px 0 0 -15px;
}


#container {
	display: inline-block;
	width: 780px;
	height: 180px;
	margin-left: 180px;
	padding: 0;
	position: relative;
}

#container img{
	display: block;
	margin: 0;
	border-radius: 0;
}

#gallery, #thumbs, #titre {
	float: left;
}

#gallery {
	width: 380px;
	height: 180px;
	overflow: hidden;
}

#gallery img {
	position: absolute;
}

#thumbs {
	width: 60px;
	height: 180px;
	overflow: hidden;
}
#titre {
	padding: 15px;
}

#next {
	display: block;
	width: 47px;
	height: 43px;
	background: url(/images/arrow.png);
	position: relative;
	top: 137px;
	left: 395px;
}

#next:hover {
	background: url(/images/arrowmo.png);
}

.clear{
	clear: both;
}


.tablerow {
	display: table-row;
}

.tablecell {
	display: table-cell;
	vertical-align: top;
}

.tablecell_left {
	display: table-cell;
	vertical-align: top;
	padding-right: 10px;
	border-right: #CCC solid 1px;
	width: 320px;
}

.tablecell_right {
	display: table-cell;
	vertical-align: top;
	padding-left: 10px;
}

.imgright {
	margin-left: 10px;
}
