/*
 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 {
	--beige: #E4DDD5;
	--gold: #C89213;
	--accent: #C89213;
	--blue: #A4CCE2;
	--dark: #002657;
	--radius: 1vw;
	--grid: 3vw;
	--section: 8vw;
	--section-sm: 5vw;
	--pad-sm: 1.5vw 1.2vw 3vw;
}
.whiteBg {
	background: white;
	border: 1px solid var(--dark);
	box-sizing: border-box;
}
.beigeBg {
	background: var(--beige);
}
.goldBg {
	background: var(--gold);
}
.blueBg {
	background: var(--blue);
}
.darkBg {
	background: var(--dark);
}
.darkBg * {
	color: var(--blue);
}
.whiteColor * {
	color: white;
}
.whiteColor strong, .whiteColor b {
    color: var(--blue);
}


/*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;
}
}
/*Animation : Splash*/
@-webkit-keyframes splash {
    100% {
	opacity:1;
	-webkit-transform: translateY(200px);
	-moz-transform: translateY(200px);
	-ms-transform: translateY(200px);
	-o-transform: translateY(200px);
	transform: translateY(200px);
}
}
@keyframes splash {
    100% {
	opacity:1;
	-webkit-transform: translateY(200px);
	-moz-transform: translateY(200px);
	-ms-transform: translateY(200px);
	-o-transform: translateY(200px);
	transform: translateY(200px);
}
}


/*FONTS*/
html *, .mobmenu-content *, .inter, .inter *, .roboto h1 strong, .roboto h2 strong, .roboto h3 strong, .roboto h4 strong, .roboto h5 strong, .roboto h1 b, .roboto h2 b, .roboto h3 b, .roboto h4 b, .roboto h5 b, .roboto p strong, .roboto p b, .atyp h6 {
	font-family: "atyp-bl-variable",sans-serif!important;
	font-variation-settings: "opsz" 6;
}
.roboto, .roboto *, h1 strong, h2 strong, h3 strong, h4 strong, h5 strong, h1 b, h2 b, h3 b, h4 b, h5 b, h6, .cta *, #gform_2 label, .fiche .title strong, body .cky-notice .cky-title {
    font-family: "Roboto Serif", serif !important;
}
.fa-classic, .fa-light, .fa-regular, .fa-solid, .fa-thin, .fal, .far, .fas, .fat {
    font-family: "Font Awesome 6 Pro"!important;
}
.fa-sharp {
    font-family: "Font Awesome 6 Sharp"!important;
}
.fa-brands, .fab {
    font-family: "Font Awesome 6 Brands"!important;
}
.dashicons, .dashicons-before:before {
    font-family: dashicons !important;
}


/*LOADER/SPLASH/TIMEOUT*/
.splash.timeout {
    pointer-events: none;
	opacity: 0;
}
.splash {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 99999;
    display: flex;
    background: var(--dark);
    -webkit-transition: all 1s ease;
    -moz-transition: all 1s ease;
    -o-transition: all 1s ease;
    transition: all 1s ease;
    transform: scale(1);
    opacity: 1;
    pointer-events: initial;
    justify-content: center;
    align-items: flex-start;
    overflow-x: hidden !important;
    padding: 0 10vw;
}
.splash-anim {
    opacity: 0;
    animation: splash .8s ease both;
    animation-delay: 0.1s;
	-webkit-transform: translateY(150px);
    -moz-transform: translateY(150px);
    -ms-transform: translateY(150px);
    -o-transform: translateY(150px);
    transform: translateY(150px);
}
.splash-anim img.logo {
    width: 50vw;
}
body:not(.home) .splash-anim {
    display:none;
}


/*COOKIES*/
body .cky-box-bottom-right {
    bottom: 2vw;
    right: 2vw;
}
body .cky-notice .cky-title {
    font-weight: 600;
}
body .cky-notice-btn-wrapper .cky-btn, body .cky-prefrence-btn-wrapper .cky-btn {
    border-radius: 999px;
    text-transform: uppercase;
    padding: 2px 20px;
    font-weight: 600;
	color: #132033;
    background-color: #fff;
    border-color: #fff;
}
body .cky-notice-btn-wrapper .cky-btn-reject, body .cky-notice-btn-wrapper .cky-btn-customize {
    color: #fff;
    background-color: transparent;
    border-color: #fff;
}
body .cky-consent-container .cky-consent-bar {
    background: var(--blue);
    border: 0;
    box-shadow: none;
    text-align: center;
    border-radius: var(--radius);
}
body div[data-cky-tag="powered-by"] {
	display:none!important;
}
body .cky-consent-container {
    width: 500px;
}
@media only screen and (max-width: 1024px) {
body .cky-box-bottom-right {
    bottom: var(--grid);
    right: var(--grid);
}
}
@media only screen and (max-width: 641px) {
body .cky-consent-container .cky-consent-bar {
    border-radius: var(--radius) var(--radius) 0 0 ;
}
body .cky-consent-container {
    width: 100%;
}
body .cky-box-bottom-right {
    bottom: 0;
	width:100%;
    right: 0;
}
}
@media only screen and (max-width: 440px) {
body .cky-consent-container .cky-consent-bar {
    border-radius: var(--radius) var(--radius) 0 0 ;
}
body .cky-box-bottom-right {
    bottom: 0;
    right: 0;
}
}

