/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/


/*COLORS ROOT*/
:root {
	--pale: #F5F3ED;
	--light: #EBE8DC;
	--green: #AAB099;
	--red: #DB6D6D;
	--border: #1938324d;
	--radius: 25px;
	--grid: 50px;
	--row: 100px;
	--large: 10vw;
	--transition: .3s;
}
.black *:not(a span):not(.hero-news *), .asphalte *:not(a span):not(.hero-news *), .nuit *:not(a span):not(.hero-news *), .asphalte *:not(a span):not(.hero-news *), .foret *:not(a span):not(.hero-news *), .fougere *:not(a span):not(.hero-news *), .orange *:not(a span):not(.hero-news *) {
    color: white;
}
.white { background: white; }
.black { background: black; }
.green { background: var(--green); }


/*GLOBAL*/
.radius {
	border-radius: var(--radius);
}
.center {
	text-align: center;
}
body .grid, .footer-widgets-container, .inside-site-info {
	padding-left: var(--grid);
	padding-right: var(--grid);
}
body.tax-ressources_category article .inside-article .entry-header {
    padding: 0;
}
.main-row, .footer-widgets-container {
    padding-top: var(--row);
	padding-bottom: var(--row);
}
.wrap, .vc_column_container.wrap {
	padding: var(--row) var(--grid);
}
.grid-left {
    padding-left: var(--grid);
}
.grid-right {
    padding-right: var(--grid);
}
.wpb-content-wrapper > div {
    position: relative;
    float: left;
    width: 100%;
}


/*Animation : Fade in*/
@-webkit-keyframes fadein {
    100% {
 opacity:1;
}
}
@keyframes fadein {
    100% {
 opacity:1;
}
}
/*Animation : Fade out*/
@-webkit-keyframes fadeout {
    100% {
 opacity:0;
}
}
@keyframes fadeout {
    100% {
 opacity:0;
}
}
.fader {
	opacity: 0;
	transform: translateY(40px);
	transition: opacity 0.6s ease-out, transform 0.6s ease-out;
}
.fader.in-view {
	transition-delay: 0.65s;
	opacity: 1;
	transform: translateY(0);
}


/*GTRANSLATE*/
a.glink.gt-current-lang {
    display: none!important;
}
.gtranslate_wrapper {
    position: relative;
	margin: 0;
}
a.glink {
    color: var(--light);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px !important;
    position: relative;
    left: 1px;
    font-weight: 100 !important;
}
a.glink:hover, a.glink:focus {
    color:var(--green);
}


/*FONTS*/
html *, .mobmenu-content * {
    font-family: "Inter", serif!important;
	font-family: "Outfit", sans-serif!important;
}
.fa-classic, .fa-light, .fa-regular, .fa-solid, .fa-thin, .fal, .far, .fas, .fat {
    font-family: "Font Awesome 6 Pro"!important;
}
.fa-brands, .fab {
    font-family: "Font Awesome 6 Brands"!important;
}
.fa-sharp, .fasl, .fasr, .fass, .fast {
    font-family: "Font Awesome 6 Sharp"!important;
}
.dashicons, .dashicons-before:before {
    font-family: dashicons!important;
}


/*LOADER/SPLASH/TIMEOUT*/
.splash.timeout {
    pointer-events: none;
	opacity: 1;
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
	transition: transform 1s cubic-bezier(.76,0,.24,1);
}
.splash {
	/*remove when ready to push online*/ /*display:none!important;*/
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999999;
    display: flex;
    background: var(--light);
	transition: transform 1s cubic-bezier(.76,0,.24,1) .3s;
    transform: scale(1);
    opacity: 1;
    pointer-events: initial;
    justify-content: center;
    align-items: center;
	overflow-x:hidden!important;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}
body:not(.home) .splash {
    background: var(--green);
}
.splash-anim {
    opacity: 0;
    animation: fadein 1s ease both;
    animation-delay: 0.25s;
}
body:not(.home) .splash-anim {
    display:none;
}


/*GÉNÉRAL*/
html {
    -webkit-text-size-adjust: 100%!important; /* Prevent font scaling in landscape while allowing user zoom */
	overflow-x:hidden!important;
}
.page-header, .sidebar .widget, .site-main>* {
    margin-bottom: 0;
}
body {
    overflow: hidden;
}
b, strong {
    font-weight: 600;
}
.wpb_single_image img, .accordion-content .image, .contenu-image img, .radius {
    border-radius: 20px;
}
body .featured-image {
    display: none!important;
}
.light, .separate-containers .inside-article, .separate-containers .comments-area, .separate-containers .page-header, .one-container .container, .separate-containers .paging-navigation, .inside-page-header {
    background: var(--light);
}
body {
	overflow-x:hidden!important;
	background: var(--light);
}
body .grid-container {
    max-width: 100%;
}
body, p {
	font-size: 18px;
	font-weight: 400;
	color: black;
}
p strong, li strong, p strong a {
	font-weight: 600;
}
a, button, input {
    transition: .3s;
}
a {
    color: black;
    text-decoration: none;
}
a:hover, a:focus, a:active {
    color: var(--green);
}
h1, h2, h3, h4, h5, h6, .gform_description {
    font-weight: 400;
    line-height: 0.95;
}
h1, h2 {
    font-size: 85px;
    font-weight: 300;
    line-height: 0.88;
    position: relative;
    left: -3px;
}
h3, .gform_title, .single-realisations .page-title h1 {
    font-size: 55px;
    position: relative;
    left: -2px;
	font-weight: 400;
}
h4, .gform_description {
    font-size: 35px;
    line-height: 1.2;
}
h5 {
    font-size: 24px;
    display: inline-block;
    text-transform: none;
    line-height: 1.3;
    letter-spacing: 0.25px;
    padding-bottom: 15px;
	font-weight: 600;
}
h6, body:not(.single-realisations) .page-title h1 {
    font-size: 16px;
    text-transform: uppercase;
    color: var(--green);
    letter-spacing: 2px;
    font-weight: 700;
    font-family: "Inter", serif !important;
    padding-bottom: 25px;
}
h1, h2, h3, h4, h5, h6, p {
    margin:0;
}
body .vc_row {
    margin-left: 0;
    margin-right: 0;
}
body:not(.page-template-services-template) .inside-article .entry-header {
	display:none;
}
.entry-content:not(:first-child), .entry-summary:not(:first-child), .page-content:not(:first-child) {
    margin-top: 0;
}
.separate-containers .comments-area, .separate-containers .inside-article, .separate-containers .page-header, .separate-containers .paging-navigation {
    padding: 0;
}
.separate-containers .site-main {
    margin: 0;
}
.button, .wp-block-button .wp-block-button__link {
    padding: 0;
}
.button a, a.button, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:focus, body .gform_wrapper .gform_footer input.button, .main-navigation .main-nav ul li.button a, body #mobmenuright li.button a, .widget_nav_menu ul li.button a, body .dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover {
    font-size: 13px;
    margin: 0;
    letter-spacing: 2px;
    padding: 12px 24px;
    background: var(--green);
    color: var(--light);
    border-radius: 10px;
    min-height: 45px;
    line-height: 1;
    transition: .3s;
    display: inline-flex;
    border: 0;
    align-items: center;
    justify-content: center;
    font-weight: 500;
    text-transform: uppercase;
    text-align: center;
}
.button a:hover, a.button:hover, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover, body .gform_wrapper .gform_footer input.button:hover,  .widget_nav_menu ul li.button a:hover, body .dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
    background: black;
    color: var(--light);
	border-color: black;
}
button:focus, html input[type="button"]:focus, input[type="reset"]:focus, input[type="submit"]:focus, a.button:focus, a.wp-block-button__link:not(.has-background):active, a.wp-block-button__link:not(.has-background):focus, a.wp-block-button__link:not(.has-background):hover {
    color: var(--light);
    background-color: var(--green);
}
body .mobmenu-content li .button a, body .mobmenu-content li .button a:hover {
    background: black;
    color: var(--light);
    border-color: var(--green);
}
.scrolled .widget_nav_menu ul li.button a:after, .input-icon, .button a:after, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:after, .main-navigation .main-nav ul li.button a:after, body #mobmenuright li.button a:after, .widget_nav_menu ul li.button a:after {
    content: "\f061";
    font-family: "Font Awesome 6 Sharp" !important;
    font-size: 14px;
    display: inline-flex;
    font-weight: 600;
    transition: .3s;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    background: transparent;
    color: black;
    border-radius: 0;
    margin-left: 20px;
    border-left: 1px solid black;
	display:none; /*Hide arrow*/
}
body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:after {
    color: var(--light);
}
body .full-var(--light) .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:after {
    color: black;
}
.gform-footer .input-wrapper:hover .input-icon, .accordion-header:hover a:after, .button a:hover:after, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover:after, body .gform_wrapper .gform_footer input.button:hover:after, .main-navigation .main-nav ul li.button a:hover:after, body #mobmenuright li.button a:hover:after, body .gform_wrapper .gform_footer input.button:hover:after, .widget_nav_menu ul li.button a:hover:after {
	transform:rotate(0deg);
	color: var(--green);
}
.button a.var(--light):after, body .var(--light) .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:after, body .full-dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:after, .single-service:first-child .button a:after {
    color: black;
}
.button a.var(--light):hover, body .var(--light) .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, body .var(--light) .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover{
    background: transparent;
    color: var(--light);
	border-color: var(--light);
}
body .full-dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, body #mobmenuright li.button a, body .full-dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover, body #mobmenuright li.button a {
    background: black;
    color: var(--light);
    border-color: black;
	font-weight:600;
}
body .full-var(--light) .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, body .full-var(--light) .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover, .widget_nav_menu ul li.button a {
    background: var(--light);
    color: black;
	border-color: var(--light);
}
input:-webkit-autofill, input:-webkit-autofill:focus, input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 50px var(--light) inset!important;
}
body .gform_wrapper.gravity-theme .gfield textarea.medium {
    height: 150px;
    border-radius: 15px;
	margin-bottom:-7px;
}
.gform_wrapper .gform_footer input.button, .gform_wrapper .gform_footer input[type=submit], .gform_wrapper .gform_page_footer input.button, .gform_wrapper .gform_page_footer input[type=submit] {
    width: fit-content!important;
}
.vc_col-has-fill>.vc_column-inner, .vc_row-has-fill+.vc_row-full-width+.vc_row>.vc_column_container>.vc_column-inner, .vc_row-has-fill+.vc_row>.vc_column_container>.vc_column-inner, .vc_row-has-fill>.vc_column_container>.vc_column-inner {
    padding-top: 0!important;
}
.wpb_button, .wpb_content_element, ul.wpb_thumbnails-fluid>li {
    margin-bottom: 0!important;
}
body .vc_btn3-container {
    margin-bottom: 0;
}
.main-row, .footer-widgets-container, .single-service-content {
    padding-top: 120px;
    padding-bottom: 120px;
}
body .grid, .footer-widgets-container, body .inside-article .entry-header, .top, .inside-site-info, body .mobmenu-content {
    padding-left: 110px;
    padding-right: 110px;
	margin-left:40px;
	margin-right:40px;
}
body .vc_column_container>.vc_column-inner {
    padding-left: 0;
	padding-right: 0;
}
body .full-height {
    height: calc(100vh - 80px);
    margin-top: 40px;
    margin-bottom: 40px;
}
body.one-container .site-content {
    padding: 0;
}


