html {
	overflow-x: hidden;
	scroll-behavior: smooth;
	overscroll-behavior: none;
	-ms-scroll-chaining: none;
}
* {
	text-rendering: optimizeLegibility;
	-webkit-text-size-adjust: none;
	-webkit-font-smoothing: antialiased;
}
body {
	height: auto;
	margin: 0;
	-webkit-text-size-adjust: none;
	overflow-x: hidden;
	scroll-behavior: smooth;
}
body.desktop-mode, body.desktop-mode * {
	cursor: url(../img/cursor.png), auto;
}
.page-wrapper {
	padding-top: 0;
}
*, ::before, ::after {
	box-sizing: border-box;
}
::selection {
	background-color: #0b0c1a;
	text-shadow: none;
}
/* width */
::-webkit-scrollbar {
	width: 7px;
}

/* Track */
::-webkit-scrollbar-track {
box-shadow: inset 0 0 5px #022241; 
border-radius: 5px;
}

/* Handle */
::-webkit-scrollbar-thumb {
background: #0b0c1a; 
border-radius: 5px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
background: #0b0c1a; 
}

button {
	background: none;
	border: 0;
}

.ben-after, 
.ben-before, 
.sec-content ul li, 
footer .pad.the-links ul li a, 
.the-intro .titre, 
.etape .titre, 
.titre.titre-pg, 
.prez-section .services-ctnr, 
.actualites .sld .pad, 
.pre-nav nav ul li a, 
footer .pad .mentions li a, 
.certificat .infos .pad-right .info:not(.ctas) .desc a {
	position: relative;
}

.ben-after::after, 
.ben-before::before, 
.cst-header nav ul li a::before, 
.cst-header nav ul li a::after, 
.sec-content ul li::before, 
footer .pad.the-links ul li a::before, 
.the-intro .titre::before, 
.etape .titre::before, 
.pre-nav nav ul li a::before, 
footer .pad .mentions li a::before, 
.certificat .infos .pad-right .info:not(.ctas) .desc a::before, 
.cst-banner .ben-cta::before {
	content: '';
	position: absolute;
	display: block;
}

.w100 {
    width: 100%;
}

.w50 {
	width: 50%;
}

.w70 {
	width: 70%;
}

.w30 {
	width: 30%;
}

.w40 {
	width: 40%;
}

.w60 {
	width: 60%;
}

.h100 {
    height: 100%;
}

.pr-db-w1 {
	position: relative;
	display: block;
	width: 100%;
}

.ul-style {
	list-style: none;
	background-color: transparent;
	padding: 0;
    overflow: hidden;
    font-size: 0;
}

.ul-style li {
	font-size: 16px;
}

.ben-transition {
    -moz-transition: all 0.3s ease-in-out 0.0001s;
    -o-transition: all 0.3s ease-in-out 0.0001s;
    -webkit-transition: all 0.3s ease-in-out 0.0001s;
	transition: all 0.3s ease-in-out 0.0001s;
}

.ben-transition2, 
.element .elt-header::after {
    -moz-transition: all ease-in-out 0.3s;
    -o-transition: all ease-in-out 0.3s;
    -webkit-transition: all ease-in-out 0.3s;
	transition: all ease-in-out 0.3s;
}

.ben-transition3 {
    -moz-transition: all ease-in-out 0.5s;
    -o-transition: all ease-in-out 0.5s;
    -webkit-transition: all ease-in-out 0.5s;
	transition: all ease-in-out 0.5s;
}

.ben-transition4 {
    -moz-transition: all ease-in-out 3s;
    -o-transition: all ease-in-out 3s;
    -webkit-transition: all ease-in-out 3s;
	transition: all ease-in-out 3s;
}

.ben-transition-cbl, 
.cst-header nav ul li a::before, 
.cst-header nav ul li a::after, 
.ben-cta::before, 
.ben-burger span::before, 
.cst-header nav, 
body::before, 
.page-title-ctnr::before, 
.site-logo img, 
.site-name, 
.site-name a, 
.ben-slider.actualites .slick-arrow, 
.cst-header nav > ul li > ul, 
.cst-header nav > ul li > ul li, 
.cst-header nav > ul li > ul li a, 
footer .pad.the-links ul li a, 
footer .pad .mentions li a, 
.ben-cta::after, 
footer .pad.the-links ul li a::before, 
.mentions li a::before, 
.list-of li .vignette a::before, 
.ben-slider.actualites .slick-arrow, 
.article .views-field-field-galerie a::before, 
.pre-nav nav ul li a::before, 
.info.ctas a:not(.ben-cta):before, 
.pre-nav nav ul li, 
.list-of.temoignages li .vignette a::after, 
.lexique-one::before, 
.views-element-container nav ul li a, 
.certificat .infos .pad-right .info:not(.ctas) .desc a::before, 
.appels .un-appel .pad .cta a::before, 
.partenaires .sld .pad .desc .cta-ctnr a::before, 
.catalogue-filtre.filtres button::after, 
.catalogue-filtre.filtres button::before, 
.children .pad .vignette::before {
	-moz-transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    -o-transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    -webkit-transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
    transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
}

.ben-transition-cb {
	-moz-transition: transform 0.5s 0.5s ease-in-out, opacity 0.5s 0.4s ease-in-out;
	-o-transition: transform 0.5s 0.5s ease-in-out, opacity 0.5s 0.4s ease-in-out;
	-webkit-transition: transform 0.5s 0.5s ease-in-out, opacity 0.5s 0.4s ease-in-out;
	transition: transform 0.5s 0.5s ease-in-out, opacity 0.5s 0.4s ease-in-out;
	will-change: transform, opacity;
}

.ben-transition5 {
	-moz-transition: all ease-in-out 4s;
    -o-transition: all ease-in-out 4s;
    -webkit-transition: all ease-in-out 4s;
    transition: all ease-in-out 4s;
}

.text-light {
	font-family: 'SourceSansPro-Light', sans-serif;
}

.text-regular, 
footer .pad.the-links ul li a, 
footer .pad .mentions li a, 
.cst-header nav > ul li > ul > li a {
	font-family: 'Outfit', 'SourceSansPro-Regular', sans-serif;
}

.text-upper, 
.cst-header nav ul li a {
	text-transform: uppercase;
}

.text-bold, 
.cst-header nav ul li a, 
.sec-content strong, 
.pads .phases ul li .paragraph > div:first-child div:last-child, 
.details-formation .infos .pad-left .desc a, 
.filtres button.active {
	font-family: 'DM Sans', 'SourceSansPro-Bold', sans-serif;
}

.text-extra-bold {
	font-family: 'SourceSansPro-Black', sans-serif;
}

.f12 {
	font-size: 12px;
	line-height: 16px;
}

.f14 {
	font-size: 14px;
	line-height: 20px;
}

.f16 {
	font-size: 16px;
	line-height: 24px;
}

.f18, 
.hero .cta-ctnr .ben-cta {
	font-size: 16px;
	line-height: 24px;
}

.f20, 
.hero .catch-line, 
.sec-content.services-prez ul li {
	font-size: 20px;
	line-height: 26px;
}

.f25, 
.hero .name {
	font-size: 25px;
	line-height: 29px;
}

.f28 {
	font-size: 28px;
	line-height: 32px;
}

.f30 {
	font-size: 30px;
	line-height: 34px;
}

.f35 {
	font-size: 35px;
	line-height: 39px;
}

.f40 {
	font-size: 40px;
	line-height: 44px;
}

.f70 {
	font-size: 70px;
	line-height: 74px;
}

.p10 {
	padding: 10px;
}

.p15 {
	padding: 15px;
}

.p20, 
.pads .phases ul li {
	padding: 20px;
}

.p30 {
	padding: 30px;
}

.pl15 {
	padding-left: 15px;
}

.pl30, 
.sec-content ul li {
	padding-left: 30px;
}

.pt25 {
	padding-top: 25px;
}

.pb25 {
	padding-bottom: 25px;
}

.pt50 {
	padding-top: 50px;
}

.pb50 {
	padding-bottom: 50px;
}

.px25 {
	padding-left: 25px;
	padding-right: 25px;
}

.py50 {
	padding-top: 50px;
	padding-bottom: 50px;
}

.pt100 {
	padding-top: 100px;
}

.pb100 {
	padding-bottom: 100px;
}

.mb10, 
.pads .phases ul li .paragraph > div:first-child div:last-child {
	margin-bottom: 10px;
}

.mb15 {
	margin-bottom: 15px;
}

.mx10 {
	margin-left: 10px;
	margin-right: 10px;
}

.mb20 {
	margin-bottom: 20px;
}

.mb15 {
	margin-bottom: 15px;
}

.mb25 {
	margin-bottom: 25px;
}

.mb30 {
	margin-bottom: 30px;
}

.mb40 {
	margin-bottom: 40px;
}

.mb50 {
	margin-bottom: 50px;
}

.mt50 {
	margin-top: 50px;
}

.white-text, 
a, 
.ben-form input:not([type="submit"]), 
.ben-form textarea, 
.newsletter-section form ::placeholder, 
body:not(.page_1).nav-on.scroll-min .cst-header nav ul li a, 
body:not(.page_1).nav-on:not(.scroll-min) .cst-header nav ul li a, 
.cst-header nav ul li a[href="https://fode.force-n.sn/fode/#/sigui/candidature/SIG2412"], 
body.scroll-min .cst-header nav ul li a[href="https://fode.force-n.sn/fode/#/sigui/candidature/SIG2412"], 
.scroll-min:not(.nav-on) .page-wrapper .cst-header nav ul li a[href="https://fode.force-n.sn/fode/#/sigui/candidature/SIG2412"], 
body:not(.page_1).scroll-min .cst-header nav ul li a[href="https://fode.force-n.sn/fode/#/sigui/candidature/SIG2412"], 
.nav-on .cst-header nav ul li a, 
.filtres button.active {
    color: #ffffff;
}

.black-text, 
.scroll-min:not(.nav-on) .page-wrapper .cst-header nav ul li a, 
.cst-header nav > ul li > ul > li a, 
body:not(.page_1).scroll-min .cst-header nav ul li a, 
footer .pad.the-links ul li a, 
footer .pad .mentions li a, 
.page_1 .cst-header nav ul li a, 
.pre-nav nav ul li a, 
.cst-header nav ul li a, 
.views-element-container nav ul li, 
.appels .un-appel .pad .name a:hover, 
.details-formation .infos .pad-left .desc a:hover, 
.inner-pg-sec .contenu p > a:hover, 
.inner-pg-sec .contenu p + ul li a:hover, 
ul.composantes li a:hover, 
.catalogue-section .list-of.certificats li .name a:hover, 
.children .pad .titre:hover h4 {
	color: #666666;
}

.gray-text, 
.actualites .titre:hover, 
.actualites .sld:hover .titre, 
.details-formation .infos .pad-left .desc a, 
.appel .pad-right .info .item.lieu a {
	color: #565656;
}

.blue-text, 
body:not(.page_1).nav-on.scroll-min .cst-header nav ul li ul li a, 
body:not(.page_1).nav-on:not(.scroll-min) .cst-header nav ul li ul li a, 
.black-text.titre, 
.volets li .name, 
.pads .phases ul li .paragraph > div:first-child div:last-child, 
.views-element-container nav ul li a, 
.certificat .infos .pad-right .info:not(.ctas) .desc a, 
.inner-pg-sec .contenu p > a, 
.inner-pg-sec .contenu p + ul li a {
	color: #216fb7;
}

.text-center, 
.ben-loader {
    text-align: center;
}

.text-right {
    text-align: right;
}

.text-left {
    text-align: left;
}

.text-justify {
    text-align: justify;
}

