@font-face {
    font-family: 'Abril Fatface';
    src: url('fonts/AbrilFatface-Regular.eot');
    src: url('fonts/AbrilFatface-Regular.eot?#iefix') format('embedded-opentype'),
        url('fonts/AbrilFatface-Regular.woff2') format('woff2'),
        url('fonts/AbrilFatface-Regular.woff') format('woff'),
        url('fonts/AbrilFatface-Regular.ttf') format('truetype'),
        url('fonts/AbrilFatface-Regular.svg#AbrilFatface-Regular') format('svg');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
.abril{
	font-family: 'Abril Fatface', Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
}

a {
	color: #222;
	text-decoration: none;
	transition: color .2s;
}
.editable a{
	text-decoration: underline;
}
	a:hover { color: #000; text-decoration: underline;}
	.selected { text-decoration: underline; }

header a {
	color: #111;
}

h1, .h1, .h1-like {
	font-family: 'Abril Fatface', Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
	font-size: 2em;
	font-weight: lighter;
	color: #000;
	line-height: 1.25;
	text-wrap: balance;
}
h1{
	font-size: 2.8em;
}
.h0 {
	font-size: clamp(2.5em, 1.2195rem + 3.9024vw, 5.5em);
}

h2, .h2-like,
h3, .h3-like {
	font-family: 'Abril Fatface', Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
	color: #000;
	font-weight: lighter;

}

h2, .h2-like { 
	font-size: 3rem; 
	font-size: clamp(3rem, 2.6098rem + 1.9512vw, 4rem);
}
.content h2{
	font-size: 2.8rem;
}
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; }

img.border {
	border: 1px solid #000;
	border-bottom-width: 7px ;
	border-radius: 2rem;
}


/* Couleur */
.color { color: #1486ac; }
.color-alt { color: #CDB7AE; }
h1, .h1, .h1-like, 
h2, .h2, .h2-like, 
h3, .h3, .h3-like,
.color--grey {color: #444;}

.bg-color {
	background-color: #35747f;
	color: #fff;
}
	a.bg-color:hover, a .bg-color:hover  {
		background-color: #fff;
		color: #35747f;
	}

.bg--black, .bg--black * {
	background: #000;
	color: #fff;
}
.bg--black a:hover {
	color: #fff;
}

.bg-blur--blue,
.bg-blur--green {
	position: relative;
	margin: 10rem 0;
}
.bg-blur--blue::before,
.bg-blur--green::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;

	border-radius: 999rem;

	filter: blur(2vw);
}
.bg-blur--blue::before {
	background: #49AED0;
	opacity: .5;
}
.bg-blur--green::before {
	background: #719184;
}

/** fontes */
.mono {font-family: 'Courier New', Courier, monospace !important;}

/** grilles */
@media screen and (min-width: 540px) {
	.md\:columns--2 {
		columns: 2;
		column-gap: 1rem;
		gap: 4vw;
	}
	
	.md\:columns--2 > * {
		-webkit-column-break-inside:avoid;
	  page-break-inside:avoid;
	  break-inside:avoid;
	  overflow:hidden!important
	}
}

/** tuiles */
.tile {
	background-color: rgb(255, 247, 237, .7);
	border-radius: 2rem;
	padding: 2rem;
	margin: 1vh 0;
}
.tile--border{
	border: 1px solid #000;
	border-width: 1.5px 1.5px 7px 1.5px ;
	border-radius: 1.8rem;
}

.tile--search {
	border: 1px solid #000;
	padding: 1rem 2rem;
	border-radius: 1.5rem;

}

/* Formulaire contact */
#contact input[name='reponse'] { display: none; }

/**
 * Composants
 */

/** header */
header {
	border-bottom: 1px solid #000;
	background: rgba(255, 247, 237, .9);
	backdrop-filter: blur(2px);
	font-size: .92em !important;
}
@media screen and (min-width: 640px) {
	header {
		position: sticky;
		top: -1px;
		z-index: 5;
	}
}

footer {
	background: #000;
	font-size: .92em !important;

}
footer *, footer a:hover  {
	color: #fff;
}

.banner {
	display: grid;
	grid-template-columns: 1fr auto;
}

.banner__logo {
	grid-row: 2;
	grid-column: 1 / 3;
}

.banner__cta {
	text-align: right;
	line-height: 1;
}

@media screen and (min-width:540px) {
	.banner__cta {
		grid-column: 2;
	}
	.banner__nav {
		grid-column: 1;
		grid-row: 1;
		justify-self:left;
		align-content: center;
	}
}

/** composants > fil d'ariane */
.ariane li:not(.editable-hidden) {
	display: inline;
}
.ariane li:not(:first-child):before {
	--size: 5px;

	content: '';
	line-height: 1;
	display: inline-flex;
	margin: 0 .75ch 0 1.25ch;

	/* triangle */
	height: 0;
	width: 0;
	border: var(--size) solid transparent;
	border-left: var(--size) solid #555;

	vertical-align: middle;
}

/** boutons */
.bt, .bt.internal {
	background-color: #FFF7ED;
	color: #000;

	border: 1px solid #000;
	border-radius: .5rem;

	margin: .6rem .6rem .6rem 0 !important;
	position: relative;
	z-index: 0!important;

}
	.bt:hover, .bt.selected {
		background-color: #000;
		color: #fff;
	}

a.bt,
summary.bt,
.bt-cta,
#contact button#send {
	cursor: pointer;
	display: inline-block;
	background: #ac8d85;
	border: 1px solid #222;
	border-width: 1.5px 1.5px 7px 1.5px;
	border-radius: 1.8rem;
	padding: 2rem 2rem 1.5rem 2rem;
	text-decoration: none;
	
	font-family: 'Abril Fatface', Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
	font-weight: lighter;
	color: #000;
	font-size: 1.8rem;
	line-height: 1;

	transition: all .2s;
}
a.bt::before, 
a.bt-cta::before {
	content: '→'/'';
	display: inline-block;
	font-family: 'Courier New', Courier, monospace;
	font-size: 1.4em;
	vertical-align: middle;
	margin: 0 .5em  0 0em;
	transform: scaleX(2);
	position: relative;
}
a.bt:hover, 
a.bt-cta:hover,
a.bt-contact,
#contact button#send:hover {
	background: #222;
	text-decoration: none;
	color: #fff;
}

a.bt-cta--alt {
	background-color: #000;
	color: #fff;
	border: 0;
	padding-top: 1.5rem !important;
}
a.bt-cta--alt::before{
	display: none;
}

a.bt--unstyled, a.bt--unstyled:hover {
	border: 0;
	background: transparent;
	padding: 0 !important;
	margin: 0;
	color: #000;
	border-radius: 0;
}

.bt-contact {
	display: inline-block;
	font-size: inherit !important;
	font-family: Arial, Helvetica, sans-serif !important;
	border: 0 !important;
	text-transform: uppercase;
	padding: 1rem 3rem !important;

}
.bt-contact::before {
	content: '';
	display: none !important;
}

/** statistiques */
.statistiques__liste {
	display: flex;
	flex-wrap: wrap;
	justify-items: center;
	gap: 2rem 1rem;

	padding: 8rem 4rem !important;

	background: #111;
}
.statistiques__liste, .statistiques__liste * {
	color: #fff;
}
.statistiques__liste > * {
	line-height: 1.25;
	width: 100%;
	flex: 1 1 var(--c);
	--c: 100%;
}
@media screen and (min-width: 480px) {
	.statistiques__liste > * {--c: 33%;}
}
@media screen and (min-width: 860px) { 
	.statistiques__liste > * {--c: 20%;}
}

/** ressources */
.resource {
	display: grid;
	grid-template-rows: 1fr auto auto;
	overflow: hidden;
}
.resource h2,
.resource h3,
.resource h4,
.resource p,
.annuaire__membre p {
	overflow: hidden;
	text-overflow: ellipsis;
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}
.resource .bookmark {
	position: absolute;
	top: -2px;
	right: 1rem;
}

/** faq */
.faq__element {
	border: 1px solid #000;
	border-bottom-width: 7px ;
	border-radius: 1rem;
	overflow: hidden;
}
.faq__question {
	padding: 0 1.5rem;

}
.faq__element:hover {
	color: #fff !important;
	background: #000;
}
.faq__element:hover * {color: inherit;}

.faq__element i::before{
	content: '↘'/'';
	display: block;
}
.faq__element[open] i::before{
	content: '↗'/'';
}
.faq__question{
	display: grid;
	grid-template-columns: 1fr auto;
	cursor: pointer;
}

/** gabarit 'Annuaire' */
.tag{
	color: #000;
	text-decoration: none;

	transition: all .2s;

	display: inline-block;
}

.filtres {
	position: fixed;
	top: 0;
	bottom: 0;
	right: 0;

	z-index: 5;
	background-color: #FFF7ED;
	border: #000 1px solid;

	padding-right: 1rem;

	max-width: 320px;
	width: 100%;
	overflow: scroll;
}

summary::-webkit-details-marker {
	display: none!important;
	width: 0;
	height: 0;
	margin-inline-end: 0;
}

details .filtres__categorie {
	cursor: pointer;
}

.annuaire {
	display: grid;
}

.annuaire__search{
	width: 100%;
	border: 1px solid #000;
	border-radius: 1rem;
	position: relative;
}
.annuaire__search[open] .annuaire__toggleSearch::after{
	top: 1rem;
	transform: unset;
	color: #fff;
	background: #000;
}
.annuaire__search[open] {
	outline: 3px solid #AC8D85;
}

.annuaire__toggleSearch {
	padding: 1rem;
}

.annuaire__tags {
	position: absolute;
	top: 100;
	background-color: #FFF7ED;
	border: 1px solid #000;
	border-width: 1.5px 1.5px 7px 1.5px;
	border-radius: 1.5rem;
	margin: .5rem;
	
	max-width: 320px;
	width: 100%;

	overflow: hidden;
}

.annuaire__tags::-webkit-scrollbar{
	width: 10px;
}


.filtres__categorie {
	background: inherit;
}
.filtres__nav,
details:not(:first-child) > .filtres__categorie{
	border-top: 1px solid rgba(0,0,0,.5);
}

.filtres__categorie:hover{
	background: rgb(172, 141, 133,.3);
}

.filtres__categorie::before {
	content: '+'/'';
	display: inline-block;
	font-family: 'Abril';
	padding-right: .5ch;
	width: 20px;
  
	text-align: center;
}

details[open] > .filtres__categorie::before {
	content: '–'/'';
	display: inline-block;
}

.annuaire__tag{
	display: block;
	line-height: 2;
}
.annuaire__tag:hover {
	background: rgb(172, 141, 133,.3);
}

.filtres__categorie {
	background: #FFF7ED;
}



.annuaire__membre {
}
.annuaire__membre-visuel--min {
	min-width: 50px;
	min-height: 50px;
	border-radius: .5rem;
	overflow: hidden;
	background: #AC8D85;
}

.page li {
	margin: 0 .5rem;
}
.page .bt {
	border: 0;
	color: #000;
	text-decoration: underline;
	background: none;
}
.page .bt::before {
	content: '';
	display: none;
}
.page .bt:hover{
	color: #fff;
	text-decoration: underline !important;
	text-decoration-color: #fff;
}
.page .bt.selected {
	background: transparent;
	text-decoration: none;
	pointer-events: none;
}

/** fin gabarit annuaire */

/** composants > à la une */

#admin-bar .alaune.switch label { background: #c8c8c8; }

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

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

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


.bookmark::before {
	content:'';
	display:block;
	background: 
		url('data:image/svg+xml,<svg viewBox="0 0 15 15" fill="none" xmlns="http://www.w3.org/2000/svg" width="25" height="25"><path d="M12.5 14.5l-.312.39A.5.5 0 0013 14.5h-.5zm0-14h.5V0h-.5v.5zm-10 0V0H2v.5h.5zm0 14H2a.5.5 0 00.812.39L2.5 14.5zm5-4l.312-.39a.5.5 0 00-.624 0l.312.39zm5.5 4V.5h-1v14h1zM2 .5v14h1V.5H2zm.812 14.39l5-4-.624-.78-5 4 .624.78zm4.376-4l5 4 .624-.78-5-4-.624.78zM12.5 0h-10v1h10V0z" fill="currentColor"></path></svg>')
		no-repeat;
	height: 30px;
	width: 25px;
	margin-bottom: .5em;
}
.read-more:hover .bookmark::before {
	filter: invert(1);
	transition: all .2s;
}



/* 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;
}

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

main {
	padding: 8rem 0;
}

/*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;
	border: 0;
	border-bottom: 1px solid #333;
}

hr.dotted {border-style: dotted;}
hr.dashed {border-style: dashed;}

hr.vertical {
	height: 150px;
	border: 0;
	border-left: 1px solid #333;
}


/* 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; }
	
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: graytext;
	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 #a9a9a9;
    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;
}

p { margin-bottom: 2em; } /* marge accessible sur les paragraphes */

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; }
.balance {text-wrap: balance;}
.short { text-overflow: ellipsis; }

	/* Alignement grids */
	.jcc { justify-content: center; }
	.jce { justify-content: end;}
	.jcsb{justify-content: space-between;}
	.jcse{justify-content: space-evenly;}
	.jic { justify-items: center; }
	.aic { align-items: center; }
	.aie { align-items: end; }
	.asc { align-self: center; }
	.asr {align-self: right;}