/*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:not(.single-post) .featured-image {
    display: none !important;
}
body {
    background: white;
    color: var(--dark);
	overflow-x:hidden!important;
}
a, button, input {
    transition: .3s;
}
a, a:focus, a:active {
    color: inherit;
    text-decoration: none;
}
a:hover {
    color: inherit;
}
p a:hover {
    text-decoration:none;
}
.hero-section, .fullHeight {
    height: 100vh;
}
.flexStart {
    display: flex;
    align-items: flex-start;
}
.flexCenter {
    display: flex;
    align-items: center;
}
.flexEnd {
    display: flex;
    align-items: flex-end;
}
.alignLeft {
    text-align: left;
}
.alignCenter, .center {
    text-align: center;
}
.alignRight {
    text-align: right;
}
.radius {
    border-radius: var(--radius);
}
.pad-sm {
	padding: var(--pad-sm);
}
body .vc_row {
    margin-left: 0;
    margin-right: 0;
}
body .wrap {
    padding-top: var(--section);
	padding-bottom: var(--section);
	padding-left: var(--grid);
	padding-right: var(--grid);
}
body .wrap-sm {
    padding: var(--grid);
}
body .section, body .footer-widgets-container {
    padding-top: var(--section);
	padding-bottom: var(--section);
}
body .grid, .footer-widgets-container, .inside-site-info, .inside-header {
	padding-left: var(--grid);
	padding-right: var(--grid);
}
body .vc_column_container>.vc_column-inner {
    padding-left: 0;
	padding-right: 0;
}
.col:before, .col:after {
    display:none!important;
}
.col {
    display:flex;
	gap: 1vw;
}
.col>div {
    padding: var(--pad-sm);
	border-radius: var(--radius);
}
body .vc_sep_pos_align_center {
    padding: var(--section-sm) 0;
}
body .vc_separator.vc_sep_color_grey .vc_sep_line {
    border-color: #13203338;
}
.darkBg .vc_separator.vc_sep_color_grey .vc_sep_line {
    border-color: var(--blue);
}
body:not(.page-template-services-template):not(.blog):not(.single) .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;
    background-color: var(--light-green);
}
.separate-containers .site-main {
    margin: 0;
}
body .grid-container {
    max-width: 100%;
}
body .spacer .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
    margin-top: var(--grid);
}
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, #gform_1 .gform_footer input, #gform_2 .gform_footer input, #gform_3 .gform_footer input, body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top .vc_tta-tab>a, body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top .vc_tta-tab.vc_active>a {
    background: var(--gold);
    color: var(--dark);
    border: 0;
    border-radius: 50px;
    min-height: 2.5vw;
    background: var(--gold);
    text-transform: uppercase;
    color: var(--dark);
    font-size: 1.25vw;
    font-weight: 500;
    letter-spacing: 0.05vw;
    padding: 0 2vw;
    line-height: 1;
    transition: .3s;
    display: inline-flex;
    align-items: center;
    gap: 0.65vw;
	height: 2.5vw;
	justify-content: center;
}
a.button:hover, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover, #gform_1 .gform_footer input:hover, #gform_2 .gform_footer input:hover, #gform_3 .gform_footer input:hover, body .blue .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover {
    background: var(--beige);
    color: var(--dark);
}
a.button i {
    font-size: 0.9em;
    position: relative;
}
body .blue .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
    background: var(--blue);
    color: var(--dark);
}
body .white .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
    background: white;
}
body .beige .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
    background: var(--beige);
}
body .dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
    background: var(--dark);
	color: var(--blue);
}
body .beige .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover, body .dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover {
    background: var(--gold);
	color: var(--dark);
}
body .sm .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
    font-size: 1vw;
    padding-top: 0;
}
body, p {
    font-size: 1.33vw;
	line-height: 1.4;
    font-weight: 400;
}
.roboto p, #gform_2 label {
    font-size: 1.23vw;
    line-height: 1.5;
}
small {
    font-size: 1vw;
	display: inline-block;
}
h1, h2, h3, h4, h5, h6 {
    line-height: 1.15;
    font-weight: 400;
    text-transform: none;
}
h1, h2 {
    font-size: 4.6vw;
	line-height: 1.05;
}
h1 strong, h2 strong, h1 b, h2 b {
    letter-spacing: -0.1vw;
}
strong, b {
	font-weight: 400;
}
p strong, p b {
    font-weight: 500;
}
h3 {
    font-size: 3.8vw;
}
h4 {
    font-size: 2.7vw;
}
h4 strong, h4 b {
    font-weight: 500;
}
h5, body .vc_toggle h4 {
    font-size: 2.3vw;
}
h6 {
    font-size: 1.85vw;
    padding-bottom: 1vw;
    font-weight: 500;
    letter-spacing: -0.05vw;
}
h1, h2, h3, h4, h5, h6, p {
    margin:0;
}
.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;
}


/*HEADER*/
body[data-color="white"] .site-header *:not(.header-widget):not(.header-widget *):not(ul li[class*="current-menu-"] > a) {
  color: white;
}
body[data-color="dark"] .site-header *:not(.header-widget):not(.header-widget *):not(ul li[class*="current-menu-"] > a) {
  color: var(--dark);
}
.site-header, body .inside-header, .scrolled .nav-align-center .inside-navigation, .nav-float-right #site-navigation {
    height: 9vw;
}
body .site-header {
    position: fixed;
    background: transparent;
    top: 0;
    width: 100%;
    z-index: 100;
}
body .inside-header {
    width: 100%;
    padding-top: 0;
    padding-bottom: 0;
	transition: all 0.5s cubic-bezier(.24, .11, .11, 1);
	transform: translateY(0);
	opacity:1;
}
.nav-float-right #site-navigation {
    display: flex;
}
/*Header Top*/
.nav-float-right .header-widget {
    margin-left: 0;
    position: fixed;
    top: 0;
    right: 0;
    transition: all 0.5s cubic-bezier(.24, .11, .11, 1);
    transform: translateY(0);
    opacity: 1;
    display: flex;
    gap: 0.75vw;
    margin-right: var(--grid);
}
.menu .portfolio a, .menu .lang a, .widget_gtranslate a {
    display: flex;
    gap: 0.5vw;
    line-height: 1vw;
    font-size: 1vw;
    font-weight: 600;
    padding: 0.05vw 1.25vw 0;
    align-items: center;
    justify-content: center;
    height: 2.25vw;
}
.menu>li, .menu .portfolio a, .menu .lang a, .widget_gtranslate a {
    border-radius: 0 0 1vw 1vw;
}
.menu .portfolio a:hover, .menu .lang a:hover, .widget_gtranslate a:hover {
    box-shadow: 0 0px 15px rgb(19 32 51 / 50%);
}
.menu .lang a, .widget_gtranslate a {
    color: white;
    font-weight: 500;
	background: var(--dark);
}
.gt-current-lang {
	display:none!important;
}
/*Scroll-down effect*/
body.scroll-down .inside-header {
	opacity:0;
    transform: translateY(-9vw);
}
/*Scroll-up effect*/
body.scroll-up[data-color="dark"] .site-header *:not(.header-widget):not(.header-widget *):not(ul li[class*="current-menu-"] > a) {
  color: white;
}
body.scroll-up .site-header {
    border-bottom: 0;
    border-radius: 0 0 1vw 1vw;
}
body.scroll-up .site-header, body.scroll-up .site-header .inside-header, body.scrolled .site-header, body.scrolled .site-header .inside-header, .scroll-up.nav-float-right #site-navigation {
    height:6vw;
}
body.scrolled .inside-header {
    border-bottom: 0 !important;
    background: var(--dark);
    border-radius: 0 0 25px 25px;
}
.scroll-up.nav-float-right .header-widget {
	opacity:0;
    transform: translateY(-2.25vw);
}
/***/
body .main-navigation .main-nav ul li a, body .main-navigation .menu-toggle, body .main-navigation .menu-bar-items {
    color: inherit;
}
body .main-navigation, body .main-navigation ul ul {
    background-color: transparent;
}
.main-navigation .main-nav ul li a {
    padding: 0;
    margin-left: 2.5vw;
    line-height: 1;
    font-size: 1vw;
    font-weight: 600;
}
.main-navigation .main-nav ul li:hover a {
    color: var(--gold)!important;
}
.site-header .header-image, body .rightmtop img {
    width: 15vw;
    padding-right: 0;
}


