/*
 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: #FFF9E9;
    --gold: #D8B452;
	--accent: #D8B452;
	--brown: #1C1000;
	--blue: #00134d;
	--size-sm: 16px;
	--size: 25px;
	--radius: 20px;
	--grid: 7vw;
	--gridLg: 12vw;
	--section: 130px;
	--section-sm: 100px;
}
.whiteBg {
	background: white;
}
.beigeBg {
	background: var(--beige);
}
.goldBg {
	background: var(--gold);
}
.brownBg {
	background: var(--brown);
}
.blueBg {
	background: var(--blue);
}
.blueBg *, .whiteColor * {
	color: white;
}


/*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;
}
}


/*FONTS*/
@font-face {
  font-family: 'Albert Sans';
  src: url('/wp-content/uploads/fonts/AlbertSans.ttf') format('truetype');
  font-display: swap;
}
@font-face {
  font-family: 'Century Gothic';
  src: url('/wp-content/uploads/fonts/CenturyGothic.ttf') format('truetype');
  font-display: swap;
  font-weight: 400;
}
@font-face {
  font-family: 'Century Gothic';
  src: url('/wp-content/uploads/fonts/CenturyGothic_bold.ttf') format('truetype');
  font-display: swap;
  font-weight: 700;
}
html *, .mobmenu-content * {
	font-family: 'Albert Sans'!important;
}
h3, h6, .button, .main-navigation .main-nav ul li a, .contact-item a, .lang-switch, a.button, .vc_btn3, .site-footer ul li a, body .cky-btn, body #mobmenuright li a, body .vc_tta.vc_tta-tabs::after {
    font-family: 'Century Gothic'!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: 9999999;
    display: flex;
    background: var(--blue);
    -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: center;
    overflow-x: hidden !important;
    padding: 0;
}
.splash-anim {
    opacity: 0;
    animation: fadein 1s ease both;
}
.splash-anim img.logo {
    width: 120px;
}
body:not(.home):not(.home-en) .splash-anim {
    display: none;
}


/*COOKIES*/
body .cky-revisit-bottom-left:hover::before, body .cky-revisit-bottom-left:hover::after {
    display:none;
}
body .cky-consent-container {
    width: 375px;
}
body .cky-box-bottom-right {
    bottom: 20px;
    right: 20px;
}
body .cky-notice .cky-title {
    margin:0;
}
body .cky-notice-btn-wrapper {
    justify-content: center;
    align-items: center;
}
body .cky-notice-btn-wrapper .cky-btn, body .cky-prefrence-btn-wrapper .cky-btn {
    border-radius: 999px;
    text-transform: uppercase;
    padding: 5px 20px;
    font-weight: 700;
    color: var(--blue) !important;
    background-color: white !important;
    border-color: white !important;
    border-width: 1px;
    font-size: 12px;
    letter-spacing: 1px;
    flex: none;
}
body .cky-notice-des p {
    color: white!important;
}
body .cky-notice-btn-wrapper .cky-btn-reject, body .cky-notice-btn-wrapper .cky-btn-customize {
    color: white !important;
    border-color: white !important;
    background: transparent !important;
}
body .cky-consent-container .cky-consent-bar {
    background: var(--blue)!important;
    border: 0;
    box-shadow: none;
    text-align: center;
    border-radius: var(--radius);
}
body div[data-cky-tag="powered-by"] {
	display:none!important;
}
body .cky-revisit-bottom-left {
    background: var(--blue) !important;
    bottom: 20px;
    left: 20px;
}
@media only screen and (max-width: 641px) {
body .cky-consent-container {
    width: 100%;
}
body .cky-box-bottom-right {
	left:20px;
	width:calc(100% - 40px);
}
}
@media only screen and (max-width: 440px) {
body .cky-notice-des {
    max-height: none;
	overflow-y: hidden;
}
body .cky-notice-btn-wrapper {
	flex-direction: row-reverse;
}
body .cky-btn {
	width: fit-content;
}
}


/*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(--blue);
	overflow-x:hidden!important;
}
a, button, input, strong {
    transition: .3s;
}
a, a:focus, a:active {
    color: inherit;
    text-decoration: none;
}
a:hover {
    color: inherit;
}
p a:hover {
    text-decoration:none;
}
.hero-section::before, .hero-section::after {
	display:none!important;
}
.hero-section, .fullHeight {
    height: 100vh;
}
.flex {
    display: flex;
    gap: 75px;
}
.flex::before, .flex::after {
	display:none!important;
}
.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);
}
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 .wrapLg {
    padding-top: var(--section);
	padding-bottom: var(--section);
	padding-left: var(--gridLg);
	padding-right: var(--gridLg);
}
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 .grid-narrow, body .grid-narrow-sm {
    max-width: 605px;
	margin: 0 auto;
	padding-left:0;
	padding-right:0;
}
body .grid-narrow-sm {
    max-width: 415px;
}
body .vc_column_container>.vc_column-inner {
    padding-left: 0;
	padding-right: 0;
}
.col:before, .col:after {
    display:none!important;
}
.col {
    display:flex;
	gap: 20px;
}
.col>div {
    padding: 40px;
    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-id-770):not(.page-id-779) .inside-article .entry-header {
    display: none;
}
.inside-article .entry-header .entry-title {
    margin-bottom: 0;
    padding-top: 200px;
    padding-left: var(--grid);
}
.politique * {
    font-size: var(--size-sm);
}
.politique ol li {
    font-size: var(--size);
}
.politique ol {
    margin: 30px 0 15px 27px;
}
.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);
}
body .vc_btn3-container.vc_btn3-center a {
    margin: 0 auto!important;
}
body, p {
    font-size: var(--size);
	line-height: 1.25;
    font-weight: 400;
}
.sm p, small {
    font-size: var(--size-sm);
}
h1, h2, h3, h4, h5, h6 {
    line-height: 1.15;
    font-weight: 400;
    text-transform: uppercase;
}
h1, h2 {
    font-size: 70px;
    line-height: 1;
}
h1 em, h2 em {
    color: var(--gold)!important;
	font-style:normal;
}
h3 {
    font-size: 42px;
	font-weight:700;
}
h4 {
    font-size: 35px;
	padding-bottom: 20px;
}
h5, .site-footer .widget-title {
    font-size: 25px;
    line-height: 1.2;
}
h6 {
    font-size: 18px;
    padding-bottom: 30px;
    font-weight: 700;
    letter-spacing: 0;
}
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;
}
.wpb_single_image img {
    min-width: 20px;
}


/*TRADUCTION*/
.header-widget .custom-html-widget {
	display:flex;
}
.lang-switch {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: white !important;
    margin-left: 15px;
    position: relative;
    top: -2px;
}
body[data-color="dark"] .site-header .lang-switch {
    color: var(--blue) !important;
}
body[data-color="dark"].scroll-up .site-header .lang-switch {
    color: white !important;
}
.lang-switch:hover, body[data-color="dark"] .lang-switch:hover {
    color: var(--gold)!important;
}
body .mobmenu-content li .lang-switch {
    font-size: 25px;
    margin: 80px 0 0;
    font-weight: 700;
}


/*LOGO*/
.logo-subtitle {
    display: block;
    color: white;
    padding-top: 4px;
    font-weight: 400;
    text-align: right;
    font-size: 10px;
}
.site-footer .logo-subtitle {
    padding-top: 0;
	font-size: clamp(10px, 0.78vw, 16px);
}