/*  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; }

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

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


/* Mise en avant contenu */
.highlight {
	background-color: #808080;
	padding: 2rem;
}


/* 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;
}

@media screen and (min-width:960px) {
	
	.md\:sr-only--off {/* pour un texte lisible qu'en mode accessible */
		display: inline;
		position: initial;
		width: unset;
		height: unset;
		padding: unset;
		margin: unset;
		overflow: unset;
		clip: unset;
		white-space: unset; /* 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: 5em;
  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: #777;
}
input:-moz-placeholder,
textarea:-moz-placeholder {
  color: #777;
}
/* 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;
}


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

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


/* 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; }


/* Vidéo */
.video {
	position: relative;
	display: inline-block;
}
	.video:after {
		content: '\f144';
		font-family: FontAwesome;
		font-size: 6rem;
		position: absolute;
		left: 50%;
		top: 50%;
		transform: translate(-50%, -50%);
		color: #ff0000;
		opacity: .8;
		transition: all 1.5s;
	}
		.video:hover:after { opacity: 1; }
		.video.play:after { content: ''; }

	.video iframe { display: block; }
		

/* 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: 999;

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

	margin: 0;
	padding: 0.2rem 1rem;

	border-radius: 30px;

	opacity: 1;/*0.6 pas accessible*/
	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.2; pas accessible */
		left: 20px;
		right: initial;
	}
		.bt.fixed.edit.key {
			position: initial;
			border: none;
			margin: 0 auto 1rem;
    		display: block !important;
		}
	.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.6;
		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;
}