.v-flex, 
.v-align, 
.region-header {
	align-items: center;
}

.scroll-min:not(.nav-on) .page-wrapper .cst-header nav ul li a::before, 
body:not(.page_1).scroll-min .cst-header nav ul li a::before, 
footer .pad.the-links ul li a::before, 
.mentions li a::before, 
.page_1 .cst-header nav ul li a::before, 
.pre-nav nav ul li:first-child::before, 
.pre-nav nav ul li a::before, 
.cst-header nav ul li a::before,
.gray-bg {
	background-color: #666666;
}

.main-bg,
.blue-bg,  
.ben-loader, 
.scroll-min:not(.nav-on) .ben-burger span.white-bg, 
.cst-header nav ul li a[href="https://fode.force-n.sn/fode/#/sigui/candidature/SIG2412"], 
.list-of.temoignages li .vignette a:hover::after, 
.certificat .infos .pad-right .info:not(.ctas) .desc a::before, 
.appels .un-appel .pad .cta a::before, 
.filtres button.active, 
.partenaires .sld .pad .desc .cta-ctnr a::before {
    background-color: #216fb7;
}

.orange-bg, 
.ben-burger span::before, 
.cst-header nav ul li a[href="https://fode.force-n.sn/fode/#/sigui/candidature/SIG2412"]::before, 
.volets li::before {
    background-color: #de7f1f;
}

.orange-text, 
.ben-intro .name span, 
.mots li .name::before {
	color: #de7f1f;
}

.light-gray-bg, 
.cst-header nav > ul li > ul > li a:hover, 
body.formation, 
body.certificat, 
body.article,  
.actualites .sld .pad::before {
	background-color: #f8fafc;
	background-color: #f1f5f5;
}

.actualites .sld .pad:hover::before,
.filtres button:not(.active):hover {
	background-color: #d5f7f7;
}

.actualites .sld .pad::before {
	content: '';
	position: absolute;
	display: block;
	top: 20px;
	left: 20px;
	width: calc(100% - 40px);
	height: calc(100% - 40px);
}

.white-bg, 
.ben-form input[type="submit"], 
.quick-contact li::before, 
.cst-header nav ul li a.is-active::after, 
.cursor, 
.sec-content ul li::before, 
.scroll-min .page-wrapper header, 
.cst-header nav > ul li > ul, 
.page_1 .cst-header, 
.info.ctas a:not(.ben-cta):before, 
.nav-on .ben-burger span.gray-bg, 
.nav-on .cst-header nav ul li a::before, 
.ben-loader, 
.pads .phases ul li:nth-child(2n+1), 
.formations li .pad::before, 
.catalogue-filtre.filtres button::after, 
.cst-banner .ben-cta::before {
	background-color: #ffffff;
}

.container {
	position: relative;
	display: block;
	width: 100%;
	max-width: 1170px;
	margin: 0 auto;
	padding: 0 15px;
}

.grid-by-3 li {
	position: relative;
	display: inline-block;
	width: calc(calc(100% - 60px) / 3);
	margin-left: 30px;
	overflow: hidden;
	vertical-align: top;
}

.grid-by-3 li:first-child, .grid-by-3 li:nth-child(3n+1) {
	margin-left: 0;
}

.img {
	width: auto;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	border: 0;
}

a, 
a:hover, 
a:active, 
a:visited {
	text-decoration: none;
}

.cst-header {
	position: relative;
	background-color: #ffffff;
	z-index: 9999;
	margin-top: 0;
	margin-bottom: 20px;
	padding-top: 10px;
  	padding-bottom: 10px;
}

.page_1 .cst-header {
	position: fixed;
	padding-top: 10px;
  	padding-bottom: 10px;
}

.hero .v-flex, 
.about .v-flex
 {
	height: 100vh;
}

.cst-header nav ul, 
.cst-header nav ul li {
	list-style: none;
}

.cst-header ul li {
}

.region-header .logo-ctnr {
	flex: initial;
}

.display-flex,
.region-header nav, 
.region-header nav > ul, 
.v-flex, 
.v-align, 
.region-header, 
.region-prenav, 
.region-prenav nav {
	display: flex;
}

.region-header nav, 
.region-prenav nav {
	flex: auto;
	justify-content: end;
}

.justify-center, 
.benefits ul li .pad {
	justify-content: center;
}

.region-header nav > ul {
	flex-direction: row;
	align-items: center;
}

.display-grid {
	display: grid;
}

.grid-of-3 {
	grid-template-columns: auto auto auto;
	grid-template-columns: calc((100% - 2rem)/ 3) calc((100% - 2rem)/ 3) calc((100% - 2rem)/ 3); /* 2rem (2 * 1rem) because of the gap of 1rem */
}

.grid-of-4 {
	grid-template-columns: auto auto auto auto;
	grid-template-columns: 25% 25% 25% 25%;
}

.grid-of-5 {
	grid-template-columns: auto auto auto auto auto;
}

.grid-of-6 {
	grid-template-columns: auto auto auto auto auto auto;
	grid-template-columns: calc((100% - 5rem)/ 6) calc((100% - 5rem)/ 6) calc((100% - 5rem)/ 6) calc((100% - 5rem)/ 6) calc((100% - 5rem)/ 6) calc((100% - 5rem)/ 6); /* 5rem (5 * 1rem) because of the gap of 1rem */
}

.region-header nav ul li {
	position: relative;
	display: block;
	padding: 0 10px;
}

.cst-header nav ul li a {
	position: relative;
	display: block;
	/* overflow: hidden; */
}

.cst-header nav ul li a::before, 
footer .pad.the-links ul li a::before, 
.mentions li a::before, 
.pre-nav nav ul li a::before, 
.info.ctas a:not(.ben-cta):before, 
.certificat .infos .pad-right .info:not(.ctas) .desc a::before, 
.appels .un-appel .pad .cta a::before, 
.partenaires .sld .pad .desc .cta-ctnr a::before {
	top: auto;
	left: 0;
	bottom: -5px;
	width: 0;
	height: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
}

footer .pad.the-links ul li a::before, 
.mentions li a::before, 
.pre-nav nav ul li a::before, 
.info.ctas a:not(.ben-cta):before, 
.partenaires .sld .pad .desc .cta-ctnr a::before {
	bottom: -1px;
	height: 1px;
	-webkit-border-radius: 1px;
	border-radius: 1px;
}

.cst-header nav ul li a:hover::before, 
.cst-header nav ul li a.is-active::before, 
footer .pad.the-links ul li a:hover::before, 
footer .pad.the-links ul li a.is-active::before, 
.mentions li a:hover::before, 
footer .pad .mentions li a.is-active::before, 
.pre-nav nav ul li a:hover::before, 
.info.ctas a:not(.ben-cta):hover:before, 
.certificat .infos .pad-right .info:not(.ctas) .desc a:hover::before, 
.appels .un-appel .pad .cta a:hover::before, 
.partenaires .sld .pad .desc .cta-ctnr a:hover::before {
	width: 100%;
	opacity: 1;
}

.ben-cta span, 
.site-name a span, .cst-header nav ul li a span {
	-moz-transform: rotateX(0);
	-o-transform: rotateX(0);
	-webkit-transform: rotateX(0);
	transform: rotateX(0);
}

.ben-cta:hover span, 
.cst-header nav ul li a:hover span {
	-moz-animation-delay: calc(.2s * var(--i));
	-o-animation-delay: calc(.2s * var(--i));
	-webkit-animation-delay: calc(.2s * var(--i));
	animation-delay: calc(.2s * var(--i));
	-moz-transform: rotateX(360deg);
	-o-transform: rotateX(360deg);
	-webkit-transform: rotateX(360deg);
	transform: rotateX(360deg);
}

