/* ############## Dans ce fichier ########### */
/* MISE EN PAGE */
/* TEXTE */
/* LISTES */
/* TABLEAUX */
/* FORMULAIRES */
/* MENU */
/* NOMBRE DE PAGES */
/* PLAN DU SITE */
/* IMPRESSION */

/* Rose : bc558d */
/* Parme : dfd8fa */
/* Violet : 1800ad */
/* Vert foncé : 869435 */
/* Vert moyen : b0c954 */
/* Vert clair : ccdb8a */


/* ############## MISE EN PAGE BASEE SUR ECRANS MOBILES ########### */
@font-face {
    font-family: 'deallisaitalic';
    src: url('deallisa/deallisa_italic-webfont.woff2') format('woff2'),
         url('deallisa/deallisa_italic-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
@font-face {
    font-family: 'deallisaregular';
    src: url('deallisa/deallisa-webfont.woff2') format('woff2'),
         url('deallisa/deallisa-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

}
.fa, .fa-brands, .fa-classic, .fa-regular, .fa-sharp, .fa-solid, .fab, .far, .fas { font-family: FontAwesome !important; }

* {
	margin: 0;
	padding: 0;
}
iframe {
	max-width:100%;
}
.hide_mobile { display:none; }
body {
	background: #bc558d url(/interface/fond.jpg) top center;
	background-attachment:fixed;
	background-size:cover;
	font-family: Source sans pro, Arial, Helvetica, sans-serif;
	font-size:1.2em;
}
div.centrage {
	max-width: 1100px;
	margin: 0 auto;
}
div.bordure {
	max-width: 1100px;
	position: relative;
	margin: 0 auto;
	width:100%;
	color:#000000;
}
div.bandeau {
	display:grid;
	grid-template-columns: 170px 1fr;
	grid-template-rows: 1fr 1fr;
	/*flex-wrap: wrap;
	flex-direction:column;*/
	color:#869435;
}
#logo {
	grid-column: 1;
	grid-row: 1/3;
}
#logo img { max-height:20vh; margin: 15px; }

div.bandeau .texte1 {
	grid-column: 2;
	font-size:1.8em;
	font-family:'deallisaregular',Arial, Helvetica, sans-serif;
	color:#1800ad;
	text-align:left;
}
div.bandeau .soustexte {
	font-size:70%;
}
div.bandeau .texte2 {
	grid-column: 2;
	grid-row: 2;
	font-size:1.3em;
	font-family:'deallisaregular',Arial, Helvetica, sans-serif;
	color:#1800ad;
	text-align:left;
}
div#contenu {
	padding: 15px;
	clear:both;
	max-width: 1150px;
	margin:0 auto;
	line-height:1.6em;
	position:relative;
}
@media screen and (min-width: 781px) {
	div#contenu {
		padding: 0;
	}
	div.bandeau { display:flex; flex-direction:row; }
	div.bandeau #logo { order:2; flex:1 1 0; text-align:center; }
	div.bandeau .texte1 { order:1; font-size:2.5em; flex:1 1 0; margin: 10px; }
	div.bandeau .texte2 { order:3; font-size:2em; flex:1 1 0; text-align:right; margin: 10px; }
}
div#bas_de_page {
	position: relative;
	width: 100%;
	padding: 1em 0;
}
div#bas_de_page p {
	text-align: center;
	font-size: 0.8em;
}
div#bas_de_page img {
	height: 20px;
	vertical-align: -4px;
	border: none;
}
div#bas_de_page, div#bas_de_page a {
	color: #999;
}
ul#evitement {
	display: none;
}
/* Boutons des langues */
#boutons_langues {
	z-index: 98;
	position:absolute;
	top: 10px;
	right: 20px;
}
#onglet_en, #onglet_fr {
}
#onglet_en a, #onglet_fr a {
}