/*LANDING*/
.home .prefooter-widget, .home .footer-widgets {
	display:none!important;
}


/*RÉALISATIONS*/
.realisations {
    padding-top: 0!important;
}
.realisations, .latest-realisations-inner {
    display: flex;
    flex-wrap: wrap;
    gap: 50px;
}
.archive-realisations {
    width: calc(33.33% - 33.33px);
}
.latest-single-realisation {
    width: calc(50% - 25px);
}
.archive-realisations a, .latest-single-realisation a {
    position:relative;
}
@supports (-moz-appearance: none) {
.latest-single-realisation a {
	position: static !important;
}
.archive-realisations a {
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-end !important;
}
.archive-realisations .meta {
	width: max-content !important;
}
}
.archive-realisations .image-inner, .single-all .image-inner, .latest-realisations .image-inner {
    overflow: hidden;
	border-radius: 20px;
}
.archive-realisations img, .single-all img, .latest-realisations img {
    aspect-ratio: 2 / 1.5;
    position: relative;
    width: 100%;
    object-fit: cover;
    border-radius: 20px;
    transform: scale(1.0);
    transition: 1s;
    margin-bottom: -7px!important;
}
.latest-realisations img {
    aspect-ratio: 2 / 1.25;
}
.archive-realisations a:hover img, .single-all a:hover img, .latest-realisations a:hover img {
    transform: scale(1.05);
}
.archive-realisations .meta, .single-all .meta, .latest-realisations .meta {
    position: absolute;
    bottom: 0;
    background: var(--light);
    padding: 10px 20px;
    border-radius: 0 20px 0 0;
	width: fit-content;
    width: -webkit-max-content;
    z-index: 9;
}
.latest-realisations .meta {
    background: var(--pale);
}
.meta .title {
    font-weight:600;
}
html[lang="en"] .meta .title, html[lang="en"] .single-realisations .page-title h1 {
    display: inline-flex;
    flex-direction: row-reverse;
    gap: 0.2em;
}
.filter-container {
    margin-bottom: 50px;
    margin-top: 35px;
}
#filter-select {
    padding: 12px 24px;
    padding-left: 45px;
    font-size: 13px;
    letter-spacing: 0.5px;
    background: transparent;
    border: 1px solid;
    border-radius: 12px;
    text-transform: uppercase;
    color: black;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-image: url(/wp-content/uploads/filter-icon.svg);
    background-position: left 22px center;
    background-repeat: no-repeat;
    background-size: 10px;
	cursor:pointer;
}
#filter-select:focus {
   /* border-radius: 12px 12px 0 0; */
	border-color: black!important;
}
.archive-realisations {
	display: none; /* Caché au chargement, puis affiché avec JS */
}
		

/*RÉALISATIONS - SINGLE*/
.realisation .popup {
    padding-top: 35px;
}
.realisation {
    display: flex;
    flex-direction: column;
}
.realisation .page-title {
    gap: 100px;
    align-items: flex-start;
}
.realisation .page-title .left p {
    padding-top: 15px;
}
.realisation .row {
    display: flex;
}
.realisation .block {
    padding-bottom: 12px;
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid var(--border);
    margin-bottom: 12px;
}
.realisation .block:last-child {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}
.realisation .description .title, .poste .city {
    color: var(--green);
    flex: 1;
    text-transform: uppercase;
    font-size: 0.85em;
    padding-top: 3px;
}
.realisation .data .value {
    text-align: left;
	flex:1;
}
.realisation .featured {
    margin-bottom: 50px;
}
.realisation img {
    border-radius: 20px;
}
.realisation-galerie {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-auto-flow: row dense; /* Force les images à s'imbriquer sans laisser d'espace */
    gap: 50px;
}
.gallery-slide {
    overflow: hidden;
    border-radius: 20px;
}
.gallery-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.featured-image-fullscreen {
    width: 100% !important; /* Force l'image à occuper toute la largeur */
    height: auto;
    display: block;
}
.tall { grid-row: span 2; }
.wide { grid-column: span 2; }
.square { grid-row: span 1; grid-column: span 1; }
.big-square { grid-row: span 2; grid-column: span 2; }
@media (max-width: 768px) {
    .realisation-galerie {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 480px) {
    .realisation-galerie {
        grid-template-columns: repeat(1, 1fr);
    }
}
/*POPUP LIGHTGALLERY*/
body .lg-outer {
    z-index: 9999;
}
body .lg-outer .lg-img-wrap {
    padding: 0;
}
body #lg-download {
    display: none;
}
body .lg-toolbar {
    background-color: transparent;
}
body #lg-counter {
    color: var(--light);
    display: inline-block;
    font-size: 17px;
    padding-left: 28px;
    padding-top: 16px;
    vertical-align: middle;
}
body .lg-toolbar .lg-icon.lg-close {
    line-height: 1;
    font-size: 35px;
    color: #fff;
    right: 30px;
    top: 15px;
    width: 35px;
    left: auto;
    position: absolute;
    padding: 0;
    transform: rotate(0deg);
	transition:.3s;
}
body .lg-toolbar .lg-icon.lg-close:hover {
    transform: rotate(90deg);
}
body .lg-toolbar {
    opacity: 1 !important;
    height: auto !important;
    transform: none !important;
}
body .lg-outer .lg-video-cont {
    max-width: 1500px!important;
    padding: 0!important;
}
body .lg-outer .lg-video .lg-object {
    width: 75% !important;
    height: 75% !important;
    top: 12.5%;
    left: 12.5%;
}
body .lg-backdrop.in {
    opacity: 1;
    z-index: 9999;
    background-color: black;
}
body .lg-sub-html {
    display: none;
}
body .lg-actions .lg-next, body .lg-actions .lg-prev {
    background-color: transparent;
    color: var(--light);
    font-size: 24px;
}
body .lg-hide-items .lg-prev, body .lg-hide-items .lg-next {
    opacity: 1!important;
    transform: none!important;
}
/*******/
.all .previous {
    padding-top: 50px;
}
.all .slick-track {
    gap: 50px;
}
.all h4 {
    padding-bottom: 50px;
    padding-top: 20px;
    margin-right: 0;
    border-top: 1px solid var(--border);
    padding-right: 80px;
}
.all .slick-next, .all .slick-prev {
    right: 0!important;
    top: -70px;
}
.all .slick-prev {
    right: 40px!important;
	left:auto!important;
}
.single-all {
    margin-right: 50px;
}
body .slick-list {
    margin-right: -50px;
}
.all .slick-prev:before, .all .slick-next:before {
    font-size: 21px;
    font-weight: 400;
    content: "\f060" !important;
    font-family: "Font Awesome 6 Sharp";
    opacity: 1;
    color: black;
    transition: .3s;
}
.all .slick-prev:hover:before, .all .slick-next:hover:before {
    color: var(--green);
}
.all .slick-next:before {
    content: "\f061" !important;
}


/*SERVICES*/
.services-listing {
    display: flex;
    flex-direction: column;
    gap: 60px;
}
.services-listing .service-item {
    padding-top: 15px;
    border-top: 1px solid var(--border);
}
.services-listing p {
    max-width: 75%;
    padding-top: 15px;
}
.services .all {
    padding-bottom:0;
}
body .latest {
    background: var(--pale);
    padding-left: 150px;
    padding-right: 150px;
    margin: 0!important;
    border-radius: 30px 30px 0 0;
}
.latest .meta {
    background: var(--pale);
}


/*À PROPOS*/
.about ul {
    margin-left: 1.1em;
}
.about .wpb_text_column {
    padding-top: 75px;
}
.about h4 {
    padding-bottom: 15px;
}
.about p {
    padding-bottom: 10px;
}
.about p:last-child {
    padding-bottom: 0px;
}
.maxime:before, .maxime:after {
    display:none!important;
}
.maxime {
    display: flex;
    gap: 50px;
	padding-top:100px;
	padding-bottom: 25px;
}
.maxime .wpb_column:last-child {
    background: var(--pale);
    padding: 50px 75px;
    display: flex;
    align-items: center;
}
.maxime .wpb_text_column {
    padding-top: 0 !important;
}


/*CARRIERES*/
.carrieres-listing {
    display: flex;
    flex-direction: column;
    gap: 50px;
}
.carrieres-listing .poste {
    background: var(--pale);
    border-radius: 20px;
    padding: 50px;
}
.poste-min {
    display: flex;
    gap: 100px;
    justify-content: space-between;
    align-items: flex-end;
}
.poste h4 {
    padding: 5px 0 30px;
}
.poste.aucun h4 {
    padding: 0;
}
.poste .more-details {
    display: flex;
    gap: 10px;
    align-content: center;
    line-height: 1;
	cursor: pointer;
}
.poste .more-details i {
    transform: rotate(45deg);
	transition:.3s;
}
.poste.open .more-details i {
    transform: rotate(-45deg);
}
.poste .more-details:hover i {
    transform: rotate(90deg);
}
.poste.open .more-details:hover i {
    transform: rotate(-90deg);
}
.poste-details {
    padding-top: 25px;
    margin-top: 55px;
    border-top: 1px solid var(--border);
}
.poste-details-row {
    display: flex;
    gap: 50px;
	padding-bottom:25px;
}
.poste-details-row strong {
    min-width: 200px;
    width: 200px;
}
p.extra {
    display: block;
    border-top: 1px solid var(--border);
    padding-top: 25px;
    margin-top: 5px;
    padding-bottom: 25px;
}
.poste .city  {
    padding-top:0;
}
.city i  {
    padding-right: 3px;
    font-size: 0.95em;
}


