/* GÉNÉRAL */

/* Fonts */
/* @import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;700&display=swap'); */

@font-face {
    font-family: 'Proximanova';/*Montserrat*/
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/theme/elgar/fonts/ProximanovaRegular.eot');
    src: url('/theme/elgar/fonts/ProximanovaRegular.eot') format('embedded-opentype'),
         url('/theme/elgar/fonts/ProximanovaRegular.woff2') format('woff2'),
         url('/theme/elgar/fonts/ProximanovaRegular.woff') format('woff'),
         url('/theme/elgar/fonts/ProximanovaRegular.ttf') format('truetype'),
         url('/theme/elgar/fonts/ProximanovaRegular.svg#ProximanovaRegular') format('svg');
}
@font-face {
    font-family: 'Proximanova';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: url('/theme/elgar/fonts/ProximanovaBold.eot');
    src: url('/theme/elgar/fonts/ProximanovaBold.eot') format('embedded-opentype'),
         url('/theme/elgar/fonts/ProximanovaBold.woff2') format('woff2'),
         url('/theme/elgar/fonts/ProximanovaBold.woff') format('woff'),
         url('/theme/elgar/fonts/ProximanovaBold.ttf') format('truetype'),
         url('/theme/elgar/fonts/ProximanovaBold.svg#ProximanovaBold') format('svg');
}


/* Liens */
a {
	color: #000;
	text-decoration: underline;
	transition: color .3s;
}
	a:hover, 
	.tdu:hover { /* liens */
		text-decoration: none; 
	}
	
	a.no-access:after{
		font-family: FontAwesome;
		content: '\e86f';
		font-size: 1.08em;
		padding: 0 .2em 0 .25em;
	}
	#contacts a.no-access:after,
	.hc a.no-access:after
	{ color: #FFF;}
	
	a.external:after{
		/* content: open-quote; */
	  font-family: FontAwesome;
	  content: '\f08e';
	  font-size: .85em;
	  /* color: #00253F; */
	  padding: 0 .5em 0 .25em;
	}
	#contacts a.external:after,
	.hc a.external:after
	{ color: #FFF;}

/* Titres */
h1, .h1-like, 
h2, .h2-like,
h3, .h3-like,
h4, .h4-like { 
	color: #000;
	/* font-weight: 800; */
	margin-top: 2rem;
	margin-bottom: 2rem;
	position: relative;
}


h1, .h1-like { 
	text-align: center;
	padding: 0 150px;
}

	/** Picto déco titres **/
	main:not(.tpl-home) .picto:before {
		content: '';
	    position: absolute;
	    width: 150px;
	    top: 25px;
	    left: 0;
	    border-bottom: 1px solid #20828F;
	}
	main:not(.tpl-home) .picto:after {
		content: '';
	    position: absolute;
	    width: 150px;
	    top: 25px;
	    right: 0;
	    border-bottom: 1px solid #20828F;
	}


h2 { 
	padding: 0 !important;
	margin-left: 1rem;
}

	h2:before {
		content: "";
		border-left: solid 4px #C51A1B;
		position: absolute;
		top: 6%;
		left: -15px;
		height: 85%;
	}

	h2[aria-hidden="true"]:before,
	h2[aria-hidden="true"]:after
	{ content: none; }



h3, .h3-like { padding-bottom: 1rem !important; }

.tpl-home h3, .tpl-home .h3-like { padding-bottom: 2rem !important; }

	h3:after, .h3-like:after {
	    position: absolute;
	    content: '';
	    width: 38px;
	    left: 0;
	    bottom: 0;
	    margin: auto;	    
	    border-bottom: 1px solid #000;
	}

	.tpl-home h3:after, .tpl-home .h3-like:after,
	.tpl-publication-liste .h3-like:after,
	.tpl-article-liste .h3-like:after {
	    right: 0;	    
	}

	.h3-like:before { content: none; }


h4 { color: #20828F; }


/* Mise en avant contenu */
.highlight {
	position: relative;
	width: 60%;
	margin: auto;	
	background-color: #20828F;
	color: #fff;
	padding: 2rem 2rem 1rem;
	margin-bottom: 2rem;
	border-radius: 0px 0px 25px 0px;
	border-top: 7px solid #C51A1B;
}
	.highlight h2, .highlight h3, .highlight h4, .highlight a { color: #fff; }

	.highlight h2:first-of-type,
	.highlight h3:first-of-type
	{ margin-top: 0; }


	.highlight ul li:before { color: #fff; }
	
	.highlight:after {
	  	content: url('/theme/elgar/img/highlight.svg');
	    position: absolute;
	    width: 28px;
	    bottom: -25px;
	    right: -18px;
	}


/* Citation */
blockquote {
    /* quotes: "“" "”" "‘" "’"; */
    display: inline-block;/*table*/
    position: relative;
    padding: 1rem 4rem 1rem 4rem;
    /* margin-bottom: 1em !important; */
}
	blockquote::before {
	    /* content: open-quote; */
	    font-family: FontAwesome;
	  	content: '\f10d';
	    font-size: 1.5em;
	    color: #9d9d9d;
	    position: absolute;
	    left: 1rem;
	    top: 0;
	}
	blockquote::after {
	    /* content: close-quote; */
	    font-family: FontAwesome;
	  	content: '\f10e';
	    font-size: 1.5em;
	    color: #9d9d9d;
	    position: absolute;
	    padding-left: 1rem;
	    bottom: 0;
	    right: 0;
	}


/* Fil d'ariane */
/* .ariane { border-bottom: 2px solid #eaecee; } */
	.ariane .tdn { text-decoration: underline !important; }
	.ariane nav a:not(:empty):after {
		display: inline-block;
		padding: 0 0.25em 0 0.5em;
		content: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 14' width='7' height='10'%3e%3cpath d='M-.4 12l2 2 7-7-7-7-2 2 5 5z'/%3e%3c/svg%3e");
	}
		.hc .ariane nav a:not(:empty):after { filter: invert(1); }


/* Mots en langue basque */
span[lang] { border-bottom: dotted 1px #00253F; }


/* Ancre */
a[name] { 
	text-decoration: none;
	border-bottom: dashed 1px #00253F;
}


/* bouton pour les liens */
.bt:not(.vam), .bt.internal, .bt-tag {
	background-color: #C51A1B;
}
	.bt:not(.vam), .bt.internal, .bt-tag,
	a.bt.external:after 
	{ color: #fff; }

.bt:not(.fixed):not(.vam), .bt-tag { 
	font-family: 'Proximanova', sans-serif;
	font-weight: bold;
	padding: 1rem 3rem; 
	border-radius: 30px;
	transition: all .3s;
}

	.bt:not(.vam):hover, 
	.bt.selected,
	.bt-tag:hover
	{ text-decoration: underline;	}

	.bt-tag { display: inline-block; }

/* .bt-tag {
	display: inline-block;
	text-align: center;
	background-color: #26D691;
	border-radius: 25px;
	text-decoration: none;
	padding: 1rem 2rem;
	margin-bottom: 1rem;
}
	.bt-tag:hover, .bt-tag.selected {
		background-color: #00253F;
		color: #26D691;
	} */

button { border: solid 1px #fff; }

/* Listes à puces */
article ul,
	#sommaire ol ol { list-style: none; }

	article ul { margin-bottom: 2rem;	}

	main article ul li {
		position: relative;
		padding-bottom: 1rem;
	}

	#sommaire ol ol { padding-top: 1rem; }

	#sommaire ol li,
	#sommaire a { position: relative; }	
	#sommaire a { 
		text-decoration: none;
		z-index: 1;
	}
	#sommaire a:hover { text-decoration: underline; }

		article ul li:before,
		#sommaire ol ol li:before {
			color: #20828F;
			content: "\2022";
			font-size: 3.6rem;
			position: absolute;
			top: -18px;
			left: -25px;

			/* display: inline-block;
			position: relative;
			width: 20px;
			height: 10px;
			top: -25px;
			left: -8px;
			vertical-align: middle; */
			/* background-color: red; */
		}

		.tpl-annuaire-liste article ul li:before,
		footer article ul li:before
		{ content: none; }


/* Couleurs */
.color { color: #00253F; }
/* .color-alt { color: #26D691; } */
/* .color-nav { color: #353842; } */


	/** Background **/
	/* .bg-color {
		background-color: #00253F;
		color: #fff;
	}
		a.bg-color:hover, a .bg-color:hover {
			background-color: #fff;
			color: #00253F;
		} */

	/* .bg-color-2 { background-color: #20828F; } */
	/* .bg-color-3 { background-color: #00253F1A; } */
	.bg-white { background-color: #fff; }

	#rechercher .bg-color-2 { 
		background-color: #C51A1B;
		border: 1px solid #000;
		border-left: none;
		color: white;
	}
	#recherche { border-right: none; }

/* Bordures */
/* .brd { border: 1px solid #00253F; } */
/* .brd3 { border: 3px solid #00253F; } */
.brd-left { border-left: 1px solid #00253F; }
/* .brd-right { border-right: 1px solid #00253F; } */
/* .brd-alt { border: 2px solid #20828F; } */
/* .brd-top { border-top: solid 3px #00253F; } */
.brd-top-2 { border-top: 2px solid #008891; }
/* .brd-top-3 { border-top: solid 3px #26D691; } */

nav.brd-top-3 {
	border-bottom: 2px solid #008891;
	margin-top: 3rem;
}

/* Border-radius */
.brd-rad { border-radius: 25px;}

/* #encart .col:first-child, #intro-visuel img { border-top-left-radius: 25px; } */

/* .blocks > div, #encart .col:nth-child(2) { border-bottom-right-radius: 25px; } */

.brd-rad-100 { border-radius: 100%; }


/* Positions */
.bot15 { bottom: 15px; }
.right15 { right: 15px; }


/* Table layout */
.row {
	display: table;
	table-layout: fixed;
}

.row>*,
.col {
	display: table-cell;
	vertical-align: middle;
}


/* HEADER */
/** Logo **/
header #logo {
	display: block;
	min-height: 50px;
	transition: opacity .5s;
}
header #logo [src*='.svg'] { min-width: 300px; }
	header #logo:hover { opacity: 0.6; }
	header #logo img { background-color: #fff !important; }

.lucide #add-nav .dragger:before { color: #000; }

header section:first-of-type { font-size: 1.4rem; }


/* HOME */
.tpl-home {
	overflow: hidden;
	margin-top: -2px;
}

	#alert { 
		background: url('/theme/elgar/img/bg-bleu.svg') no-repeat center, linear-gradient(to right, #20828F 35%, transparent 0);
		padding: 5rem 0;
	}
		#alert > article {
			background: #FFF;
			box-shadow: 0px 3px 6px #00000029;
			border-radius: 0px 0px 25px 0px;
			justify-content: space-evenly;
			/* grid-gap: 0 4rem; */
		}
			#alert .mw600p { max-width: 370px; }


	#encart article {  
		box-shadow: 0px 3px 6px #00000029;
		border-radius: 25px;
	}
		#encart .col:first-child, #encart .col:first-child img {
			background-color: #F7F7F7;
			border-radius: 25px 0 0 25px;
		}


	/* En un clic */
	#home-enunclic { padding-top: 0; }

	#enunclic {
		z-index: 1;
		position: relative;
		padding-top: 5rem;
	}

	#enunclic a.white { color: inherit !important; }

	#enunclic li { 
		max-width: 150px; 
		padding-bottom: 4rem; 
		/* margin: auto; */
	}

	#enunclic img {
		width: 85px;
		height: 85px;
		transition: transform .1s;
	}
		/** Effet zoom img **/
		#enunclic img:hover {
			-ms-transform: scale(1.1);
			-webkit-transform: scale(1.1); 	
			transform: scale(1.1);
		}

	/* Couleurs blocs image + texte */
	#home-actualites {
	    background-color: #F7F7F7;
	    position: relative;
	    padding: 10rem 0 4rem;
	}

		#home-actualites:before {
			background: #fff;
			content: '';
			position: absolute;
		    top: -90px;
		    left: 0;
		    right: 0;
		    height: 130px;
			transform: rotate(-3deg);
		}
		#home-actualites:after {
			content: url(/theme/elgar/img/pointille.png);
		    position: absolute;
		    top: 27px;
		    left: 0;
		    right: 0;
		    width: 273px;
		    margin: auto;
		    transform: rotate(-3deg);

			/* content: '';
			position: absolute;
		    top: 36px;
		    left: 0;
		    right: 0;
		    height: 5px;
		    width: 300px;
			margin: auto;
			transform: rotate(-3deg);

			background-image: linear-gradient(to right, #c51a1b 20%, rgba(255,255,255,0) 0%);
			background-position: bottom;
			background-size: 15px 3px;
			background-repeat: repeat-x; */
		}

		/* #home-actualites .blocks > div { background-color: #00253F1A; } */
	
	#actualaune > div {
		background: #FFF;
		box-shadow: 0px 3px 6px #00000029;
		border-radius: 0px 0px 25px 0px;
		padding: 2rem;
	}
		#actualaune h3:after { right: inherit; }

		#actualaune .right15.bot15 {
			right: 30px;
			bottom: 20px;
		}

	#actualaune figure div,
	.blocks figure div {
		width: 300px;
		height: 225px;
	}


	.blocks { text-align: center; }

		.blocks > div {
			box-shadow: 0px 3px 6px #00000029;
			border-radius: 0 0 25px 0;
		}

		.tpl-publication-liste .blocks > div {
			box-shadow: none;
			border-radius: 0;
			border-left: 2px solid #C51A1B;
			border-top: 2px solid #C51A1B;
		}

		.blocks a:before {
			content: "";
			position: absolute;
			
			display: block;

			width: 100%;
			height: 100%;

			top: 0;
			bottom: 0;
			left: 0;
			right: 0;
			
			z-index: 1;
		}

		.blocks h2, .blocks h3 {
		    margin-top: 0;
		    text-align: center !important;
		}

		/* pour le cas ou les marges son modifier par le client */
		.blocks .plus {
			margin-bottom: 0 !important;
		    left: 0;
		    right: 0;
		}

	.lien-bt { text-align: center; }


	/* #home-agenda.bg-color-3 #block { background-color: white;	} */

	/* Affichage img actus et agenda en background */
	figure div { background-position: center center; }