/*HEADER*/
body[data-color="dark"]:not(.scroll-up) .site-header li:not(.header-widget):not(.header-widget li):not(:hover):not(.beigeBg):not(.contact-item) > a {
    color: var(--blue) !important;
}
.site-header, body .inside-header, .scrolled .nav-align-center .inside-navigation, .nav-float-right #site-navigation {
    height: 90px;
}
body .site-header {
    position: fixed;
    background: transparent;
    top: 0;
    width: 100%;
    z-index: 100;
}
body .inside-header {
    width: 100%;
    padding: 0 20px;
    transition: all 0.5s cubic-bezier(.24, .11, .11, 1);
    transform: translateY(0);
    opacity: 1;
}
.nav-float-right #site-navigation {
    display: flex;
}
.nav-float-right .header-widget {
    margin-left: 0;
    top: 0;
    right: 0;
    transition: all 0.5s cubic-bezier(.24, .11, .11, 1);
    transform: translateY(0);
    opacity: 1;
    display: flex;
}
/*Scroll-down effect*/
body.scroll-down .inside-header {
	opacity:0;
    transform: translateY(-173px);
}
/*Scroll-up effect*/
body.scroll-up[data-color="dark"] .site-header *:not(.header-widget):not(.header-widget *):not(ul li[class*="current-menu-"] > a):not(ul li.beigeBg > a):not(ul li.client:hover > a):not(.lang-switch) {
    color: white!important;
}
body.scroll-up .site-header {
    border-bottom: 0;
    border-radius: 0 0 19px 19px;
}
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:90px;
}
body.scrolled .inside-header {
    border-bottom: 0 !important;
    background: var(--blue);
    border-radius: 0;
}
/***/
body .main-navigation, body .main-navigation ul ul {
    background-color: transparent;
}
.main-navigation .main-nav ul {
    display:flex;
	gap:10px;
}
.main-navigation li, .contact-item {
    border-radius: 99px;
}
.main-navigation li.hidden, .site-footer .menu li.hidden, body .mobmenu-right-panel li.hidden {
	display:none;
}
.main-navigation .main-nav ul li a, .contact-item 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 {
    padding: 0;
    list-style: none;
    margin: 0;
    line-height: 1;
    width:fit-content;
	font-size: 12px;
    font-weight: 700;
    border: 1px solid;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 0 25px;
    border-radius: 99px;
    text-transform: uppercase;
    letter-spacing: 1px;
	color:white!important;
	padding-top:1px;
	background: transparent;
}
a.button, a.button:focus, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:focus, body[data-color="dark"]:not(.scroll-up) .main-navigation .main-nav ul li.beigeBg a, body[data-color="dark"]:not(.scroll-up) .main-navigation .main-nav ul li.client:hover a {
    background: var(--blue);
	border-color: var(--blue);
	color: white!important;
}
a.button:hover, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover, body[data-color="dark"]:not(.scroll-up) .main-navigation .main-nav ul li.services a {
    background: transparent;
	border-color: var(--blue);
	color: var(--blue)!important;
}
body .contourWhite .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, body .white .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover {
    background: transparent;
	border-color: white;
	color: white!important;
}
body .white .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, body .contourWhite .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover {
    background: white;
	border-color: white;
	color: var(--blue)!important;
}
.main-navigation .main-nav ul li.beigeBg a {
    border-color: var(--beige);
	color: var(--blue)!important;
}
.main-navigation .main-nav ul li.goldBg a, .contact-item a {
    border-color: var(--gold);
}
.main-navigation .main-nav ul li.client:hover a, body .beigeBtn .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, body[data-color="dark"]:not(.scroll-up).page-id-76 .main-navigation .main-nav ul li.client:hover a, body[data-color="dark"]:not(.scroll-up).page-id-549 .main-navigation .main-nav ul li.client:hover a {
    background: var(--beige);
	border-color: var(--beige);
	color: var(--blue)!important;
}
.main-navigation .main-nav ul li.approche:hover a {
    color: white!important;
	background: var(--brown);
	border-color: var(--brown);
}
body .goldBtn .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern, .main-navigation .main-nav ul li.services:hover a, body[data-color="dark"] .main-navigation .main-nav ul li.services a:hover  {
    background: var(--gold);
	border-color: var(--gold);
	color: white!important;
}
.main-navigation .main-nav ul li.beigeBg:hover a, body .goldBtn .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover, body .beigeBtn .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover {
    background: white;
	border-color: white;
	color: var(--blue)!important;
}
.main-navigation li.arrow > a {
    display: flex;
    align-items: center;
    gap: 6px;
}
.main-navigation li.arrow .menu-arrow-icon {
    width: 9px;
    height: 9px;
    display: block;
    flex: 0 0 auto;
}
.main-navigation li.arrow .menu-arrow-icon {
    transition: transform .3s ease;
	transform: rotate(0deg);
}
.main-navigation li.arrow > a:hover .menu-arrow-icon {
    transform: rotate(90deg);
}
.contact-item {
    position: fixed !important;
    right: 20px;
    bottom: 20px;
    z-index: 999;
}
.contact-item--outside-header {
    list-style: none !important;
    margin: 0;
    padding: 0;
}
.contact-item--outside-header::marker {
    content: none;
}
.contact-item--outside-header a {
    width: 45px;
    height: 45px;
    padding: 0 !important;
    gap: 0;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
	color: white;
}
.contact-item--outside-header .floating-contact-logo {
    width: 23px;
    height: 23px;
    display: block;
    flex: 0 0 auto;
    margin: 0;
}
.contact-item--outside-header .floating-contact-label {
    max-width: 0;
    opacity: 0;
    overflow: hidden;
    white-space: nowrap;
    transition: max-width .3s ease, opacity .2s ease, margin-left .3s ease;
}
.contact-item--outside-header a:hover {
    width: 150px;
    padding: 0 25px 0 15px !important;
}
.contact-item--outside-header a:hover .floating-contact-label {
    max-width: 90px;
    opacity: 1;
    margin-left: 15px;
}
.site-header .header-image, body .rightmtop img {
    width: 210px;
    padding-right: 0;
}
html[lang="en-CA"] .contact-item--outside-header a:hover {
    width: 168px;
}
html[lang="en-CA"] .contact-item--outside-header a:hover .floating-contact-label {
    max-width: 108px;
}