/* GRIDS */
.grid {
	display: grid;
}
.space {
	grid-gap: 1rem;
	gap: 1rem;
}

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

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

	/* 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: -ms-grid;
		display: grid;
		grid-auto-flow: column;
		grid-auto-columns: 1fr;
	}

	[class*=" grid-"],
	[class^="grid-"] {
		display: -ms-grid;
		display: grid;
		grid-auto-flow: dense;
	}
	
	/* space */
	.grid.space, 
	[class*=" grid-"].space, 
	[class^="grid-"].space { 
		grid-gap: 1rem;
	}
	.grid.space-l, 
	.flex.space-l,
	[class*=" grid-"].space-l, 
	[class^="grid-"].space-l { 
		grid-gap: 2rem;
	}
	.grid.space-xl, 
	[class*=" grid-"].space-xl, 
	[class^="grid-"].space-xl { 
		grid-gap: 4rem;	
	}

}

[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);
}

/*.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%; }

.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; } */

.mw200p { max-width: 200px; }
.mw240p { max-width: 240px; }
.mw320p { max-width: 320px; }
.mw480p { max-width: 480px; }
.mw640p { max-width: 640px; }
.mw720p {max-width: 720px;}
.mw960p { max-width: 960px; }
.mw1140p { max-width: 1140px; }
.wauto { width: auto; }