/*FULLSCREEN MENU/HEADER*/
body.show-nav-right .mobmenu-panel.show-panel {
	z-index: 3000000;
}
.show-nav-right #page, .show-nav-right .inside-header, .show-nav-right .site-footer, .show-nav-right .prefooter {
    filter: blur(8px);
}
#page, .inside-header, .site-footer, .prefooter {
    filter: blur(0px);
    transition: 1s;
}
body.mob-menu-overlay, body.mob-menu-slideout, body.mob-menu-slideout-over, body.mob-menu-slideout-top {
    padding-top: 0!important;
}
body #mobmenuright li.menu-soumission a, body #mobmenuright li.menu-soumission a:hover {
    margin-left: 0;
    background: white!important;
    color: var(--dark)!important;
    margin: 0 auto;
}
html.mob-menu-no-scroll {
    overflow: auto;
}
body .site-header { /*show only logo*/
	display: block !important;
}
body .mobmenu-right-alignment.show-panel {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
}
body .mobmenu-right-alignment {
    -webkit-transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -o-transform: translateX(100%);
    transform: translateX(100%);
}
body .mobmenu-content li a {
	display: inline-flex;
	letter-spacing: 0;
	padding: 0;
	text-decoration: none;
	font-size: 3.75vw;
	color: white;
	padding: 0;
	text-align: center;
	font-weight: 400;
	letter-spacing: 0.2vw;
}
body .mobmenu-content li .socials {
    display: flex;
    justify-content: center;
    gap: 2vw;
}
body .mob-menu-header-holder {
    top: 0;
    right: 0;
    display: block;
    z-index: 9999;
    position: fixed;
    right: var(--grid);
    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: 100vh;
	height: 100svh;
    height: 100dvh;
    background: var(--dark);
    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;
    padding: 0;
    border-radius: 50px;
    text-align: center;
}
body[data-color="white"] .mobmenur-container i {
    background: white;
}
body[data-color="white"] .mob-icon-menu:before {
	color: var(--dark);
}
body[data-color="dark"] .mobmenur-container i {
    background: var(--dark);
}
body[data-color="dark"] .mob-icon-menu:before {
	color: white;
}
body[data-color="dark"] .mobmenur-container i:hover, body[data-color="dark"] .mob-icon-cancel-1:hover:before {
    background: var(--dark);
}
body[data-color="white"] .mobmenur-container i:hover, body[data-color="white"] .mob-icon-cancel-1:hover:before {
    background: white;
}
body.show-nav-right .mobmenu-overlay {
    background: transparent;
}
body .mob-icon-menu:before, body .mob-icon-cancel-1:before {
	font-weight: 300;
	font-family: "Font Awesome 6 Sharp" !important;
	content: "\f7a4";
	position: relative;
	color: white;
	width: auto;
	margin: 0;
	text-align: center;
	opacity: 1;
	transition: .3s;
	top: 0.1vw;
    left: 0;
    padding: 0;
    border-radius: 50px;
    margin: 0;
    font-size: 5vw;
}
body .mob-icon-cancel-1:before {
	content: "\f00d";
	color: var(--dark);
	background: white;
}
body .mobmenur-container i, body .mob-icon-menu:before, body .mob-icon-cancel-1:before {
    height: 8vw;
	line-height: 8vw;
	box-shadow: 0 0px 10px rgb(19 32 51 / 8%);
}
body .mob-menu-header-holder, body .mobmenur-container i, body .mob-icon-menu:before, body .mob-icon-cancel-1:before {
    width: 8vw;
}
body .mobmenu-right-panel li, body .rightmbottom, body .rightmtop {
	padding-left: 0;
	padding-right: 0;
}
body .mobmenu-right-panel .mobmenu-right-bt, .mobmenu-right-panel .mobmenu-right-bt {
    right: var(--grid);
    top: 4vw;
}
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 .mobmenu-content>div {
    width:100%;
}
body #mobmenuright li:first-child a {
    margin-top: 0;
}
body #mobmenuright li a {
    line-height: 1;
    display: block;
    text-decoration: none;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0.5px;
    font-size: 4.25vw;
    color: white !important;
    transition: .3s;
    text-align: left;
    margin: 4.5vw auto 0;
    max-width: fit-content;
    padding-left: 2vw;
    position: relative;
    z-index: 999;
    padding: 0;
}
body #mobmenuright li a:hover {
    color: white!important;
}
body .mobmenu-content li > .sub-menu li {
    padding: 0;
}
body #mobmenuright li.current-menu-item a {
    color: var(--gold) !important;
}
body .rightmtop {
	position: fixed;
	top: 4.5vw;
	left: var(--grid);
	z-index: 999999;
}
body .mobmenu-content {
    margin-top: 0;
    z-index: 1;
    height: 100%;
    overflow: auto;
    display: flex;
    padding: 0 var(--grid);
    align-items: center;
    align-content: center;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    animation: fadeout 1s ease both;
}
body .mobmenu-content li.portfolio {
    width: fit-content;
    padding: 2vw 5vw;
    border-radius: 50px;
    margin: 6vw auto;
}
body #mobmenuright li.portfolio a {
    margin: 0;
    font-size: 3.75vw;
    font-weight: 600;
    display: inline-flex;
    gap: 1.75vw;
    color: var(--dark) !important;
}
body #mobmenuright li.portfolio a i {
    font-size: 0.9em;
    position: relative;
    top: 0.1vw;
}
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 .rightmbottom {
    margin: 0;
    width: 100%;
    padding: 0;
    position: absolute;
    bottom: var(--grid);
	color: white;
}
.widget ul li {
    margin-bottom: 0;
}
body #custom_html-5, body .mobmenu-content li#text-2{
    width: 100%;
}
body .mobmenu-content p {
    margin: 0;
    padding-top: 3vw;
    font-weight: 400;
    font-size: 2vw;
    line-height: 1.5;
}
body .mobmenu-content li#nav_menu-2 a {
    display: block;
    letter-spacing: 0;
    line-height: 0.9;
    text-decoration: none;
    font-size: 2vw;
    color: white;
    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;
}
.nav-align-center .main-nav>ul {
    width: 100px;
    margin-right: 60px;
}
.has-inline-mobile-toggle .mobile-menu-control-wrapper {
    display: none!important;
}


