@charset "UTF-8";
* {
	outline: none;
	box-sizing: border-box;
	padding: 0;
	margin: 0;
}
html,
#haut {
  scroll-behavior: smooth;	
}
html,
html#idHtml {
	background: white;
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	display: table;
	width: 100%;
	min-width: 100%;
}
body {
	font-family: 'Roboto', Helvetica, Arial, sans-serif; 
	font-weight: 400;
	font-size: 0.9em;
	box-sizing: border-box;
	display: table-cell;
	width: 100%;
}
h1, h2, h3, h4 {
	color: black;
}
p,
ul li {
	color: rgba(0,0,0,.95);
}
abbr {
	text-decoration: none;
}
abbr:hover {
	text-decoration: dotted underline;
	cursor: help;
}
sup {
	font-size: 500;
	font-size: .7em;
	line-height: 50%;
}
a:link,
a:visited,
p a {
	text-decoration: none;
	color: black;
}
a:hover,
s {
	color: rgb(160,20,20);
}
p a:link,
p a:visited {
	border-bottom: dotted thin black;
}
p a:hover {
	color: rgb(160,20,20);
	border-bottom: solid thin rgba(160,20,20);
}
.smallCaps {
	font-variant: small-caps;	
}
.smallCaps p {
	margin-bottom: .25em;
}
.italiques {
	font-style: italic;
}
.normal {
	font-style: normal;
	font-weight: normal;
}
.gras,
ul.gras li {
	font-weight: 700;
}
.barre {
	text-decoration: line-through;
}
.doubleBarre {
	text-decoration: line-through;
	text-decoration-style: double;
}
.capitales {
	text-transform: uppercase;
}
.blanc {
	color: white;
}
.grisClair {
	color: rgba(0,0,0,.25);
}
.grisMoyen {
	color: rgba(0,0,0,.5);
}
.grisFonce {
	color: rgba(0,0,0,.75);
}

.noir {
	color: black;
}
.vert {
	color: seagreen;
	display: inline-block;
	margin-bottom: 0.5em;
}
.orange,
tr.orange input {
	color: orange;
}
.violet,
tr.violet input {
	color: orchid;
}
.red {
	color: rgb(160,20,20);
}
.cadreRouge {
	border: solid thin rgb(160,20,20);
}
input.dcd {
	background-image: url('/css/images/pico-dcd.png');
	background-position: right center;
	background-repeat: no-repeat;
}

.rouge,
a.rouge:link,
a.rouge:visited {
	color: rgb(160,20,20);
}
.pictoMini {
	font-size: .8em;
	line-height: 100%;
	display: table-cell;
	vertical-align: bottom;
	padding: .4em 0 0 .5em;
}
.pointeur {
	cursor: pointer;
}
.interdit {
	color: rgba(0,0,0,.25);
	cursor: not-allowed;
}
.aide {
	cursor: help;	
}
.sansSerif {
	font-family: 'Roboto', Helvetica, Arial, sans-serif;
}
.serif {
	font-family: 'Libre Baskerville', 'Times New Roman', Times, serif;
}
.corps08em {
	font-size: .8em;
}
.corps12em {
	font-size: 1.25em;
}
.corps15em {
	font-size: 1.5em;
}
.corps2em {
	font-size: 2em;
}
label,
input[type="checkbox"],
input[type="radio"] {
	cursor: pointer;
}

input,
textarea,
select,
datalist,
datalist option {
	font-family: 'Roboto', Helvetica, Arial, sans-serif; 
	font-weight: 400;
	font-size: 1em; 
	line-height: 120%;
	border: solid thin rgba(0,0,0,.25);	
	outline: none;
	box-sizing: border-box;
	padding: .25em;
	margin-bottom: .375em;
}
input,
select {
	line-height: 100%;
}
textarea {
	line-height: 110%;
}
input::placeholder,
textarea::placeholder,
select::placeholder {
	font-style: italic;
	line-height: 100%;
	color: rgba(0,0,0,.75);
}
input:focus,
textarea:focus,
select:focus {
	box-shadow: 0 0 3px rgba(0,0,0,.5);
}