/* ############## TEXTE ########### */
h1 {
	font-size: 1.9em;
	margin-top: 1em;
	margin-bottom: 1em;
	color:#000000;
	line-height:1.3em;
	font-family:'deallisaregular',Arial, Helvetica, sans-serif;
	background-color:#b0c954;
	padding:15px 40px 30px;
	border-radius:10px;
	font-weight: normal;
}
h2 {
	font-size: 1.5em;
	margin-top: 1.8em;
	margin-bottom: 0.5em;
	color:#000000;
	font-family:'deallisaregular',Arial, Helvetica, sans-serif;
	line-height: 1.2em;
	font-weight: normal;
}
h3 {
	color:#1800ad;
	margin-top: 1.2em;
	font-size: 1.5em;
	font-family:'deallisaregular',Arial, Helvetica, sans-serif;
	font-weight: normal;
}
h4 {
	color:#1800ad;
	margin-top: 1em;
	font-size: 1.2em;
	font-family:'deallisaregular',Arial, Helvetica, sans-serif;
	font-weight: normal;
}
@media screen and (min-width: 1201px) {
	h1 { font-size: 3em; }
	h2 { font-size: 2.4em; }
	h3 { font-size: 1.8em; }
}
p {
	margin-top: 0.8em;
	margin-bottom: 0.8em;
	text-align: justify;
}
.texte_gris {
	font-weight: normal;
	color: #999999;
	font-style: italic;
}
.texte_en_valeur {
	color: #869435; font-weight:bold;text-shadow:0 0 6px #fff;
}
sup {
	vertical-align: 0.4em;
}
acronym, abbr, dfn {
	border-bottom: 1px dotted #000000;
	cursor: help;
}
.surligne {
	background-color: #bc558d;
	color: #ffffff;
	padding: 4px 6px;
	font-weight:bold;
}
.encadre {
	border: 2px solid #bc558d;
	padding: 3em;
	margin: 3em 0;
}
.encadre > h2, .encadre > h3 { margin-top:0; }
.encadre_livre { max-width:40%; }
.petit, small {font-size:90%;}
.bouton a, .bouton button, a.bouton { 
	background-color: #bc558d;
	color: #000000;
	padding: 10px 20px;
	font-weight:bold;
	font-size:120%;
	line-height:2em;
	text-decoration:none !important;
	color:#fff !important;
	border:0;
	cursor:pointer;
	border-radius: 5px;
}
.bouton a:hover, .bouton button:hover, a.bouton:hover { background-color:#1800ad; }
.dans-un-rond {
	background-color:#bc558d;
	color:#fff;
	border-radius:40px;
	padding: 13px;
}
div#contenu img {
	height: auto !important;
    max-width: 100% !important;
	border-radius:8px;
	margin:5px;
}
div.zone_colonnes {
	clear: both;
}
div.colonne { width:100%; }
@media screen and (min-width: 640px) {
	div.colonne {
		width: 49%;
		display:inline-block;
		vertical-align:top;
	}
	div#contenu img.img_gauche {
		float: left;
		margin: 0px 30px 10px 0px;
	}
	div#contenu img.img_droite {
		float: right;
		margin: 0px 0px 10px 30px;
	}
}
.date_modification {
	float: right;
	color: #bc558d;
	font-size: 0.9em;
}
a.telecharger_pdf {
	background: url(/interface/picto_pdf.gif) no-repeat 0px 0px;
	padding: 1px 0 0 18px;
}
a img {
	border: none;
}
.puce_alerte {
	margin-top: 1.5em;
	margin-bottom: 1em;
	background-color:#ddd;
	color:#d36f03;
	padding: 2em;
}
.puce_alerte::before {
	font-family: "Font Awesome 5 Free";
	content: "\f06a";
	font-size:2em;
	font-weight:900;
	padding-right:10px;
}
.puce_ok {
	margin-top: 1.5em;
	margin-bottom: 1em;
	background-color:#ddd;
	color:#090;
	padding: 2em;
}
.puce_ok::before {
	font-family: "Font Awesome 5 Free";
	content: "\f00c";
	font-size:2em;
	font-weight:900;
	padding-right:10px;
}
hr {
	color: #999999;
	border: none;
	border-top: 1px solid #999999;
	height: 1px;
	margin-top: 1.3em;
	margin-bottom: 1.3em;
}
hr.invisible {
	height: 0px;
	width: 0px;
	margin: 0;
	padding: 0;
	border: none;
	clear: both;
}
/* Pour l'info bulle (Aide dans Gestion) */
a.infobulle, a.definition {
	text-decoration: none;
	border-bottom: none;
	position: relative;
	cursor: help;
	font-weight: normal;
}
a.infobulle span, a.definition span {
	display: none;
}
a.infobulle:hover span, a.definition:hover span {
	display: block;
	position: absolute;
	z-index: 100;
	background-color: #eeeeee;
	border: 1px solid #cccccc;
	color: #000000;
	padding: 7px 7px 7px 18px;
	width: 200px;
	right: -219px;
	top: -11px;
	font-style: italic;
	text-align: left;
}
.apercu-google { background-color:#fff; -webkit-box-shadow:2px 2px 5px rgba(0,0,0,0.5); -moz-box-shadow:2px 2px 5px rgba(0,0,0,0.5); box-shadow:2px 2px 5px rgba(0,0,0,0.5); padding:1em; margin:1em; }
#gtitre { font-size: 20px; color: #1a0dab; }
#gdescription { color: #545454; font-size: 14px; line-height: 1.58; }

a:link {
	text-decoration: underline;
	color: #1800ad;
}
a:hover {
	text-decoration: underline;
	color: #bc558d;
}
a:active {
	text-decoration: none;
	color: #bc558d;
}
a:visited {
	text-decoration: underline;
	color: #000000;
}
.surligne a, a.surligne {
	color: #ffffff;
}
/* ############## BOUTONS ############ */
.bouton_retour {
	font-size: 0.9em;
	background: url("/interface/bouton_retour.png") left center no-repeat;
	padding-left: 15px;
	margin-bottom: 3px;
}
a.bouton_imprimer {
	position: absolute;
	top: 205px;
	left: 685px;
	display: block;
	height: 40px;
	width: 40px;
	/*font-size: 0.9em;
	padding: 4px 0px 4px 20px;*/
	background: url(/interface/imprimer.gif) left center no-repeat;
	text-indent: -9999px;
	overflow: hidden;
}
/* ############## LISTES ########### */
ul {
	margin-left: 5px;
	/*list-style-image: url(/interface/carre_vert.gif);*/
}
li {
	margin: 2px 0px 0.5em 10px;
}

/* ############## TABLEAUX ########### */
table {
	border: none;
	margin: 5px;
	border-collapse: collapse;
	max-width:100%;
}
caption {
	font-style: italic;
	color: #999999;
}
th {
	background-color: #cccccc;
	padding: 0.3em;
}
td {
	border-bottom: 1px solid #cccccc;
	padding: 0.1em;
}

/* ############## FORMULAIRES ########### */
div.tete_form {
	font-weight: bold;
	font-size: 1em;
	padding: 3px;
}
div.corp_form {
	padding: 0.8em;
}
div.pied_form {
	padding: 0.2em;
	text-align: center;
}
p.champs_obligatoires {
	font-weight: normal;
	color: #999999;
	font-style: italic;
	text-align: right;
	margin: 1px;
	font-size: 0.85em;
}
.alerte_obligatoire {
	background-color: #ff0000;
}
form .obligatoire {
	font-weight: bold;
}
fieldset{
	padding: 4px;
	border: 1px solid #fff;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}
fieldset legend {
	font-weight: bold;
	padding: 1em 0.3em 1em 0.3em;
}
form label {
	/*clear: both;*/
	margin-top: 0.3em;
	display: block;

}
form span.complement_info {
	color: #999999;
	font-style: italic;
}
form select, form textarea, form input {
	font-size: 1em;
	border: 1px inset #999999;
	margin: 2px;
	max-width: 80vw;
	padding: 5px;
	font-family: Source sans pro, Arial, Helvetica, sans-serif;
}
form input[type=checkbox] {
	border: none;
}
form div.pied_form input, form input.valider {
	font-weight: bold;
	cursor: pointer;
	border: none;
	background-color:#bc558d;
	color: #ffffff;
	padding: 10px 20px;
	font-size:120%;
	text-decoration:none !important;
	color:#fff !important;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
form div.pied_form input:hover, form input.valider:hover {background-color:#1800ad;}

/* ##############  MENU ########### */
.niveau1 {
	max-height:0;
	overflow:hidden;
	max-width:1150px;
	margin:0 auto;
}
.nav-trigger {
	position:absolute;
    clip: rect(0, 0, 0, 0);
}
label[for="nav-trigger"] {
    z-index: 2;
    width: 30px;
    height: 30px;
    cursor: pointer;
	color:#fff;
	font-size:40px;
	padding:2px 10px;
	background-color:#b0c954;
}
label[for="nav-trigger"]:hover { color:#000000; }
label[for="nav-trigger"]::before { content:"\2261"; }
.nav-trigger:checked ~ .niveau1 {
	max-height:500px;
    transition: max-height 0.8s;
}
.nav-trigger:not(:checked) ~ .niveau1 {
	max-height:0px;
    transition: max-height 0.8s;
}

div#menu {
	z-index: 2;
	clear:both;
	letter-spacing:0.05em;
	text-align:center;
}
div#menu ul {
	padding: 0;
	margin:0;
    list-style : none;
    line-height : 2em;
}
/* fond different au survol de la souris pour les sous menu et les "basiques"*/ 
div#menu li:hover {
	/*background: #cccccc;*/
}
div#menu ul li {
	padding: 15px 0 0;
}
div#menu ul ul li {
    width: 120px;
	height: auto;
    text-align: left;
	font-weight: normal;
}
div#menu ul ul {
	position: absolute;
	top: 23px;
	left: 0px;
	display:none;
	/*border: 1px solid #cccc33;*/
}
div#menu li a {
	text-decoration: none;
	padding: 7px 19px;
	color:#000000;
	border-bottom:3px solid transparent;
	font-family:'deallisaregular',Arial, Helvetica, sans-serif;
	font-size: 1.6em;
}
div#menu ul.niveau1 li.sousmenu:hover ul.niveau2 {
	display: block;
}
div#menu ul li a:hover, div#menu ul li.selected a {
	border-bottom-color: #bc558d;
}
@media screen and (min-width: 800px) {
	.hide_mobile { display:inherit; }
	.niveau1 {max-height:200px !important; }
	label[for="nav-trigger"] { position:fixed; visibility:hidden; }
	div#menu ul li {
		display: inline-block;
	}
}

/* ############## IMPRESSION ########### */
@media print {
	div#menu {
		display: none;
	}
	div#fil_ariane {
		display: none;
	}
	ul#evitement {
		display: none;
	}
	
	div.centrage {
		margin: 0;
	}
	div.bordure {
		padding-left: 0;
		padding-right: 0;
	}
}