.second-bg, 
.noisy::before {
	background-image: -webkit-radial-gradient(at center, #ffffff54, #216fb7);
	background-image: radial-gradient(at center, #ffffff54, #216fb7);
}

.site-logo {
	position: relative;
	display: block;
}

.site-logo img {
	width: auto;
	max-width: 170px;
}

.site-name {
	position: absolute;
	display: block;
	top: 50%;
	left: 81px;
	-moz-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.letter-spacing-1, 
.site-name a, 
.title-ctnr .pre-title, 
.title-ctnr .title, 
.cst-header nav ul li a {
	letter-spacing: 1px;
}

.site-name a {
	font-size: 21px;
}

.ben-cta span, 
.site-name a span, 
.cst-header nav ul li a span {
	position: relative;
	display: inline-block;
}

.site-name a span {
	opacity: 0;
	animation-delay: calc(.2s * var(--i));  
}

.logo-ctnr:hover .site-name a span,
.after-loading .logo-ctnr .site-name a span {
	animation: flip 5s infinite;
	animation-delay: calc(.2s * var(--i));
	opacity: 1;
}

.forcen-mask {
	-webkit-mask-image: url(../img/empreinte.png);
	mask-image: url(../img/empreinte.png);
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: right; 
	mask-position: right;  
}

.forcen-mask img {
	width: 24vw;
	min-width: auto;
}

.ben-cta {
	position: relative;
	display: inline-block;
	width: fit-content;
	padding: 15px 30px;
	margin-right: 25px;
}

.br5, 
.ben-cta, 
.ben-form input:not([type="submit"]), 
.ben-form textarea, 
.ben-form input[type="submit"], 
.services-list li .pad, 
.cst-sticky-btn, 
.inner-sec-encart .pad-img a, 
.inner-pg-sec .contenu p > img {
	overflow: hidden;
	border-radius: 5px;
}

.hero {
	
}

.ben-loader {
	display: block;
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0; 
	left: 0;
	/* background-image: radial-gradient(at center, #ffffff75, #216fb7);
	background-size: 300%;
  	animation: animebg 5s infinite; */
	z-index: 99999;
}

body.ben-loading {
	max-height: 100vh;
	overflow: hidden;
}

body.ben-loading .ben-loader {
	opacity: 1;
}

body:not(.ben-loading) .ben-loader {
	opacity: 0;
	z-index: -99;
}

body.ben-loading .page-wrapper {
	-moz-transform: scale(1.02);
	-o-transform: scale(1.02);
	-webkit-transform: scale(1.02);
	transform: scale(1.02);
}

body:not(.ben-loading) .page-wrapper {
	-moz-transform: scale(1);
	-o-transform: scale(1);
	-webkit-transform: scale(1);
	transform: scale(1);
}

.ben-cta::before {
	top: 50%;
	left: 0;
	-moz-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 25px;
	height: 20px;
	border: solid 1px #ffffff;
  	background-color: rgba(255,255,255,0.01);
	border-radius: 0 9px 9px 0;
	display: none;
}

.ben-cta:hover::before {
	background-color: rgba(255,255,255,0.9);
}

.hero .cta-ctnr .ben-cta:first-child {
	margin-right: 30px;
}

.ben-cta .libelle, 
.ben-cta .typed-text {
	position: relative;
	display: inline-block;
}

.ben-burger {
	position: absolute;
	display: block;
	top: 0;
	left: auto;
	right: 15px;
	width: 50px;
	height: 40px;
	padding: 7px;
	cursor: pointer;
	padding-top: 12px;
}

.ben-burger span {
	position: relative;
	display: block;
	width: 100%;
	height: 3px;
	margin-bottom: 7px;
	top: auto;
	margin-top: 0px;
	border-radius: 7px;
	overflow: hidden;
	/* -webkit-box-shadow: 0.035rem 0.035rem 0.15rem rgba(255, 255, 255, 0.5);
	box-shadow: 0.035rem 0.035rem 0.15rem rgba(255, 255, 255, 0.5); */
}

.ben-burger span::before {
	top: 0;
	left: 0;
	width: 0;
	height: 100%;
	-moz-transition: all 0.3s ease-in-out 0s;
	-o-transition: all 0.3s ease-in-out 0s;
	-webkit-transition: all 0.3s ease-in-out 0s;
	transition: all 0.3s ease-in-out 0s;
}
.ben-burger span:nth-child(2):before {
	left: auto;
	right: 0;
	-moz-transition: all 0.3s ease-in-out 0.2s;
	-o-transition: all 0.3s ease-in-out 0.2s;
	-webkit-transition: all 0.3s ease-in-out 0.2s;
	transition: all 0.3s ease-in-out 0.2s;
}
.ben-burger span:last-child:before {
	-moz-transition: all 0.3s ease-in-out 0.4s;
	-o-transition: all 0.3s ease-in-out 0.4s;
	-webkit-transition: all 0.3s ease-in-out 0.4s;
	transition: all 0.3s ease-in-out 0.4s;
}

.ben-burger span:first-child, 
.nav-on .ben-burger span:first-child, 
.nav-on .ben-burger span:last-child {
	width: 100%;
}

.ben-burger span:nth-child(2) {
	width: 100%;
}

.ben-burger span:last-child {
	width: 70%;
}

.ben-burger:hover span::before, 
.ben-burger:hover span {
	width: 100%;
}

body::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.page-title-ctnr {
	padding: 25px 0;
}

.page-title-ctnr::before, 
.invite-cta-band::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(255,255,255,0.07);
}

.title-ctnr .title {
	margin-top: 0;
	margin-bottom: 30px;
}
/*** For contact form ***/
.ben-form input:not([type="submit"]), 
.ben-form textarea {
	background-color: transparent;
	position: relative;
	display: block;
	width: 100%;
	outline: 0;
	padding: 7px 10px;
	backdrop-filter: blur(16px);
	border: solid 1px rgba(255,255,255,0.12);
}

.ben-form input:not([type="submit"]):hover, 
.ben-form textarea:hover, 
.ben-form input:not([type="submit"]):active, 
.ben-form textarea:active, 
.ben-form input:not([type="submit"]):focus, 
.ben-form textarea:focus {
	border-color: rgba(255,255,255,0.25);
	outline: 0;
}

.ben-form #why2 {
	width: 0;
	height: 0;
	padding: 0;
	margin: 0;
}

.ben-form input[type="submit"] {
	border: 0;
	padding: 5px 15px;
}

.ben-form::after {
	top: auto;
	left: 0;
	width: 100%;
	height: 1px;
	bottom: -30px;
	background-color: rgba(236, 236, 236, 0.13);
}

.ben-form {
	margin-bottom: 52px;
}


.quick-contact li {
	padding-left: 15px;
	padding-bottom: 3px;
}

.quick-contact li::before {
	content: '';
	top: 9px;
	left: 5px;
	width: 3px;
	height: 3px;
	border-radius: 100%;
}

.quick-contact li a {
	position: relative;
	font-size: 14px;
	text-decoration: none;
	letter-spacing: 0.5px;
}

.ben-form.ok {
	border: solid 1px #ececec33;
	background-color: #ececec33;
	padding: 7px 5px;
}

.ben-form .items-ctnr {
	align-items: flex-start;
}

.ben-form .items-ctnr .line {
	margin-bottom: 15px;
}

.ben-form label {
	position: relative;
	display: block;
	margin-bottom: 5px;
	padding-left: 0;
}

.ben-form .items-ctnr .pad-left {
	padding-right: 15px;
}

.ben-form textarea {
	min-height: 196px;
}

body:not(.page_1)::before {
	position: fixed;
	opacity: 0.5;
}

.services-prez ul li {
	max-width: 800px;
}

.sec-content ul li::before {
	position: relative;
	top: 17px;
	left: -15px;
	width: 7px;
	height: 7px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
}

.wp-db-w1 {
	position: relative;
	display: block;
	width: 100%;
}

.services-list {
	align-items: flex-start;
	flex-wrap: wrap;
}

.services-list li {
	margin: 0 5px 10px;
	width: calc((100% - 30px) / 3);
}

.services-list li .pad {
	border: solid 1px rgba(255, 255, 255, 0.03);
	min-height: 180px;
	background-color: rgba(255, 255, 255, 0.07);
}

.sec-content ul li {
	margin-bottom: 15px;
}

/*** For scroll effects ***/
.ben-hidden {
	opacity: 0;
	filter: blur(1px);
	transform: translate(50px);
}

.ben-show {
	opacity: 1;
	-webkit-filter: blur(0);
	filter: blur(0);
	-moz-transform: translate(0);
	-o-transform: translate(0);
	-webkit-transform: translate(0);
	transform: translate(0);
}

.scroll-min .hero .v-align {
	-moz-transform: translate3d(0, -100%, 0) scale(0);
	-o-transform: translate3d(0, -100%, 0) scale(0);
	-webkit-transform: translate3d(0, -100%, 0) scale(0);
	transform: translate3d(0, -100%, 0) scale(0);
	-moz-transition: all 5s;
	-o-transition: all 5s;
	-webkit-transition: all 5s;
	transition: all 5s;
}

.floating-items {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.floating-items .ctnr {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100vh;
	overflow: hidden;
}

.floating-items img {
	position: absolute;
	display: block;
	width: auto;
	height: auto;
	-webkit-filter: drop-shadow(1px 1px 1px rgba(255,255,255,0.4));
	filter: drop-shadow(1px 1px 1px rgba(255,255,255,0.4));
}

.floating-items img.tl-one {
	top: 12%;
	left: 18%;
	opacity: 0.5;
}

.floating-items img.br-one {
	left: auto;
	right: 12%;
	top: auto;
	bottom: 10%;
	width: 160px;
}

.floating-items img.bl-one {
	left: 5%;
	bottom: 10%;
	width: 220px;
}

body:not(.ben-loading).scroll-min .page-wrapper {
	-moz-transform: none;
	-o-transform: none;
	-webkit-transform: none;
	transform: none;
}

.scroll-min .page-wrapper .cst-header {
	position: fixed;
	display: block;
	top: 0;
	left: 0;
	/* background: #216fb712; */
	margin-top: 0;
	padding-top: 15px;
	padding-bottom: 15px;
	/* -webkit-backdrop-filter: blur(9px);
	backdrop-filter: blur(9px); */
}

.scroll-min .page-wrapper .cst-header .site-logo img {
	max-width: 150px;
}

.scroll-min .page-wrapper .cst-header .site-name {
	left: 67px;
}

.site-name a {
	font-size: 20px;
	line-height: 24px;
}

.benefits ul li {
	position: relative;
	display: inline-block;
	margin-right: 30px;
	width: calc((100% - (30px * 2))/3);
	-moz-aspect-ratio: 1 / 1;
	-o-aspect-ratio: 1 / 1;
	-webkit-aspect-ratio: 1 / 1;
	aspect-ratio: 1 / 1;
	max-width: 210px;
}

.benefits ul li:last-child {
	margin-right: 0;
}

.benefits ul li .pad {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	border: solid 1px rgba(255, 255, 255, 0.09);
	-webkit-border-radius: 100%;
	border-radius: 100%;
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter: blur(3px);
	background-color: rgba(255, 255, 255, 0.07);
	font-size: 30px;
	background-size: 400%;
	color: transparent;
}

.values ul li {
	position: relative;
	display: inline-block;
	width: calc((100% - 60px) / 3);
	vertical-align: top;
	margin-right: 30px;
}

.values ul li:last-child {
	margin-right: 0;
}

.values ul li .pad {
	border: solid 1px rgba(255, 255, 255, 0.2);
	border-radius: 15px;
	min-height: 355px;
	background-size: 500%;
	padding-top: 75px;
}

.ben-stroke {
	-webkit-text-stroke: 1px #ffffff53;
	stroke-width: 1px;
}

.values ul li .number {
	position: absolute;
	top: 53px;
	left: auto;
	right: 15px;
	color: transparent;
	font-size: 142px;
}

.page_1 .values ul li .pad {
	min-height: auto;
}

.page_1 .values ul li .second-bg {
	background: radial-gradient(at center, #ffffff54, #216fb720);
	background-size: 600%;
}


/* .noisy {
	position: relative;
	overflow: hidden;
}

.noisy::before {
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	-webkit-animation: shake 7s steps(10) infinite;
	animation: shake 7s steps(10) infinite;
	opacity: .25;
	pointer-events: none;
} */

/***For mobile ***/

.for-mobile, 
.quick-contact li a::before, 
.page_1 .page-title-ctnr, 
.page_1 .page-title, 
html[lang="fr"] .en-one, 
html[lang="en"] .fr-one, 
.to-hide {
	display: none;
}

/*** In dev ***/
/* .region-header nav ul li:not(:last-child), 
#a-propos, 
.hero .cta-ctnr .ben-cta:first-child, 
.contact-invite-block, 
#services, 
#home-invite, 
*/

/* .desktop-mode .cursor {
	width: 20px;
	height: 20px;
	border-radius: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100000;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	pointer-events: none;
	-webkit-transition: width ease 0.3s, height ease 0.3s, opacity ease 0.5s;
	transition: width ease 0.3s, height ease 0.3s, opacity ease 0.5s;
	opacity: 0.6;
}

.desktop-mode .cursor.on-link {
	width: 60px;
	height: 60px;
	opacity: 0.3;
} */

.ben-intro {
	position: relative;
	overflow: hidden;
	min-height: fit-content;
}

.ben-intro .align-vertical {
	position: relative;
	z-index: 5;
}

.home-video::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0,0.85);
	background-color: rgba(0, 0, 0,0.5);
	z-index: 1;
}

.home-video {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	z-index: 0;
	top: 0;
	left: 0;
}

.home-video video {
	position: absolute;
	display: block;
	min-width: 100%;
	min-height: 100%;
	border: 0;
	background-color: transparent;
	width: 100%;
}

.cst-header nav ul li a {
	font-size: 13px;
	line-height: 17px;
	font-weight: bold;
}

.language-switcher-language-url .links {
	padding-top: 5px;
	margin: 0;
}

.language-switcher-language-url li {
	position: relative;
	display: inline-block;
	vertical-align: top;
	padding: 0 3px;
}

.language-switcher-language-url .language-link {
	position: relative;
	/* padding-right: 10px; */
	font-size: 0;
	width: 23px;
	display: block;
	height: 15px;
	box-sizing: border-box;
}

.language-switcher-language-url .language-link::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.language-switcher-language-url .language-link[hreflang="fr"]::before {
	background-image: url(../img/fr.png);
}

.language-switcher-language-url .language-link[hreflang="en"]::before {
	background-image: url(../img/en.png);
}

.line-of-3 li {
	width: calc((100% - 60px) / 3);
	margin-right: 30px;
}

.line-of-4 li {
	width: calc((100% - 60px) / 4);
	margin-right: 20px;
}

.line-of-3 li:last-child, 
.line-of-4 li:last-child {
	margin-right: 0;
}

.services-ctnr {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	background-attachment: fixed;
}

.chiffres li::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -1;
	opacity: .6;
	background-color: #BEDBF4;
}