/*FULLSCREEN MENU/HEADER*/
body.show-nav-right .mobmenu-panel.show-panel {
	z-index: 3000000;
}
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(--blue)!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: 72px;
	color: white;
	padding: 0;
	text-align: center;
	font-weight: 400;
	letter-spacing: 4px;
}
body .mobmenu-content li .socials {
    display: flex;
    justify-content: center;
    gap: 38px;
}
body .mob-menu-header-holder {
    top: 20px;
    right: 20px;
    display: block;
    z-index: 9999;
    position: fixed;
    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(--blue);
    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="dark"] .mob-icon-menu::before {
	color: var(--blue);
}
body[data-color="white"] .mob-icon-menu::before {
	color: white;
}
/* FORCE MOBILE MENU ICON ON LIGHT SECTIONS */
body.menu-on-light .mob-icon-menu:before {
    color: var(--blue) !important;
}
body.menu-on-dark .mob-icon-menu:before {
    color: white !important;
}
/* FORCE MOBILE MENU ICON ON FOOTER */
body.menu-on-footer .mob-icon-menu:before {
    color: white !important;
}
body.show-nav-right .mobmenu-overlay {
    background: transparent;
}
.mobmenu-right-panel .mob-cancel-button {
    display: block !important;
}
body .mob-icon-menu:before, body .mob-icon-cancel-1:before  {
	font-weight: 100;
	font-family: "Font Awesome 6 Sharp" !important;
	content: "\f0c9";
	content: "\f7a4";
	position: relative;
	font-size: 28px;
	color: white;
	background: transparent;
	border: 1px solid;
	border-radius: 99px;
	width: auto;
	margin: 0;
	text-align: center;
	opacity: 1;
	transition: .3s;
	top: 0;
	left: 0;
	line-height: 1;
	padding: 0;
	margin: 0;
}
body .mob-icon-cancel-1:before {
	content: "\f00d";
	color: white;
}
body .mobmenur-container i, body .mob-icon-menu:before, body .mob-icon-cancel-1:before {
    height: 55px;
	line-height: 55px;
}
body .mob-menu-header-holder, body .mobmenur-container i, body .mob-icon-menu:before, body .mob-icon-cancel-1:before {
    width: 55px;
}
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: 20px;
    top: 20px;
}
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 a {
    line-height: 1;
    display: block;
    text-decoration: none;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 2px;
    font-size: 25px;
    color: white !important;
    transition: .3s;
    text-align: left;
    margin: 0;
    max-width: 100%;
    position: relative;
    z-index: 999;
    padding: 60px 0;
    border-bottom: 1px solid;
    text-align: center;
}
body #mobmenuright li a:hover {
    color: white!important;
}
body #mobmenuright li a img {
    width: 17px;
    margin-left: 10px;
	transition:.3s;
	transform: rotate(0deg);
}
body #mobmenuright li a:hover img {
    transform: rotate(90deg);
}
body #mobmenuright li:first-child a {
	border-top:1px solid;
	margin-top:40px;
}
body #mobmenuright li.beigeBg a, body #mobmenuright li.goldBg a {
    width: fit-content;
}
body #mobmenuright .contact-item {
    position: relative !important;
    right: auto;
    bottom: auto;
    z-index: 999;
}
body #mobmenuright .beigeBg, body #mobmenuright .contact-item {
    border-radius: 99px;
    width: 75vw;
    max-width: 500px;
    margin: 0 auto;
    margin-top: 40px;
}
body #mobmenuright .beigeBg {
	margin-top: 80px;
}
body #mobmenuright li.beigeBg a, body #mobmenuright li.goldBg a {
    width: 100%;
    padding: 0;
    margin: 0;
    line-height: 1;
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
	border:0;
	border-radius:99px;
}
body #mobmenuright li.beigeBg a, body #mobmenuright li.beigeBg:hover a {
    color: var(--blue)!important;
    background: var(--beige)!important;
}
 body #mobmenuright li.goldBg a, body #mobmenuright li.goldBg:hover a {
    background: var(--gold)!important;
}
body #mobmenuright li.current-menu-item.arrow a {
    color: white !important;
}
body .rightmtop {
	position: fixed;
	top: 17px;
	left: 20px;
	z-index: 999999;
}
body .mobmenu-content {
    margin-top: 0;
    z-index: 1;
    height: 100%;
    overflow: auto;
    display: flex;
    padding: 0;
    align-items: center;
    align-content: center;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    animation: fadeout 1s ease both;
}
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: relative;
}
.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: 58px;
    font-weight: 400;
    font-size: 38px;
    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: 38px;
    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;
}


/*ACCUEIL*/
/*Hero*/
.hero-section {
    display: flex;
    align-items: flex-end;
    padding-bottom: var(--section-sm);
    position: relative;
    background-size: cover;
    background-position: center;
}
.hero-section h2 {
    padding-bottom: 35px;
}
.page-id-784 .hero-section h2 strong {
    font-weight:400;
}
.hero-section p {
    max-width: 600px;
}
.hero-section img {
    width: clamp(150px, 13vw, 225px);
}
.beigeBg.hero-section img {
    width: clamp(150px, 25vw, 400px);
}
/*About*/
.home-about .wpb_single_image {
	text-align:center!important;
	padding: 75px 0;
}
.home-about .wpb_single_image img {
    width: 400px;
    border-radius: var(--radius);
}
.has-logotype, .contact {
    background-size: 120vw;
    background-position: right -10vw;
}
/*Services*/
.home-services .sfl {
	padding: 50px;
}
.home-services .sfl h6 {
    padding-bottom: 20px;
}
.home-services .sfl h6::before {
    content: "";
    background-image: url(/wp-content/uploads/sfl-logotype.svg);
    background-repeat: no-repeat;
    background-size: 11px;
    display: inline-block;
    width: 11px;
    height: 22px;
    position: relative;
    margin-right: 7px;
    margin-bottom: -4px;
}
.sfl .vc_btn3-container {
    position: absolute;
    bottom: 50px;
}
.sfl img {
    width: clamp(125px, 12vw, 200px);
    margin-top: 50px;
}
.home-services .left h6 {
	padding-top: 50px;
}
body .vc_toggle_title {
    display: inline-block;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_icon:before {
    content: "";
    position: absolute;
    inset: 0;
    width: 45px;
    height: 45px;
    margin: auto;
    background-color: transparent;
    background-image: url(/wp-content/uploads/btn-arrow-blue.svg);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 18px;
    border: 1px solid var(--blue);
    border-radius: 999px;
    display: block;
    transition: .3s;
}
body .vc_toggle:hover .vc_toggle_icon:before, body .vc_toggle_default.vc_toggle_active .vc_toggle_icon:before {
    background-color: var(--blue);
    background-image: url(/wp-content/uploads/btn-arrow-white.svg);
    visibility: visible;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_title {
    width: 100%;
    padding: 20px 0;
    display: flex;
    justify-content: space-between;
}
body .vc_toggle {
    border-top: 1px solid;
}
.wpb_wrapper > .vc_toggle:not(.vc_toggle ~ .vc_toggle) {
    margin-top: 35px;
}
.wpb_wrapper > .vc_toggle:not(:has(~ .vc_toggle)) {
    border-bottom: 1px solid;
	margin-bottom: 50px;
}
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;
	margin:0;
    left: auto !important;
    right: 0 !important;
    width: 45px;
	transition: .3s;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_icon::before {
	transform: rotate(0deg);
	transition: .3s;
}
body .vc_toggle_size_md.vc_toggle_default:hover .vc_toggle_icon::before, body .vc_toggle_default.vc_toggle_active .vc_toggle_icon:before {
	transform: rotate(90deg);
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_content {
    padding: 0;
    padding-right: var(--section);
    margin: 0;
    padding-bottom: 20px;
    font-size: var(--size-sm);
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_content p {
	font-size: var(--size-sm);
}
body .vc_toggle {
    margin: 0;
    padding: 0;
}
body .vc_toggle h4 {
    transition: .3s;
    font-size: var(--size);
    text-transform: none;
    padding: 0;
}
/*Tabs*/
body .vc_tta-color-grey.vc_tta-style-classic.vc_tta-tabs .vc_tta-panels {
	position: relative;
}
body .vc_tta-color-grey.vc_tta-style-classic.vc_tta-tabs .vc_tta-panels .vc_tta-panel-body p {
	min-height: var(--tta-max-height, auto);
}
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(--blue);
}
body .vc_tta.vc_general p {
	font-size: var(--size-sm);
}
body .vc_tta-tabs .vc_tta-panels {
    position: relative;
    overflow: hidden;
    transition: height .35s ease;
}
body .vc_tta-tabs .vc_tta-panel {
    position: absolute;
    inset: 0;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .25s ease, visibility .25s ease;
}
body .vc_tta-tabs .vc_tta-panel.vc_active {
    position: relative;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    z-index: 2;
}
body .vc_tta-tabs .vc_tta-panel-body {
    display: block !important;
}
body .vc_tta-tabs .vc_tta-panel-body {
    display: block !important;
    height: auto !important;
    overflow: visible !important;
    transform: none !important;
    transition: none !important;
    padding-top: 50px !important; /* ajuste selon ton espace */
}
body .vc_tta-tabs .vc_tta-panels {
    width: 100%;
}
body .vc_tta-tabs .vc_tta-panel-body .wpb_wrapper > p {
    width: 24%;
    padding: 0;
    text-align: center;
}
body .vc_tta-tabs .vc_tta-panel:nth-child(2) .vc_tta-panel-body .wpb_wrapper > p {
    margin-left: 25%;
}
body .vc_tta-tabs .vc_tta-panel:nth-child(3) .vc_tta-panel-body .wpb_wrapper > p {
    margin-left: 50%;
}
body .vc_tta-tabs .vc_tta-panel:nth-child(4) .vc_tta-panel-body .wpb_wrapper > p {
    margin-left: 75%;
}
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.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.vc_tta-spacing-1 .vc_tta-tabs-list {
    display: flex;
}
body .vc_tta.vc_tta-spacing-1 .vc_tta-tabs-list > li {
    width:25%;
}
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: transparent;
    text-transform: uppercase;
    text-align: center;
    border: 0;
    border-bottom: 2px solid var(--blue) !important;
    opacity: 0.35;
    font-size: clamp(15px, var(--size), 1.5vw);
    padding: 0 0 20px;
	transition: 0.3s;
}
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;
	opacity:1;
}
.vc_tta-panel-body .col>div {
    max-width: calc(25% - 14px);
}
.vc_tta-panel-body .col i {
    position: absolute;
    top: 19px;
    right: 19px;
    background: white;
    border-radius: 999px;
    font-size: 36px;
    font-weight: 300;
    width: 58px;
    height: 58px;
    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);
}
body .vc_tta-container {
    margin-bottom: 0;
}