/* 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; }
.mtxl { margin-top: 8rem; }
.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.9rem; }
.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;
	}
		header nav li {
			float: left;
			margin: 0 0.5rem;
		}
		header nav a { text-decoration: none; }


	/* BOUTON BURGER & Animation */
	header nav .burger {
		display: none;
		position: relative;
		overflow: hidden;
		float: right;
		top: 4px;
		right: 0;
		margin: 0 1rem;
		padding: 0;
		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: transparent;
	}
		.burger span {
			position: absolute;
			top: 14px;
			left: 6px;
			right: 6px;
			height: 2px;
			background: #000;

			transition: background 0.3s;
		}

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

				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: transparent; }
			.burger.active span { background: none; }
				.burger.active span::before { top: 0; transform: rotate(45deg);	}
				.burger.active span::after { bottom: 0; transform: rotate(-45deg); }
				.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 burger menu */
@media (max-width: 790px)
{
	header nav .burger {
		display: block;
	    z-index: 12;
	}

	header nav > ul {
		background-color: #FFF7ED;

		display: block !important;
		visibility: hidden;

		position: fixed !important;
		z-index: 10;

		left: 0;
		top: 0;
		/* bottom: 0; */
		height: 100vh;

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

		width: 300px;

		margin: 0;
		padding-top: 8rem;
		padding-left: 1rem;


		text-align: left;

		border-right: 1px solid #000;
		border-bottom: 1px solid #000;

		transition-duration: 0.3s;
		transform: translateX(-100%);
		-webkit-transform: translateX(-100%);
	}
		header nav li {
			float: none;
			padding: 0;
			margin-left: 0 !important;
			border-radius: 5px;
			transition: background 0.3s;
		}
			header nav li:hover { background-color: #dfdfdf; }
			header nav li a {
				display: block;
				padding: 0.5rem;
			}

	/* Raz du header */
	.responsive-nav header { position: inherit; }
	/* Ouvertur du menu */
	.responsive-nav header nav ul {
		visibility: visible;
		grid-auto-flow: inherit;
		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: relative;
	}

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

/* RESPONSIVE medium */
@media (max-width: 480px)
{
	.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; }

	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;
	}
		
	.editable img.fl, .editable img.fr {
		float: none;
		display: block;
		margin: 0 auto 0.5rem;
	}
	.editable img {
		max-width: 100%;
		height: 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: 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 {
		color: #000;
		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;
	}
	a {	color: #000; }
	/* displaying URLs
	a[href]::after {
	content: " (" attr(href) ")";
	}
	*/
	a[href^="javascript:"]::after,
	a[href^="#"]::after {
		content: "";
	}
}


/* ---------------------------------- */
/* ==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-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;
}

/* 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;
}