/**
 * Feuille de style principale
 */

/*******************************************************************************

   Général

*******************************************************************************/
html {
	font-size: 100%;
}

body {
  margin: 0;
  padding: 0;	
	background: #589e3c;
	color: #333;
	font: 0.75em "Trebuchet MS", serif; /* Equivaut à 12px */
}

a {
	color: #d3812b;
	text-decoration: underline;
}

/* Spécifique thèmes
------------------------------------------------------------------------------*/
div.theme1 a {
	color: #428ebd;
}

div.theme2 a {
	color: #589e3c;
}

div.theme3 a {
	color: #ff9600;
}

a:hover {
	text-decoration: none;
}

input, select, textarea {
	font-family: "Trebuchet MS", serif;
	font-size: 1em;
}

/* Hack pour Firefox supprimant les pointillés lors des clics
------------------------------------------------------------------------------*/
a,
input.button {
  outline: none;
}

a:focus,
input.button:focus {
  -moz-outline-style: none;
}

/* Conteneur principal
------------------------------------------------------------------------------*/
div#container {
	width: 990px;
	margin: 0 auto;
	background: white;
}



/*******************************************************************************

   En-tête

*******************************************************************************/
div#header {
	position: relative;
	height: 247px;
	background: url(/images/header_default.jpg) no-repeat;
}

/* Spécifique thèmes
------------------------------------------------------------------------------*/
div.theme1 div#header {
	background: url(/images/header_theme1.jpg) no-repeat;  
}

div.theme2 div#header {
	background: url(/images/header_theme2.jpg) no-repeat;  
}

div.theme3 div#header {
	background: url(/images/header_theme3.jpg) no-repeat;  
}

/* Menu haut
------------------------------------------------------------------------------*/
ul#top-menu {
	position: absolute;
	left: 70px;
	list-style: none;
	margin: 0;
	padding: 0;
}

ul#top-menu li {
	padding-left: 1px;
	float: left;
	font-size: 1.1em;
	font-weight: bold;
	background: url(/images/separator1.gif) no-repeat left center;
}

ul#top-menu li.li-first {
	padding-left: 0;
	background: none;
}

ul#top-menu a {
	display: block;
	padding: 5px 10px;
	color: #589e3c;
	text-decoration: none;
}

ul#top-menu a:hover,
ul#top-menu li.li-current a {
	background: url(/images/top_menu_current.gif) no-repeat top center;
	color: #d3812b;
}

/* Menu principal (partie 1)
------------------------------------------------------------------------------*/
ul#main-menu1 {
	position: absolute;
	left: 30px;	
	list-style-type: none;
	margin: 0;
	padding: 0;
}

div#header ul#main-menu1 {
	top: 217px;
}

ul#main-menu1 li {
	float: left;
	margin-right: 19px;
}

ul#main-menu1 a {
	display: block;
	width: 87px;
	height: 126px;
}

ul#main-menu1 a.a-node1 {
	background: url(/images/main_menu1_link1.gif);
}

ul#main-menu1 a.a-node2 {
	background: url(/images/main_menu1_link2.gif);
}

ul#main-menu1 a.a-node3 {
	background: url(/images/main_menu1_link3.gif);
}

ul#main-menu1 li.li-current a,
ul#main-menu1 li.li-inPath a,
ul#main-menu1 a:hover {
  background-position: 87px 0;
}

ul#main-menu1 span {
	position: absolute;
	left: -5000px;
}

/* Boîte recherche
------------------------------------------------------------------------------*/
div#search-box {
	position: absolute;
	width: 178px;
	height: 28px;
	padding: 6px 0 0 10px;	
	background: url(/images/search_box_background.gif) no-repeat;	
}

div#header div#search-box {
	top: 243px;	
	left: 350px;
}

div#search-box input#query {
	height: 18px;
	padding: 1px;
	border: 1px solid #d3812b;
	vertical-align: top;
	width: 140px;
}

/* Boîte newsletter
------------------------------------------------------------------------------*/
ul#newsletter-box {
	position: absolute;
	width: 153px;
	height: 30px;
	list-style-type: none;
	margin: 0;
	padding: 2px 0 2px 35px;
	background: url(/images/newsletter_box_background.gif) no-repeat;
}

div#header ul#newsletter-box {
	top: 243px;
	left: 553px;	
}

ul#newsletter-box li {
	line-height: 15px;
}

ul#newsletter-box a {
	color: #d3812b;
}


/*******************************************************************************

   Partie gauche

*******************************************************************************/
div#left {
	float: left;
	width: 225px;
	margin-right: 15px;
	padding-top: 100px;
	background: url(/images/content_background.jpg) no-repeat;	
}