/*APPROCHE*/
.tabs img {
    width: 100px;
    margin-bottom: 50px;
}
.approche p {
    padding-top: 20px;
}
.approche .vc_col-has-fill > div {
    background-size: cover;
    background-position: center;
}
.reseau img {
    width: 160px;
    padding-bottom: 50px;
}
html[lang="en-CA"] .reseau img {
    width: 180px;
}


/*SFL*/
.sfl-solis {
    max-width: 900px;
    margin: 75px auto 0!important;
	position: relative;
}
.sfl-solis .contour {
    padding: 75px;
}
.sfl-solis img {
    width: 140px;
	margin-bottom: 50px;
}
.sfl-solis .solis-col img {
    width: 200px;
    height: 102px;
}
.sfl-solis .sfl-col {
	position: relative;
	z-index: 2;
}
.sfl-solis .solis-col {
	position: relative;
	z-index: 1;
}
.sfl-solis .solis-col::before {
    content: "";
    position: absolute;
    left: -5px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 25px solid transparent;
    border-bottom: 25px solid transparent;
    border-left: 30px solid white;
    z-index: 10;
}
.sfl-solis .sfl-col::before {
    content: "";
    position: absolute;
    right: -29px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 25px solid transparent;
    border-bottom: 25px solid transparent;
    border-left: 30px solid white;
    z-index: 11;
}
.sfl-solis .sfl-col::after {
    content: "";
    position: absolute;
    right: -30px;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-top: 25px solid transparent;
    border-bottom: 25px solid transparent;
    border-left: 30px solid var(--blue);
    z-index: 10;
}
.sfl-approche {
    background-size: 105vw;
    background-position: 3vw -22vw;
}


/*SERVICES*/
.services.vc_row {
    margin-top: 75px;
}
.services-half.goldBg * {
    color: white;
}
.services-half.contour, .sfl-solis .contour {
    border: 1px solid;
}
.services-half {
    position: relative;
    overflow: hidden;
    text-align: left;
}
.services-half .content > div {
    display: flex;
    flex-direction: column;
    min-height: 500px;
    justify-content: space-between;
    padding-right: 15vw;
}
.services-half .content {
    position: relative;
    z-index: 2;
}
.services-half .content h3 {
    position: relative;
    z-index: 3;
}
.services-half .content p {
    max-width: 400px;
    opacity: 1;
    visibility: visible;
    transition: opacity .35s ease, visibility .35s ease;
}
.services-half .hover {
    position: absolute;
    left: 40px;
    right: 15vw;
    bottom: 40px;
    z-index: 3;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity .35s ease, visibility .35s ease;
}
.services-half .hover ul {
    margin: 0;
    max-width: 540px;
}
.services-half:has(.arrow:hover) .content p {
    opacity: 0;
    visibility: hidden;
}
.services-half:has(.arrow:hover) .hover {
    opacity: 1;
    visibility: visible;
}
.services-half .hover * {
    font-size: var(--size-sm);
}
.services-half .wpb_single_image {
    position: absolute;
    bottom: 40px;
    right: 40px;
}
.services-half img {
    width: 185px;
}
.services-half.contour img {
    width: 85px;
}
.services-half .arrow {
    position: absolute;
    top: 40px;
    right: 40px;
    z-index: 5;
    height: fit-content;
}
.services-half .arrow img {
    width: 45px;
    transition: .3s;
}
.services-half.contour .arrow img {
    transform: rotate(-90deg);
}
.services-half .arrow:hover img {
    transform: rotate(90deg);
}
.services-half.contour .arrow:hover img {
    transform: rotate(0deg);
}
.services-half .hover ul {
    list-style: none;
    padding-left: 0;
}
.services-half .hover li {
    position: relative;
    padding-left: 22px;
}
.services-half .hover li::before {
    content: "-";
    position: absolute;
    left: 0;
    top: 0;
}
.services-section {
    padding-top: 250px;
    background-attachment: fixed;
    background-position: center;
    background-size: cover;
}
.services-section-angle {
    clip-path: polygon(0 0, 100% 30%, 100% 100%, 0 100%);
}
.services-section img {
    width: 260px;
    margin: var(--section) 0;
}
.services-section .left {
    width: 40%;
	padding-right:5%;
}
.services-section .right {
    padding-top: 300px;
	width:55%;
}
.services-section .right .wpb_text_column {
    background: white;
    padding: 25px 50px;
    border-radius: var(--radius);
}
.services-section .right > div > .wpb_wrapper {
	display:flex;
	flex-direction: column;
	gap:20px;
}
.services-section .right .wpb_text_column:nth-child(even) {
    background: var(--beige);
}
.services-section .right .wpb_text_column * {
    color: var(--blue);
}
.services-section .right .wpb_text_column small {
    display: block;
	margin-top:10px;
}
.questions h3 {
	padding-bottom:35px;
}


/*CONTACT*/
.page-id-77 .site-header .contact-item,
.page-id-551 .site-header .contact-item {
	display:none;
}
.contact .right p {
    text-align: right;
    max-width: 100%;
}
.contact .vc_btn3-container.vc_btn3-inline {
    display: block;
    margin-top: 20px;
}


/*ESPACE CLIENT*/
.client-calendar {
    width: 100%;
}
.client-calendar h2 {
    padding-bottom: 25px;
}
.client-calendar__layout {
    display: grid;
    grid-template-columns: 1.05fr 1.4fr;
    gap: 12px;
}
.client-calendar__left {
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 10vh;
}
.client-calendar__grid {
    display: grid;
    gap: 12px;
}
.client-calendar__card {
    position: relative;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 25px;
    border-radius: var(--radius);
    overflow: hidden;
}
.client-calendar__left .client-calendar__card {
    min-height: 47.5vh;
}
.client-calendar__card p {
    max-width: 85%;
    margin: 0;
    line-height: 1.15;
}
.client-calendar__card h2 {
    margin: auto 0 0;
    line-height: 1;
}
.client-calendar__card--blue {
    background: var(--blue);
}
.client-calendar__card--gold {
    background: var(--gold);
}
.client-calendar__card--blue *, 
.client-calendar__card--brown *, 
.client-calendar__card--gold *, 
.client-calendar__card--blue .client-calendar__link,
.client-calendar__card--brown .client-calendar__link,
.client-calendar__card--gold .client-calendar__link {
    color: white;
}
.client-calendar__card--beige {
    background: var(--beige);
}
.client-calendar__card--brown {
    background: var(--brown);
}
.client-calendar__card--light {
    background: white;
    border: 1px solid var(--blue);
}
.client-calendar .client-calendar__link {
    position: absolute !important;
    right: 15px;
    top: 15px;
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 45px !important;
    height: 45px !important;
    border: 1px solid;
    border-radius: 50%;
    overflow: hidden;
    line-height: 1;
	transform: rotate(0deg);
}
.client-calendar .client-calendar__link:hover {
    background: white;
	transform: rotate(90deg)
}
.client-calendar__card--light .client-calendar__link:hover,
.client-calendar__card--beige .client-calendar__link:hover {
    background: var(--blue);
}
.client-calendar .client-calendar__link img {
    display: block !important;
    width: 17px !important;
    height: 17px !important;
    max-width: 17px !important;
    max-height: 17px !important;
    object-fit: contain;
}
.client-calendar--1 .client-calendar__layout {
    grid-template-columns: 1fr;
}
.client-calendar--1 .client-calendar__grid {
    display: none;
}
/*2 layout*/
.client-calendar--2 .client-calendar__layout {
    grid-template-columns: 1fr 1fr;
}
.client-calendar--2 .client-calendar__grid {
    grid-template-columns: 1fr;
}
/*3 layout*/
.client-calendar--3 .client-calendar__grid {
    grid-template-columns: 1fr 1fr;
}
/*4 layout*/
.client-calendar--4 .client-calendar__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 0.55fr;
    gap: 12px;
}
.client-calendar--4 .client-calendar__card--2 {
    grid-column: 1;
    grid-row: 1;
}
.client-calendar--4 .client-calendar__card--3 {
    grid-column: 2;
    grid-row: 1 / 3;
}
.client-calendar--4 .client-calendar__card--4 {
    grid-column: 1;
    grid-row: 2;
}
/*5 layout*/
.client-calendar--5 .client-calendar__grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 0.55fr;
    gap: 12px;
}
.client-calendar--5 .client-calendar__card--2 {
    grid-column: 1;
    grid-row: 1;
}
.client-calendar--5 .client-calendar__card--3 {
    grid-column: 2;
    grid-row: 1;
}
.client-calendar--5 .client-calendar__card--4 {
    grid-column: 1;
    grid-row: 2;
}
.client-calendar--5 .client-calendar__card--5 {
    grid-column: 2;
    grid-row: 2;
}