/*PAGES*/
/*Hero*/
.hero-section {
	display:flex;
    align-items: flex-end;
    padding-bottom: var(--section-sm);
	position:relative;
}
body .wpb_single_image.vc_align_left {
    text-align: right;
}
.hero-section figure, .hero-section figure .vc_single_image-wrapper, .hero-section figure img, .wpb_wrapper.vc_figure, .vc_single_image-wrapper, .wpb_single_image img {
    width: 100%;
}
.sm figure img {
    width: 70%;
}
.hero-section h2 {
    padding-bottom: 2vw;
}
.services-hero h2, .services-action h2 {
    color:white;
}
.services-hero h2 strong {
    color:var(--dark);
}
.services-action h2 strong {
    color:var(--blue);
}
.services-hero p {
    padding-right: 9vw;
}
.contact-hero p {
    padding-right: 6vw;
}
/*Accueil*/
body .hero-copyright {
    position: absolute;
	bottom: 2vw;
	left:0;
}
.home-hero .sm figure img {
    padding-bottom: var(--grid);
}
.hero-copyright .wpb_text_column .wpb_wrapper {
	display: flex;
    width: 100%;
    align-items: center;
    justify-content: space-between;
}
.hero-copyright p {
    font-size: 0.8vw;
    text-transform: uppercase;
}
.home-desc h6 {
    padding-bottom: 0;
    max-width: 85%;
    margin: 0 auto;
    line-height: 1.5;
    text-align: center;
}
.home-filler strong {
    color: var(--blue);
}
.home-filler.filler {
    background-position: 25% 80%;
	background-size: 125vw;
}
.home-approche-box:before, .home-approche-box:after {
    display: none!important;
}
.home-approche h2 {
	padding-bottom:var(--grid);
}
.home-approche-box {
    display: flex;
    gap: 3vw;
	padding-top:var(--section-sm);
}
.home-approche-box h6 {
	border-top:1px solid;
	padding-top:1vw;
}
.home .services-action img {
    padding: var(--grid);
	width: 100%;
}
.home .confiance {
    padding-top: var(--section-sm);
}
.home .confiance .left p {
    padding-top: 0;
}
.home .confiance .right p {
    color: white;
}
#carousel .slick-slide {
	margin: 0 1.5vw; /* espace entre les slides */
}
#carousel .slick-list {
	margin: 0 -1.5vw; /* compense le margin total pour un alignement propre */
}
#carousel .fiche {
	border-radius: var(--radius);
	padding: var(--grid);
}
#carousel .slick-track {
	display: flex !important;
	align-items: stretch;
}
#carousel .slick-slide {
    height: auto !important;
    display: flex !important;
    align-items: stretch;
    flex-direction: column;
    justify-content: space-between;
    gap: 1vw;
}
#carousel .slick-slide > div {
	flex: 1 1 auto;                 /* le wrapper interne */
	height: 100%;
}
#carousel .text {
    display: flex;
    gap: 7vw;
    align-items: flex-end;
}
#carousel .text img {
    width: 35%;
}
#carousel .darkBg *, #carousel .imageBg *, #carousel .blueBg .title {
    color:white;
}
#carousel .blueBg .title strong {
    color: var(--dark);
}
#carousel .imageBg strong, #carousel .darkBg strong {
    color: var(--blue);
}
#carousel .text span {
    max-width: 50%;
}
body .slick-prev:before, body .slick-next:before {
    font-family: 'Font Awesome 6 Pro';
    content: "\f061";
    font-weight: 300;
    font-size: 2.25vw;
    line-height: 1;
    opacity: 1;
    background: white;
    color: var(--dark);
    border-radius: 999px;
    padding: 0.5vw;
    transition: .3s;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
body .slick-prev:hover:before, body .slick-next:hover:before {
    background: var(--beige);
}
body .slick-prev, body .slick-next, body .slick-prev:before, body .slick-next:before {
    width: 4vw;
    height: 4vw;
    z-index: 9;
}
body .slick-prev {
	left: -2vw;
}
body .slick-next {
    right: -2vw;
}
body .slick-prev:before {
    content: "\f060";
}
.home-extra.col>div {
    display: flex;
	width:35%;
}
.home-extra.col>div, .home-extra .col>div {
    padding-bottom: 2vw;
}
.home-extra .col.last>div {
    padding: 2vw;
}
/*col3*/
.home-extra.col>div.last {
    padding-bottom: 0;
    width: 30%;
}
.home-extra.col>div.last .vc_btn3-container {
    position: absolute;
    bottom: 2vw;
    left: 0;
    right: 0;
}
body .home-extra .dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
    width: 100%;
}
.home-extra .col {
	border-radius: var(--radius);
}
.home-extra .darkBg h4 {
    color: white;
	padding-bottom: var(--grid);
}
.home-extra .vc_column-inner>.wpb_wrapper {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: -webkit-fill-available;
}
.home-extra .wpb_single_image .vc_figure {
    padding-top: 2vw;
}
.home-extra p {
    padding: 2vw 0 0;
    display: flex;
    gap: 1vw;
}
.home-extra p img {
    width:25%;
}
.home-extra .whiteBg {
    border: 0;
}
.home-extra .blueBg h4 strong {
    color:white;
}
.home-extra .split {
    padding:0!important;
}
.home-extra .col.last {
    margin-top:1vw;
}
/*À propos*/
.about h3 strong {
	color: white;
}
.about h3 {
	padding-right: 1vw;
}
.cta small {
	color: var(--dark)!important;
	position:relative;
	top:0.1vw;
}
.cta {
    display: flex;
	color: var(--dark);
    background: white;
    width: fit-content;
    padding: 0.5vw;
    padding-right: 1vw;
    border-radius: var(--radius);
    color: var(--dark);
    align-items: center;
    font-weight: 500;
    margin: 0 auto;
    margin-top: var(--section);
    gap: 0.75vw;
}
.cta:hover {
    background: var(--beige);
}
.cta img  {
    width: 4vw;
}
.cta:hover i {
    transform: rotate(0deg);
}
.cta i {
    font-weight: 300;
	transition: .3s;
    color: var(--gold);
    transform: rotate(-45deg);
}
.valeurs .blueBg * {
	color: var(--dark)
}
.valeurs.col>div {
    padding-left: 0;
    padding-right: 0;
    padding-top: var(--grid);
}
.valeurs.col>div:last-child {
    padding: var(--grid);
}
.valeurs.col>div:last-child p {
    padding-bottom: 1vw;
}
.valeurs.col>div:last-child h3 {
    padding-right: 0;
	padding-bottom:2vw;
}
.valeurs.col {
    gap: 5vw;
    align-items: flex-start;
}
body .wrap.decouvre {
    padding-top: var(--grid);
}
.decouvre h3 {
    padding-right: var(--grid);
}
.engagement p {
    max-width: 60%;
    margin: 2vw auto 0;
}
/*Faq style*/
body .vc_toggle_title {
    display: inline-block;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_icon:before {
    height: 2.5vw;
    width: 2.5vw;
    border: 0;
    background: transparent;
    font-family: 'Font Awesome 6 Pro';
    content: "\2b";
    font-weight: 500;
    font-style: normal;
    top: 0;
    right: 0;
    left: auto;
    font-size: 1.25vw;
    position: absolute;
    border: 0.2vw solid;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: .3s;
    margin-top: 0.15vw;
}
body .vc_toggle:hover .vc_toggle_icon:before {
    border-color: var(--blue);
	background: var(--blue);
	color: var(--dark);
}
body .vc_toggle_default.vc_toggle_active .vc_toggle_icon:before {
    visibility: visible!important;
    content: "\f068"!important;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_title {
    width: 100%;
    padding: 1.25vw 0;
}
body .vc_toggle {
    border-top: 1px solid;
}
body .vc_toggle.last {
    border-bottom: 1px solid;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_icon::after {
    display:none;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_icon {
    background: transparent;
    border: 0;
	left:auto!important;
	right:0!important;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_content {
    padding: 0;
	padding-right: var(--section-sm);
    margin: 0;
    padding-bottom: 2vw;
}
body .vc_toggle {
    margin: 0;
    padding: 0;
}
body .vc_toggle h4 {
    transition:.3s;
}
body .vc_toggle:hover h4 {
    color: var(--turquoise);
}
body .vc_toggle:last-of-type {
    margin-bottom: 0;
    padding-bottom: 0;
}
body .vc_toggle.first {
    margin-top: var(--grid);
}
/*Services*/
.services {
    padding-top: var(--grid);
}
.services-half>.vc_column-inner>.wpb_wrapper {
    display: flex;
    gap: 5vw;
    align-items: flex-end;
}
.services-half>.vc_column-inner>.wpb_wrapper>div:first-child {
	width:55%;
}
.services-half>.vc_column-inner>.wpb_wrapper>div:last-child {
	width:45%;
}
.services-half>.vc_column-inner>.wpb_wrapper img {
    padding-top: 4vw;
}
.services p {
    padding-top:10vw;
}
.services .darkBg *{
    color: white;
}
.services-action h2 {
    padding-bottom: var(--section-sm);
}
.services-action img {
    width: 50%;
}
.services-action .wpb_single_image.vc_align_left {
    border-left: 1px solid;
    margin-top: -3vw;
    text-align: center;
}
.services-action .desc p {
    padding-right: 11vw;
}
/*Chiffres*/
.chiffres * {
    text-align:center;
}
.chiffres h2 {
    font-size: 6vw;
}
.chiffres p {
    text-transform: uppercase;
	padding-top:1vw;
}
.chiffres sup {
    top: 0;
    left: -1.25vw;
    font-size: 32%;
    font-weight: 700;
    text-transform: uppercase;
}
.confiance .left h6, .confiance .left p {
    padding-top: var(--section);
}
.confiance .left p {
    padding-right: var(--section-sm);
}
.confiance img {
    margin-bottom: var(--grid);
}
.confiance .right p {
    padding-bottom: 2vw;
}
.confiance .right p:last-child {
    padding-bottom: 0;
}
.confiance .right p strong {
    text-transform: uppercase;
    border-top: 1px solid;
    display: block;
    padding: 0.5vw 0;
}
/*Tabs*/
body .vc_tta.vc_general .vc_tta-tabs-container { /*Keep desktop tabs on - disable mobile*/
    display: block!important;
}
body .vc_tta.vc_tta-tabs .vc_tta-panel-heading { /*Keep desktop tabs on - disable mobile*/
	display: none!important;
}
body .vc_tta.vc_general {
    margin-top: var(--section-sm);
}
body .vc_tta.vc_general * {
    color: var(--dark);
}
body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top .vc_tta-tab.vc_active>a:after {
    display: none!important;
}
body .vc_tta-color-grey.vc_tta-style-classic.vc_tta-tabs .vc_tta-panels .vc_tta-panel-body, body .vc_tta-controls-align-left.vc_tta-tabs.vc_tta-tabs-position-top:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill) .vc_tta-panels {
    border: 0;
    background: transparent;
    border-radius: 0;
	padding:0;
}
body .vc_tta-panel-body p {
    padding-top: var(--grid);
}
body .vc_tta.vc_tta-spacing-1 .vc_tta-tabs-list, body .vc_tta.vc_tta-spacing-1 .vc_tta-tab, body .vc_tta.vc_tta-style-classic.vc_tta-tabs .vc_tta-panel, body .vc_tta.vc_tta-spacing-1 .vc_tta-panel.vc_active .vc_tta-panel-heading, body .vc_tta.vc_tta-spacing-1 .vc_tta-panel:not(:last-child) .vc_tta-panel-heading, body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top.vc_tta-style-classic .vc_tta-tabs-container {
    margin: 0;
}
body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top.vc_tta-style-classic .vc_tta-tabs-container {
    text-align: right;
}
body .vc_tta.vc_tta-spacing-1 .vc_tta-tabs-list {
    width: fit-content;
    margin-left: auto;
    background: white;
    border-radius: 999px;
    padding: 0.5vw;
    margin-bottom: var(--grid);
    display: flex;
    gap: 0.5vw;
}
body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top .vc_tta-tab>a {
	background: white;
}
body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top .vc_tta-tab.vc_active>a {
	pointer-events:none;
}
.vc_tta-panel-body .col>div {
    max-width: calc(25% - 0.75vw);
}
.vc_tta-panel-body .col i {
    position: absolute;
    top: 1vw;
    right: 1vw;
    background: white;
    border-radius: 999px;
    font-size: 1.85vw;
    font-weight: 300;
    width: 3vw;
    height: 3vw;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transform: rotate(-45deg);
	transition:.3s;
}
.vc_tta-panel-body .col i:hover  {
    background: var(--gold);
    transform: rotate(0deg);
}
/*Filler*/
.filler {
    height: 42vw;
    background-size: cover;
    background-position: center 80%;
    display: flex;
    align-items: center;
    text-align: center;
    position: relative;
	overflow: hidden;
}
.filler:after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 8vw;
  background: var(--dark);
  clip-path: polygon(0 100%, 85% 0, 100% 100%, 0% 100%);
  z-index: 2;
}
.filler h6, .filler h2 {
    color: white;
    padding-bottom: 0;
    font-weight: 400;
    padding-bottom: var(--grid);
}
.filler h6 {
    line-height: 1.4;
}
/*Carrières*/
body .form-section {
    padding-top: 15vw;
}
.form-section h2 {
    padding-bottom: var(--grid);
}
.form>.vc_column-inner>.wpb_wrapper {
    padding: var(--grid);
}
.form p {
    padding-top: 1vw;
    padding-bottom: var(--grid);
    max-width: 85%;
}
/*Gform*/
input:-webkit-autofill,
textarea:-webkit-autofill,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px white inset !important; /* remplace 'white' par ta couleur */
  box-shadow: 0 0 0 1000px white inset !important;
  -webkit-text-fill-color: var(--dark) !important; /* couleur du texte */
  transition: background-color 5000s ease-in-out 0s;
}
.gform-loader, .gform_validation_errors, .gfield_required, .gform_required_legend, .gform_fileupload_rules {
	display:none!important;
}
#gform_2 .gfield_validation_message {
    margin-top: 0.5vw;
    font-size: 0.85vw;
}
#gform_2 label {
    margin-bottom: 0.5vw;
}
#gform_1 input, #gform_2 input:not([type="submit"]), #gform_2 textarea {
    border: 0;
    box-shadow: none;
    outline: none;
    height: 3.5vw;
    font-size: 1.25vw;
    padding: 1vw 2vw;
	border-radius: 2.5vw;
	resize: none;
	transition: .3s;
	letter-spacing: 0.05vw;
	text-transform: uppercase;
	font-weight:500;
}
#gform_1 input {
    border-radius: 999px;
}
#gform_2 input[type="file"] {
    padding: 0;
    font-size: 0.9vw;
    cursor: pointer;
}
#gform_2 .gform_footer {
    justify-content: flex-end;
	margin-top: var(--grid);
}
#gform_2 .gform_fields {
	gap: 1vw;
}
#gform_2 input[type="submit"] {
    background: var(--dark);
    color: white;
    outline: none;
    border: 0;
    width: 100%;
	box-shadow: none!important;
}
#gform_2 input[type="submit"]:hover {
    background: var(--gold);
	color: var(--dark);
}
/*Équipe*/
.team-desc h2 strong {
	color: white;
}
/*Contact*/
body .coordo {
    padding-bottom: var(--grid);
}
.coordo p {
    padding-bottom: 1vw;
	padding-right:2vw;
}
.coordo .last p {
    padding-bottom: 0;
}
.map {
	padding-top:0!important;
}
body .wpb_gmaps_widget .wpb_wrapper {
    background-color: transparent;
    padding: 0;
}
body .wpb_gmaps_widget .wpb_map_wraper iframe {
    border-radius: var(--radius);
    height: 35vw;
}