/*EQUIPE*/
.vc_col-sm-6.conseillers-top, .vc_col-sm-6.conseiller-bottom {
    width: 100%;
}
.conseillers .slick-initialized .slick-slide {
    margin: 25px;
}
.conseillers {
	margin-top:-170px;
    padding-bottom: 125px;
}
.conseillers-top {
	margin-bottom:25px;
}
.conseillers-bottom {
    margin-left: 25px;
}
.conseillers img {
	border-radius:30px;
}
.conseillers p.nom {
    font-size: 1.25em;
    font-weight: 700;
}
.email i {
    background: var(--green);
    color: var(--light);
    font-size: 13px;
    width: 27px;
    height: 27px;
    border-radius: 50px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
	margin-top:4px;
	transition: .3s;
}
.conseillers p.poste_legal {
    font-size: 0.75em;
    padding: 3px 0 5px;
    line-height: 1.4;
}
.conseillers p.poste {
    font-size: 1.075em;
    font-weight: 400;
    color: var(--green);
}
.conseillers p.titre {
    letter-spacing: 1px;
    font-size: 12px;
    background: var(--green);
    width: fit-content;
    border-radius: 50px;
    color: var(--green);
    padding: 3px 15px 2px;
    text-transform: uppercase;
    font-weight: 900;
    margin-top: 3px;
	margin-bottom:6px;
}
.conseillers .slick-list {
    pointer-events: none;
    cursor: default;
}
body .conseillers .slick-prev, body .conseillers .slick-next, .conseillers .flickity-prev-next-button {
    margin-left: calc(7vw - 4px);
    top: -50px;
}
body .conseillers .slick-next, .conseillers .flickity-prev-next-button.next {
    top: -50px;
	left:60px;
}
/*with FLICKITY*/
/*.flickity-enabled.is-draggable .flickity-viewport {
    min-height:53vw!important;
}*/
.conseiller-slide {
    width:25%;
	margin: 25px;
}
body .flickity-prev-next-button.previous {
    left: 0;
}
body .flickity-button-icon {
    display: none!important;
}
body .flickity-prev-next-button, body .flickity-prev-next-button:hover {
    background: transparent;
}
body .grid.dates {
    padding-right: 0;
    padding-left: 13vw;
    background: var(--light);
}
.dates .title h2 {
    padding-bottom: 75px;
}
body .dates .slick-prev:before, body .dates .slick-next:before,
body .dates .slick-disabled.slick-prev:hover:before, body .dates .slick-disabled.slick-next:hover:before {
    background: var(--green);
}
body .dates .slick-disabled.slick-prev:hover:before, body .dates .slick-disabled.slick-next:hover:before {
    cursor:default;
}
body .dates .slick-prev:hover:before, body .dates .slick-next:hover:before {
    background: var(--green);
}
.date-slide  {
    padding-right: 10vw;
}
.dates .texte {
    padding: 15px 0 45px;
}
.dates img {
    border-radius: 30px;
    filter: saturate(0);
}
.dates .slick-slide[data-slick-index="7"] img {
    filter: saturate(1);
}
.dates .annee {
    font-size: 120px;
    padding-top: 70px;
    padding-bottom: 30px;
    margin-left: -5px;
}
.date-slide:before {
    content: "";
    position: absolute;
    top: 13px;
    left: 0;
    content: "";
    width: 100%;
    border-top: 4px solid;
    padding-top: 40px;
}
.date-slide:after {
	content:"";
    position:absolute;
	top:0;
	margin-left:30px;
	width:30px;
	height:30px;
	background: var(--green);
	z-index:1;
}
.date-slide:last-of-type:after {
	display:none;
}


/*LEGAL*/
.legal-top {
    background: var(--green);
    padding: 100px 0;
    text-align: center;
}
body .legal-top .var(--light) .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern{
    margin: 0 7px;
}
#diff {
    background: var(--light);
}
#legal p, #diff p {
    padding-bottom: 25px;
}
#legal p:last-child, #diff p:last-child {
    padding-bottom: 0;
}
#legal a, #diff a {
    color:var(--green);
}
#legal a:hover, #diff a:hover {
    color:var(--green);
}
#legal h3, #diff h3 {
    padding-bottom: 30px;
}
#legal h5, #diff h5 {
    padding-bottom: 25px;
    padding-top: 15px;
}


/*SERVICES*/
.grid.service-top {
    padding-right: 0;
}
.page-image, .page-image:after {
    height: 75vh;
}
.page-image {
    background-size: cover !important;
    background-position: center !important;
    opacity: 1;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-top: 40px;
    margin-bottom: 40px;
}
.page-image:after {
    content: "";
    background: linear-gradient(0deg, black, transparent);
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0.7;
    display: block;
	display: none; /*do not show*/
}
.page-title {
    padding-top: 200px;
    padding-bottom: 65px;
    z-index: 1;
    text-align: left;
    position: relative;
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    justify-content: center;
    gap: 50px;
}
.page-title h1, .single-realisations .page-title h6 {
    padding-bottom: 15px;
    left: 0;
}
.page-title h3 {
    max-width: 550px;
}
.page-title > div {
    width: 50%;
}
.single-service-content .description, .page-template-default .description {
    margin-bottom: 50px!important;
    max-width: 850px;
}
.details {
    display:flex;
	gap:30px;
	margin-top: -30px;
}
.check-ul ul {
    margin: 0;
	list-style-type: none; /* Supprime les puces par défaut */
	padding-left: 0; /* Supprime le retrait */
}
.check-ul ul li {
    display: flex;
    align-items: flex-start;
    margin-bottom: 0;
    line-height: 1.2;
    padding-bottom: 10px;
}
.check-ul ul li:last-child {
    padding-bottom: 0;
}
.check-ul ul li:before {
    content: '\2713';
    color: #750212;
    margin-right: 12px;
    font-size: 14px;
    font-weight: 900;
    position: relative;
    top: 2px;
}
.details .contenu {
    background: var(--light);
    border-radius: 15px;
    padding: 50px;
    min-width: 50%;
}
.details .service-image img {
    border-radius: 15px;
	margin-bottom: 22px;
}
.contenu-text h5 {
    padding-bottom: 15px;
	max-width: 70%;
}
.contenu-text p {
    padding-bottom: 50px;
}
.contenu-image {
    margin-top: -200px;
    margin-right: -50px;
    border: 20px solid var(--light);
    background: var(--light);
	border-radius:30px;
}
.contenu-image img {
    aspect-ratio: 1 / 1.5;
    position: relative;
    width: 100%;
    object-fit: cover;
}
.pourquoi {
    background: black;
    border-radius: 30px;
    padding: 50px;
    width: fit-content;
}
.pourquoi * {
    color: var(--light);
}
.pourquoi h4 {
    color: var(--green);
	padding-bottom:10px;
}
.pourquoi ul {
    margin-left: 18px;
}
.more-services {
    padding-top: 100px;
	padding-bottom: 120px;
}
.more-services h3 {
    padding-bottom:35px;
}


/*COOKIES*/
.page-id-237 .prefooter-widget {
    display:none;
}
.politique h4 {
    padding: 30px 0 10px;
}
.politique .wpb_wrapper h4:first-child {
    padding-top:0;
}
.politique ul {
    margin-bottom: 0;
}
body .cky-consent-container .cky-consent-bar {
    border-radius: 20px 0 0 0;
    background: var(--light) !important;
    box-shadow: none !important;
    border: 0;
    padding: 30px 45px;
	transition:0.5s;
}
body.scrolled .cky-consent-container .cky-consent-bar {
    background: var(--pale) !important;
}
body.scrolled .cky-btn-reject {
    background: var(--pale) !important;
}
body .cky-btn {
    font-size: 11px;
    font-weight: 500;
    text-transform: uppercase;
    border-radius: 10px;
    letter-spacing: 1.5px;
    padding: 5px 17px;
    max-width: fit-content;
    border: 1px solid;
	transition:0.5s;
}
body .cky-notice-des p {
    line-height: 1.35;
	font-size:14px;
}
body .cky-notice .cky-title {
    margin: 0 0 7px 0;
    font-weight: 500;
}
body .cky-box-bottom-right {
    bottom: 0;
    right: 0;
}
@media (max-width: 576px) {
body .cky-box-bottom-right {
	bottom: 0;
	right: 0;
	width: 100%;
}
body .cky-consent-container .cky-consent-bar {
	border-radius: 20px 20px 0 0;
}
}


/*CONTACT*/
.page-row {
    padding:50px 0;
}
.page-row h3 {
    padding-bottom: 15px;
}
.page-row .wpb_text_column {
    padding-bottom: 50px;
}
.page-row .wpb_text_column:last-child {
    padding-bottom: 0;
}
.contact>.contact-inner>.vc_column-inner>.wpb_wrapper {
    display:flex;
	gap:75px;
}
.contact .contact-informations {
    background: var(--green);
    padding: 50px 60px !important;
    border-radius: 20px;
    height: fit-content;
    margin-top: 7px;
}
.contact .contact-informations, .contact .contact-image {
    max-width: 452px;
}
.contact .contact-image {
    margin-top: 25px;
}
.contact .contact-informations a:hover, .contact .contact-informations a:focus {
    color: black;
}
.contact h6 {
    padding-bottom: 0;
}
.contact .gform_wrapper {
    flex-grow: 1; /* Prend le reste de l'espace disponible */
}
.contact .right p {
    padding-bottom: 30px;
}
.contact .contact-informations p {
	font-weight:700;
}
.contact h5 {
    font-weight: 500;
}
.contact-informations h5 {
    line-height: 1.15;
	padding-top:3px;
}
.contact .col:last-child h5 {
    padding-bottom:0;
}
body .gform_wrapper.gravity-theme .gform_drop_area {
    background: rgb(25 56 50 / 7%);
    border: none;
    border-radius: 12px;
    margin-bottom: 0;
    padding: 24px;
    padding-bottom: 32px;
    text-align: center;
    font-size: 14px;
}
body .gform_wrapper.gravity-theme .gform_drop_instructions {
    display: block;
    margin-bottom: 5px;
}
body .gform_wrapper.gravity-theme .gform_drop_instructions:before {
    content: "\f0ee";
    font-family: "Font Awesome 6 Pro" !important;
    font-weight: 900;
    display: block;
    font-size: 22px;
    color: var(--green);
}
body .gform_wrapper.gravity-theme .gform_drop_area button {
    position: relative;
    z-index: 1;
    background: transparent;
    border: 1px solid;
    color: black;
    text-transform: uppercase;
    font-weight: 600;
    font-size: 11px;
    padding: 7px 15px;
    border-radius: 9px;
    letter-spacing: 1px;
	transition: .3s;
}
body .gform_wrapper.gravity-theme .gform_drop_area button:hover {
    color: var(--green);
}
body .gform_wrapper.gravity-theme #field_2_24 .ginput_preview {
    margin: 0;
    border: 0;
    text-align: center;
    padding: 0;
}
body .gform_wrapper.gravity-theme #field_2_24 .ginput_preview:first-child {
    margin-top:15px;
}/*
.budget .ginput_container {
    position:relative;
}
.budget .ginput_container:after {
    content: "\24";
    font-family: "Font Awesome 6 Pro" !important;
    font-weight: 500;
    width:45px;
	height:45px;
	display:flex;
	background: rgb(25 56 50 / 7%);
    font-size: 20px;
	position:absolute;
	right:0;
	top:0;
}*/