/***********/
/* EN-TÊTE */
/***********/
body > header {
	box-sizing: border-box;
	padding: 0 1em;
	position: fixed;
	top: 0;
	left: 0;
	display: table;
	width: 100%;
	z-index: 100;
}
body > header ul:first-child {
	display: table-cell;
	padding-top: 1em;
}
body > header ul li {
	display: inline-table;
}
body > header ul li a:link,
body > header ul li a:visited {
	color: white;
	text-decoration: none;
}
body > header h1 {
	font-weight: 400;
	font-size: 1.5em;
	line-height: 90%;
	letter-spacing: .1em;
  text-transform: uppercase;
	display: table-cell;
	height: 100%;
	vertical-align: middle;
}
body > header h1 b {
	font-size: 103%;
	font-weight: 700;
	display: inline;
}
body > header ul > li:last-child {
	vertical-align: middle;
	float: right;
}
body > header ul > li:last-child ul li {
	color: black;
}
body > header ul > li:last-child ul li i,
body > header ul > li:last-child ul li a i {
	font-style: normal;
	font-size: 1.25em;
	line-height: 0;
	color: black;
	display: inline;
	padding-left: .75em;
}
body > header ul > li:last-child ul li.rouge i.lg {
	color: rgba(160,20,20);
}
body > header ul > li:last-child ul li i.lg,
body > header ul > li:last-child ul li a i.lg,
body > header ul li#iLexique {
	font-style: normal;
	font-weight: 300;
	font-size: 0.95em;
}
body > header ul > li:last-child ul li.rouge a:link i.lg,
body > header ul > li:last-child ul li.rouge a:visited i.lg {
	font-style: normal;
	font-weight: 300;
	font-size: 0.95em;
	color: rgba(160,20,20);
}
body li#iLexique {
	padding-left: .75em;
}
body > header {
	background: white;
	color: black;
}
body > header a:link,
body > header a:visited {
	color: black;
} 

/**************/
/* NAVIGATION */
/**************/
nav#menu {
	color: white;
	background: rgb(247,247,247);
	border-top: solid thin rgb(240,240,240);
	box-sizing: border-box;
	position: fixed;
	left: 0;
	display: inline-table;
	width: 100%;
	height: 2.25em;
	z-index: 99;
}
nav#menu > ul {
	display: table-row;
}
nav#menu > ul > li {
	white-space: nowrap;
	box-sizing: border-box;
	display: table-cell;
	height: 100%;
}
nav#menu > ul > li#mOk,
nav#menu ul li#mOk {
	font-size: 1.4em;
	line-height: 150%;
	padding: 0 .6em 0 .7em;
	vertical-align: top;
}
nav#menu > ul > li:nth-child(2),
nav#menu > ul > li:last-child {
	vertical-align: top;
	padding-top: .35em;
}
nav#menu ul li {
	list-style: none;
}
nav#menu ul li a:link,
nav#menu ul li a:visited {
	text-transform: uppercase;
	text-decoration: none;
	color: black;
}

nav#menu ul li#mKo > a {
	display: inline-block;
	font-size: 1.05em;
	padding-left: 1em;
}

nav#menu ul li#mKo ul li {
	font-weight: 500;
	text-transform: capitalize;
	box-sizing: border-box;
}
nav#menu ul li#mKo ul li a:hover,
nav#menu ul li#mKo ul li.rouge a:link,
nav#menu ul li#mKo ul li.rouge a:visited {
	color: rgb(160,20,20);
}
nav#menu > ul > li:last-child {
	text-align: right;
	color: rgba(0,0,0,.5);
	padding: .35em 1em 0 0;
}
nav#menu > ul > li:last-child ul li {	
	float: right;
	display: table-cell;
	height: 100%;
	vertical-align: top;
	margin-left: 0.65em;
}
nav#menu > ul > li:last-child > ul li i {
	font-size: 1.25em;
	line-height: 0;
}
nav#menu ul li#mCo {
	font-size: .9em;
	line-height: 175%;
}
nav#menu ul li ul li select {
	font-size: 1.15em;
	line-height: 0%;
	padding: 0 0.25em;
}