/*ÉQUIPE*/
.team-list {
    display: flex;
    flex-wrap: wrap;
    gap: 1vw;
    justify-content: flex-start;
	margin-top: var(--section-sm);
}
.team-card {
    flex: 1 1 calc(25% - 1vw);
    box-sizing: border-box;
    max-width: calc(25% - 0.75vw);
    position: relative;
    display: flex;
    flex-direction: column;
    text-align: center;
    overflow: hidden;
    border-radius: var(--radius);
    transition: .3s;
    justify-content: space-between;
    min-height: 36vw;
}
.team-card:not([aria-disabled="true"]):hover {
    box-shadow: 0 0px 15px rgb(19 32 51 / 50%);
}
.team-photo img {
	display: block;
	margin-top:-2.5vw;
}
.team-meta {
    padding: var(--pad-sm);
    padding-bottom: 0;
}
.team-role {
    padding-top: 0.5vw;
    line-height: 1.1;
    padding-right: 1vw;
}


/*SINGLE ÉQUIPE - EMPLOYÉ*/
.employe-single .emp-row--top {
    display: flex;
    justify-content: space-between;
    padding-bottom: 0;
}
.emp-col--left {
	justify-content: flex-end;
    align-items: flex-start;
    flex-direction: column;
}
.employe-single .emp-col {
	width:50%;
}
.employe-single .emp-poste {
    max-width: 50%;
    padding-top: 1vw;
}
.employe-single .emp-citation {
    padding-bottom: var(--grid);
    padding-top: 10vw;
    max-width: 54%;
}
.employe-single .emp-portrait {
    max-width: 80%;
    margin: 0 auto;
}
.employe-single .emp-portrait__img {
    display: block;
}
.employe-single .emp-bio p {
    max-width: 41%;
}
.employe-single .emp-actions {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 1vw;
}
.employe-single .social-icons {
    display: flex;
    gap: 0.5vw;
}
.employe-single .social-icons a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3vw;
    height: 3vw;
    border-radius: 999px;
    transition: .3s;
    background: white;
    font-size: 1.75vw;
}
.employe-single .social-icons a:hover {
    background: var(--dark);
	color: white;
}
.employe-single .social-icons .disabled {
    opacity: .4;
    pointer-events: none;
}
.emp-bio {
    padding-bottom: 15vw;
}
.employe-single .emp-join {
    font-weight: 600;
}