/*RESSOURCES*/
.ressources-section {
    width: 100%;
}
.ressources-list {
    margin-top: 70px;
    border-top: 1px solid var(--blue);
}
.ressource-item {
    display: grid;
    grid-template-columns: 0.42fr 1fr auto;
    align-items: center;
    gap: 40px;
    min-height: 76px;
    padding: 16px 0;
    border-bottom: 1px solid var(--blue);
    color: var(--blue);
    text-decoration: none;
    transition: .3s;
}
.ressource-item__category {
    display: block;
    text-transform: uppercase;
}
.ressource-item__title {
    display: block;
}
.ressource-item__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    border: 1px solid var(--blue);
    border-radius: 50%;
    color: var(--blue);
    background: transparent;
    transition: .3s;
}
.ressource-item__icon img {
    display: block;
    width: 17px;
    height: 17px;
    max-width: 17px;
    max-height: 17px;
    object-fit: contain;
	transform: rotate(0deg);
	transition:.3s;
}
.ressource-item:hover {
    padding-left: 15px;
    padding-right: 15px;
    background: var(--blue);
    color: white;
}
.ressource-item:hover .ressource-item__icon {
    background: white;
    border-color: white;
}
.ressource-item:hover .ressource-item__icon img {
	transform: rotate(90deg);
}


/*ÉQUIPE*/
.team-section {
    padding: 25px 0 75px;
}
.team-list {
    display: grid;
    gap: 20px;
    align-items: start;
}
.team-list p.team-titres {
    color: var(--gold);
    padding-bottom: 10px;
}
.team-list.cols-3 {
    grid-template-columns: repeat(3, 1fr);
}
.team-card {
    appearance: none;
    border: 0;
    padding: 0;
    background: transparent!important;
    color: inherit;
    text-align: left;
    cursor: pointer;
    width: 100%;
}
.team-photo {
    position: relative;
    aspect-ratio: 1 / 1;
    overflow: hidden;
    border-radius: var(--radius);
}
.team-photo img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .6s ease;
}
.team-card:hover .team-photo img {
    transform: scale(1.035);
}
.team-meta {
    padding-top: 26px;
    color: white;
}
.team-meta img {
    width: 45px;
    margin-top: 12px;
    transition: .3s;
    transform: rotate(0deg);
}
.team-card:hover .team-meta img,
.team-card.is-active .team-meta img {
    transform: rotate(90deg);
}
.team-role {
    padding-bottom: 10px;
}
.team-card.is-active .team-photo {
    outline: none;
}
.team-bio-wrapper {
    position: relative;
}
.team-bio {
    position: relative;
    background: var(--beige);
    border-radius: var(--radius);
    max-width: 100%;
    text-align: center;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    overflow: hidden;
    pointer-events: none;
    padding: 0 50px;
    margin-top: 0;
    transform: translateY(12px);
    transition: max-height .5s ease, opacity .3s ease, transform .3s ease, padding .5s ease, margin-top .5s ease, visibility 0s linear .5s;
}
.team-bio.is-active {
    max-height: 1000px;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    padding: 50px;
    margin-top: 50px;
    transform: translateY(0);
    transition: max-height .5s ease, opacity .3s ease, transform .3s ease, padding .5s ease, margin-top .5s ease, visibility 0s linear 0s;
}
.team-bio-content {
    max-width: 670px;
    margin: 0 auto;
}
.team-bio-content * {
    color: var(--blue);
}
.team-bio-content p {
    margin: 20px 0 0;
}
.team-bio-title {
    margin-bottom: 25px;
	padding: 0 20px;
	margin-top:0!important;
}
.team-bio-content p:last-child {
    display:none;
}
.team-bio-close {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 45px;
    height: 45px;
    border: 0;
    border-radius: 50%;
    background: var(--blue);
    cursor: pointer;
    transition: .3s;
    z-index: 2;
}
.team-bio-close:hover {
    background: var(--gold);
}
.team-bio-close span {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 22px;
    height: 1px;
    background: white;
    transform-origin: center;
}
.team-bio-close span:first-child {
    transform: translate(-50%, -50%) rotate(45deg);
}
.team-bio-close span:last-child {
    transform: translate(-50%, -50%) rotate(-45deg);
}


/*FOOTER*/
.site-footer {
    padding-top: var(--section);
    background-image: url(/wp-content/uploads/bg.jpg);
    background-position: center;
    background-size: cover;
    background-attachment: fixed;
}
body .footer-widgets {
    clip-path: polygon(0 50%, 100% 0, 100% 100%, 0 100%);
}
body .site-info, body .footer-widgets {
    background: 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: 50px;
    padding-top: 300px;
}
body .footer-widgets .widget {
    margin-bottom: 0;
}
.site-footer .widget-title {
	color: white;
    margin-bottom: 25px;
    text-transform: uppercase;
}
.footer-widget-1 img, .site-footer .logo-subtitle {
    width: clamp(200px, 17vw, 350px);
}
.footer-widget-2 {
    display: flex;
    gap: 20px;
    flex-direction: column;
}
.inside-footer-widgets>div {
    text-align: center;
}
.inside-footer-widgets>div.footer-widget-1 {
    text-align: left;
}
.inside-footer-widgets>div.footer-widget-3 {
    text-align: right;
}
.footer-widget-3 img {
    width:45px;
	transition: .3s;
	transform: rotate(0deg);
}
.footer-widget-3 img:hover {
	transform: rotate(90deg);
}
.site-footer .menu li {
    padding-bottom: 20px;
    line-height: 1;
}
.site-footer .menu li:last-child {
    padding-bottom: 0;
}
.site-footer .menu li a {
    text-transform: uppercase;
	font-weight: 700;
	font-size: 12px;
	letter-spacing:1px;
	color:white;
}
.site-footer .menu li a:hover {
	color:var(--gold);
}
body .inside-site-info * {
    color: white;
    font-size: 11px;
    letter-spacing: 0.5px;
}
body .inside-site-info a:hover strong {
    color: var(--gold);
}
body .inside-site-info {
    margin-top: -2px;
	padding: 50px var(--grid);
}
body .inside-site-info a {
    display: block;
}
body .inside-site-info a:hover {
    color: var(--gold);
}
.site-info img {
    filter: invert(1) brightness(10);
    width: 80px;
}
.site-info p em {
    text-transform:uppercase;
	color: var(--gold);
	font-style:normal;
}
.site-info p {
    display: flex;
    gap: 7px;
    align-items: center;
    justify-content: center;
}
body .footer-bar-align-center .footer-bar, 
body .footer-bar-align-center .footer-bar .textwidget {
    margin-bottom: 0;
    display: flex;
    gap: 18px;
    flex-direction: column;
    max-width: 600px;
}