/* NAVIGATION */
.tpl-navigation .bg-color-3 {
	background-color: #F7F7F7;
	border-top: 7px solid #20828F;
	overflow: hidden;
}

.navigation {
	list-style: none;
	background-color: #FFF;
	box-shadow: 0px 3px 6px #00000029;
	border-radius: 0px 0px 25px 0px;
	margin: 0 4rem;
    padding: 4rem 3rem 2rem 6rem;
}
	.navigation li {
		padding-bottom: 2rem;
		position: relative;
	}

	#sommaire ol > li {
		list-style: none;
		padding-bottom: 1rem;
	}

		.navigation li:before,
		#sommaire ol > li:before {
		    content: url('/theme/elgar/img/fleches.svg');
		    width: 15px;
		    top: -1px;
		    left: -25px;
		    position: absolute;
		}
			.navigation a { text-decoration: none; }
			.navigation a:hover { text-decoration: underline; }

			.navigation .description a { text-decoration: underline; }
				.navigation .description a:hover { text-decoration: none; }


		/* Carrefour éditable */
		.lucide .navigation .dragger {
			display: block;
			position: absolute;
			width: 15px;
			height: 20px;
			top: -1px;
			left: -25px;	
			cursor: all-scroll;			
		}

		.navigation li .content { overflow: hidden;	}
			.navigation li p { margin-bottom: 0; }
			.navigation li .editable-media { float: left; }
			.navigation li .texte { 
				float: left;
				margin-left: 1rem;
			}
			.navigation li button {
				position: absolute;
				top: 0;
				right: 0;
				z-index: 1;
			}						
				.navigation li i.fa-cancel {
					font-size: inherit;
					margin: 0;
				}


/* ACTUALITÉS... */

	/* Pagination */
	.page .bt {
		text-decoration: underline;
		background-color: transparent;
		color: #00253F;
		font-weight: normal !important;
		padding: 0 1rem !important;
	}
		.page .bt.selected {
			font-weight: bold !important;
			text-decoration: none;
		}
		.page .bt:hover {
			background-color: transparent;
		}

	/* Tags */
		/** affichage tags pages détail **/
		#tags a { 
			text-decoration: underline !important;
			/* padding-right: 1rem; */ 
		}
			#tags a:hover { text-decoration: none !important; }

	#tags li {
		display: inline-block;
		padding-right: 0.5em;
	}


/* ANNUAIRE */
	.tpl-annuaire-liste article {
		border: 2px solid #000000;
		border-radius: 0px 0px 25px 0px;		
		grid-template-columns: 300px auto;
    	display: grid;
	}

	.tpl-annuaire-liste figure { 
		background: #fff;
		width: 300px;
	}
	.tpl-annuaire-liste .h3-like {
		margin-top: 0;
		margin-bottom: 3rem;
	}
		.tpl-annuaire-liste .h3-like:after { 
			background: url('/theme/elgar/img/pointille.png') repeat-x left bottom;
			border: none;
			width: 100%;
		    height: 5px;
		    bottom: -10px;
		}

	.adresse p, #adresse p {  margin-bottom: 0; }


