/*
	Theme Name: ACCN
	Theme URI: 
	Description: 
	Version: 2.0
	Author: WD 2023
	Author URI: https://www.workdivision.paris

*/

:root {

	--color-rose: rgba(232, 126, 176, 1);
	--color-bleu: rgba(0, 165, 174, 1);
	--color-vert: rgba(0, 135, 67, 1);
	--color-rouge: rgba(218, 0, 38, 1);
	--color-orange: rgba(255, 201, 0, 1);
	--color-noir: rgba(0, 0, 0, 1);
	--color-beige: rgba(247, 247, 247, 1);
	
	--color-gris: rgba(239, 239, 239, 1);
	--color-blanc: rgba(255, 255, 255, 1);

	--font-xs: 1.2rem;
	--lineh-xs: 1.6rem;

	--font-s: 1.5rem;
	--lineh-s: 2.2rem;
	
	--font-m: 1.8rem;
	--lineh-m: 2.6rem;

	--font-xm: clamp(2rem, 2.7vw + 1rem, 2.4rem);
	--lineh-xm: clamp(2.4rem, 2.7vw + 1.8rem, 2.7rem);

	--font-l: clamp(2.4rem, 2.7vw + 1rem, 3rem);
	--lineh-l: clamp(3rem, 2.7vw + 1.8rem, 3.6rem);

	--font-xl: clamp(3rem, 2.7vw + 1.8rem, 4rem);
	--lineh-xl: clamp(3.5rem, 2.7vw + 2.8rem, 4.5rem);

	--font-xxl: clamp(3.5rem, 13.3vw - 2.8rem, 5rem);
	--lineh-xxl: clamp(4rem, 16vw - 3rem, 6rem);
}

/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu7GxKOzY.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOmCnqEu92Fr1Mu4mxK.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfChc4EsA.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmWUlfBBc4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmYUtfChc4EsA.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/roboto/v30/KFOlCnqEu92Fr1MmYUtfBBc4.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* latin-ext */
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotoslab/v34/BngMUXZYTXPIvIBgJJSb6ufD5qW54A.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotoslab/v34/BngMUXZYTXPIvIBgJJSb6ufN5qU.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotoslab/v34/BngMUXZYTXPIvIBgJJSb6ufD5qW54A.woff2) format('woff2');
  unicode-range: U+0100-02AF, U+0304, U+0308, U+0329, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20CF, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Roboto Slab';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/robotoslab/v34/BngMUXZYTXPIvIBgJJSb6ufN5qU.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+2074, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: 'accn';
	src:  url('fonts/accn.woff?84bvhq') format('woff'),
		url('fonts/accn.svg?84bvhq#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  font-family: 'accn' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-nav:before {
  content: "\e906";
}
.icon-dl:before {
  content: "\e900";
}
.icon-fleche:before {
  content: "\e901";
}
.icon-mail:before {
  content: "\e902";
  font-size: 3rem!important;
}
.icon-x:before {
  content: "\e903";
}
.icon-linkedin:before {
  content: "\e904";
}
.icon-facebook:before {
  content: "\e905";
}


/*------------------------------------*\
    MAIN
\*------------------------------------*/