/*PREFOOTER*/
.prefooter-inner {
    display: flex;
    justify-content: space-between;
    gap: 5vw;
    align-items: center;
}
.prefooter-inner>div{
    width: 50%;
}
.prefooter small {
    color: white;
    padding-top: 1vw;
}
#gform_1 {
    display: flex;
    position: relative;
}
#gform_1 .gform_body {
    width:100%;
}
#gform_1 input {
    padding-right: 14vw;
}
#gform_1 .gform_footer {
    margin: 0;
    position: absolute;
    right: 0;
}
#gform_1 .gform_footer input {
    margin: 0.5vw;
}


/*FOOTER*/
.site-footer *:not(.socials *):not(.button *):not(.button):not(.footer-bar *) {
    font-size: 1.1vw;
}
body .footer-bar-align-center .footer-bar {
    margin-bottom: 0;
}
body .site-info, body .footer-widgets {
    background-color: var(--blue);
}
body .site-footer .footer-widgets-container .inner-padding {
    padding: 0;
}
body .site-footer .footer-widgets-container .inside-footer-widgets {
    margin-left: 0;
    gap: 5vw;
}
body .site-footer p {
    padding-bottom: 1vw;
}
body .site-footer p:last-child {
    padding-bottom: 0;
}
body .footer-widgets .widget {
    margin-bottom: 2vw;
}
.footer-widget-1, .footer-widget-3 {
    max-width: 20vw;
}
.footer-widget-2 * {
    text-align:center;
}
.site-footer .menu a {
    text-transform: uppercase;
}
.site-footer .menu a:hover {
    color:white;
}
.site-footer .menu li {
    padding-bottom: 0.75vw;
	font-weight: 600;
}
.site-footer .menu li:last-child {
    padding-bottom: 0;
}
.site-footer p a:hover {
	color: white;
}
.site-footer a.button {
    background: var(--dark);
	color: white;
}
.site-footer a.button:hover {
    background: white;
	color: var(--dark);
}
.socials a {
    font-size: 1.5vw;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50px;
}
.socials a:hover {
    color: white;
}
body .inside-site-info {
    display: block;
    padding-top: var(--section);
    padding-bottom: var(--grid);
}
body .inside-site-info img {
    width: 5vw;
    margin-bottom: 1vw;
}
.footer-widget-3 a:not(.widget_media_image a):after {
    content: "\f35d";
    font-family: "Font Awesome 6 Pro";
    font-weight: 600;
    display: inline-block;
    margin-left: 0.5vw;
    font-size: 0.75em;
    vertical-align: middle;
    top: -0.075vw;
    position: relative;
}
.footer-widget-3 .widget_media_image {
	display:inline-block;
}
.footer-widget-3 #media_image-3 {
    margin-right: 2vw;
    margin-bottom: 0;
}
.footer-widget-3 .widget_media_image img {
	max-width: 100% !important;
	width: auto !important;
	max-width: none !important;
	object-fit: contain !important;
	vertical-align: middle;
    max-height: 3vw!important;
	height:3vw!important;
}

/******************************/
/******************************/
/*RESPONSIVE*/
/******************************/
/******************************/


/*1366px*/
@media only screen and (max-width: 1366px) {
.main-navigation .main-nav ul li a, .menu .portfolio a, .menu .lang a {
    font-size: 1.1vw;
}
.site-footer *:not(.socials *):not(.button *):not(.button):not(.footer-bar *) {
    font-size: 1.15vw;
}
}


/* Tablette iPad 1024 landscape + Mobiles landscape */
@media only screen and ((width: 1024px) and (orientation: landscape)),
       only screen and (max-width: 920px) and (orientation: landscape) {
.mob_menu, .mobmenu-panel, .mobmenu, .mobmenu-cart-panel,
.mobmenu-footer-menu-holder, .mobmenu-right-panel, .mobmenu-left-panel {
	display: none !important;
}
body .main-navigation, .main-navigation ul {
	display: flex !important;
}
}


