/*
	Theme Name: SpinPart
	Theme URI: 
	Description: 
	Version: 2.0
	Author: 
	Author URI: LDR

*/

:root {
	--color-rouge: rgba(231, 66, 74, 1);
	--color-vert: rgba(57, 185, 199, 1);
	--color-bleu: rgba(28, 56, 104, 1);
	--color-beige: rgba(244, 244, 244, 1);
	--color-grisf: rgba(235, 235, 235, 1);
	--color-gris: rgba(244, 244, 244, 1);
	--color-noir: rgba(37, 52, 53, 1);
	--color-blanc: rgba(255, 255, 255, 1);

	--font-xxs: 1.3rem;
	--lineh-xxs: 2rem;

	--font-xs: 1.5rem;
	--lineh-xs: 2rem;

	--font-s: 1.8rem;
	--lineh-s: 2.4rem;
	
	--font-m: 2rem;
	--lineh-m: 3rem;

	--font-xm: 2.5rem;
	--lineh-xm: 3rem;

	--font-l: clamp(3rem, 1.1vw + 2.5rem, 3rem);
	--lineh-l: clamp(4rem, 1.1vw + 2.9rem, 3.8rem);

	--font-xl: clamp(4rem, 5.3vw + 1.7rem, 4.5rem);
	--lineh-xl: clamp(4rem, 5.3vw + 1.7rem, 4.5rem);

	--font-xxl: clamp(4.5rem, 16vw - 2rem, 7rem);
	--lineh-xxl: clamp(4.5rem, 16vw - 2rem, 7rem);
}

/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh7USSwaPGR_p.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: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh7USSwiPGQ.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: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lato/v24/S6uyw4BMUTPHjxAwXjeu.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: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lato/v24/S6uyw4BMUTPHjx4wXg.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: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh6UVSwaPGR_p.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: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/lato/v24/S6u9w4BMUTPHh6UVSwiPGQ.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WRhyzbi.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WZhyzbi.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wdhyzbi.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: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wlhyw.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WRhyzbi.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WZhyzbi.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wdhyzbi.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: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wlhyw.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;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WRhyzbi.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C88, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459W1hyzbi.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459WZhyzbi.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wdhyzbi.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: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v26/JTUSjIg1_i6t8kCHKm459Wlhyw.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: 'spinpart';
  src:  url('fonts/spinpart.eot?2vks41');
  src:  url('fonts/spinpart.eot?2vks41#iefix') format('embedded-opentype'),
    url('fonts/spinpart.woff?2vks41') format('woff');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'spinpart' !important;
  speak: never;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-close:before {
  content: "\e911";
}
.icon-share:before {
  content: "\e910";
  color: var(--color-rouge);
}
.icon-phone:before {
	content: "\e90f";
}
.icon-play:before {
  content: "\e90e";
}
.icon-arc:before {
  content: "\e908";
  color: var(--color-rouge);
}
.icon-mail:before {
  content: "\e90b";
  font-size: 1.6rem!important;
}
.icon-dl:before {
  content: "\e909";
}
.icon-loupe:before {
  content: "\e907";
}
.icon-chevron:before {
  content: "\e904";
}
.icon-plus:before {
  content: "\e906";
}
.icon-arrow-left:before {
  content: "\e903";
}
.icon-arrow-right:before {
  content: "\e905";
}
.icon-w:before {
  content: "\e90c";
  font-size: 2rem!important;
}
.icon-twitter:before {
  content: "\e90a";
}
.icon-youtube:before {
  content: "\e90d";
}
.icon-linkedin:before {
  content: "\e900";
}
.icon-instagram:before {
  content: "\e901";
}
.icon-facebook:before {
  content: "\e902";
}
.socials{
	display: flex;
	justify-content: center;
}
.socials a{
	display: flex;
	justify-content: center;
	width: 4rem;
	height: 4rem;
	margin: 0 5px;
}
.socials a:hover{
	text-decoration: none;
}
.socials a:hover i::before{
	color: var(--color-bleu);
}
.icon-social{
	background-color: var(--color-vert);
	color: var(--color-blanc)!important;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 100%;
}
.icon-social::before{
	font-size: 2.5rem;
}
/*------------------------------------*\
    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: 'Lato', sans-serif;
    font-size: var(--font-s);
    line-height: var(--lineh-s);
    font-style: normal;
    font-weight: 400;
	color: var(--color-bleu);
	letter-spacing: 0.02rem;
}
body > main{
	position: relative;
	min-height: 80vh;
}
body > main section:not(.bandeau) + section:last-child{
	margin-bottom: 3em;
}
/* clear */
.clear:before,
.clear:after{
    content:' ';
    display:table;
}