/******************************/
/******************************/
/*RESPONSIVE*/
/******************************/
/******************************/


/*1440px*/
@media only screen and (max-width: 1550px) {
:root {
    --grid: 6vw;
    --gridLg: 10vw;
    --section: 110px;
    --section-sm: 80px;
    --size-sm: 15px;
    --size: 22px;
}
h1, h2 {
    font-size: 60px;
}
h3 {
    font-size: 38px;
}
h4 {
    font-size: 32px;
}
h5, .site-footer .widget-title {
    font-size: 22px;
}
h6 {
    font-size: 17px;
}
.footer-widget-3 {
    max-width: 210px;
}
.client-calendar__left .client-calendar__card {
    min-height: 45vh;
}
.services-half .wpb_single_image:not(.arrow) img {
    width: 150px;
}
.services-half.contour .wpb_single_image:not(.arrow) img {
    width: 69px;
}
.services-half .content > div {
    min-height: 400px;
	padding-right: 170px;
}
.services-section .left {
    width: 45%;
}
.services-section .right {
    width: 50%;
}
.hero-section p {
    max-width: 530px;
}
.reseau img {
    width: 150px;
}
body .site-footer .footer-widgets-container .inside-footer-widgets {
    padding-top: 280px;
}
body .inside-site-info {
    padding: 40px var(--grid);
}
.tabs img {
    width: 90px;
}
}


/*1366px*/
@media only screen and (max-width: 1366px) {
dotlottie-player {
    width: 100px!important;
    height: 100px!important;
}
.client-calendar__left {
    gap: 8vh;
}
.client-calendar__left .client-calendar__card {
	min-height: 40vh;
}
.ressources-list {
    margin-top: 8vh;
}
}


/*1024px*/
@media only screen and (max-width: 1024px) {
:root {
    --grid: 8vw;
    --gridLg: 12vw;
    --section: 100px;
    --section-sm: 90px;
}
.sfl-approche {
    background-size: 200vw;
    background-position: -50vw;
}
.sfl-approche {
    display: flex;
    flex-direction: column;
}
.sfl-approche > div:first-child {
	width: 100%;
	height: 100vw;
}
.lang-switch {
    display: none;
}
.hero-section {
	background-position: center left;
	align-items: flex-start;
	flex-direction: column-reverse;
	justify-content: flex-start;
	gap: 10vh;
}
.hero-section .vc_col-sm-6 {
	width: 100%;
}
.hero-section img {
    width: 20vw;
}
.has-logotype, .contact {
    background-size: 200vw;
    background-position: right -20vw;
}
.contact.hero-section {
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
	gap: 75px;
}
.contact .right p {
    text-align: left;
}
.inside-footer-widgets>div.footer-widget-3 {
    text-align: center;
}
body .wrapLg.tabs {
    padding-left: var(--grid);
    padding-right: var(--grid);
}
body.scroll-up .inside-header {
    opacity: 0;
    transform: translateY(-92px);
	background: transparent!important;
}
body.scroll-up .site-header, body.scrolled .site-header {
    height: 0;
}
.header-lang-switch { 
	display: none !important;
}
.team-list.cols-3 {
	grid-template-columns: repeat(2, 1fr);
}
.ressources-list {
	margin-top: 45px;
}
.ressource-item {
	grid-template-columns: 1fr auto;
	gap: 20px;
}
.ressource-item__category {
	grid-column: 1 / 2;
	font-size: 24px;
}
.ressource-item__title {
	grid-column: 1 / 2;
}
.ressource-item__icon {
	grid-column: 2;
	grid-row: 1 / 3;
}
body .grid.espace-client  {
    height: auto!important;
    padding-top: 150px;
}
.client-calendar__layout {
	grid-template-columns: 1fr;
	gap: 12px;
}
.client-calendar__left {
	gap: 40px;
}
.client-calendar__left .client-calendar__card {
	min-height: 380px;
}
.client-calendar--2 .client-calendar__grid .client-calendar__card,
.client-calendar--3 .client-calendar__grid .client-calendar__card,
.client-calendar--4 .client-calendar__grid .client-calendar__card,
.client-calendar--5 .client-calendar__grid .client-calendar__card {
	min-height: 285px;
}
body .site-footer .footer-widgets-container .inside-footer-widgets {
    gap: 20px;
}
body .site-footer .footer-widgets-container .inside-footer-widgets {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 60px;
	justify-items: center;
	padding-top: 220px;
}
body .site-footer .footer-widgets-container .inside-footer-widgets > :nth-child(1) {
    grid-column: 1 / -1;
}
body .site-footer .footer-widgets-container .inside-footer-widgets > :nth-child(2) {
    grid-column: 1;
}
body .site-footer .footer-widgets-container .inside-footer-widgets > :nth-child(3) {
    grid-column: 2;
}
body .footer-widgets {
    clip-path: polygon(0 40%, 100% 0, 100% 100%, 0 100%);
}
body .site-footer .footer-widgets-container .inside-footer-widgets {
	padding-top: 150px;
}
.footer-widget-1 img, .site-footer .logo-subtitle {
    width: 250px;
}
.team-bio-wrapper {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 999;
    height: auto;
}
.team-bio {
    border-radius: var(--radius) var(--radius) 0 0;
	max-height:0;
	transform:none!important;
	transition:.3s;
}
.services.vc_row {
    flex-direction: column;
}
.col>div {
    width: 100%;
}
.services-half .content > div {
	min-height: 320px;
}
.services-section .left, .services-section .right {
	width: 100%;
}
.services-section .right {
	padding-top:75px;
}
.services-section-angle {
    clip-path: polygon(0 0, 100% 20%, 100% 100%, 0 100%);
}
.services-section {
    background-position: 60% center;
    background-size: cover;
}
}


/*820px*/
@media only screen and (max-width: 820px) {
.home-services .flex {
    flex-direction: column;
}
.home-services .flex > div {
    width: 100%;
}
.approche > div:first-child {
    width: 35%;
}
.services-section img {
    width: 200px;
}
.home-services .left h6 {
    padding-top: 0;
}
}