/*************/
/* SOUS-MENU */
/*************/
nav#sousMenu ul {
	box-sizing: border-box;
	width: 100%;
}
nav#sousMenu ul li {
	list-style: none;
	box-sizing: border-box;
	background: rgba(255,255,255,0.9);
	box-shadow: 3px 3px 3px rgba(0,0,0,.2);
	margin: 0 0 .3em 0;
}
nav#sousMenu ul li a {
	font-weight: 400;
	font-size: .9em;
	letter-spacing: .05em;
	text-transform: uppercase;
	display: block;
	padding: .75em .75em .6em;
}
nav#sousMenu ul li a:link,
nav#sousMenu ul li a:visited {
	text-decoration: none;
}
nav#sousMenu ul li.liOn a:link,
nav#sousMenu ul li.liOn a:visited,
nav#sousMenu ul li.liOn a:hover {
	font-weight: 400;
	background: rgba(255,255,255,1);
	color: rgb(160,20,20);
}
nav#sousMenu ul li.liOn a:link,
nav#sousMenu ul li.liOn a:visited {
	font-weight: 400;
	background: rgba(255,255,255,1);
	color: rgb(160,20,20);
}

/*********/
/* CORPS */
/*********/
main {
	box-sizing: border-box;
	display: inline-table;
	height: 100%;
	min-height: 100%;
	padding: 0;
	margin: 0;
}

main figcaption#cartel {
	background: white;
	box-shadow: 3px 3px 3px rgba(0,0,0,0.2);
	box-sizing: border-box;
	position: fixed;
	right: 0.1em;
	bottom: 2.7em;
	width: 25%;
	margin: 0;
	padding: 0;
	z-index: 0;
	visibility: hidden;	
}
main figcaption#cartel {
	font-size: .85em;
	box-sizing: border-box;
	padding: 1em 1em .75em 1em;
}
main figcaption#cartel p {
	font-size: 1.6em;
	background: white;
	float: right;
}
main figcaption#cartel h1 {
	font-style: italic;
	font-weight: 400;
	font-size: 1.1em;
	line-height: 125%;
	text-transform: none;
}
main figcaption#cartel h2 {
	font-weight: 300;
	font-size: 1em;
	line-height: 125%;
	text-transform: none;
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}
main figcaption#cartel h3 {
	font-weight: 300;
	font-size: .85em;
	line-height: 125%;
	color: rgba(0,0,0,.5);
	margin-top: 0.3em;
}

ul#pagination li {
  display: inline;
  padding: 0 .25em;
  cursor: pointer;
}
ul#pagination li i.fas,
ul#pagination li.rouge,
ul#pagination li:hover a:link,
ul#pagination li:hover a:visited {
	color: rgb(160,20,20);
}
ul#pagination li a:link,
ul#pagination li a:visited {
	font-size: .85em;
	line-height: 100%;
}

summary {
	-webkit-appearance: none;
	cursor: pointer;
	outline: none;
}
summary::-webkit-details-marker {
	display: none;
}

/****************/
/* PIED DE PAGE */
/****************/
div#footerCalque {
	background: rgba(0,0,0,.6);
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	display: none;
}
footer {
	font-weight: 300;
	color: black;
	width: 100%;
	height: auto;
}
footer nav {
	width: 100%;	
	z-index: 20;
}
footer nav ul,
footer nav ul li {
	width: 100%;
	padding-bottom: 0;
	margin-bottom: 0;
}
footer nav ul li {	
	list-style: none;
}
footer nav ul li a,
footer nav ul li a {	
	font-size: .85em;
	line-height: 0;
}
footer nav ul li a:link,
footer nav ul li a:visited {	
	color: black;
}