/* PERSONNALITES */
.tpl-personnalites .blocks > li {
	display: grid;
	/* grid-template-rows: 150px 60px 120px auto; */
	justify-items: center;
	width: 300px;
	
	margin-top: 2rem;
	padding: 4rem 2rem;
	
	background-color: #F7F7F7;
	box-shadow: 0px 3px 6px #00000029;
	border-radius: 0px 0px 25px 0px;
}
	.tpl-personnalites .h3-like { font-weight: bold; }
		.tpl-personnalites .h3-like:after { content: none; }

	.tpl-personnalites li .block li { text-align: left; }

	.tpl-personnalites .blocks li p { margin-bottom: 0;	}

	.tpl-personnalites .brd-alt { border: 2px solid #20828F; }

	.tpl-personnalites .asc:not(:empty) {
		background: url('/theme/elgar/img/pointille.png') no-repeat top center;	
		padding-top: 3rem;	
		width: 100%;
	}


/* PUBLICATIONS  */
.tpl-publication-liste .bg-color-3 {
	background-color: #20828F;
	color: #fff;
}

.tpl-publication-liste .lien_dl { margin-bottom: 0; }


/* SOMMAIRE */
/* Version non flottant */
/* .mw1600p { max-width: 960px; } */
.mw1600p { max-width: 1600px; }

	#sommaire { 
		/* Version non flottant
		position: initial !important;
		display: inline;
		*/

		width: fit-content;
		min-width: 300px;
		margin-right: 3rem;
		margin-bottom: 2rem;
	}

	#sommaire ol { list-style: circle; }

	.col-sommaire {
		position: relative;
    	flex: 0 0 360px;
		z-index: 1;
	}


	/* Sommaire dans le contenu */
	@media (max-width: 1000px) {
		#sommaire {
			max-height: inherit !important;
			position: initial !important;
			margin: 0 1rem 3rem;
    		border-bottom: 1px solid #E5E5E5;
		}
			#sommaire h2 { margin-top: 0; }

		.flex-sommaire article { padding: 0 1rem; }
}

	/* Sommaire Flotant 1740px */
	@media (min-width: 1000px) {
		.flex-sommaire { display: flex; }

		#sommaire {
			background-color: #F7F7F7;

			/* position: fixed; */
		   	/* top: 260px; */
		    /* left: 0; */
    		padding: 0rem 2rem 1rem 1rem;  
    		margin-left: 10px;  
		    overflow: auto;
		    max-width: 320px;
		    max-height: 300px;

		    z-index: 1;
		}
	}


/* CONTENU */
#description ul { padding-bottom: 1rem; }


/* CONTACT */
	/* Formulaire contact */
	#contact input, #contact textarea {
		border: 0.1em solid #707070;
		background-color: #f5f2f2;
	}
	#contact input[name='reponse'] { display: none; }


/* FORMULAIRE */
#formulaire ul {
	list-style: none;
	position: relative;
	padding: 0;
	margin-bottom: 0;
}
	#formulaire li { 
		/* border: 1px dashed #a5a5a5; */
		margin: 0.2rem;
		padding: 0.5rem 0.5rem;
		clear: both;
	}
		#formulaire li::before { content: ''; }

	#formulaire .fa {
		margin-right: 0;
		font-size: inherit;
	}

	#formulaire .required:not(ul) { color: #9f2d2d; }

	#formulaire [data-builder=select] .editable-input { min-width: 350px; }

	#formulaire .editable ul { padding: 0 0 0 2rem; }
		#formulaire .editable li { list-style: initial; }

	#formulaire fieldset { border: 1px solid #008891; }
	fieldset p { margin-bottom: 0.5em !important; }


/* FOOTER */
footer #renseignement { 
	background-color: #20828F;
	color: #fff;
}

footer #contacts { 
	background-color: #000;
	color: #fff;
	font-size: 1.4rem;
}

	footer #contacts a { color: white; }

	/* Affichage liens éditables */
	footer input.editable-href { position: relative; }

	/* Icônes footer */
	main .fa,
	footer .fa {
		color: #C51A1B;
		margin-right: 1rem;
		font-size: 2rem;
	}
	.bt .fa {
		color: #fff;
		transition: all .3s;
	}

	footer ul, .ulinline ul {
		list-style: none;
		padding-left: 0;
		margin-left: 0;
	}
		.lucide footer ul { list-style: disc; }
		
		footer #texte-reseaux ul li {padding-bottom: 0.5em;}
	footer #texte-reseaux p {margin-bottom: 1em;}

	.ulinline ul li {display: inline;}
		.lucide .ulinline ul li {display: inherit;}
	.ulinline ul li:before {content: " - ";}
	.ulinline ul li:first-child:before {content: "";}

/* Inspiré par knacss.com (Raphael Goetter) et donc normalize.css (Nicolas Gallagher & Jonathan Neal) */

/* Reset */

html {
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-size: 62.5%;
	font-size: calc(1em * .625);
	scroll-behavior: smooth;/*smooth auto*/
}

body {
	margin: 0;
	box-sizing: border-box;	
	background-color: #fff;
	color: #000;
	font-family: 'Proximanova', sans-serif;
	line-height: 1.5;
	/* letter-spacing: 0.12em; Accessible */
	/* word-spacing: 0.16em; Accessible */
	font-size: 1.6rem;
}


/*body > script { display: none !important; } Vérif la pertinence 06/01/2021 */