.clear:after{
    clear:both;
}
.clear{
    *zoom:1;
}
p{
	margin-bottom: 1rem;
}
img{
	max-width:100%;
	vertical-align:bottom;
	height: auto;
}
a{
	color: var(--color-bleu); 
	text-decoration:none;
	transition: background 300ms ease, color 400ms, opacity 300ms ease;
}
a:hover,
a:active{
	/*text-decoration: none;*/
	outline:0;
}
a.link-ext{
	color: var(--color-orange);
	font-weight: 500;
}
main .item-content p a{
	text-decoration:none;
}
: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,h2,h3,h4{
	font-family: 'Montserrat', sans-serif;
}
h1{
	font-size: var(--font-xl);
	line-height: var(--lineh-xl);
}
h3{
	font-size: var(--font-xm);
	line-height: var(--lineh-xm);
}
h4{
	font-size: var(--font-m);
	line-height: var(--lineh-m);
}
sup{
    text-transform: lowercase!important;
}
ul{
	margin: 1em 0.5em;
	padding-left: 1em;
}
ul.no-list{
	list-style: none;
	padding-left: 0;
}
strong{
	font-weight: 700!important;
}
.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;
}
@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 fadeInL {
  0% {
    opacity: 0;
    transform: translateX(40px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@-webkit-keyframes fadeInL {
  0% {
    opacity: 0;
    -webkit-transform: translateX(40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
.fadeInL{
    -webkit-animation-name:fadeInL;
    animation-name:fadeInL;
}

@keyframes fadeInR {
  0% {
    opacity: 0;
    transform: translateX(-40px);
  }
  100% {
    opacity: 1;
    transform: translateX(0);
  }
}

@-webkit-keyframes fadeInR {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
  }
}
.fadeInR{
    -webkit-animation-name:fadeInL;
    animation-name:fadeInL;
}
.pt5{
    padding-top: 0.25em;
}
.pt15{
    padding-top: 0.5em;
}
.pt30{
    padding-top: 1.5em;
}
.pt50{
    padding-top: 2.5em;
}
.pt100{
    padding-top: 4em;
}
.pb0{
    padding-bottom: 0;
}
.pb5{
    padding-bottom: 0.25em;
}
.pb15{
    padding-bottom: 0.5em;
}
.pb30{
    padding-bottom: 1.5em;
}
.pb50{
    padding-bottom: 2.5em;
}
.pb100{
    padding-bottom: 4em;
}
.mt5{
    margin-top: .25em;
}
.mt15{
    margin-top: 0.5em;
}
.mt30{
    margin-top: 1.5em; 
}
.mt50{
    margin-top: 2.5em;
}
.mt100{
    margin-top: 4em;
}
.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: 4em;
}
.wp-block-button a,
.btn{
	position: relative;
	display: inline-block;
	padding: 1.1rem 3rem 1.2rem 3rem;
	font-size: var(--font-m);
	line-height: var(--lineh-m);
	font-weight: 400;
	text-align: center;
	border: 1px solid var(--color-vert);
	border-radius: 30px;
	transition: 300ms;
	overflow: hidden;
	text-decoration: none!important;
}
.wp-block-button a:hover,
.btn:hover {
	cursor: pointer;
}
.btn-small{
	padding: 0.7rem 2rem;
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
}
.btn-xsmall{
	padding: 0.5rem 1.5rem;
	font-size: var(--font-xxs);
	line-height: var(--lineh-xxs);
}
.btn:hover{
	text-decoration: none;
}
.btn-vert{
	color: var(--color-vert);
}
.btn-bleu{
	color: var(--color-bleu);
}
.btn-bleu:hover{
	color: var(--color-blanc);
	background-color: var(--color-bleu);
	border-color: var(--color-bleu);
}
.list-cat .list-cat-item.active a,
.btn-vert:hover{
	color: var(--color-blanc);
	background-color: var(--color-vert);
}
.btn-center{
	margin: 0 auto;
}
.btn-dl{
	position: relative;
	display: inline-block;
	padding-left: 3rem;
}
.btn-dl::before{
	content: "—";
	position: absolute;
	left: 0;
	font-size: 2rem;
}
.txt-mont{
	font-family: 'Montserrat', sans-serif;
}
.txt-light{
	font-weight: 300!important;
}
.txt-regular{
	font-weight: 400!important;
}
.txt-medium{
	font-weight: 500!important;
}
strong,
.txt-bold{
	font-weight: 700!important;
}
.txt-ital{
	font-style: italic;
}
.txt-xxs{
	font-size: var(--font-xxs);
	line-height: var(--lineh-xxs);
}
.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);
}
.txt-noir{
	color: var(--color-noir);
}
.txt-bleu{
	color: var(--color-bleu);
}
.txt-vert{
	color: var(--color-vert);
}
.txt-rouge{
	color: var(--color-rouge);
}
.txt-blanc a,
.txt-blanc{
	color: var(--color-blanc);
}
.txt-rouge{
	color: var(--color-rouge);
}
.txt-up{
	text-transform: uppercase;
}
.txt-space{
	letter-spacing: 0.05rem;
}
.bg-blanc{
	background-color: var(--color-blanc);
}
.bg-beige{
	background-color: var(--color-beige);
}
.bg-grisf{
	background-color: var(--color-grisf);
}
.bg-gris{
	background-color: var(--color-gris);
}
.bg-rouge{
	background-color: var(--color-rouge);
}
.bg-bleu{
	background-color: var(--color-bleu);
}
.bg-vert{
	background-color: var(--color-vert);
}
.bg-filet{
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
}
.bg-filet-1{
	background-image: url(img/filet-1.svg);
}
.bg-filet-2{
	background-image: url(img/filet-2.svg);
}
/*
.bg-filet-3{
	background-image: url(img/filet-3.svg);
}
*/
.ombre{
	box-shadow: 0px 10px 25px 0px rgba(112,112,112,0.16);
}
.pr0{
	padding-right: 0!important;
}
.pl0{
	padding-left: 0!important;
}
.mr0{
	margin-right: 0!important;
}
.ml0{
	margin-left: 0!important;
}

.plr3{
	padding-left: 3%!important;
	padding-right: 3%!important;
}
.plr10,
.plr5{
	padding-left: 5%!important;
	padding-right: 5%!important;
}
.plr15,
.plr6{
	padding-left: 6%!important;
	padding-right: 6%!important;
}
@media only screen and (max-width:768px){
	.wpcf7 .wpcf7-submit,
	.btn{
		width: 100%;
	}
}
@media only screen and (min-width:769px){
	.pr50 {
		padding-right: 2em !important;
	}
	.pl50 {
		padding-left: 2em !important;
	}
	.mr50 {
		margin-right: 2em !important;
	}
	.ml50 {
		margin-left: 2em !important;
	}
	.mr25 {
		margin-right: 1em !important;
	}
	.ml25 {
		margin-left: 1em !important;
	}
	.plr10{
		padding-left: 10%! important;
		padding-right: 10%!important;
	}
	.plr15{
		padding-left: 15%! important;
		padding-right: 15%!important;
	}
}
/*------------------------------------*\
    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%;
}
.wp-block-embed__wrapper,
.embed-container{ 
    /*position: relative;*/
    padding-bottom: 40%;
    overflow: hidden;
    max-width: 100%;
    height: auto;
}
.wp-block-embed__wrapper iframe,
.embed-container iframe,
.embed-container object,
.embed-container embed{ 
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.single .item-content iframe{
	width: 100%;
}
.img-fit,
.img-fit img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.wp-block-image figure figcaption{
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
}
.has-background{
	padding: 30px;
}
.mejs-audio{
	margin-bottom: 1em;
}
.item-sub,
.item-sup{
	position: relative
}
.item-sub::before,
.item-sup::before{
	content: "—";
	position: absolute;
	left: 0;
}
.text-center.item-sub::before{
	left: 45%;
}
.item-sup::before{
	top: -2.5rem;
}
.txt-xm.item-sup::before{
	top: -1.5rem;
}
.txt-xl.item-sup::before{
	top: -2rem;
}
.item-sub::before{
	bottom: -2.3rem;
}
.txt-sl.item-sub::before{
	bottom: -3rem;
}

/*---------- BANNERS ----------*/
.banner,
.banner a{
	color: var(--color-blanc);
	text-decoration: none;
}
.ban-content{
	position: relative;
	background-repeat: no-repeat;
	background-size: 34%;
	background-position: 85% 30px;
}
.ban-content-bc{
	display: flex;
	justify-content: space-between;
}
.banner + section{
	margin-top: 2.5em;
}
/*---------- BREADCRUMB ----------*/
.rank-math-breadcrumb{
	position: relative;
	z-index: 5;
	text-transform: uppercase;
	opacity: 0.7;
}
.rank-math-breadcrumb p a:last-child{
	font-weight: 700;
}
.rank-math-breadcrumb .separator{
	display: inline-block;
	padding: 0 6px;
}
/*---------- SOCIAL SHARE ----------*/
.btn-share {
	position: relative;
	display: flex;
	align-items: baseline;
	overflow: hidden;
	padding: 0;
	transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
	background: none;
	border: none;
}
.banner .btn-share {
	color: var(--color-blanc);
}
.banner .social-icons li a:hover {
	color: var(--color-blanc)!important;
}
.banner .btn-share .btn-text,
.banner .btn-share .btn-icon {
	opacity: 0.7;
}
.btn-share:hover {
	overflow: visible;
}
.btn-share .btn-text,
.btn-share .btn-icon {
	display: inline-flex;
	vertical-align: middle;
	transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.btn-share .btn-text {
	transition-delay: 0.05s;
}
.btn-share .btn-icon {
	margin-right: 1rem;
	transition-delay: 0.1s;
}
.btn-share .social-icons {
	position: absolute;
	/*top: 50%;*/
	/*right: 0;*/
	display: flex;
	margin: 0;
	padding: 0;
	list-style-type: none;
	transform: translateY(-50%);
}
.btn-share .social-icons li {
	flex: 1;
}
.btn-share .social-icons li a {
	display: inline-flex;
	vertical-align: middle;
	transform: translateY(30px);
	transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
	opacity: 0;
	margin-right: 1rem;
}
.btn-share:hover .btn-text,
.btn-share:hover .btn-icon {
	transform: translateY(-30px);
	opacity: 0;
}
.btn-share:hover .social-icons li a {
	transform: translateY(0);
	opacity: 0.7;
	text-decoration: none;
}
.btn-share .social-icons li a:hover {
	color: var(--color-rouge);
	opacity: 1;
}
.btn-share:hover .social-icons li:nth-child(1) a {
	transition-delay: 0.15s;
}
.btn-share:hover .social-icons li:nth-child(2) a {
	transition-delay: 0.2s;
}
.btn-share:hover .social-icons li:nth-child(3) a {
	transition-delay: 0.25s;
}

/*---------- FILTERS ----------*/
.cat-filters{
	display: flex;
}
.cat-filters li{
	padding: 15px 2vw 15px 0;
}
.cat-filters li a{
	opacity: 0.5;
}
.cat-filters li a:hover,
.cat-filters li.current-cat a{
	opacity: 1;
}
@media only screen and (max-width:992px){
	.cat-filters{
		overflow-x: scroll;
	}
	.cat-filters li{
		margin-right: 20px;
	}
	.cat-filters li a{
		white-space: nowrap;
	}
}
/*---------- PAGINATION ----------*/

.pagination > *{
    padding: 0 10px;
}
.pagination .current{
    color: var(--color-noir);
    font-weight: 700;
}

/*------------------------------------*\
   TABLE
\*------------------------------------*/
table{
	margin-top: 1.5em;
	font-size: var(--font-s);
	line-height: 1.5rem;
}
table thead{
	text-transform: uppercase;
	font-size: var(--font-xs);
	line-height: 1.5rem;
	font-weight: 600;
}
table tr{
	border-top: 1px dashed var(--color-noir);
	border-bottom: 1px dashed var(--color-noir);
}
table tr td:first-child{
	text-align: left;
}
table td{
	padding: 10px;
	text-align: right;
}

/*------------------------------------*\
    HOME
\*------------------------------------*/
.landing-home{
	height: 55vh;
}
.landing-intro .item-arc{
	height: 8em;
	position: absolute;
	overflow: hidden;
	left: -18%;
	width: 100%;
	padding: 0px 5px;
}
.landing-home .landing-intro .item-arc {
	top: -65%!important;
}
@media only screen and (max-width:991px){
	.landing-intro br{
		display: none;
	}
	.landing-intro .item-arc{
		height: 6em;
	}
}
@media only screen and (min-width:769px){
	.landing-home .landing-intro .item-arc {
		top: -50%!important;
	}
	.landing-home{
		min-height: 700px;
		height: 80vh;
	}
}
.landing-intro .circle::before{
	padding-top: 1px;
}
.landing-intro .circle::before{
	font-family: spinpart;
	content: "\e908";
	color: var(--color-rouge);
	font-size: 5em;
	line-height: 1em;
}
.landing-intro .circle::before{
	transform: rotate(-180deg);
	transform-origin: bottom center;
	position: absolute;
	z-index: -1;
	transition: all ease-in-out 1s;
	bottom: 0;
}
.landing-intro .item-arc.fade.in .circle::before{
	transform: rotate(0deg);
}
.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{
	object-fit: cover;
	aspect-ratio: 6/4;
}

/*------------------------------------*\
    BANDEAU
\*------------------------------------*/
.bandeau{
	position: relative;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	min-height: 400px;
}
.bandeau .landing-intro .item-arc {
	top: -100%;
}

/*------------------------------------*\
    SECTION TXT IMG
\*------------------------------------*/
.txt-img-item.order-2 figure.img-large img{
	object-fit: contain;
}
.txt-img-item.order-0 figure.img-large img{
	object-fit: contain;
}
@media only screen and (min-width:992px){
	.txt-img-item.order-2 figure.img-large img{
		transform: scale(150%) translateX(8%);
	}
	.txt-img-item.order-0 figure.img-large img{
		transform: scale(150%) translateX(-24%);
	}

}
@media only screen and (max-width:768px){
	.section-img .txt-img-item{
		order: 2!important;
	}
}
/*
.txt-img-item.order-2 figure.img-large,
.txt-img-item.order-0 figure.img-large{
	margin-bottom: 5em;
}
*/
blockquote{
	font-size: var(--font-l);
	line-height: var(--lineh-l);
	font-weight: 300;
}
/*------------------------------------*\
    BLOCS ENCARTS
\*------------------------------------*/
.item-encart{
	display: flex;
	flex-direction: column;
	justify-content: space-between
}

/*------------------------------------*\
    BLOCS LISTE VIGNETTES & EXPERTS
\*------------------------------------*/
.section-experts .item-associe{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.section-temoin-liste .temoin-item img,
.section-associes ul li img,
.section-experts ul li img,
.section-vignettes ul li img{
	object-fit: cover;
	aspect-ratio: 1/1;
	clip-path: circle(50%);
}
/*
.bio-desc {
    max-height: 0;
	opacity: 0;
    overflow: hidden;
    transition: all 0.3s ease-out;
}
*/
.bio i.icon-close {
	display: inline-block;
    transform: rotate(45deg);
	background-color: var(--color-vert);
	color: var(--color-blanc) !important;
	width: 100%;
	height: 100%;
	border-radius: 100%;
	padding: 10px;
	transition: all 0.3s ease-out;
}
.bio.active i.icon-close {
	display: inline-block;
    transform: rotate(0);
	transition: all 0.3s ease-out;
}
.bio.active .bio-desc{
    max-height: 300px;
	opacity: 1;
	transition: all 0.3s ease-in;
}
.bio .toggle-button{
	display: inline-block;
	border: none;
	background: none;
	color: var(--color-bleu);
	cursor: pointer;
}
.bio .toggle-button:visited,
.bio .toggle-button:focus,
.bio .toggle-button:active{
	outline: none;
}
.modal-bio{
	z-index: 99;
	background-color: rgba(28, 56, 104, 0.5);
	flex-direction: row;
	justify-content: center;
	align-items: center;
	display: none;
	position: fixed;
	inset: 0;
	opacity: 0;
	transition: opacity 0.3s ease;
	pointer-events: none;
}
.modal-bio.open {
	display: flex!important;
	opacity: 1;
	pointer-events: auto;
}
.modal-bio .modal-box {
	z-index: 99;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 5vw;
	padding-right: 5vw;
	position: static;
	max-width: 800px;
}
.modal-bio .modal-container{
	display: flex;
	flex-direction: column;
	background-color: var(--color-blanc);
	border-radius: 15px;
	border: 1px solid var(--color-noir);
	padding: 3rem 2.5rem;
	max-height: 90vh;
	overflow-y: auto;
}
.modal-bio .modal-container figure{
	width: 100px;
	height: auto;
	clip-path: circle(50%);
	min-height: 100px;
}
.modal-bio .modal-container figure img{
	aspect-ratio: 1/1;
	object-fit: cover;
	object-position: top center;
}
.modal-bio .close-modal {
	position: absolute;
	top: 1.5rem;
	right: 2rem;
	background: none;
	font-size: 1rem;
	cursor: pointer;
	width: 25px;
	height: 25px;
	border: 1px solid var(--color-noir);
	border-radius: 50%;
	line-height: 1rem!important;
}
/*------------------------------------*\
    BULLES ADN
\*------------------------------------*/
.item-bulles .item-bulle{
	aspect-ratio: 1/1;
	clip-path: circle(50%);
	width: 33%;
	min-width: 320px;
	max-width: 400px;
	height: auto;
	overflow: hidden;
	padding: 30px;
}
@media only screen and (min-width:992px){
	.item-bulles .item-bulle-2{
		position: relative;
		left: -30%;
		top: -50px;
	}
	.item-bulles .item-bulle-3{
		position: absolute;
		bottom: 0;
		right: 5%;
	}
}

/*------------------------------------*\
    BULLES 4
\*------------------------------------*/
.item-bulles-alt .item-bulle{
	position: relative;
	aspect-ratio: 1/1;
	clip-path: circle(50%);
	min-width: 100%;
	height: auto;
	overflow: hidden;
	padding: 30px;
}
.item-bulles-alt .item-bulle-titre{
	position: absolute;
	opacity: 1;
	transition: opacity 300ms ease;
}
.item-bulles-alt:hover .item-bulle-titre,
.item-bulles-alt .item-bulles-desc{
	opacity: 0;
	transition: opacity 300ms ease;
}
.item-bulles-alt:hover .item-bulle-titre,
.item-bulles-alt .item-bulle-desc{
	opacity: 0;
	transition: opacity 300ms ease;
}
.item-bulles-alt:hover .item-bulle-desc{
	opacity: 1;
	transition: opacity 300ms ease;
}
.item-bulles-alt:hover .item-bulle{
	background-color: var(--color-bleu)!important;
	transition: background 300ms ease, color 400ms, opacity 300ms ease;
}
.item-bulles-alt:hover .item-bulle-desc{
	color: var(--color-blanc)!important;
}
@media only screen and (max-width:768px){
	.item-bulles-alt .item-bulle-titre{
		opacity: 0!important;
	}
	.item-bulles-alt .item-bulle-desc{
		opacity: 1;
		color: var(--color-blanc)!important;
		font-size: 1.4rem;
		line-height: 1.5rem;
	}
	.item-bulles-alt .item-bulle{
		background-color: var(--color-bleu)!important;
	}
}
/*------------------------------------*\
    SLIDE VIDEOS 1 TEMOIGNAGES
\*------------------------------------*/
.section-video-liste .youtube-video {
    position: relative;
    background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	width: 100%;
}
.section-video-liste.slide-1 .youtube-video {
    min-height: 350px;
}
.section-video-liste.slide-2 .youtube-video {
    min-height: 250px;
}
.section-video-liste .youtube-video:hover {
    cursor: pointer;
}
.section-video-liste .youtube-video iframe{
	height: 100%;
	width: 100%;
}
.section-video-liste .youtube-video {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: var(--font-xxl);
	color: var(--color-blanc);
}
.section-video-liste iframe{
	max-width: 100%;
	max-height: 100%!important;
	height: 100%!important;
}
.section-video-liste .youtube-video:hover i {
	color: var(--color-vert);
	transition: color 300ms ease;
}
.section-temoin-liste .temoin-item,
.section-video-liste .video-item {
    margin: 0 15px;
}
.section-temoin-liste .temoin-item{
	padding: 2rem;
	margin-bottom: 3rem;
	background-color: var(--color-blanc);
	box-shadow: 0px 10px 15px 0px rgba(112,112,112,0.16);
}
.section-temoin-liste .temoin-item blockquote{
	font-size: var(--font-s)!important;
	line-height: var(--lineh-s)!important;
}
/*------------------------------------*\
    PICTO DETAILS
\*------------------------------------*/
section.bg-beige.mb50 + section.bg-grisf,
section.bg-beige.mb50 + section.bg-gris,
section.bg-beige.mb50 + section.bg-beige{
	margin-top: -2.5em;
}
.section-picto-details img{
	max-height: 115px;
	width: auto;
}
/*
.section-picto-details ul li{
	position: relative;
	z-index: 5;
}
.section-picto-details ul li:hover{
	z-index: 99;
}
*/
.section-picto-details .item-card{
	position: relative;
	z-index: 0;
	padding: 1.5rem 0;
	/*border-radius: 1.5rem;
	box-shadow: 0px 10px 25px 0px rgba(112,112,112,0);*/
	/*transition: box-shadow 0.3s ease-in;*/
}
/*
.section-picto-details .item-card:hover{
	box-shadow: 0px 10px 25px 0px rgba(112,112,112,0.16);
	background-color: var(--color-blanc);
	transition: none;
}
*/
/*
.section-picto-details .picto-desc{
    position: absolute;
	z-index: 10;
    bottom: 0%;
	transform: translateY(0%); 
    left: 0;
    right: 0;
    opacity: 0;
	background-color: var(--color-blanc);
}
.section-picto-details .item-card:hover .picto-desc{
    opacity: 1;
	box-shadow: 0px 10px 15px 0px rgba(112,112,112,0.16);
	border-radius: 1.5rem;
	transform: translateY(80%); 
	transition: none;
}
*/
.section-picto-details .picto-desc ul{
	list-style: none;
	padding-left: 0;
}
@media only screen and (max-width:768px){
	.section-picto-details .picto-desc{
		padding: 0!important
	}
}

@media only screen and (min-width:992px){
	.flip-card {
		background-color: transparent;
		width: 100%;
		min-height: 250px;
	}
	.flip-card-inner {
		position: relative;
		width: 100%;
		height: 100%;
		text-align: center;
		transition: transform 0.6s;
		transform-style: preserve-3d;
	}
	.flip-card:hover .flip-card-inner {
		transform: rotateY(180deg);
	}
	.flip-card-front, .flip-card-back {
		position: absolute;
		width: 100%;
		height: 100%;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
	}
	.flip-card-front {
		background-color: var(--color-grisf);
	}
	.flip-card-back {
		display: flex;
		flex-direction: column;
		justify-content: center;
		background-color: var(--color-grisf);
		transform: rotateY(180deg);
	}
}
/*------------------------------------*\
    CONTACT
\*------------------------------------*/
.contact .tabs{
	display: flex;
}
.contact .tabs::before{
	content: "";
	position: absolute;
	bottom: -1px;
	width: 200vw;
	left: -100vw;
	border-bottom: 1px solid var(--color-grisf);
	z-index: -1;
}
.contact .tabs .tab-item{
	position: relative;
	z-index: 5;
	top: 1px;
	padding: 2rem 3rem;
	margin-right: 30px;
	background-color: var(--color-blanc);
	border-top: 1px solid var(--color-grisf);
	border-left: 1px solid var(--color-grisf);
	border-right: 1px solid var(--color-grisf);
}
.contact .tabs .tab-item.tab-client{
	background-color: var(--color-grisf);
}
.contact .tabs .tab-item:hover{
	cursor: pointer;
}
.contact .tabs .tab-item.active:hover{
	cursor: default;
}
.contact #tab-client::before{
	content: "";
	position: absolute;
	top: 0;
	z-index: -1;
	width: 200vw;
	height: 100%;
	background-color: var(--color-grisf);
	left: -100vw;
}
.contact label{
	display: block;
}
.contact .form-btn{
	width: 100%;
	margin-top: 2rem;
}
@media only screen and (min-width:992px){
	.contact .tabs .tab-item{
		padding: 2rem 10rem;
	}
	.contact .form-btn{
		display: flex;
		flex-direction: row-reverse;
		align-items: center;
		margin-top: 0;
	}
}

/*------------------------------------*\
    CAS CLIENTS
\*------------------------------------*/
@media only screen and (max-width:768px){
	.section-cas-client-liste .slick-slide{
		padding-top: 0;
	}
	.section-cas-client-liste img{
		max-height: 240px;
		margin-bottom: 1em;
	}
	.section-cas-client-liste .slick-prev,
	.section-cas-client-liste .slick-next {
		top: auto!important;
		bottom: -100px!important;
	}
}

/*------------------------------------*\
    PUBLICATIONS
\*------------------------------------*/
.list-cat{
	margin-left: 0;
	display: flex;
	flex-wrap: wrap;
	gap:15px;
}
.list-cat li{
	position: relative;
	/*flex: 1 1 0;*/
}
.list-cat li a{
	position: relative;
	/*flex: 1 1 0;*/
	padding-left: 1.5rem;
	padding-right: 2rem;
}
#cat-secteurs,
#cat-expertises,
#cat-actualites {
}
.list-cat .list-cat-item a::after{
	right: 5%;
	top: 40%;
}
.list-cat .list-cat-item a.active::after{
	transform: rotate(180deg);
}
.cat-list .subcats{
	display: flex;
	flex-wrap: wrap;
	gap:5px 15px;
	margin-left: 0;
}
.container.cat-list > div {
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    transition: max-height 0.5s ease, opacity 0.5s ease;
}
.container.cat-list > div.active {
    max-height: 300px;
    opacity: 1;
}
.btn-bleu.active{
	color: var(--color-blanc);
	background-color: var(--color-bleu);
	border-color: var(--color-bleu);
}
@media only screen and (min-width:768px){
	.list-cat .list-cat-item a::after{
		right: 10%;
	}
	.list-cat li a{
		padding-left: 2.5rem;
		padding-right: 3rem;
	}
}
.single .item-content p a{
	text-decoration: underline!important;
}
.single .item-content h2,
.single .item-content h3,
.single .item-content h4{
	padding: 2rem 0;
}
.single .item-content h2,
.single .item-content h3,
.single .item-content h4{
	line-height: 3rem;
}
.single .item-content h2{
	font-size: var(--font-xm);
}
.single .item-content h3{
	font-size: var(--font-m);
}
/*------------------------------------*\
    PAGE CLASSIQUE
\*------------------------------------*/
.page-classique h3,
.page-classique h2{
	margin-bottom: 1em;
}
/*------------------------------------*\
   FORMS
\*------------------------------------*/
::placeholder{
	opacity: 1!important;
}
input[type="email"],
input[type="tel"],
input[type="text"],
input[type="email"]{
    width: 100%;
    border: 1px solid var(--color-blanc);
	background: var(--color-blanc);
	padding: 15px;
	border-radius: 30px;
	margin-bottom: 2rem;
}
.contact textarea{
    width: 100%;
    border: 1px solid var(--color-blanc);
	background: var(--color-blanc);
	padding: 15px;
	border-radius: 30px;
	margin-bottom: 2rem;
	resize: none;
}
.form-dl input[type="email"],
.contact #tab-candidat textarea,
.contact #tab-candidat input[type="email"],
.contact #tab-candidat input[type="tel"],
.contact #tab-candidat input[type="text"],
.contact #tab-candidat input[type="email"]{
	border: 1px solid var(--color-bleu);
}
.wpcf7 button,
.wpcf7 input[type="submit"]{
	padding: 15px 5rem;
	background-color: var(--color-vert);
	color: var(--color-blanc);
	border-radius: 30px;
	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;
	color: var(--color-rouge);
}
span.wpcf7-list-item{
	display: block;
    margin: 7.5px 0 0 0;
}
.wpcf7-not-valid-tip{
    /*position: absolute;*/
	font-size: var(--font-xxs);
	bottom: auto;
	text-align: center;
}
.form-dl .wpcf7-not-valid-tip{
	text-align: left;
}
.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 var(--color-blanc);
}
form.is-invalid > .acf-error-message{
	visibility: visible;
	display: block;
	position: relative;
	padding: 10px 0;
}