footer nav > ul li#footerZoom,	
footer nav > ul li#footerOutils,	
footer nav > ul li#footerPlan {	
	width: 100%;
}
footer nav > ul > li#footerZoom {	
	display: block;
	background: none;
}
footer nav > ul > li#footerZoom > ul,
footer nav > ul > li#footerZoom > ul > li {
	line-height: 100%;
	display: block;
}
footer nav > ul > li#footerZoom > ul > li {	
	font-size: 1.5em;
	line-height: 100%;
	text-align: right;
	box-sizing: border-box;
	padding: .25em .4em;
}
footer nav > ul > li#footerOutils {	
	border-top: solid 1px rgba(0,0,0,.1);
	background: white;
	display: inline-table;
	width: 100%;
}
footer nav > ul > li#footerOutils > ul {	
	display: table-row;
}
footer nav > ul > li#footerOutils > ul > li {	
	box-sizing: border-box;
	display: table-cell;
	vertical-align: middle;
	padding: .75em 1em .5em;
}

footer nav > ul > li#footerOutils > ul > li {	
	text-align: right;
}
footer nav > ul > li#footerOutils > ul > li:first-child {	
	text-align: left;
	width: 5%;
}
footer nav > ul > li#footerOutils > ul > li:nth-child(2) {	
	text-align: center;
	width: 70%;
}

footer nav > ul > li#footerOutils > ul > li#retour {
	width: 5%;
	display: none;
}
footer nav > ul > li#footerOutils > ul > li#paginationRetour {	
	width: 5%;
}
footer nav > ul > li#footerOutils > ul > li#copyright {	
	white-space: nowrap;
	width: auto;
	font-family: 'Roboto', Helvetica, Arial, sans-serif;
	font-size: .8em;
	letter-spacing: .025em;
	line-height: 150%;
}
footer nav > ul > li#footerOutils > ul > li#copyright a {	
	font-size: 1em;
}

footer nav > ul > li#footerOutils > ul > li a {	
	font-size: 1.25em;
	line-height: 90%;
}
footer nav > ul > li#footerOutils > ul > li > ul#pagination {	
	white-space: none;
	width: 75%;
	display: none;
}
footer nav > ul > li#footerOutils > ul > li > ul#pagination li {	
	display: inline;
}
footer nav > ul > li#footerOutils > ul > li > ul#outils {	
	display: inline-table;
	float: right;
	width: 25%;
}
footer nav > ul > li#footerOutils > ul > li > ul#outils li {	
	display: table-cell;
	padding-left: 2em;
}

footer nav > ul > li#footerOutils > ul > li#planDuSiteTitre {
	font-weight: 700;
	letter-spacing: .1em;
	text-align: left;
	text-transform: uppercase;
	padding-left: 3em;
  display: none;
}
footer nav > ul li a:hover,
footer nav > ul > li#footerOutils > ul > li#planDuSite.rouge a:link,
footer nav > ul > li#footerOutils > ul > li#planDuSite.rouge a:visited {	
	color: rgba(160,20,20);
}

footer nav > ul > li#footerPlan {	
	border-top: solid thin rgb(235,235,235);
	background: rgb(240,240,240);
	display: none;
}
footer nav > ul > li#footerPlan {	
	box-sizing: border-box;
	width: 100%;
	padding: 2em;
}
footer nav > ul > li#footerPlan > ul {	
	display: inline-table;
	width: 100%;
}
footer nav > ul > li#footerPlan > ul > li {	
	box-sizing: border-box;
	display: table-cell;
	padding: 0 2em;
	vertical-align: top;
}
footer nav > ul > li#footerPlan > ul > li {	
	font-size: 1.25em;
}
footer nav > ul > li#footerPlan > ul > li > ul > li {	
	font-size: .9em;
	font-weight: 400;
	letter-spacing: .1em;
}
footer nav > ul > li#footerPlan > ul > li > ul > li.niveau1 > a {	
	text-transform: uppercase;
}
footer nav > ul > li#footerPlan > ul > li > ul > li.niveau1 > ul.niveau2 {	
	font-size: .9em;
	line-height: 90%;
	letter-spacing: .05em;
	padding-bottom: .75em;
	padding-top: 1.5em;
}
footer nav > ul > li#footerPlan > ul > li > ul > li.niveau1 > ul.niveau2 li {	
	margin-bottom: .75em;
}
footer nav > ul > li#footerPlan > ul > li > ul > li.niveau1 > ul.niveau2 li.niveau3 {	
	font-weight: 300;
}