ul#main-menu2 {
	list-style-type: none;
	margin: 0;
	padding: 100px 0 0 0;
}

ul#main-menu2 ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

ul#main-menu2 a {
	display: block;
	line-height: 2em;	
	text-decoration: none;
}

ul#main-menu2 a:hover {
	text-decoration: underline;
}

ul#main-menu2 a.a-level1 {
	padding-left: 25px;
	color: white;
	font-size: 1.2em;
}

ul#main-menu2 a.a-level2 {
	padding-left: 50px;
	font-size: 1.1em;
}

ul#main-menu2 a.a-level3 {
	padding-left: 75px;
	background: white;`
	font-size: 1em;
}

ul#main-menu2 a.a-inPath {
	font-style: italic;
}

ul#main-menu2 a.a-current {
	font-weight: bold;
	text-decoration: underline;
}

div#left-padding {
	height: 729px;
	background: url(/images/left_background.jpg) no-repeat;
}

/* Spécifique Thème 1
------------------------------------------------------------------------------*/
div.theme1 ul#main-menu2 {
	background: #428ebd url(/images/main_menu2_theme1_title.gif) no-repeat;		
}

div.theme1 ul#main-menu2 a {
	background-image: url(/images/main_menu2_theme1_link.gif);
	background-repeat: no-repeat;		
	border-right: 1px solid #428ebd;
}

div.theme1 ul#main-menu2 a.a-level2 {
	background-color: #e7f0f6;
}

div.theme1 div#left-padding {
	height: 373px;	
	background: url(/images/main_menu2_theme1_background.jpg) no-repeat;	
}

/* Spécifique Thème 2
------------------------------------------------------------------------------*/
div.theme2 ul#main-menu2 {
	background: #68ba47 url(/images/main_menu2_theme2_title.gif) no-repeat;		
}

div.theme2 ul#main-menu2 a {
	background-image: url(/images/main_menu2_theme2_link.gif);
	background-repeat: no-repeat;		
	border-right: 1px solid #68ba47;	
}

div.theme2 ul#main-menu2 a.a-level2 {
	background-color: #ceeec1;	
}

div.theme2 div#left-padding {
	height: 373px;	
	background: url(/images/main_menu2_theme2_background.jpg) no-repeat;	
}

/* Spécifique Thème 3
------------------------------------------------------------------------------*/
div.theme3 ul#main-menu2 {
	background: #ff9600 url(/images/main_menu2_theme3_title.gif) no-repeat;		
}

div.theme3 ul#main-menu2 a {
	background-image: url(/images/main_menu2_theme3_link.gif);	
	background-repeat: no-repeat;		
	border-right: 1px solid #ff9600;	
}

div.theme3 ul#main-menu2 a.a-level2 {
	background-color: #ffe6c3;	
}

div.theme3 div#left-padding {
	height: 373px;	
	background: url(/images/main_menu2_theme3_background.jpg) no-repeat;	
}

ul#main-menu2 a.a-level1 {
	background-position: -225px center !important;
}

ul#main-menu2 a.a-level1:hover,
ul#main-menu2 li.li-current a.a-level1,
ul#main-menu2 li.li-inPath a.a-level1 {
	background-position: 0 center !important;
}

ul#main-menu2 li.li-level2 a {
	background-position: -450px center !important;
}

ul#main-menu2 li.li-level2 a:hover,
ul#main-menu2 li.li-level2 a.a-current,
ul#main-menu2 li.li-level2 a.a-inPath {
	background-position: -225px center !important;
}



/*******************************************************************************

   Contenu

*******************************************************************************/
div#content {
	float: left;
	margin-right: 15px;
	width: 510px;
	padding-top: 100px;
}

/* Fil d'Ariane
------------------------------------------------------------------------------*/
p#breadcrumbs {
	margin: 0 0 15px 0;
	padding: 0;
	font-size: 0.9em;
}

/* Infos sur les résultats
------------------------------------------------------------------------------*/
p.resultsInfo {
	font-style: italic;
}



/*******************************************************************************

   Partie droite

*******************************************************************************/
div#right {
	float: left;
	width: 194px;
	min-height: 817px;
	padding: 15px;
	background: url(/images/line1.gif) no-repeat;
}

/* Spécifique thème 1
------------------------------------------------------------------------------*/
div.theme1 div#right {
	background: url(/images/line1_theme1.gif) no-repeat;	
}

/* Spécifique thème 2
------------------------------------------------------------------------------*/
div.theme3 div#right {
	background: url(/images/line1_theme2.gif) no-repeat;	
}

/* Spécifique thème 3
------------------------------------------------------------------------------*/
div.theme3 div#right {
	background: url(/images/line1_theme3.gif) no-repeat;	
}

/* Commun zoom actu et prochaines manifestations
------------------------------------------------------------------------------*/
div#right h2 {
	margin: 0;
	padding: 10px 0;
	background: url(/images/separator4.gif) repeat-x left bottom;	
	font-size: 1.3em;	
}

div#right ul {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

div#right li {
	padding: 10px 0;
	background: url(/images/separator2.gif) repeat-x left bottom;	
}

div#right h3 {
	margin: 0;
	padding: 0;
	font-size: 1em;
	font-weight: bold;
}

div#right p.see-all {
	margin: 0;
	padding: 10px 0;
	font-size: 1.1em;	
	font-weight: bold;
	text-align: right;
}

/* Zoom actu
------------------------------------------------------------------------------*/
div#right-news span.date {
	color: #d3812b;
}

/* Spécifique thème 1
------------------------------------------------------------------------------*/
div.theme1 div#right-news span.date {
	color: #428ebd;
}

div.theme2 div#right-news span.date {
	color: #589e3c;
}

div.theme3 div#right-news span.date {
	color: #ff9600;
}

div#right-news a.read-more {
	font-style: italic;
}

/* Prochaines manifestations
------------------------------------------------------------------------------*/
div#right-calendar li {
	height: 86px;
}

div#right-calendar h3 span.date {
	float: left;
	width: 49px;
	height: 66px;
	margin-right: 10px;
	padding: 10px 13px;
	line-height: 22px;
	background: url(/images/ephemeris_background.gif) no-repeat;
	color: white;
}

div#right-calendar h3 span.date span {
	display: block;
}

/* Photo au hasard
------------------------------------------------------------------------------*/
div#right-gallery p {
	text-align: center;
}

div#right-gallery img {
	border: none;
}



/*******************************************************************************

   Pied de page

*******************************************************************************/
div#footer {
	clear: both;
	padding: 20px 10px;
}

/* Menu bas
------------------------------------------------------------------------------*/
ul#footer-menu {
	float: right;
	list-style-type: none;
	margin: 0;
	padding: 0;
}

ul#footer-menu li {
	margin-left: 10px;
	padding-left: 11px;
	float: left;
	background: url(/images/separator1.gif) no-repeat left center;
}

ul#footer-menu li.li-first {
	margin: 0;
	padding: 0;
	background: none;
}

ul#footer-menu a {
	display: block;
	padding: 5px 0;
	color: #589e3c;
	text-decoration: none;
}

ul#footer-menu a:hover,
ul#footer-menu li.li-current a {
	color: #d3812b;
}

/* Copyright
------------------------------------------------------------------------------*/
p#copyright {
	margin: 0 0 20px 0;
	padding: 0;
	font-size: 0.9em;
}

p#copyright a {
	color: #333;
	text-decoration: none;
}

/* LEADER+
------------------------------------------------------------------------------*/
p#leader-plus {
	float: left;
	margin: 0;
	padding: 0;
	line-height: 19px;
	color: #386362;
	font-size: 0.8em;
}

p#leader-plus img {
	float: left;
	margin-right: 5px;
	border: none;
}

p#leader-plus a {
	color: #386362;	
}

/* ISICS.fr
------------------------------------------------------------------------------*/
p#isics {
	margin: 0;
	padding: 0;
	text-align: right;
}

p#isics img {
	border: none;
}



/*******************************************************************************

   Formulaire

*******************************************************************************/
form.defaultForm fieldset legend {
	font-size: 1.6em;
	font-weight: bold;
	color: #589e3c;
	padding: 70px 0 20px 0;
}

/*ie7  seulement  */
*+html form.defaultForm fieldset legend {
	padding: 10px 20px !important;
	margin: 0 !important;
}

.defaultForm fieldset {
	border: none;
	padding: 0 0 10px 0;
	margin: -50px 0 10px 0;
	background: url(/images/separator2.gif) repeat-x left bottom;
}

/*ie7  seulement  */
* +html form.defaultForm fieldset {
	display: block;
	margin-top: 10px !important;
}

form.defaultForm p {
	margin: 0 0 2px 0;
}

form.defaultForm label {
	display: block;
	float: left;
	margin-right: 10px;
	width: 150px;
	font-weight: bold;
	text-align: right;
	color: #d3812b !important;
	font-weight: normal;
	font-size: 1.2em;
}

form.defaultForm input.textField, form.defaultForm textarea, form.defaultForm select {
	border: 1px solid #ccc;
}

form.defaultForm textarea {
	margin: 0;
}

input:focus, textarea:focus, select:focus {
	border: 1px solid #333 !important;
}

.defaultForm textarea {
	width: 250px !important;
}

.defaultForm  input.button {
	margin: 20px 0 0 190px !important;
}

input.button:focus {
	border: 0 !important;
}

.defaultForm .asterisk {
	color: red;
	font-size: 1em;
	font-weight: bold;
	vertical-align: top;
}

.defaultForm .requiredField {
	color: red;
	font-size: 0.9em;
	font-style: italic;
	font-weight: bold;
	margin: 0 !important;
	padding: 0;
	text-align: right;
}

.form-errors {
	margin: 0 0 20px 0;
	border: 1px solid red;
	color: red;
}

.form-errors p {
	background: red;
	font-size: 1em !important;
	font-weight: bold;
	color: white;
	margin: 0;
	padding: 2px 4px;
}

.form-errors dl {
	padding: 5px;
}

.form-errors dt {
	padding-left: 20px;
	font-weight: bold;
	float: left;
	padding-right: 12px;
	width: 240px;
}

.form-errors dd {
	margin: 0;
}

p.form-error {
  color: red;
	font-weight: bold;
	margin: 0 0 0 160px !important;
}

form.defaultForm p.submit {
	text-align: right;
}

img#cryptogram {
	background: white;
}



/*******************************************************************************

   Commun à Actualité et Agenda

*******************************************************************************/

/* Liste
------------------------------------------------------------------------------*/
div.newsList h2,
div.calendarEventList h2 {
	color: #888 !important;
	font-size: 1.2em;
	margin: 0;
}

div.newsArticleListFull,
div.calendarEventListItem {
	margin: 0 0 15px 0;
	padding-bottom: 16px;
	background: url(/images/separator2.gif) repeat-x left bottom;
}

div.newsArticleListFull a.image,
div.calendarEventListItem a.image {
	float: right;
	margin-left: 15px;
}

div.newsArticleListFull a.image img,
div.calendarEventListItem a.image img {
	border: 1px solid #333;
}

div.newsArticleListFull div.catcherWithImage,
div.calendarEventListItem  div.overviewWithImage {
	min-height: 102px;
}

/* Fiche
------------------------------------------------------------------------------*/
div.calendarEvent,
div.newsArticle {
	margin-bottom: 20px;
}

div.calendarEvent p.date,
div.newsArticle p.date {
	color: #888;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 3em;
	padding: 0;
}

div.calendarEvent div.overview,
div.newsArticle div.catcher {
	font-weight: bold;
	text-align: justify;
}

div.calendarEvent div.body,
div.newsArticle div.body {
	text-align: justify;
}



/*******************************************************************************

   Agenda

*******************************************************************************/
div.calendarEventListItem p.category,
div.calendarEvent p.category {
	margin: 0;
	padding: 0;
	font-weight: bold;
	font-size: 0.8em;
}

div.calendarEvent p.category {
	margin-bottom: 20px;
}

form#calendarListForm {
	padding: 5px;
	text-align: center;
	margin: 0 0 20px 0;
	border: 1px solid #ccc;
}

form#calendarListForm input {
	vertical-align: middle;
}

div.calendarEvent p.image {
	text-align: center;
}

div.calendarEvent p.image img {
	border: none;
}



/*******************************************************************************

  Annuaires

*******************************************************************************/

/* Liste
------------------------------------------------------------------------------*/
ul.directory {
	margin: 0 !important;
}

ul.directory li {
	margin: 0 0 20px 0 !important;
	padding: 0 !important;
}

ul.directory li h2 {
	font-size: 1.2em;
	padding: 10px 20px;
	margin: 0;
}

ul.directory li p {
	margin: 0;
}

ul.directory ul.coords {
	padding: 0 20px 20px 20px !important;
	line-height: 1.5em;
}

ul.directory ul.coords li {
	border: none;
	background: none !important;
	margin: 0 !important;
}

ul.directory ul.coords li.address {
	line-height: 1.1em !important;
}

ul.directory li ul.coordsWithImage {
	min-height: 102px;
}

ul.directory p.image {
  float: right;
	margin: 0 20px;
}

ul.directory p.image img {
	border: 1px solid #ccc !important;
}

ul.directory p.activity {
	padding: 0 20px 20px 20px;
	color: #666;
	font-weight: bold;
	font-size: 0.8em;
}

/* Fiche
------------------------------------------------------------------------------*/
div.directoryAddress {
	padding-top: 20px;
	margin-bottom: 20px;
}

div.directoryAddress p.activity {
	font-weight: bold;
	padding: 0 20px 20px 20px !important;
	margin: -10px 0 0 0 !important;
	font-size: 1.2em;
	color: #888;
}

div.directoryAddress ul.coords {
	margin: 0 0 20px 0 !important;
	padding: 0 !important;
}

div.directoryAddress ul.coords li {
	background: none !important;
	line-height: 1.5em;
	padding: 0 0 0 20px !important;
}

div.directoryAddress ul.coords li.address {
	line-height: 1.1em !important;
}

div.directoryAddress ul.coordsWithImage {
	min-height: 102px;
}

div.directoryAddress p.image {
	float: right;
	margin: 0 20px;
}

div.directoryAddress p.image img {
	border: 1px solid #ccc;
}

div.directoryAddress div.description {
	text-align: justify;
	padding: 0 20px 20px 20px;
	color: #666;
}



/*******************************************************************************

  Plan du site

*******************************************************************************/
ul#sitemap ul.ul-level3,
ul#sitemap ul.ul-level2 {
	padding-left: 20px;
}



/*******************************************************************************

  Lettre d'info

*******************************************************************************/
form#formOrNewsletterSubscribe {
	padding: 20px 20px;
}



/*******************************************************************************

  Carrousel (fiche actualité)

*******************************************************************************/
div.carousel-component {
	height: 250px;
	list-style-type: none;
	margin: 0 auto 20px auto !important;
	padding: 0 !important;
	width: 220px;
}

div.carousel-component .carousel-list {
	margin: 0 !important;
	padding: 0 !important;
}

div.carousel-component .carousel-list li {
	margin: 0 !important;
	padding: 10px 0 0 0 !important;
	text-indent: 0 !important;
	height: 240px;
	width: 220px;
	background: none !important;
}

div.carousel-component a img {
	border: none;
}

div.carousel-component p.carousel-image {
	margin: 0 !important;
	padding: 0 !important;
	text-align: center !important;
}

div.carousel-component p.carousel-image-title {
	color: white;
	height: 40px;
	line-height: 20px;
	margin: 0 !important;
	overflow: hidden;
	padding: 0 !important;
	text-align: center !important;
}

p.carousel-arrow-container {
	background: #3f3f3f;
	color: white;
	font-size: 0.8em !important;
	height: 20px;
	line-height: 20px;
	margin: 0 auto !important;
	padding: 10px 10px 0 10px;
	width: 200px !important;
	text-align: center !important;
}

img.carousel-prev-arrow {
	cursor: pointer;
	float: left;
}

img.carousel-next-arrow {
	cursor: pointer;
	float: right;
}



/*******************************************************************************

  Galeries

*******************************************************************************/
div.galleryList  a img,
div.gallery a img {
	border: none;
}

div.galleryList p.description,
div.gallery div.description {
	margin: 0 0 15px 0;
}

div.galleryList a.seeGallery {
  font-style: italic;
}

ul.gallery {
  list-style-type: none;
  margin: 0;
	padding: 0;
}

ul.gallery li {
	border: 1px solid #ccc;
	display: block; 
  float: left;
  height: 192px;
  margin: 0 27px 27px 0;
  text-align: center;  
  width: 150px;
}

ul.gallery li.lastOfRow {
  margin-right: 0 !important;
}

ul.gallery p.image {
	height: 152px;
  margin: 0 0 8px 0 !important;
}

ul.gallery p.title {	
	font-size: 10px;
	height: 30px;
	line-height: 15px;
  margin: 0 !important;
  overflow: hidden;
}

div.galleryList p.description,
div.gallery ul.pagination {
	clear: left;
}



/*******************************************************************************

  Résultats de la recherche

*******************************************************************************/
ol.search-results {
	margin: 0;
	padding: 0;
}

ol.search-results li {
	list-style-type: none;
	padding: 0 !important;
	margin-bottom: 20px;
}

ol.search-results li h2 {
	padding: 10px 20px;
	margin: 0 !important;
	font-size: 1.2em !important;
	color: #888 !important;
}

ol.search-results p.category {
	padding: 0 20px 20px 20px;
	color: #666;
	font-weight: bold;
	font-size: 0.8em;
	text-align: right;
}

ol.search-results  li p.description {
	padding: 0 20px 20px 20px;
}
  
ol.search-results p.date {
	text-align: right !important;
	padding: 5px 20px;
	color: #888;
	font-weight: bold;
}