/*768px*/
@media only screen and (max-width: 768px) {
.sfl-solis {
    flex-direction: column;
}
.sfl-solis .solis-col::before {
	left: 50%;
	top: -2px;
	transform: translateX(-50%);
	border-left: 25px solid transparent;
	border-right: 25px solid transparent;
	border-top: 30px solid #fff;
	border-bottom: 0;
	z-index: 10;
}
.sfl-solis .sfl-col::before {
	right: auto;
	left: 50%;
	top: auto;
	bottom: -29px;
	transform: translateX(-50%);
	border-left: 25px solid transparent;
	border-right: 25px solid transparent;
	border-top: 30px solid #fff;
	border-bottom: 0;
	z-index: 12;
}
.sfl-solis .sfl-col::after {
	right: auto;
	left: 50%;
	top: auto;
	bottom: -30px;
	transform: translateX(-50%);
	border-left: 25px solid transparent;
	border-right: 25px solid transparent;
	border-top: 30px solid var(--blue);
	border-bottom: 0;
	z-index: 11;
}
body .inside-footer-widgets>div:not(:last-child) {
	margin-bottom: 0;
}
body .inside-footer-widgets {
    display: flex;
    align-items: center;
    text-align: center;
}
.coordo .last p {
    padding-bottom: 15px;
}
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;
}
.team-list.cols-3 {
	grid-template-columns: 1fr;
}
.team-list {
    gap: 35px;
}
.client-calendar__grid,
.client-calendar--3 .client-calendar__grid,
.client-calendar--4 .client-calendar__grid,
.client-calendar--5 .client-calendar__grid,
.client-calendar--6 .client-calendar__grid {
	grid-template-columns: 1fr;
	grid-template-rows: auto;
}
.client-calendar__card,
.client-calendar__left .client-calendar__card,
.client-calendar--2 .client-calendar__grid .client-calendar__card,
.client-calendar--3 .client-calendar__grid .client-calendar__card,
.client-calendar--4 .client-calendar__grid .client-calendar__card,
.client-calendar--6 .client-calendar__grid .client-calendar__card {
	min-height: 260px;
	padding: 28px;
	border-radius: 18px;
}
.client-calendar--5 .client-calendar__card--2 {
	grid-row: auto;
}
.client-calendar__left {
	gap: 30px;
}
.ressources-list {
	margin-top: 35px;
}
.ressource-item {
	min-height: 90px;
	padding: 18px 0;
}
.ressource-item:hover {
	padding-left: 18px;
	padding-right: 18px;
}
.ressource-item__category {
	font-size: 22px;
}
.ressource-item__title {
	font-size: 16px;
}
.ressource-item__icon {
	width: 42px;
	height: 42px;
}
.ressource-item__icon img {
	width: 16px;
	height: 16px;
	max-width: 16px;
	max-height: 16px;
}
body #mobmenuright li a, body .mobmenu-content li .lang-switch {
    letter-spacing: 1.5px;
    font-size: 20px;
}
body #mobmenuright li a {
    padding: 40px 0;
}
body #mobmenuright li a img {
    width:14px;
}
body #mobmenuright .contact-item {
    margin-top: 30px;
}
body #mobmenuright .beigeBg, body .mobmenu-content li .lang-switch {
    margin-top: 60px;
}
body #mobmenuright li.beigeBg a, body #mobmenuright li.goldBg a {
    height: 80px;
}
body .site-footer .footer-widgets-container .inside-footer-widgets {
	padding-top: 200px;
	display: flex;
	gap: 50px;
	justify-items: center;
	align-items: center;
	text-align: center;
}
body .site-footer .footer-widgets-container .inside-footer-widgets > :nth-child(2) {
	display: flex;
	flex-direction: column;
}
}


/*641px*/
@media only screen and (max-width: 641px) {
dotlottie-player {
    width: 90px!important;
    height: 90px!important;
}
:root {
    --grid: 35px;
    --gridLg: 35px;
    --section: 90px;
    --section-sm: 70px;
    --size-sm: 14px;
    --size: 19px;
}
h1, h2 {
    font-size: 40px;
}
h3 {
    font-size: 32px;
}
h4 {
    font-size: 28px;
}
h5, .site-footer .widget-title {
    font-size: 20px;
}
h6 {
    font-size: 16px;
}    
body .site-footer .footer-widgets-container .inside-footer-widgets {
	padding-top: 100px; 
}
.site-header .contact-item {
	display:none;
}
.main-navigation .main-nav ul li a, .contact-item 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 {
	padding: 0 32px;
}
.hero-section, .fullHeight {
    height: 100vh!important;
    height: calc(var(--vh, 1vh) * 100)!important;
}
body .vc_toggle_size_md.vc_toggle_default .vc_toggle_content {
    padding-right: var(--section-sm);
}
body .rightmtop {
    top: 21px;
}
html[lang="fr-CA"] .site-header .logo-subtitle {
	padding-top: 3px;
}
.site-header .logo-subtitle {
	font-size: 9px;
}
body .mob-icon-cancel-1:before {
    top: 3px;
}
.site-header .header-image, body .rightmtop img {
    width: 185px;
}
body .mob-menu-header-holder, body .mobmenur-container i, body .mob-icon-menu:before, body .mob-icon-cancel-1:before {
    width: 45px;
}
body .mobmenur-container i, body .mob-icon-menu:before, body .mob-icon-cancel-1:before {
    height: 45px;
    line-height: 45px;
}
body #mobmenuright li a {
	padding: 30px 0;
}
body #mobmenuright li a, body .mobmenu-content li .lang-switch {
    letter-spacing: 1px;
    font-size: 14px;
}
body #mobmenuright li a img {
	width: 10px;
	margin-left: 7px;
}
body #mobmenuright li.beigeBg a, body #mobmenuright li.goldBg a {
	height: 50px;
}
body #mobmenuright .contact-item {
	margin-top: 20px;
}
body #mobmenuright .beigeBg, body .mobmenu-content li .lang-switch {
	margin-top: 40px;
}
body #mobmenuright li:first-child a {
	margin-top:80px;
}
.hero-section {
	padding-bottom: 50px;
	gap: 50px;
}
.hero-section img {
	width: 25vw;
}
.hero-section h2 {
    padding-bottom: 25px;
}
.tabs img {
	width: 80px;
}
body .vc_tta.vc_tta-tabs {
	width: calc(100vw - 35px) !important;
	max-width: calc(100vw - 35px) !important;
	overflow-x: scroll !important;
	overflow-y: hidden !important;
	-webkit-overflow-scrolling: touch;
}
body .vc_tta.vc_tta-tabs .vc_tta-tabs-container,
body .vc_tta.vc_tta-tabs .vc_tta-panels-container {
	width: calc(400vw - 230px) !important;
	max-width: none !important;
	overflow: visible !important;
}
body .vc_tta.vc_tta-tabs .vc_tta-tabs-list,
body .vc_tta.vc_tta-tabs .vc_tta-panels {
	display: flex !important;
	flex-wrap: nowrap !important;
	width: calc(400vw - 245px) !important;
	min-width: calc(400vw - 245px) !important;
}
body .vc_tta.vc_tta-tabs .vc_tta-tab,
body .vc_tta.vc_tta-tabs .vc_tta-panel {
	display: block !important;
	position: relative !important;
	inset: auto !important;
	flex: 0 0 100vw !important;
	width: calc(100vw - 70px) !important;
	max-width: calc(100vw - 70px) !important;
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
}
body .vc_tta.vc_tta-tabs .vc_tta-tab > a {
	display: flex !important;
	width: 100% !important;
	justify-content: center;
	text-align: center;
}
body .vc_tta.vc_tta-tabs .vc_tta-panel-body {
	display: block !important;
	height: auto !important;
	overflow: visible !important;
	transform: none !important;
	transition: none !important;
	padding: 40px 35px 70px!important;
}
body .vc_tta.vc_tta-tabs .vc_tta-panel-body .wpb_wrapper > p {
	width: 100% !important;
	margin-left: 0 !important;
	padding: 0 !important;
	text-align: center;
}
body .vc_tta.vc_tta-tabs::after {
	content: "Défiler vers la droite";
	font-size: 12px;
	letter-spacing: 1px;
	text-transform: uppercase;
	font-weight: 700;
	width: fit-content;
	display: block;
	padding: 6px 15px;
	border: 1px solid;
	margin: 0 auto;
	border-radius: 99px;
	text-align: center;
	position: absolute;
	left:0;
	right:0;
	bottom:1px;
}
body .cky-btn-revisit-wrapper {
	display:none!important;
}
.services-half .arrow img, .team-meta img, .team-bio-close, .contact-item--outside-header a, body .cky-btn-revisit-wrapper,  body .vc_toggle_size_md.vc_toggle_default .vc_toggle_icon:before, .footer-widget-3 img,  .client-calendar .client-calendar__link {
    width: 40px!important;
    height: 40px!important;
}
body .cky-btn-revisit-wrapper .cky-btn-revisit img {
    height: 28px;
    width: 28px;
}
.floating-contact-logo {
    width: 22px;
    height: 22px;
}
body .wrap.home-services {
	padding-bottom:0;
}
.home-services .flex {
	gap: var(--section);
}
.home-services .sfl {
    padding: var(--section) var(--grid);
	margin-left:-40px;
	margin-right:-40px;
	border-radius:0;
	width:100vw!important;
}
.has-logotype, .contact {
	background-size: 300vw;
}
.home-about .wpb_single_image {
    padding: 50px 0;
}
.sfl .wpb_single_image.vc_align_right {
    text-align: left;
}
.sfl img {
    margin-top: 40px;
    margin-bottom: 50px;
}
.sfl .vc_btn3-container {
    position: relative;
    bottom: 0;
}
.site-footer {
    padding-top: 200px;
    background-position: top;
    background-size: 250%;
    background-attachment: unset;
}
body .footer-widgets {
	clip-path: polygon(0 20%, 100% 0, 100% 100%, 0 100%);
}
.footer-widget-1 img, .site-footer .logo-subtitle {
	width: 200px;
}
.site-footer .widget-title {
    margin-bottom: 20px;
}
body .inside-site-info {
	padding: 0 var(--grid) 40px;
}
.footer-bar .textwidget p {
    max-width: 100%;
}
.client-calendar__left {
	gap: 50px;
}
body .grid.espace-client {
	padding-top: 135px;
}
.client-calendar__grid, .client-calendar--3 .client-calendar__grid, .client-calendar--4 .client-calendar__grid, .client-calendar--5 .client-calendar__grid, .client-calendar--6 .client-calendar__grid {
	display: flex;
	flex-direction: column;
}
.client-calendar--2 .client-calendar__grid .client-calendar__card, .client-calendar--3 .client-calendar__grid .client-calendar__card, .client-calendar--4 .client-calendar__grid .client-calendar__card, .client-calendar--5 .client-calendar__grid .client-calendar__card {
	min-height: auto;
	gap: 30px;
}
.ressource-item {
	gap: 20px;
	row-gap: 10px;
}
.ressource-item:hover {
	padding-left: 12px;
	padding-right: 12px;
}
.approche > div:first-child {
	width: 100%;
	height: 100vw;
}
body .approche .grid-narrow-sm {
    max-width: 100%;
    padding-left: var(--grid);
    padding-right: var(--grid);
}
.team-bio.is-active {
    padding: 40px;
}
.team-section {
    padding: 25px 0 50px;
}
.services-half .content > div {
	padding-right: 0;
	min-height: auto;
	gap: 20px;
}
.services-half .wpb_single_image {
    position: relative;
    bottom: -1px;
    right: 0;
    margin-top: 30px;
}
.services-half .arrow {
    display:none;
}
.services-half:has(.arrow:hover) .content p {
    opacity: 1;
    visibility: visible;
}
.services-half .hover {
    position: relative;
	margin-top:12px;
    left: auto;
    right: 0;
    bottom: auto;
	visibility: visible;
	opacity:1;
}
.col>div {
    padding: 30px;
}
.col>div.services-half {
    padding-bottom: 0;
}
.services-half .wpb_single_image.vc_align_right {
    text-align: center;
}
.services-section {
	background-position: top center;
	background-size: 230vw;
	background-attachment: unset;
	padding-top: 200px;
}
.services-section-angle {
	clip-path: polygon(0 0, 100% 10%, 100% 100%, 0 100%);
}
.services-section img {
	width: 175px;
	margin: var(--section-sm) 0;
}
.services-section .right {
	padding-top: 50px;
}
.services.vc_row {
    margin-top: 50px;
}
.services-section .right .wpb_text_column {
    padding: 25px 30px;
}
.lang-switch:hover, body[data-color="dark"] .lang-switch:hover {
    color: white !important;
}
.contact.hero-section {
	gap: 50px;
}
.contact .vc_btn3-container.vc_btn3-inline {
    margin-top: 12px;
}
.contact .right p {
	font-size: var(--size-sm);
}
.site-footer .menu li a:hover {
    color: white;
}
a.button:hover, body .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover, body[data-color="dark"]:not(.scroll-up) .main-navigation .main-nav ul li.services a {
    background: var(--blue);
    border-color: var(--blue);
    color: white !important;
}
body .goldBtn .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover {
    background: var(--gold);
    border-color: var(--gold);
    color: white !important;
}
body .beigeBtn .vc_btn3.vc_btn3-color-grey.vc_btn3-style-modern:hover {
    background: var(--beige);
    border-color: var(--beige);
    color: var(--blue) !important;
}
.inside-article .entry-header .entry-title {
    padding-top: 160px;
}
.sfl-solis .contour {
    padding: 75px 50px;
}
.sfl-solis img {
    width: 120px;
    margin-bottom: 40px;
}
.sfl-solis .solis-col img {
    width: 170px;
    height: 76px;
}
.page-id-784 .hero-section h2 strong {
    display:none;
}
.page-id-784 .hero-section h2 em {
    display:block;
}
.page-id-784 .hero-section h2 em br {
    display:none;
}
.sfl-solis {
    margin: 50px auto 0 !important;
}
}


