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

*/

:root {
	--color-bleu: rgba(29, 66, 138, 1);
	--color-bleu-alt: rgba(85, 135, 198, 1);
	--color-orange: rgba(250, 180, 30, 1);
	--color-vert: rgba(0, 180, 170, 1);
	--color-rouge: rgba(235, 80, 100, 1);
	--color-violet: rgba(200, 110, 170, 1);
	
	--color-bleuc: rgba(241, 244, 250, 1);
	--color-vertc: rgba(232, 244, 244, 1);
	--color-orangec: rgba(250, 180, 30, 0.15);
	--color-rougec: rgba(235, 80, 100, 0.1);
	--color-violetc: rgba(200, 110, 170, 0.2);

	--color-blanc: rgba(255, 255, 255, 1);
	--color-noir: rgba(0, 0, 0, 1);
	--color-gris: rgba(180, 190, 200, 1);

	--font-xs: 1.4rem;
	--lineh-xs: 2rem;

	--font-s: 1.6rem;
	--lineh-s: 2.2rem;

	--font-ms: 2rem;
	--lineh-ms: 2.4rem;
	
	--font-m: 2.4rem;
	--lineh-m: 2.8rem;

	--font-l: clamp(2.5rem, 2.7vw + 2.3rem, 3rem);
	--lineh-l: clamp(2.5rem, 2.7vw + 2.3rem, 3rem);

	--font-xl: clamp(3.6rem, 4.3vw + 0.9rem, 5rem);
	--lineh-xl: clamp(4rem, 5.3vw + 0.7rem, 6rem);

}

/*------------------------------------*\
    MAIN
\*------------------------------------*/
@font-face {
  font-family: 'carpv';
  src: url('fonts/carpv.woff') 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: 'carpv' !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: "\e90e";
}
.icon-loupe:before {
  content: "\e90d";
}
.icon-mail:before {
  content: "\e90c";
}
.icon-ress:before {
	content: "\e90b";
}
.icon-call .path1:before {
  content: "\e904";
  color: rgb(255, 255, 255);
}
.icon-call .path2:before {
  content: "\e90a";
  margin-left: -0.9375em;
  color: rgb(29, 66, 138);
}
.icon-arrow:before {
  content: "\e905";
}
.icon-carpv:before {
  content: "\e906";
}
.icon-chevron:before {
  content: "\e907";
}
.icon-fleche:before {
  content: "\e908";
}
.icon-x:before {
  content: "\e900";
}
.icon-linkedin:before {
  content: "\e909";
}
.icon-youtube:before {
  content: "\e901";
}
.icon-facebook:before {
  content: "\e902";
}
.icon-instagram:before {
  content: "\e903";
}
*,
*: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{
	position: relative;
	font-family: "DM Sans", sans-serif;
	font-optical-sizing: auto;
    font-size: var(--font-s);
    line-height: var(--lineh-s);
    font-style: normal;
    font-weight: 400;
	color: var(--color-noir);
	letter-spacing: 0;
}
main{
	/*overflow: hidden;*/
}
main section:last-child{
	/*padding-bottom: 5em!important;*/
}
/* clear */
.clear:before,
.clear:after{
    content:' ';
    display:table;
}

.clear:after{
    clear:both;
}
.clear{
    *zoom:1;
}
p{
	margin-bottom: 1.5rem;
}
img{
	max-width:100%;
	vertical-align:bottom;
	height: auto;
}
a{
	color: var(--color-noir);
	text-decoration:none;
	transition: all 300ms ease;
}
.content li a,
.content-desc p a,
.content p a{
	text-decoration: underline!important;
}
.section-img-txt a:hover,
.section-titre-img a:hover,
.section-img-txt a,
.section-titre-img a{
	text-decoration:underline;
}
a:hover,
a:active{
	text-decoration: none;
	outline:0;
}
p a:hover,
p a:active{
	text-decoration: underline;
	outline:0;
}
:hover{
	transition: all 300ms ease;
}
a.nohover{
	text-decoration: none!important;
}