*,
*:after,
*:before{
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
html{
	font-size: 62.5%;
	scroll-behavior: smooth;
}
body{
    overflow-x: hidden;
    font-family: 'Roboto', serif;
    font-size: var(--font-m);
    line-height: var(--lineh-m);
    font-style: normal;
    font-weight: 400;
	color: var(--color-noir);
	letter-spacing: 0.02rem;
}
body > main{
	position: relative;
	min-height: 80vh;
}
/* clear */
.clear:before,
.clear:after{
    content:' ';
    display:table;
}

.clear:after{
    clear:both;
}
.clear{
    *zoom:1;
}
p{
	margin-bottom: 1.2rem;
}
p + ul{
	margin-top: -0.5rem;
}
img{
	max-width:100%;
	vertical-align:bottom;
	height: auto;
}
a{
	color: var(--color-noir);
	text-decoration:none;
	transition: background 300ms ease, color 400ms, opacity 300ms ease;
}
main p a{
	text-decoration:underline;
}
a:hover,
a:active{
	/*text-decoration: none;*/
	outline:0;
	opacity: .9;
}
:hover{
	transition: background 300ms ease, color 400ms, opacity 300ms ease;
	-webkit-transition: background 300ms ease, color 400ms, opacity 300ms ease;
	-moz-transition: background 300ms ease, color 400ms, opacity 300ms ease;
	-ms-transition: background 300ms ease, color 400ms, opacity 300ms ease;
	-o-transition: background 300ms ease, color 400ms, opacity 300ms ease;
}
a.nohover{
	text-decoration: none!important;
}

input:focus{
	outline:0;
	border:1px solid var(--color-noir);
}
h1{
	font-family: 'Roboto Slab', serif;
	font-size: var(--font-xl);
	line-height: var(--lineh-xl);
	text-wrap: balance;
}
h2{
	font-family: 'Roboto Slab', serif;
	font-size: var(--font-l);
	line-height: var(--lineh-l);
    font-weight: 400;
	text-wrap: balance;
}
h3{
	font-size: 2.3rem;
    font-weight: 400;
	line-height: 2.6rem;
}
h4{
	font-size: 2rem;
    font-weight: 400;
	line-height: 2.4rem;
}
sup{
    text-transform: lowercase!important;
}
ul{
	margin-left: 0;
	padding-left: 15px;
}
ul.no-list{
	list-style: none;
	padding-left: 0;
}
cite{
	display: block;
	padding-top: 5px;
	text-align: center;
	font-size: 1.2rem;
	font-weight:400;
	font-style: normal;
}
strong{
	font-weight: 700!important;
}
.b-bottom{
	border-bottom: 4px solid var(--color-noir);
}
.b-top{
	border-top: 4px solid var(--color-noir);
}
/*------------------------------------*\
    ANIMATIONS
\*------------------------------------*/

.fadeIn{
    animation-name: fadeIn;
}
.trans-all{
	transition: all 300ms ease;
}
.animated{
    animation-duration: 800ms;
}
.js-on .fade-r,
.js-on .fade-l,
.js-on .fade{
	opacity: 0;
}
.fadeIn{
    animation-name: fadeIn;
}
.trans-all{
	transition: all 300ms ease;
}
.animated{
    animation-duration: 500ms;
}
.js-on .fade.in{
	transform: translateY(30px);
	/*animation-delay: .3s;*/
	animation-duration: .5s;
	animation-name: fadeIn;
	animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}
.js-on .fade-l.in{
	transform: translateX(40px);
	animation-delay: .3s;
	animation-duration: .5s;
	animation-name: fadeInL;
	animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}
.js-on .fade-r.in{
	transform: translateX(-40px);
	animation-delay: .3s;
	animation-duration: .5s;
	animation-name: fadeInR;
	animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}
/*
.js-on .fade.in:nth-child(1) {
  animation-delay: 0s;
}
*/
.js-on .fade.in:nth-child(2) {
	animation-delay: 0.4s;
}
.js-on .fade.in:nth-child(3) {
	animation-delay: 0.5s;
}
.js-on .fade.in:nth-child(4) {
	animation-delay: 0.6s;
}
.js-on .fade.in:nth-child(5) {
	animation-delay: 0.7s;
}
.js-on .fade.in:nth-child(6) {
	animation-delay: 0.75s;
}
.js-on .fade.in:nth-child(7) {
	animation-delay: 0.8s;
}
.js-on .fade.in:nth-child(8) {
	animation-delay: 0.85s;
}
.js-on .fade.in:nth-child(9) {
	animation-delay: 0.9s;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
.fadeIn{
    -webkit-animation-name:fadeIn;
    animation-name:fadeIn
}
@keyframes fadeInT {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

@-webkit-keyframes fadeInT {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
  }
}
.fadeIn{
    -webkit-animation-name:fadeIn;
    animation-name:fadeIn
}
@keyframes fadeInL {
  0% {
    opacity: 0;
    transform: translateX(20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@-webkit-keyframes fadeInL {
  0% {
    opacity: 0;
    -webkit-transform: translateX(20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
.fadeInL{
    -webkit-animation-name:fadeInL;
    animation-name:fadeInL;
}

@keyframes fadeInR {
  0% {
    opacity: 0;
    transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@-webkit-keyframes fadeInR {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
.fadeInR{
    -webkit-animation-name:fadeInL;
    animation-name:fadeInL;
}

/*------------------------------------*\
    SPACES
\*------------------------------------*/
.pt15{
    padding-top: 0.5em;
}
.pt30{
    padding-top: 1.5em;
}
.pt50{
    padding-top: 2.5em;
}
.pt100{
    padding-top: 5em;
}
.pb0{
    padding-bottom: 0;
}
.pb15{
    padding-bottom: 0.5em;
}
.pb30{
    padding-bottom: 1.5em;
}
.pb50{
    padding-bottom: 2.5em;
}
.pb100{
    padding-bottom: 5em;
}
.mt5{
    margin-top: .5em;
}
.mt15{
    margin-top: 1em;
}
.mt30{
    margin-top: 1.5em;
}
.mt50{
    margin-top: 2.5em;
}
.mt100{
    margin-top: 5em;
}
.mb0{
	margin-bottom: 0;
}
.mb5{
	margin-bottom: .5em;
}
.mb15{
    margin-bottom: 1em;
}
.mb30{
    margin-bottom: 1.5em;
}
.mb50{
    margin-bottom: 2.5em;
}
.mb100{
    margin-bottom: 5em;
}
.pr0{
	padding-right: 0!important;
}
.pl0{
	padding-left: 0!important;
}
@media only screen and (min-width:992px){

	.pr50 {
		padding-right: 2em !important;
	  }
	.pr100 {
		padding-right: 4em !important;
	  }
	.pl50 {
		padding-left: 2em !important;
	  }
	.pl100 {
		padding-left: 4em !important;
	  }
	.plr5{
		padding-left: 5%!important;
		padding-right: 5%!important;
	}
	.plr10{
		padding-left: 10%! important;
		padding-right: 10%!important;
	}
	.plr15{
		padding-left: 15%! important;
		padding-right: 15%!important;
	}
}
/*------------------------------------*\
    BUTTONS
\*------------------------------------*/
.wp-block-button a,
.btn{
	position: relative;
	display: inline-block;
	padding: 1rem 0;
	font-size: var(--font-m);
	line-height: var(--lineh-m);
	font-weight: 700;
	overflow: hidden;
	text-decoration: none!important;
	font-family: 'Roboto Slab', serif;
}
.btn.btn-arrow::after{
	font-family: 'accn';
	content: "\e901";
	padding-left: 2rem;
	font-size: 0.9em;
}
.btn.btn-arrow-left::after{
	content: "";
}
.btn.btn-arrow-left{
	padding-left: 5em;
}
.btn.btn-arrow-left::before{
	font-family: 'accn';
	content: "\e901";
	display: block;
	transform: rotate(180deg);
	position: absolute;
	padding-left: 5em;
	left: 0;
}
.btn-small{
	padding: 1rem 2rem;
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
}
.btn:hover{
	text-decoration: none;
}
.btn-blanc{
	color: var(--color-blanc);
}
.btn-blanc:hover{
	color: var(--color-vert);
}
.btn-vert{
	color: var(--color-vert);
}
.btn-vert:hover{
	color: var(--color-noir);
}
.btn-rose{
	color: var(--color-rose);
}
.btn-orange{
	color: var(--color-orange);
}
.btn-orange:hover,
.btn-rouge:hover,
.btn-rose:hover{
	color: var(--color-noir);
}
.btn-rouge{
	color: var(--color-rouge);
}
.wp-block-button a,
.btn-noir{
	color: var(--color-noir);
	background: none!important;
}
.btn-orange:hover{
	color: var(--color-blanc);
}
.btn-noir:hover{
	color: var(--color-noir);
}
.btn-center{
	margin: 0 auto;
}
.btn-dl{
	position: relative;
	display: inline-block;
	padding-left: 4rem;
}
.btn-dl::before{
	content: "\e909";
	position: absolute;
	left: 0;
	font-family: 'acdn';
	font-size: 3rem;
}
.btn-dl:hover::before{
	color: var(--color-bleu);
}
.btn-action{
	text-decoration: none!important;
}
.btn-action:hover {
	opacity: 0.8;
	transition: all 300ms ease;
}

/*------------------------------------*\
    FONTS & TEXTS
\*------------------------------------*/
.txt-slab{
	font-family: 'Roboto Slab', serif;
}
.txt-regular{
	font-weight: 400!important;
}
.txt-bold{
	font-weight: 700!important;
}
.txt-ital{
	font-style: italic;
}
strong,
.txt-bold{
	font-weight: 700!important;
}
.txt-xs{
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
}
.txt-s{
	font-size: var(--font-s);
	line-height: var(--lineh-s);
}
.txt-m{
	font-size: var(--font-m);
	line-height: var(--lineh-m);
}
.txt-xm{
	font-size: var(--font-xm);
	line-height: var(--lineh-xm);
}
.txt-l{
	font-size: var(--font-l);
	line-height: var(--lineh-l);
}
.txt-xl{
	font-size: var(--font-xl);
	line-height: var(--lineh-xl);
}
.txt-xxl{
	font-size: var(--font-xxl);
	line-height: var(--lineh-xxl);
}
.txt-bleu{
	color: var(--color-bleu)!important;
}
.txt-noir{
	color: var(--color-noir)!important;
}
.txt-noirc{
	color: var(--color-noirc)!important;
}
.txt-gris{
	color: var(--color-gris)!important;
}
.txt-bleu{
	color: var(--color-bleu)!important;
}
.txt-rouge{
	color: var(--color-rouge)!important;
}
.txt-orange{
	color: var(--color-orange)!important;
}
.txt-balance{
	text-wrap: balance;
}
.bg-titre.titre-rouge,
.bg-titre.titre-rose,
.bg-titre.titre-vert,
.bg-vert,
.bg-bleu,
.bg-bleu a,
.txt-blanc a,
.txt-blanc{
	color: var(--color-blanc)!important;
}
.txt-rouge{
	color: var(--color-rouge)!important;
}
.txt-vert{
	color: var(--color-vert)!important;
}
.txt-rose{
	color: var(--color-rose)!important;
}
.txt-up{
	text-transform: uppercase;
}
.bg-titre{
	position: relative;
	z-index: 5;
}
.bg-titre span{
	display: inline-block;
	position: relative;
	padding: 5px 15px;
}
.bg-titre span::before{
	content: "";
	position: absolute;
	z-index: -1;
	width: 110%;
	height: 110%;
	clip-path: polygon(2% 11%, 98% 0%, 96% 80%, 0% 90%);
	left: -5%;
}
h2.bg-titre span::before{
	clip-path: polygon(2% 0px, 100% 10%, 98% 100%, 0% 92%);
}
.bg-titre.titre-orange span::before{
	background-color: var(--color-orange);
}
.bg-titre.titre-orange{
	color: var(--color-noir)!important;
}
.bg-titre.titre-rose span::before{
	background-color: var(--color-rose);
}
.bg-titre.titre-vert span::before{
	background-color: var(--color-vert);
}
.bg-titre.titre-rouge span::before{
	background-color: var(--color-rouge);
}
.bg-titre.titre-up{
	top: -3rem;
}
.titre-rose mark{
	--mark-color: var(--color-rose);
}
.titre-vert mark{
	--mark-color: var(--color-vert);
}
.titre-rouge mark{
	--mark-color: var(--color-rouge);
}
.titre-orange mark{
	--mark-color: var(--color-orange);
}
mark {
	/*--mark-color: var(--color-orange);*/
	--mark-skew: 0.25em;
	--mark-height: 2em;
	--mark-overlap: 0.5em;
	line-height: 1.5em;

	margin-inline: calc(var(--mark-overlap) * -1);
	padding-inline: var(--mark-overlap);

	background-color: transparent;
	background-image:
		linear-gradient(
			to bottom right,
			transparent 50%,
			var(--mark-color) 50%
		),
		linear-gradient(
			var(--mark-color),
			var(--mark-color)
		),
		linear-gradient(
			to top left,
			transparent 50%,
			var(--mark-color) 50%
		)
	;
	background-size:
		var(--mark-skew) var(--mark-height),
		calc(100% - var(--mark-skew) * 2 + 1px) var(--mark-height),
		var(--mark-skew) var(--mark-height)
	;
	background-position:
		left center,
		center,
		right center
	;
	background-repeat: no-repeat;
	color: inherit;
}

/*------------------------------------*\
    BACKGROUNDS & TITRE
\*------------------------------------*/
.bg-blanc{
	background-color: var(--color-blanc);
	transition: all 300ms ease;
}
.bg-beige{
	background-color: var(--color-beige);
}
.bg-bleu{
	background-color: var(--color-bleu);
}
.bg-gris{
	background-color: var(--color-gris);
}
.bg-rouge{
	background-color: var(--color-rouge);
	transition: all 300ms ease;
}
.bg-rose{
	background-color: var(--color-rose);
}
.bg-orange{
	background-color: var(--color-orange);
}
.bg-vert{
	background-color: var(--color-vert);
}
.bg-noir{
	background-color: var(--color-noir);
}
.bg-confetti{
	background: url('img/confetti.jpg') top center no-repeat;
}
section.bg-beige h2.bg-titre,
section.bg-beige + section.bg-blanc h2.bg-titre,
section.bg-blanc + .bg-beige h2.bg-titre{
	top: -3rem;
}
section.bg-beige + section.bg-blanc h2.bg-titre{
	top: -5rem;
}
@media only screen and (min-width:992px){
	section.bg-beige + section.bg-blanc h2.bg-titre{
		top: -8rem;
	}
}
/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/
.d-flex-between{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.d-flex-center{
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.d-flex-h{
	display: flex;
	flex-direction: column;
	height: 100%;
}
.embed-container{ 
    position: relative;
    padding-bottom: 42.857143%;
    overflow: hidden;
    max-width: 100%;
    height: auto;
} 
.embed-container iframe,
.embed-container object,
.embed-container embed{ 
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.img-fit img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.img-fit.img-pano img{
	aspect-ratio: 16/10;
}
.img-fit.img-carre img{
	aspect-ratio: 1/1;
}
figure.wp-block-image figcaption,
.wp-block-image figure figcaption{
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
}
.has-background{
	padding: 30px;
}
.mejs-audio{
	margin-bottom: 1em;
}
/*---------- PAGINATION ----------*/
.pagination{
    text-align: center;
}
.pagination > *{
	position: relative;
	display: inline-block;
    padding: 0 20px;
}
.pagination > a::after,
.pagination > span::after{
	content: "|";
	position: absolute;
	right: -7px;
	top: -2px;
	font-weight: 400;
	font-size: var(--font-xm);
}
.pagination span:last-child::after,
.pagination a:last-child::after{
    content: "";
}
.pagination .current{
    font-weight: 700;
}

/*------------------------------------*\
   FORMS
\*------------------------------------*/
::placeholder{
	opacity: 1!important;
	color: #C4C4C4;
}
input[type="password"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="text"],
input[type="email"]{
    width: 100%;
    border: none;
    font-size: 1.6rem;
    line-height: 2.2rem;
	background: none;
	padding: 10px 15px;
}
.wpcf7 button,
.wpcf7 input[type="submit"]{
	padding: 10px 15px;
	background-color: var(--color-blanc);
	color:#FFF;
	font-size: 1.8rem;
	border: none;
	word-break: keep-all;
	word-wrap: normal
}
.wpcf7 button:hover,
.wpcf7 input[type="submit"]:hover{
	background-color: var(--color-noir);
	opacity: 1;
}
.wpcf7 button i{
	padding-left: 10px;
}
.wpcf7 form .wpcf7-response-output{
    margin: 1.5em 0;
    padding: 0;
    border: none;
	text-align: center;
}
span.wpcf7-list-item{
	display: block;
	font-size: 1.4rem;
	line-height: 1.6rem;
	color: #616457;
    margin: 7.5px 0 0 0;
}
.wpcf7-not-valid-tip{
    position: absolute;
	bottom: auto;
    font-size: 1.2rem;
}
.wpcf7-not-valid{
	margin-bottom: 0!important;
}
div.wpcf7 .ajax-loader{
    display: none!important;
}
input:required{
    box-shadow:none;
}
input:invalid{
    box-shadow:0 0 3px #FFF;
}
form.is-invalid > .acf-error-message{
	visibility: visible;
	display: block;
	position: relative;
	padding: 10px 0;
}

/*------------------------------------*\
    HOME
\*------------------------------------*/
.home{
	background-color: var(--color-beige);
}
.landing-home .landing-bg{
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	/*min-height: 350px;
	height: calc(35vh + 15vmin);
	max-height: 450px; */
	margin-bottom: calc(15vh + 15vmin);
}
.landing-home .slide-home{
	transform: translate(0, 25vh);
}
body .landing-bg.bg-bleu,
body .landing-bg.bg-vert{
	color: var(--color-noir)!important;
}
.actu-item{
	display: flex;
	flex-direction: column;
}
.actu-item .actu-item-img,
.actu-item .actu-item-desc{
	/*width: 50%;*/
}
.actu-item .actu-item-desc{
	padding-left: 30px;
	padding-right: 30px;
}
.actu-item figure,
.actu-item img{
	aspect-ratio: 4/3;
}
@media only screen and (min-width:769px){
	.landing-home .landing-bg{
		margin-bottom: calc(10vh + 15vmin);
	}
}

/*------------------------------------*\
    CARTE DES CCN
\*------------------------------------*/
.item-carte .active{
	color: var(--color-rose);
}
.item-carte a:hover path,
.item-carte path.active{
	fill:var(--color-rose)!important;
}

/*------------------------------------*\
    PAGE CENTRE (SINGLE)
\*------------------------------------*/
.centre-adresse::before {
	content: "";
	position: absolute;
	left: -100%;
	height: 100%;
	width: 180%;
	background-color: var(--color-gris);
	top: 0;
	z-index: -1;
	transform: skewX(-8deg);
}
/*------------------------------------*\
    BLOCS CTA
\*------------------------------------*/
.section-cta img{
	max-height: 200px;
	width: auto;
}
@media only screen and (min-width:992px){
	.cta-2::before {
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		bottom: 0;
		border-left: 40px solid var(--color-beige);
		border-right: 40px solid var(--color-vert);
		transform: skewX(-8deg);
		transform-origin: top left;

	}
}
/*
.cta-2{
	clip-path: polygon(10% 0, 100% 0, 100% 100%, 0 100%);
}
*/

/*------------------------------------*\
    COMMUNIQUES
\*------------------------------------*/
.ress-cat-item .item-dl a,
.communiques-item .item-dl a{
	font-size: clamp(5rem, 13.3vw - 2.8rem, 8rem);
}
.ress-cat-item .item-dl a:hover,
.communiques-item .item-dl a:hover{
	color: var(--color-noir)!important;
}

/*------------------------------------*\
    BLOCS IMG + TXT
\*------------------------------------*/
.item-txt h3{
	margin-bottom: 1em;
	font-family: 'Roboto Slab', serif;
}

.item-txt h2{
	margin-bottom: 0.5em;
}
@media only screen and (max-width:768px){
	.txt-img-item .order-2{
		order: 0!important;
	}
}

/*------------------------------------*\
    BLOCS IMG + TXT
\*------------------------------------*/
/*
.txt-img-item-large figure{
	margin-bottom: -2em;
}
*/
section.section-ress::before,
.txt-img-item-large.extra-bottom + section.section-presse::before{
	content: "";
	position: absolute;
	z-index: -1;
	height: 5em;
	width: 100%;
	background-color: var(--color-beige);
}
section.bg-blanc + section.section-ress::before{
	display: none;
}
.section-presse h2{
	top: -.8em;
}
.txt-img-item-large .img-fit img {
  aspect-ratio: 16/6;
}

/*------------------------------------*\
    HISTOIRE
\*------------------------------------*/
.timeline-col::before{
	content: "";
	display: block;
	border-left: 1px solid var(--color-rose);
	height: 94%;
	width: 1px;
	position: absolute;
	left: -8%;
	top: 20px;
}
.timeline-col-date::before{
	content: "●";
	color: var(--color-rose);
	position: absolute;
	left: -9.5%;
}

/*------------------------------------*\
    TXT 2 COL
\*------------------------------------*/
.txt-col-1 h3{
	font-family: 'Roboto Slab', serif;
	font-size: var(--font-l);
	line-height: var(--lineh-l);
}

/*------------------------------------*\
    RESSOURCES
\*------------------------------------*/
section.section-ress a{
	text-decoration: underline;
}

/*------------------------------------*\
    ARTISTES
\*------------------------------------*/
.artiste-item .artiste-image {
	opacity: 1;
}
.artiste-item .item-artiste-content:hover h3 a,
.artiste-item .item-artiste-content:hover h3{
	color: var(--color-vert);
	transition: color 300ms ease;
}

@media only screen and (min-width:769px){
	.artiste-item .artiste-image {
		position: absolute;
		opacity: 0;
	}
	.artiste-item .artiste-image.visible-top {
		transform: translateY(15px);
		animation-duration: .3s;
		animation-name: fadeInT;
		animation-fill-mode: forwards;
		animation-timing-function: ease-out;
	}
	.artiste-item .artiste-image.visible-bottom {
		transform: translateY(15px);
		animation-duration: .3s;
		animation-name: fadeIn;
		animation-fill-mode: forwards;
		animation-timing-function: ease-out;
	}
}

/*------------------------------------*\
    BLOCS RESSOURCES
\*------------------------------------*/
.ress-item i{
	font-size: 3em;
}
@media only screen and (min-width:992px){
	.ress-item i{
		font-size: 5em;
	}
}
/*------------------------------------*\
    BLOCS TEMOIGNAGE
\*------------------------------------*/
ul.temoignages-items{
	padding: 0;
}
.temoignage-txt{
	height: 100%;
}
.temoignage-txt::before,
.temoignage-txt::after{
	position: absolute;
	content: "\e901";
	font-family: kaizen;
	font-size: 4rem;
	line-height: 5rem;
}
.temoignage-txt::before{
	top: 0;
	left: -50px;
}
.temoignage-txt::after{
	right: -45px;
	bottom: 30px;
}
@media only screen and (max-width:768px){
	.temoignages-items .slick-prev,
	.temoignages-items .slick-next{
	  top: 40%;
	}
	.temoignage-txt::before, .temoignage-txt::after {
	  font-size: 2rem;
	  line-height: 4rem;
	}
}

/*------------------------------------*\
    BLOC GALERIE
\*------------------------------------*/
.liste-galerie{
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-column-gap: 15px;
	grid-row-gap: 15px;
}
.liste-galerie img{
	object-fit: cover;
	aspect-ratio: 16/9;
}

/*------------------------------------*\
    NEWSLETTER
\*------------------------------------*/
.newsl-form .mc4wp-form-fields{
	display: flex;
	flex-direction: column;
}
.newsl-form input[type="email"]{
	border: 1px solid var(--color-noir);
	background-color: var(--color-blanc);
	max-width: 100%!important;
}
.newsl-form input[type="submit"]{
	display: block;
	width: 100%;
	position: relative;
	margin-top: 10px;
	border: 1px solid var(--color-noir);
	background-color: var(--color-blanc);
	color: var(--color-rose);
	font-size: var(--font-xs);
	text-transform: uppercase;
	font-weight: 600;
	min-height: 30px;
}
.newsl-form .wpcf7-spinner{
	display: none;
}
@media only screen and (min-width:768px){
	.newsl-form .mc4wp-form-fields{
		flex-direction: row;
	}
	.newsl-form input[type="submit"]{
		padding: 0 10px;
		margin-top: 0;
		width: auto;
	}
	.newsl-form form label,
	.newsl-form form{
		flex-direction: row;
		margin-bottom: 0;
		text-align: center;
		justify-content: center;
	}
	.newsl-form form label{
		display: flex;
		align-items: center;
		margin-right: 2vw;
	}
}
/*------------------------------------*\
    ACCORDEON
\*------------------------------------*/
.accordeon .accordeon-item{
	border-bottom: 2px solid var(--color-noir);
}
.accordeon h3{
	margin-bottom: 0;
}
.ui-helper-hidden{
	display: none;
}
.ui-helper-hidden-accessible{
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
.ui-helper-reset{
	margin: 0;
	border: 0;
	outline: 0;
	text-decoration: none;
	list-style: none;
}
.ui-helper-clearfix:before,
.ui-helper-clearfix:after{
	content: "";
	display: table;
	border-collapse: collapse;
}
.ui-helper-clearfix:after{
	clear: both;
}
.ui-helper-zfix{
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	position: absolute;
	opacity: 0;
	filter:Alpha(Opacity=0); /* support: IE8 */
}
.ui-front{
	z-index: 100;
}
.ui-state-disabled{
	cursor: default !important;
	pointer-events: none;
}
.ui-icon{
	display: inline-block;
	vertical-align: middle;
	position: absolute;
	right: 0;
	top: 40%;
	overflow: hidden;
	font-size: 1.5rem;
	background-repeat: no-repeat;
	transition: all ease 300ms;
}
.ui-accordion-header-active .icon-fleche-bas{
	transform: rotate(180deg);
	transition: all ease 300ms;
}
.ui-widget-icon-block{
	left: 50%;
	margin-left: -8px;
	display: block;
}
/* Overlays */
.ui-widget-overlay{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.ui-accordion .ui-accordion-header{
	display: block;
	cursor: pointer;
	position: relative;
	padding: 1rem 2rem 1.5rem 0;
}
.ui-accordion .ui-accordion-header-active{
	color: var(--color-bleu);
}
.ui-accordion .ui-accordion-content{
	overflow: hidden;
}

/*------------------------------------*\
    BLOG
\*------------------------------------*/
.contenu-page h2,
.single .item-content h2{
	font-size: var(--font-l);
	line-height: var(--lineh-l);
	padding: 2rem 0 1rem 0;
	font-weight: 700;
}
.contenu-page h3{
	font-size: var(--font-l);
	line-height: var(--lineh-l);
	color: var(--color-noir);
	padding: 2rem 0 1rem 0;
	font-weight: 700;
}
.single .item-content h3{
	font-size: var(--font-m);
	line-height: var(--lineh-m);
	color: var(--color-noir);
	padding: 2rem 0 1rem 0;
	font-weight: 700;
}
.contenu-page h4,
.single .item-content h4{
	color: var(--color-noir);
	padding: 2rem 0 1rem 0;
	font-weight: 700;
}
.single .item-content .img-fit img{
	aspect-ratio: 16/10;
}
.single .txt-item-content a,
.single .item-content a{
	text-decoration: underline;
}
.single .wp-block-quote{
	padding: 3rem;
	text-align: center;
	font-size: var(--font-l);
	font-style: italic;
	font-weight: 400;
}
.single .wp-block-pullquote{
	padding: 3rem 5rem;
	margin: 2rem 0;
	text-align: left;
	font-weight: 400;
}
.single .social-share{
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
}
.single .social-share span,
.single .social-share a{
	margin-right: 1.5rem;
	line-height: 3rem;
	text-decoration: none!important;
}
.single .social-share a{
	color: var(--color-bleu);
	font-size: 2.5rem;
}
.single .social-share a:hover{
	color: var(--color-bleu);
	text-decoration: none;
}
.single .tag-list{
	padding-left: 20px;
	font-weight: 400;
}
.single .item-content .cat-list a{
	text-decoration: none;
}
.single .item-content .cat-list a:hover{
	text-decoration: underline;
}
/*------------------------------------*\
    PRE FOOTER & FOOTER
\*------------------------------------*/
@media only screen and (min-width:992px){
	.pre-footer-col::after,
	.pre-footer-col::before {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		transform: skewX(-8deg);
	}
	.pre-footer-col.pre-footer-col2::before {
		left: 0;
		border-left: 40px solid var(--color-rose);
		border-right: 40px solid var(--color-rouge);
		transform-origin: top left;
	}
	.pre-footer-col.pre-footer-col2::after {
		right: 0;
		border-left: 40px solid var(--color-rouge);
		border-right: 40px solid var(--color-orange);
		transform-origin: bottom right;
	}
}
.social-item a {
	display: flex;
	justify-content: center;
	width: 6rem;
	height: 6rem;
	margin: 0 15px;
}
.social-item .icon-social {
	background-color: var(--color-blanc);
	color: var(--color-rose) !important;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 100%;
}
.social-item .icon-social::before {
	font-size: 3.5rem;
	transition: color 300ms ease;
}
.social-item a:hover .icon-social::before {
	color: var(--color-noir);
	transition: color 300ms ease;
}
.footer{
	background-color: var(--color-noir);
	color: var(--color-blanc);
}
.footer .b-bottom{
	border-bottom: 2px solid var(--color-blanc);
	padding-bottom: 5px
}
.footer a,
.footer{
	color: var(--color-blanc);
}
.footer .col-groupe-logo{
	padding-top: 5px;
}
.footer .col-groupe{
	padding-top: 15px;
}

.col-footer-menu ul{
	list-style: none;
	padding: 15px 0;
}
.col-footer-menu ul li{
	font-size: var(--font-s);
}
.col-footer-menu a:hover{
	text-decoration: underline;
}
.footer .col-groupe-logo{
	max-width: 180px;
}
.footer-menu-bas ul{
	list-style: none;
	padding-left: 0;
}
@media only screen and (min-width:768px){
	.footer-menu-bas ul{
		display: flex;
	}
	.footer-menu-bas ul li{
		position: relative;
		margin-right: 30px;
	}
	.footer-menu-bas ul li{
		position: relative;
	}
	.footer-menu-bas ul li::after{
		content: "|";
		position: absolute;
		right: -20px;
	}
	.footer-menu-bas ul li:last-child:after,
	#menu-footer-4 li:last-child:after{
		content: "";
	}
}
/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/
@media only screen and (max-width:480px){

}

@media only screen and (max-width:768px){
	.center-mobil{
		text-align: center!important;
	}
	.hidden-sm{
		display: none;
	}
    .mt50{
        margin-top: 1.5em;
    }
	.mb30{
		margin-bottom: 1em;
	}
    .pt30{
        padding-top: 1em;
    }
    .mb50{
        margin-bottom: 1.5em;
    }
	.mb100{
		margin-bottom: 2.5em;
	}
    .pt50{
        padding-top: 1.5em;
    }
    .pb30{
        padding-bottom: 1em;
    }
    .pb50{
        padding-bottom: 1.5em;
    }
	.pb100{
		padding-bottom: 2em;
	}
    .pt100{
        padding-top: 2em;
    }
	.mb50-mobil{
		margin-bottom: 1.5rem;
	}
	.mt50-mobil{
		margin-top: 1.5rem;
	}
	.plr10-mobil{
		padding-left: 10%! important;
		padding-right: 10%!important;
	}
}

@media only screen and (min-width:769px){
	.d-flex-center{
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/

.alignnone{
	margin:0 20px 20px 0;
}
.aligncenter,
div.aligncenter{
	display:block;
	margin:5px auto 5px auto;
	text-align: center;
}
.alignright{
	float:right;
	margin:5px 0 20px 20px;
}
.alignleft{
	float:left;
	margin:5px 20px 20px 0;
}
a img.alignright{
	float:right;
	margin:5px 0 20px 20px;
}
a img.alignnone{
	margin:5px 20px 20px 0;
}
a img.alignleft{
	float:left;
	margin:5px 20px 20px 0;
}
a img.aligncenter{
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.wp-caption{
	text-align:left;
}
.wp-caption.alignnone{
	margin:5px 20px 20px 0;
}
.wp-caption.alignleft{
	margin:5px 20px 20px 0;
}
.wp-caption.alignright{
	margin:5px 0 20px 20px;
}
.wp-caption img{
	border:0 none;
	height:auto;
	margin:0;
	padding:0;
	width:auto;
}
.wp-caption .wp-caption-text,
.gallery-caption{
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
	margin:0;
	padding:0 5px 5px 0;
}
blockquote {
	margin: 1em auto 2em auto;
	max-width: 80%;
	text-align: center;
	font-size: var(--font-l);
	line-height: var(--lineh-l);
	font-style: italic;
}
.has-white-color.has-text-color{
	color: var(--color-blanc);
}
/*------------------------------------*\
    PRINT
\*------------------------------------*/

@media print{
	*{
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited{
		text-decoration:underline;
	}
	a[href]:after{
		content:" (" attr(href) ")";
	}
	abbr[title]:after{
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after{
		content:"";
	}
	pre,blockquote{
		page-break-inside:avoid;
	}
	thead{
		display:table-header-group;
	}
	tr,img{
		page-break-inside:avoid;
	}
	img{
		max-width:100% !important;
	}
	@page{
		margin:0.5cm;
	}
	p,
	h2,
	h3{
		orphans:3;
		widows:3;
	}
	h2,
	h3{
		page-break-after:avoid;
	}
}