* { box-sizing: inherit; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary { display: block; }

/* Pas utilisé 06/01/2021
audio, canvas, progress, video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
} */

[hidden], template { display: none; }

a { 
	background-color: transparent;
	/* color: #333; valeur par défaut dans le theme 06/01/2021 */
}

a:active, a:hover, a:focus { 
	/* outline: 0; Pas accessible 24/01/2022 */
	/* color: #000; */
}

/* abbr[title] { border-bottom: 1px dotted; } Très spécifique 06/01/2021 */

b, strong { font-weight: bold; }

/* dfn { font-style: italic; } Pas utilisé 06/01/2021 */

/* h1 { valeur par défaut dans le theme 06/01/2021
	font-size: 2em;
	margin: 0.67em 0;
} */

/* mark { Pas utilisé 06/01/2021
	background: #ff0;
	color: #000;
} */

small { font-size: 80%; }

sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
sup { top: -0.5em; }
sub { bottom: -0.25em; }

img { 
	border: 0;
	vertical-align: middle;
}
/*img:not([src$=".svg"]) { height: auto; }*/

svg:not(:root) { overflow: hidden; }

figure { margin: 1em 40px; }

blockquote, figure {
	margin-left: 0;
	margin-right: 0;
}

hr { 
	box-sizing: content-box;
	height: 0;
}

/* pre { overflow: auto; } Pas utilisé 06/01/2021 */

/* code, kbd, pre, samp { Pas utilisé 06/01/2021
	white-space: pre-line;
	white-space: pre-wrap;
	font-family: Consolas, "DejaVu Sans Mono", Courier, monospace;
	line-height: normal;
	font-size: 1em;
} */

button, input, optgroup, select, textarea {
	color: inherit;
	font: inherit;
	margin: 0;
	/* outline: none; Pas Accessible 24/01/2022 */
}
	input:focus, textarea:focus { border: 1px solid #000; }

	/* pour le focus js required */
	/* input[type="checkbox"]:focus,
	input[type="radio"]:focus { 
		outline: 2px solid #101010;
		outline-offset: 1px;
	} */

	
button { overflow: visible; }

button, select { text-transform: none; }

button, html input[type="button"], input[type="reset"], input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled], html input[disabled], .disabled { 
	background-color: buttonface !important;
	color: #6b6b6b !important;
	box-shadow: none;
	cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input { 
	line-height: normal;
	background-color: #fff;
	border: 1px solid #31455D;
    padding: 0.4em 0.5rem 0.5rem;
}

input[type="checkbox"], input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button { height: auto; }

input[type="search"] {
	-webkit-appearance: textfield;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/* fieldset { Pas utilisé 06/01/2021
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
} */

textarea { 
	overflow: auto;
	padding: 0.4em;
}

/* optgroup { font-weight: bold; } Pas utilisé 06/01/2021 */

table {
	border-collapse: collapse;
	border-spacing: 0;
}
td, th { padding: 0; }

ul, ol { padding-left: 2em; }
ul.unstyled, ol.unstyled { list-style: none; }


p, .p-like, ul, ol, dl, blockquote, pre, td, th, label, textarea, caption, details, figure {
	/* margin-top: 0.75em; */
	margin-top: 0;
	margin-bottom: 0;
	line-height: 1.5;
}

main p, footer p
{ margin-bottom: 2rem; } /* marge accessible sur les paragraphes */

h1, .h1-like { font-size: 3.4rem; }
h2, .h2-like { font-size: 3rem; }
h3, .h3-like { font-size: 2.4rem; }
h4, .h4-like { font-size: 2rem; }
h5, .h5-like { font-size: 1.8rem; }
h6, .h6-like { font-size: 1.6rem; }

em, .italic, address, cite, i, var { font-style: italic; }

/* End Reset*/



/* alternate font-sizing */
.smaller { font-size: 0.6em !important; }
.small { font-size: 0.8em !important; }
.medium { font-size: 1em !important; }
.big { font-size: 1.2em !important; }
.bigger { font-size: 1.5em !important;  }
.biggest { font-size: 2em !important; }
.mega { font-size: 4em !important; }


/* Text effect */
.up { text-transform: uppercase; }
.lighter { font-weight: lighter; }
.normal { font-weight: normal; }
.bold { font-weight: bold; }

/* Color */
.white { color: #fff !important; }
.black { color: #000 !important; }
.grey { color: #808080 !important; }

.yes, .green { color: #3e9c30 !important; }
.orange { color: orange !important; }
.no, .red { color: #9f2d2d !important; }

.checked { color: #1ba238 !important; opacity: 1 !important; }

/* .color { color: #77d1d0; } valeur par défaut dans le theme 06/01/2021
.bg-color { background-color: #77d1d0; } */
/* .box-shadow { box-shadow: 0 1px 2px 0 rgba(150, 150, 150, 0.8); } Pas utilisé 06/01/2021 */


/* @todo transfert dans lucide.css */
/* Transparence */
.o50 { opacity: 0.5; }
.o80 { opacity: 0.8; }
.ho1:hover { opacity: 1; } 


/* Rotation */
.r90 { transform: rotate(90deg) }
.r180 { transform: rotate(180deg) }
.r270 { transform: rotate(270deg) }/* @todo vérif l'utilisation */


/* Background */
.nor { background-repeat: no-repeat !important; }
.cover { 
	background-size: cover !important;
	background-repeat: no-repeat;
    background-position: top center;
}
/* .bg-center { background-position: center !important; } Pas utilisé 06/01/2021 */


/* Alignement */
.vat { vertical-align: top !important; }
.vam { vertical-align: middle !important; }
.vab { vertical-align: bottom !important; }
.vabl { vertical-align: baseline !important; }
.vatt { vertical-align: text-top !important; }
.nowrap, .nw { white-space: nowrap; }
.short { text-overflow: ellipsis; }

	/* Alignements horizontaux */
	/* .grid3row {
		display: grid;
		-ms-grid-rows: 120px 90px auto;
		grid-template-rows: 120px 90px auto;
	}

	.grid4row {
		display: grid;
		-ms-grid-rows: 70px 120px 120px auto;
		grid-template-rows: 70px 120px 120px auto;
	} */

	/* Alignement grids */
	.jcc { justify-content: center; }
	.jcsa { justify-content: space-around; }
	.jcsb { justify-content: space-between; }
	.jic { justify-items: center; }
	.aic { align-items: center; }
	.asc { align-self: center; }

/*  Layout and modules */
.mod { overflow: hidden; }

.clear { clear: both; }

.clearfix::after {
	content: "";
	display: table;
	clear: both;
	border-collapse: collapse;
}

.left { margin-right: auto; }
.right { margin-left: auto; }
.auto { margin: auto; }
.center { 
	margin-left: auto !important;
	margin-right: auto !important;
}
	img.center { display: block !important; }

.tl { text-align: left !important; }
.tr { text-align: right !important; }
.tc { text-align: center !important; }
.tj { text-align: justify; }

.fl { float: left; }
.fr { float: right; }

img.fl, figure.fl { margin-right: 1rem; }
img.fr, figure.fr { margin-left: 1rem; }
img.fl, img.fr, figure.fl, figure.fr { margin-bottom: 0.5rem; }

figure.center {	
	text-align: center;
	margin-bottom: 1rem;
}

/* Pour que les images ne dépassent pas la taille du contener */
article img { max-width: 100%; }

/* Pour que les images dans les contenus éditables se redimensionnent bien de façon homothétique */
.editable img { 
	height: 100%;
	margin-bottom: 1.5rem;
}

/* Pour que l'image au clic soit bien centré dans le figure */
figure img { 
	display: inline-block !important;
	margin-bottom: 0.5rem !important;
}


/* Table layout */
/* .row { Pas utilisé 06/01/2021
	display: table;
	table-layout: fixed;
	width: 100%;
}
.row > *, .col {
	display: table-cell;
	vertical-align: top;
} */

.inbl {
  display: inline-block;
  vertical-align: top;
}

.inline { display: inline !important; }
.block { display: block !important; }
/* .inflex { display: inline-flex !important; } Pas utilisé 06/01/2021 */
.none, .editable-hidden { display: none; }

.hidden { visibility: hidden; }
.visible { visibility: visible !important; }

.sr-only {/* pour un texte lisible qu'en mode accessible */
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	white-space: nowrap; /* added line */
	border: 0;
}

.absolute { position: absolute; }
.fixed { position: fixed; }
.relative { position: relative; }


/* @todo revoir */
/* Forms */
form, .bn {
  border: none;
}
input, button, select, label, .bt {
  vertical-align: middle;
  font-family: inherit;
  font-size: inherit;
}
button, input, optgroup, select, textarea { color: #3a3a3a; }
label {
  /* display: inline-block; */
  vertical-align: middle;
  cursor: pointer;
}
legend {
  border: 0;
  white-space: normal;
}
textarea {
  min-height: 6em;
  min-width: 50%;
  max-width: 100%;
  vertical-align: top;
  font-family: inherit;
  font-size: inherit;
  /* resize: vertical; */
}
select {
  -webkit-appearance: menulist-button;
}
/* if select styling bugs on WebKit */
/* select { -webkit-appearance: none; } */
/* 'x' appears on right of search input when text is entered. This removes it */
input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
  display: none;
}
::-webkit-input-placeholder {
  color: #616161;
}
input:-moz-placeholder,
textarea:-moz-placeholder {
  color: #616161;
}
/* unstyled forms */
button.unstyled,
input[type="button"].unstyled,
input[type="submit"].unstyled,
input[type="reset"].unstyled {
  padding: 0;
  border: none;
  line-height: 1;
  text-align: left;
  background: none;
  border-radius: 0;
  box-shadow: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
button.unstyled:focus,
input[type="button"].unstyled:focus,
input[type="submit"].unstyled:focus,
input[type="reset"].unstyled:focus {
  box-shadow: none;
  outline: none;
}


/* input:invalid { border-color: #962e3f; } */
.msg_error, .msg_required { color: #962e3f; }


/* Curseur */
.pointer { cursor: pointer !important; }

/* Lien */
.tdn, .tdn a { text-decoration: none !important; }
.tdn:hover { text-decoration: none !important; }
.tdu { text-decoration: underline; }


/* Pour ajouter des pictos dans les menus select */
/* .fa-select { font-family: FontAwesome, Helvetica, Arial, sans-serif; } Pas utilisé 06/01/2021  */


/* Module */
.module > li:last-child { display: none; }


/* iframe */
iframe {
	width: 100%;
	height: 900px;
	border: 0;
}


/* Vidéo */
.video {
	position: relative;
	/* display: inline-block; */
}
	/* .video input, */
	.video button,
	.video iframe {
		width: 320px;
		height: 180px;
		padding: 0;
		border: none;
	}

	.video iframe { display: inline-block; }

	.video button:after {/* Icône rouge pour inciter au clique */
		content: '\f144';
		font-family: FontAwesome;
		font-size: 6rem;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		color: #ff0000;
		opacity: .8;
		transition: all 1.5s;
	}
		.video button:hover:after { opacity: 1; }
		.video.play button:after { content: ''; }



/* Bouton */
.bt, button {
	/* background-color: #f5f5f5; valeur par défaut dans le theme 06/01/2021
	color: #507075; */
	text-align: center;
	text-decoration: none;
	font-family: sans-serif;

	display: inline-block;

	padding: 0 6px 1px;

	height: auto !important;

	/* border-radius: 3px; valeur par défaut dans le theme 06/01/2021
	border: 1px solid rgba(117, 137, 140, 0.5); */
	/* box-shadow: 0 1px 0 rgba(0, 0, 0, 0.1); Pas utilisé 06/01/2021  */

	overflow: hidden;
    /* text-overflow: ellipsis; @todo crée des bug avec les icones <i .fa> */

	transition: all .3s;
}
	.bt:focus, input[type="button"]:focus, button:focus {
	  -webkit-tap-highlight-color: transparent;
	  -webkit-user-select: none;
	  -moz-user-select: none;
	  -ms-user-select: none;
	  user-select: none;
	}
	.bt:hover, button:hover {
		/* background-color: #75898c; valeur par défaut dans le theme 06/01/2021	
		color: #fff; */
		text-decoration: none;
		box-shadow: none;

		/* box-shadow: 0 -2px 0 rgba(0, 0, 0, 0.2) inset, 0 100px 0 rgba(255, 255, 255, 0.05) inset; Pas utilisé 06/01/2021  */
	}
		.bt a:hover { color: #fff; }

	.bt:active, button:active { 
		box-shadow: 0 2px 0 rgba(0, 0, 0, 0.2) inset, 0 100px 0 rgba(0, 0, 0, 0.1) inset;
	}

/* Bouton de connexion */
.bt.connect {
	font-family: arial;
	font-weight: bold;
	font-size: 12px;
	color: #fff;
    text-decoration: none;
    white-space: nowrap;
	text-align: left;

	padding: 8px;
	margin: 0 0 5px 0;
	width: 100%;
}
	.bt.connect:before {
		font-family: FontAwesome;
		font-size: 15px;
		text-align: center;

		vertical-align: bottom;

		margin-right: 10px;
		padding-right: 8px;

		width: 8%;		
		
		display: inline-block;

		border-right: rgba(0, 0, 0, 0.2) 1px solid;		
	}

	.bt.connect.nohover:hover { box-shadow: none !important; }
	.bt.connect.nohover:active { box-shadow: none !important; }

	/* @todo voir pour déplacer dans le plugin multi-connexion*/
	/*.bt.internal { background-color: #77d1d0; } fusion style.css et global.css 06/01/2021 */
		.bt.connect.internal:before { content: "\e838"; }
	/*.bt.facebook { background-color: #3A5795; }  Pas utilisé 06/01/2021 
		.bt.connect.facebook:before { content: "\f09a"; }
	.bt.google { background-color: #dd4b39; }
		.bt.connect.google:before { content: "\f1a0"; }
	.bt.yahoo { background-color: #4101af; }
		.bt.connect.yahoo:before { content: "\f19e"; }
	.bt.microsoft { background-color: #008299; }
		.bt.connect.microsoft:before { content: "\f17a"; }*/


/* Bouton flottant */
.bt.fixed {
	display: none;	
	position: fixed;
	z-index: 99;/*999*/

	width: auto;
	left: 20px;/* right */
	bottom: 20px;

	margin: 0;
	padding: 0.2rem 1rem;

	border-radius: 30px;
	border: none;

	opacity: 0.9;
	text-shadow: none;
}
	.bt.fixed.top { 	
		right: 20px;
		left: inherit;
	}
	.bt.edit, .bt.add, .bt.top { 
		height: 38px !important;
		padding: 0.5rem;
	}
	.bt.fixed.edit { 	
		transition: right .1s;	
		opacity: 0.9;
		left: 20px;
		right: initial;
	}
	.bt.fixed.add { 
		margin-bottom: 10px;
		transition: bottom .3s, right .1s, opacity .3s;		
		z-index: 998;
	}
	.bt.fixed.construction { 		
		left: 70px;/*10px*/
		right: initial;
		opacity: 0.9;
		display: block;		
		padding-left: 0.5rem;
		border-radius: 8px;
	}
	.bt.fixed:hover { 		
		opacity: 1 !important;	
	}


/* Image dans le fond d'un input */
.wrapper {
	color: rgba(0, 0, 0, 0.3);
	position: relative;
	display: inline-block;
	vertical-align: text-bottom;
	text-align: center;
	top: 2px;
	width: 22px;
	margin-left: -28px;
}


/* MESSAGE */
#error, .error {
	border-radius: 5px;
    border: 1px solid #cd0a0a;
    background: #fef1ec;
    color: #9f2d2d;
    z-index: 1000;
}
#popin, #light, .light {
	border-radius: 5px;
	border: 1px solid #fcefa1;
    background: #fbf9ee;
    color: #363636;
    z-index: 1000;
}


/* ADMIN  */
	.body-margin-top { margin-top: 50px !important; }


	/* A LA UNE / Intranet */
	#admin-bar .alaune.switch label,
	#admin-bar .intranet.switch label
	{ background: #c8c8c8; }

	/* Désactivé */
	#admin-bar .alaune.switch label:before { content: "\e803"; font-size: 0.8em; }/*e806*/
	#admin-bar .intranet.switch label:before { content: "\e811"; font-size: 0.8em; }

	/* Couleur de fond si activé */
	#admin-bar .alaune.switch input[type=checkbox]:checked ~ label{ background: #fee566; }
	#admin-bar .intranet.switch input[type=checkbox]:checked ~ label{ background: #aa8ebf; }

	/* Activé  */
	#admin-bar .alaune.switch input[type=checkbox]:checked ~ label:before {	content: "\e803"; }
	#admin-bar .intranet.switch input[type=checkbox]:checked ~ label:before { content: "\e82a"; }


/* GRIDS */
@media (min-width: 480px) {/* 544px */
	
	.medium-hidden { display: none !important; }

	/* INFO
	IE ne gère pas l'implicite du auto-flow. il est donc necessaire de spécifier le positionnement de chaque élément fils des grids en css avec :
		-ms-grid-column: x;
		-ms-grid-column: y;
	*/
	.grid {
		display: flex;/*ie 11*/
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: 1fr;
	}

	[class*=" grid-"],
	[class^="grid-"] {
		display: -ms-flex;/*ie 11*/
		display: grid;
		grid-auto-flow: dense;
	}

	.grid-1-2 {
		display: grid; 
  		grid-template-columns: 1fr 2fr; 
		grid-template-rows: 1fr; 
		grid-gap: 1rem;
	}
}

.flex {
	display: flex;
	/* flex-wrap: wrap; Crée un bug */
}

.wrap { flex-wrap: wrap; }

[class*="grid-2"] {
	-ms-grid-columns: (1fr)[2];
	grid-template-columns: repeat(2, 1fr);
}
  
[class*="grid-3"] {
	-ms-grid-columns: (1fr)[3];
	grid-template-columns: repeat(3, 1fr);
}
  
[class*="grid-4"] {
	-ms-grid-columns: (1fr)[4];
	grid-template-columns: repeat(4, 1fr);
}

	/* Grid dans les contenus éditable */
	.editable .grid { margin-bottom: 1.5rem; }

	/* space */
	.grid.space,
	[class*=" grid-"].space,
	[class^="grid-"].space,
	.flex.space {
		grid-gap: 1rem;
	}

	.grid.space-l,
	[class*=" grid-"].space-l,
	[class^="grid-"].space-l,
	.flex.space-l {
		grid-gap: 0 2rem;
	}

	.grid.space-xl,
	[class*=" grid-"].space-xl,
	[class^="grid-"].space-xl,
	.flex.space-xl {
		grid-gap: 3rem;
	}

/*.pull { margin-right: auto; }
.push { margin-left: auto; } */


/* blocks widths (percentage and pixels) */
.w10 { width: 10%; }
.w20 { width: 20%; }
.w25 { width: 25%; }
.w30 { width: 30%; }
.w33 { width: 33.3333%; }
.w40 { width: 40%; }
.w50 { width: 50%; }
.w60 { width: 60%; }
.w66 { width: 66.6666%; }
.w70 { width: 70%; }
.w75 { width: 75%; }
.w80 { width: 80%; }
.w90 { width: 90%; }
.w100 { width: 100%; }
.h100 { height: 100%; }

.w50p { width: 50px; }
.w100p { width: 100px; }
.w150p { width: 150px; }
.w200p { width: 200px; }
.w300p { width: 300px; }

/* .w400p { width: 400px; } Pas utilisé 06/01/2021
.w500p { width: 500px; }
.w600p { width: 600px; }
.w700p { width: 700px; }
.w800p { width: 800px; }
.w960p { width: 960px; }
.w1140p { width: 1140px; } */

.mw150p { max-width: 150px; }
.mw320p { max-width: 320px; }
.mw600p { max-width: 600px; }
.mw960p { max-width: 960px; }
.mw1140p { max-width: 1140px; }
.wauto { width: auto; }

.minw320p { min-width: 320px; }

/* spacing helpers
p,m = padding,margin
a,t,r,b,l = all,top,right,bottom,left
s,m,l,n = small, medium, large, none
*/
.man { margin: 0; }
.mat { margin: 0.5rem; }
.mas { margin: 1rem; }
.mam { margin: 2rem; }
.mal { margin: 4rem; }
.mtn { margin-top: 0; }
.mtt { margin-top: 0.5rem; }
.mts { margin-top: 1rem; }
.mtm { margin-top: 2rem; }
.mtl { margin-top: 4rem; }
.mrn { margin-right: 0; }
.mrt { margin-right: 0.5rem; }
.mrs { margin-right: 1rem; }
.mrm { margin-right: 2rem; }
.mrl { margin-right: 4rem; }
.mbn { margin-bottom: 0; }
.mbt { margin-bottom: 0.5rem; }
.mbs { margin-bottom: 1rem; }
.mbm { margin-bottom: 2rem; }
.mbl { margin-bottom: 4rem; }
.mln { margin-left: 0; }
.mlt { margin-left: 0.5rem; }
.mls { margin-left: 1rem; }
.mlm { margin-left: 2rem; }
.mll { margin-left: 4rem; }

.pan { padding: 0; }
.pat { padding: 0.5rem; }
.pas { padding: 1rem; }
.pam { padding: 2rem; }
.pal { padding: 4rem; }
.ptn { padding-top: 0; }
.ptt { padding-top: 0.5rem; }
.pts { padding-top: 1rem; }
.ptm { padding-top: 2rem; }
.ptl { padding-top: 4rem; }
.prn { padding-right: 0; }
.prt { padding-right: 0.5rem; }
.prs { padding-right: 1rem; }
.prm { padding-right: 2rem; }
.prl { padding-right: 4rem; }
.pbn { padding-bottom: 0; }
.pbt { padding-bottom: 0.5rem; }
.pbs { padding-bottom: 1rem; }
.pbm { padding-bottom: 2rem; }
.pbl { padding-bottom: 4rem; }
.pbp { padding-bottom: 4.5rem; }
.pln { padding-left: 0; }
.plt { padding-left: 0.5rem; }
.pls { padding-left: 1rem; }
.plm { padding-left: 2rem; }
.pll { padding-left: 4rem; }


/* Contenu éditable */
div.editable {
	display: inherit;/*inline-flex inline-block*/
	/* @todo voir car il y a un bug avec les contenu pas très large */
}


/* Barre de progression */
.progress {
	/*background-color: rgba(122, 210, 217, 0.8);*/	
	position: absolute;
	top: 0;
	left: 0;
	max-width: 100%;
	min-height: 4px;
	z-index: 10;
	opacity: .8;
	transition: all .3s;
}


/* LAYER & Tooltip */
.layer, body .ui-tooltip  {
	background-color: #fbfbfb;
	border-width: 1px;
	border: 0;
	
	border-top: 1px solid #ccc;
	border-radius: 4px;
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 2px 5px rgba(0, 0, 0, 0.3);
}
	/* Fleche au dessu du layer */
	.layer:before, .layer:after, .ui-tooltip:before, .ui-tooltip:after {
		content: "";
		position: absolute;
		top: -20px;
		left: 2rem;
		height: 0;
		width: 0;
		border: 10px solid transparent;
		border-bottom-color: rgba(190, 190, 190, 0.6);
	}
		.layer:after, .ui-tooltip:after {		
			top: -18px;
			border-bottom-color: #ffffff;			
		}


/* @todo externalisé dans un css et js */
/* Animation onscroll */
.animation { transition: all 1s .2s ease-out; }
	
	.t5 { transition: all .5s !important; }

	.fade-in { 
		opacity: 0;
		transition-delay: .5s;/*.3s*/
	}

	.slide-up {
		opacity: 0;
		transform: translate3d(0, 100px, 0);
		backface-visibility: hidden;

		transition-duration: 1s !important;

		/* animation: slide-up .3s 1 ease-out; */
	}

	.slide-down {
		opacity: 0;
		transform: translate3d(0, -100px, 0);
		backface-visibility: hidden;

		/* animation: slide-down .3s 1 ease-out; */
	}

	.slide-left {
		opacity: 0;
		transform: translate3d(-100px, 0, 0);
		backface-visibility: hidden;

		/* animation: slide-left .3s 1 ease-out; */
	}

	.slide-right {
		opacity: 0;
		transform: translate3d(100px, 0, 0);
		backface-visibility: hidden;
		
		/* animation: slide-right .3s 1 ease-out; */
	}


	.fire {
		opacity: 1 !important;
		transform: translate3d(0, 0, 0) !important;
	}



/* HEADER */

/* header .acces-rapide { 
	position: absolute;
	top: -100px;
}
	header .acces-rapide:focus { top: 0; left: 0; } */


/* MENU DE NAVIGATION */
	header nav ul {
		list-style: none;
		display: inline-block;
		padding: 0;
		/* margin-top: 2rem; */
		min-height: 60px;
		justify-content: space-around;
	}
		header nav > ul li {
			/* float: left; */
			/* margin: 0 0.5rem; */
			position: relative;
			display: flex;
			/* margin: auto; */
			padding: 0;
			max-width: 150px;
			/* min-height: 80px; */
			/* align-items: center; */
			/* text-align: left; */
		}
			/* Soulignement menu sélectionné */
			header nav > ul li.selected:before,
			#main-navigation li a:hover::before {
				/* content: "";
				border-left: solid 2px #C51A1B;
				position: absolute;
				left: -10px;
				height: 16px;
				top: 3px; */

				content: "";
			    width: 30px;
			    border-bottom: solid 4px #C51A1B;
			    position: absolute;
			    bottom: -3px;
			    left: 0;
			    right: 0;
			    margin: auto;
			}

			.lucide header nav > ul li { white-space: normal; }
			
			header #main-navigation a { text-decoration: none; }

				header nav > ul li a:hover { color: #C51A1B; }

				header .selected a { color: #C51A1B !important; }

			#main-navigation { font-weight: bold; }
		
			
#accessibilite nav ul,
.switch-home ul
{ min-height: unset; }
	
	#accessibilite nav > ul li,
	.switch-home > ul li,
	.switch-lang li {
		display: inline;
		min-height: unset;
		max-width: unset;
		padding: 0;
		align-items: unset;
	}

	#accessibilite nav > ul li:after,
	.switch-home > ul li:not(:last-child):after,
	.switch-lang li:not(:last-child):after {
		content: "|";
		padding: 0 0.5em;
	}

		#accessibilite nav > ul li a { color: #000}


	/* BOUTON BURGER & Animation */
	header nav .burger {
		display: none;
		position: absolute;
		overflow: hidden;
		float: right;
		top: 10px;
		right: 0;
		margin: 0 1rem;
		padding: 4rem 2.8rem 1rem 2.8rem;
		width: 30px;
		height: 30px !important;
		font-size: 0;
		/* text-indent: -9999px; */
		appearance: none;
		box-shadow: none;
		border-radius: 3px;
		border: none;
		cursor: pointer;
		transition: background 0.3s;

		background-color: #20828F;
	}
		.burger span {
			position: absolute;
			top: 14px;
			left: 6px;
			right: 6px;
			height: 2px;
			background: #000;
			line-height: 4rem !important;
			width: 65%;
			margin: auto;

			color: #000;
			font-weight: bold;
			font-size: 1.1rem;
			transition: background 0.3s;
		}

			.burger span.close::before,
			.burger span.close::after
			{ width: 70%; }

			.burger span::before,
			.burger span::after {
				position: absolute;
				display: block;
				left: 0;
				right: 0;
				width: 100%;
				height: 2px;
				background-color: #000;
				content: "";
				margin: auto;

				transition-duration: 0.3s, 0.3s;
				transition-delay: 0.3s, 0s;
			}

			.burger span::before { top: -6px; transition-property: top, transform; }
			.burger span::after { bottom: -6px; transition-property: bottom, transform; }

		/* active state, i.e. menu open */
		.burger.active { background-color: #20828F; }
			.burger.active span { background: none; }
				.burger.active span::before { 
					top: 0;
					transform: rotate(45deg);
					width: 70%;
				}
				.burger.active span::after { 
					bottom: 0;
					transform: rotate(-45deg);
					width: 70%;
				}
				.burger.active span::before,
				.burger.active span::after { transition-delay: 0s, 0.3s; }



/* HIDING content */
@media (max-width: 640px) {
	.no-small-screen, .noss { display: none !important; }
	.small-screen { display: block; }
}
@media (min-width: 1280px) {
	.no-large-screen { display: none; }
}



/* RESPONSIVE big */
@media (max-width: 850px)
{
	header nav .burger {
		display: block;
	    z-index: 12;
	}

	header nav > ul#main-navigation {
		background-color: #fff;
		border: 2px solid #20828F;
		border-top: 0;
		border-left: 0;

		/* background-color: #00253F; */

		display: block !important;
		visibility: hidden;

		/* position: fixed !important; */
		position: absolute !important;

		left: 0;
		top: 0;
		/* bottom: 0; */

		overflow-y: auto;
		-webkit-overflow-scrolling: touch;

		width: 300px;

		margin: 0;
		padding-bottom: 1rem;

		z-index: 10;

		text-align: center;

		transition-duration: 0.3s;
		transform: translateX(-100%);
		-webkit-transform: translateX(-100%);
	}
		header nav > ul#main-navigation li {
			display: block;
			max-width: 100%;
			min-height: 30px;
			margin-top: 1rem;
		}
		header nav:not(.switch-home) li {
			float: none;
			padding: 0;
			margin-left: 0 !important;
			/* border-radius: 5px; */
			transition: background 0.3s;
		}
			header nav ul#main-navigation li:hover { background-color: #dfdfdf; }
			header nav ul#main-navigation li a {
				display: block;
				padding: 0.5rem;
				/* color: #00253F !important; */
			}

	/* Raz du header */
	.responsive-nav header { position: inherit; }
	/* Ouvertur du menu */
	.responsive-nav header nav ul#main-navigation {
		visibility: visible;
		transform: translateX(0);
		-webkit-transform: translateX(0);
	}
	/* Overlay menu */
	/* .responsive-nav .responsive-overlay {
		position: fixed;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		background-color: rgba(0, 0, 0, 0.6);
	} */
	/* Fixe le burger*/
	.responsive-nav .burger { 
		/* position: fixed; */
		position: absolute;
	}

	/* mode edition : menu d'ajout invisible */
	.dragger { display: none !important; }
	#add-nav { display: none !important; }

	header #accessibilite { 
		float: none;
		/* text-align: center;  */
	}

		header #accessibilite nav > ul li { display: block; }
			#accessibilite nav > ul li:after { content: none }

	header div > a,
	.switch-home { 
		float: none !important; 
		display: block !important; 
		text-align: center; 
	}

	.col { display: inline-block; }

	.row { border-spacing: 0; }

	.mw960p {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	article img { max-width: 100% !important; }

	.blocks div.relative,
	#actualaune div.relative { box-sizing: content-box; }

	/* Header */
	header #accessibilite { margin-right: 5.6rem; }

	/* Home */
		#alert { 
			background: #20828f;
			padding: 2rem 1rem;
		}
		
		/** Encart intro **/
		#intro-texte { max-width: 550px; }
		#encart { text-align: center; }

	/* Liste actus... */
	.blocks, .tpl-annuaire-liste article,  #actualaune > div { display: block; }

		.blocks > div, 
		.blocks article,
		.tpl-annuaire-liste section > div > div,
		.blocks li,
		#actualaune > div {
			width: 300px;
			min-height: 300px;
			margin: auto;
			margin-bottom: 2rem;
		}

	.tpl-annuaire-liste figure { border-bottom: 1px solid #00253F; }

	.tpl-annuaire-liste .brd-left, #actualaune .brd-right { border: none; }

	/* Footer */
	#contacts div { 
		display: block;
		text-align: center; 
	}

}

/* RESPONSIVE medium */
@media (max-width: 480px)
{
	#recherche { max-width: 190px; }

	header #accessibilite .mls,
	header #accessibilite .mrs
	{ margin: 0; }

	header .jcsb { 
		padding-top: 0;
		justify-content: center;
	}

	#rechercher { padding-top: 1rem; }

	[class*="grid-2"],
	[class*="grid-3"],
	[class*="grid-4"] {
		display: grid;
		-ms-grid-columns: 1fr;
		grid-template-columns: 1fr;
		justify-items: center;
	}

	.w10, .w20, .w25, .w30, .w33, .w40, .w50,
	.w60, .w66, .w70, .w75, .w80, .w90 {
		width: auto;
		float: none;
	}

	/* @todo revoir les trailles */
	/* .plm, .pll { padding-left: 0; } */
	/* .prm, .prl { padding-right: 0; } */

	/* @todo revoir les trailles */
	/* .mrl { margin-right: 0; } */
	/* .mll { margin-left: 0; } */

	/* .tr, .tl { text-align: center !important; } */

	main { word-break: break-word; }

	article {
		/*display: inline-block; Crée un bug collateral avec l'editeur de menu ... utile ?*/
		/* padding-left: 0.5rem !important; */
		/* padding-right: 0.5rem !important; */
	}

	main:not(.tpl-home) .picto:before { width: 10px; }
	main:not(.tpl-home) .picto:after { width: 10px; }

	h1, .h1-like { padding: 0 10px; }

	.highlight { width: 80%; }

	.editable img.fl, .editable img.fr,
	.editable figure.fl, .editable figure.fr  {
		float: none;
		display: block;
		margin: 0 auto 0.5rem;
		text-align: center;
	}
	.editable img {
		max-width: 100%;
		height: auto;
	}

	.editable .grid { 
		display: grid;
		justify-items: center;
        text-align: center;
	}

	#enunclic { 
		display: flex;
    	flex-wrap: wrap;
    }
    	#enunclic li {
	    	margin: 0 auto;
	    	width: 100%;
	    }

	.visuel { 
		padding: 0;
		margin: auto;
	}
}

/* RESPONSIVE small */
@media (min-width: 321px) and (max-width: 640px) {
	/* quick reset in small resolution and less */
	/* .w600p, Pas utilisé 06/01/2021
	.w700p,
	.w800p,
	.w960p, */
	.mw960p {
		width: auto;
		float: none;
	}	
}

/* RESPONSIVE tiny */
@media (max-width: 320px) {
	/* quick tiny resolution reset */
	.mod {
		/* display: block !important; empèche les toggle js */
		float: none !important;
		clear: none !important;
		width: auto !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		border: 0;
	}
	.w300p {
		width: auto;
		float: none;
	}
	/* .row {  Pas utilisé 06/01/2021
		display: block !important;
		width: 100% !important;
	} */

	th,
	td {
		display: block;
		width: auto;
		text-align: left;
	}
}


/* PRINT RESET */
@media print {
	* {
		background-color: transparent !important;
		box-shadow: none !important;
		text-shadow: none !important;
	}
	/* @todo voir pour passer les textes en noir et les images en grayscale pour plus d'écoconception */
	body {
		width: auto;
		margin: auto;
		font-family: serif;
		font-size: 12pt;
	}

	p, .p-like,
	h1, .h1-like,
	h2, .h2-like,
	h3, .h3-like,
	h4, .h4-like,
	h5, .h5-like,
	h6, .h6-like,
	blockquote,
	ul,
	ol,
	.fa,
	.bt,
	a,
	.white,
	.bg-color {
		color: #000 !important;
		margin: auto;
	}

	.print { display: block; }
	.no-print { display: none; }
	/* no orphans, no widows */
	p,
	.p-like,
	blockquote {
		orphans: 3;
		widows: 3;
	}
	/* no breaks inside these elements */
	blockquote,
	ul,
	ol {
		page-break-inside: avoid;
	}
	/* no breaks after these elements */
	h1, .h1-like,
	h2, .h2-like,
	h3, .h3-like,
	caption {
		page-break-after: avoid;
	}
	/* displaying URLs
	a[href]::after {
	content: " (" attr(href) ")";
	}
	*/
	a[href^="javascript:"]::after,
	a[href^="#"]::after {
		content: "";
	}

	[class*='brd'] {
		border-color: #000 !important;
	}
	
	.ptl { padding-top: 1rem; }
	.pbl { padding-bottom: 1rem; }

	#contacts > div { display: flex; }

}

/* Pour bug avec le menu sous Firefox en portrait */
@media print and (max-width: 850px) {
	#main-navigation { visibility: hidden !important; }
}

/* ---------------------------------- */
/* ==Icons                            */
/* ---------------------------------- */
.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.fa-fw {
  width: 1.28571429em;
  text-align: center;
}
.fa-spin {
  animation: fa-spin 2s infinite linear;
}

.fa-ul {
  padding-left: 0;
  list-style-type: none;
}
.fa-ul > li {
  position: relative;
}
/* .fa-li {
  position: absolute;
  left: -2.14285714em;
  width: 2.14285714em;
  top: 0.3em;
  text-align: center;
} */
.fa-li {
    position: relative;
    left: inherit;
    top: inherit;
    width: inherit;
   	float: none;
}

@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}


/* Les icones */
.fa-music:before { content: '\e800'; } /* '' */
.fa-search:before { content: '\e801'; } /* '' */
.fa-mail:before { content: '\e802'; } /* '' */
.fa-star:before { content: '\e803'; } /* '' */
.fa-user:before { content: '\e804'; } /* '' */
.fa-users:before { content: '\e805'; } /* '' */
.fa-video:before { content: '\e806'; } /* '' */
.fa-picture:before { content: '\e807'; } /* '' */
.fa-camera:before { content: '\e808'; } /* '' */
.fa-th-large:before { content: '\e809'; } /* '' */
.fa-ok:before { content: '\e80a'; } /* '' */
.fa-cancel:before { content: '\e80b'; } /* '' */
.fa-plus:before { content: '\e80c'; } /* '' */
.fa-info-circled:before { content: '\e80d'; } /* '' */
.fa-home:before { content: '\e80e'; } /* '' */
.fa-link:before { content: '\e80f'; } /* '' */
.fa-attach:before { content: '\e810'; } /* '' */
.fa-lock-open:before { content: '\e811'; } /* '' */
.fa-eye:before { content: '\e812'; } /* '' */
.fa-eye-off:before { content: '\e813'; } /* '' */
.fa-tag:before { content: '\e814'; } /* '' */
.fa-flag:before { content: '\e815'; } /* '' */
.fa-upload:before { content: '\e816'; } /* '' */
.fa-pencil:before { content: '\e817'; } /* '' */
.fa-print:before { content: '\e818'; } /* '' */
.fa-bell:before { content: '\e819'; } /* '' */
.fa-attention:before { content: '\e81a'; } /* '' */
.fa-logout:before { content: '\e81b'; } /* '' */
.fa-location:before { content: '\e81c'; } /* '' */
.fa-doc:before { content: '\e81d'; } /* '' */
.fa-phone:before { content: '\e81e'; } /* '' */
.fa-cog:before { content: '\e81f'; } /* '' */
.fa-basket:before { content: '\e820'; } /* '' */
.fa-volume-off:before { content: '\e821'; } /* '' */
.fa-volume-up:before { content: '\e822'; } /* '' */
.fa-clock:before { content: '\e823'; } /* '' */
.fa-resize-full:before { content: '\e824'; } /* '' */
.fa-resize-small:before { content: '\e825'; } /* '' */
.fa-resize-vertical:before { content: '\e826'; } /* '' */
.fa-resize-horizontal:before { content: '\e827'; } /* '' */
.fa-up-open:before { content: '\e828'; } /* '' */
.fa-up-big:before { content: '\e829'; } /* '' */
.fa-lock:before { content: '\e82a'; } /* '' */
.fa-arrows-cw:before { content: '\e82c'; } /* '' */
.fa-globe:before { content: '\e82d'; } /* '' */
.fa-bold:before { content: '\e82e'; } /* '' */
.fa-italic:before { content: '\e82f'; } /* '' */
.fa-align-left:before { content: '\e830'; } /* '' */
.fa-align-center:before { content: '\e831'; } /* '' */
.fa-align-right:before { content: '\e832'; } /* '' */
.fa-align-justify:before { content: '\e833'; } /* '' */
.fa-list:before { content: '\e834'; } /* '' */
.fa-chart-bar:before { content: '\e835'; } /* '' */
.fa-credit-card:before { content: '\e836'; } /* '' */
.fa-floppy:before { content: '\e837'; } /* '' */
.fa-key:before { content: '\e838'; } /* '' */
.fa-login:before { content: '\e839'; } /* '' */
.fa-x-twitter:before { content: '\e86c'; } /* '' */
.fa-no-access:before { content: '\e86f'; } /* '' */
.fa-move:before { content: '\f047'; } /* '' */
.fa-link-ext:before { content: '\f08e'; } /* '' */
.fa-twitter:before { content: '\f099'; } /* '' */
.fa-facebook:before { content: '\f09a'; } /* '' */
.fa-rss:before { content: '\f09e'; } /* '' */
.fa-menu:before { content: '\f0c9'; } /* '' */
.fa-underline:before { content: '\f0cd'; } /* '' */
.fa-money:before { content: '\f0d6'; } /* '' */
.fa-mail-alt:before { content: '\f0e0'; } /* '' */
.fa-linkedin:before { content: '\f0e1'; } /* '' */
.fa-doc-text:before { content: '\f0f6'; } /* '' */
.fa-angle-double-up:before { content: '\f102'; } /* '' */
.fa-quote-left:before { content: '\f10d'; } /* '' */
.fa-quote-right:before { content: '\f10e'; } /* '' */
.fa-folder-empty:before { content: '\f114'; } /* '' */
.fa-code:before { content: '\f121'; } /* '' */
.fa-help:before { content: '\f128'; } /* '' */
.fa-superscript:before { content: '\f12b'; } /* '' */
.fa-calendar-empty:before { content: '\f133'; } /* '' */
.fa-play-circled:before { content: '\f144'; } /* '' */
.fa-ticket:before { content: '\f145'; } /* '' */
.fa-doc-inv:before { content: '\f15b'; } /* '' */
.fa-youtube:before { content: '\f167'; } /* '' */
.fa-instagram:before { content: '\f16d'; } /* '' */
.fa-up:before { content: '\f176'; } /* '' */
.fa-skype:before { content: '\f17e'; } /* '' */
.fa-language:before { content: '\f1ab'; } /* '' */
.fa-soundcloud:before { content: '\f1be'; } /* '' */
.fa-file-pdf:before { content: '\f1c1'; } /* '' */
.fa-file-word:before { content: '\f1c2'; } /* '' */
.fa-file-excel:before { content: '\f1c3'; } /* '' */
.fa-file-powerpoint:before { content: '\f1c4'; } /* '' */
.fa-file-image:before { content: '\f1c5'; } /* '' */
.fa-file-archive:before { content: '\f1c6'; } /* '' */
.fa-file-audio:before { content: '\f1c7'; } /* '' */
.fa-file-video:before { content: '\f1c8'; } /* '' */
.fa-file-code:before { content: '\f1c9'; } /* '' */
.fa-circle-notch:before { content: '\f1ce'; } /* '' */
.fa-paper-plane-empty:before { content: '\f1d9'; } /* '' */
.fa-header:before { content: '\f1dc'; } /* '' */
.fa-paragraph:before { content: '\f1dd'; } /* '' */
.fa-share:before { content: '\f1e0'; } /* '' */
.fa-paypal:before { content: '\f1ed'; } /* '' */
.fa-trash:before { content: '\f1f8'; } /* '' */
.fa-pinterest:before { content: '\f231'; } /* '' */
.fa-user-plus:before { content: '\f234'; } /* '' */
.fa-shopping-basket:before { content: '\f291'; } /* '' */
.fa-hashtag:before { content: '\f292'; } /* '' */
.fa-question-circle-o:before { content: '\f29c'; } /* '' */
.fa-user-circle:before { content: '\f2bd'; } /* '' */
.fa-snowflake-o:before { content: '\f2dc'; } /* '' */
.fa-twitter-squared:before { content: '\f304'; } /* '' */
.fa-facebook-squared:before { content: '\f308'; } /* '' */


/* AccessConfig | Access42 | accessconfig.a11y.fr */

/**
 * Common styles to enforced and inverted contrasts
 */

/* Cancel background images and image borders which may cause contrast problems */
.hc *,
.hc *::after,
.hc *::before {
	border-image: none !important;
	text-shadow: none !important;
}

/* Let SVG elements adapt to the chosen color scheme */
.hc path,
.hc polygon,
.hc svg,
.hc svg * {
	fill: currentColor;
}

/* Add a border on form elements when custom contrasts are on */
.hc input,
.hc textarea,
.hc select,
.hc form button {
	border-width: 1px !important;
	border-style: solid !important;
}

/* Change color of ::first-letter pseudo-elements if needed */
.hc *::first-letter {
	color: inherit !important;
}

/* input[type="range"] */
.hc input[type="range"] {
	border: 0 !important;
}

.hc input[type="range"]::-webkit-slider-thumb {
	margin-top: -.25em; /* You need to specify a margin in Chrome, but in Firefox and IE it is automatic */
}

	@supports (-ms-ime-align: auto) { /* Dirty hack to target Edge only */
		.hc input[type="range"]::-webkit-slider-thumb {
			margin-top: 0;
		}
	}

.hc input[type="range"]::-webkit-slider-runnable-track {
	height: 0.313em;
}


/**
 * Enforced contrast (.hc)
 */
.hc,
.hc *{
	background-color: #343643 !important;
	color: white !important;
}

.hc,
.hc *,
.hc *::before,
.hc *::after{
	border-color: white !important;
}

.hc *::before,
.hc *::after{
	background: none !important;
	color: inherit;
}

/* Add a border on form elements when high contrast is on */
.hc input,
.hc textarea,
.hc select{
	border-color: #f9fcff !important;
	color: inherit !important;
}

/* High contrast placeholder */
.hc *::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	color: white !important;
}

.hc *::-moz-placeholder { /* Firefox 19+ */
	color: white !important;
	opacity: 1 !important;
}

.hc *:-ms-input-placeholder { /* IE 10+ */
	color: white !important;
}

.hc *:-moz-placeholder { /* Firefox 18- */
	color: white !important;
	opacity: 1 !important;
}

/* High contrast for input[type="date"] */
.hc *::-webkit-datetime-edit-text { 
	color: white !important;
}

.hc *::-webkit-datetime-edit-month-field { 
	color: white !important;
}

.hc *::-webkit-datetime-edit-day-field { 
	color: white !important;
}

.hc *::-webkit-datetime-edit-year-field { 
	color: white !important;
}

.hc ::-webkit-calendar-picker-indicator { 
	background: #343643 !important;
}

/* High contrast for input[type="range"] */
.hc input[type="range"]::-webkit-slider-runnable-track { /* Webkit */
	background: white !important;
}

.hc input[type="range"]::-moz-range-track {  /* Firefox */
	background: white !important;
}
.hc input[type="range"]::-moz-range-thumb {
	background: black !important;
	border: .15em solid white !important;
}

.hc input[type="range"]::-ms-fill-lower {  /* IE/Edge */
	background: white !important;
}
.hc input[type="range"]::-ms-fill-upper {
	background: white !important;
}
.hc input[type="range"]:focus::-ms-fill-lower {
	background: white !important;
}
.hc input[type="range"]:focus::-ms-fill-upper {
	background: white !important;
}

.hc input[type="range"]::-ms-thumb {
	background: black !important;
	border: .15em solid white !important;
}

.hc header .selected a { color: #09ddec !important; }

.hc .burger span,
.hc .burger span:before,
.hc .burger span:after
{ background: #fff !important; }

.hc.responsive-nav .burger span
{ background: transparent !important; }

.hc header #logo img { border-radius: 5px; }