/*1024px*/
@media only screen and (max-width: 1024px) and (orientation: portrait) {
:root {
    --radius: 2vw;
    --grid: 5vw;
    --section: 10vw;
    --section-sm: 7.5vw;
    --pad-sm: 3vw 2vw 5vw;
}
body, p {
    font-size: 2.5vw;
}
.roboto p, #gform_2 label {
    font-size: 2.375vw;
}
h1, h2 {
    font-size: 8.5vw;
}
h3 {
    font-size: 5.5vw;
}
h4 {
    font-size: 4vw;
}
h5, body .vc_toggle h4 {
    font-size: 3.75vw;
}
h6 {
    font-size: 2.75vw;
	padding-bottom: 1.5vw;
}
small {
    font-size: 2vw;
}
.alignCenter, .center {
    text-align: left;
}
body .site-header .header-widget { /*hide header top*/
	display: none !important;
}
body.scroll-up .inside-header {
    opacity: 0;
    transform: translateY(-9vw);
}
body.scroll-up .site-header, body.scrolled .site-header {
    height: 0;
}
body .vc_col-sm-9, body .vc_col-sm-8, body .vc_col-sm-6, body .vc_col-sm-4, body .vc_col-sm-3 {
	width: 100%;
	float:left;
}
body .vc_btn3-container.vc_btn3-center, body .vc_btn3-container.vc_btn3-left {
    text-align: left;
}
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, #gform_1 .gform_footer input, #gform_2 .gform_footer input, #gform_3 .gform_footer input, body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top .vc_tta-tab>a, body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top .vc_tta-tab.vc_active>a, body .sm .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern{
    min-height: 5vw;
    font-size: 2.25vw;
    letter-spacing: 0.1vw;
    padding: 0 4vw;
    gap: 1vw;
    height: 5vw;
}
body .wpb_single_image.vc_align_left {
    text-align: left;
}
.hero-section .wpb_single_image img, .sm figure img, .home .services-action img {
	width: 50%;
}
.page-id-76 .hero-section .wpb_single_image img { /*Notre équipe*/
	width: 45%;
}
.site-header .header-image, body .rightmtop img {
    width: 35vw;
}
.site-header, body .inside-header, .scrolled .nav-align-center .inside-navigation, .nav-float-right #site-navigation, body .mob-menu-header-holder, body .mobmenul-container, body .mobmenur-container {
    height: 15vw;
}
.hero-section {
	flex-direction: column-reverse;
	justify-content: flex-start;
}
.hero-section h2 {
    padding-bottom: 0;
	padding-top:0;
}
body:not(.home) .hero-section p {
	padding-top: 3vw;
}
.hero-section figure img {
    padding-bottom: var(--grid);
}
.home .hero-section h2 {
	padding-bottom: 12vw;
}
body .hero-copyright {
    bottom: var(--grid);
}
.hero-copyright .wpb_text_column .wpb_wrapper {
    align-items: flex-start;
    flex-direction: column;
}
.hero-copyright .wpb_text_column .wpb_wrapper p {
    font-size: 1.5vw;
}
.home-approche .vc_col-sm-6 {
	padding-bottom: var(--grid);
}
.home-approche .vc_col-sm-6:last-child {
	padding-bottom:0;
}
.home-approche-box {
    gap: var(--grid);
    flex-direction: column;
}
.home-approche-box h6 {
    padding-top: 1.5vw;
}
.home-approche-box .vc_col-sm-4 {
	width: 100%;
	float: left;
}
.home-extra .darkBg h4 {
    padding-bottom: 0;
}
.home-filler.filler, .filler {
	height: 100vw;
    background-position: center;
    background-size: cover;
}
.filler:after {
    height: 16vw;
    clip-path: polygon(0 100%, 80% 0, 100% 100%, 0% 100%);
}
.confiance .left p {
    padding-right: 0;
    padding-bottom: var(--grid);
}
.confiance .right p strong {
    padding: 1vw 0;
}
.services-action .wpb_single_image.vc_align_left {
    border-left: 0;
    margin-top: 0;
    text-align: left;
}
.services-action h2 {
    padding-bottom: var(--grid);
}
.home .services-action img {
    padding: 0;
}
#carousel .slick-slide {
    gap: 2.5vw;
}
body .slick-prev, body .slick-next, body .slick-prev:before, body .slick-next:before {
    width: 8vw;
    height: 8vw;
}
body .slick-prev:before, body .slick-next:before {
    font-size: 4.25vw;
}
body .slick-next {
    right: -4vw;
}
body .slick-prev {
    left: -4vw;
}
.col {
    gap: 2.5vw;
    flex-direction: column;
}
.home-extra .col.last {
    margin-top: 2.5vw;
}
.home-extra.col>div, .home-extra.col>div.last {
    width: 100%;
}
.home-extra .col.last>div {
    padding: 4vw 2vw;
}
.home-extra h4 {
    padding-right:0;
}
.home-extra h4 br {
    display:none;
}
.home-extra p img {
    width: 20%;
}
.home-extra p {
    gap: var(--grid);
	padding-top: 3.5vw;
}
.home-extra .wpb_single_image .vc_figure {
    padding-top: var(--grid);
}
.home-extra.col>div.last .vc_btn3-container {
    bottom: 5vw;
	text-align:center!important;
}
.home-extra.col>div, .home-extra .col>div {
    padding-bottom: 5vw;
}
.home-extra.col>div.first .vc_btn3-container {
	padding-top: var(--section-sm);
}
.home-extra .vc_column-inner>.wpb_wrapper {
    height: auto;
}
.socials a, body .mobmenu-content li .socials a {
    font-size: 4vw;
}
.prefooter-inner {
    gap: var(--grid);
    align-items: flex-start;
    flex-direction: column;
}
.prefooter-inner>div {
    width: 100%;
}
#gform_1 input {
    padding-right: 25vw;
}
#gform_1 .gform_footer input {
    margin: 1vw;
}
#gform_1 input, #gform_2 input:not([type="submit"]), #gform_2 textarea {
    height: 7vw;
    font-size: 2.25vw;
    padding: 1.5vw 3vw;
    letter-spacing: 0.1vw;
}
.site-footer *:not(.socials *):not(.button *):not(.button):not(.footer-bar *) {
	font-size: 2.25vw;
}
.inside-footer-widgets {
    flex-direction: column;
    align-items: flex-start;
}
.site-footer .menu li {
    padding-bottom: 1.5vw;
}
.footer-widget-2 * {
    text-align: left;
}
body .site-footer p {
    padding-bottom: 2vw;
}
body .site-footer .footer-widgets-container .inside-footer-widgets {
    gap: var(--section-sm);
}
.site-footer a.button:hover {
    margin-top: 1vw;
}
.footer-widget-1, .footer-widget-3 {
    max-width: 65%;
}
.footer-widget-3 .widget_media_image img {
    max-height: 7vw !important;
	height:7vw!important;
    margin-right: 3vw;
}
.inside-site-info {
    align-items: flex-start;
    margin: 0;
    text-align: left;
}
body .inside-site-info img {
    width: 10vw;
    margin-bottom: 2vw;
}
.cta {
    padding: 1.5vw;
    padding-right: 2vw;
	margin:0;
    margin-top: var(--grid);
    gap: 1.75vw;
}
.cta img {
    width: 6vw;
}
.valeurs.col>div {
    padding-top: 0;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_icon:before {
    height: 3.5vw;
    width: 3.5vw;
    font-size: 2.25vw;
}
.engagement p {
    max-width: 100%;
    margin: 3vw auto 0;
}
.engagement p br {
    display:none;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_content {
    padding-bottom: 4vw;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_title {
    padding: 2vw 0;
}
.valeurs.col>div:last-child p {
    padding-bottom: 2vw;
}
.services-hero p {
    padding-right: 10vw;
    padding-top: 3vw;
}
.services p {
    padding-top: var(--section-sm);
}
.services-half>.vc_column-inner>.wpb_wrapper img {
    padding-top: 7vw;
    max-width: 83%;
}
.services-half>.vc_column-inner>.wpb_wrapper>div:last-child {
    width: 25%;
    text-align: right;
}
.services-half>.vc_column-inner>.wpb_wrapper>div:first-child {
    width: 75%;
}
.filler h6 {
	font-size: 3.85vw;
	padding-left: var(--grid);
	padding-right: var(--grid);
}
.filler h6 br {
    display:none;
}
.services-action .desc p {
    padding-right: 0;
    padding-bottom: var(--grid);
}
body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top.vc_tta-style-classic .vc_tta-tabs-container {
    text-align: left;
}
body .vc_tta.vc_tta-spacing-1 .vc_tta-tabs-list {
    margin-left: 0;
    padding: 1vw;
    gap: 1vw;
}
.vc_tta-panel-body .col>div {
    max-width: 100%;
}
body .vc_tta.vc_general h6 {
    padding:0;
}
body .vc_tta.vc_general h6 br {
    display:none;
}
.vc_tta-panel-body .col i {
    top: 2vw;
    right: 2vw;
    font-size: 2.85vw;
    width: 5vw;
    height: 5vw;
}
.confiance .left h6 {
    padding-top: 0;
}
 .confiance .left p {
    padding-top: var(--grid);
}
.chiffres h2 {
    font-size: 12vw;
}
.chiffres sup {
    left: -2.25vw;
}
.chiffres * {
    text-align: left;
}
.chiffres .vc_col-sm-6 {
	padding-bottom: var(--grid);
}
.chiffres .vc_col-sm-6:last-child {
	padding-bottom: 0;
}
.coordo p {
    padding-bottom: 2vw;
    padding-right: 0;
}
body .wpb_gmaps_widget .wpb_map_wraper iframe {
    height: 50vw;
}
.team-desc h2 br {
    display:none;
}
.team-list {
    gap: 2vw;
}
.team-card {
    flex: 1 1 calc(50% - 1vw);
    max-width: calc(50% - 0.75vw);
}
.employe-single .emp-col, .employe-single .emp-row--top {
    height: auto!important;
}
.employe-single .emp-col {
    width: 100%;
    padding-top: var(--section-sm);
}
.employe-single .emp-col--left {
    padding-bottom: var(--section-sm);
}
.employe-single .emp-citation {
    padding-bottom: 0;
    padding-top: 10vw;
    max-width: 54%;
}
.employe-single .emp-bio p {
    max-width: 100%;
}
.employe-single .emp-actions {
    gap: 2vw;
}
.employe-single .social-icons a {
    width: 6vw;
    height: 6vw;
    font-size: 3.75vw;
}
body .home-extra .dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
    zoom: 1.3;
}
.confiance .right p {
    padding-bottom: 3.5vw;
}
body .vc_tta.vc_general {
    margin-top: var(--section);
}
}


/*768px*/
@media only screen and (max-width: 768px) {
body .inside-footer-widgets>div:not(:last-child) {
	margin-bottom: 0;
}
.coordo .last p {
    padding-bottom: 2vw;
}
body .site-header .header-widget {
	margin-top: 0;
}
body .has-inline-mobile-toggle .header-widget, body .has-inline-mobile-toggle #site-navigation {
	flex-basis: auto;
}
}