/* IPAD PRO LANDSCAPE ONLY */
@media only screen and (min-width: 1024px) and (max-width: 1366px) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
.client-calendar__left .client-calendar__card {
	min-height: 55vh;
}
}


/* MOBILE LANDSCAPE ONLY */
@media only screen and (max-width: 932px) and (orientation: landscape) and (hover: none) and (pointer: coarse) {
dotlottie-player {
    width: 90px!important;
    height: 90px!important;
}
:root {
    --grid: 35px;
    --gridLg: 35px;
    --section: 90px;
    --section-sm: 70px;
    --size-sm: 14px;
    --size: 19px;
}
h1, h2 {
    font-size: 40px;
}
h3 {
    font-size: 32px;
}
h4 {
    font-size: 28px;
}
h5, .site-footer .widget-title {
    font-size: 20px;
}
h6 {
    font-size: 16px;
}
.site-header .lang-switch {
	display:none;
}
.hero-section, .fullHeight {
	height: auto;
	min-height: 400px;
	padding-top: 150px;
	display: flex;
	flex-direction: column-reverse
}
.contact.hero-section {
	flex-direction: column
}
.contact .right p {
    text-align: left;
    margin-top: 60px;
}
body .footer-widgets {
    clip-path: polygon(0 30%, 100% 0, 100% 100%, 0 100%);
}
body .site-footer .footer-widgets-container .inside-footer-widgets {
	padding-top: 200px;
}
body .inside-site-info {
	padding-top: 0;
}
body #mobmenuright li a {
	padding: 30px 0;
}
body #mobmenuright li a, body .mobmenu-content li .lang-switch {
    letter-spacing: 1px;
    font-size: 14px;
}
body #mobmenuright li a img {
	width: 10px;
	margin-left: 7px;
}
body #mobmenuright li.beigeBg a, body #mobmenuright li.goldBg a {
	height: 50px;
}
body #mobmenuright .contact-item {
	margin-top: 20px;
}
body #mobmenuright .beigeBg, body .mobmenu-content li .lang-switch {
	margin-top: 40px;
}
body #mobmenuright li:first-child a {
	margin-top:80px;
}
body .mobmenu-content {
    justify-content: flex-start;
}
body #mobmenuright li:first-child a {
	margin-top: 120px;
}
.services-section, .site-footer {
	background-position: top center;
	background-size: 230vw;
	background-attachment: unset;
}
body .site-footer .footer-widgets-container .inside-footer-widgets {
	padding-top: 150px;
}
body.scroll-up .inside-header {
    opacity: 0;
    transform: translateY(-92px);
	background: transparent!important;
}
body.scroll-up .site-header, body.scrolled .site-header {
    height: 0;
}
.services.vc_row {
    flex-direction: column;
}
.services-section-angle {
    clip-path: polygon(0 0, 100% 10%, 100% 100%, 0 100%);
}
.services-section .left {
	width: 100%;
}
.services-section .right {
	width: 100%;
	padding-top: 75px;
}
}