/*ACCUEIL*/
.banner-top {
    height: 100vh;
    background-size: cover;
    background-position: center;
    padding-top: 0;
    display: flex;
    align-items: flex-end;
    position: relative;
    background-color: black;
    background-repeat: no-repeat;
    padding-bottom: 12vh;
	position:relative;
	text-align:center;
}
body .banner-top  {
    padding-left: 20px;
    padding-right: 20px;
}
.banner-top:before {
    height: 100%;
    content: "";
    background: linear-gradient(0deg, black, transparent);
    top: 0;
    left: 0;
    width: 100%;
    position: absolute;
    opacity: 0.7;
    border-radius: 20px;
}
.banner-top h2 {
    color: var(--light);
    padding-bottom: 35px;
	left:0;
}
.scroll-icon {
    position: absolute;
    height: 50px;
    width: 100%;
    left: 0;
    right: 0;
    margin-top: 35px;
    text-align: center;
}
.scroll-wrapper {
	position: relative;
	height: 75px;
	overflow: hidden;
}
.scroll-wrapper, .scroll-icon {
	pointer-events:none;
}
.smooth i {
    position: absolute;
    font-size: 32px;
    color: var(--green);
    font-weight: 400;
    margin-left: -12px; /*center icon*/
	animation: roll 3s ease-in-out infinite;
}
@keyframes roll {
  0% {
    transform: translateY(-75px); /* Départ de l'icône au-dessus du cadre */
  }
  30% {
    transform: translateY(0); /* L'icône arrive dans le cadre */
  }
  70% {
    transform: translateY(0); /* L'icône reste dans le cadre pendant un instant */
  }
  100% {
    transform: translateY(75px); /* L'icône sort du cadre vers le bas */
  }
}
.home-about h3 {
    line-height: 1.1;
	padding-bottom:50px;
}
.home-about em {
    color: var(--green);
	font-style: normal;
}
.home-about .type {
    display: flex;
    gap: 50px;
    margin: 30px 0 40px;
}
.home-about .type a {
    background: var(--pale);
    width: 50%;
    border-radius: 20px;
    padding: 50px;
    font-weight: 400;
    font-size: 47px;
    gap: 15px;
	transition: .3s;
}
.home-about .type .box {
    height: 200px;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    justify-content: space-between;
}
.home-about .type a:hover {
    background: black;
    color: var(--pale);
}
.home-about .type .box h5 {
    font-weight: 500;
    padding-bottom: 0;
}
/*.home .services-listing h4 {
    transform: translateX(0);
	transition:.3s;
	cursor:default;
}
.home .services-listing h4:hover {
    transform: translateX(10px);
}*/
.home-services .title .vc_column-inner>.wpb_wrapper {
    padding-bottom: 50px;
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}
.home-services {
    padding-top: 0 !important;
}
.home-services h2 {
    font-weight:400;
}
.home-services .title a {
    margin-bottom: 8px;
}
.home .services-listing {
    gap: 25px;
}
.home .services-listing .service-item {
    padding-top: 22px;
}
.home .services-listing .service-item:last-child {
    padding-bottom: 25px;
    border-bottom: 1px solid var(--border);
	margin-bottom:50px;
}
.home-real {
    background: var(--pale);
    border-radius: 30px 30px 0 0;
}
.latest-realisations-inner {
    padding: 75px 0;
}
.home-about h2 {
    padding-bottom:60px;
}
.home-about .split {
    display:flex;
	gap:20px;
}
.home-about .split:before, .home-about .split:after {
    display:none;
}
.home-about .left .wpb_single_image img {
    aspect-ratio: 1.25 / 1;
    position: relative;
    width: 100%;
    object-fit: cover;
}
.home-about .right .wpb_single_image {
    margin: 0 -50px;
}
.home-about .right .wpb_single_image img {
    aspect-ratio: 2 / 1;
    position: relative;
    width: 100%;
    object-fit: cover;
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
}
.home-about .right {
    padding: 0 50px;
}
.home-about .right p {
    padding: 0 0 50px 0;
}
.home-about .right h5 {
    padding-bottom: 30px;
}