/*641px*/
@media only screen and (max-width: 641px) {
:root {
    --radius: 3.5vw;
    --grid: 6vw;
    --section: 14vw;
    --section-sm: 9vw;
    --pad-sm: 4vw 3vw 6vw;
}
.hero-section, .fullHeight {
    height: 100vh!important;
    height: calc(var(--vh, 1vh) * 100)!important;
}
body, p {
	font-size: 3.95vw;
	line-height: 1.45;
}
.roboto p, #gform_2 label {
    font-size: 3.85vw;
}
small {
	font-size: 3.25vw;
}
.rightmbottom small {
	font-size: 2.85vw;
}
.hero-copyright .wpb_text_column .wpb_wrapper p {
	font-size: 2.75vw;
}
h1, h2 {
	font-size: 9.5vw;
}
h3 {
	font-size: 7vw;
}
h4 {
	font-size: 6vw;
}
h5, body .vc_toggle h4 {
	font-size: 5.25vw;
}
h6 {
	font-size: 4.25vw;
	padding-bottom: 2vw;
}
body .slick-prev:before, body .slick-next:before {
	font-size: 5.25vw;
}
body .slick-prev {
	left: -5vw;
}
body .slick-next {
	right: -5vw;
}
#carousel .text span {
    max-width: 75%;
}
#carousel .text img {
    width: 20%;
}
body .slick-prev, body .slick-next, body .slick-prev:before, body .slick-next:before {
	width: 10vw;
	height: 10vw;
}
.home-filler.filler, .filler {
	height: 120vw;
}
.filler h6 br, .filler h2 br, .home-approche h2 br, .engagement h3 br, .services-hero h2 br, .besoins h2 br {
    display:none;
}
.confiance .right p {
	padding-bottom: 4.5vw;
}
.confiance .right p strong {
	padding: 2vw 0;
}
.home-approche-box h6 {
	padding-top: 2vw;
}
.prefooter small {
    padding-top: 2vw;
	max-width: 70%;
}
.hero-section .wpb_single_image img, .sm figure img, .home .services-action img {
	width: 65%;
}
.employe-single .emp-poste {
    max-width: 100%;
}
.site-header, body .inside-header, .scrolled .nav-align-center .inside-navigation, .nav-float-right #site-navigation, body .mob-menu-header-holder, body .mobmenul-container, body .mobmenur-container {
	height: 20vw;
}
.site-header .header-image, body .rightmtop img {
	width: 50vw;
}
body .mob-menu-header-holder, body .mobmenur-container i, body .mob-icon-menu:before, body .mob-icon-cancel-1:before {
    width: 12vw;
}
body .mobmenur-container i, body .mob-icon-menu:before, body .mob-icon-cancel-1:before {
    height: 12vw;
    line-height: 12vw;
}
body .mob-icon-menu:before, body .mob-icon-cancel-1:before {
	top: 0;
	font-size: 7.25vw;
}
#gform_1 input, #gform_2 input:not([type="submit"]), #gform_2 textarea {
	height: 10vw;
	font-size: 3.5vw;
	padding: 2vw 4vw;
	letter-spacing: 0.2vw;
}
#gform_1 input {
	padding-right: 38vw;
}
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, #gform_1 .gform_footer input, #gform_2 .gform_footer input, #gform_3 .gform_footer input, body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top .vc_tta-tab>a, body .vc_tta-tabs:not([class*=vc_tta-gap]):not(.vc_tta-o-no-fill).vc_tta-tabs-position-top .vc_tta-tab.vc_active>a, body .sm .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
	min-height: 7.5vw;
	font-size: 3.7vw;
	letter-spacing: 0.2vw;
	padding: 0 5vw;
	gap: 1vw;
	height: 7.5vw;
}
#gform_1 .gform_footer input {
	margin: 1.25vw;
}
.site-footer *:not(.socials *):not(.button *):not(.button):not(.footer-bar *) {
	font-size: 3.7vw;
}
.footer-widget-1, .footer-widget-3 {
	max-width: 90%;
}
body .footer-widgets .widget {
    margin-bottom: 4vw;
}
.site-footer .menu li {
	padding-bottom: 2vw;
}
body .site-footer p {
	padding-bottom: 3vw;
}
.footer-widget-3 .widget_media_image img {
	max-height: 9vw !important;
	height: 9vw !important;
	margin-right: 5vw;
	margin-top: 1vw;
}
body .inside-site-info img {
	width: 15vw;
	margin-bottom: 3vw;
}
body #mobmenuright li a {
	font-size: 5.5vw;
	margin: 5vw auto 0;
}
body #mobmenuright li.portfolio a {
    font-size: 4.85vw;
    gap: 2vw;
}
body .mobmenu-content li a {
    font-size: 4.65vw;
}
body .mobmenu-content p {
    padding-top: 5vw;
}
.socials a, body .mobmenu-content li .socials a {
	font-size: 5.5vw;
}
.employe-single .social-icons {
    gap: 1.5vw;
}
.employe-single .social-icons a {
	width: 10vw;
	height: 10vw;
	font-size: 5.5vw;
}
.employe-single .emp-actions {
	gap: 3vw;
}
.home-desc h6 {
    max-width: 100%;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_title {
	padding: 3vw 0;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_icon:before {
    height: 7vw;
	width: 7vw;
	font-size: 4vw;
	margin-top: 0.5vw;
}
.valeurs.col>div:last-child h3 {
    padding-bottom: 3.5vw;
}
.valeurs.col>div:last-child p, .coordo p, .coordo .last p {
	padding-bottom: 3vw;
}
.decouvre h3 {
    padding-right: 0;
}
.cta img {
	width: 9vw;
}
.cta {
	padding: 2.5vw;
	padding-right: 3vw;
	gap: 2.5vw;
	font-size: 4.5vw;
}
.services p {
	padding-top: var(--grid);
}
.filler h6 {
	font-size: 5vw;
}
.chiffres h2 {
	font-size: 16vw;
}
.employe-single .emp-citation {
	padding-bottom: 0;
	padding-top: 12vw;
	max-width: 85%;
}
.employe-single .emp-col {
	height: auto !important;
}
body .wpb_gmaps_widget .wpb_map_wraper iframe {
	height: 80vw;
}
body .home-extra .dark .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern {
	height: 9vw;
}
.home-extra p {
	gap: 3.5vw;
	padding-top: 3.5vw;
    flex-direction: column;
}
.home-extra p img {
	width: 25vw;
}
.vc_tta-panel-body .col i {
	top: 3vw;
	right: 3vw;
	font-size: 4.5vw;
	width: 8vw;
	height: 8vw;
}
body .vc_tta.vc_general h6 {
	padding: 0;
	padding-right: 10vw;
}
}