.chiffres li .nombre {
	background: linear-gradient(125deg,#232624 0.25%,#1c70b7 70.65%);
	background-clip: text;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}

.temoignages .vignette iframe {
	height: 250px;
}

.partenaires-section .the-intro .desc {
	max-width: 800px;
	margin: 0 auto;
}

.ben-slider .slick-arrow, 
#block-forcen-breadcrumbs, 
.emp-services-section .pad  .cta-ctnr {
	display: none !important;
}

.partenaires .sld .vignette img {
	width: auto;
	max-width: 120px;
	margin: 0 auto;
}

.ben-slider.actualites .slick-arrow {
	display: block !important;
	position: absolute;
	top: 30%;
	width: 50px;
	height: 50px;
	background-color: rgba(0, 0, 0, 0.5);
	font-size: 0;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 90%;
	background-image: url(../img/white-caret.png);
	z-index: 2;
	cursor: pointer;
}

.ben-slider.actualites .slick-arrow.slick-prev {
	left: 0;
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

.ben-slider.actualites .slick-arrow.slick-next {
	left: auto;
	right: 0;
}

.actualites .vignette a {
	position: relative;
	display: block;
	width: 100%;
	height: 255px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: left top;
}

.actualites .vignette img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
	opacity: 0;
}

.newsletter-section .pads-ctnr {
	max-width: 900px;
	margin: 0 auto;
}

.newsletter-section form input:not([type="submit"]) {
	border: 0;
	border-bottom: solid 3px #ffffff;
	background: none;
}

.newsletter-section form input[type="submit"] {
	border: 0;
}

.cst-header nav > ul li > ul {
	position: absolute;
	display: block;
	padding-left: 0;
	list-style: none;
	left: 0;
	top: 20px;
	opacity: 0;
	visibility: hidden;
	padding-top: 20px;
	padding-bottom: 20px;
	width: 292px;
	-webkit-border-radius: 7px;
	border-radius: 7px;
	z-index: 5;
}

.cst-header nav > ul li:hover ul {
	opacity: 1;
	visibility: visible;
}

.cst-header nav > ul li > ul > li {
	text-transform: none;
	opacity: 0;
	-webkit-transform: translate(12px,14px);
	transform: translate(12px,14px);
}

.cst-header nav > ul li:hover ul > li {
	opacity: 1;
	-webkit-transform: translate(0px,0px);
	transform: translate(0px,0px);
}

.cst-header nav > ul li > ul > li a {
	text-transform: none;
	font-size: 16px;
	line-height: 20px;
	padding: 7px;
	font-weight: 100 !important;
}
/* 
.cst-header nav > ul li > ul > li a:hover {
	background-color: #ECECEC;
} */

.ben-delayed-transition, 
.services-list li, 
.ben-cta span, 
.site-name a span, .cst-header nav ul li a span, 
.cst-header nav > ul li > ul li {
	-moz-transition: all ease-in-out calc(.2s * var(--i));
	-o-transition: all ease-in-out calc(.2s * var(--i));
	-webkit-transition: all ease-in-out calc(.2s * var(--i));
	transition: all ease-in-out calc(.2s * var(--i));
}

body.scroll-min header/* , 
body:not(.page_1) .cst-header */ {
	border-bottom: solid 1px #ececec;
}

footer .pads-ctnr {
	align-items: flex-start;
	gap: 1rem;
}

footer .pad {
	width: calc(100% / 3);
}

footer .pad.the-links ul, 
footer .pad .mentions ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
}

footer .pad .mentions, 
footer .pad .mentions li {
	display: inline-block;
}

footer .pad .mentions li {
	padding-right: 15px;
}

/* footer .pad img {
	max-width: 110px;
} */

footer .pad img {
	max-width: 180px;
	margin-bottom: 15px;
}

.social li a {
	display: block;
	width: 30px;
	height: 30px;
}

.social li a::after {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%;
}

.social li a.facebook::after {
	background-image: url(../img/facebook.png);
}

.social li a.twitter::after {
	background-image: url(../img/twitter.png);
}

.social li a.linkedin::after {
	background-image: url(../img/linkedin.png);
}

.social li a.instagram::after {
	background-image: url(../img/instagram.png);
}

.social li a.youtube::after {
	background-image: url(../img/youtube.png);
}

body:not(.page_1) .cst-header {
	position: fixed;
}

.title-ctnr {
	height: 50vh;
	background-position: center top;
	background-attachment: fixed;
	background-repeat: no-repeat;
	background-size: cover;
	border-radius: 0;
	overflow: hidden;
}

.title-ctnr::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.4);
}

.element .question {
	position: relative;
	display: block;
	background-color: #eaeaea;
	background-color: #216fb715;
	border-radius: 3px;
	-webkit-transition: background-color 0.2s;
	transition: background-color 0.2s;
  cursor: pointer;
}
.element .question:hover {
	background-color: #e5e4e4;
	transition: all 0.5s ease-out;
}
.element .accordion-active {
	background-color: #e5e4e4;
}
.element .question .indicator {
	position: absolute;
	top: 13px; 
	right: 10px;
	display: inline-block;
	vertical-align: middle;
	width: 30px;
	height: 30px;
	margin-left: 5px;
	-webkit-transition: all 0.2s ease-out;
	transition: all 0.2s ease-out;
}
.element .accordion__rotate {
	transform: rotate(225deg);
}
.element .answer {
	display: none;
	background-color: #f3f3f3;
}

.title-ctnr .the-title {
	max-width: 75%;
}

.formations .vignette a {
	background-size: cover;
	position: relative;
	display: block;
	background-repeat: no-repeat;
	background-position: center;
	height: 200px;
	overflow: hidden;
}

.view-inner-formations .formations .vignette a {
	height: 120px;
}

.formations .vignette a img {
	opacity: 0;
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
}

body.formation .cst-header, 
body.certificat .cst-header, 
body.service .cst-header, 
body.article .cst-header {
	position: relative;
	padding-top: 10px;
	padding-bottom: 10px;
	margin-bottom: 0;
}

.single-title::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/title-pattern-2.jpg);
	background-repeat: repeat;
	background-position: top left;
	background-size: 70px;
	background-color: rgba(33, 111, 183,0.15);
	border-top: solid 1px rgba(33, 111, 183,0.15);
	border-bottom: solid 1px rgba(33, 111, 183,0.15);
}

.single-featured {
	position: relative;
	display: block;
	width: fit-content;
	overflow: hidden;
	border-radius: 15px;
	border: solid 1px rgba(33, 111, 183,0.15);
	padding: 0;
}

.single-featured img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
	margin: 0;
	border: 0;
}

.autres-formations-section .formations .vignette a {
	height: 150px;
}

article.node--type-formation, 
article.node--type-certificat, 
article.node--type-article  {
	border-bottom: solid 1px #565656;
}

.ben-cta::after {
	top: 50%;
	-moz-transform: translateY(-50%);
	-o-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left: auto;
	right: 23px;
	width: 35px;
	height: 10px;
	background-image: url(../img/white-arrow.svg);
	background-position: center;
	background-size: 30px;
	background-repeat: no-repeat;
}

.ben-cta {
	padding: 12px 70px 12px 15px;
}

.ben-cta:hover::after, 
.list-of li:hover .ben-cta::after {
	right: 15px;
}

body.ben-loading .ben-intro .name, 
body.ben-loading .ben-intro .ben-cta, 
body.ben-loading .after-load {
	opacity: 0;
	transform: translateY(4em) rotateZ(0deg);
}

.ben-intro .name, 
.ben-intro .ben-cta, 
.after-load {
	transition: transform 4s .25s cubic-bezier(0,1,.3,1),opacity .3s .25s ease-out;
	will-change: transform,opacity;
}

.ben-intro .name, 
.ben-intro .ben-cta, 
.after-load {
	opacity: 1;
	transform: translateY(0em) rotateZ(0);
}

.list-of li {
	-moz-transition: all ease-in-out calc(.2s * var(--i));
	-o-transition: all ease-in-out calc(.2s * var(--i));
	-webkit-transition: all ease-in-out calc(.2s * var(--i));
	transition: all ease-in-out calc(.2s * var(--i));
}

.services .pad .vignette img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
}

.emp-services-section .pad .vignette img {
	max-width: 120px;
	margin: 15px auto;
}
 
.posts li .pad .vignette a, 
.actualites .sld .pad, 
.volets .vignette, 
.em-en-sections .pad-img {
	overflow: hidden;
	border-radius: 12px;
}

.posts li .pad .vignette a {
	border-radius: 0px;
}

.emp-services-section li {
	background-color: rgba(33, 111, 183, 0.1);
}

.posts li .pad .vignette a {
	height: 225px;
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;
}

.posts li .pad .vignette a {
	height: 180px;
	background-position: top center;
	background-size: cover;
	background-repeat: no-repeat;
}

.list-of li .vignette a::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #216fb7;
	opacity: 0.02;
	z-index: 1;
}

.list-of li:hover .vignette a::before {
	opacity: 0.5;
}

.emp-services-section .list-of li .vignette a::before {
	display: none;
}

.home-video iframe {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.video-bg-trigger {
	position: absolute;
	display: block;
	width: 50px;
	height: 45px;
	top: auto;
	bottom: 45px;
	left: auto;
	right: 0;
	z-index: 1;
	border-radius: 5px 0 0 5px;
	background-image: url(../img/play-btn.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 25px;
	cursor: pointer;
}

.cst-playing .video-bg-trigger {
	right: -50px;
}

.home-video video {
	object-fit: cover;
}

.single-title.f40 .node__title span {
	line-height: 55px;
}

.article .views-field-field-galerie {
	position: relative;
	display: block;
	width: 100%;
	font-size: 0;
	padding-top: 15px;
}

.article .views-field-field-galerie > a {
	position: relative;
	display: inline-block;
	width: calc((100% - 45px) / 4);
	margin-right: 15px;
	margin-bottom: 15px;
	height: 170px;
  	overflow: hidden;
}

.article .views-field-field-galerie > a:last-child {
	margin-right: 0;
}

.article .views-field-field-galerie > a img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
	border: 0;
	height: auto;
}

.article .view.view-galerie {
	margin: 50px 0;
}

.article .views-field-field-galerie a::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: solid 1px #216fb7;
	z-index: 1;
	opacity: 0.5;
}

.article .views-field-field-galerie a:hover::before {
	border-width: 4px;
	opacity: 1;
}

.em-en-sections .pad-img img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
	margin: 0 auto;
	border: 0;
}

.pad.pad-img.w50 {
	width: 45%;
}

.devenir-partenaire-section .items {
	align-items: center;
	gap: 1rem;
}

.devenir-partenaire-section .items .text-ctnr {
	max-width: 70%;
}

.prez-section .services-ctnr::before {
	content: '';
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #216fb799;
}

.list-of.services li .pad {
	padding-left: 0;
	padding-right: 0;
	padding-top: 0;
}

.list-of.services li .pad .name, 
.list-of.services li .pad .desc, 
.actualites .titre, 
.appels .details, 
.formations li .pad .desc {
	padding: 0 15px;
}

.actualites a .titre {
	font-size: 16px;
	font-weight: normal;
	color: #666666;
}

.the-intro .titre::before, 
.prez-section .services-ctnr .titre::before, 
.titre.titre-pg::before, 
.etape .titre::before {
	width: 70px;
	height: 4px;
	top: auto;
	bottom: -16px;
	background-color: orange;
	left: 50%;
	transform: translateX(-50%);
}

.titre.titre-pg::before {
	left: 0;
	transform: none;
}

.actualites .sld .pad {
	min-height: 400px;
}