/*EQUIPE*/
#equipe {
    display: flex;
    text-align: center;
    margin-top: 30px;
    background: linear-gradient(60deg, var(--green), var(--green));
    border-radius: 12px;
}
.single-employe {
    box-shadow: inset -50px 0 50px -50px #07080a4a;
}
.single-employe:first-child img {
    border-radius: 12px 0 0 0;
}
.single-employe:last-child img {
    border-radius: 0 12px 0 0;
}
.single-employe-data * {
    color:var(--light);
}
.single-employe-data .poste {
    line-height: 1.1;
    padding: 3px 0 5px;
}
.single-employe-data {
    padding: 20px 10px 25px;
    margin-top: -7px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.single-employe-data i {
    background: var(--light);
    color: var(--green);
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    border-radius: 50px;
    font-size: 15px;
    position: relative;
    left: -1px;
	transition: .3s;
    margin-top: 5px;
}
.single-employe-data i:hover {
    color: var(--green);
}


/*FAQ*/
.single-service.faq h6 {
    padding-bottom: 40px;
}
.single-service.faq p {
    padding-bottom: 0;
}
/*.vc_toggle {
	width: fit-content;
}*/
body .vc_toggle:last-of-type {
    margin-bottom: 0;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_content {
    padding-left: 40px;
    padding-bottom: 15px;
    margin: 18px 0px;
    padding-right: 40px;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_content p a {
    color: var(--green);
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_content p a:hover {
    color: var(--green);
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_title {
    padding-left: 0;
    width: fit-content;
    background: var(--green);
    padding: 12px 30px 12px 40px;
    border-radius: 50px;
    transition: .3s;
}
body .vc_toggle_size_md.vc_toggle_default.vc_toggle_active .vc_toggle_title, body .vc_toggle_size_md.vc_toggle_default .vc_toggle_title:hover {
    background: var(--green);
}
.vc_toggle_size_md.vc_toggle_default .vc_toggle_content .vc_toggle_icon, .vc_toggle_size_md.vc_toggle_default .vc_toggle_title .vc_toggle_icon, .vc_toggle_size_md.vc_toggle_round .vc_toggle_content .vc_toggle_icon, .vc_toggle_size_md.vc_toggle_round .vc_toggle_title .vc_toggle_icon, .vc_toggle_size_md.vc_toggle_rounded .vc_toggle_content .vc_toggle_icon, .vc_toggle_size_md.vc_toggle_rounded .vc_toggle_title .vc_toggle_icon, .vc_toggle_size_md.vc_toggle_simple .vc_toggle_content .vc_toggle_icon, .vc_toggle_size_md.vc_toggle_simple .vc_toggle_title .vc_toggle_icon, .vc_toggle_size_md.vc_toggle_square .vc_toggle_content .vc_toggle_icon, .vc_toggle_size_md.vc_toggle_square .vc_toggle_title .vc_toggle_icon {
    display: none;
}
.vc_toggle_title>h4:after {
    content: "\2b";
    font-family: "Font Awesome 6 Sharp";
    font-weight: 900;
    color: var(--green);
    text-align: center;
    display: flex;
    transition: transform .3s;
	min-width:50px;
    width: 50px;
    height: 50px;
    background: #c9fdff94;
    border-radius: 50px;
    align-items: center;
    justify-content: center;
    margin-top: 0;
    font-size: 18px;
    margin-left: 25px;
    /* transition: .3s; */
}
.vc_toggle .vc_toggle_title:hover>h4:after {
    transform: rotate(90deg);
}
.vc_toggle.vc_toggle_active .vc_toggle_title:hover>h4:after {
    transform: rotate(0deg);
}
.vc_toggle .vc_toggle_title:hover>h4, .vc_toggle.vc_toggle_active .vc_toggle_title>h4 {
    color:var(--light);
}
.vc_toggle .vc_toggle_title:hover>h4:after, .vc_toggle.vc_toggle_active .vc_toggle_title>h4:after {
    background: #e7f1f273;
}
.vc_toggle.vc_toggle_active .vc_toggle_title>h4:after {
	content: "\f068";
}
body .vc_toggle_title>h4 {
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
body .vc_toggle {
    margin: 0 0 20px;
}
.single-service.faq .vc_btn3-container.vc_btn3-inline {
    margin-top: 60px;
}


/*SINGLE SERVICE*/
.page-template-services-template .main-navigation .main-nav ul li:not(.button) > a /*, body:not(.home) .main-navigation .main-nav ul li:not(.button) > a */ {
    background:transparent;
	color: var(--light);
}
.main-navigation .main-nav>ul>li[class*="current-menu-"]:not(.button)>a, .page-template-services-template .main-navigation .main-nav>ul>li[class*="current-menu-"]:not(.button)>a, .page-template-services-template .main-navigation .main-nav ul li[class*="current-menu-"].sfHover > a{
    color: var(--light)!important;
}
.main-navigation .main-nav ul ul li[class*="current-menu-"]:not(.button) > a, .page-template-services-template .main-navigation .main-nav ul li[class*="current-menu-"] > a:hover {
    color: var(--green)!important;
}
.single-service h6, .single-service h3, .single-service p {
    padding-bottom: 25px;
}
.single-service .right.vc_column_container>.vc_column-inner {
    height:750px;
	border-radius:50px;
	background-size:cover;
	background-position:center;
}
.single-service p {
    padding-bottom: 45px;
}
.single-service .left{
    padding-right: 7.5%;
}
.single-service .vc_btn3-container.vc_btn3-inline {
    display: block;
    margin-bottom: 20px;
}
.single-service .left p strong  {
    display: block;
    padding: 25px 0 5px;
	font-weight:600;
}


/*FOOTER*/
.prefooter-widget .membre {
    background: var(--pale);
    margin: 0;
    border-radius: 30px 30px 0 0;
    margin-bottom: -25px;
    padding-top: 60px;
    padding-bottom: 85px;
}
.prefooter-widget .membre-inner {
    display: flex;
    gap: 40px;
    flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: flex-start;
}
.prefooter-widget .membre img {
    max-width: 100%;
    width: 250px;
    margin-left: 40px;
}
.prefooter-widget {
    margin: 0;
}
.page-id-215 .prefooter-widget, .home .prefooter-widget {
    background: var(--pale);
}
.prefooter {
    background: black;
    border-radius: 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    border-radius: 30px 30px 0 0;
    border-bottom: 1px solid #ebe8dc2e;
    padding-bottom: 0!important;
}
.prefooter p  {
    color: var(--light);
    font-weight: 300;
    padding-bottom: 50px;
}
.prefooter h2 {
    padding-bottom: 50px;
    padding-top: 0;
    max-width: 1000px;
    margin: 0;
    color: var(--light);
    display: flex;
    align-items: flex-start;
    gap: 15px;
	position:relative;
}
.prefooter i {
    font-size: 0.5em;
    transform: rotate(-45deg);
    position: relative;
    transition: .3s;
}
.prefooter a:hover i {
    transform: rotate(0deg);
}
body .prefooter .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:after {
    color: black;
	border-color: var(--green)!important;
}
body .prefooter .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover {
    background: black;
	color: var(--light);
}
body .prefooter .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover:after {
    color: var(--light);
}
.prefooter:before {
    content: "";
    width: 100%;
    background-image: url(/wp-content/uploads/prefooter-bg-logo.jpg);
    background-size: 65vh;
    background-position: center;
    position: absolute;
    background-repeat: no-repeat;
    left: 0;
    top: 0;
}
.site-footer * {
    color: var(--light);
}
.site-footer {
    width: 100%;
    position: absolute;
    left: 0;
}
.site-footer .contact-image, .rightmbottom .contact-image {
    display:none;
}
.footer-widgets, .site-info {
    background-color: black;
    color: var(--light);
}
.site-footer .footer-widgets-container .inside-footer-widgets {
    margin-left: 0;
}
.site-footer .footer-widgets-container .inner-padding {
    padding: 0;
}
.footer-widget-1 {
    text-align: left;
    display: flex;
    gap: 100px;
}
.footer-widget-2 {
    text-align: right;
}
.site-footer .widget ul li {
    font-size: 21px;
    margin-bottom: 17px;
    line-height: 1;
}
.footer-widgets img {
    width: 124px;
}
.site-footer .socials {
    display: flex;
    justify-content: flex-end;
    gap: 25px;
    margin-top: 25px;
}
#text-6 p {
    max-width: 280px;
	padding-bottom:12px;
}
.footer-bar-align-center .footer-bar {
    margin-bottom: 0;
    display: flex;
    justify-content: space-between;
    width: 100%;
    background: black;
    color: var(--light);
    padding-top: 0;
    padding-bottom: 30px;
    border-radius: 0;
    gap: 20px;
    align-items: center;
    text-align: left;
}
.footer-bar-align-center .footer-bar>aside:nth-child(2) {
    margin-left: auto;
}
.site-info, .footer-bar .textwidget p:last-child, .footer-bar a {
    font-weight: 200;
    letter-spacing: 0.5px;
    margin: 0;
    color: var(--light);
    font-size: 14px;
    text-transform: none;
}
.footer-bar-align-center .footer-bar>aside:first-child * {
    text-align: left;
}
.footer-bar-align-center .footer-bar>aside:last-child * {
    text-align: right;
}
.site-info a:hover, .site-info .widget_text a:hover, body .footer-bar .widget_nav_menu .current-menu-item a:hover {
    color: var(--green);
}
.site-info a, body .footer-bar .widget_nav_menu .current-menu-item a{
    color: var(--light);
}
.site-info .menu-item a {
    font-size: 15px;
    font-weight: 800;
}
.footer-widgets .widget {
    margin-bottom: 0;
}
.site-footer .copyright-bar {
    display:none;
}
.inside-site-info {
    padding-top: 0;
    padding-bottom: 0;
}
.footer-contact {
    display: flex;
    padding-top: 75px;
}
.footer-contact div:first-child {
    padding-right:75px;
}
.site-footer h5 strong {
    color: var(--green);
    font-weight: 800;
    padding-right: 0;
    width: 29px;
    display: inline-block;
}
.footer-bar .widget_nav_menu li {
    margin: 0 15px;
}
img.apchq {
    width: 21px;
    position: relative;
    top: 1px;
    margin-left: 5px;
	margin-right: 2px;
}


/*CARRIERES*/
.carrieres-section {
    padding-bottom:0!important;
}
.carrieres h5 {
    font-weight: 400;
    padding-bottom: 50px;
    display: block;
    line-height: 1.35;
}
.carrieres h4 {
    padding-bottom: 25px;
}


/*FORMATIONS*/
.formations h5 {
    padding-bottom:25px;
}
body .formations .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
    margin-top:50px;
}


/*GFORM*/
/* Style normal */
.ginput_container_fileupload .gform_drop_area{
  position: relative;
  transition: 0s;
}
/* État drag-over : contour pointillé sans décaler la mise en page */
.ginput_container_fileupload .gform_drop_area.is-dragover{
  outline: 2px dashed var(--green) !important;   /* ajustez la couleur */
}
.gform_wrapper #field_2_26 {
  display: none!important;
}
@media screen and (max-device-width: 1024px) {
  html[data-useragent*="Safari"][data-useragent*="Mobile"] #field_2_26 {
    display: block !important;
  }
  html[data-useragent*="Safari"][data-useragent*="Mobile"] #field_2_24 {
    display: none !important;
  }
}
.gform_title {
    padding-bottom: 35px;
}
.gform-loader {
    display: none !important;
}
.gform-body {
    width: 100%;
}
.gform_description {
    padding: 0 0 40px;
}
body .gform_confirmation_message {
    font-weight: 500;
    max-width: fit-content;
    margin: 0;
    background: transparent;
    text-align: left;
    margin-top: 0;
    border-radius: 15px;
    max-width: 650px;
	width: 100%;
    font-size: 1.1em;
}
body .gform_confirmation_message:before {
    font-family: "Font Awesome 6 Pro" !important;
    content: "\f14a";
    font-size: 60px;
    display: block;
    margin-bottom: 5px;
    color: var(--green);
    font-weight: 100;
    margin-top: -10px;
}
body .gform_wrapper ul.gform_fields li.gfield {
    padding-right: 0;
}
.ginput_container.ginput_container_fileupload input, body .gform_wrapper.gravity-theme .ginput_preview {
    border-radius: 12px;
    padding: 11px 24px;
    font-size: 13px;
    font-weight: 400;
    border: 1px solid;
}
body .gform_wrapper.gravity-theme .ginput_preview {
    margin: 0;
}
body .gform_wrapper.gravity-theme .gform_delete_file {
    padding: 0;
}
.gfield_fileupload_percent {
    padding: 0 15px;
}
body .dashicons-trash {
    color: var(--red);
    font-size: 16px;
    position: relative;
    top: 2px;
}
.ginput_container.ginput_container_fileupload span.gfield_description.gform_fileupload_rules {
    font-size: 11px;
    margin: 0;
    padding: 5px 0 0;
    position: absolute;
    display: none;
}
body .gform_wrapper .field_sublabel_above .ginput_complex.ginput_container label, body .gform_wrapper .field_sublabel_above div[class*=gfield_time_].ginput_container label {
    margin: 0;
}
body .gform_wrapper .top_label li.gfield.gf_left_half .ginput_container:not(.gfield_time_hour):not(.gfield_time_minute):not(.gfield_time_ampm):not(.ginput_container_date):not(.ginput_quantity):not(.datepicker):not(.gfield_signature_container), body .gform_wrapper .top_label li.gfield.gf_right_half .ginput_container:not(.gfield_time_hour):not(.gfield_time_minute):not(.gfield_time_ampm):not(.ginput_container_date):not(.ginput_quantity):not(.datepicker):not(.gfield_signature_container) {
    margin: 5px 0 0 0;
}
body .gform_wrapper .top_label .gfield_label, .gform_wrapper legend.gfield_label, body .gform_wrapper .field_sublabel_above .ginput_complex.ginput_container label, body .gform_wrapper .field_sublabel_above div[class*=gfield_time_].ginput_container label {
    line-height: 1.1;
    letter-spacing: 0;
    font-size: 13px;
    font-weight: 400 !important;
    padding-top: 0;
    margin-bottom: 8px;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}
.spacer.gfield, .gform_required_legend, body .gform_wrapper.gravity-theme .gfield_required{
    display: none;
}
body .gform_wrapper h6 {
    padding-top: 15px;
}
body .gform_wrapper.gravity-theme .gform_fields {
    grid-row-gap: 15px;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="number"]:focus, textarea:focus, select:focus {
    background-color: var(--light) !important;
    outline: none !important;
	border-color: var(--green)!important;
}
body textarea {
  resize: none;
}
.gform_required_legend, .gform_wrapper .gform_validation_errors, .gform_wrapper.gravity-theme .description, .gform_wrapper .gform_validation_errors, .gform_wrapper.gravity-theme .gsection_description, .gform_wrapper.gravity-theme .instruction {
    display: none!important;
}
body img.gform_ajax_spinner {
	margin-top:5px;
	margin-left:10px;
}
.gform_wrapper.gravity-theme .gfield_error .gfield_repeater_cell label, .gform_wrapper.gravity-theme .gfield_error label, .gform_wrapper.gravity-theme .gfield_error legend, .gform_wrapper.gravity-theme .gfield_validation_message, .gform_wrapper.gravity-theme .validation_message, .gform_wrapper.gravity-theme [aria-invalid=true]+label, .gform_wrapper.gravity-theme label+[aria-invalid=true] {
    color: black!important;
}
body .gform_wrapper.gravity-theme .gfield_error [aria-invalid=true] {
    border: 1px solid var(--red);
}
body .gform_wrapper.gravity-theme .gfield_validation_message, .gform_wrapper.gravity-theme .validation_message {
    background: transparent !important;
    border: 0 !important;
    margin-top: 0 !important;
    padding: 5px 0px 0 !important;
    font-size: 13px !important;
    text-transform: none;
    letter-spacing: 0 !important;
    font-weight: 500;
    color: var(--red) !important;
}
body .gform_wrapper.gravity-theme input[type=color], body .gform_wrapper.gravity-theme input[type=date], body .gform_wrapper.gravity-theme input[type=datetime-local], body .gform_wrapper.gravity-theme input[type=datetime], body .gform_wrapper.gravity-theme input[type=email], body .gform_wrapper.gravity-theme input[type=month], body .gform_wrapper.gravity-theme input[type=number], body .gform_wrapper.gravity-theme input[type=password], body .gform_wrapper.gravity-theme input[type=search], body .gform_wrapper.gravity-theme input[type=tel], body .gform_wrapper.gravity-theme input[type=text], body .gform_wrapper.gravity-theme input[type=time], body .gform_wrapper.gravity-theme input[type=url], body .gform_wrapper.gravity-theme input[type=week], body .gform_wrapper.gravity-theme select, body .gform_wrapper.gravity-theme textarea {
    color: black;
	font-size: 17px;
    margin-bottom: 0;
    margin-top: 0;
    padding: 9px 24px;
	background: var(--light);
	border: 1px solid;
	border-radius:12px;
}
body .gform_wrapper.gravity-theme .gfield select {
    background: url(/wp-content/uploads/arrow-down-select.svg) no-repeat var(--light);
    background-size: 15px;
    background-position: calc(100% - 20px);
    padding-right: 50px!important;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    min-height: 45px;
}
body .gform_wrapper.gravity-theme .gform_footer, body .gform_wrapper.gravity-theme .gform_page_footer {
    margin: 0;
    padding: 35px 0 0;
    position: relative;
}
body .gform_anchor {
    display: none;
}
body .gform_wrapper .gform_footer .input-wrapper {
    position: relative;
}
body .gform_wrapper.gravity-theme .gform_footer input {
    background: black;
}
body .gform_wrapper.gravity-theme .gform_footer input:hover {
    background: var(--green);
}
.gform_footer .input-icon {
    position: absolute;
    right: 8px;
    margin-top: 8px;
}


/*HEADER SCROLLED*/
#masthead {
    position: fixed;
    height: auto;
    background: transparent;
    top: 0;
    left: 0;
    width: fit-content;
    z-index: 100;
    transition: 0.5s;
    border-radius: 0;
}
.home.scrolled #masthead {
    top:-120px;
}
.home.scrolled-cropped #masthead, body:not(.home) #masthead {
    top: 40px;
    left: 40px;
}
.nav-float-right #site-navigation, .main-navigation .main-nav ul li, .main-navigation .main-nav>ul>li:not(.button)>a {
    height: auto;
}
.main-navigation .main-nav ul li a {
    line-height: auto;
}
.nav-float-right #site-navigation {
    display: none;
}
.nav-float-right header .widget ul li {
    padding-right: 65px;
}
.scrolled #masthead, .scrolled.nav-float-right #site-navigation, .scrolled .main-navigation .main-nav>ul:not(.sub-menu)>li {
    height: auto;
}
.scrolled .main-navigation .main-nav>ul:not(.sub-menu)>li>a {
    line-height: auto;
}