/*------------------------------------*\
    FOOTER
\*------------------------------------*/
.col-footer-menu ul{
	list-style: none;
	padding: 0;
	margin: 0;
}
.col-footer-menu ul li{
	line-height: 2rem;
	margin-bottom: 10px;
}
.col-footer-menu a:hover{
	text-decoration: underline;
}
.footer .col-groupe-logo{
	max-width: 240px;
}
.footer-menu-bas ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	list-style: none;
	padding-left: 0;
}
.footer-menu-bas ul li{
	position: relative;
	margin-right: 20px;
}
.footer-menu-bas ul li{
	position: relative;
}
.footer-menu-bas ul li::after{
	content: "|";
	position: absolute;
	right: -10px;
	font-size: 1rem;
}
.footer-menu-bas ul li:last-child:after{
	content: "";
}
.footer-socials{
	justify-content: flex-start;
}
@media only screen and (min-width:768px){
	.menu-footer-bas{
		display: flex;
	}
	.footer-menu-bas ul{
		justify-content: center;
	}
	.footer-menu-bas ul li{
		margin-right: 50px;
	}
	.footer-menu-bas ul li::after{
		right: -25px;
	}
}
/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (max-width:768px){
	.full-m{
		padding: 0!important;
	}
	.center-mobil{
		text-align: center!important;
	}
	.bg-beige-mobil{
		background-color: var(--color-beige);
	}
	.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;
	}
	.txt-xl-mobil{
		font-size: 2.6rem;
		line-height: 3.6rem; 
	}
	.txt-l-mobil{
		font-size: 2rem;
		line-height: 3rem; 
	}
	.actu-item h3{
		font-size: 1.6rem;
		line-height: 2rem;
	}
	.footer .col-groupe .col-groupe-social{
		margin-bottom: 1.2rem;
	}
}
@media only screen and (max-width:992px){
	.plr0-mobil{
		padding-left: 0!important;
		padding-right: 0!important;
	}
	.plr5-mobil{
		padding-left: 10%!important;
		padding-right: 10%!important;
	}
}
@media only screen and (min-width:320px){
	.scroll-margin,
	section{
		scroll-margin-top: 4em;
	}
}
@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;
}
.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;
}

/*------------------------------------*\
    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;
	}
}