.pre-nav nav ul {
	position: relative;
	display: block;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.pre-nav nav ul li {
	position: relative;
	display: inline-block;
	padding: 0 8px;
}

.cst-header nav ul li a[href="https://fode.force-n.sn/fode/#/sigui/candidature/SIG2412"] {
	padding: 7px 17px;
	border-radius: 7px;
	overflow: hidden;
	border: 0;
	z-index: 2;
}

.cst-header nav ul li a[href="https://fode.force-n.sn/fode/#/sigui/candidature/SIG2412"]::before {
	top: 50%;
	height: 100%;
	transform: translateY(-50%);
	z-index: -1;
}

.cst-header nav ul li a[href="https://fode.force-n.sn/fode/#/sigui/candidature/SIG2412"], 
body.scroll-min .cst-header nav ul li a[href="https://fode.force-n.sn/fode/#/sigui/candidature/SIG2412"] {
    color: #ffffff;
}

.pre-nav {
	padding-top: 5px;
	padding-bottom: 5px;
}

.social li a {
	display: inline-block;
	vertical-align: middle;
	position: relative;
}
.social li a::before {
	pointer-events: none;
	position: absolute;
	z-index: 1;
	content: '';
	top: 100%;
	left: 5%;
	height: 10px;
	width: 90%;
	opacity: 0;
	background: -webkit-radial-gradient(center,ellipse,rgba(33, 111, 183, 0.35) 0%,rgba(33, 111, 183, 0) 80%);
	background: radial-gradient(ellipse at center,rgba(33, 111, 183, 0.35) 0%,rgba(33, 111, 183, 0) 80%);
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform,opacity;
	transition-property: transform,opacity;
}
.social li a::after {
	-webkit-transform: perspective(1px) translateZ(0);
	transform: perspective(1px) translateZ(0);
	box-shadow: 0 0 1px rgba(0,0,0,0);
	-webkit-transition-duration: 0.3s;
	transition-duration: 0.3s;
	-webkit-transition-property: transform;
	transition-property: transform;
}
.social li a:hover::before, .social li a:focus::before, .social li a:active::before {
	opacity: 1;
	-webkit-transform: translateY(5px);
	transform: translateY(5px);
}
.social li a:hover::after, .social li a:focus::after, .social li a:active::after {
	-webkit-transform: translateY(-5px);
	transform: translateY(-5px);
}
.social, 
.social li, 
.social li a {
	overflow: visible;
}

.pre-nav nav ul li:first-child::before {
	content: '';
	position: absolute;
	display: block;
	top: 2px;
	left: auto;
	height: calc(100% - 4px);
	width: 2px;
	right: -4px;
}

.list-of.services li .pad .name a {
	position: relative;
	display: block;
	min-height: 52px;
}

.list-of.services li .pad .desc {
	position: relative;
	display: block;
	min-height: 96px;
}

.prez-section .services-ctnr .titre {
	margin-top: 0;
}

.cst-header  nav > ul > li:nth-last-child(2) a:hover, 
.page_6 .cst-header  nav > ul > li:nth-last-child(2) a.is-active {
	color: #00a52e !important;
}
.cst-header  nav > ul > li:nth-last-child(2) a:hover::before, 
.scroll-min:not(.nav-on) .page-wrapper .cst-header nav > ul > li:nth-last-child(2):hover::before, 
.page_6 .cst-header  nav > ul > li:nth-last-child(2) a.is-active::before {
	background-color: #00a52e !important;
}

.cst-header  nav > ul > li:nth-last-child(3) a:hover, 
.cst-header  nav > ul > li:nth-last-child(4) a:hover, 
.page_4 .cst-header  nav > ul > li:nth-last-child(3) a.is-active, 
.page_5 .cst-header  nav > ul > li:nth-last-child(4) a.is-active {
	color: #de7f1f !important;
}
.cst-header  nav > ul > li:nth-last-child(3) a:hover::before, 
.cst-header  nav > ul > li:nth-last-child(4) a:hover::before, 
.page_4 .cst-header  nav > ul > li:nth-last-child(3) a.is-active::before, 
.page_5 .cst-header  nav > ul > li:nth-last-child(4) a.is-active::before {
	background-color: #de7f1f !important;
}

.cst-header  nav > ul > li:nth-child(2) a:hover, 
.page_3 .cst-header  nav > ul > li:nth-child(2) a.is-active {
	color: #216fb7 !important;
}
.cst-header  nav > ul > li:nth-child(2) a:hover::before, 
.page_3 .cst-header  nav > ul > li:nth-child(2) a.is-active::before {
	background-color: #216fb7 !important;
}

.cst-header nav ul li a::before {
	z-index: 6;
}

.ben-intro .v-align, .ben-intro.v-flex {
	align-items: end !important;
}

.ben-intro .v-align {
	margin-bottom: 75px;
}

.roboto-thin {
	font-family: "Roboto", sans-serif;
	font-weight: 100;
	font-style: normal;
  }
  
  .roboto-light {
	font-family: "Roboto", sans-serif;
	font-weight: 300;
	font-style: normal;
  }
  
  .roboto-regular, 
  .ben-intro .name {
	font-family: "Roboto", sans-serif;
	font-weight: 400;
	font-style: normal;
  }
  
  .roboto-medium {
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	font-style: normal;
  }
  
  .roboto-bold {
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-style: normal;
  }
  
  .roboto-black {
	font-family: "Roboto", sans-serif;
	font-weight: 900;
	font-style: normal;
  }
  
  .roboto-thin-italic {
	font-family: "Roboto", sans-serif;
	font-weight: 100;
	font-style: italic;
  }
  
  .roboto-light-italic {
	font-family: "Roboto", sans-serif;
	font-weight: 300;
	font-style: italic;
  }
  
  .roboto-regular-italic {
	font-family: "Roboto", sans-serif;
	font-weight: 400;
	font-style: italic;
  }
  
  .roboto-medium-italic {
	font-family: "Roboto", sans-serif;
	font-weight: 500;
	font-style: italic;
  }
  
  .roboto-bold-italic {
	font-family: "Roboto", sans-serif;
	font-weight: 700;
	font-style: italic;
  }
  
  .roboto-black-italic {
	font-family: "Roboto", sans-serif;
	font-weight: 900;
	font-style: italic;
  }

.ben-intro .name {
	font-size: 30px;
	line-height: 39px;
}

.ben-intro .name span {
	font-size: 30px;
}

.title-ctnr .v-align, .title-ctnr.v-flex {
	align-items: end;
}

.title-ctnr .v-align {
	margin-bottom: 20px;
}

.intro.f28 {
	font-size: 16px;
	line-height: 24px;
}


.volets li::before {
	content: '';
	position: absolute;
	display: block;
	top: 45px;
	left: 25px;
	width: 15px;
	height: 15px;
}

.volets li {
	position: relative;
	padding-left: 50px;
}

.question.f20 {
	font-size: 16px;
}

.newsletter-section form .p15 {
	padding: 2px 15px;
}

.ul-n-img {
	position: relative;
	display: flex;
	align-items: flex-start;
}

.ul-n-img .pad {
	width: 50%;
}

.page_2 .inner-pg-sec.content-sec .ul-n-img img.align-right {
	position: relative;
	display: block;
	width: auto;
	max-width: 402px;
	height: auto;
}

.ul-n-img ul li {
	position: relative;
	display: inline-block;
	background-color: #ececec;
	padding: 5px 10px;
	margin: 5px;
}

body.formation, 
body.certificat, 
body.article, 
.autres-formations-section {
	background-color: #ffffff;
}

.infos .pad-left {
	padding-right: 15px;
}

.nav-on .cst-header nav ul li a::before {
	bottom: 0;
}

.cst-sticky-btn {
	position: fixed;
	display: block;
	top: calc(100vh + 50px);
	left: auto;
	right: 20px;
	padding: 6px 15px;
	font-size: 16px;
	z-index: 99;
	box-shadow: 1px 0px 1px 1px rgba(255,255,255, 0.5);
}

.ben-loader::before {
	top: 50%;
	left: 50%;
	-webkit-transform: translate(50%,50%);
	transform: translate(-50%,-50%);
	width: 200px;
	height: 200px;
	background-image: url(../logo.webp);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.mobile-social {
	position: fixed;
	display: block;
	width: 100%;
	top: calc(100vh + 100px);
	left: 0;
	z-index: 9999;
}

.nav-on .mobile-social {
	top: calc(100vh - 100px);
}

.mobile-social .social {
	justify-content: center;
}

.mobile-social .social li a::after {
	-webkit-filter: grayscale(1) contrast(10) invert(1);
	filter: grayscale(1) contrast(10) invert(1);
}

.mobile-social .social li {
	-webkit-transition: all ease-in-out calc(.2s * var(--i));
	transition: all ease-in-out calc(.2s * var(--i));
	-webkit-transition-delay: calc(.4s * var(--i));
	transition-delay: calc(.4s * var(--i));
}

.mobile-social .social li {
	opacity: 0;
}

.nav-on .mobile-social .social li {
	opacity: 1;
}

.list-of.temoignages li .vignette a::after {
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 50px;
	height: 50px;
	border-radius: 100%;
	background-image: url(../img/play-btn.png);
	background-position: center;
	background-size: 20px;
	background-repeat: no-repeat;
	border: solid 2px #ffffff;
	z-index: 1;
}

.list-of.temoignages li .vignette a {
	overflow: hidden;
}

.list-of.temoignages li .vignette a img {
	margin: 0;
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
}

/* Login page */
#login_article #edit-submit--2 {
	background-color: #216fb7;
	color: #ffffff;
}
#login_article {
	max-width: 350px;
	margin: 25vh auto;
	padding: 30px;
	border: solid 1px #ececec;
}
#login_article .login-logo {
	display: block;
	position: relative;
	width: 100%;
	text-align: center;
}
#login_article .login-logo img {
	display: block;
	max-width: 120px;
	margin: 0 auto 25px;
}
#login_article form {
	display: block;
	position: relative;
	margin: 0 auto;
	/* max-width: 350px; */
	/* top: 25vh; */
}
#login_article form input.form-text {
	position: relative;
	display: block;
	width: 100%;
	background: #ececec;
	border: 0;
	font-size: 1.2em;
	padding: 5px 10px;
}
#login_article #edit-submit--2 {
	border: none;
	margin: 0 auto;
	display: block;
	padding: 5px 15px;
}
.path-user .description {
	display: none;
}
.path-user .form-text {
	margin-bottom: 25px;
}
.path-user label {
	margin-bottom: 5px;
	position: relative;
	display: block;
	font-family: 'Montserrat-Light', Consolas;
}
#login_article form input.form-text {
	border: solid 1px #216fb7;
}
#login_article {
	background-color: #f1f5f5;
}
#login_article form label, #login_article form input {
	position: relative;
	display: block;
	margin-bottom: 5px;
}
/* !Login page */

.liste-etapes-section .etapes .vignette {
	width: 90px;
	height: 90px;
	border-radius: 100%;
	overflow: hidden;
	margin: 0 auto;
}

.liste-etapes-section .etapes .vignette a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

.liste-etapes-section .etapes .vignette img {
	position: absolute;
	display: block;
	width: auto;
	height: auto;
	max-width: 75%;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.liste-etapes-section .etapes::before {
	top: 50px;
	left: -58px;
	width: 100%;
	height: 35px;
	background-color: #c0c0c0;
	background-image: url(../img/minus.png);
	background-repeat: repeat-x;
	background-size: 13px;
	background-position: center;
}

.liste-etapes-section .etapes::after {
	top: 43px;
	left: auto;
	right: 0;
	width: 90px;
	height: 50px;
	background-image: url(../img/triangle.png);
	background-size: 75%;
	background-position: center;
	background-repeat: no-repeat;
}

.details-etapes-sections .pad.vignette img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
}

.pads .phases ul li .paragraph > div div:first-child {
	display: none;
}

.pads .phases ul {
	list-style: none;
	padding-left: 0;
	margin-top: 0;
}

.pads .phases ul li {
	position: relative;
	display: block;
	padding-left: 70px;
}

.pads .phases ul li::before {
	content: '';
	position: absolute;
	display: block;
	top: 25pX;
	left: 25px;
	width: 15px;
	height: 15px;
	background-color: #add8e6;
}