input:focus{
	outline:0;
	border:1px solid var(--color-noir);
}
h1,h2,h3,h4{
	/*color: var(--color-noir);*/
}
h1{
	font-size: var(--font-xl);
	line-height: var(--lineh-xl);
	font-weight: 600;
}
h2{
	font-size: var(--font-l);
	line-height: var(--lineh-l);
	font-weight: 600;
}
h3{
	font-size: var(--font-m);
	line-height: var(--lineh-m);
    font-weight: 600;
}
h4{
	font-size: var(--font-m);
	line-height: var(--lineh-m);
	font-weight: 600;
}
.titre-sub::after{
	content: "—";
	display: block;
}
ul{
	margin: 1em 0.5em;
	padding-left: 1em;
}
ul.no-list{
	list-style: none;
	padding: 0;
	margin: 0;
}
p + ul{
	margin-top: 0.5rem;
}
p:has(+ ul) {
	margin-bottom: 0.5rem;
}
strong{
	font-weight: 600!important;
}
.article-content strong,
p strong{
	color: var(--color-noirc);
}
.js-on .fade-r,
.js-on .fade-l,
.js-on .fade-d,
.js-on .fade-o,
.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(20px);
	/*animation-delay: .3s;*/
	animation-duration: .3s;
	animation-name: fadeIn;
	animation-fill-mode: forwards;
	animation-timing-function: ease-out;
}
.js-on .fade-d.in{
	transform: translateY(-20px);
	animation-delay: 1s;
	animation-duration: 1s;
	animation-name: fadeInDown;
	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-o.in{
	transform: translateX(-60px);
	animation-delay: .5s;
	animation-duration: 1s;
	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-l.in:nth-child(2),
.js-on .fade-r.in:nth-child(2),
.js-on .fade.in:nth-child(2) {
	animation-delay: 0.4s;
}
.js-on .fade-l.in:nth-child(3),
.js-on .fade-r.in:nth-child(3),
.js-on .fade.in:nth-child(3) {
	animation-delay: 0.6s;
}
.js-on .fade-l.in:nth-child(4),
.js-on .fade-r.in:nth-child(4),
.js-on .fade.in:nth-child(4) {
	animation-delay: 0.7s;
}
.js-on .fade.in:nth-child(5) {
	animation-delay: 0.8s;
}
.js-on .fade.in:nth-child(6) {
	animation-delay: 0.9s;
}
.js-on .fade.in:nth-child(7) {
	animation-delay: 1s;
}
.js-on .fade.in:nth-child(8) {
	animation-delay: 1.1s;
}
.js-on .fade.in:nth-child(9) {
	animation-delay: 1.2s;
}
.js-on .fade.in:nth-child(10) {
	animation-delay: 1.3s;
}
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

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

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

@-webkit-keyframes fadeInDown {
  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(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;
}
*/
.inline-btn{
	 gap: 30px;
}
.btn{
	position: relative;
	display: inline-block;
	padding: 1rem 5rem;
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
	font-weight: 600;
	overflow: hidden;
	text-decoration: none!important;
	text-transform: uppercase;
	transition: all 0.3s ease-in-out;
	border-radius: 3rem;
	color: var(--color-blanc);
}
.btn-dl{
	position: relative;
	width: 100%;
	padding: 1.5rem 5rem 1.5rem 2rem;
	font-size: var(--font-m);
	line-height: var(--lineh-m);
	text-transform: none;
	transform: rotate(0);
}
.btn-link::after,
.btn-dl::after{
	font-family: "carpv";
	content: "\e905";
	position: absolute;
	top: calc(50% - 1rem);
	right: 2rem;
	font-size: 1.5rem;
	transition: transform .2s ease-out;
}
.btn-dl::after{
	transform: rotate(45deg);
}
.btn-link:hover::after,
.btn-dl:hover::after{
	transition: transform .2s ease-out;
	transform: rotate(-45deg);
}
.btn-list-col .btn-large,
.btn-large.btn-dl{
	padding: 2rem;
	flex-grow: 1;
	font-size: 1.6rem;
	line-height: 2rem;
}
.btn-small{
	padding: 1.2rem 2rem!important;
	font-size: var(--font-s)!important;
	line-height: var(--lineh-s)!important;
}
.btn-small::after{
	top: 1.2rem;
	font-size: 1.2rem;
}
.btn:hover{
	transition: all 0.3s ease-in-out;
	text-decoration: none;
	opacity: 0.8!important;
}
.btn-bleu{
	background-color: var(--color-bleu);
}
.btn-bleu:focus,
.btn-bleu:hover{
	background-color: var(--color-vert);
}
.btn-vert{
	background-color: var(--color-vert);
}
.btn-vert:hover{
	background-color: var(--color-bleu);
}
.btn-orange{
	background-color: var(--color-blanc);
	border: 1px solid var(--color-orange);
	color: var(--color-orange);
}
.btn-orange:hover{
	background-color: var(--color-orange);
	color: var(--color-blanc);
}
.btn-blanc.txt-rouge:hover,
.btn-rouge{
	background-color: var(--color-rouge);
	color: var(--color-blanc);
	border: 1px solid var(--color-rouge);
}
.btn-blanc.txt-rouge{
	background-color: var(--color-blanc);
	color: var(--color-rouge);
	border: 1px solid var(--color-blanc);
}
.btn-rouge:hover{
	background-color: var(--color-blanc);
	color: var(--color-rouge);
	border: 1px solid var(--color-rouge);
}
.btn-blanc{
	background-color: var(--color-blanc);
	color: var(--color-vert);
}
.btn-blanc:hover{
	background-color: var(--color-vert);
	color: var(--color-blanc);
}
.btn-bleu-alt{
	background-color: var(--color-blanc);
	color: var(--color-bleu-alt);
	border: 1px solid var(--color-bleu-alt);
}
.btn-bleu-alt:hover{
	background-color: var(--color-bleu-alt);
	color: var(--color-blanc);
}
.btn-blanc.active{
	background-color: var(--color-violet);
}
.btn-violet{
	background-color: var(--color-violet);
}
.btn-violet:hover,
.btn-violet.active,
.bg-violet .btn-blanc.active{
	background-color: var(--color-blanc);
	color: var(--color-violet);
}
.readm{
	position: relative;
	display: inline-block;
	padding-left: 25px;
	transform: translateX(0);
	transition: transform .2s ease-out;
}
.readm::before{
	font-family: 'carpv' !important;
	content: "\e905";
	position: absolute;
	font-size: 1.1rem;
	left: 0;
	transform: rotate(0);
	transition: transform .2s ease-out;
}
.readm:hover{
	transition: transform .2s ease-out;
	transform: translateX(5px);
}
.actu-link:hover .readm-bleu,
.readm-bleu:hover{
	transition: all .2s ease-out;
	transform: translateX(5px);
	color: var(--color-vert);
}
.actu-link:hover .readm::before{
	transition: all .2s ease-out;
	transform: rotate(-45deg);
}
@media only screen and (min-width:991px){
	.btn-list-col .btn-large,
	.btn-large.btn-dl{
		padding: 2rem 5rem;
		font-size: 2rem;
	}
}
/*
.btn-arrow::before, .btn-arrow::after {
	font-family: 'photosol' !important;
	content: "\e902";
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: inherit;
	padding: inherit;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	color: #fff;
}
.btn-arrow::before {
	opacity: 1;
	transform: none;
	transition: transform .15s ease-out,opacity .3s ease-out;
}
.btn-arrow:hover::before {
	opacity: 0;
	transform: translateY(80%);
	transition: transform .1s ease-in,opacity .3s ease-in;
}

.btn-arrow::after {
	transform: translateY(-80%);
	opacity: 0;
	transition: transform .1s ease-in,opacity .3s ease-in;
	color: #fff;
}
.btn-arrow:hover::after {
	opacity: 1;
	transform: none;
	transition: transform .15s ease-in,opacity .3s ease-in;
}
*/

/*------------------------------------*\
    FONTS SIZES
\*------------------------------------*/
.txt-xlight{
	font-weight: 200!important;
}
.txt-light{
	font-weight: 300!important;
}
.txt-regular{
	font-weight: 400!important;
}
.txt-sbold{
	font-weight: 600!important;
}
strong,
.txt-bold{
	font-weight: 700!important;
}
.txt-xbold{
	font-weight: 800!important;
}
.txt-ital{
	font-style: italic;
}
.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-sm{
	font-size: var(--font-sm);
	line-height: var(--lineh-sm);
}
.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-sl{
	font-size: var(--font-sl);
	line-height: var(--lineh-sl);
}
.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-nbr{
	font-size: clamp(10rem, 48vw - 11rem, 19rem);
	line-height: clamp(6rem, 48vw - 11rem, 13rem);
}
.txt-noir{
	color: var(--color-noir);
}
.txt-gris{
	color: var(--color-gris);
}
.txt-vert{
	color: var(--color-vert);
}
.txt-rouge{
	color: var(--color-rouge);
}
.txt-bleu{
	color: var(--color-bleu);
}
.txt-bleu-alt{
	color: var(--color-bleu-alt);
}
.txt-violet{
	color: var(--color-violet);
}
.txt-orange{
	color: var(--color-orange);
}
.txt-blanc a,
.txt-blanc{
	color: var(--color-blanc);
}
.txt-gris{
	color: var(--color-gris);
}
.txt-up{
	text-transform: uppercase!important;
}
.txt-space{
	letter-spacing: 0.1rem;
}
.txt-xspace{
	letter-spacing: 0.5rem;
}
.txt-balance{
	text-wrap:balance;
}
@media only screen and (max-width:991px){
	.txt-s-mobile{
		font-size: var(--font-s);
		line-height: var(--lineh-s);
	}
}
/*------------------------------------*\
    BACKGROUNDS
\*------------------------------------*/
.bg-blanc{
	background-color: var(--color-blanc);
}
.bg-noir{
	background-color: var(--color-noir);
}
.bg-gris{
	background-color: var(--color-gris);
}
.bg-bleu{
	background-color: var(--color-bleu);
}
.bg-bleu-alt{
	background-color: var(--color-bleu-alt);
}
.bg-bleuc{
	background-color: var(--color-bleuc);
}
.bg-vert{
	background-color: var(--color-vert);
}
.bg-vertc{
	background-color: var(--color-vertc);
}
.bg-rouge{
	background-color: var(--color-rouge);
}
.bg-rougec{
	background-color: var(--color-rougec);
}
.bg-orange{
	background-color: var(--color-orange);
}
.bg-orangec{
	background-color: var(--color-orangec);
}
.b-bottom{
	border-bottom: 1px solid rgba(85, 135, 198, 0.5);
}
.b-top{
	border-top: 1px solid rgba(85, 135, 198, 0.5);
}
.b-bottom-blanc{
	border-bottom: 1px solid var(--color-blanc);
}
.b-top-blanc{
	border-top: 1px solid var(--color-blanc);
}
.b-none{
	border: none!important;
}
/*------------------------------------*\
    SPACES
\*------------------------------------*/
.pt15{
    padding-top: 0.5em;
}
.pt30{
    padding-top: 2em;
}
.pt50{
    padding-top: 2.5em;
}
.pt100{
    padding-top: 5em;
}
.pb0{
    padding-bottom: 0;
}
.pb15{
    padding-bottom: 0.5em;
}
.pb30{
    padding-bottom: 2em;
}
.pb50{
    padding-bottom: 2.5em;
}
.pb100{
    padding-bottom: 5em;
}
.mt5{
    margin-top: .5em;
}
.mt15{
    margin-top: 1em;
}
.mt30{
    margin-top: 2em;
}
.mt50{
    margin-top: 2.5em;
}
.mt100{
    margin-top: 5em;
}
.mb0{
	margin-bottom: 0;
}
.mb5{
	margin-bottom: .5em;
}
.mb15{
    margin-bottom: 1em;
}
.mb30{
    margin-bottom: 2em;
}
.mb50{
    margin-bottom: 2.5em;
}
.mb100{
    margin-bottom: 5em;
}

.plr0{
	padding-left: 0!important;
	padding-right: 0!important;
}
.mlr0{
	margin-left: 0!important;
	margin-right: 0!important;
}
.pl5 {
	padding-left: .5em !important;
}
.pr5 {
	padding-right: .5em !important;
}
@media only screen and (min-width:992px){
	.pr0{
		padding-right: 0!important;
	}
	.pl0{
		padding-left: 0!important;
	}
	.mr0{
		margin-right: 0!important;
	}
	.ml0{
		margin-left: 0!important;
	}
	.pr15 {
		padding-right: 15px !important;
	  }
	.pl15 {
		padding-left: 15px !important;
	  }
	.pr30 {
		padding-right: 30px !important;
	  }
	.pl30 {
		padding-left: 30px !important;
	  }
	.pr50 {
		padding-right: 50px !important;
	  }
	.pl50 {
		padding-left: 50px !important;
	  }
	.plr5{
		padding-left: 5%!important;
		padding-right: 5%!important;
	}
	.plr6{
		padding-left: 6%!important;
		padding-right: 6%!important;
	}
	.plr8{
		padding-left: 8%!important;
		padding-right: 8%!important;
	}
	.plr10{
		padding-left: 10%! important;
		padding-right: 10%!important;
	}
	.plr12{
		padding-left: 12%! important;
		padding-right: 12%!important;
	}
	.plr15{
		padding-left: 15%! important;
		padding-right: 15%!important;
	}
}
@media only screen and (max-width:991px){
	.plr5,
	.plr6,
	.plr8,
	.plr10,
	.plr12,
	.plr15,
	.plr5-mobil{
		padding-left: 30px!important;
		padding-right: 30px!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: 56.25%;
	margin: 1.5rem 0 3rem 0;
    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{
	overflow: hidden;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.img-round img{
	aspect-ratio: 1/1;
	border-radius: 50%;
	width: 100%;
	height: 100%;
}
.img-fit.img-pano img{
	aspect-ratio: 16/9;
}
.img-fit.img-wide img{
	aspect-ratio: 16/7;
}
.wp-block-image figure figcaption{
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
}
.has-background{
	padding: 30px;
}
.mejs-audio{
	margin-bottom: 1em;
}
.article-content img{
	margin: 1em 0;
}
.section-tabs .content ul{
	padding-left: 2em;
}
.section-tabs .content ul li{
	list-style: none;
	position: relative;
	margin-bottom: 1rem;
}
.section-tabs .content ul li::before{
	font-family: 'photosol';
	content: "";
	position: absolute;
	top: 5px;
	left: -4rem;
	color: var(--color-vert);
	font-size: var(--font-l);
}
ol li::marker,
ul.simple-list li::marker,
.simple-list ul li::marker{
	color: var(--color-bleu);
	font-weight: 700;
	font-size: 2rem;
}
.list-split ul,
ul.list-split {
	columns: 2;
	-webkit-columns: 2;
	-moz-columns: 2;
}
ol li{
	margin-bottom: 2rem;
}
/*------------------------------------*\
    SOCIAL SHARE
\*------------------------------------*/
.btn-share {
	position: relative;
	display: flex;
	padding: 0;
	align-items: baseline;
	overflow: hidden;
	transition: 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
	background: none;
	border: none;
	color: var(--color-grisf);
}
.btn-share:hover {
	overflow: visible;
	color: var(--color-rose);
}
.btn-share .btn-text {
	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 span{
	position: relative;
	display: inline-block;
	padding: 1.5rem 3rem 1.5rem 0;
	font-size: var(--font-xm);
	line-height: var(--lineh-xm);
	font-weight: 700;
	text-transform: uppercase;
	border: none;
	transition: 300ms;
	overflow: hidden;
	text-decoration: none !important;
	letter-spacing: 0.05rem;
}
.btn-share span::after{
	font-family: 'photosol';
	content: "\e902";
	position: relative;
	right: -10px;
	transition: 500ms;
}
.btn-share .social-icons {
	position: absolute;
	top: 50%;
	left: 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-tonic);
	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;
}

/*------------------------------------*\
    PAGINATION
\*------------------------------------*/
#see-more-btn {
    display: none;
}

#see-more-btn.show {
    display: inline-block;
}
.pagination{
    text-align: center;
    font-size: 1.4rem;
}
.pagination > *{
    padding: 0 10px;
}
.pagination .current{
    color: var(--color-tonic);
    font-weight: 700;
}
.post-navigation{
	display: flex;
	justify-content: space-between;
}
.post-navigation a{
	display: flex;
	align-items: center;
	/*max-width: 45%;*/
}
@media only screen and (max-width:768px){
	.post-navigation{
		flex-direction: column;
	}
	.post-navigation a{
		margin-bottom: 1em;

	}
}
.page-navigation{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.page-navigation a{
	color: var(--color-grisf);
}

/*------------------------------------*\
   CONTACT
\*------------------------------------*/
.content-contact .item-vert .item-arrow::before {
	opacity: 1;
}
.content-contact h2{
	color: var(--color-vert);
	font-size: var(--font-m);
	font-weight: 700;
}
/*------------------------------------*\
   FORMS
\*------------------------------------*/
::placeholder{
	opacity: 1!important;
	color: var(--color-gris)!important;
}
.sr-only {
	position: absolute !important;
	width: 1px; height: 1px;
	padding: 0; margin: -1px;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}
input:required{
    box-shadow:none;
}
input:invalid{
    border-bottom-color: var(--color-rouge);
}
.visuallyhidden {
	border: 0;
	clip: rect(0 0 0 0);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 1px;
}
.wpcf7-form{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	flex-wrap: wrap;
}
.wpcf7-form-control-wrap {
	margin-bottom: 2rem;
	display: block;
}
.wpcf7-form label{
	color: var(--color-rouge);
}
.wpcf7-form .wpcf7-spinner{
	margin: 0 5px;
	display: none;
}
.wpcf7-form .wpcf7-spinner{
	background-color: var(--color-blanc);
 }
.wpcf7-form .wpcf7-spinner::before {
	background-color: var(--color-blanc);
 }
select,
textarea,
input[type="password"],
input[type="email"],
input[type="date"],
input[type="url"],
input[type="tel"],
input[type="text"],
input[type="email"]{
    width: 100%;
    border: none;
	background: var(--color-blanc);
	color: var(--color-gris);
	font-size: var(--font-s);
	line-height: var(--lineh-s);
	font-weight: 400;
	padding: 1.5rem 2rem;
	border-radius: 3rem;
}
select.filter-select{
	padding: 5px;
	margin: 0;
	color: var(--color-gris);
	font-size: var(--font-s);
	font-weight: 600;
	border: none;
}
select.filter-select:hover{
	cursor: pointer;
}
select.filter-select option{
	border: none;
	color: var(--color-noir);
	font-weight: 600;
}
textarea:focus,
select.filter-select option:focus,
select.filter-select:focus{
	border: none;
	outline: none;
}
select.filter-select{
	display: inline-block;
	width: auto;
	padding: 1rem;
	color: var(--color-bleu);
}
select.filter-select option:hover,
select.filter-select option{
	color: var(--color-bleu)!important;
}
textarea{
	height: 250px;
	resize: none;
}
textarea:focus{
	border: none;
}
.wpcf7-acceptance{
	line-height: 1.6rem;
}
.wpcf7-acceptance label{
	display: flex;
	gap: 10px;
	align-items: flex-start;
	color: var(--color-gris);
	font-weight: 400;
}
.wpcf7-acceptance .wpcf7-list-item-label{
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
}
.wpcf7-acceptance input[type="checkbox"]{
	position: relative;
	top: 2px;
}
.wpcf7 input[type="submit"]{
	position: relative;
	display: inline-block;
	padding: 1rem 4rem;
	font-size: var(--font-s);
	line-height: var(--lineh-s);
	font-weight: 600;
	border: 1px solid var(--color-bleu);
	overflow: hidden;
	text-decoration: none!important;
	transition: all 0.3s ease-in-out;
	border-radius: 3rem;
	background-color: var(--color-bleu);
	color: var(--color-blanc);
}
.wpcf7 input[type="submit"]:hover{
	transition: all 0.3s ease-in-out;
	background-color: var(--color-violet);
}
.wpcf7 form .wpcf7-response-output{
    margin: .5em 0;
    padding: 0;
    border: none;
	color: var(--color-violet);
	text-align: center;
	font-weight: 400;
	font-size: var(--font-m);
}
.wpcf7-not-valid-tip{
	color: red;
	font-size: var(--font-xs);
	/*
	position: absolute;
	left: 0;
	bottom: -2.5rem;
	*/
}
div.wpcf7 .ajax-loader{
    display: none!important;
}
form.is-invalid > .acf-error-message{
	visibility: visible;
	display: block;
	position: relative;
	padding: 10px 0;
}
.wpcf7-form .row{
	opacity: 1;
	height: 100%;
}
.wpcf7-form.sent .row{
	opacity: 0;
	height: 0;
	transition: all 0.8s ease-in;
}
.wpcf7-list-item {
	margin: 0;
}
@media only screen and (min-width:992px){
	select,
	textarea,
	input[type="password"],
	input[type="email"],
	input[type="url"],
	input[type="tel"],
	input[type="text"],
	input[type="email"]{
		margin: 0;
	}
}

/*------------------------------------*\
   TABLE
\*------------------------------------*/
table{
	margin-top: 1.5em;
	font-size: var(--font-s);
	line-height: var(--lineh-s);
	width: 100%;
}
table thead{
	font-size: var(--font-s);
	line-height: 1.5rem;
	font-weight: 600;
	color: var(--color-bleu);
	padding-bottom: 10px;
}
table thead th{
	padding-bottom: 10px;
}
table tbody tr{
	border-top: 1px solid var(--color-bleu-alt);
	border-bottom: 1px solid var(--color-bleu-alt);
}
table tr.section-header{
	font-weight: 600;
	background-color: var(--color-bleu-alt);
	color : var(--color-blanc);
	font-size: var(--font-s);
}
table tr.section-header td{
	padding: 8px;
}
table tr td:first-child{
	/*width: 60%;*/
}
table td{
	padding: 10px 0;
	text-align: left;
}

/*------------------------------------*\
    BLOCS LANDING
\*------------------------------------*/
.landing-home{
	/*overflow: hidden;*/
}
.masked-image{
	position: relative;
	height: 100%;
	width: 100%;
	/*overflow: hidden;*/
}
.masked-image::before{
	content: "";
	position: absolute;
	mask: url('img/formecarpv.svg') no-repeat center;
	mask-repeat: no-repeat;
	mask-position: 40% 2.5em;
	mask-size: 50vw;
	opacity: 0;
	height: 100%;
	width: 100%;
	bottom: 0;
	background-size: 80%;
	background-position: 25% 75%;
	background-repeat: no-repeat;
	transition: all 0.2s ease;
	overflow: hidden;
}

.fade.in .masked-image::before{
	opacity: 1;
	/*mask-position: 50% 2.5em;*/
	transition: opacity 0.5s ease;
}
.landing-home.active .masked-image::before{
	opacity: 0.2;
	transition: opacity 0.2s ease;
}
.landing-home .menu-circle {
	width: calc(30vw + 5vmin);
	height: calc(30vw + 5vmin);
	max-width: 580px;
	max-height: 580px;
	min-height: 400px;
	min-width: 400px;
	aspect-ratio: 1/1;
	background: var(--color-orange);
	border-radius: 50%;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	flex-direction: column;
	position: relative;
	z-index: 2;
	padding-left: 7%;
}
.landing-home .menu-circle button {
	background: none;
	border: none;
	outline: none;
	padding: 10px 0;
	cursor: pointer;
	transition: all 0.2s ease;
	text-align: left;
}
.landing-home .menu-circle button.active,
.landing-home .menu-circle button:focus,
.landing-home .menu-circle button:hover {
	transform: translateX(5px);
	color: var(--color-blanc)!important;
	transition: all 0.3s ease;
}
.landing-home .menu-circle button:hover::before {
	transform: rotate(-45deg) translateY(-5px);
	transition: transform 0.2s ease;
}
.landing-home .menu-circle button::before{
	font-family: "carpv";
	content: "\e905";
	display: inline-block;
	font-size: 2rem;
	transform: rotate(0);
	transition: transform 0.3s ease;
	padding-right: 10px;
}
.landing-home .submenu-container {
	flex: 1;
	position: relative;
	overflow: hidden;
}
.landing-home .submenu{
	position: relative;
	display: flex;
	top: 0;
	width: 100%;
	height: 100%;
	padding: 0 3rem;
	box-sizing: border-box;
	flex-direction: column;
	justify-content: center;
	gap: 20px;
	transition: all 0.3s ease;
	opacity: 0;
	transform: translateX(-100%);
}
.landing-home .submenu.active {
	opacity: 1;
	transition: opacity 0.1s ease transform 0.2s ease;
	z-index: 10;
	transform: translateX(0);
}
.landing-home .submenu-item {
	padding: 12px 24px;
	font-size: 1em;
	border-radius: 50px;
	font-weight: bold;
	text-decoration: none;
	background-color: var(--color-vertc);
	color: var(--color-bleu);
	display: inline-block;
}
.landing-home .submenu-item:hover {
	background-color: var(--color-orange);
	transition: all 0.5s ease;
}

@media only screen and (max-width:768px){
	.landing-home .menu-circle {
		min-height: 360px;
		min-width: 360px;
		padding-left: 13%;
	}
	#cercle-menu-wrapper{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		min-height: 85vh;
	}
	.landing-home .submenu-container {
		display: flex;
  		flex-direction: column;
		/*height: 50vh;*/
		width: 100%;
		overflow: visible;
		/*padding-bottom: 30px;*/
	}
	.landing-home .submenu {
		padding-top: 3rem;
		justify-content: flex-start;
	}
	.menu-circle button{
		font-size: 2rem;
		line-height: var(--lineh-m);
	}
	.landing-home .submenu {
		position: absolute;
		text-align: center;
		gap: 10px;
	}
	.masked-image::before {
		mask-position: 0% 0;
		mask-size: 122vw;
		height: 60vh;
		width: 135%;
		bottom: -10vh;
		background-size: 130%;
		background-position: 90% 0;
		left: -30vw;
	}
	.masked-image{
		padding-bottom: 0!important;
	}
}
@media only screen and (min-width:768px){
	.landing-home #cercle-menu-wrapper {
		display: flex;
	}
	.landing-home .submenu {
		position: absolute;
	}
}
@media only screen and (min-width:992px){
	.masked-image::before{
		mask-size: 70%;
	}
}
@media only screen and (min-width:1200px){
}
@media only screen and (min-width:1400px){
	.masked-image::before{
		mask-size: 60%;
	}
}
/*
.image-droite {
  top: 0;
  right: 0;
  bottom: 0;
  width: 50vw;
  overflow: hidden;
}

.image-droite img {
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
}
*/
/*------------------------------------*\
    SIMPLE TXT
\*------------------------------------*/
.intro-content h2,
.intro-content h3{
	font-size: var(--font-l);
	line-height: var(--lineh-l);
	font-weight: 600;
	margin-bottom: 1.5rem;
}
.section-txt h2{
	font-size: var(--font-m);
	line-height: var(--lineh-m);
	font-weight: 700;
	margin-bottom: 1.5rem;
	color: var(--color-rouge);
}
.section-txt h3{
	font-size: var(--font-s);
	line-height: var(--lineh-s);
	font-weight: 700;
	margin: 3rem 0 1rem 0;
	text-transform: uppercase;
	color: var(--color-bleu);
}
.section-txt table{
	margin-bottom: 3rem;
}
.section-txt table th{
	background-color: var(--color-bleu-alt)!important;
	color: var(--color-blanc)!important;
	padding: 5px 0;
	text-transform: uppercase;
	font-size: var(--font-xs);
}
.section-txt table th:first-child{
	padding-left: 5px!important;
}
@media only screen and (max-width:768px){
	.section-txt table th{
		text-transform: none;
		vertical-align: baseline;
		line-height: 1.8rem;
	}
}
/*------------------------------------*\
    INTRO + IMAGE
\*------------------------------------*/
.intro-content{
	position: relative;
	padding-left: 16.666667%;
}
.item-vert .intro-content h2,
.item-vert .intro-content h3{
	color: var(--color-vert);
}
.item-bleu h2,
.item-bleu h3{
	color: var(--color-bleu-alt);
}
.item-orange .intro-content h2,
.item-orange .intro-content h3{
	color: var(--color-orange);
}
.item-rouge .intro-content h2,
.item-rouge .intro-content h3{
	color: var(--color-rouge);
}
.item-violet .intro-content h2,
.item-violet .intro-content h3{
	color: var(--color-violet);
}
.item-vert .item-arrow::before{
	color: var(--color-vert);
	opacity: 0.3;
}
.item-orange .item-arrow::before{
	color: var(--color-orange);
	opacity: 0.3;
}
.item-bleu .item-arrow::before{
	color: var(--color-bleu);
	opacity: 0.3;
}
.intro-content::before{
	font-family: "carpv";
	content: "\e905";
	position: absolute;
	left: 0;
	top: 0;
	font-size: 8em;
	line-height: 1.1;
}
/*------------------------------------*\
    TXT + IMG / TXT + BTN / TXT + IMG ROUNDED
\*------------------------------------*/
.section-txt-img .content{
	min-height: 400px;
}
.section-txt-img h3,
.section-txt-img h2{
	font-size: var(--font-xl);
	line-height: var(--lineh-xl);
	color: var(--color-bleu);
	font-weight: 600;
	margin-bottom: 1rem;
}
.section-txt-img .order-0{
	position: relative;
	z-index: 5;
}
.section-txt-img:last-of-type{
	padding-bottom: 5em!important;
}
.section-txt-img-round figure{
	display: flex;
	justify-content: space-between;
}
.section-txt-img-round figure::before{
	font-family: "carpv";
	content: "\e905";
	position: relative;
	font-size: 8em;
	line-height: 1.6;
	color: var(--color-rouge);
}
.section-txt-img-round h3,
.section-txt-img-round h2{
	font-size: var(--font-m);
	line-height: var(--lineh-m);
}
.section-txt-img-round img{
	max-width: 250px;
}
.item-orange .img-round::before,
.section-txt-img.item-orange h3,
.section-txt-img.item-orange h2{
	color: var(--color-orange);
}
.item-rouge .img-round::before,
.section-txt-img.item-rouge h3,
.section-txt-img.item-rouge h2{
	color: var(--color-rouge);
}
.item-violet .img-round::before,
.section-txt-img.item-violet h3,
.section-txt-img.item-violet h2{
	color: var(--color-violet);
}
.item-bleu .img-round::before,
.section-txt-img.item-bleu h3,
.section-txt-img.item-bleu h2{
	color: var(--color-bleu);
}
.item-vert .img-round::before,
.section-txt-img.item-vert h3,
.section-txt-img.item-vert h2{
	color: var(--color-vert);
}
.item-rouge a.btn{
	background-color: var(--color-rouge)!important;
}
.item-bleu a.btn{
	background-color: var(--color-bleu)!important;
}
.item-orange a.btn{
	background-color: var(--color-orange)!important;
}
.item-violet a.btn{
	background-color: var(--color-violet)!important;
}
.item-vert a.btn{
	background-color: var(--color-violet)!important;
}

@media (max-width: 768px) {
	.section-txt-img .img-round{
		padding-top: 50px;
	}
	.section-txt-img-round figure {
		justify-content: center;
	}
	.section-txt-img-round figure::before {
	  position: absolute;
	  font-size: 6rem;
	  left: 30px;
	  top: -30px;
	}
}
@media (max-width: 1200px) {
	.section-txt-img-round figure::before {
	  font-size: 8rem;
	}
}
@media (min-width: 992px) {
	.col-lg-round-content {
		-ms-flex: 0 0 54%;
		flex: 0 0 54%;
		max-width: 54%;
	}
	.col-lg-round-img {
		-ms-flex: 0 0 33%;
		flex: 0 0 33%;
		max-width: 33%;
	}
	.home .section-txt-img .img-fit.img-pano{
		position: absolute;
		width: 125%;
	}
}
.section-txt-img-round .items-right{
	justify-content: flex-end;
}
.section-txt-img-round .col-md-6.order-1 figure{
	flex-direction: row-reverse;
}
.section-txt-img-round .col-md-6.order-1 figure::before{
	transform: rotate(-270deg) translate(-0.2em,0.2em);
}
@media (max-width: 768px) {
	.section-txt-img-round .items-right .col-lg-round-img{
		order: 0!important;
	}
	.section-txt-img-round .col-md-6.order-1 figure::before {
		transform: rotate(0deg) translate(-0.2em,0.2em);
	}
}
@media only screen and (min-width: 769px) and (max-width: 1200px){
	.section-txt-img-round .col-md-6.order-1 figure::before {
		transform: rotate(-270deg) translate(-0.2em,0.5em);
	}
}
/*------------------------------------*\
    FAQ & ACCORDEON
\*------------------------------------*/
.faq-list-items{
	position: relative;
}
.faq-list-items::before{
	font-family: "carpv";
	content: "\e905";
	position: absolute;
	left: 15px;
	top: 0;
	font-size: 8em;
	line-height: 1.1;
	color: var(--color-violet);
	opacity: 0.3;
}
.accordion {
	position: relative;
	cursor: pointer;
	padding: 1rem 50px 1rem 1.5rem;
	outline: none;
	transition: 0.3s ease;
	background-color: var(--color-violetc);
	border-radius: 30px;
	color: var(--color-violet);
}
.accordion.active{
	color: var(--color-blanc);
	background-color: var(--color-violet);
}
.panel {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.2s ease-out;
}
.accordion:hover {
	background-color: var(--color-violet);
	color: var(--color-blanc);
}
.accordion::after {
	display: inline-block;
	position: absolute;
	right: 15px;
	content: "↓";
	transform: rotate(0);
	transition: all 0.3s ease-in-out;
}
.accordion.active::after {
	transform: rotate(180deg);
	transition: all 0.3s ease-in-out;
}

@media (max-width: 991px) {
	.faq-list-items::before {
		font-size: 4em;
		left: 30px;
		top: -20px;
	}
	.faq-list-items h2 {
		padding-left: 8rem;
	}
}
/*------------------------------------*\
    BLOC MISSION & ACC HOME
\*------------------------------------*/
.section-mission .item-mission img{
	apsect-ratio: 1/1;
	border-radius: 50%;
	max-width: 85%;
}
.carpv-bg{
	position: relative;
	overflow: hidden;
}
.carpv-bg.fade::before{
	font-family: 'carpv';
	content: "\e907";
	position: absolute;
	top: 0;
	transform: rotate(0deg);
	left: calc(50% - 0.4em);
	font-size: 60em;
	color: var(--color-blanc);
	opacity: 0;
}
.carpv-bg.fade.in::before{
	top: 75%;
	transform: rotate(-135deg);
	opacity: 1;
	transition: all 3s ease;
}
.section-acc h3{
	font-size: var(--font-m);
	line-height: var(--lineh-m);
	color: var(--color-bleu);
	margin-bottom: 1.5rem;
	font-weight: bold;
}
.section-acc .btn-list-col .btn:nth-child(1){
	background-color: var(--color-vert);
	border: 1px solid var(--color-vert);
}
.section-acc .btn-list-col .btn:nth-child(2){
	background-color: var(--color-orange);
	border: 1px solid var(--color-orange);
}
.section-acc .btn-list-col .btn:nth-child(3){
	background-color: var(--color-bleu);
	border: 1px solid var(--color-bleu);
}
.section-acc .btn-list-col .btn:hover:nth-child(1){
	background-color: var(--color-blanc);
	border: 1px solid var(--color-vert);
	color: var(--color-vert);
}
.section-acc .btn-list-col .btn:hover:nth-child(2){
	background-color: var(--color-blanc);
	border: 1px solid var(--color-orange);
	color: var(--color-orange);
}
.section-acc .btn-list-col .btn:hover:nth-child(3){
	background-color: var(--color-blanc);
	border: 1px solid var(--color-bleu);
	color: var(--color-bleu);
}

/*------------------------------------*\
    BLOG CAT & SINGLE
\*------------------------------------*/
.title-ress::before{
	font-family: 'carpv';
	content: "\e90b";
	font-size: 4.3rem;
	position: relative;
	right: -3px;
	top: -3px;
}
.side-content{
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	transition: top 300ms ease;
}
.side-content .btn-dl{
	padding: 1.5rem 5rem 1.5rem 3rem;
}
.side-content .btn-dl::after{
	font-size: 1.5rem;
}
.side-content.sticky{
	top: 10em;
	transition: top 300ms ease;
}
.item-single-blog-content h2,
.item-single-blog-content h3{
	font-size: var(--font-m);
	line-height: var(--lineh-m);
	font-weight: 700;
	color: var(--color-rouge);
	margin: 3rem 0 2rem 0;
}
.note-title{
	padding-top: 0.2rem;
	padding-bottom: 0.2rem;
}
.note-txt-content{
	position: relative;
	padding-left: 15%;
	min-height: 100px;
}
.note-txt-content::before{
	font-family: "carpv";
	content: "\e905";
	position: absolute;
	left: 0;
	top: 0;
	font-size: 5em;
	line-height: 1.1;
	color: var(--color-rougec);
}

/*------------------------------------*\
    ENTETE BREADCRUMB
\*------------------------------------*/
.entete{
	position: absolute;
	z-index: 0;
	top: 0;
	height: 100vh;
	width: 100%;
}
.entete.fade::before{
	font-family: 'carpv';
	content: "\e907";
	position: absolute;
	top: 0;
	transform: rotate(0deg);
	left: calc(50% - 0.5em);
	font-size: 60em;
	color: var(--color-vertc);
	opacity: 0;
}
.entete-bg-bleuc.fade::before{
	color: var(--color-bleuc);
}
.entete-bg-vertc.fade::before{
	color: var(--color-vertc);
}
.entete-bg-orange.fade::before{
	color: var(--color-orangec);
}
.entete-bg-rouge.fade::before{
	color: var(--color-rougec);
}
.entete-bg-violet.fade::before{
	color: var(--color-violetc);
}
.entete.fade.in::before{
	top: 25%;
	transform: rotate(-45deg);
	opacity: 1;
	transition: all 2s ease;
}
.rank-math-breadcrumb{
	position: relative;
	z-index: 5;
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
	font-weight: 400;
}
.rank-math-breadcrumb a{
	text-decoration: none;
	color: var(--color-grisf);
}
.rank-math-breadcrumb .separator{
	display: inline-block;
	padding: 0 6px;
}

@media (max-width: 991px) {
	.entete.fade.in::before {
		top: 20%;
	}
	.entete.fade::before {
		left: calc(55% - 0.5em);
		font-size: 20em;
	}
}
/*------------------------------------*\
    BUREAU
\*------------------------------------*/
.bureau-list{
	display: flex;
	flex-wrap: wrap;
}
.bureau-list-item{
	display: flex;
	flex-direction: column;
}
.bureau-list {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1rem;
}
.bureau-list::before{
	font-family: "carpv";
	content: "\e905";
	position: absolute;
	right: 8%;
	top: 0;
	font-size: 8em;
	line-height: 1.1;
	color: var(--color-blanc);
	transform: rotate(90deg);
}
.bureau-list-item:nth-child(1) {
	grid-column: 1; grid-row: 1;
}
.bureau-list-item:nth-child(2) {
	grid-column: 2; grid-row: 1;
}
.bureau-list-item:nth-child(n+3):nth-child(-n+5) {
	grid-row: 2;
}
.bureau-list-item img {
	clip-path: circle(45%);
	max-width: 150px;
}

/*------------------------------------*\
    BLOC ACCORDEON
\*------------------------------------*/
.accordion-alt{
	position: relative;
	cursor: pointer;
	outline: none;
	transition: 0.3s ease;
}
.accordion-alt .accordion-button{
	text-align: left;
	border: 1px solid var(--color-bleu);
	background-color: var(--color-bleu);
	padding: 2rem 5rem 2rem 8rem;
	transition: all 0.3s ease-in-out;
	box-shadow: 0 0 0 0 rgba(0,0,0,0);
}
.accordion-alt .accordion-button:focus,
.accordion-alt .accordion-button:hover{
	box-shadow: 0 0 20px 0 rgba(0,0,0,0.3);
	transition: all 0.3s ease-in-out;
}
.panel {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.2s ease-out;
}
.panel.expanded {
    max-height: 1000px;
}
.accordion-alt:hover {
	color: var(--color-vert);
}
.accordion-alt{
	padding-left: 0;
}
h2.accordion-alt::after {
	content: "\e902";
	font-family: photosol;
	display: inline-block;
	position: absolute;
	top: calc(50% - 17px);
	right: 2rem;
	transform: rotate(-90deg);
	transition: all 0.3s ease-in-out;
	color: var(--color-blanc)
}
h2.accordion-alt.active::after {
	transform: rotate(0deg);
	transition: all 0.3s ease-in-out;
}
.accordion-alt .accordion-nbr{
	display: flex;
	position: absolute;
	left: 1.5rem;
	top: calc(50% - 2.5rem);
	width: 5rem;
	height: 5rem;
	border: 1px solid var(--color-blanc);
	border-radius: 50%;
	padding: 1rem;
	justify-content: center;
	align-items: center;
}
/*------------------------------------*\
    RECHERCHE
\*------------------------------------*/
.actu-item-search{
}
/*------------------------------------*\
    BACKGROUNDS
\*------------------------------------*/
.doc-item{
	padding: 30px 20px;
}

/*------------------------------------*\
    SEPARATEUR
\*------------------------------------*/
.sep{
	border-top: 1px solid var(--color-noir);
}

/*------------------------------------*\
    CTA
\*------------------------------------*/
@media (max-width: 991px) {
	.section-cta .col-lg-5.order-2{
		order: 0!important;
	}
}

/*------------------------------------*\
    FOOTER
\*------------------------------------*/
.footer-btn ul{
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	list-style: none;
	margin: 0;
	padding: 0;
}
.footer-btn ul li a{
	position: relative;
	display: inline-block;
	padding: 1rem 5rem;
	font-size: var(--font-xs);
	line-height: var(--lineh-xs);
	font-weight: 600;
	overflow: hidden;
	text-decoration: none!important;
	text-transform: uppercase;
	transition: all 0.3s ease-in-out;
	border-radius: 3rem;
	color: var(--color-blanc);
	text-align: center;
	background-color: rgba(63,101,174,1.00);
	border: 1px solid transparent;
	opacity: 1!important;
}
.footer-btn ul li a:hover{
	border: 1px solid var(--color-blanc);
	transition: all 0.3s ease-in-out;
}
.col-footer-menus{
	flex-wrap: wrap;
	position: relative;
}
.col-footer-menu{
	display: flex;
	flex-direction: column;
}
.col-footer-menu ul{
	list-style: none;
	margin: 0;
	padding: 0;
}
.col-footer-menu ul li{
	margin-bottom: 0.5rem;
}
.footer .footer-menu-bas a,
.footer .col-footer-menu a{
	font-weight: 400;
	color: var(--color-blanc);
	opacity: 0.5;
}
.footer a:hover{
	text-decoration: none;
	color: var(--color-blanc);
	opacity: 1;
}
.footer-menu-bas ul{
	margin: 0;
}
.footer-menu-bas ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	list-style: none;
	padding-left: 0;
}
.footer-menu-bas ul li{
	position: relative;
	margin-right: 20px;
}
.footer-menu-bas ul li::after{
	content: "-";
	position: absolute;
	right: -13px;
	font-size: 1rem;
}
.footer-menu-bas ul li:last-child:after{
	content: "";
}
@media only screen and (min-width:992px){
}
/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/
@media only screen and (max-width:480px){
}

@media only screen and (max-width:768px){
	.full-m{
		padding: 0!important;
	}
	.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;
    }
	.mt100{
		margin-top: 2.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;
    }
	.mt0-mobil{
		margin-top: 0;
	}
	.mb0-mobil{
		margin-bottom: 0;
	}
	.pt0-mobil{
		padding-top: 0;
	}
	.pb0-mobil{
		padding-bottom: 0;
	}
	.pb100-mobil{
		padding-bottom: 5rem;
	}
    .pt100-mobil{

        padding-top: 5rem;
    }
	.mb50-mobil{
		margin-bottom: 2.5rem;
	}
	.mt50-mobil{
		margin-top: 2.5rem;
	} 
	.mb100-mobil{
		margin-bottom: 5rem;
	}
	.mt100-mobil{
		margin-top: 5rem;
	}
}
@media only screen and (max-width:992px){
	.plr0-mobil{
		padding-left: 0!important;
		padding-right: 0!important;
	}
	.plr1-mobil{
		padding-left: 5%!important;
		padding-right: 5%!important;
	}
	.plr5-mobil{
		padding-left: 10%!important;
		padding-right: 10%!important;
	}
}
@media only screen and (min-width:320px){
	section{
		scroll-margin-top: 3em;
	}
	.scroll-margin{
		scroll-margin-top: 10em;
	}
}
@media only screen and (min-width:769px){
	.d-flex-center{
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}

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

.wp-caption,
.alignright,
.alignleft,
.alignnone{
	margin: 3rem 0;
}
.wp-caption .wp-caption-text,
.gallery-caption{
	font-size: var(--font-s);
	line-height: var(--lineh-s);
	margin: 0;
	padding: 15px 0;
}
blockquote{
	/*float: left;*/
	margin: 1em 1em 1em 0;
	/*max-width: 50%;*/
}
/*------------------------------------*\
    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;
	}
}