/*HEADER*/
.main-navigation .main-nav ul ul li:not([class*="current-menu-"]):hover > a, .main-navigation .main-nav ul ul li:not([class*="current-menu-"]):focus > a, .main-navigation .main-nav ul ul li.sfHover:not([class*="current-menu-"]) > a {
    background-color: transparent;
}
.menu-item-has-children {
    cursor: pointer;
}
.menu-item-has-children>a {
    pointer-events: none;
}
.entry-title {
    color:var(--light);
}
header .inside-header {
    padding-top: 0;
	padding-bottom: 0;
    transition: .5s;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    width: fit-content;
	padding:0;
	margin:0;
}
body .site-logo {
    padding: 0;
	position: relative;
    display: inline-block;
	transition:.5s;
	height:auto;
}
body .site-header .header-image {
    width: 120px;
    padding: 0;
    transition: .3s;
    position: relative;
    left: 2px;
	transition: .5s;
}
.nav-float-right .header-widget {
    height: 50px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-left: auto;
}
.scrolled.nav-float-right .widget ul li {
    background: transparent;
    height: auto;
}
a.generate-back-to-top {
    display:none;
}
.menu-item-has-children .dropdown-menu-toggle {
    padding-right: 0;
    padding-left: 0;
    font-size: 0;
    font-weight: 900;
}
.menu-item-has-children .dropdown-menu-toggle:after {
    font-weight: 900;
    font-family: "Font Awesome 6 Pro" !important;
    content: "\2b";
    position: relative;
    font-size: 12px;
    width: auto;
    margin: 0;
    text-align: right;
    opacity: 1;
    transition: .3s;
    top: -1px;
    left: -1px;
    line-height: 1;
    padding: 0;
	transform: rotate(0deg);
    margin: 0;
	transition:.3s;
}
.menu-item-has-children:hover .dropdown-menu-toggle:after {
	transform: rotate(180deg);
}
.menu-item-has-children .dropdown-menu-toggle .gp-icon svg {
    top: 0.225em;
    transition: .3s;
    width: 13px;
}
.main-navigation .menu-item-has-children:hover .dropdown-menu-toggle .gp-icon svg {
    transform: rotate(180deg);
}
.nav-float-right #site-navigation {
    display: none;
    margin-left: auto;
}
.site-header, .main-navigation, .main-navigation ul ul.sub-menu li:hover a, .main-navigation .main-nav ul li[class*="current-menu-"]:not(.button) > a, .main-navigation .main-nav ul li[class*="current-menu-"]:not(.button) > a:hover, .main-navigation .main-nav ul li[class*="current-menu-"].sfHover > a, .main-navigation .main-nav ul li:not(.button):hover > a, .main-navigation .main-nav ul li:focus > a, .main-navigation .main-nav ul li.sfHover > a, .main-navigation .menu-bar-item:hover > a, .main-navigation .menu-bar-item.sfHover > a{
    background-color: transparent;
}
.main-navigation ul ul.sub-menu {
    background: var(--light);
    min-width: 400px;
    padding: 20px;
    border: 0;
    box-shadow: none;
    border-radius: 12px;
	transition: opacity 350ms linear;
	top:100px;
}
.main-navigation .main-nav ul ul li {
    height: auto;
    margin: 0;
}
.main-navigation:not(.toggled) ul li.sfHover>ul, .main-navigation:not(.toggled) ul li:hover>ul {
    left: -40px;
}
.main-navigation .main-nav ul ul li a {
    font-size: 16px;
    margin: 0;
    color: black !important;
    text-transform: none;
    letter-spacing: 0.5px;
}
.main-navigation .main-nav ul li:not(.button) a{
    padding-right: 0;
}
.main-navigation .main-nav ul li {
    transition: .3s;
    display: flex;
    align-items: center;
    margin: 0 23px;
	transition: .3s;
}
.main-navigation .main-nav ul li a {
    text-transform: uppercase;
    font-size: 15px;
    transition: .3s;
    margin-left: 0;
    padding-left: 0;
    letter-spacing: 1px;
    font-weight: 600;
}
.main-navigation .main-nav ul li:hover > a, .main-navigation .main-nav ul li:focus > a, .main-navigation .main-nav ul li.sfHover > a, .main-navigation .menu-bar-item:hover > a, .main-navigation .menu-bar-item.sfHover > a, .main-navigation .main-nav ul li:not(.button) a, .menu-toggle, .main-navigation .menu-bar-items, .main-navigation .main-nav ul li[class*="current-menu-"]:not(.button) > a, .main-navigation .main-nav ul li[class*="current-menu-"] > a:hover, .main-navigation .main-nav ul li[class*="current-menu-"].sfHover > a {
    color: var(--light);
}
.scrolled .main-navigation .main-nav ul li > a {
    color: var(--light);
}
.main-navigation .main-nav ul li:not([class*="current-menu-"]):hover > a, .main-navigation .main-nav ul li:not([class*="current-menu-"]):focus > a, .main-navigation .main-nav ul li.sfHover:not([class*="current-menu-"]) > a, .main-navigation .menu-bar-item:hover > a, .main-navigation .menu-bar-item.sfHover > a {
    color: var(--light);
	background:transparent;
}
.main-navigation .main-nav ul li > a:hover {
    color: var(--light)!important;
}
.main-navigation .main-nav ul ul li:hover a {
    background:transparent!important;
	color: var(--green)!important;
}


/*FULLSCREEN MENU/HEADER*/
.menu-contact {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.menu-contact i {
    color: var(--light);
    font-weight: 300;
    font-size: 16px;
    padding-bottom: 3px;
    display: block;
    padding-top: 15px;
}
.menu-contact i.fa-inbox {
    padding-bottom: 0px;
}
body .site-branding {
    display: block!important;
    padding-left: 36px;
}
.main-title a, .main-title a:hover, .logo-type {
    font-size: 40px;
}
.main-navigation .inside-navigation, .inside-header, .main-navigation, .main-navigation .main-nav ul li, .main-navigation li {
    transition: 0s;
}
body.mob-menu-overlay, body.mob-menu-slideout, body.mob-menu-slideout-over, body.mob-menu-slideout-top {
    padding-top: 0!important;
}
body .site-header {
    background: transparent;
    height: 80px;
    width: 100%;
    z-index: 999;
    mix-blend-mode: initial;
    position: fixed;
    transition: .35s;
    display: flex!important;
    left: 0;
}
body #mobmenuright li.button a, body #mobmenuright li.button a:hover {
    margin-left: 0;
    background: var(--light)!important;
    color: var(--green)!important;
    margin: 0 auto;
    box-shadow: 0 0 0 2px var(--light);
}
body.scrolled.password-protected .site-header {
    background: transparent;
}
html.mob-menu-no-scroll {
    overflow: auto;
}
body .mobmenu-right-alignment.show-panel {
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -o-transform: translateY(0);
    transform: translateY(0);
}
body .mobmenu-right-alignment {
    -webkit-transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    transform: translateY(-100%);
}
body .mobmenu-content li a {
    padding: 0;
}
body .mobmenu-content li .socials i, .site-footer i {
    transform: rotate(45deg);
    transition: .3s;
}
body .mobmenu-content li .socials a:hover i, .site-footer a:hover i {
    transform: rotate(0deg);
}
body .mobmenu-content li .socials p, .site-footer .socials p {
    display: flex;
    align-items: center;
    gap: 8px;
}
.contact-informations a h5 {
    transition:.3s;
}
.contact-informations a:hover h5 {
    opacity: 0.7;
}
body .mobmenu-content li .button a {
    padding: 0 30px;
    padding-right: 0;
    display: inline-flex;
}
body .mobmenu-content li .button a:after {
    border-left: 1px solid var(--green);
    color: var(--green);
}
body .mobmenu-content li .socials {
    display: flex;
    justify-content: flex-end;
    gap: 25px;
    margin-top: 25px;
}
body .mobmenu-content li a.wpml-ls-link {
    padding-bottom:0;
}
body .mob-menu-header-holder {
    top: 40px;
	right: 40px;
    display: block;
    z-index: 9999;
    position: fixed;    
    width: auto;
    margin-top: 0;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
}
body .mobmenul-container, body .mobmenur-container {
    position: relative;
    top: 0;
    margin: 0 !important;
    right: auto;
    display: flex;
    align-items: center;
}
body.mob-menu-slideout-over .mobmenu-right-alignment {
    right: 0;
    height: 100%;
    background: black;
    width: 100%;
    transition: transform .8s cubic-bezier(.76,0,.24,1) .3s;
    left: 0;
}
body.show-nav-right.mob-menu-slideout-over .mobmenu-right-alignment {
	transition: transform .8s cubic-bezier(.76,0,.24,1);
}
body .mobmenur-container i {
    transition: .3s;
    background: black;
    padding: 0;
    border-radius: 20px;
    width: 73.5px;
    text-align: center;
}
body .mobmenur-container i, body .mobmenul-container, body .mobmenur-container, body .mob-menu-header-holder {
    height: 73.5px;
}
/*body .mobmenur-container i:hover {
    background: black;
}*/
body.show-nav-right .mobmenu-overlay {
    background: transparent;
}
body .mob-icon-menu:before {
    font-weight: 400;
    font-family: "Font Awesome 6 Sharp" !important;
    content: "\f0c9";
    position: relative;
    font-size: 32px;
    color: var(--light);
    width: auto;
    margin: 0;
    text-align: center;
    opacity: 1;
    transition: .3s;
    top: 0;
    line-height: 75px;
    padding: 0;
    margin: 0;
}
body .mob-icon-menu:after {
    content: "";
    position: absolute;
    background: black;
    height: 9px;
    width: 35px;
    left: 0px;
    top: 12px;
    transform: rotate(-45deg);
    margin: 0;
    text-align: center;
    opacity: 1;
    transition: 1s cubic-bezier(.5,0,.1,1);
    padding: 0;
    margin: 0;
}
body .mob-icon-menu:hover:after {
    left: 38px;
    top: 52px;
}
body .mob-icon-cancel-1:before {
    font-weight: 300;
    font-family: "Font Awesome 6 Sharp" !important;
    content: "\f00d";
    position: relative;
    color: var(--light);
    font-size: 45px;
    width: auto;
    margin: 0;
    text-align: right;
    opacity: 1;
    transition: .3s;
    /*background: var(--green);*/
    border-radius: 10px;
    width: 50px;
    height: 50px;
    text-align: center;
    line-height: 51px;
}
body .mobmenu-right-panel .mobmenu-right-bt, .mobmenu-right-panel .mobmenu-right-bt {
    right: 50px;
    top: 50px;
}
body .mobmenu-content #mobmenuright > li > a:hover, body .mobmenu-content #mobmenuright li:hover, body .mobmenu-content #mobmenuright li:hover {
    background: transparent;
}
body #mobmenuright li.current-menu-item a:hover {
    padding-right: 0;
}
body .mob-expand-submenu {
    display: none;
}
body .mobmenu-right-panel .mob-cancel-button {
	display: block;
	transition: .3s;
	transform: rotate(0deg);
}
body .mobmenu-right-panel .mob-cancel-button:hover {
    transform: rotate(90deg);
}
body #mobmenuright li a {
    line-height: 1;
    display: block;
    text-decoration: none;
    font-weight: 300;
    text-transform: none;
    letter-spacing: 1px;
    font-size: 55px;
    color: var(--light) !important;
    transition: .3s;
    text-align: left;
    margin: 30px 0;
    max-width: fit-content;
    padding-left: 0;
    position: relative;
    z-index: 999;
    padding: 0;
}
body #mobmenuright li:first-child a {
    margin-top:0;
}
body #mobmenuright li:last-child a {
    margin-bottom:0;
}
body #mobmenuright li a:hover {
    color: var(--green)!important;
}
body .mobmenu-content .adresse, body .mobmenu-content .hours, .site-footer .adresse, .site-footer .hours {
    display:none;
}
body .mobmenu-content #mobmenuright .sub-menu {
    background-color: transparent;
    margin-top: 0;
    margin-bottom: 0;
    display: flex!important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
