@charset "UTF-8";

/***************************/
/***************************/
/********** ICONS **********/
/***************************/
/***************************/

@font-face {
	font-family:'icomoon';
	src:url('../fonts/icomoon.eot');
	src:url('../fonts/icomoon.eot#iefix') format('embedded-opentype'),
		url('../fonts/icomoon.woff') format('woff'),
		url('../fonts/icomoon.ttf') format('truetype'),
		url('../fonts/icomoon.svg#fontello') format('svg');
	font-weight:normal;
	font-style:normal;
	font-display: swap;
	
}
[class^="icon-"] {
	height:1em;
}
[class^="icon-"]:before {
	font-family:"icomoon" !important;
	font-style:normal;
	font-weight:normal;
	speak:never;
	display:inline-block;
	text-decoration:inherit;
	text-shadow:none !important;
	font-variant:normal;
	text-transform:none;
	font-size:inherit;
	line-height:inherit;
	color:inherit;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/********** ICONS **********/

.icon-accessible-auditif:before {
content: "\e900";
}
.icon-accessible-lsf:before {
content: "\e901";
}
.icon-accessible-mobilite:before {
content: "\e902";
}
.icon-accessible-visuel:before {
content: "\e903";
}
.icon-arrow-down:before {
content: "\e904";
}
.icon-arrow-left:before {
content: "\e905";
}
.icon-arrow-right:before {
content: "\e906";
}
.icon-arrow-up:before {
content: "\e907";
}
.icon-blank:before {
content: "\e908";
}
.icon-bluesky:before {
content: "\e909";
}
.icon-calendar:before {
content: "\e916";
}
.icon-clock:before {
content: "\e90a";
}
.icon-close:before {
content: "\e90b";
}
.icon-download:before {
content: "\e90c";
}
.icon-expand:before {
content: "\e90d";
}
.icon-eye:before {
content: "\e90e";
}
.icon-eye-close:before {
content: "\e90f";
}
.icon-facebook:before {
content: "\e910";
}
.icon-instagram:before {
content: "\e911";
}
.icon-less:before {
content: "\e912";
}
.icon-linkedin:before {
content: "\e913";
}
.icon-mail:before {
content: "\e917";
}
.icon-more:before {
content: "\e918";
}
.icon-pause:before {
content: "\e919";
}
.icon-play:before {
content: "\e91a";
}
.icon-refresh:before {
content: "\e91c";
}
.icon-search:before {
content: "\e91d";
}
.icon-send:before {
content: "\e91e";
}
.icon-share:before {
content: "\e91f";
}
.event-single-link-simple.icon-sunrise .mec-event-title::before,
.icon-sunrise:before {
content: "\e914";
}
.event-single-link-simple.icon-sunset .mec-event-title::before,
.icon-sunset:before {
content: "\e915";
}
.icon-twitter-x:before {
content: "\e921";
}
.icon-veilleurs:before {
content: "\e91b";
}
.icon-youtube:before {
content: "\e922";
}

/********** ICON IN ANCHORS **********/

/*
nav.pagination .prev:before {
	content: "\e901";
}
nav.pagination .next:after {
	content: "\e902";
}
*/
/***********************************/
/***********************************/
/********** ICON ANIMATED **********/
/***********************************/
/***********************************/

/*
are concerned :
.icon-expand,
.icon-more, .icon-close
icon-arrow-left, icon-arrow-right, icon-arrow-up, icon-arrow-down ==> arrow like
*/

/********** DEFAULT **********/

[class^="icon-"].animated:before {
	content:"" !important;
}
[class^="icon-"].animated {
	position:relative;
	display:-webkit-inline-box;
	display:-webkit-inline-flex;
	display:-moz-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	-webkit-box-align:center;
	-webkit-align-items:center;
	   -moz-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	height:1em;
	width:1em;
	color:inherit;
	text-shadow:inherit;
	-webkit-transform-origin:center center;
	   -moz-transform-origin:center center;
	    -ms-transform-origin:center center;
	     -o-transform-origin:center center;
	        transform-origin:center center;
	background:transparent;
}
[class^="icon-"].animated .label,
[class^="icon-"].animated .label:before,
[class^="icon-"].animated .label:after {
	position:absolute;
	display:block;
	height:var(--line-height);
	font-size:inherit !important;
	line-height:inherit;
	color:inherit;
	text-shadow:inherit;
	-webkit-box-shadow:inset 0 0 0 -webkit-calc(var(--line-height) * 2);
	   -moz-box-shadow:inset 0 0 0 -moz-calc(var(--line-height) * 2);
	        box-shadow:inset 0 0 0 calc(var(--line-height) * 2);
}
[class^="icon-"].animated .label:before,
[class^="icon-"].animated .label:after {
	content:"";
	-webkit-transform-origin:center center;
	   -moz-transform-origin:center center;
	    -ms-transform-origin:center center;
	     -o-transform-origin:center center;
	        transform-origin:center center;
}

/** default / no js **/

.icon-expand.animated,
body.onload .icon-expand.animated .label,
body.onload .icon-expand.animated .label:before,
body.onload .icon-expand.animated .label:after {
	-webkit-transition:none;
	-o-transition:none;
	-moz-transition:none;
	transition:none;
}

/********** ICON ARROW **********/

[class^="icon-arrow-"].animated .label {
	left:0;
	height:var(--line-height);
	width:1em;
	width:.9em;
	-webkit-box-shadow:inset 0 0 0 -webkit-calc(var(--line-height) * 2);
	   -moz-box-shadow:inset 0 0 0 -moz-calc(var(--line-height) * 2);
	        box-shadow:inset 0 0 0 calc(var(--line-height) * 2);
}
[class^="icon-arrow-"].animated .label:before,
[class^="icon-arrow-"].animated .label:after {
	left:0;
	width:.6em;
	width:.45em;
	-webkit-transform-origin:-webkit-calc(var(--line-height) / 2.5) -webkit-calc(var(--line-height) / 2);
	   -moz-transform-origin:-moz-calc(var(--line-height) / 2.5) -moz-calc(var(--line-height) / 2);
	    -ms-transform-origin:calc(var(--line-height) / 2.5) calc(var(--line-height) / 2);
	     -o-transform-origin:calc(var(--line-height) / 2.5) calc(var(--line-height) / 2);
	        transform-origin:calc(var(--line-height) / 2.5) calc(var(--line-height) / 2);
}
[class^="icon-arrow-"].animated .label:before {
	-webkit-transform: rotate(-45deg);
	   -moz-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	     -o-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}
[class^="icon-arrow-"].animated .label:after {
	-webkit-transform: rotate(45deg);
	   -moz-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	     -o-transform: rotate(45deg);
	        transform: rotate(45deg);
}
.icon-arrow-right.animated {
	-webkit-transform:scale(-1);
	   -moz-transform:scale(-1);
	    -ms-transform:scale(-1);
	     -o-transform:scale(-1);
	        transform:scale(-1);
}
.icon-arrow-up.animated {
	-webkit-transform:rotate(90deg);
	   -moz-transform:rotate(90deg);
	    -ms-transform:rotate(90deg);
	     -o-transform:rotate(90deg);
	        transform:rotate(90deg);
}
.icon-arrow-down.animated {
	-webkit-transform:rotate(-90deg);
	   -moz-transform:rotate(-90deg);
	    -ms-transform:rotate(-90deg);
	     -o-transform:rotate(-90deg);
	        transform:rotate(-90deg);
}

/********** ICON EXPAND **********/

/** default **/

.icon-expand.animated .label,
.icon-expand.animated .label:before,
.icon-expand.animated .label:after {
	left:0;
}

/** not expanded **/

.icon-expand.animated .label {
	margin:auto;
}
.icon-expand.animated .label:before {
	-webkit-transform:translate(0,-.375em);
	   -moz-transform:translate(0,-.375em);
	    -ms-transform:translate(0,-.375em);
	     -o-transform:translate(0,-.375em);
	        transform:translate(0,-.375em);
}
.icon-expand.animated .label:after {
	-webkit-transform:translate(0,.375em);
	   -moz-transform:translate(0,.375em);
	    -ms-transform:translate(0,.375em);
	     -o-transform:translate(0,.375em);
	        transform:translate(0,.375em);
}
.icon-expand.animated .label,
.icon-expand.animated .label:before,
.icon-expand.animated .label:after {
	width:1em;
}

/** expanded **/

.expanded .icon-expand.animated .label {
	width:0;
}
.expanded .icon-expand.animated .label:before {
	-webkit-transform:translate3d(-50%,0,0) rotate(-45deg);
	   -moz-transform:translate3d(-50%,0,0) rotate(-45deg);
	        transform:translate3d(-50%,0,0) rotate(-45deg);
}
.expanded .icon-expand.animated .label:after {
	-webkit-transform:translate3d(-50%,0,0) rotate(45deg);
	   -moz-transform:translate3d(-50%,0,0) rotate(45deg);
	        transform:translate3d(-50%,0,0) rotate(45deg);
}
.expanded .icon-expand.animated .label {
	-webkit-transform:translate(.5em,0);
	   -moz-transform:translate(.5em,0);
	    -ms-transform:translate(.5em,0);
	     -o-transform:translate(.5em,0);
	        transform:translate(.5em,0);
}
.expanded .icon-expand .label:before,
.expanded .icon-expand .label:after {
	-webkit-transform:translate(-.125em,0);
	   -moz-transform:translate(-.125em,0);
	    -ms-transform:translate(-.125em,0);
	     -o-transform:translate(-.125em,0);
	        transform:translate(-.125em,0);
	width:1.289em;
}

/********** ICON CLOSE / MORE **********/

.icon-close.animated .label,
.icon-more.animated .label {
	left:0;
	height:1em;
	width:1em;
	-webkit-box-shadow:none !important;
	   -moz-box-shadow:none !important;
	        box-shadow:none !important;
}
.icon-close.animated .label:before,
.icon-close.animated .label:after,
.icon-more.animated .label:before,
.icon-more.animated .label:after {
	top:50%;
	left:50%;
}
.icon-more.animated .label:before,
.icon-more.animated .label:after {
	width:1em;
}
.icon-close.animated .label:before,
.icon-close.animated .label:after {
	width:1.289em;
}
.icon-close.animated .label:before {
	-webkit-transform:translate(-50%,-50%) rotate(-45deg);
	   -moz-transform:translate(-50%,-50%) rotate(-45deg);
	    -ms-transform:translate(-50%,-50%) rotate(-45deg);
	     -o-transform:translate(-50%,-50%) rotate(-45deg);
	        transform:translate(-50%,-50%) rotate(-45deg);
}
.icon-close.animated .label:after {
	-webkit-transform:translate(-50%,-50%) rotate(45deg);
	   -moz-transform:translate(-50%,-50%) rotate(45deg);
	    -ms-transform:translate(-50%,-50%) rotate(45deg);
	     -o-transform:translate(-50%,-50%) rotate(45deg);
	        transform:translate(-50%,-50%) rotate(45deg);
}
.icon-more.animated .label:before {
	-webkit-transform:translate(-50%,-50%) rotate(0deg);
	   -moz-transform:translate(-50%,-50%) rotate(0deg);
	    -ms-transform:translate(-50%,-50%) rotate(0deg);
	     -o-transform:translate(-50%,-50%) rotate(0deg);
	        transform:translate(-50%,-50%) rotate(0deg);
}
.icon-more.animated .label:after {
	-webkit-transform:translate(-50%,-50%) rotate(90deg);
	   -moz-transform:translate(-50%,-50%) rotate(90deg);
	    -ms-transform:translate(-50%,-50%) rotate(90deg);
	     -o-transform:translate(-50%,-50%) rotate(90deg);
	        transform:translate(-50%,-50%) rotate(90deg);
}

/********** ICON PLAY / PAUSE **********/
/* https://css-tricks.com/making-pure-css-playpause-button/ */

.icon-play.animated .label {
	height:1em;
	width:1em;
	        -webkit-box-shadow:none;
	           -moz-box-shadow:none;
	                box-shadow:none;
}
.icon-play.animated .label:before,
.icon-play.animated .label:after {
	height:1em;
	width:1em;
	-webkit-box-shadow:inset 0 0 0 1em;
	   -moz-box-shadow:inset 0 0 0 1em;
	        box-shadow:inset 0 0 0 1em;
}
.icon-play.animated .label:before {
	-webkit-clip-path: polygon(10% 0, 50% 22.5%, 50% 77.5%, 10% 100%);
	        clip-path: polygon(10% 0, 50% 22.5%, 50% 77.5%, 10% 100%);
}
.icon-play.animated .label:after {
	-webkit-clip-path: polygon(50% 22.5%, 100% 50%, 100% 50%, 50% 77.5%);
	        clip-path: polygon(50% 22.5%, 100% 50%, 100% 50%, 50% 77.5%);
}

/****************************/
/********** @MEDIA **********/
/****************************/
/*  cf . https://css-tricks.com/solving-sticky-hover-states-with-media-hover-hover/ */

/********** @HOVER **********/

@media (hover: hover) {
	/** arrow **/
	a:hover [class^="icon-arrow-"].animated .label {
		width:.8em;
	}
	a:hover [class^="icon-arrow-"].animated .label:before,
	a:hover [class^="icon-arrow-"].animated .label:after {
		width:.3em;
	}
	/** expand **/
	a:not(.expanded):hover .icon-expand.animated .label:before {
		-webkit-transform:translate(0,-.25em);
		   -moz-transform:translate(0,-.25em);
		    -ms-transform:translate(0,-.25em);
		     -o-transform:translate(0,-.25em);
		        transform:translate(0,-.25em);
	}
	a:not(.expanded):hover .icon-expand.animated .label:after {
		-webkit-transform:translate(0,.25em);
		   -moz-transform:translate(0,.25em);
		    -ms-transform:translate(0,.25em);
		     -o-transform:translate(0,.25em);
		        transform:translate(0,.25em);
	}
	a.expanded:hover .icon-expand .label:before,
	a.expanded:hover .icon-expand .label:after {
		width:1em;
	}
	/** more, close **/
	a:hover .icon-more.animated .label:before,
	a:hover .icon-more.animated .label:after {
		width:.75em;
	}
	a:hover .icon-close.animated .label:before,
	a:hover .icon-close.animated .label:after {
		width:1em;
	}
	/** play / pause **/
	/* pause */
	a.is-paused .icon-play.animated .label:before,
	a.is-playing:hover .icon-play.animated .label:before {
		-webkit-clip-path: polygon(0% 0%, 33% 0, 33% 100%, 0% 100%);
		        clip-path: polygon(0% 0%, 33% 0, 33% 100%, 0% 100%);
	}
	a.is-paused .icon-play.animated .label:after,
	a.is-playing:hover .icon-play.animated .label:after {
		-webkit-clip-path: polygon(66% 0, 100% 0, 100% 100%, 66% 100%);
		        clip-path: polygon(66% 0, 100% 0, 100% 100%, 66% 100%)
	}
	/* play */
	a.is-paused:hover .icon-play.animated .label:before,
	a.is-playing .icon-play.animated .label:before {
		-webkit-clip-path: polygon(10% 0, 50% 22.5%, 50% 77.5%, 10% 100%);
		        clip-path: polygon(10% 0, 50% 22.5%, 50% 77.5%, 10% 100%);
	}
	a.is-paused:hover .icon-play.animated .label:after,
	a.is-playing .icon-play.animated .label:after {
		-webkit-clip-path: polygon(50% 22.5%, 100% 50%, 100% 50%, 50% 77.5%);
		        clip-path: polygon(50% 22.5%, 100% 50%, 100% 50%, 50% 77.5%);
	}
}

/********** .HOVER FOR MOBILE JS **********/

@media (min-width:0px) {
	/** arrow **/
	a.hover [class^="icon-arrow-"].animated .label {
		width:.8em;
	}
	a:hover [class^="icon-arrow-"].animated .label:before,
	a:hover [class^="icon-arrow-"].animated .label:after {
		width:.3em;
	}
	/** expand **/
	a:not(.expanded).hover .icon-expand.animated .label:before {
		-webkit-transform:translate(0,-.25em);
		   -moz-transform:translate(0,-.25em);
		    -ms-transform:translate(0,-.25em);
		     -o-transform:translate(0,-.25em);
		        transform:translate(0,-.25em);
	}
	a:not(.expanded).hover .icon-expand.animated .label:after {
		-webkit-transform:translate(0,.25em);
		   -moz-transform:translate(0,.25em);
		    -ms-transform:translate(0,.25em);
		     -o-transform:translate(0,.25em);
		        transform:translate(0,.25em);
	}
	a.expanded.hover .icon-expand .label:before,
	a.expanded.hover .icon-expand .label:after {
		width:1em;
	}
	/** more, close **/
	a.hover .icon-more.animated .label:before,
	a.hover .icon-more.animated .label:after {
		width:.75em;
	}
	a.hover .icon-close.animated .label:before,
	a.hover .icon-close.animated .label:after {
		width:1em;
	}
	/** play / pause **/
	/* pause */
	a.is-paused .icon-play.animated .label:before {
		-webkit-clip-path: polygon(0% 0%, 33% 0, 33% 100%, 0% 100%);
		        clip-path: polygon(0% 0%, 33% 0, 33% 100%, 0% 100%);
	}
	a.is-paused .icon-play.animated .label:after,
	a.is-playing.hover .icon-play.animated .label:after {
		-webkit-clip-path: polygon(66% 0, 100% 0, 100% 100%, 66% 100%);
		        clip-path: polygon(66% 0, 100% 0, 100% 100%, 66% 100%)
	}
	/* play */
	a.is-paused.hover .icon-play.animated .label:before {
		-webkit-clip-path: polygon(10% 0, 50% 22.5%, 50% 77.5%, 10% 100%);
		        clip-path: polygon(10% 0, 50% 22.5%, 50% 77.5%, 10% 100%);
	}
	a.is-paused.hover .icon-play.animated .label:after {
		-webkit-clip-path: polygon(50% 22.5%, 100% 50%, 100% 50%, 50% 77.5%);
		        clip-path: polygon(50% 22.5%, 100% 50%, 100% 50%, 50% 77.5%);
	}
}