/*
Theme Name: Anjou Maine Cereales
Theme URI: http://www.welko.fr/
Description: Thème par Welko
Version: 1.0
Author: Welko
Author URI: http://www.welko.fr/
License: Welko
License URI: http://www.welko.fr/
Text Domain: welko
*/
/* EFFETS */

@charset "utf-8";
/* @import url("https://fonts.googleapis.com/css?family=Lato:300,400,700,900&display=swap"); */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 100;
  src: url('fonts/lato-normal-100.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 100;
  src: url('fonts/lato-italic-100.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/lato-normal-300.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 300;
  src: url('fonts/lato-italic-300.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/lato-normal-400.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: url('fonts/lato-italic-400.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/lato-normal-700.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  src: url('fonts/lato-italic-700.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  src: url('fonts/lato-normal-900.woff2') format('woff2');
  font-display: swap;
}

@font-face {
  font-family: 'Lato';
  font-style: italic;
  font-weight: 900;
  src: url('fonts/lato-italic-900.woff2') format('woff2');
  font-display: swap;
}

/*=======================*\
#    Points de rupture    #
#-------------------------#
# min-width -> 600px      #
#    601px <-> 980px      #
#    981px <-> 1260px     #
#   1261px <-> 1480px     #
#   1441px <- max-width   #
\*=======================*/

/* Définition de la couleur principale */
.theme-couleur,
.theme-couleur-before::before,
.theme-couleur-after::after,
h1 strong, .h1 strong,
h2 strong, .h2 strong,
h3 strong, .h3 strong,
.owl-nav button,
li::before{ color:#019DE0; }
input, textarea{ border-color:#019DE0; }

/* La classe .arc ajoute l'arc de cercle "sourire" sous l'élément. Pour modifier sa taille, il est possible d'écraser le font-size dans un autre sélecteur */
.arc::after,
h1::after, .h1::after,
h3::after, .h3::after{
	content:"";
	display:block;
	width:1em;
	height:0.22em;
	margin:0.2em auto 0 auto;
	font-size:8.6rem;
	background:url("images/after1.svg") no-repeat center center / contain;
}

    /*=============*\
====#    BOUTONS    #==============================================================================
    \*=============*/
/*  Étant donné qu'ils auront un aspect différent selon les sites, 
    je les ai tous regroupés ici et géré leur couleur de façon 
    indépendante à la classe .theme-couleur */
.bouton,
.bouton-plus,
input[type="submit"]{
	display:inline-block;
	position:relative;
	padding:1.7rem 3rem;
	margin:0 0 1rem 0;
	color:#fff;
	font-family:inherit;
	font-size:2rem;
	font-weight:900;
	line-height:1;
	text-decoration:none;
	text-transform:uppercase;
	-webkit-appearance:none;
	   -moz-appearance:none;
	        appearance:none;
	background:none;
	border:none;
	cursor:pointer;
	outline: none;
}
.bouton,
input[type="submit"]{
	background-image:url("images/button.svg");
	color: #019DE0;
	transition:background-color 0.3s ease-out;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
@media (min-width:601px){
	.bouton + .bouton,
	.bouton + .bouton-plus,
	.bouton-plus + .bouton,
	.bouton-plus + .bouton-plus,
	input[type="submit"]{ margin-left:3rem; }
}

/*  Boutons "En savoir plus", 
	pour des raisons d'accessibilité je recommande d'écrire "plus" dans le bouton, 
	mais de ne le rendre disponible que pour les liseuses via la classe no-texte : 
	<a href="/" class="bouton-plus">En savoir<span class="no-texte"> plus</span></a> */
.bouton-plus{
	z-index:1;
	padding-right:5rem;
	overflow:visible;
	color: #019DE0;
}
.bouton-plus::before{
	content:"";
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	z-index:-1;
	width:100%;
	border-color:transparent;
	border-image-width:0 auto;
	border-image-slice:0 45% fill;
	border-image-source:url("images/button.svg");
	border-style:solid;
	border-width:0 4rem;
	transition:filter 0.3s ease-out;
	filter:brightness(100%);
}
.bouton-plus:hover{ color: black; }
/* Version blanche (slider home) */
.bouton-plus.blanc{
	color:#fff;
	transition:color 0.3s ease-out;
}
.bouton-plus.blanc::before{ border-image-source:url("images/button.svg"); }
.bouton-plus.blanc:hover,
.bouton-plus.blanc:focus{ color:#019DE0; }
.bouton-plus.blanc:hover::before,
.bouton-plus.blanc:focus::before{ filter:brightness(100%); }
/*  IE, et même Edge, ne gèrent pas bien la version border-image du bouton "+", on gère donc autrement pour eux.
    la différence avec la vraie version c'est qu'ici il n'y a pas de transparence autour et dans le "+"... */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){
	/* Patch IE */
	.bouton-plus::before{ content:none; }
	.bouton-plus{
		background-color:#019DE0;
		border-radius:3.6rem 0;
		transition:background-color 0.3s ease-out;
	}
	.bouton-plus:hover,
	.bouton-plus:focus{ background-color:#000; }
	.bouton-plus::after{
		content:"";
		display:inline-block;
		position:absolute;
		top:calc(50% - 2.2rem);
		right:-0.6rem;
		width:4.4rem;
		height:4.4rem;
		background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 44'%3E%3Ccircle cx='22' cy='22' r='22' fill='%23fff'/%3E%3Ccircle cx='22' cy='22' r='17' fill='none' stroke='%2394B922' stroke-miterlimit='10'/%3E%3Cpolygon points='30 20 24 20 24 14 20 14 20 20 14 20 14 24 20 24 20 30 24 30 24 24 30 24' fill='%2394B922'/%3E%3C/svg%3E") no-repeat center center / contain;
	}
	.fond-gris .bouton-plus::after{ background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 44'%3E%3Ccircle cx='22' cy='22' r='22' fill='%23f8f8f8'/%3E%3Ccircle cx='22' cy='22' r='17' fill='none' stroke='%2394B922' stroke-miterlimit='10'/%3E%3Cpolygon points='30 20 24 20 24 14 20 14 20 20 14 20 14 24 20 24 20 30 24 30 24 24 30 24' fill='%2394B922'/%3E%3C/svg%3E"); }
	.bouton-plus.blanc{ background-color:#fff; }
}
@supports (-ms-accelerator:true) or (-ms-ime-align:auto){
	/* Patch Edge */
	.bouton-plus::before{ content:none; }
	.bouton-plus{
		background-color:#019DE0;
		border-radius:3.6rem 0;
		transition:background-color 0.3s ease-out;
	}
	.bouton-plus:hover,
	.bouton-plus:focus{ background-color:#000; }
	.bouton-plus::after{
		content:"";
		display:inline-block;
		position:absolute;
		top:calc(50% - 2.2rem);
		right:-0.6rem;
		width:4.4rem;
		height:4.4rem;
		background:url("images/button.svg") no-repeat center center / contain;
	}
	.fond-gris .bouton-plus::after{ background-image:url("images/button.svg"); }
	.bouton-plus.blanc{ background-color:#fff; }
}

/* Bouton de connexion à l'espace client */
.site-header-compte--bouton{ 
	padding:2rem 3rem 2rem 5rem; 
	background:url("images/client.svg") no-repeat center;
	background-size: contain;
}
.site-header-compte--bouton:hover{ 
	color: black;
}
@media (max-width:1260px){
	.site-header-compte--bouton{
		padding:0 0 0 3.5rem;
		color:#019DE0;
		font-size:1.4rem;
		text-align:left;
		background:none;
		border-radius:0;
		transition:none;
		transition:color 0.3s ease-out;
	}
	.site-header-compte--bouton:hover,
	.site-header-compte--bouton:focus{
		color:#000;
		background:none;
	}
}


    /*=======================*\
====#    STYLES GÉNÉRIQUES    #====================================================================
    \*=======================*/

@-ms-viewport{ width:device-width; }
@-o-viewport{ width:device-width; }
@viewport{ width:device-width; }
*, *:before, *:after{
	-webkit-box-sizing:inherit;
	        box-sizing:inherit;
	min-width:0;
	min-height:0;
}
html{
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
	font-size:62.5%;
	font-size:calc(1em * 0.625);
	line-height:1.15;
	-webkit-text-size-adjust:100%;
	   -moz-text-size-adjust:100%;
	    -ms-text-size-adjust:100%;
	        text-size-adjust:100%;
	scroll-behavior:smooth;
	-webkit-tap-highlight-color:transparent;
}
body{
	margin:0;
	color:#000;
	font-family:"Lato", sans-serif;
	font-size:1.8rem;
	font-weight:400;
	line-height:1.4;
	text-align:center;
	background-color:#fff;
}
.clearfix::before,
.clearfix::after{
	content:"";
	display:block;
	width:0;
	height:0;
	overflow:hidden;
	clear:both;
	visibility:hidden;
}
article, aside, dialog, figcaption, figure, video, footer, header, hgroup, main, nav, section{ display:block; }
p{ margin:0 0 1em 0; }
hr{
	-webkit-box-sizing:content-box;
	        box-sizing:content-box;
	height:0;
	overflow:visible;
}
a{
	color:inherit;
	background-color:transparent;
}
a:not([href]):not([tabindex]){
	color:inherit;
	text-decoration:none;
}
a:not([href]):not([tabindex]):focus,
a:not([href]):not([tabindex]):hover{
	color:inherit;
	text-decoration:none;
}
a:not([href]):not([tabindex]):focus{ outline:0; }
b, strong{ font-weight:bolder; }
pre, code, kbd, samp{
	font-family:monospace, monospace;
	font-size:1em;
}
pre{ overflow:auto; }
small{ font-size:80%; }
sub, sup{
	position:relative;
	font-size:75%;
	line-height:0;
	vertical-align:baseline;
}
sub{ bottom:-0.25em; }
sup{ top:-0.5em; }
embed, iframe, object, img{
	max-width:100%;
	vertical-align:middle;
}
img{
	height:auto;
	border-style:none;
}
details{ display:block; }
summary{ display:list-item; }
template, [hidden]{ display:none; }
[tabindex="-1"]:focus{ outline:none !important; }
ul,ol,li{
	padding:0;
	margin:0;
	list-style:none;
}
.texte ul,
.texte ol{
	counter-reset:liste;
	line-height:1.1;
}
.texte li{
	padding:0 0 0 2em;
	margin:0 0 0.5em 0;
	counter-increment:liste;
	text-indent:-2em;
	font-size:1.4rem;
}
.texte li::before{
	display:inline-block;
	width:2em;
	padding:0 0.5em 0 0;
	text-align:right;
	text-indent:0;
	vertical-align:baseline;
}
.texte ul li::before{ content:">"; }
.texte ol li::before{
	content:counter(liste)".";
	width:2.5em;
	font-size:0.8em;
	font-weight:900;
}
h1, .h1,
h2, .h2, .h50, .h60,
h3, .h3{
	margin:1em 0;
	font-weight:900;
	line-height:1.1;
	text-transform:uppercase;
}
h1, .h1{ font-size:7rem; }
h1 strong, .h1 strong{ font-weight:900; }
h2, .h2{ font-size:4rem; }
.h50{ font-size:5rem; }
.h60{ font-size:6rem; }
h3, .h3{ font-size:2.4rem; }
@media (max-width:980px){
	h1, .h1{ font-size:5rem; }
	.h60{ font-size:4rem; }
}
@media (max-width:600px){
	h1, .h1{ font-size:4rem; }
	h2, .h2, .h50, .h60{ font-size:3rem; }
}

.no-texte,
.screen-reader-response,
.owl-nav span{
	position:absolute;
	width:1px;
	height:1px;
	padding:0;
	margin:-1px;
	overflow:hidden;
	clip:rect(0 0 0 0);
	-webkit-clip-path:polygon(0px 0px, 0px 0px, 0px 0px);
	        clip-path:polygon(0px 0px, 0px 0px, 0px 0px);
	white-space:nowrap;
	border:0;
}

.container{
	width:1380px;
	margin-right:auto;
	margin-left:auto;
}
.demi-container{ width:690px; }
@media (max-width:1480px){
	.container{ width:1200px; }
	.demi-container{ width:600px; }
}
@media (max-width:1260px){
	.container{ width:960px; }
	.demi-container{ width:480px; }
}
@media (max-width:980px){
	.container,
	.demi-container{ width:540px; }
	.demi-container{
		margin-right:auto;
		margin-left:auto;
	}
}
@media (max-width:600px){
	.container,
	.demi-container{ width:300px; }
}
.owl-stage-outer{ overflow:hidden; }
.owl-stage{
	display:flex;
	align-items:stretch;
	justify-content:flex-start;
}
.owl-item{ flex:1 1 100%; }
.owl-nav{ font-size:1rem; }
.owl-nav button{
	position:absolute;
	bottom:calc(50% - 2.5em);
	width:5em;
	height:5em;
	padding:0;
	margin:0;
	font-size:inherit;
	-webkit-appearance:none;
	   -moz-appearance:none;
	        appearance:none;
	background:none;
	border:none;
	outline:none;
}
.owl-nav button::before{
	content:"";
	position:absolute;
	bottom:calc(50% - 1.5em);
	left:calc(50% - 1.5em);
	width:3em;
	height:3em;
	border-bottom:0.4em solid currentColor;
	border-left:0.4em solid currentColor;
	transform-origin:center center;
}
.owl-prev::before{ transform:translateX(25%) rotate(45deg); }
.owl-next::before{ transform:translateX(-25%) rotate(-135deg); }


    /*===========*\
====#    BLOCS    #================================================================================
    \*===========*/

section[class^="bloc-"]::before,
section[class^="bloc-"]::after{
	content:"";
	display:block;
	flex:0 0 0px;
	overflow:hidden;
	clear:both;
}
.fond-gris{ background-color:#f8f8f8; }
.clearMarges > :first-child{ margin-top:0; }
.clearMarges > :last-child{ margin-bottom:0; }
.picto-couleur svg *{ fill:currentColor; }

/* SLIDER HOME ================================================================================= */
.bloc-slider{ position:relative; }
.bloc-slider .owl-item{
	display:flex;
	align-items:stretch;
	justify-content:center;
}
.bloc-slider-item{
	position:relative;
	width:100%;
	min-height:400px;
	background:no-repeat center center / cover #eee;
}
.bloc-slider-item::before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	z-index:0;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.7);
}
.bloc-slider-container{
	position:relative;
	z-index:1;
	height:100%;
}
.bloc-slider-titre{
	font-size:6rem;
	font-weight:600;
	line-height:1;
	text-transform:uppercase;
}
.bloc-slider-titre strong{
	color:#fff;
	font-size:1.333em;
	font-weight:900;
}
.bloc-slider-titre::after{ margin-top:3rem; }
.bloc-slider-description{
	margin:3rem auto 4rem auto;
	font-weight:600;
	text-shadow:0 0 0.3em rgba(0,0,0,1), 0 0 0.5em rgba(0,0,0,1);
}
.bloc-slider-contenu{
	display:flex;
	align-items:center;
	justify-content:center;
	padding:8rem 5rem;
	color:#fff;
}
.bloc-slider .owl-nav button{ color:#fff; }
.bloc-slider .owl-prev{ left:1rem; }
.bloc-slider .owl-next{ right:1rem; }
@media (min-width:981px){
	.bloc-slider-item.sombre::before{
		width:75%;
		background:linear-gradient(to right, rgba(0,0,0,0.5) 50%,rgba(0,0,0,0) 100%);
	}
	.bloc-slider-item.alt.sombre::before{
		right:0;
		left:auto;
		background:linear-gradient(to left, rgba(0,0,0,0.5) 50%,rgba(0,0,0,0) 100%);
	}
	.bloc-slider-item.clair::before{
		width:75%;
		background:linear-gradient(to right, rgba(0,0,0,0) 50%,rgba(0,0,0,0) 100%);
	}
	.bloc-slider-item.alt.clair::before{
		right:0;
		left:auto;
		background:linear-gradient(to left, rgba(0,0,0,0) 50%,rgba(0,0,0,0) 100%);
	}
	.bloc-slider-container{
		display:flex;
		align-items:stretch;
		justify-content:flex-start;
	}
	.bloc-slider-item.alt .bloc-slider-container{ justify-content:flex-end; }
	.bloc-slider-contenu{
		flex:0 0 50%;
		width:50%;
		max-width:50%;
	}
}
@media (max-width:1260px){
	.bloc-slider-contenu{ padding:5rem 0; }
	.bloc-slider-description{ padding:0 5rem; }
	.bloc-slider-titre{ font-size:4rem; }
}
@media (max-width:600px){
	.bloc-slider-titre{ font-size:3rem; }
}

/* HERO ======================================================================================== */
.bloc-hero{
	background:no-repeat center center / cover #ccc;
	box-shadow:inset 0 0 0 1000vw rgba(0,0,0,0.3);
}
.bloc-hero-titre{
	position:relative;
	z-index:1;
	padding:11rem 0;
	margin:0 auto;
	color:#fff;
	text-align:center;
}
.bloc-hero-titre::after{ background:url("images/after1-blanc.svg") no-repeat center center / contain; }
.bloc-hero-soustitre{
	font-size:0.5em;
	font-weight:300;
}

/* LIENS + PICTOS ============================================================================== */
.bloc-liensPicos{ padding:2rem 0; }
.bloc-liensPicos-container{
	display:flex;
	align-items:center;
	flex-wrap:nowrap;
	justify-content:center;
}
.bloc-liensPicos-item{
	position:relative;
	flex:1 1 100%;
}
.bloc-liensPicos-lien{
	display:block;
	width:18rem;
	padding:1rem 2rem;
	margin:0 auto;
	text-decoration:none;
	background-color:rgba(0,0,0,0);
	border-radius:3.6rem 0;
	transition:background-color 0.3s ease-out;
}
.bloc-liensPicos-lien:hover,
.bloc-liensPicos-lien:focus{ background-color:rgba(0,0,0,0.05); }
.bloc-liensPicos-lien::after{
	margin-top:2rem;
	font-size:5.5rem;
}
.bloc-liensPicos-image{
	display:block;
	width:7rem;
	height:7rem;
	margin:0 auto;
}
.bloc-liensPicos-texte{
	color:#000;
	font-size:1.8rem;
	text-transform:uppercase;
}
@media (min-width:601px){
	.bloc-liensPicos-item:not(:first-child)::before{
		content:"";
		position:absolute;
		top:3rem;
		bottom:3rem;
		left:0;
		border-left:1px solid currentColor;
	}
}
@media (max-width:980px){
	.bloc-liensPicos-container{
		flex-wrap:wrap;
		justify-content:flex-start;
	}
	.bloc-liensPicos-item{
		flex:0 0 50%;
		margin:2rem 0;
	}
	.bloc-liensPicos-item:nth-child(odd)::before{ content:none; }
}
@media (max-width:600px){
	.bloc-liensPicos-item{ flex:0 0 100%; }
}

/* TEXTE & IMAGE =============================================================================== */
.bloc-texteImage{
	position:relative;
	overflow:hidden;
}
.bloc-texteImage-image{ background:no-repeat center center / cover #ccc; }
.layer > .bloc-texteImage-image{
	position:absolute;
	top:0;
	left:0;
	z-index:0;
	width:100%;
	height:100%;
}
.layer > .bloc-texteImage-texte{
	position:relative;
	z-index:1;
	color:#fff;
	background:rgba(0,0,0,0.7);
}
@media (min-width:981px){
	.bloc-texteImage{
		display:flex;
		align-items:stretch;
		flex-direction:row-reverse;
		justify-content:flex-end;
		/* min-height:70rem; */
	}
	.bloc-texteImage.unlock{ height:auto; }
	.bloc-texteImage.alt{ flex-direction:row; }
	.bloc-texteImage-image img{ display:none; }
	:not(.layer) > .bloc-texteImage-image,
	.bloc-texteImage-texte{
		display:flex;
		align-items:center;
		flex:0 0 50%;
		justify-content:flex-end;
	}
	.alt > .bloc-texteImage-texte{ justify-content:flex-start; }
	.bloc-texteImage-texte-container{
		padding:7rem;
		margin-left:auto;
	}
	.bloc-texteImage.alt .bloc-texteImage-texte-container{
		margin-right:auto;
		margin-left:0;
	}
}
@media (min-width:1261px){
	/* .bloc-texteImage{ height:70rem; } */
}
@media (max-width:980px){
	.bloc-texteImage:not(.layer){ padding:3rem 0; }
	:not(.layer) > .bloc-texteImage-image{
		width:calc(540px + 6rem);
		margin:3rem auto -12rem auto;
		overflow:hidden;
		background-image:none !important;
		border-radius:3.6rem 0;
	}
	.bloc-texteImage:not(.layer) .bloc-texteImage-texte-container{
		position:relative;
		z-index:1;
		padding:3rem;
	}
	.bloc-texteImage:not(.layer) .bloc-texteImage-texte-container::before{
		content:"";
		position:absolute;
		top:0;
		right:0;
		left:0;
		z-index:-1;
		height:12rem;
		background:linear-gradient(to bottom, rgba(255,255,255,0.7) 0%,rgba(255,255,255,1) 100%);
	}
	.bloc-texteImage.fond-gris:not(.layer) .bloc-texteImage-texte-container::before{ background:linear-gradient(to bottom, rgba(248,248,248,0.7) 0%,rgba(248,248,248,1) 100%); }
	.layer > .bloc-texteImage-image img{ display:none; }
	.layer > .bloc-texteImage-texte{
		display:inline-block;
		margin:3rem auto;
		vertical-align:middle;
	}
	.bloc-texteImage.layer .bloc-texteImage-texte-container{ padding:3rem; }
}
@media (max-width:600px){
	:not(.layer) > .bloc-texteImage-image{ width:calc(300px + 6rem); }
}

/* CHIFFRES CLÉ ================================================================================ */
.bloc-chiffres{
	display:flex;
	align-items:center;
	flex-direction:column;
	justify-content:center;
	/* min-height:700px; */
	padding:5rem 0;
	overflow:hidden;
}
.bloc-chiffres-liste{
	display:flex;
	align-items:stretch;
	flex-wrap:wrap;
	justify-content:center;
	margin:0 auto;
}
.bloc-chiffres-item{
	display:flex;
	align-items:stretch;
	flex:0 0 270px;
	justify-content:flex-start;
	width:270px;
	margin:3rem;
	text-align:left;
}
.bloc-chiffres-item::before{
	content:"";
	margin:1rem 2rem 0.5rem 2rem;
	border-left:1px solid #000;
}
.bloc-chiffres-image{
	align-self:center;
	flex:0 0 auto;
	order:-1;
	width:7rem;
	height:7rem;
}
.bloc-chiffres-data{
	color:#000;
	text-transform:uppercase;
}
.bloc-chiffres-data strong{
	display:block;
	font-size:3.33em;
	font-weight:900;
	line-height:1;
}
@media (min-width:601px) and (max-width:980px){
	.bloc-chiffres-item{
		flex:0 0 250px;
		width:250px;
		margin:2rem;
		font-size:1.6rem;
	}
	.bloc-chiffres-item:nth-child(odd){ margin-left:0; }
	.bloc-chiffres-item:nth-child(even){ margin-right:0; }
	.bloc-chiffres-item::before{
		margin-right:1.5rem;
		margin-left:1.5rem;
	}
	.bloc-chiffres-image{
		width:6rem;
		height:6rem;
	}
}
@media (min-width:1481px){
	/* .bloc-chiffres-liste.n5,
	.bloc-chiffres-liste.n6{ width:990px; } */
}
@media (min-width:1261px) and (max-width:1480px){
	.bloc-chiffres-liste.n4,
	.bloc-chiffres-liste.n7{ width:660px; }
}
@media (min-width:981px) and (max-width:1480px){
	.bloc-chiffres.alt .bloc-chiffres-item{
		flex:0 0 250px;
		width:250px;
		margin:2rem;
		font-size:1.6rem;
	}
	.bloc-chiffres.alt .bloc-chiffres-item:nth-child(odd){ margin-left:0; }
	.bloc-chiffres.alt .bloc-chiffres-item:nth-child(even){ margin-right:0; }
	.bloc-chiffres.alt .bloc-chiffres-item::before{
		margin-right:1.5rem;
		margin-left:1.5rem;
	}
	.bloc-chiffres.alt .bloc-chiffres-image{
		width:6rem;
		height:6rem;
	}
}
@media (min-width:981px){
	.alt > .bloc-chiffres-container{
		display:flex;
		align-items:center;
		justify-content:center;
	}
	.alt > .bloc-chiffres-container > *{ flex:0 0 50%; }
	.bloc-chiffres.alt .bloc-chiffres-titre{
		padding-right:3rem;
		direction:rtl;
		text-align:right;
	}
	.bloc-chiffres.alt .bloc-chiffres-titre::after{
		margin-right:calc(33.33% - 0.5em);
		margin-left:calc(66.67% - 0.5em);
	}
}
@media (min-width:981px) and (max-width:1260px){
	.bloc-chiffres.alt .bloc-chiffres-titre{ flex:1 1 auto; }
	.bloc-chiffres.alt .bloc-chiffres-liste{ flex:0 0 540px; }
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active){
	/* Patch IE */
	.bloc-chiffres{ min-height:0; }
}

/* ACTUALITÉS (slider) ========================================================================= */
.bloc-actus-liste{ position:relative; }
.bloc-actus-titre{ margin-bottom:0; }
.bloc-actus-titre::after{ content:none; }
.bloc-actus-date{
	margin:0 0 3rem 0;
	color:#7b7b7b;
	font-size:1.6rem;
	font-style:italic;
	font-weight:300;
}
.bloc-actus-image{ background:no-repeat center center / cover #ccc; }
.bloc-actus.fond-gris .owl-nav{ background:#f8f8f8; }
.bloc-actus .owl-nav{
	position:absolute;
	background:#fff;
}
@media (min-width:981px){
	.bloc-actus-inner{
		display:flex;
		align-items:stretch;
		flex-direction:row-reverse;
		justify-content:center;
		height:850px;
	}
	.alt > .bloc-actus-inner{ flex-direction:row; }
	.bloc-actus-inner > *{
		flex:0 0 50%;
		width:50%;
		max-width:50%;
	}
	.bloc-actus-texte{
		display:flex;
		align-items:center;
		justify-content:flex-end;
	}
	.bloc-actus-texte-container{
		padding:7rem 0 0 0;
		margin:0 7rem 0 3rem;
	}
	.bloc-actus-item.alt .bloc-actus-texte{ justify-content:flex-start; }
	.bloc-actus-item.alt .bloc-actus-texte-container{
		margin-right:3rem;
		margin-left:7rem;
	}
	.bloc-actus-image{
		margin:0 0 50px 0;
		border-radius:0 0 0 150px;
	}
	.bloc-actus-item.alt .bloc-actus-image{ border-radius:0 0 150px 0; }
	.bloc-actus .owl-nav{
		bottom:50%;
		left:calc(50% - 5em);
		width:10em;
		height:10em;
		border-radius:0 3.6rem;
	}
	.bloc-actus .owl-nav button{ top:calc(50% - 2.5em); }
	.bloc-actus .owl-prev{ left:0; }
	.bloc-actus .owl-next{ right:0; }
}
@media (max-width:980px){
	.bloc-actus{ padding:3rem 0; }
	.bloc-actus-image{
		width:540px;
		height:300px;
		margin:0 auto 5rem auto;
		border-radius:3.6rem 0;
	}
	.bloc-actus .owl-nav{
		top:calc(300px - 4em);
		left:calc(50% - 7.5em);
		width:15em;
		height:7em;
		border-radius:0 3.6rem;
	}
	.bloc-actus .owl-nav button{ top:calc(50% - 2em); }
	.bloc-actus .owl-prev{ left:2.5em; }
	.bloc-actus .owl-next{ right:2.5em; }
}
@media (max-width:600px){
	.bloc-actus-image{ width:300px; }
}

/* ACTUALITÉS (liste) ========================================================================== */
.bloc-listeActus-liste{
	display:flex;
	align-items:stretch;
	align-content:flex-start;
	flex-wrap:wrap;
	justify-content:flex-start;
}
.bloc-listeActus-item{
	flex:1 1 100%;
	margin:4rem 0rem;
}
.bloc-listeActus-image{
	padding-top:100%;
	background:no-repeat center center / cover #ccc;
}
.bloc-listeActus-titre{
	margin-bottom:0.2em;
	font-size:2rem;
}
.bloc-listeActus-titre::after{ content:none; }
.bloc-listeActus-date{
	color:#7b7b7b;
	font-style:italic;
	font-weight:300;
}
.bloc-listeActus-date::after{
	margin-top:0.3em;
	font-size:4rem;
}
.bloc-listeActus-description{ margin:2rem 0 5rem 0; }
.bloc-listeActus-plus-bouton{
	display:block;
	position:relative;
	width:7rem;
	height:7rem;
	margin:10rem auto;
	box-shadow:0 0 0 10px #fff, 0 0 0 2px currentColor;
	border:1px solid currentColor;
	border-radius:50%;
	transition:box-shadow 0.3s ease-out;
}
.fond-gris .bloc-listeActus-plus-bouton{ box-shadow:0 0 0 10px #f8f8f8, 0 0 0 2px currentColor; }
.bloc-listeActus-plus-bouton:hover,
.bloc-listeActus-plus-bouton:focus{ box-shadow:0 0 0 2px #fff, 0 0 0 10px currentColor; }
.fond-gris .bloc-listeActus-plus-bouton:hover,
.fond-gris .bloc-listeActus-plus-bouton:focus{ box-shadow:0 0 0 2px #f8f8f8, 0 0 0 10px currentColor; }
.bloc-listeActus-plus-bouton::before,
.bloc-listeActus-plus-bouton::after{
	content:"";
	position:absolute;
	top:calc(50% - 0.4rem);
	left:calc(50% - 1.5rem);
	width:3rem;
	height:0.8rem;
	background:currentColor;
	transform-origin:center center;
}
.bloc-listeActus-plus-bouton::after{ transform:rotate(90deg); }
@media (max-width:600px){
	.bloc-listeActus-image{ border-radius:10rem 0; }
}
@media (min-width:601px){
	.bloc-listeActus-item{
		display:flex;
		align-items:stretch;
		flex-direction:column;
		justify-content:flex-start;
	}
	.bloc-listeActus-image{
		flex:0 0 auto;
		padding-top:66.67%;
	}
	.bloc-listeActus-texte{
		display:flex;
		align-items:stretch;
		flex:1 1 auto;
		flex-direction:column;
		justify-content:space-between;
	}
	.bloc-listeActus-texte > *{ flex:0 0 auto; }
	.bloc-listeActus-description{ flex:1 1 auto; }
}
@media (min-width:601px) and (max-width:980px){
	.bloc-listeActus-item{
		display:flex;
		align-items:stretch;
		flex-basis:calc(50% - 1.5rem);
		flex-direction:column;
		justify-content:flex-start;
		max-width:calc(50% - 1.5rem);
		margin:8rem 0 4rem 0;
	}
	.bloc-listeActus-item:nth-child(odd){ margin-right:3rem; }
	:nth-child(odd) > .bloc-listeActus-image{ border-top-left-radius:6rem; }
	:nth-child(even) > .bloc-listeActus-image,
	:last-child > .bloc-listeActus-image{ border-bottom-right-radius:6rem; }
}
@media (min-width:981px){
	.bloc-listeActus-item{
		flex-basis:calc(33.333% - 3rem);
		max-width:calc(33.333% - 3rem);
		margin:8rem 1.5rem 4rem 1.5rem;
	}
	.bloc-listeActus-image{ padding-top:56.25%; }
	:nth-child(3n+1) > .bloc-listeActus-image{ border-top-left-radius:10rem; }
	:nth-child(3n+3) > .bloc-listeActus-image,
	:last-child > .bloc-listeActus-image{ border-bottom-right-radius:10rem; }
}

/* VIDÉO ======================================================================================= */
.bloc-video{ padding:6rem 0 6rem 0; }
.bloc-video video { margin: 0 auto; outline: none; cursor: pointer; object-fit: cover; width:100%; max-width: 700px;}


/* TEXTE EN COLONNES =========================================================================== */
.bloc-texte{ padding:16rem 0; }
.bloc-texte-container{ max-width:1000px; }
.bloc-texte-titre{
	width:80%;
	min-width:300px;
	margin-right:auto;
	margin-left:auto;
	text-transform:none;
}
.bloc-texte-contenu{
	text-align:justify;

	column-count:1;
	column-gap:3rem;
}
@media (min-width:601px){
	.colonnes-2 .bloc-texte-contenu,
	.colonnes-3 .bloc-texte-contenu{ column-count:2; }
}
@media (min-width:981px){
	.bloc-texte-contenu{ font-size:2rem; }
	.colonnes-3 .bloc-texte-contenu{ column-count:3; }
}

/* BLOC INTRODUCTIF ============================================================================ */
.bloc-intro{ padding:9rem 0; }
.bloc-intro-container > *{ flex:1 1 50%; }
.bloc-intro-gauche{ margin-bottom:7rem; }
@media (min-width:981px){
	.bloc-intro-container{
		display:flex;
		align-items:stretch;
		justify-content:center;
	}
	.bloc-intro-gauche{
		display:flex;
		align-items:flex-end;
		flex-direction:column;
		justify-content:space-between;
		margin:0;
		text-align:right;
	}
	.bloc-intro-gauche > *{ max-width:100%; }
	.bloc-intro-gauche h1::after,
	.bloc-intro-gauche .h1::after,
	.bloc-intro-gauche h2::after,
	.bloc-intro-gauche .h2::after,
	.bloc-intro-gauche h3::after,
	.bloc-intro-gauche .h3::after{
		margin-right:0;
		margin-left:auto;
	}
	.bloc-intro-droite{
		position:relative;
		margin-left:6rem;
		font-size:2rem;
		text-align:left;
	}
	.bloc-intro-droite::before{
		content:"";
		position:absolute;
		top:0;
		bottom:0;
		left:-3rem;
		border-left:1px solid currentColor;
	}
}

/* FACEBOOK ==================================================================================== */
.bloc-facebook{ padding:7rem 0; }
.bloc-facebook-titre{ font-weight:300; }
.bloc-facebook-icone{ margin:0 auto 2rem auto; }
.bloc-facebook-icone path{ fill:currentColor; }
.bloc-facebook-widget{ margin:3rem auto; }

/* CITATION ==================================================================================== */
.bloc-citation{ padding:7rem 0; }
.bloc-citation-citation{
	position:relative;
	order:2;
}
.bloc-citation-citation blockquote{
	position:relative;
	margin:1.4em 0;
	font-size:5rem;
	font-weight:900;
	line-height:1.2;
}
.bloc-citation-citation blockquote::before,
.bloc-citation-citation blockquote::after{
	content:"‘‘";
	display:block;
	position:absolute;
	left:calc(50% - 0.5em);
	width:1em;
	font-weight:900;
	text-align:center;
}
.bloc-citation-citation blockquote::before{
	top:-0.6em;
	font-size:3.4em;
}
.bloc-citation-citation blockquote::after{
	bottom:-0.8em;
	font-size:7.4rem;
	transform:rotate(0.5turn);
	transform-origin:center center;
}
@media (min-width:981px){
	.bloc-citation{
		display:flex;
		align-items:center;
		flex-direction:column;
		justify-content:center;
		min-height:700px;
	}
	.bloc-citation-container{
		display:flex;
		align-items:center;
		flex-direction:row-reverse;
		justify-content:center;
	}
	.alt > .bloc-citation-container{ flex-direction:row; }
	.bloc-citation-container > *{ flex:1 1 50%; }
	.bloc-citation-container::before{
		content:"";
		display:block;
		align-self:stretch;
		flex:0 0 0px;
		order:1;
		margin:0 9rem;
		border-left:2px solid currentColor;
	}
}
@media (max-width:600px), (min-width:981px) and (max-width:1480px){
	.bloc-citation-citation blockquote{ font-size:4rem; }
}
@media (max-width:980px){
	.bloc-citation-citation::before,
	.bloc-citation-citation::after{
		content:"";
		display:block;
		position:absolute;
		bottom:-3.4rem;
		width:calc(50% - 2rem - 20%);
		border-bottom:2px solid currentColor;
	}
	.bloc-citation-citation::before{ left:20%; }
	.bloc-citation-citation::after{ right:20%; }
	.bloc-citation-citation blockquote{ margin-bottom:2em; }
}

/* LISTE ======================================================================================= */
.bloc-liste-slider{ position:relative; }
.bloc-liste-slider .owl-nav{
	position:absolute;
	bottom:0;
	z-index:2;
}
.bloc-liste-slider .owl-nav button{
	bottom:0;
	height:100%;
	color:#000;
}
.bloc-liste-slider-item{ background:no-repeat center center / cover #ccc; }
.bloc-liste-texte-container{
	padding:3rem 0;
	text-align:left;
}
.bloc-liste-texte-inner{
	display:flex;
	align-items:center;
	flex-direction:column;
	justify-content:center;
}
.bloc-liste-titre{
	width:100%;
	text-transform:none;
}
.bloc-liste-titre::after{ content:none; }
.bloc-liste-texte ul,
.bloc-liste-texte ol{
	font-size:2.4rem;
	line-height:1.1;
}
@media (min-width:981px){
	.bloc-liste{
		display:flex;
		align-items:stretch;
		flex-direction:row-reverse;
		justify-content:flex-end;
		min-height:70rem;
	}
	.bloc-liste.alt{ flex-direction:row; }
	.bloc-liste > *{
		display:flex;
		align-items:center;
		flex:0 0 50%;
		justify-content:flex-end;
	}
	.bloc-liste-slider .owl-stage-outer,
	.bloc-liste-slider .owl-stage-outer *{ height:100%; }
	.bloc-liste-slider .owl-nav{
		left:0;
		width:11em;
		height:14rem;
		padding-right:1em;
	}
	.bloc-liste.alt .owl-nav{
		right:20px;
		left:auto;
		padding-right:0em;
		padding-left:1em;
	}
	.bloc-liste-slider .owl-prev{ right:calc(50% + 1em); }
	.bloc-liste-slider .owl-next{ left:calc(50% - 1em); }
	.bloc-liste.alt .owl-prev{ right:calc(50% - 1em); }
	.bloc-liste.alt .owl-next{ left:calc(50% + 1em); }
	.bloc-liste-slider .owl-nav button::before{
		bottom:calc(50% - 2em);
		left:calc(50% - 2em);
		width:4em;
		height:4em;
	}
	.bloc-liste-texte{
		position:relative;
		padding:6rem 0 6rem 0;
	}
	.alt > .bloc-liste-texte{ justify-content:flex-start; }
	.bloc-liste-texte-container{
		position:relative;
		z-index:1;
		margin-left:auto;
		background:#fff;
	}
	.bloc-liste.fond-gris .bloc-liste-texte-container{ background:#f8f8f8; }
	.bloc-liste:not(.alt) .bloc-liste-texte-container{ padding-right:9rem; }
	.bloc-liste.alt .bloc-liste-texte-container{
		padding-left:9rem;
		margin-right:auto;
		margin-left:0;
	}
	.bloc-liste:not(.alt) .bloc-liste-texte-inner{ align-items:flex-end; }
	.bloc-liste.alt .bloc-liste-texte-inner{ align-items:flex-start; }
	.bloc-liste-texte::before{
		content:"";
		position:absolute;
    top: 3rem;
    bottom: 3rem;
		z-index:0;
		width:17rem;
		border:1px solid currentColor;
	}
	.bloc-liste:not(.alt) .bloc-liste-texte::before{
		right:0;
		border-right:none;
	}
	.bloc-liste.alt .bloc-liste-texte::before{
		left:0;
		border-left:none;
	}
	.bloc-liste:not(.alt) .bloc-liste-titre{ text-align:right; }
}
@media (min-width:1261px){
	.bloc-liste:not(.alt) .bloc-liste-texte-container{ padding-right:14rem; }
	.bloc-liste.alt .bloc-liste-texte-container{ padding-left:14rem; }
	.bloc-liste-texte::before{ width:22rem; }
}
@media (min-width:1481px){
	.bloc-liste:not(.alt) .bloc-liste-texte-container{ padding-right:18rem; }
	.bloc-liste.alt .bloc-liste-texte-container{ padding-left:18rem; }
	.bloc-liste-texte::before{ width:26rem; }
}
@media (max-width:980px){
	.bloc-liste-titre{ text-align:center; }
	.bloc-liste-slider{
		width:540px;
		margin:3rem auto 0 auto;
	}
	.bloc-liste-slider-item{ height:30rem; }
	.bloc-liste-slider .owl-nav{
		left:calc(50% - 6em);
		width:12em;
		height:7em;
	}
	.bloc-liste-slider .owl-prev{ right:50%; }
	.bloc-liste-slider .owl-next{ left:50%; }
}
@media (max-width:600px){
	.bloc-liste-slider{ width:300px; }
}

/* CARTE ======================================================================================= */
.bloc-carte-contenu{
	color:#fff;
	font-size:2rem;
	background:#28363f;
}
.bloc-carte-contenu-inner{
	padding:7rem 10rem;
	margin:0 auto;
}
.bloc-carte-titre{
	margin:2rem 0 0 0;
	font-size:7rem;
}
.bloc-carte-soustitre{
	font-size:2.2rem;
	font-weight:300;
}
.bloc-carte-titre::after{ margin-top:0.4em; }
.bloc-carte-filtre{
	padding:4rem;
	margin:6rem auto;
	border:1px solid currentColor;
}
.bloc-carte-filtre-titre{
	margin:0 0 4rem 0;
	color:#fff;
	font-weight:900;
	text-transform:uppercase;
}
.bloc-carte-filtre-liste{
	display:flex;
	align-items:baseline;
	align-content:flex-start;
	flex-wrap:wrap;
	justify-content:space-between;
	width:calc(100% + 1em);
	margin:0 -1em 0 0;
	font-weight:300;
}
.bloc-carte-filtre-item{
	margin:0 1em 0 0;
	color:#fff;
	text-align:left;
	text-decoration:none;
}
.bloc-carte-filtre-item::before{
	content:"";
	display:inline-block;
	width:0.6em;
	height:0.6em;
	margin:0 0.4em 0 0;
	box-shadow:inset 0 0 0 -1px #fff, inset 0 0 0 -0.1em currentColor;
	border:1px solid currentColor;
	border-radius:50%;
	transition:box-shadow 0.3s ease-out;
}
.bloc-carte-filtre-item:hover::before,
.bloc-carte-filtre-item:focus::before{ box-shadow:inset 0 0 0 2px #fff, inset 0 0 0 -0.1em currentColor; }
.bloc-carte-filtre-item.active::before{ box-shadow:inset 0 0 0 2px #fff, inset 0 0 0 0.3em currentColor; }
.bloc-carte-nom{
	order:-1;
	margin:0 0 0.5em 0;
	font-size:2.4rem;
	text-transform:uppercase;
}
.bloc-carte-adresse{ color:#fff; }
.bloc-carte-adresse address{
	margin:0 0 0.5em 0;
	font-style:normal;
}
.bloc-carte-tel{
	font-size:2.4rem;
	font-weight:700;
	text-decoration:none;
}
.bloc-carte-carte > *{
	/* Potentiellement à adapter selon le système de cartographie utilisé */
	display:block;
	width:100%;
	height:100%;
	min-height:500px;
}
@media (max-width:600px){
	.bloc-carte-contenu-inner{ padding:3rem; }
	.bloc-carte-titre{ font-size:4rem; }
	.bloc-carte-filtre{
		padding:3rem 0;
		margin:3rem auto;
		border-right:none;
		border-left:none;
	}
}
@media (min-width:981px) and (max-width:1260px){
	.bloc-carte-contenu{ max-width:450px; }
	.bloc-carte-contenu-inner{ padding:7rem 4rem; }
}
@media (min-width:1261px) and (max-width:1480px){
	.bloc-carte-contenu{ max-width:540px; }
	.bloc-carte-contenu-inner{ padding:7rem 7rem; }
}
@media (min-width:1481px){
	.bloc-carte-contenu{ max-width:630px; }
}
@media (min-width:981px){
	.bloc-carte{
		display:flex;
		align-items:stretch;
		justify-content:center;
	}
	.bloc-carte-contenu{ flex:0 0 auto; }
	.bloc-carte-carte{ flex:1 1 auto; }
}
@media (min-width:601px) and (max-width:980px), (min-width:1261px){
	.bloc-carte-data{
		/*display:flex;
		align-items:center;
		justify-content:center;*/
		margin-top: 30px;
	}
	.bloc-carte-nom{
		margin-bottom:0;
		text-align:center;
	}
	.bloc-carte-adresse{ text-align:center; margin-top: 30px; }
}

/* FORMULAIRE ================================================================================== */
.bloc-form{ padding:2rem 0 6rem 0; }
.bloc-form-surtitre{
	margin:1em 0 -1em 0;
	font-size:2rem;
	font-weight:300;
	text-transform:uppercase;
}
.bloc-form-cadre{
	width:80%;
	max-width:1000px;
	min-width:300px;
	margin:6rem auto 2.7rem auto;
	border:1px solid currentColor;
}
.bloc-form-titre,
.bloc-form-submit{
	display:inline-block;
	max-width:calc(100% - 6rem);
	padding:0 0.5em;
	background:#fff;
}
.fond-gris .bloc-form-submit,
.fond-gris .bloc-form-titre{ background-color:#f8f8f8; }
.bloc-form-titre{
	margin:-0.5em auto 1em auto;
	color:#000;
}
.bloc-form-submit{
	margin:0rem auto;
	transform:translateY(50%);
}
.bloc-form-submit > *{ margin:0; }
.bloc-form-inner{
	width:80%;
	max-width:650px;
	min-width:300px;
	margin:2rem auto;
}
@media (min-width:981px){
	.bloc-form-ligne{
		display:flex;
		align-items:stretch;
		justify-content:space-between;
	}
	.bloc-form-ligne > *{ flex:1 1 100%; }
	.bloc-form-ligne > *:not(:first-child){ margin-left:10%; }
}
@media (max-width:600px){
	.bloc-form-cadre{ border:none; }
}
/* Champs */
[type="text"],
[type="tel"],
[type="email"],
textarea{
	display:block;
	width:100%;
	height: 150px;
	padding:calc((5rem - 2*1px - 1.4em)*0.5) 0; /* hauteur - 2*bordure - line-height */
	margin:1rem 0;
	color:#000;
	font-family:inherit;
	font-size:2rem;
	font-weight:300;
	line-height:1.4;
	-webkit-appearance:none;
	   -moz-appearance:none;
	        appearance:none;
	background:none;
	border-top:none;
	border-right:none;
	border-left:none;
	border-bottom-style:solid;
	border-bottom-width:1px;
}
[type="text"],
[type="tel"],
[type="email"]{ height:5rem; }
.champ-file{
	display:inline-block;
	position:relative;
	min-width:4em;
	margin:1rem;
	overflow:hidden;
	font-size:1.6rem;
	line-height:1;
	text-align:center;
	vertical-align:middle;
	cursor:pointer;
}
.champ-file input{
	position: absolute;
	top: 16px;
	/* right: -15px; */
	bottom: 0;
	/* left: 0; */
	background: #888;
	cursor: default;
	opacity: 0;
	height: 54px;
	display: block;
}
.champ-file-valeur{
	padding:1rem;
	font-weight:600;
	text-transform:uppercase;
	background-color:rgba(0,0,0,0);
	border-style:solid;
	border-width:1px;
	border-radius:2em;
	transition:0.3s ease-out;
	transition-property:color,border-color,background-color;
}
.champ-file-input:hover + .champ-file-valeur,
.champ-file-input:focus + .champ-file-valeur{
	color:#fff;
	background-color:rgba(0,0,0,1);
	border-color:#000;
}
.champ-file-input:valid + .champ-file-valeur::after{
	content:"✔";
	display:inline-block;
	position:relative;
	top:-0.2em;
	margin:0 0 0 0.5em;
	color:#888;
	font-size:0.7em;
	font-weight:900;
	vertical-align:middle;
	opacity:0.8;
}


    /*============*\
====#    HEADER    #===============================================================================
    \*============*/
.site-header-inner{
	display:flex;
	align-items:center;
	justify-content:center;
	padding:3rem;
	margin:0 auto;
}
.site-header-inner > *{
	flex:0 0 auto;
	margin:0 0 0 3rem;
}
@media (max-width:980px){
	.site-header-inner{
		flex-wrap:wrap;
		justify-content:space-between;
		width:480px;
		padding:2rem 0;
	}
}
@media (max-width:600px){
	.site-header-inner{
		width:300px;
		padding-top:1rem;
	}
}

/* Logo */
.site-header-logo,
.site-footer-logo{
	width:14%;
	max-width:230px;
	min-width:150px;
	margin-left:0;
}
.site-header-logo--lien,
.site-footer-logo--lien,
.site-header-logo--image,
.site-footer-logo--image{
	display:block;
	width:100%;
	height:auto;
}
@media (max-width:600px){
	.site-header-logo{
		order:1;
		width:100%;
		max-width:none;
		margin:1rem auto;
	}
	.site-header-logo--lien,
	.site-header-logo--image{
		max-width:230px;
		margin:0 auto;
	}
}

/* Menus */
.site-header-menus{
	flex:0 1 auto;
	font-size:1.6rem;
	font-weight:700;
	text-transform:uppercase;
}
@media (min-width:1261px){
	.site-header-menus-box ul{
		display:flex;
		align-items:center;
		flex-wrap:wrap;
		justify-content:flex-end;
		margin:0
	}
	.site-header-menus-box li{
		display:flex;
		position:relative;
		align-items:center;
		justify-content:center;
		z-index:1;
		border-radius:2.1rem 0;
	}
	.site-header-menu-principal-item:not(:first-child)::before{
		content:"";
		width:0;
		height:1em;
		margin:0;
		border-left:1px solid currentColor;
	}
	.site-header-menus-box a{
		display:block;
		padding:0.5em 0.6em;
		line-height:1;
		text-decoration:none;
		transition:color 0.3s ease-out;
		font-size: 14px;
	}
	.site-header-menu-principal-lien{ color:#000; }
	.site-header-menu-principal-lien:hover,
	.site-header-menu-principal-lien:focus{ color:inherit; }
	.site-header-menus-box li.active::before{
		content:"";
		position:absolute;
		top:0;
		right:-0.1px;
		bottom:0;
		left:0;
		width:auto;
		height:auto;
		background:currentColor;
		border:none;
		border-radius:2.1rem 0;
	}
	.active + .site-header-menu-principal-item:not(:first-child)::before{ display:none; }
	.site-header-menus-box .active a{
		position:relative;
		z-index:2;
		color:#fff;
	}
	.site-header-menus-toggle,
	.site-header-menus-close{ display:none; }
}
@media (max-width:1260px){
	.site-header-menus-toggle{
		display:block;
		display:flex;
		align-items:center;
		justify-content:center;
		padding:2rem 3rem 2rem 4rem;
		/*background: #019DE0;*/
	}
	.site-header-menus-toggle span{ color:#fff; }
	.site-header-menus-toggle::before,
	.site-header-menus-toggle::after{
		content:"";
		position:absolute;
		top:calc(50% - 2.1rem);
		left:-1.1rem;
	}
	.site-header-menus-toggle::before{
		width:4.2rem;
		height:4.2rem;
		background:#fff;
		border-radius:50%;
	}
	.site-header-menus-toggle::after{
		width:1em;
		height:0.2em;
		margin:1.9rem 1.1rem;
		background:currentColor;
		box-shadow:0 -0.4em 0 0 currentColor, 0 0.4em 0 0 currentColor;
	}
	.site-header-menus-box,
	.site-header-menus-close{
		position:fixed;
		top:0;
		left:0;
		transform:translateX(-100%);
		transition:transform 0.3s ease-out;
	}
	.site-header-menus-box{
		bottom:0;
		z-index:9;
		width:400px;
		max-width:100vw;
		padding:3rem 0;
		overflow:auto;
		text-align:left;
		background:rgba(0,0,0,0.85);
	}
	.site-header-menus-close{
		z-index:9;
		width:3rem;
		height:3rem;
	}
	.site-header-menus-close::before,
	.site-header-menus-close::after{
		content:"";
		position:absolute;
		top:50%;
		left:50%;
		width:2.5rem;
		height:0.4rem;
		margin:-0.2rem -1.25rem;
		background:#fff;
		transform-origin:center center;
	}
	.site-header-menus-close::before{ transform:rotate(-45deg); }
	.site-header-menus-close::after{ transform:rotate(45deg); }
	.site-header-menus-box.active,
	.site-header-menus-box.active + .site-header-menus-close{ transform:translateX(0%); }
	.site-header-menus-toggle.active{ background-color:#000; }
	.site-header-menus-box ul{
		display:block;
		margin:0;;
	}
	.site-header-menus-box a{
		display:block;
		padding:0.8em 3rem;
		line-height:1;
		text-decoration:none;
	}
	.site-header-menus-box .active a{
		color:#fff;
		background:#000;
	}
}
@media (max-width:980px){
	.site-header-menus{
		order:2;
		width:100%;
		margin:1rem auto 0 auto;
	}
}
@media all and (-ms-high-contrast: none) and (min-width:1261px) and (max-width:1480px), (-ms-high-contrast: active) and (min-width:1261px) and (max-width:1480px){
	/* Patch IE */
	.site-header-menus{ max-width:600px; }
}
@media all and (-ms-high-contrast: none) and (min-width:1481px), (-ms-high-contrast: active) and (min-width:1481px){
	/* Patch IE */
	.site-header-menus{ max-width:700px; }
}

ul.site-header-menu-principal {
	position: relative;
	z-index: 2;
}
ul.site-header-menu-principal li {
	position: relative;
	transition: all 0.5s;
}
ul.site-header-menu-principal li ul.submenu {
	display: none;
	position: absolute;
	top: 50px;
	opacity: 0;
	left: 0;
	padding: 15px 5px;
	z-index: 999;
	background: #F2F2F2;
}
ul.site-header-menu-principal li ul.submenu li {
	min-width: 190px;
}
ul.site-header-menu-principal li ul.submenu li a {
	color: #000;
	text-align: left;
	width: 100%;
}
ul.site-header-menu-principal li ul.submenu li a:hover {
	color: #019DE0;
}
ul.site-header-menu-principal li:hover>ul.submenu {
	display:block;
	top: 24px;
	opacity: 1;
}

/* Espace client */
@media (min-width:1261px){
	.site-header-compte--bouton{ white-space:nowrap; }
	.site-header-compte--bouton br{ display:none; }
}
@media (max-width:980px){
	.site-header-compte{ margin-left:auto; }
}
@media (max-width:600px){
	.site-header-compte{ margin-left:0; }
}

/* Réseaux sociaux (header/footer) */
.social-liste{
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:2.4em;
}
.social-item{
	display:flex;
	align-items:center;
	flex:0 0 auto;
	justify-content:center;
}
.social-item:not(:first-child)::before{
	content:"";
	display:inline-block;
	width:0;
	height:1em;
	margin:0 0.5em;
	vertical-align:middle;
	border-left:2px solid currentColor;
}
.social-lien{
	display:inline-block;
	color:inherit;
	text-decoration:none;
	vertical-align:middle;
	transition:color 0.3s ease-out;
}
.social-lien svg{ display:block; }
.social-lien svg *{ fill:currentColor; }
.site-header-social .social-lien:hover,
.site-header-social .social-lien:focus{ color:#000; }


    /*============*\
====#    FOOTER    #===============================================================================
	\*============*/
.site-footer{
	padding:4rem 0;
	color:#7b7b7b;
}
.site-footer a{
	color:inherit;
	text-decoration:none;
}
.site-footer-inner{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	justify-content:center;
}
.site-footer-inner > *{
	flex:0 1 auto;
	margin:1rem 1.5rem;
}
.site-footer-contact{ font-size:1.8rem; }
.site-footer-social{
	padding:1rem 1.5rem;
	color:#fff;
	background:#7b7b7b;
	border-radius:3rem 0;
}
.site-footer-social .social-item:not(:first-child)::before{
	height:0.5em;
	margin:0 0.25em;
	border-color:#fff;
}
.site-footer-liens{
	flex:1 1 100%;
	width:100%;
	font-size:1.4rem;
}
.site-footer-liens a:not(:first-child)::before{
	content:"|";
	margin:0 0.5em;
}


    /*==================*\
====#    PAGE EMPLOIS    #=========================================================================
	\*==================*/

.offres-emploi{
	display:flex;
	align-items:stretch;
	flex-direction:row-reverse;
	justify-content:center;
	overflow:hidden;
}

/* Liste des offres */
.offres-liste{
	flex:0 0 auto;
	min-width:320px;
	box-shadow:0 0 10rem 0 rgba(0,0,0,0.1);
	border-right:1px solid currentColor;
}
.offres-liste-titre,
.offres-liste-item-inner{ max-width:400px; }
.offres-liste-titre{
	padding:0 3rem;
	margin:7rem auto;
	color:#000;
	font-size:3rem;
}
.offres-liste-item{
	display:block;
	position:relative;
	padding:4rem 3rem;
	font-size:1.6rem;
	font-weight:300;
	text-align:left;
	text-decoration:none;
}
.offres-liste-item::before{
	content:"";
	position:absolute;
	top:0;
	bottom:0;
	left:0;
	width:10px;
	background:currentColor;
	transform:translateX(-100%);
	transition:transform 0.3s ease-out;
}
.offres-liste-item:hover::before,
.offres-liste-item:focus::before{ transform:translateX(0%); }
.offres-liste-item:nth-child(even){ background-color:#f8f8f8; }
.offres-liste-item-inner{ margin:0 auto; }
.offres-liste-date{
	color:#7b7b7b;
	font-style:italic;
}
.offres-liste-nom{
	font-size:3rem;
	font-weight:900;
	line-height:1;
	text-transform:uppercase;
}
.offres-liste-datas{ color:#333; }
.offres-liste-datas > *{
	display:inline-block;
	margin:0 1em 0 0;
}
.offres-liste-datas > *::before{
	display:inline-block;
	height:1em;
	margin:0 0.2em 0.2em 0;
	vertical-align:text-bottom;
}
.offres-liste-type::before{ content:url("design/icone-feuille.svg"); }
.offres-liste-temps::before{ content:url("design/icone-sablier.svg"); }
@media (min-width:1481px){
	.offres-liste{
		width:37.5%;
		max-width:700px;
	}
}
@media (min-width:1261px){
	.offres-liste{
		width:30%;
		max-width:700px;
	}
}

/* Détail d'une offre */
.offre{
	flex:1 1 auto;
	text-align:left;
}
.offre-inner{ padding:7rem 10% 5rem 7.5%; }
.offre-titre{ margin:0; }
.offre-titre::after{ content:none; }
.offre-date{
	margin:0.5em 0 0 0;
	color:#7b7b7b;
	font-size:2rem;
	font-style:italic;
	font-weight:300;
}
.offre-date::after{ margin:0.4em auto 0.4em 0; }
.offre-description{
	flex:1 1 auto;
	margin:0 3rem 0 0;
	font-size:2rem;
}

.offre-aside{ text-align:center; }
.offre-infos{
	padding:3rem;
	margin:0 0 2rem 0;
	background:currentColor;
	border-radius:0 10rem 0 0;
}
.offre-infos > *{ color:#fff; }
.offre-infos-titre::after{
	font-size:4rem;
	background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 86 19'%3E%3Cpath d='m2.51 2.68c0.14 0.11 35.09 30.63 80.99 0' fill='none' stroke='%23fff' stroke-linecap='round' stroke-width='5'/%3E%3C/svg%3E");
}
.offre-infos-item{
	position:relative;
	padding:1em 0;
	font-size:1.8rem;
	font-weight:300;
}
.offre-infos-item:not(:first-child)::before{
	content:"";
	display:block;
	position:absolute;
	top:0;
	left:calc(50% - 3rem);
	width:6rem;
	margin:0 auto;
	border-bottom:1px solid #fff;
}
.offre-infos-item:first-child{ padding-top:0; }
.offre-infos-item:last-child{ padding-bottom:0; }
.offre-infos-item strong{ font-weight:600; }

.offre-form{
	padding:3rem;
	background:#f8f8f8;
	border-radius:0 0 10rem 0;
}
.offre-form-titre::after{ font-size:4rem; }

@media  (min-width:981px) and (max-width:1260px), (min-width:1481px){
	.offre-contenu{
		display:flex;
		align-items:flex-start;
		justify-content:space-between;
	}
	.offre-description{ width:400px; }
	.offre-titre,
	.offre-date{ margin-right:340px; }
	.offre-aside{
		flex:0 0 340px;
		width:340px;
	}
}
@media (min-width:601px) and (max-width:980px), (min-width:1261px) and (max-width:1480px){
	.offre-aside{
		display:flex;
		align-items:stretch;
		justify-content:space-between;
		margin:7rem auto 0 auto;
	}
	.offre-infos{
		flex:0 0 40%;
		margin:0 3rem 0 0;
		border-radius:10rem 0 0 0;
	}
	.offre-form{ flex:1 1 auto; }
	.offre-description{ margin-right:0; }
}
@media (max-width:1260px){
	.offres-emploi{ flex-direction:column; }
	.offre-inner{ padding:7rem 5% 5rem 5%; }
	.offres-liste{
		padding-bottom:4rem;
		border-right:none;
		border-top-style:solid;
		border-top-width:1px;
	}
}
@media (max-width:600px){
	.offre-titre{ font-size:3rem; }
	.offre-description{ font-size:1.6rem; }
	.offre-infos{
		margin-top:4rem;
		border-radius:10rem 0 0 0;
	}
	.offres-liste-titre{ margin-bottom:1rem; }
	.offres-liste-item{ padding:2rem 3rem; }
}
@media (min-width:601px) and (max-width:1260px){
	.offres-liste-titre{ margin-bottom:2rem; }
	.offres-liste-liens{
		display:flex;
		align-items:stretch;
		align-content:flex-start;
		flex-wrap:wrap;
		justify-content:center;
	}
	.offres-liste-item,
	.offres-liste-item:nth-child(even){
		flex:0 0 auto;
		width:320px;
		padding:3rem;
		margin:2rem;
		overflow:hidden;
		background:#fff;
		box-shadow:0 0 3rem 0 rgba(0,0,0,0.15);
	}
}
.offre-form-submit .bouton-plus{ margin:4rem auto 0 auto; }


    /*=====================*\
====#    PAGE ACTUALITÉS    #======================================================================
    \*=====================*/

.actu-container{ padding: 5rem 0 5rem 0; }
.actu-header::after{ margin:3rem auto; }
.actu-titre{ margin-bottom:0; }
.actu-titre::after{ content:none; }
.actu-date{
	margin:0.5em 0 0 0;
	color:#7b7b7b;
	font-size:2rem;
	font-style:italic;
	font-weight:300;
}
.actu-partage{
	margin:7rem 0 0 0;
	font-size:2rem;
	font-weight:600;
	text-transform:uppercase;
}
.actu-partage > *{ vertical-align:middle; }
.actu-partage-liens{
	display:inline-flex;
	margin:0 0 0 0.5em;
}
.actu-partage-liens .social-item:not(:first-child)::before{ font-size:0.5em; }
@media (min-width:981px){
	.actu{
		display:flex;
		align-items:stretch;
		justify-content:center;
	}
	.actu > *{ flex:0 0 50%; }
	.actu-contenu{
		align-self:center;
		order:1;
	}
	.actu-container{ padding-left:4rem; }
}
@media (min-width:1261px){
	.actu-container{ padding-left:7rem; }
}
@media (min-width:1481px){
	.actu-container{ padding-left:10rem; }
}

.actu-slider{
	position:relative;
	/* min-height:50vw; */
}
.actu-slider .owl-stage-outer,
.actu-slider .owl-stage-outer *{ height:100%; }
.actu-slider-item{
	display:block;
	background:no-repeat center center / cover #ccc;
}
.actu-slider .owl-nav{
	position:absolute;
	right:-1px;
	bottom:0;
	width:12em;
	height:10em;
	background:#fff;
	border-radius:5em 0 0 0;
}
.actu-slider .owl-prev{ right:calc(50% - 1em); }
.actu-slider .owl-next{ left:calc(50% + 1em); }
@media (max-width:980px){
	.actu-slider{ min-height:0; }
	.actu-slider-item{ padding-top:100%; }
	.actu-slider{
		width:540px;
		margin:0 auto 4rem auto;
	}
	.actu-slider .owl-nav{
		right:calc(50% - 7em);
		bottom:-4em;
		width:14em;
		height:8em;
		border-radius:4em 0;
	}
	.actu-slider .owl-prev{ right:50%; }
	.actu-slider .owl-next{ left:50%; }
}
@media (max-width:600px){
	.actu-slider{ width:300px; }
}


    /*==================*\
====#    PAGE CONTACT    #=========================================================================
    \*==================*/
.contact-image{ background:no-repeat center center / cover #ccc; }
.contact-titre{ margin-bottom:3rem; }
.contact-texte{
	max-width:500px;
	margin:0 auto 4rem auto;
	font-weight:600;
}
.contact-coordonnees-item{
	display:flex;
	align-items:center;
	justify-content:flex-start;
	margin:0 0 3rem 0;
}
.contact-coordonnees-picto{
	display:flex;
	align-items:center;
	flex:0 0 5rem;
	justify-content:flex-end;
	width:5rem;
	margin:0 2rem 0 0;
}
.contact-coordonnees-picto svg{
	display:block;
	width:5rem;
	height:5rem;
}
.contact-coordonnees-data{
	flex:0 0 auto;
	font-size:2rem;
	font-weight:600;
	text-align:left;
}
.contact-coordonnees-data a{
	color:inherit;
	text-decoration:none;
}
.contact-form input,
.contact-form textarea{ border-color:#7b7b7b; }
.contact-form-submit{ margin-top:2rem; }
@media (min-width:981px){
	.contact{
		display:flex;
		align-items:stretch;
		justify-content:center;
	}
	.contact-container{ margin-left:11.5%; }
	.contact-image{
		flex:0 0 40%;
		order:-1;
		min-width:400px;
	}
	.contact-contenu{
		position:relative;
		flex:1 1 auto;
	}
	.contact-coordonnees{
		position:absolute;
		right:100%;
		bottom:0;
		padding:5rem 0 0 5rem;
		background:#fff;
	}
	.contact-coordonnees-data{ white-space:nowrap; }
}
@media (min-width:1261px){
	.contact-texte{ font-size:2rem; }
	.contact-coordonnees-data{ font-size:2.4rem; }
}
@media (min-width:601px) and (max-width:980px){
	.contact-coordonnees{
		display:flex;
		align-items:center;
		justify-content:center;
	}
	.contact-coordonnees-item{ margin:0 0 0 3rem; }
	.contact-coordonnees-item:first-child{ margin-left:0; }
	.contact-coordonnees-picto{
		width:4rem;
		margin-right:1rem;
	}
}

#loader {
	display:none;
	width:58px;
	margin: 15px auto;
}
#loadMore {
	cursor:pointer;
	color: #019DE0;
}

.strongSizes {
	font-size: 24px;
}

.slider-dates {
	position: relative;
}
.slider-dates .date {
	text-align: center;
	padding: 0 50px;
}
.slider-dates .owl-nav button {
	position: absolute;
	bottom: 50%;
	height: 5em;
	padding: 0;
	margin: 0;
	font-size: inherit;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: none;
	border: none;
	outline: none;
}
.slider-dates .owl-nav button.owl-prev {
	left: 0;
}
.slider-dates .owl-nav button.owl-next {
	right: 0;
}


.downloadCols {
	display: flex;
	flex-wrap: wrap;
}
.downloadCol {
	width: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.downloadCol:first-child {
	border-right: 2px solid #019DE0;
}
@media (max-width:768px){
	.downloadCol {
		width: 100%;
	}
	.downloadCol:first-child {
		border-right: 0;
	}
}


@media (min-width:980px) {
	body{
		padding-top: calc(66px + 3rem);
	}

	header.site-header {
		position: fixed;
		width: 100vw;
		left: 0;
	}
}



@media (min-width:1140px) {
	body{
		padding-top: calc(100px + 6rem);
	}
}