body #mobmenuright li i, body .show-nav-right .mob-expand-submenu i {
    color: var(--light)!important;
    font-size: 20px;
}
body .mobmenu-content li > .sub-menu li {
    padding: 0;
}
body .mobmenu-content #mobmenuright .sub-menu a {
    color: var(--light)!important;
    margin: 0;
    font-size: 23px;
    line-height: 1.45;
    padding: 0;
}
body #mobmenuright li.current-menu-item a {
    color:var(--light);
}
body .rightmtop img {
    width: 60px;
}
body .rightmtop {
    position: fixed;
    top: 40px;
    left: 50px;
    z-index: 999999;
}
body .mobmenu-content {
    margin-top: 0;
    z-index: 1;
    height: 100%;
    overflow: auto;
    display: flex;
    align-items: flex-end;
    align-content: center;
    flex-direction: row;
    justify-content: center;
    text-align: left;
    animation: fadeout 1s ease both;
    padding-top: 0;
    padding-bottom: 15vh;
    overflow: hidden;
}
body .mobmenu-content h5, .site-footer h5 {
    font-weight: 400;
    color: var(--green);
}
body .mobmenu-right-panel li, body .rightmbottom, body .rightmtop {
	padding-left: 0;
	padding-right: 0;
}
body .mobmenu-content li.call {
    display:none;
}
body.show-nav-right .mobmenu-content {
	opacity:0;
	animation: fadein 1s ease both;
    animation-delay: 0.5s;
}
body .mobmenu-content .rightmtop, body .mobmenu-content .rightmtop li, body .mobmenu-content .rightmtop li a {
    padding: 0;
    margin: 0;
}
body .mobmenu-content .rightmtop li a img {
    position: absolute;
    left: 23px;
    top: 30px;
    width: 55px;
}
body .mobmenu-content>div, body .rightmbottom {
    width: 50%;
}
body .rightmbottom {
    text-align: right;
}
body .rightmbottom, .mobmenu-content .widget {
    margin: 0;
    width: 100%;
    padding: 0;
}
.widget ul li {
    margin-bottom: 0;
}
body #custom_html-5, body .mobmenu-content li#text-2{
    width: 100%;
}
body .mobmenu-content p, .site-footer p, .contact .contact-informations p {
    margin: 0;
    padding-top: 0;
    color: var(--light);
    font-weight: 300;
    font-size: 13px;
    line-height: 1.5;
    text-transform: uppercase;
    letter-spacing: 1.5px;
}
body .mobmenu-content li#nav_menu-2 a {
    display: block;
    letter-spacing: 0;
    line-height: 0.9;
    text-decoration: none;
    font-size: 2vw;
    color: var(--light);
    margin: 4vh 0;
    padding: 0;
    font-weight: 200;
}
body .mobmenu-content li#nav_menu-2 li:first-child a {
    margin-top:0;
}
body .mobmenu-content .widget {
    padding-bottom: 0px;
    padding: 0;
}
.container.grid-container {
    padding-left: 0;
    background: var(--light);
}
body.scrolled .mob-icon-menu:before, body.password-protected .mob-icon-menu:before {
    color: var(--light);
}
.nav-align-center .main-nav>ul {
    width: 100px;
    margin-right: 60px;
}
.has-inline-mobile-toggle .mobile-menu-control-wrapper {
    display: none!important;
}


/*TEXT SCROLL*/
@keyframes marquee {
	0% {
		transform: translate3d(0, 0, 0);
	}
	100% {
		transform: translate3d(-50%, 0, 0);
	}
}
@keyframes marquee-reverse {
	0% {
		transform: translate3d(0, 0, 0);
	}
	100% {
		transform: translate3d(50%, 0, 0);
	}
}
.valeurs {
    padding: 0 0 20px;
}
.orb {
    width: auto;
    height: 150px;
    background: transparent !important;
    border-radius: 0;
    display: inline-flex;
    margin: 0 40px;
    float: left;
    transition: all .3s ease-out;
    font-size: 110px;
    line-height: 1;
    text-transform: none;
    font-weight: 400;
    opacity: 0.1;
    align-items: center;
	transition: .6s;
	cursor:default;
}
.orb:hover {
    opacity: 1;    
}
.orb.dot {
    opacity: 0.1;
    font-size: 1em;
    line-height: 1;
    margin: 0 20px;
    display: flex;
    background: black;
    width: 20px;
    height: 20px;
    border-radius: 5px;
    align-items: center;
    height: 150px;
}
.marquee--inner {
    display: block;
    width: 225%;
    margin: 0;
    height: 150px;
    position: absolute;
    animation: marquee 50s linear infinite;
	flex-direction: row;
    white-space: nowrap;
    overflow: hidden;
}
.reverse .marquee--inner {
    animation: marquee-reverse 50s linear infinite;
}
.marquee {
    height: 150px;
    width: 100%;
    border: 0;
    overflow: hidden;
    box-sizing: border-box;
    position: relative;
    margin: 0 auto -10px;
}
.orb.dot i {
    background: black;
    width: 20px;
    height: 20px;
    border-radius: 6px;
}


/******************************/
/******************************/
/*RESPONSIVE*/
/******************************/
/******************************/


@media only screen and (max-width: 1366px) {
body, p {
    font-size: 18px;
}
h1, h2 {
    font-size: 75px;
    left: -2px;
}
h3, .gform_title, .single-realisations .page-title h1, body #mobmenuright li a {
    font-size: 48px;
}
h4, .gform_description {
    font-size: 32px;
}
h5 {
    font-size: 22px;
}
h6, body:not(.single-realisations) .page-title h1 {
    font-size: 15px;
}
dotlottie-player {
    width: 300px!important;
    height: 300px!important;
}
body .full-height {
    height: calc(100vh - 60px);
    margin-top: 30px;
    margin-bottom: 30px;
}
body .grid, .footer-widgets-container, body .inside-article .entry-header, .top, .inside-site-info, body .mobmenu-content {
    padding-left: 100px;
    padding-right: 100px;
    margin-left: 30px;
    margin-right: 30px;
}
body .mobmenur-container i, body .mobmenul-container, body .mobmenur-container, body .mob-menu-header-holder, .home.scrolled-second .site-logo, body:not(.home) .site-logo {
    height: 65px;
}
body .mobmenur-container i, .home.scrolled-second .site-logo, body:not(.home) .site-logo {
    width: 65px;
}
body .mob-menu-header-holder {
    top: 30px;
    right: 30px;
}
body .mob-icon-menu:before {
    font-size: 29px;
    line-height: 66px;
}
body .mobmenu-right-panel .mobmenu-right-bt, .mobmenu-right-panel .mobmenu-right-bt {
    right: 38px;
    top: 38px;
}
body .mob-icon-cancel-1:before {
    font-size: 42px;
}
body .rightmtop img {
    width: 55px;
}
a.glink {
    font-size: 26px !important;
}
body .mob-icon-menu:after {
    height: 8px;
}
body .mob-icon-menu:hover:after {
    left: 30px;
    top: 45px;
}
.smooth i {
    font-size: 28px;
}
.home-about .type .box {
	height: 180px;
	font-size: 40px;
}
body .mobmenu-content p, .site-footer p, .contact .contact-informations p {
    font-size: 12px;
}
.site-info, .footer-bar .textwidget p:last-child, .footer-bar a {
    font-size: 13px;
}
.page-title {
    padding-top: 180px;
    padding-bottom: 35px;
}
.single-realisations .page-title {
	padding-bottom: 60px;
}
.filter-container {
    margin-bottom: 40px;
    margin-top: 35px;
}
body .latest {
    padding-left: 130px !important;
    padding-right: 130px !important;
}
.site-footer .widget ul li {
    font-size: 20px;
    margin-bottom: 15px;
    line-height: 1;
}
.footer-widget-1 {
    gap: 80px;
}
.footer-widgets img {
    width: 114px;
}
}


@media only screen and (max-width: 1024px) {
.prefooter-widget .membre img {
    width: 200px;
    margin-left: 30px;
}
}

