﻿body {
	margin: 0;
	font-family: trebuchet ms;
}

#page {
	margin: auto;
	width: 1000px;
	background-color: #FFFFFF;
}

li {
	line-height: 1.5em;
}

a img {
	border: 0;
}

/******************/
/* MENU SUPERIEUR */
/******************/
/*#header {
	width: inherit;
}*/
.header {
	width: 100%;
}

#menu {
	display: flex;
	justify-content: space-between;
	margin: 16px 0;
	padding: 0;
	list-style: none;
	font-size: 1.1em;
	font-weight: bold;
	color: #000000;
}

#menu a {
	position: relative;
	padding: 10px;
	text-decoration: none;
	color: #000000;
}

#menu li.active a {
	color: #DD5522;
}

#menu a::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 5px;
	height: 4px;
	border-radius: 4px;
	background-color: #00207F;
	width: 0;
}

#menu a:hover {
	color: #00207F;
}
#menu a:hover::after {
	width: calc(100% - 10px);
	transition: width .5s ease-out;
}

/*
#menu a:hover {
	color: #00207F;
	text-decoration: underline;
	text-underline-offset: 5px;
	text-decoration-thickness: 4px;
}
*/

/********************/
/* SOUS-MENU GAUCHE */
/********************/
#container {
	display: flex;
	padding-bottom: 20px;
	width: 100%;
}

#submenu {
	width: 200px;
	margin: 0;
	padding: 0;
	list-style: none;
	font-weight: bold;
	font-size: 1em;
}

#submenu li {
	border-bottom: 2px solid #e1e1e1; 
	background-color: #8888CC;
	color: #FFFFFF;
}

#submenu li#first {
	font-size: larger;
	text-align: center;
	background-color: #DD5522;
}

#submenu li.active {
	background-color: #00207F;
}

#submenu a {
	display: block;
	padding: 10px;
	text-decoration: none;
	color: #FFFFFF;
}

#submenu a.submenu {
	padding-left: 15px;
}

#submenu a.submenu:hover {
	background-color: #00207F;
	color: #C0BFE9;
}

/*********/
/* TEXTE */
/*********/
#content {
	box-sizing: border-box;
	width: 800px;
	padding: 0 10px 0 20px;
	font-size: 1em;
	overflow-wrap: break-word;
}

#content h1 {
	font-size: 1.8em;
	margin-top: 5px;
	margin-bottom: 25px;
	font-weight: bolder;
	color: #EB6D30;
}

#content h2 {
	font-size: 1.5em;
	font-weight: bolder;
	color: #FF6633;
}

#content h3 {
	font-size: 1.2em;
	font-weight: bold;
	text-decoration: underline;
	color: #333333;
}

/*Liens*/ 
#content a {
	font-weight: bold;
	text-decoration: none;
}

#content a:hover {
	color: #FF6633;
	text-decoration: underline;
}

/*
#content ul {
    list-style: url(img/puceronde.gif);
}
*/

.center {
	text-align: center;
}

.flexjustify {
	display: flex;
	justify-content: space-between;
}
/*
.justify {
	text-align: justify;
}*/

.fixedsize {
	font-family: system-ui;
}

.bold {
	font-weight: bold;
}

.tab {
	margin-left: 32px;
}

/**********/
/* FOOTER */
/**********/
#footer {
	display: flex;
	justify-content: space-around;
	align-items: center;
	padding: 16px;
}

/*****************/
/* AUTRES STYLES */
/*****************/

p.error {
	text-align: center;
	font-size: 2em;
	color: red;
}

p.notfound {
	padding: 100px 0;
}

.hd {
	display: none;
}

.partners {
	display: flex;
	justify-content: space-around;
	align-items: center;
	flex-flow: wrap;
	font-size: 32pt;
}

#publi ol {
	list-style: none;
}

#publi ol:first-of-type {
	counter-reset: item;
}

#publi ol li {
	position: relative;	
}

#publi ol li:before {
	content: counter(item) ".";
	counter-increment: item;
	position: absolute;
	right: calc(100% + .5em);
}

/*********************************/
/* Infobulle du plan Google Maps */
/*********************************/
#infobulle {
	font-size: 12px;
	font-weight: bold;
	white-space: nowrap;
}

#titre {
	color: #FF6633;
	margin-bottom: 8px;
	font-size: 1.5em;
}

#infobulle p {
	margin: 5px 0 3px 0; /* 3px en bas sinon affiche des barres de défilement */
}

/* Lower the top margin of the infobulle (googlemaps) */
.gm-style-iw-chr {
	height: 16px;
}


/******************/
/* Tableau en CSS */
/******************/
.table {
	display: table;
}

.td {
	display: table-cell;
	vertical-align: top;
}

.rightcol {
	text-align: left;
	padding-left: 16px;
}

#content .table h1 {
	padding: 0;
	margin: 0;
	color: #FF6633;
}


/****************/
/* Cadre en CSS */
/****************/
/*
#content .cadre {
	border:thin dotted #333333;
	padding:5px;
	text-align:center;
	font-weight:bold;
}
*/


/*****************************/
/* Responsive Design: Mobile */
/*****************************/
/*@media (max-device-width: 640px) {*/
@media only screen and (max-width: 767px) {
	#menu {
		font-size: 1.6em;
	}
	#submenu {
		font-size: 1.4em;
		width: auto;
	}
	#content {
		font-size: 2em;
		width: auto;
	}
	#content li {
		margin-bottom: 5px;
	}
}