.details-etapes-sections section:nth-child(2n+1), 
.details-etapes-sections section:nth-child(2n) ul li:nth-child(2n+1) {
	background-color: #f1f5f5;
}

.liste-etapes-section .etapes.accomp .vignette img {
	max-width: 100%;
}

.view-inner-formations .formations .pad::before {
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	width: calc(100% - 10px);
	height: calc(100% - 10px);
	background-color: #e4f1f5;
}

.page_5 .view-inner-formations .formations .vignette a, 
.list-of.certificats li .vignette a {
	height: 200px;
}

.list-of.certificats li .vignette a {
	overflow: hidden;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.list-of.certificats li .vignette a img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
}

.info.side-pic {
	overflow: hidden;
}

.info.side-pic img {
	position: relative;
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
}

.mots li .name {
	margin-left: 45px;
}

.mots li .name::before {
	content: attr(data-ordre);
	top: 50%;
	left: -45px;
	transform: translateY(-50%);
	width: 40px;
	height: 40px;
	background-color: #e4f1f5;
	text-align: center;
	line-height: 40px;
	font-size: 18px;
	overflow: hidden;
}

.lexique-section {
	background-color: #f1f5f590;
}

.cst-sticky-btn.lexique-one {
	top: auto;
	bottom: 120px;
	left: -40px;
	right: auto;
	transform: rotate(-90deg);
	padding-left: 35px;
}

.cst-sticky-btn.lexique-one::before {
	top: 50%;
	-webkit-transform: translateY(-50%) rotate(180deg);
	transform: translateY(-50%) rotate(180deg);
	left: 10px;
	width: 17px;
	height: 17px;
	background-image: url(../img/play-btn.png);
	background-size: 100%;
}

.cst-sticky-btn.lexique-one:hover::before {
	left: 5px;
}

.realisations .enonce {
	width: calc(100% - 120px);
}

.realisations .nombre {
	width: 120px;
}

.realisations li:nth-child(2n+1):not(.fake-th) {
	background-color: #faf0e6;
}

.views-element-container nav ul {
	position: relative;
	display: block;
	width: 100%;
	padding-left: 0;
	text-align: center;
}

.views-element-container nav ul li {
	position: relative;
	display: inline-block;
	padding: 5px 10px;
	height: 30px;
	border-radius: 0;
	background-color: #ececec;
	font-size: 16px;
	line-height: 21px;
}

.views-element-container nav ul li a {
	position: relative;
	display: block;
	width: 100%;
}

.view:not(.view-realisations) nav, 
.views-element-container nav {
	display: none;
}

.realisations-ctnr .views-element-container nav {
	display: block;
}

.details-etapes-sections ul li:nth-child(2n) {
	background-color: #e4f1f5;
}

.view-blog .posts li .pad::before {
	top: 10px;
	left: 50%;
	transform: translate(-50%);
	width: calc(100% - 20px);
	height: calc(100% - 20px);
}

.article .single-title.f40 .node__title span {
	font-size: 30px;
	line-height: 35px;
}

.article .single-featured {
	border-radius: 0;
}

.formations li .pad::before {
	top: 20px;
	left: 50%;
	transform: translateX(-50%);
	width: calc(100% - 40px);
	height: calc(100% - 40px);
	z-index: -1;
}

.view-blog .posts li .pad::before, 
.view-autres-formations .formations li .pad::before {
	background-color: #f1f5f5;
}

.view-autres-formations .formations li .pad::before {
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
	height: 100%;
	z-index: -1;
}

.view-autres-formations .formations li .name a {
	font-size: 14px !important;
	line-height: 18px;
	position: relative;
	display: block;
}

.view-autres-formations .formations li .pad {
	padding-bottom: 10px !important;
}

.view-autres-formations .formations li .pad .name {
	padding: 0 10px;
}

/*** Plateforme alumni ***/
/* .pre-nav nav ul li:last-child a {
	z-index: 2;
	padding: 0 7px;
	color: #ffffff;
}
.pre-nav nav ul li:last-child a::before {
	content: '';
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	background: orange;
	top: 0;
	left: 0;
	z-index: -1;
}
.pre-nav nav ul li:last-child {
	padding: 0;
} */

.list-of.etapes li .vignette a span, 
.list-of.etapes li .vignette a span .contextual-region, 
.list-of.etapes li .vignette a span .contextual-region .contextual + div {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

/*** JPO ***/
body.page_126:not(.ben-loading) .page-wrapper {
	transform: none;
}
.page_126 .title-ctnr {
	height: 90vh;
	background-attachment: fixed;
	background-position: center 120px;
	max-height: 720px;
}

.countdown-timer {
	background-color: #ececec;
	padding: 25px 15px;
	border-radius: 12px;
}

.countdown-timer .bold-number {
	position: relative;
	display: inline-block;
	width: 60px;
	height: 50px;
	font-size: 30px;
	line-height: 50px;
	background-color: #f5f5f5;
	margin: 0 3px;
	border-radius: 7px;
}

.countdown-timer h3 {
	font-size: 45px;
}

.countdown-timer .ben-cta {
	margin-right: 0;
}

.page_126 #signup-one {
	display: none;
}

.jpo-img {
	position: relative;
	display: block;
	width: 100%;
	margin-bottom: 15px;
}

.jpo-img img {
	position: relative;
	display: block;
	width: auto;
	height: auto;
	max-width: 100%;
}

/*** !JPO ***/

.article article.node--type-article .node__content img.align-left, 
.article article.node--type-article .node__content img.align-right, 
.article article.node--type-article .node__content img.align-center {
	position: relative;
	display: block;
	width: auto;
	max-width: 50%;
	height: auto;
	margin-bottom: 15px;
}

.article article.node--type-article .node__content img.align-center {
	max-width: 100%;
}

.article article.node--type-article .node__content img.align-left {
	margin-right: 15px;
}

.article article.node--type-article .node__content img.align-right {
	margin-left: 15px;
}

.article article.node--type-article .node__content .p-with-img {
	position: relative;
	display: flex;
	height: fit-content;
}

.article .views-field-field-galerie > a:nth-child(4n) {
	margin-right: 0;
}

.bandeau-slider {
	position: relative;
	width: 100%;
	height: auto;
	margin-top: 120px;
}

.bandeau-slider .slides .sld {
    height: 90vh;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    border: 0;
    margin: 0;
    padding: 0;
}

.bandeau-slider .flex-control-nav.flex-control-paging{
    display: block;
    width: 100%;
    position: absolute;
    bottom: 110px;
    text-align: center;
    margin: 0;
    z-index: 1000;
}

.bandeau-slider .flex-direction-nav, 
.bandeau-slider .slides > li {
    display: none;
}

.bandeau-slider .flex-control-paging li a {
	width: 11px;
	height: 11px;
	display: block;
	background: none;
	background: rgba(0, 0, 0, 0);
	cursor: pointer;
	text-indent: unset;
	-webkit-box-shadow: unset;
	-moz-box-shadow: unset;
	-o-box-shadow: unset;
	box-shadow: unset;
	-webkit-border-radius: 100%;
	-moz-border-radius: 100%;
	border-radius: 100%;
	border: solid 1px #cccccc;
	font-size: 0;
	outline: none;
}

.bandeau-slider .flex-control-paging li a.flex-active {
	background: #216fb7;
	cursor: default;
}

.ben-intro .views-element-container, 
.ben-intro .view-sliderbandeau, 
.ben-intro .view-sliderbandeau .view-content {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

/* .ben-intro {
	opacity: 0;
} */

.bandeau-slider .sld-items {
	margin-top: 120px;
	position: relative;
	display: block;
	width: 100%;
	max-width: 50%;
}

.bandeau-slider .old-v-align {
	height: 100%;
	top: 0;
	margin-top: 0;
	overflow: hidden;
}

.appels .un-appel .pad {
	border-bottom: solid 1px #ececec;
	padding-left: 0;
	padding-bottom: 0;
}

.appels .un-appel .pad .cta a {
	position: relative;
	display: block;
	width: fit-content;
}

.formulaire-candidature .the-intro .titre::before {
	transform: none;
	left: 0;
}

.filtres button {
	padding: 10px 15px;
	margin: 0 5px 5px 0;
	width: fit-content;
	cursor: pointer;
}

.filtres button.active {
	cursor: default;
}

.details-ctnr .item, 
.date-limite, 
.appel .pad-right .info .item {
	padding: 0 10px 0 18px;
}

.appel .pad-right .info .item {
	padding: 0 10px 0 23px;
}

.details-ctnr .item::before, 
.date-limite::before, 
.appel .pad-right .info .item::before {
	top: 0;
	left: 0;
	width: 18px;
	height: 18px;
	background-position: center;
	background-size: 15px;
	background-repeat: no-repeat;
}

.appel .pad-right .info .item::before {
	width: 23px;
	height: 23px;
	background-size: 17px;
}

.item.lieu::before {
	background-image: url(../img/lieu.png);
}

.item.contrat::before {
	background-image: url(../img/contrat.png);
}

.item.entreprise::before {
	background-image: url(../img/entreprise.png);
}

.item.niveau::before {
	background-image: url(../img/niveau.png);
}

.date-limite::before {
	background-image: url(../img/date-limite.png);
}

.appel .pad-right .info .item.lieu a {
	pointer-events: none;
}

.appel #signup-one {
	display: none !important;
}

/** Lorem ispum ***/
/* .node.node--type-formation .champ-libre, 
.list-of.formations li .pad .desc, 
.page_55 .inner-pg-sec.content-sec .contenu {
	display: none;
} */

.bandeau-slider .sld-items .name {
	background-color: rgba(0,0,0,0.3);
	padding: 0 5px;
}

.formations li .name a {
	position: relative;
	display: block;
	min-height: 52px;
}

.element .elt-header {
	cursor: pointer;
}

.element .elt-body {
	display: none;
}

.element .elt-header.accordion-active {
	background-color: unset;
}

.etape .elt-header .titre::before {
	left: 0;
	transform: none;
}

.etape.element {
	padding-top: 15px;
	padding-bottom: 15px;
}

.etape.element .elt-header .titre {
	position: relative;
	margin-top: 2px;
}

.etape.element .elt-header .desc {
	margin-bottom: 5px;
	padding-right: 30px;
}

.partenaires .sld .pad .desc {
	position: absolute;
	display: block;
	top: -120%;
	left: 50%;
	width: 270px;
	height: 120px;
	background-color: rgba(255, 255, 255, 0.5);
	padding: 7px 10px;
	border: solid 1px rgb(102, 102, 102, 0.25);
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	z-index: 4;
	opacity: 0;
	backdrop-filter: blur(5px);
	display: none;
	z-index: -1;
}

.partenaires .sld:hover .desc {
	top: 0;
	opacity: 1;
}

.partenaires .sld .pad .desc .the-text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
	width: 100%;
	border-bottom: solid 1px rgb(102, 102, 102, 0.25);
	overflow: hidden;
	white-space: normal;
	text-overflow: ellipsis;
	padding-bottom: 2px;
}

.partenaires .sld .pad .desc .the-title {
	margin-top: 0;
	margin-bottom: 0px;
}

.etape.element .pad.phases {
	padding: 0;
}

.details-etapes-sections .pad.vignette {
	padding-top: 0;
}

.etape.element .pads {
	padding-top: 15px;
}

.element .elt-header::after {
	top: 50%;
	left: auto;
	right: 10px;
	width: 25px;
	height: 25px;
	-webkit-transform: translateY(-50%) rotate(0);
	transform: translateY(-50%) rotate(0);
	background-image: url(../img/blue-caret.svg);
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
}