@media only screen and (max-width: 1024px) {
.prefooter-widget .membre-inner {
    gap: 4%;
}
.prefooter-widget .membre img {
    width: 25%;
}
.contact .contact-informations {
    max-width:100%;
    padding: 50px 0px !important;
    margin-top: 0;
    text-align: center;
}
.poste-details-row {
    gap: 5px;
    flex-direction: column;
}
#postuler .gform_wrapper {
    flex-direction: column;
}
.contact>.contact-inner>.vc_column-inner>.wpb_wrapper {
    gap: 50px;
    flex-direction: column;
}
.contact .contact-image {
    display: none;
}
.maxime {
    gap: 25px;
    flex-direction: column;
}
.maxime .wpb_column:first-child, .maxime .wpb_column:last-child {
	width: 100%;
}
.maxime img {
	aspect-ratio: 2 / 2;
    position: relative;
    width: 100%;
    object-fit: cover;
}
.banner-top:before, .page-image:before {
    opacity: 0.3;
}
.banner-top {
    padding-bottom: 90px;
}
.scroll-wrapper, .scroll-icon {
    height: 55px;
	pointer-events:none;
}
@keyframes roll {
  0% {
    transform: translateY(-55px); /* Départ de l'icône au-dessus du cadre */
  }
  30% {
    transform: translateY(0); /* L'icône arrive dans le cadre */
  }
  70% {
    transform: translateY(0); /* L'icône reste dans le cadre pendant un instant */
  }
  100% {
    transform: translateY(55px); /* L'icône sort du cadre vers le bas */
  }
}
.page-title {
	padding-top: 150px;
}
.main-row, .footer-widgets-container, .single-service-content {
    padding-top: 100px;
    padding-bottom: 100px;
}
.single-realisations .page-title {
    padding-top: 0;
	flex-direction: row;
}
.page-title {
	display: flex;
	flex-direction: column;
}
.realisation .featured {
    margin: 30px;
	margin-bottom:0;
    padding-bottom: 75px;
}
body, p {
	font-size: 17px;
}
h1, h2 {
	font-size: 62px;
	left: -2px;
}
h3, .gform_title, .single-realisations .page-title h1, body #mobmenuright li a {
	font-size: 42px;
}
h4, .gform_description {
	font-size: 28px;
}
h5 {
	font-size: 21px;
}
h6, body:not(.single-realisations) .page-title h1 {
	font-size: 14px;
	font-weight: 800;
}
.button a, a.button, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:focus, body .gform_wrapper .gform_footer input.button, .main-navigation .main-nav ul li.button a, body #mobmenuright li.button a, .widget_nav_menu ul li.button a, body .dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover {
    font-size: 12px;
    padding: 10px 22px;
    min-height: 42px;
}
.realisations, .latest-realisations-inner, .home-about .type, .realisation-galerie {
    gap: 25px;
}
.single-all {
    margin-right: 25px;
}
body .slick-list {
    margin-right: -25px;
}
.latest-single-realisation {
    width: calc(50% - 15px);
}
.latest-realisations-inner {
    padding: 50px 0;
}
.footer-widget-1 {
    gap: 50px;
}
.realisation .page-title {
    gap: 50px;
    align-items: flex-start;
    display: flex;
    flex-direction: column;
}
.page-title > div {
    width: 100%;
}
.realisation .popup {
    padding-top: 0;
}
.single-realisations .right.description {
    width: 100%;
	max-width: 500px;
}
.featured-image-fullscreen {
    aspect-ratio: 2 / 1.5;
}
.archive-realisations a:hover img, .single-all a:hover img, .latest-realisations a:hover img {
    transform: none;
}
.archive-realisations {
    width: calc(50% - 12.5px);
}
.maxime .wpb_column:last-child {
    padding: 50px;
}
}


@media only screen and (max-width: 950px) {
.site-footer .footer-widgets-container .inside-footer-widgets {
    flex-direction: column;
    align-items: flex-start;
	gap: 75px;
}
.footer-widgets-container {
	padding-bottom: 75px;
}
.footer-widget-2 {
    text-align: left;
}
.site-footer .socials {
    justify-content: flex-start;
}
.inside-footer-widgets>div:not(:last-child) {
	margin-bottom: 0!important;
}
}


@media only screen and (max-width: 768px) {
dotlottie-player {
	width: 250px !important;
	height: 250px !important;
}
body .grid, .footer-widgets-container, body .inside-article .entry-header, .top, .inside-site-info, body .mobmenu-content {
	padding-left: 50px;
	padding-right: 50px;
}
.footer-bar-align-center .footer-bar {
	align-items: flex-start;
    flex-direction: column;
    align-content: flex-start;
    text-align: left;
}
.footer-bar-align-center .footer-bar>aside:nth-child(2) {
    margin-left: 0;
}
.footer-bar-align-center .footer-bar>aside:last-child * {
    text-align: left;
}
.latest-single-realisation {
	width: 100%;
}
.single-realisations .right.description {
	width: 100%;
	max-width: 100%;
}
.services-listing p {
    max-width: 100%;
    padding-top: 10px;
}
.filter-container {
	margin-bottom: 30px;
	margin-top: 60px;
}
#filter-select {
    padding: 8px 20px;
    padding-left: 40px;
    font-size: 12px;
    background-position: left 18px center;
}
.page-title {
    gap: 35px;
	padding-bottom:0;
}
.services-listing {
    gap: 50px;
}
body .latest {
    padding-left: 80px !important;
    padding-right: 80px !important;
}
}


@media only screen and (max-width: 641px) {
.prefooter-widget .membre img {
	margin-left: 0;
	width: 30%;
}
.prefooter-widget .membre-inner {
	gap:5%;
}
.prefooter-widget .membre {
    padding-top: 45px;
    padding-bottom: 70px;
}
.main-row, .footer-widgets-container, .single-service-content {
	padding-top: 90px;
	padding-bottom: 90px;
}
.fader {
	transform: translateY(25px);
	transition: opacity 0.8s ease-out, transform 0.8s ease-out;
}
.fader.in-view {
	transition-delay: 0.2s;
	opacity: 1;
	transform: translateY(0);
}
dotlottie-player {
    width: 235px!important;
    height: 235px!important;
}
.maxime .wpb_column:last-child {
    padding: 40px 30px;
}
.carrieres-listing .poste {
    padding: 40px 30px;
}
.poste-min {
	gap: 35px;
}
.maxime img {
	aspect-ratio: 2 / 2.5;
}
.site-footer .footer-widgets-container .inside-footer-widgets {
	gap: 50px;
}
.poste h4 {
    padding: 5px 0 20px;
}
.poste-min {
    gap: 50px;
    justify-content: space-between;
    align-items: flex-start;
    flex-direction: column;
}
.about .wpb_text_column {
    padding-top: 50px;
}
.maxime {
    padding-top: 75px;
    padding-bottom: 25px;
}
body .latest {
    padding-left: 40px !important;
    padding-right: 40px !important;
}
body .grid, .footer-widgets-container, body .inside-article .entry-header, .top, .inside-site-info, body .mobmenu-content {
	padding-left: 20px;
	padding-right: 20px;
}
h1, h2 {
	font-size: 48px;
	left: -1px;
}
h3, .gform_title, .single-realisations .page-title h1, body #mobmenuright li a {
	font-size: 30px;
}
h4, .gform_description {
	font-size: 25px;
}
h5 {
	font-size: 20px;
}
h6, body:not(.single-realisations) .page-title h1 {
	font-size: 13px;
	line-height: 1;
}
.realisation .featured {
    margin: 20px;
	margin-bottom:0;
	padding-bottom:50px;
}
.featured-image-fullscreen {
    aspect-ratio: 2 / 2.4;
}
.home-about .type {
    margin: 30px 0 0;
}
.home-about .type a {
    padding: 35px;
}
.home .site-logo {
	padding: 20px 25px 20px 20px;
}
.home .site-header .header-image {
	width: 145px;
}
body .grid, .footer-widgets-container, body .inside-article .entry-header, .top, .inside-site-info, body .mobmenu-content {
    margin-left: 20px;
    margin-right: 20px;
}
.home.scrolled-cropped #masthead, body:not(.home) #masthead {
	top: 20px;
	left: 20px;
}
body .mob-menu-header-holder {
    top: 20px;
    right: 20px;
}
body .mobmenu-right-panel .mobmenu-right-bt, .mobmenu-right-panel .mobmenu-right-bt {
	right: 27px;
	top: 27px;
}
body .rightmtop img {
	width: 40px;
}
body .rightmtop {
    top: 30px;
    left: 40px;
}
body .full-height, .banner-top:before {
	height: calc(100vh - 40px) !important;
	height: calc(var(--vh, 1vh)* 100 - 40px) !important;
}
body .full-height {
	margin-top:20px;
	margin-bottom:20px;
}
.home-about .type {
    flex-direction: column;
}
.home-about .type .box {
	height: 150px;
}
.home-about .type a {
	width: 100%;
}
.home-services .title .vc_column-inner>.wpb_wrapper {
    align-items: flex-start;
    justify-content: space-between;
    flex-direction: column;
    gap: 30px;
}
body .banner-top {
    padding-left:0;
	padding-right:0;
}
body .mobmenu-content {
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	padding-top: 140px;
	gap: 50px;
}
a.glink {
	font-size: 23px !important;
}
body #mobmenuright li a {
    margin: 18px 0;
}
body .rightmbottom {
    text-align: left;
}
body .mobmenu-content li .socials {
    justify-content: flex-start;
}
body .mobmenu-content li .socials {
    margin-top: 5px;
}
.latest-realisations img {
    aspect-ratio: 2 / 1.5;
}
.realisation-galerie {
	display: flex;
	flex-direction: column;
}
.all h4 {
    padding-bottom: 40px;
}
.all .slick-next, .all .slick-prev {
    top: -55px;
}
.all .previous {
    padding-top: 40px;
}
.prefooter h2 {
	font-size: 10vw;
}
.prefooter p {
    padding-bottom: 35px;
}
.realisations, .latest-realisations-inner {
    flex-direction: column;
}
.archive-realisations {
    width: 100%;
}
.archive-realisations .meta, .single-all .meta, .latest-realisations .meta {
    position: relative;
    margin-top: -45px;
}
.banner-top h2 {
    font-size: 10vw;
	padding-bottom:25px;
}
body .gform_wrapper.gravity-theme .gfield select, body .gform_wrapper.gravity-theme input:not([type=radio]):not([type=checkbox]):not([type=image]):not([type=file]) {
	line-height: 1.15;
	min-height: 42px;
}
.ginput_container.ginput_container_fileupload input, body .gform_wrapper.gravity-theme .ginput_preview {
    padding: 9.5px 20px;
}
body .gform_wrapper.gravity-theme .gfield select, body .gform_wrapper.gravity-theme input[type=color], body .gform_wrapper.gravity-theme input[type=date], body .gform_wrapper.gravity-theme input[type=datetime-local], body .gform_wrapper.gravity-theme input[type=datetime], body .gform_wrapper.gravity-theme input[type=email], body .gform_wrapper.gravity-theme input[type=month], body .gform_wrapper.gravity-theme input[type=number], body .gform_wrapper.gravity-theme input[type=password], body .gform_wrapper.gravity-theme input[type=search], body .gform_wrapper.gravity-theme input[type=tel], body .gform_wrapper.gravity-theme input[type=text], body .gform_wrapper.gravity-theme input[type=time], body .gform_wrapper.gravity-theme input[type=url], body .gform_wrapper.gravity-theme input[type=week], body .gform_wrapper.gravity-theme select, body .gform_wrapper.gravity-theme textarea {
    padding: 7px 20px;
}
body .gform_wrapper.gravity-theme .ginput_complex span:first-child {
	margin-bottom: 15px;
}
body .gform_wrapper.gravity-theme .gform_fields {
    grid-row-gap: 10px;
}
body .gform_wrapper.gravity-theme .ginput_complex span:last-child {
	margin-bottom: 0px;
}
body .cky-consent-container .cky-consent-bar {
    padding: 25px 40px;
}
}

@media (max-width: 440px) {
body .cky-custom-brand-logo-wrapper, body .cky-notice .cky-title, body .cky-notice-des, body .cky-notice-btn-wrapper {
	padding: 0;
}
body .cky-notice-des {
	max-height: initial;
	overflow-y: auto;
}
body .cky-notice-btn-wrapper {
	gap: 10px;
	flex-direction: row-reverse;
	justify-content: flex-end;
}
}

@media only screen and (max-width: 400px) {
.email h5.data {
    font-size: 4.85vw;
}
}