/* LIEN & BOUTON */
button,
.button {
	font-family: 'Roboto', Helvetica, Arial, sans-serif; 
	font-size: 1.1em;
	line-height: 125%;
	text-align: center;
	box-sizing: border-box;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: white;
	background: rgba(160,20,20,1);
	border: none;
	padding: .25em .5em .225em;
}	
.button:link,
.button:visited {
	color: white;
	text-decoration: none;
}
button:hover,
.button:hover {
	background: rgba(130,15,15);
	cursor: pointer;
}
.buttonOff {
	color: white;
	background: rgba(0,0,0,0.25);
	cursor: not-allowed;
}
.buttonOff:hover {
	background: rgba(0,0,0,0.25);
	cursor: not-allowed;
}

/**********/
/* CLASSE */
/**********/
.normal {
	font-style: normal;
}
/* Alignement */
.texteAuCentre {
	text-align: center;	
}
.alignerAuCentre {
	margin: 0 auto;
}
.alignerADroite {
	text-align: right;	
}
.alignerEnHaut {
	vertical-align: top;
}
.alignerAuMilieu {
	width: 100%;
	vertical-align: middle;
	padding: 0;
}

/* Bloc */
.masquer {
	display: none;
}
.invisible {
	visibility: hidden;
}
.afficher {
	display: block;
}
afficherTableEnLigne {
	display: inline-table;
}
.aLaLigne {
	clear: both;
}
.blocAGauche {
	float: left;
}
.blocADroite {
	float: right;
}
/* Largeur */
.largeur1em {
	width: 1em;
}
.largeur2em {
	width: 2em;
}
.largeur2em {
	width: 2em;
}
.largeur4em {
	width: 4em;
}
.largeur25pc {
	width: 25%;
}
.largeur49pc {
	box-sizing: border-box;
	width: 49%;
	margin-left: .5em;
}
.largeur50pc {
	box-sizing: border-box;
	width: 50%;
	padding-right: .5em;
}
.largeur70pc {
	box-sizing: border-box;
	width: 70%;
	padding-right: .5em;
}
.largeur100pc {
	box-sizing: border-box;
	width: 100%;
}
.largeurAuto {
	width: auto;
}
/* Hauteur */
.hauteur1em {
 height: 1em;
}
.hauteur2em {
 height: 2em; 
}
/* Marge */
.margeGauche0em {
	margin: 0;
}
.margeGauche1em {
	margin-left: 1em;
}
.margeHaute05em {
	margin-top: .5em;
}
.margeHaute075em {
	margin-top: .75em;
}
.margeHaute025em {
	margin-top: .25em;
}
.margeHaute1em {
	margin-top: 1em;
}
.margeHaute15em {
	margin-top: 1.5em;
}
.margeBasse2em {
	margin-bottom: 2em;
}
.margeBasse15em {
	margin-bottom: 1.5em;
}
.margeBasse1em {
	margin-bottom: 1em;
}
.margeBasse05em {
	margin-bottom: .5em;
}
.margeBasse025em {
	margin-bottom: .25em;
}
.margeBasse0125em {
	margin-bottom: .125em;
}
.margeBasse0em {
	margin-bottom: 0;
}
.espaceHaut05em {
	padding-top: .5em;
}
.espaceMarge0em {
	padding: 0;
	margin: 0;
}

/* Styles */
.light {
	font-weight: 300;
}
/* Corps */
.corps075em {
	font-size: .75em;
}
.corps085em {
	font-size: .85em;
}
.corps125em {
	font-size: 1.25em;
}
.estOn {
	color: rgb(160,20,20);
}
.pageBr {
	page-break-before: always;
	padding-top: 2em;
}
article p span,
.noBr,
.jpb {
	white-space: nowrap;
	hyphens: none;
}
.noBo,
a.noBo:link,
a.noBo:visited {
	border: none;
}
.suite {
	font-weight: 400;
	font-size: 1.15em;
	line-height: 100%;
	text-decoration: none;
	color: black;
	cursor: pointer;
}
.suite a:link,
.suite a:visited {
	text-decoration: none;
	color: black;
	border: none;
	cursor: pointer;
}
summary.suite {
	-webkit-appearance: none;
	outline: none;
	padding-top: .75em;
	padding-bottom: 1em;
}
summary.suite::-webkit-details-marker {
	display: none;
}