.element .elt-header.accordion-active::after, 
.element .elt-header:hover::after {
	-webkit-transform: translateY(-50%) rotate(90deg);
	transform: translateY(-50%) rotate(90deg);
}

.cobranding-section .pads-ctnr, 
.cobranding-section .featured-partners {
	align-items: center;
}

.gap-1 {
	gap: 1rem;
}

.cobranding-section .the-intro .titre::before {
	transform: unset;
	left: 0;
}

.cobranding-section .vignette img {
	position: relative;
	display: block;
	width: auto;
	margin-right: auto;
	margin-left: auto;
}

.cobranding-section .pad {
	position: relative;
	display: flex;
	height: 300px;
	max-height: 300px;
	overflow: hidden;
	align-items: center;
}

.cobranding-section li {
	width: calc((100% - 1rem)/2);
}

.cobranding-section .pad .desc {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0;
}

.cobranding-section li:first-child {
	background-color: #fffacd;
}

.cobranding-section li:last-child {
	background-color: #f0f8ff;
}

.cobranding-section li:hover .desc {
	opacity: 1;
}

.cobranding-section li:hover .vignette {
	opacity: 0;
}

.ben-slider.partenaires .slick-arrow {
	display: block !important;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	font-size: 0;
	width: 35px;
	height: 35px;
	background-color: #f0f8ff;
	cursor: pointer;
	background-image: url(../img/blue-caret.svg);
	background-size: 25px;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 5;
}

.ben-slider.partenaires .slick-arrow.slick-next {
	left: auto;
	right: 0;
}

.ben-slider.partenaires .slick-arrow.slick-prev {
	-webkit-transform: translateY(-50%) rotate(180deg);
	transform: translateY(-50%) rotate(180deg);
	left: 0;
}

.gradient-bg {
	background-color: rgba(233,233,233,0.5);
	background-image: linear-gradient(45deg, rgb(252, 228, 252), rgb(218, 228, 255));
}

.gradient-bg.occ-2 {
	background-color: rgba(233,233,233,0.5);
	background-image: linear-gradient(45deg, rgb(218, 228, 255), rgb(252, 228, 252));
}

.inner-sec-cta {
	padding-top: 15px;
	padding-bottom: 10px;
}

.inner-sec-encart, 
.inner-sec-cta {
	gap: 1rem;
	align-items: center;
}

.inner-sec-encart {
	background-color: rgba(233,233,233,0.5);
	gap: 1.75rem;
}

.inner-sec-encart .pad-img img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
}

.inner-sec-cta .ben-cta {
	min-width: 171px;
	height: fit-content;
	white-space: nowrap;
	margin: 0;
}

.inner-sec-encart.occ-2 .pad-text {
	order: 0;
}

.inner-sec-encart.occ-2 .pad-img {
	order: 1;
}

.inner-sec-encart .pad-img a {
	position: relative;
	display: block;
	width: fit-content;
	height: fit-content;
}

.inner-sec-encart .pad-img img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
}

.inner-sec-encart .pad-img a:hover img {
	-webkit-transform: scale(1.12);
	transform: scale(1.12);
}

.ben-cta.simple-one {
	background-color: transparent;
	padding-left: 0;
	padding-right: 40px;
	padding-bottom: 0;
	padding-top: 0;
}

.ben-cta.simple-one::after {
	top: auto;
	bottom: 6px;
	width: 14px;
	background-image: url(../img/blue-caret.svg);
	background-size: 16px;
	-webkit-transform: none;
	transform: none;
}

.inner-pg-sec .contenu p > img {
	float: left;
	left: 0;
	width: auto;
	height: auto;
	max-width: 100%;
	margin: 0 15px 10px 0;
}

.inner-sec-encart.illustration img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
	height: auto;
}

ul.composantes li a {
	background-color: #f0f8ff;
	background-image: linear-gradient(45deg, rgb(218, 228, 255), rgba(47, 134, 204,0.3));
}

.single-title .node__title {
	margin: 0;
}

.catalogue-filtre.filtres li {
	border-bottom: solid 1px #ececec;
}

.catalogue-filtre.filtres button {
	width: 100%;
	margin: 0;
	padding: 12px 15px 12px 35px;
}

.catalogue-filtre.filtres button::before, 
.catalogue-filtre.filtres button::after {
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.catalogue-filtre.filtres button::before {
	width: 20px;
	height: 20px;
	border: solid 1px;
	left: 10px;
}

.catalogue-filtre.filtres button::after {
	width: 12px;
	height: 12px;
	left: 14px;
	opacity: 0;
	-webkit-transform: translateY(-50%) scale(0);
	transform: translateY(-50%) scale(0);
}

.catalogue-filtre.filtres button.active::after {
	opacity: 1;
	-webkit-transform: translateY(-50%) scale(1);
	transform: translateY(-50%) scale(1);
}

.catalogue-filtre.filtres li:first-child button:not(.active) {
	background-color: #d8dede;
}

.catalogue-filtre.filtres button::before {
	width: 20px;
	height: 20px;
	border: solid 1px;
	left: 10px;
}

.catalogue-section .list-of.certificats li {
	background-color: #f0f8ff;
}

.catalogue-section .list-of.certificats li .vignette a img {
	opacity: 0;
}

.catalogue-section .list-of.certificats li .vignette a {
	height: 160px;
}

.catalogue-section .list-of.certificats li .vignette a .etiquette {
	position: absolute;
	top: 15px;
	left: 15px;
	padding: 2px 5px;
	font-size: 10px;
	line-height: 10px;
	border-radius: 3px;
	box-shadow: -1px 0px 2px #66666630;
	z-index: 2;
}

.catalogue-section .list-of.certificats li .name {
	padding: 0 5px;
}

.prez-section .le-contenu .pad-img img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
}

.page_2 .cobranding-section {
	padding-top: 15px;
}

.page_2 .cobranding-section .the-intro {
	display: none;
}

.page_2 .cobranding-section .the-intro + .ctnr.w70 {
	width: 100%;
}

.page_2 .cobranding-section .featured-partners .pad .desc {
	position: relative;
	width: auto;
	height: auto;
	top: unset;
	left: unset;
}

.page_2 .cobranding-section .featured-partners .pad .desc, 
.page_2 .cobranding-section li:hover .vignette {
	opacity: 1;
}

.page_2 .cobranding-section .featured-partners .pad .vignette {
	width: 120px;
}

.page_2 .cobranding-section .featured-partners .pad .desc .the-text {
	margin-bottom: 12px;
}

.children .pad .vignette img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
}

.children .pad .vignette::before {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.5);
	opacity: 0;
	z-index: 1;
}

.children .pad .vignette:hover::before {
	opacity: 1;
}

.une-rphare .picto {
	width: 50px;
	margin-left: 0;
}

.une-rphare .picto img {
	position: relative;
	display: block;
	width: auto;
	max-width: 100%;
	margin: 0;
}

.bandeau-slider .slides .sld .full-size-cta, 
.bandeau-slider .slides .sld .full-size-cta a {
	position: absolute;
	display: block;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 2;
	font-size: 0;
}

.bandeau-slider .sld-items .cta-ctnr {
	z-index: 4;
}

.bandeau-slider .sld-items .name.cst-empty {
	min-height: 200px;
	background-color: rgba(0,0,0,0);
}

.cst-banner .ben-cta::before {
	width: 10px; 
	height: 10px;
	top: 50%;
	left: auto;
	right: 5px;
	border-radius: 100%;
	animation: ring 1.5s infinite;
	z-index: 1;
}
  
.cst-banner .ben-cta:hover::before, 
.cst-banner .ben-cta:focus::before {
	animation: none;
	display: none;
}

.bandeau-slider .cta-ctnr, 
.bandeau-slider .flex-control-nav.flex-control-paging {
	width: fit-content;
}

.bandeau-slider .flex-control-nav.flex-control-paging {
	left: 50%;
	-webkit-transform: translateX(-50%,-50%);
	transform: translateX(-50%,-50%);
}

.autres-posts li .pad .vignette a {
	height: auto;
}

.autres-posts li .pad .name {
	margin: 0;
}

.autres-posts .un-post {
	border-bottom: solid 1px #ececec;
}

.article .galerie-ctnr .views-field-field-galerie > a {
	height: 110px;
}

.page_71 .inner-pg-sec .contenu p {
	font-size: 15px;
}

.page_71 .inner-pg-sec .contenu p > img {
	max-width: 40%;
}

.cst-post-meta {
	position: absolute;
	top: 15px;
	left: 15px;
	padding: 2px 10px;
	background-color: #000000;
	z-index: 1;
}

.date-publication {
	padding-left: 20px;
}

.date-publication::before {
	top: 50%;
	left: 0;
	width: 14px;
	height: 14px;
	background-image: url(../img/post-date.svg);
	transform: translateY(-50%);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 14px;
}

/***	Responsive	***/

/* JPO */
@media only screen and (min-width: 1439px) and (max-width: 1659px) {
	.page_126 .title-ctnr {
		height: 90vh;
		background-attachment: fixed;
		background-position: center 120px;
		background-size: contain;
		max-height: 640px;
	}
}
/* !JPO */

@media only screen and (min-width: 787px) {

	.scroll-effects {
		opacity: 0;
		transform: translateY(4em) rotateZ(0deg);
	}

	.scroll-effects {
		transition: transform 4s .25s cubic-bezier(0,1,.3,1),opacity .3s .25s ease-out;
		will-change: transform,opacity;
	}

	.scroll-effects.is-visible {
		opacity: 1;
		transform: translateY(0em) rotateZ(0);
	}
	
}

@media (min-width: 1371px) {
	.container {
		max-width: 1300px;
	}
	.f40 {
		font-size: 50px;
		line-height: 54px;
	}
	.f18, .hero .cta-ctnr .ben-cta {
		font-size: 16px;
		line-height: 24px;
	}
	.f20, .hero .catch-line, .sec-content.services-prez ul li {
		font-size: 30px;
		line-height: 36px;
	}
	.partenaires .sld .vignette img {
		max-width: 150px;
	}
	.services li:nth-child(2) .pad .name a {
		font-size: 29px;
	}
	.cst-header nav ul li a {
		font-size: 16px;

	}
}

@media (min-width: 1441px) {
	.container {
		max-width: 1400px;
	}
}

@media (min-width: 1600px) {
	.container {
		max-width: 1600px;
	}
}

@media (max-width: 1360px){
	.the-intro .le-contenu .pad-txt .desc {
		font-size: 14px !important;
	}
}

@media (max-width: 1130px) {
	.cst-header nav ul li a {
		font-size: 12px;
		line-height: 16px;
	}
	.site-logo img {
		max-width: 150px;
	}
}

@media (max-width: 1063px) {
	.cst-header nav ul li a {
		font-size: 11px;
		line-height: 15px;
	}
}

@media (max-width: 1019px) {
	.site-logo img {
		max-width: 120px;
	}
	.grid-of-4 {
		grid-template-columns: 33.33% 33.33% 33.33%;
	}
	.grid-of-6 {
		grid-template-columns: calc((100% - 3rem)/ 4) calc((100% - 3rem)/ 4) calc((100% - 3rem)/ 4) calc((100% - 3rem)/ 4);
	}
}


@media (max-width: 988px) {
	.site-logo img, 
	.page_71 .inner-pg-sec .contenu p > img {
		max-width: 100px;
	}
}


@media (max-width:969px) {
	.cst-header nav ul li a {
		font-size: 10px;
		line-height: 14px;
	}
}

@media (max-width: 923px) {
	.site-logo img {
		max-width: 90px;
	}
}

@media (max-width: 914px) {
	.language-switcher-language-url .links {
		padding-top: 5px;
		padding-left: 5px;
	}
}

@media (max-width: 878px) {
	.site-logo img {
		max-width: 75px;
	}
}

@media (max-width: 786px) {
	.for-mobile {
		display: block;
	}
	.for-desktop, 
	.hero .name br, 
	.nav-on .ben-burger span:nth-child(2), 
	.scroll-min .cst-header nav > ul > li:last-child {
		display: none;
	}
	.nav-on .ben-burger span:first-child {
		margin-bottom: -3px;
	}
	.nav-on .ben-burger span:first-child {
		transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		-o-transform: rotate(45deg);
	}
	.nav-on .ben-burger span:last-child {
		transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
	}
	.region-header nav ul, 
	.page_2 .cobranding-section .pad,  
	.mobile-flex-dir-col {
		flex-direction: column;
	}
	.w50, 
	.region-header nav ul, 
	.services-list li, 
	.benefits ul li, 
	.values ul li, 
	.line-of-3 li, 
	.line-of-4 li, 
	footer .pad, 
	.title-ctnr .the-title, 
	.question-text, 
	.pad.pad-img.w50, 
	.w70, 
	.w30, 
	.w40, 
	.w60, 
	.ul-n-img .pad, 
	.cobranding-section li {
		width: 100%;
	}
	.services-list li, 
	.benefits ul li, 
	.values ul li, 
	.line-of-3 li, 
	.line-of-4 li {
		margin: 0 0 15px;
	}
	.values ul li, 
	.title-ctnr .the-title, 
	.page_2 .inner-pg-sec.content-sec .ul-n-img img.align-right {
		max-width: 100%;
	}
	.cobranding-section .pad {
		height: 345px;
		max-height: 345px;
	}
	.page_2 .cobranding-section .pad {
		height: auto;
		max-height: unset;
	}
	.page_2 .cobranding-section .pad .desc {
		padding-left: 0;
		padding-right: 0;
	}
	.benefits ul li {
		margin-left: auto !important;
		margin-right: auto !important;
	}
	.benefits ul li .pad {
		font-size: 2rem;
	}
	.pad-text {
		order: 1;
	}
	.forcen-mask img {
		width: auto;
		min-width: unset;
	}

	.inner-sec-encart.p30 {
		padding: 15px;
	}
	.inner-sec-encart.occ-2 .pad-text {
		order: 1;
	}
	
	.inner-sec-encart.occ-2 .pad-img {
		order: 0;
	}
	.cst-header nav {
		position: fixed;
		display: block;
		top: 0;
		left: 100vw;
		width: 100vw;
		height: 100vh;
		background-color: #216fb7;
		padding-top: 90px;
		background-image: radial-gradient(at center, #ffffff75, #216fb7);
		background-size: 300%;
		animation: animebg 5s infinite;
	}
	.nav-on .cst-header nav {
		left: 0;
	}
	.cst-header nav ul li a {
		font-size: 50px;
		line-height: 54px;
		opacity: 0;
	}
	.nav-on .cst-header nav ul li a {
		line-height: 30px !important;
		opacity: 1;
	}
	.cst-header nav > ul li > ul > li a, 
	.cst-header nav ul li a {
		font-size: 16px !important;
		line-height: 20px !important;
	}
	.cst-header nav > ul li > ul {
		top: 40px;
		width: 265px !important;
	}
	.hero .items-ctnr {
		padding-top: 100px;
	}
	.site-logo img {
		max-width: 140px;
	}
	.region-header .logo-ctnr {
		flex: initial;
		margin-right: 20px;
	}
	.hero .cta-ctnr .ben-cta {
		display: block;
		margin-bottom: 15px;
	}
	.site-name {
		left: 63px;
	}
	.ben-form .items-ctnr .pad-left {
		padding-right: 0;
	}
	/* body.page_5::before {
		position: absolute;
	} */
	.pre-nav nav ul li {
		font-size: 10px;
	}
	.f30 {
		font-size: 25px;
		line-height: 29px;
	}
	.f35 {
		font-size: 35px;
		line-height: 39px;
	}
	.f40 {
		font-size: 30px;
		line-height: 34px;
	}
	.f70 {
		font-size: 45px;
		line-height: 48px;
	}
	section, 
	.grid-of-3 li {
		border-bottom: solid 1px #216fb7;
	}
	.grid-of-4, 
	.grid-of-6 {
		grid-template-columns: 100%;
	}
	.posts .un-post {
		border-bottom: solid 1px #ececec;
	}
	.posts .un-post .pad.p10 {
		padding: 0;
	}
	.hero .v-flex, .about .v-flex {
		height: auto;
	}
	.about .v-align {
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.language-switcher-language-url .links {
		padding-top: 0px;
		padding-left: 0;
	}
	.grid-of-3 {
		grid-template-columns: auto;
	}
	.the-intro .titre {
		padding-left: 30px !important;
	}
	.cobranding-section .the-intro .titre {
		padding-left: 0 !important;
	}
	.question-text {
		position: relative;
		display: block;
		padding-right: 25px;
		font-size: 18px;
	}
	footer .pad.the-links ul, 
	footer .social.mb30 {
		margin-bottom: 20px;
	}
	.pre-nav {
		padding-left: 0;
		padding-right: 0;
	}
	.pre-nav nav ul li {
		padding: 0 4px;
	}
	.pre-nav nav ul li:first-child::before {
		top: 5px;
		height: calc(100% - 8px);
		width: 1.5px;
	}
	.scroll-min .pre-nav nav ul li:last-child a::after {
		content: '';
		position: absolute;
		display: block;
		top: 0;
		left: -5px;
		width: calc(100% + 10px);
		height: 100%;
		background-color: #de7f1f;
		z-index: -1;
		border-radius: 5px;
	}
	.scroll-min .pre-nav nav ul li:last-child a {
		color: #ffffff;
	}
	.scroll-min .pre-nav nav ul li:last-child a::before {
		background-color: #ffffff;
	}
	.region-prenav nav {
		justify-content: start;
	}
	.language-switcher-language-url {
		padding-top: 2px;
	}
	.region-header nav > ul {
		align-items: flex-start;
	}
	.scroll-min .cst-sticky-btn:not(.lexique-one) {
		top: calc(100vh - 50px);
	}
	.ben-intro .name {
		font-size: 20px;
		line-height: 35px;
	}
	.ben-intro .name span {
		font-size: 25px;
	}
	.scroll-min .pre-nav {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
	}
	.scroll-min .page-wrapper .cst-header {
		top: 32px;
	}
	.scroll-min .pre-nav nav ul li:first-child {
		font-size: 0;
		overflow: hidden;
		padding: 0;
		margin: 0;
	}
	.scroll-min .pre-nav nav ul li:last-child, 
	.ul-n-img ul {
		padding-left: 0;
	}
	.page_1 .cst-header nav ul li a, 
	.cst-header nav ul li a {
		color: #ffffff;
	}
	.liste-etapes-section .etapes::before {
		top: -43px;
		left: 50%;
		width: 35px;
		height: 100%;
		background-image: url(../img/minus-vertical.png);
		background-repeat: repeat-y;
		background-size: 13px;
		background-position: center;
		-webkit-transform: translateX(-50%);
		transform: translateX(-50%);
	}
	.liste-etapes-section .etapes::after {
		top: auto;
		left: 50%;
		right: auto;
		-webkit-transform: translateX(-50%) rotate(90deg);
		transform: translateX(-50%) rotate(90deg);
		bottom: 8px;
		opacity: 1;
	}.pads .pad.vignette {
		order: 1;
		padding-left: 0;
  		padding-right: 0;
	}
	.pads .pad.phases {
		order: 2;
	}
	.cst-header nav > ul li > ul {
		background: #14436e !important;
	}
	/*** JPO ***/
	.page_126 .title-ctnr {
		height: 182px;
		background-attachment: scroll;
		max-height: 200px;
		background-size: contain;
		margin-top: 92px;
	}
	.countdown-timer h3 {
		font-size: 40px;
		line-height: 40px;
	}
	.countdown-timer .bold-number {
		width: 50px;
		height: 40px;
		font-size: 20px;
		line-height: 40px;
	}
	.countdown-timer .hide-words {
		display: none;
	}
	/*** !JPO ***/
	.article article.node--type-article .node__content img.align-left, 
	.article article.node--type-article .node__content img.align-right {
		max-width: 100%;
		margin-left: 0;
		float: none;
	}
	body:not(.nav-on) .ben-burger span.yellow-bg {
		background-color: #216fb7 !important;
	}
	body.nav-on .ben-burger span.yellow-bg {
		background-color: #ffffff !important;
	}
	.bandeau-slider .sld-items {
		margin-top: 50px;
		width: 100%;
		max-width: 85%;
		height: 100%;
	}
	.bandeau-slider .slides .sld {
		height: 60vh;
		background-size: cover;
	}
	.ben-intro .name {
		font-size: 25px;
    	line-height: 35px;
	}
	.bandeau-slider .flex-control-nav.flex-control-paging {
		bottom: -30px;
	}
	.ben-intro {
		background-color: #ececec40;
		padding-bottom: 50px;
		border-bottom-color: #ececec;
	}
	.bandeau-slider .slides {
		background-color: #ececec40;
	}
	.bandeau-slider .old-v-align > .container {
		height: 100%;
	}
	.bandeau-slider .cta-ctnr {
		position: absolute;
		display: block;
		top: auto;
		bottom: 40px;
	}
	.bandeau-slider {
		margin-top: 92px;
	}
	.catalogue-filtre.filtres button {
		font-size: 12px;
	}
}
@media (max-width: 340px){
	.f25, .hero .name {
		font-size: 24px;
	}
	.hero .items-ctnr {
		padding-top: 90px;
	}
}

/*** Keyframes ***/
@-moz-keyframes flip {
	0%,80% {
	  transform: rotateX(360deg) ;
	}
}
@-o-keyframes flip {
	0%,80% {
	  transform: rotateX(360deg) ;
	}
}
@-webkit-keyframes flip {
	0%,80% {
	  transform: rotateX(360deg) ;
	}
}
@keyframes flip {
	0%,80% {
	  transform: rotateX(360deg) ;
	}
}
/****/
@keyframes animebg {
	0%,80% {
		background-position: 0% 50%;
	}
}

/****/
@keyframes shake {
	0%, 100% {
		transform: translate(0);
	}
	10% {
		transform: translate(-5%,-10%);
	}
	20% {
		transform: translate(-15%,5%);
	}
	30% {
		transform: translate(7%,-25%);
	}
	40% {
		transform: translate(-5%,25%);
	}
	50% {
		transform: translate(-15%,10%);
	}
	60% {
		transform: translate(15%);
	}
	70% {
		transform: translateY(15%);
	}
	80% {
		transform: translate(3%,35%);
	}
	90% {
		transform: translate(-10%,10%);
	}
}

/*********/
@-moz-keyframes ring {
	0% {
	  width: 10px;
	  height: 10px;
	  opacity: 1;
	}
	100% {
	  width: 20px;
	  height: 20px;
	  opacity: 0;
	}
}
@-o-keyframes ring {
	0% {
	  width: 10px;
	  height: 10px;
	  opacity: 1;
	}
	100% {
	  width: 20px;
	  height: 20px;
	  opacity: 0;
	}
}
@-webkit-keyframes ring {
	0% {
	  width: 10px;
	  height: 10px;
	  opacity: 1;
	}
	100% {
	  width: 20px;
	  height: 20px;
	  opacity: 0;
	}
}
@keyframes ring {
	0% {
	  width: 10px;
	  height: 10px;
	  opacity: 1;
	}
	100% {
	  width: 20px;
	  height: 20px;
	  opacity: 0;
	}
}