/******/
/* ID */
/******/
#pleinEcran {
	margin-right: 0.75em;
}
#pleinEcran:hover {
	color: rgb(160,20,20);
}

#alerteOk,
#alerteKo {
	font-family: 'Libre Baskerville', 'Times New Roman', Times, serif;
	font-size: 1.1em;
	line-height: 150%;
	padding-bottom: .75em;
}
#alerteOk {
	text-align: center;
	color: seagreen;
}
#alerteKo {
	text-align: center;
	color: rgb(160,20,50);
}
#alerteOk i,
#alerteKo i {
	font-size: 1.5em;	
	margin-bottom: .25em;
}

/*************/
/* ADAPTATIF */
/*************/
/* MOBILE+TABLETTE */		  
@media (max-width: 800px) {
	body {
		padding: 6.5em 1em 3.55em;
	}
	body > header {
		height: 3.5em;
	}
	body > header h1 {
		font-size: 1.2em;
		line-height: 90%;
		letter-spacing: .1em;
		padding: .56em 0;
	}
	body > header h1 b {
		font-size: 103%;
	}
	header ul li br {
		display: inline-block;
	}
	header #connexionMobile {
		display: block;
	}
	nav#menu {
		top: 3.45em;
	}
	nav#menu ul li#mOk {
		display: table-cell;
		width: .5em;
	}
	nav#menu ul li#mKo ul {
		display: block;
	}
	nav#menu ul li#mKo ul li {
		font-size: 1em;
		line-height: 150%;
		letter-spacing: .1em;
	}
	nav#menu ul li#mKo:target ul,
	nav#menu ul li#mKo:target ul li {
		display: block;
		padding-left: 0;
		margin-left: 0;
	}
	nav#menu ul li#mKo ul li {
		padding-left: 0;	
	}
	.masquerMo {
		display: none;
	}
	nav#sousMenu,
	main,
	main article {
		display: block;
	}
	nav#sousMenu {
		margin-top: 1em;
		box-sizing: border-box;
		padding: 0;
	}
	nav#sousMenu ul li {
		margin-left: 0;
		margin-right: 0;
	}
	main,
	main article {
		width: 100%;
		padding: 0;
		margin: 0;
	}
	main article {
		box-shadow: 3px 3px 3px rgba(0,0,0,0.2);
	}
	aside {
		padding: 0;
	}
	ul.choix li {
		display: block;
		width: 100%;
		float: none;
		clear: both;
		white-space: nowrap;
		padding: .5em 0 0;
	}	
	footer {
		display: none;
	}
	p#footerMobile {
		text-align: center;
		display: block;
		padding-top: 1em;
	}
	#iConnexion,
	#iDeconnexion,
	#iVotreCompte {
		display: none;
	}
}

/* MAC/PC */
@media (min-width: 801px) {
	body {
		padding: 7.5em .5em 3.55em;
	}
	body > header {
		height: 3em;
	}
	header h1 br,
	header ul li br,
	header #connexionMobile,
	main section#fenetre form h1 br {
		display: none;
	}
	article header h1 br {
		display: inline-block;		
	}
	
	nav#menu {
		top: 3em;
	}
	nav#menu ul li#mOk {
		display: none;
	}
	nav#menu ul li#mKo ul li {
		font-size: .9em;
		line-height: 150%;
		letter-spacing: .1em;
		padding-left: 1em; 
	}
	nav#menu ul li#mKo:target ul {
		display: inline-block;
	}
	nav#menu ul > li > ul li {
		display: inline-block;
	}
	.masquerMo {
	}
		
	footer {
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 20;
	}
	p#footerMobile {
		display: none;		
	}
}
@media (prefers-reduced-motion: no-preference) {
  html,
  #haut {
    scroll-behavior: smooth;
  }
}

/**/