/*
Theme Name: LEO BLOG THEME
Theme URI: https://www.legeropinion.com
Author: LEGER
Author URI: https://www.leger360.com
Version: 1.0.0

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# General
# Typography
# Header / Navigation
# Content
    ## General
    ## Homepage
    ## Blog
#
# Buttons
# Forms
# Accessibility
# Clearings
# Media queries
--------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css?family=Open+Sans");
@import url("https://fonts.googleapis.com/css?family=Roboto");

:root{
	/* Colors */
	--leo-red-main: #ed2127;
	--leo-blue-1: #69d3c6;
	--leo-blue-2: #4286ab;
	--leo-blue-3: #7ab1e0;
	--leo-blue-4: #88bed0;
	--leo-dark-grey: #292929;
}

.printclass {
	display: none;
}

.printclass .print-logo {
	width: 150px;
	height: auto;
	margin-bottom: 20px;
}

.printclass .print-banner {
	max-width: 100%;
	height: auto;
	margin-bottom: 20px;
}

.printclass .print-content img {
	max-height: 550px;
	width: auto;
}

.printclass h1 {
	font-size: 28px;
	line-height: 1.1;
	margin: 0 0 30px 0;
}

.printclass h2 {
	font-size: 24px;
	line-height: 1.1;
	margin: 0 0 25px 0;
}

.printclass h3 {
	font-size: 20px;
	line-height: 1.1;
	margin: 0 0 20px 0;
}

.printclass p {
	text-align: left;
	font-size: 12px;
	line-height: 1.25;
	margin: 0 0 15px 0;
}

.wp-block-image img {
	max-width: 100% !important;
	height: auto !important;
}

@media print {
	.site-,
	.site-header,
	.hamburger,
	.menu--responsive,
	.menu--overlay,
	#primary {
		display: none !important;
	}

	.printclass {
		display: block;
	}
}

/* Wp Gallery */
.gallery {
	padding: 30px 0;
	display: flex;
	flex-wrap: wrap;
	margin: -15px;
}

.gallery.gallery-columns-6 .gallery-item {
	width: calc(16.667% - 30px);
}

.gallery.gallery-columns-5 .gallery-item {
	width: calc(20% - 30px);
}

.gallery.gallery-columns-4 .gallery-item {
	width: calc(25% - 30px);
}

.gallery.gallery-columns-3 .gallery-item {
	width: calc(33% - 30px);
}

.gallery.gallery-columns-2 .gallery-item {
	width: calc(50% - 30px);
}

@media screen and (max-width: 64rem){
	.gallery.gallery-columns-6 .gallery-item,
	.gallery.gallery-columns-5 .gallery-item {
		width: calc(33.33% - 30px);
	}
}

@media screen and (max-width: 50rem){
	.gallery.gallery-columns-4 .gallery-item {
		width: calc(33.33% - 30px);
	}
}

@media screen and (max-width: 40rem){
	.gallery .gallery-item {
		width: calc(50% - 30px) !important;
	}
}

.gallery .gallery-item {
	-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	margin: 15px;
}

.gallery .gallery-item a {
	display: block;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
	position: relative;
	overflow: hidden;
}

.gallery .gallery-item a img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	min-width: 100%;
	min-height: 100%;
	max-width: 100%;
	max-height: none;
	width: auto;
	height: auto;
}



/* 3 items list */
.list-three-columns,
.list-four-columns {
	padding: 30px 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}

.list-four-columns-item {
	width: 23.5%;
	margin-bottom: 2%;
}

@media (max-width:768px)  {

	.list-four-columns-item {
		width: 49%;
		margin-bottom: 30px;
	}

}

@media (max-width:480px)  {

	.list-four-columns-item {
		width: 100%;
	}

}

.list-three-columns-item {
	width: 32%;

	background: #fff;
	overflow: hidden;
	position: relative;

    -webkit-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
    -moz-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
    box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);

    border-radius: 4px;

    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.list-three-columns-item:hover {
	transform: translateY(-3px) !important;
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}

@media (max-width:960px)  {

	.list-three-columns-item {
		width: 100%;
		margin-bottom: 30px;
	}

	.list-three-columns-item:last-child {
		margin-bottom: 0;
	}

}


/* --------- Masonry ---- */
.publications_grid {
	margin: 60px 0;
}

.publications_grid:after {
	content: '';
	display: block;
	clear: both;
}

.publications_grid-clearer {
	clear: both;
}

.publications_grid-sizer,
.publications_grid-item {
	float: left;
	width: 32%;
	margin-bottom: 2%;
}

.publications_grid-gutter {
	width: 2%;
}

@media (max-width:1200px)  {

	.publications_grid-sizer,
	.publications_grid-item {
		width: 49%;
		margin-bottom: 30px;
	}

}

@media (max-width:768px)  {

	.publications_grid-sizer,
	.publications_grid-item {
		width: 100%;
	}

	.publications_grid-gutter {
		width: 0;
	}

}

.publications_grid-item {
	background: #fff;
	overflow: hidden;
	position: relative;

    -webkit-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
    -moz-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
    box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);

    border-radius: 4px;

    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.publications_grid-item:hover {
    transform: translateY(-3px) !important;
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);

}

.publication--link {
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.publication--img {
	width: 100%;
	height: 300px;

	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
}

.publication--content {
    font-family: 'Open Sans', sans-serif;
    padding: 40px;
}

.publication--date {
	width: 100%;
    font-size: 14px !important;
    text-align: left !important;
    margin: 0 !important;
    line-height: 1.5 !important;
}

.publication--date > a {
	position: relative;
	z-index: 2;
}

.publication--author {
	width: 100%;
	font-size: 16px !important;
    margin: 5px 0 0 0 !important;
    line-height: 1.5 !important;
    text-align: left !important;
}

.publication--content > h3 {
	width: 100%;
    font-weight: 400;
    font-family: 'Open Sans', sans-serif;
    color: #333;
    margin: 15px 0 0 0;
    font-size: 24px;
    line-height: 34px;
    text-transform: inherit;
}

* {
	-webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/* ----- GRID ------ */
/*
.grid {
	order: 0;
	margin:40px 0;
	display: grid;
	grid-gap: 20px;
	grid-template-columns: repeat(3, minmax(150px,1fr));
	grid-auto-rows: 20px;
	width: 100%;
}

.grid-3 {
	display: grid;
	grid-gap: 20px;
	grid-template-columns: repeat(3, 1fr);
	margin: 40px 0 0 0;
}*/

/*--------------------------------------------------------------
# General
--------------------------------------------------------------*/

.office-name-archive-profile {
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	opacity: .5;
	line-height: 1;
	text-transform: none;
	margin: 10px 0 0 0;
}

.member_list .member_item a .office-name-archive-profile {
	color: var(--leo-red-main) !important;
}

.office-name-profile {
    font-family: 'Roboto', sans-serif;
    font-size: 20px;
    line-height: 1;
    color: #fff;
    text-transform: uppercase;
    margin: 15px 0 0 0;
}

.primary-menu .current-menu-item.sub__sub>a {
	color: initial !important;
}

.sub__sub a {
	font-size: 13px !important;
	margin-left: 15px !important;
}

blockquote {
    border-color: var(--leo-red-main);
    background-color: #eee;
    border-radius: 4px;
	padding: 20px;
	margin: 40px 0;
}

blockquote p {
	font-style: italic;
	font-weight: 300;
}

blockquote p strong {
	font-style: normal;
}

.flex-dummy {
  background: none !important;
  height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  min-height: 0 !important;
  padding-left: 0 !important;
}

html,
body {
	margin: 0 !important;
	padding: 0 !important;
	overflow-x: hidden !important;
}

body {
	overflow-x: hidden !important;
}

html {
	overflow-y: scroll;
	box-sizing: border-box;
}

html.noscroll {
    position: fixed;
    overflow-y: scroll;
    width: 100%;
}

* {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	outline: none;
}

a {
	color: var(--leo-blue-1);
	text-decoration: none;
}

a:hover {
	color: #2a2d31 ;
	text-decoration:none;
}

html body a:focus {
	text-decoration: none;
	color: inherit;
}

html body .content-area a:focus {
	text-decoration: none;
	color: var(--leo-blue-1);
}

*,
a:active,
:-moz-any-link:focus {
	outline:none;
}

p { text-align: justify; }

h1, h2, h3, h4, h5 { font-weight: 400; }

/* ---------- */
/* Containers */
/* ---------- */

html body .row {
	padding: 25px 80px;
	margin: 0;
}

html body .row.bg-gray {
	background: #f6f7f8;
}

html body .content-area {
	width: 1280px;
	margin: auto;
	padding: 25px 0;
}

.row .content-area .row--title {
	width: 50%;
	text-shadow: 0px 0px 8px var(--leo-blue-1);
}

.row--title:first-child h2 {
	margin: 0;
}

.little--title {
	width: 70%;
}

.big--title {
	width: 100% !important;
}

.owl-carousel {
	margin: 0;
}

.owl-nav {
	display: none;
}

.row--title img {
	height: 140px;
}

/* ------ */
/* Header */
/* ------ */

.row.entry-header {
	display: flex;
	height: 400px;
	background-color: var(--leo-blue-1);
}

.row.entry-header.overlay {
	background-repeat: no-repeat;
	background-size: cover !important;
	background-position: center center !important;
	position: relative;
}

.row.entry-header.overlay::after {
	content: '';
	position: absolute; top: 0; left: 0;
	width: 100vw; height: 100%;
	background-color: rgba(105,211,198,.5);

}

.entry-header-content {
	z-index: 1;
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;

	height: calc(450px - 40px);
}

.entry-header-content h1 {
	color: #fff;
}

.entry-header-content p {
	color: #fff;
	font-size: 20px;
	line-height: 32px;
	font-weight: 400;
}

html body .entry-header-content .header--subtitle {
	font-family: 'Open Sans', sans-serif;
	color: #fff;
	text-transform: unset;
	font-size: 20px;
	height: 32px;
	font-weight: 400;
}

/* ---------- */
/* Experience */
/* ---------- */

.content-area.experience {

	background: linear-gradient(90deg, rgba(255,255,255,1), rgba(255,255,255,0.5)), url(images/home-experience-mockup.png);
	background-position: right !important;
	background-repeat: no-repeat !important;
	background-size: contain !important;

}

/* --- */
/* CTA */
/* --- */

.row.cta {
	position: relative;
	background-size: contain;
	background-position: right center;
	background-repeat: no-repeat;
}

.row.cta::after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;

	background: -moz-linear-gradient(left, rgba(246, 247, 248, 1) 1%, rgba(246, 247, 248, 1) 65%, rgba(246, 247, 248, 0) 100%);
	/* FF3.6-15 */
	background: -webkit-linear-gradient(left, rgba(246, 247, 248, 1) 1%, rgba(246, 247, 248, 1) 65%, rgba(246, 247, 248, 0) 100%);
	/* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right, rgba(246, 247, 248, 1) 1%, rgba(246, 247, 248, 1) 65%, rgba(246, 247, 248, 0) 100%);
	/* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f6f7f8', endColorstr='#f6f7f8', GradientType=1);
	/* IE6-9 */

}

.row.cta .content-area {
	position: relative;
	z-index: 2;
}

.row.cta h2 {
	margin-bottom: 15px;
}

/* --- */

.no-js #loader {
	display: none;
}
.js #loader {
	display: block; position: absolute; left: 100px; top: 0;
}
.se-pre-con {
	display: none;
	position: fixed;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 9999;
	background: url(images/loader.gif) center no-repeat #fff;
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body {
	font-family: 'Open Sans', sans-serif;
	font-size: 16px;
	line-height: 28px;
	font-weight: 400;
	color: var(--leo-dark-grey);
	background: #fff;
}

html body .row p, html body .row li {
	font-size: 18px;
	line-height: 30px;
	font-weight: 300;
}

a {
	color: var(--leo-blue-1);
}

strong {
	font-weight: 600;
}

ul {
	margin-bottom: 45px;
}

h1 {
	font-family: 'Roboto', sans-serif;
	font-weight: lighter;
	font-size: 60px;
	line-height: 60px;
	color: #5e6369;
	text-transform: uppercase;
	margin-bottom: 25px;
}

h2 {
	font-family: 'Roboto', sans-serif;
	font-weight: lighter;
	font-size: 32px;
	line-height: 38px;
	color: #2a2d31;
	text-transform: uppercase;
}

h3 {
	font-family: 'Roboto', sans-serif;
	font-weight: lighter;
	font-size: 24px;
	line-height: 30px;
	color: var(--leo-blue-1);
	text-transform: uppercase;
	margin: 40px 0 20px;
}

h3:first-child {
	margin-top: 0;
}

h4 {

}

h5 {
	font-family: 'Roboto', sans-serif;
	font-weight: lighter;
	font-size: 18px;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 10px;
}

h6 {

}

.navigation .nav-links {
	display: flex;
	flex-flow: row nowrap;
	align-items: center;
}

.navigation .page-numbers {
	margin: 0 5px;
}

.navigation .page-numbers:not(.dots) {
	width: fit-content;
	padding: 5px 15px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	background-color: var(--leo-blue-1);
	position: relative;
	border-radius: 4px;

	-webkit-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
    -moz-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
	box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);

	-webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.navigation .page-numbers:not(.dots) > svg {
	margin-right: 10px;
}

.navigation .page-numbers:not(.dots):hover {
    transform: translateY(-3px) !important;
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);

}

.navigation .page-numbers:not(.next):not(.prev) {
    border-radius: 100%;
}

.navigation .page-numbers.current {
	background-color: var(--leo-blue-1);
}

.navigation .prev,
.navigation .next {
	width: 185px !important;
}

.navigation .prev span {
	padding-left: 5px;
}

.navigation .next span {
	padding-right: 5px;
}

/*--------------------------------------------------------------
# Header / Navigation
--------------------------------------------------------------*/
.site-header {
	width: 100%;
	height: 80px;
	padding: 0 80px;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 6;
}

.hamburger-header {
	display: none;
	align-items: center;
	justify-content: space-between;

	height: 100%;
}

.menu--responsive {
	z-index: 6;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--leo-blue-1);
	position: fixed;
	top: 0;
	right: -100%;
	width: 70%;
	height: 100vh;
	-webkit-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 0px 20px 0px rgba(0,0,0,0.25);
}

.menu--overlay {
	display: none;
	z-index: 5;
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;

	background-color: rgba(0,0,0,.3);
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out
}

.nav-up {
	top: -100px !important;
}

.nav-down {
	background-color: var(--leo-blue-1);
}

.nav-down .site-branding__logo {
	margin-top: 0;
	height: 50px;
}

.main-menu {
	width: 1280px;
	margin: auto;
	height: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/* Hamburger */
html .hamburger {
	z-index: 7;
	position: fixed;
	height: 80px;
	top: 0; right: 0;
	display: none;
	justify-content: center;
	align-items: center;
	margin-right: 80px;
}

html .hamburger:hover {
	opacity: 1;
}

.hamburger .hamburger-inner,
.hamburger .hamburger-inner::after,
.hamburger .hamburger-inner::before {
	background-color: #fff;
}

.lang-selector a {
	padding-right: 0 !important;
}

/* Shown menu */
.show-menu {
	right: 0;
}

html .site-branding__logo {
	margin-top: 20px;
	height: 50px;
}

.primary-menu {
	display: flex;
	flex-direction: row;
	margin: 0;
	padding: 0;
	background-color: unset !important;
}

.hamburger-menu .primary-menu {
	height: 100vh;
	width: calc(100% + 20%);
	background-color: var(--leo-blue-1) !important;
	z-index: 5;
}

.primary-menu li {
	list-style: none;
	position: relative;
	padding: 10px 0;
}

.primary-menu li.menu-item-has-children::after {
	content: "\f078";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	color: #fff;
	left: -20px;
	position: relative;
	pointer-events: none;
	-webkit-transition: all 0.15s ease;
	-moz-transition: all 0.15s ease;
	-ms-transition: all 0.15s ease;
	-o-transition: all 0.15s ease;
	transition: all 0.15s ease;
}

.primary-menu li a {
	font-size: 16px;
	font-family: 'Roboto', sans-serif;
	color: #fff;
	letter-spacing: 1px;
	text-transform: uppercase;
	padding: 30px 25px 29px 15px;
}

.primary-menu .current-menu-item > a {
	color: var(--leo-blue-1) !important;
}

.primary-menu .current-menu-item::after {
	color: var(--leo-blue-1) !important;
}

.primary-menu li:hover a,
.primary-menu li:hover:after,
.primary-menu li a:focus,
.primary-menu li a:visited {
	color: rgba(255,255,255,0.6);
}

.sub-menu {
	visibility: hidden;
	position: absolute;
	opacity: 0;
	top: 40px;
	left: 0;
	padding: 15px 0;
	background: #fff;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.sub-menu:before {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 10px 10px;
	border-color: transparent transparent #ffffff transparent;
	-webkit-transform: rotate(360deg);
	position: absolute;
	top: -9px;
	left: 20px;
}

.primary-menu li:hover .sub-menu {
	visibility: visible;
	opacity: 1;
	transform: translateY(10px);
    -webkit-transform: translateY(10px);
    -o-transform: translateY(10px);
    -moz-transform: translateY(10px);
    -webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
}

.sub-menu li {
	position: relative;
	list-style: none;
	padding: 5px 0;
	width: 100%;
}

.primary-menu .sub-menu li a {
	padding: 10px 20px;
	color: var(--leo-blue-1);
	font-family: 'Open sans', sans-serif;
	text-transform: inherit;
	white-space:nowrap;
}

.primary-menu .sub-menu li a:hover {
	color: var(--leo-red-main);
}

/*--------------------------------------------------------------
#
--------------------------------------------------------------*/

#footer {
  background-color: var(--leo-dark-grey);
  box-shadow: 0 -11px 20px -12px rgba(0,0,0,.2);
  color: white;
  font-size: 0.8em;
  padding: 30px 0;
  text-align: center;
  width: 100%;
}

#footer a {
	color: #fff;
}

#footer a:hover {
	color: var(--leo-red-main);
}

#footer .switch-lang a {
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    text-decoration: none;
}

#leo-links ul {
  padding: 0px;
	margin-bottom: 20px;
}

  #leo-links li {
    display: inline-block;
    list-style: none;
  }

    #leo-links li a {
      text-decoration: none;
      font-family: 'Open Sans', sans-serif;
      font-size: 14px;
      border-right: .5px solid #fff;
      padding: 0 20px;
    }

    #leo-links li.first-nav a {
      border-left: none;
    }

    #leo-links li.last-nav a {
      border-right: none;
    }

  @media only screen and (max-width: 544px) {
    #leo-links li {
      display: block;
      margin: 0;
      margin-bottom: 20px;
    }

    #leo-links li a {
      border: none;
    }
  }

#leo-socials {
  font-size: 40px;
  margin: 50px 0;
}

  #leo-socials a {
    margin: 0 18px;
  }

#leger-copyrights p {
  margin: 30px;
	text-align: center;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/

/*--------------------------------------------------------------
## Why work for leger
--------------------------------------------------------------*/

.tooltips li {
	/*list-style: none;*/
	cursor: default;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    overflow: hidden;
	position: relative;

	-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
}

.tooltips li::after {
	content: ' ';
	position: absolute; top: 0; left: 0;
	width: 100%; height: 100%;
	background-color: rgba(238,59,51,0.75);
	opacity: 0;

	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.tooltips li:hover::after {
	opacity: 1;
}

.tooltips li img {
	max-width: 100%;
	height: auto;
}

.tooltips li .content {
	z-index: 3;

	display: flex;
	justify-content: center;
	align-items: center;

	padding: 15px;

	opacity: 0;
	position: absolute;
	top: 50%; left: 50%; transform: translate(-50%, -50%);
	width: 100%; height: 100%;

	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.tooltips li .content p {
	text-align: center;
	color: #fff;
	font-weight: 700;
	margin: 0;
}

.tooltips li:hover .content {
	opacity: 1;
}


/*--------------------------------------------------------------
## About us - Team
--------------------------------------------------------------*/

/*-------
# Archive
--------- */

.member_list {
	margin: 0; padding: 0; list-style: none;
	margin-top: 30px;

	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: space-between;
}

.member_list .member_item {
	cursor: pointer;
	position: relative;
	margin-bottom: 20px;
	width: 23.75%;
	overflow: hidden;
	border-radius: 4px;

	-webkit-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
	-moz-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
	box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);

	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.member_list .member_item a {
	background-color: #fff;
	display: table;
	height: 100%;
	width: 100%;

	-webkit-transition: none;
	transition: none;
}

.member_list .member_item a h3 {
	color: #2a2d31;
	-webkit-transition: none;
	transition: none;
}

.member_list .member_item:hover {
	transform: translateY(-2px);
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}

.member_list .member_item .image,
.member_list .member_item .text {
	width: 100%;
}

.member_list .member_item .image {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 0;
	padding-bottom: 100%;
}

.member_list .member_item .image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.member_list .member_item .text {
    flex-grow: 2;
    flex-basis: auto;
	padding: 20px;
	background-color: #fff;
}

.member_list .member_item .text h3 {
	margin: 0;
	font-size: 25px;
	line-height: 31px;
}

.member_list .member_item .text h4 {
	margin-bottom: 0;
	color: #afafaf;
	font-size: 18px;
	line-height: 24px;
}

/*-------
# Single
--------- */
.header-single-profile {
	width: 100% !important;
}

.header-single-profile > h2,
.header-single-profile > h3 {
	width: 50%;
}

.member--single {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}

.member--single .image {
	order: 1;
	position: relative;
	overflow: hidden;
	width: 30%;
	height: 0;
	padding-bottom: 30%;

	border-radius: 4px;
	-webkit-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
	-moz-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
	box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
}

.member--single .image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.member--single .text {
	order: 0;
	width: 70%;
	padding: 0 40px 0 0;
}

.job .member--single .text {
	width: 100%;
}

.single-profiles .entry-header h1 {
	margin-bottom: 15px;
}

.single-profiles .entry-header h3 {
	margin: 15px 0 0 0;
}

.single-profiles .entry-header h2,
.single-profiles .entry-header h3 {
	color: #fff;
}

.socials-icons {
	margin-top: 22.5px;
}

.socials-icons h4 {
    font-family: 'Roboto', sans-sevrif;
    text-transform: uppercase;
}

.socials-icons ul {
	padding: 0; margin: 0; list-style: none;
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: center;
	margin-top: 22.5px;
	margin-bottom: -22.5px;
}

.socials-icons ul li {
	margin-right: 22.5px;
	margin-bottom: 22.5px;
	font-size: 20px;
	line-height: 1;
}

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

.socials-icons ul li a {
	display: flex;
	width: 40px;
	height: 40px;
	justify-content: center;
	align-items: center;
	padding: 10px;
	color: #fff;
	background-color: var(--leo-red-main);
	border-radius: 4px;

 	-webkit-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
    -moz-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
    box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
}

.socials-icons ul li a svg {
	width: 100%;
	height: 100%;
}

.socials-icons ul li a svg,
.socials-icons ul li a svg path {
	-webkit-transition: none;
	transition: none;
}

.socials-icons ul li a:hover,
.socials-icons ul li a:focus {
	background: var(--leo-blue-1);
	color: var(--leo-red-main);
	transform: translateY(-2px);
}



/*--------------------------------------------------------------
## About us - Clients
--------------------------------------------------------------*/

.client_list-title {
	margin: 50px 0 25px 0;
}

.client_list {
	margin: 0; padding: 0;
	list-style: none;

	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}

.client_list li {
	position: relative;
	display: flex; justify-content: center; align-items: center;
	width: 23.75%; height: 0; padding-bottom: 15.75%;
	margin-bottom: 1.666%;
	border-radius: 4px;
	border: 1px solid rgba(0,0,0,.045);
}

/* TITRE */

.client_list li.sector_title {
	cursor: pointer;
	border-color: transparent;
	background-color: var(--leo-blue-1);

	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.client_list li.sector_title:hover {
	background-color: #fff;
	transform: translateY(-2px);
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}

.client_list li.sector_title a {
	width: 100%; height: 100%;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.client_list li.sector_title div {
	position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
	max-width: 80%;
	display: flex;
	flex-flow: column;
    justify-content: center;
    align-items: center;
}

.client_list li.sector_title div h2 {
	margin: 0; padding: 0; text-align: center;
	color: #fff;

	font-size: 18px;
	line-height: 1.2;
}

.client_list li.sector_title:hover div h2 {
	color: var(--leo-red-main);
}

.client_list li.sector_title div p {
	font-weight: 400;
	position: relative;
	margin: 0; padding: 0; text-align: center;
	margin-top: 10px;
	color: var(--leo-red-main);
	width: fit-content;

	font-size: 16px;
	line-height: 1.2;
}


/* LOGOS */

.client_list li img {
	position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
	width: 80%; height: auto;
}

.flex-dummy {
	border: none !important;
    height: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
}

/*--------------------------------------------------------------
## Services - Léger
--------------------------------------------------------------*/

.studies__media h2 {
	margin-top: 0;
}

.studies__media ul {
	margin: 25px -30px -30px 0;
	padding: 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
}

.studies__media ul li {
	margin: 0 30px 30px 0;
}

.studies__media ul li .button-service-brochure {
	padding: 0;
	margin: 0;
}

.entry-header.studies {
	height: 550px;
}

.sub-menu-services {
	z-index: 1;
	position: absolute;
	right: 0;
	bottom: 0;
}

.sub-menu-services ul {
    padding: 0;
    list-style: none;
    margin: 0;
    margin-bottom: 50px;
    text-align: right;
}

.sub-menu-services ul li a {
	display: inline-block;
	position: relative;
	padding-right: 35px;
	font-size: 16px;
    font-family: 'Roboto', sans-serif;
    color: #fff;
    letter-spacing: 1px;
    text-transform: uppercase;

    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.sub-menu-services ul li.current-menu-item a,
.sub-menu-services ul li a:hover {
	padding-right: 45px;
	color: var(--leo-red-main);
}

.sub-menu-services ul li.current-menu-item a::after,
.sub-menu-services ul li a:hover::after {
	background-color: var(--leo-red-main);
	width: 30px;
}

.sub-menu-services ul li a::after {
	z-index: 1;
	content: ' ';
	height: 1px; width: 20px;
	position: absolute; right: 0; top: 50%;
	transform: translateY(-50%);
	background-color: #fff;
	-webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.studies_list li {
	width: 32%;
	height: 0;
	padding-bottom: 16%;
	margin-bottom: 2%;

	cursor: pointer;
	overflow: hidden;
	position: relative;

	border-radius: 4px;
	background-position: center; background-size: cover; background-repeat: no-repeat;
}

@media (max-width:960px)  {

	.studies_list li{
		width: 49%;
		padding-bottom: 24.5%;
		margin-bottom: 30px;
	}

}

@media (max-width:480px)  {

	.studies_list li{
		width: 100%;
		padding-bottom: 50%;
	}

}


.studies_list li a {
	width: 100%; height: 100%; z-index: 1;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: block;
}

.studies_list li:hover {
	transform: translateY(-2px);

    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}

.studies_list li h3 {
	text-transform: uppercase;
	text-align: center;
	margin: 0; padding: 0;
	position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
	max-width: 80%;
    font-family: 'Roboto', sans-serif;
	z-index: 1;
	color: #fff;
}

.studies_list li::after {
	content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0,0,0,.75);
}

/*--------------------------------------------------------------
## Services - LégerWeb
--------------------------------------------------------------*/

.button-service-brochure {
	margin: 30px 0 30px 0;
	width: 200px;
	height: 250px;
    z-index: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
}

.button-service-brochure:hover {
    transform: translateY(-3px);
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}

.button-service-brochure::before {
    z-index: 1;
    content: ' ';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: unset;
    -webkit-transition: background-color .3s ease-in-out;
    transition: background-color .3s ease-in-out;
}

.button-service-brochure:hover::before {
	background-color: rgba(0,0,0,.6);
}

.button-service-brochure div {
	position: absolute;
    top: calc(50% + 40px);
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    z-index: 2;
    display: flex;
    align-items: center;
	justify-content: center;
	min-width: 40px;
    height: 40px;
    text-indent: 50px;
    color: #fff;
    background-image: url(images/dl.png);
    background-size: 40px 40px;
    background-position: left center;
    background-repeat: no-repeat;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}

.button-service-brochure:hover div {
    top: 50%;
    opacity: 1;
}

/*--------------------------------------------------------------
## Services - Léger - Études syndiquées
--------------------------------------------------------------*/

/* Table */

#topTable {
	width: 100%;
}

#topTable th {
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 1px;
    color: var(--leo-red-main);
    font-weight: 400;
    text-transform: uppercase;

    padding: 20px 0;

    -webkit-transition: none;
    transition: none;
}

#topTable tr {
	border-bottom: 2px solid rgba(42,45,49,.1);
}

#topTable .top_row td:last-child {
	font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 1px;
    font-weight: 400;
    text-transform: uppercase;
}

#topTable td {
	padding: 20px 0;
}

/* Classic */
.lists_classic {
	margin-top: 25px;
}

.classic {
	margin-top: 1.666%;
	margin-bottom: 0;
	padding: 0;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
	align-items: flex-start;
}

.classic li {
	list-style: none;
	width: 31.66%;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-items: center;
    margin-bottom: 1.666%;

    border-radius: 4px;
    border: 1px solid rgba(0,0,0,.045);
}

.classic li span {
	width: 10%;
	position: relative;
	text-align: center;
	z-index: 1;
	font-family: 'Roboto', sans-serif;
	color: #fff;
	font-size: 18px;
	line-height: 1;
}

.classic li span::after {
	z-index: -1;
	content: '';
	position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%);
	width: 35px; height: 35px;
	border-radius: 100%;
	background-color: var(--leo-red-main);
}

.classic .list-logos-wrapper {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60%;
    height: 0;
    padding-bottom: 39.8%;
}

.classic .list-logos-wrapper img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 80%;
    height: auto;
}

/* Medias */

.medias_list {
	list-style: none;
}

.medias_list li a {
	padding: 5px 0 5px 45px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position: relative;
}

.medias_list li a svg {
	position: absolute;
	left: 0; top: 50%; transform: translateY(-50%);
	background-color: var(--leo-red-main);
	padding: 8px;
	border: 2px solid var(--leo-red-main);
	border-radius: 100%;
	width: 35px !important;
	height: 35px !important;

}

.medias_list li a:hover svg {
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}

.medias_list li a path {
	fill: #fff;
	-webkit-transition: none;
	transition: none;
}

/*--------------------------------------------------------------
## About us
--------------------------------------------------------------*/

html body .aboutus p,
html body .aboutus ul {
	margin-bottom: 10px;
}

/*--------------------------------------------------------------
## Contact
--------------------------------------------------------------*/

/*-------
# offices
--------- */

.page-template-tpl-contact h5 {
	margin-top: 0;
}

html body .offices--container {
	margin-top: -3%;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

html body .offices--container .office--content {
	opacity: 1;
	margin-top: 5%;
	background: #fff;
	width: 47.5%;
	display: flex;
	align-items: center;
	border-radius: 4px;
	-webkit-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
	-moz-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
	box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);

	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

html body .offices--container .office--content:hover {
	transform: translateY(-3px) !important;
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}

html body .offices--container .office--content .office--img {
	position: relative;

	width: 30%;
	height: 300px;
	max-height: 278px;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

html body .offices--container .office--content .office--img::after {
	content: ' ';
	background-color: rgba(255,0,0,.095);

	position: absolute;
	top: 0;
	left: 0;

	width: 100%;
	height: 100%;
}

.office--desc {
	width: 70%;
	padding: 40px;
}

.office--desc a {
	font-size: 18px;
	color: var(--leo-blue-1);
	font-weight: 300;
	line-height: 30px;
}

.office--desc h2 {
	margin-top: 0;
}

html body .contact--frow {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

html body .contact--form {
	width: 100%;
}

/*--------------------------------------------------------------
## Homepage
--------------------------------------------------------------*/

.videoHeaderClass > video {
	min-width: 100% !important;
	min-height: 100% !important;
	transform: none !important;
	top: 0 !important;
	left: 0 !important;
}

.services__list > a {
	width: 32%;

	align-self: stretch;

	-webkit-box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.08);
	-moz-box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.08);
	box-shadow: 0px 10px 10px 0px rgba(0, 0, 0, 0.08);
	border-radius: 4px;
	padding: 40px;

	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
	overflow: hidden;

	-webkit-transition: all 0.15s ease;
	-moz-transition: all 0.15s ease;
	-ms-transition: all 0.15s ease;
	-o-transition: all 0.15s ease;
	transition: all 0.15s ease;
}

@media (max-width:960px)  {

	.services__list > a {
		width: 100%;
		margin-bottom: 30px;
	}

	.services__list > a:last-child {
		margin-bottom: 0;
	}

}

.services__list>a:hover {
	transform: translateY(-3px);
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);

}

.about-page-text > p {
	margin: 0 !important;
}

.services__list>a img {
	width: 200px;
	height: auto;
}

.services__list>a img,
.services__list>a p {
	position: relative;
	z-index: 2;
}

.services__list>a p {
	margin: 20px 0 0 0;
	width: 100%;
	text-align: left;
	font-size: 18px;
	line-height: 25px;
	color: #fff;
	font-family: 'Open Sans', sans-serif;
	font-weight: 600 !important;
}

.services__list>a::after {
	position: absolute; top: 0; left: 0; content: '';
	width: 100%; height: 100%;
	z-index: 1;
	background-color: rgba(0,0,0,.6);
}

/* ---------- */
/* Top Banner */
/* ---------- */
.row.top--banner {
	/*background-image: url('images/accueil.jpg');
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;*/

	position: relative;
	padding: 80px 80px;

	height: 100vh;
	display: flex;
	align-items: center;
}
/*.row.top--banner:after*/
.row.top--banner:after {
	z-index: 0;
	content: ' ';
	height: 100%;
	width: 100vw;
	background-color: rgba(0,0,0,.6);
	position: absolute;
	top: 0;
	left: 0;
}

.row.top--banner .content-area {
	position: relative;
	z-index: 1;
}

.row.top--banner .content-area h1 {
	color: #fff;
}

.row.top--banner .content-area h2 {
	color: #fff;
	font-weight: 400;
}

/* --------- */
/* Dot lists */
/* --------- */

html body .row .content-area .dot-list {
	list-style: none;
	padding-left: 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0;
}

html body .row .content-area .dot-list li {
	cursor: default;
	list-style: none;
	width: 30%;
	min-height: 40px;
	margin-top: 40px;
	padding-left: 60px;
	padding-top: 7px;
	background: url(images/tick.png) no-repeat left top;
	background-size: 40px 40px;
}

html body .row .content-area .dot-list li span {
	font-weight: bolder;
}

html body .row .content-area .download--links {
	list-style: none;
	padding-left: 0;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0;
}

html body .row .content-area .download--links li {
	list-style: none;
	width: calc(16.66666% - 20px);
	margin: 20px;
    margin-left: 0;
    margin-bottom: 0;
}

html body .row .content-area .download--links li a {
	z-index: 0;
	display: flex;
    align-items: center;
    justify-content: center;

	position: relative;
	width: 100%;
	height: 0;
    padding-bottom: 135%;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
    -webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
}

html body .row .content-area .download--links li a:before {
	z-index: 1;
	content: ' ';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: unset;
	-webkit-transition: background-color .3s ease-in-out;
	transition: background-color .3s ease-in-out;
}

html body .row .content-area .download--links li a:hover {
	transform: translateY(-3px);
	 -webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,.5);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,.5);
    box-shadow: 0px 3px 10px 0px rgba(0,0,0,.5);
}

html body .row .content-area .download--links li a:hover:before {
	background-color: rgba(0,0,0,.6);
}

html body .row .content-area .download--links li a div {
	position: absolute;
	top: calc(50% + 40px);
	left: 50%;
	transform: translate(-50%, -50%);
	opacity: 0;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 40px;
	text-indent: 50px;
	color: #fff;
	background-image: url('images/dl.png');
	background-size: 40px 40px;
	background-position: left center;
	background-repeat: no-repeat;

	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

html body .row .content-area .download--links li a:hover div {
	top: 50%;
	opacity: 1;
}


.flex-dummy {
  height: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

/* --------- */


/* Carroussel */

html body .owl-theme .owl-nav {
	display: flex;
	justify-content: center;
}

html body .owl-theme .owl-nav [class*=owl-] {
	display: flex;
	justify-content: center;
	align-items: center;

	width: 30px;
	height: 30px;

	background-color: var(--leo-red-main);
	border: 3px solid var(--leo-red-main);
}

html body .owl-theme .owl-nav [class*=owl-]:hover {
	color: var(--leo-red-main);
	background-color: #fff;
	border-color: var(--leo-red-main);

}

html body .owl-theme .owl-nav [class*=owl-] svg,
html body .owl-theme .owl-nav [class*=owl-] path {
	-webkit-transition: none;
	-moz-transition: none;
	-ms-transition: none;
	-o-transition: none;
	transition: none;
}

/* --------- */

.clients-logos img {
	width: 100%;
}

/*--------------------------------------------------------------
## Career - Job Offers
--------------------------------------------------------------*/

.tablesorter {
	width: 100%;
}

.tablesorter th {
    font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 1px;
    color: var(--leo-red-main);
    font-weight: 400;
    text-transform: uppercase;

    padding: 20px 0;
    padding-left: 20px;

    background-image: url('images/arrows/double_arrow-sort.png');
    background-repeat: no-repeat;
    background-position: center left;
    background-size: 12px;

    cursor: pointer;

    -webkit-transition: none;
    transition: none;
}

.tablesorter th.headerSortDown {
	background-image: url('images/arrows/double_arrow_sort-down.png');
}

.tablesorter th.headerSortUp {
	background-image: url('images/arrows/double_arrow_sort-up.png');
}

.tablesorter th i {
	font-size: 18px;
}

.tablesorter th:last-child  {
	width: 20%;
	visibility: hidden;
}

.tablesorter tr {
	border-bottom: 2px solid rgba(42,45,49,.1);
}

.tablesorter .job_row td:first-child {
	font-family: 'Roboto', sans-serif;
    font-size: 18px;
    line-height: 1;
    letter-spacing: 1px;
    font-weight: 400;
    text-transform: uppercase;
}

.tablesorter .job_row td:last-child {
	text-align: right;
}

.tablesorter td {
	padding: 20px 0;
}

.tablesorter td .button-wrap {
	margin: 0 !important;
}

.tablesorter td .button-wrap .button--wo_icon {
	background-color: var(--leo-red-main);
	padding: 5px 15px;
	font-size: 16px;
}

.tablesorter td .button-wrap .button--wo_icon:hover {
	color: var(--leo-red-main);
	background-color: #fff;
}

/*--------------------------------------------------------------
## Career - Job Offer (Single)
--------------------------------------------------------------*/

.single-jobs .row--title h3 {
	color: #fff;
}

.fancy-list {
	list-style: none;
	padding: 0;
	padding: 50px 0;
}

.fancy-list.small {
	padding: 35px 0;
}

.fancy-list li {
	cursor: default;
	list-style: none;
	min-height: 40px;
	padding-left: 60px;
	padding-top: 7px;
	background: url(images/tick.png) no-repeat left top;
	background-size: 40px 40px;
}

.fancy-list.small li {
	min-height: 25px;
	padding-left: 40px;
	background-size: 25px 25px;
	padding-top: 0;
	background-position-y: 3px;
}

.fancy-list.horizontal {
	display: flex;
	justify-content: flex-start;
	flex-flow: row wrap;
	align-items: flex-start;
	margin: 0 -60px -60px 0;
}

.fancy-list.horizontal li {
	margin: 0 60px 60px 0;
}

.fancy-list.horizontal.small {
	margin: 0 -30px -30px 0;
}

.fancy-list.horizontal.small li {
	margin: 0 30px 30px 0;
}

.fancy-list.vertical {
	display: flex;
	flex-flow: column nowrap;
}

.fancy-list.vertical ul {
	list-style: circle; padding-left: 24px;
	margin: 20px 0;
}

.fancy-list.vertical li {
	margin-top: 40px;
}

.fancy-list.vertical.small li {
	margin-top: 25px;
}

.fancy-list.vertical li:first-child {
	margin-top: 0;
}

.fancy-list.resp {
	display: none;
}

/*--------------------------------------------------------------
## Services Landing Page
--------------------------------------------------------------*/

.featured--page {
	position: relative;

	display: flex;
	flex-flow: column nowrap;
	align-items: flex-start;
	justify-content: center;

	padding: 40px;

	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;

	min-height: 190px;

	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;

	-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);

	-webkit-transition: all 0.15s ease;
	-moz-transition: all 0.15s ease;
	-ms-transition: all 0.15s ease;
	-o-transition: all 0.15s ease;
	transition: all 0.15s ease;
}

.featured--page h1 {
    font-size: 35px;
    line-height: 1;
    margin: 0;
    color: #fff;
    z-index: 1;
}

.featured--page img {
	height: 80px;
	position: relative;
	z-index: 1;
}

.featured--page h3 {
	margin: 20px 0 0 0;
	z-index: 1;
	font-size: 18px;
	line-height: 25px;
	color: #fff;
}

.featured--page::before {
	content: ' ';
	background: rgba(0,0,0,.6);

	position: absolute;
	top: 0;
	left: 0;

	width: 100%;
	height: 100%;

	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

.featured--page:hover {
	transform: translateY(-3px);
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}

/*--------------------------------------------------------------
## Ressources
--------------------------------------------------------------*/

/* ------------ */
/* Introduction */
/* ------------ */

.row .content-area.introduction {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.row .content-area.introduction .row--title {
	width: 47.5%;
}

/* ----------------- */
/* Row(s) */
/* ----------------- */

/* Services */
.page-template-tpl-services .row .content-area .rsc--txt .button-service {
	margin-top: 20px;
	text-align: center;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    letter-spacing: 1px;
    background: var(--leo-blue-1);
    color: #fff;
    text-transform: uppercase;
    position: relative;
    padding: 16px 50px 16px 30px;
    display: inline-block;
    border: 0;
    -webkit-border-top-right-radius: 4px;
    -webkit-border-bottom-right-radius: 4px;
    -moz-border-radius-topright: 4px;
    -moz-border-radius-bottomright: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    margin-bottom: 10px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    -webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    -webkit-transition: all 0.15s ease;
    -moz-transition: all 0.15s ease;
    -ms-transition: all 0.15s ease;
    -o-transition: all 0.15s ease;
    transition: all 0.15s ease;
}

.page-template-tpl-services .row .content-area .rsc--txt .button-service::after {
	content: '\f35d';
	font-family: "Font Awesome 5 Free";
  	font-weight: 900;
  	position: absolute;
  	right: 15px;
  	top: 50%; transform: translateY(-50%);
}

.page-template-tpl-services .row .content-area .rsc--txt .button-service:hover {
	color: #fff;
    background: #2e2a2b;
    transform: translateY(-3px);
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}



.row .content-area.rsc--content {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.row .content-area.rsc--content .rsc--txt {
	width: 65%;
}

.row .content-area.rsc--content.solo .rsc--txt {
	width: 100%;
}

html body .row .content-area .rsc--txt p {
	margin-bottom: 20px;
}


.row .content-area .container--img {
	background-color: #fff;
	width: 30%;
	display: flex;
	align-items: center;
	justify-content: center;

	-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    -moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
    box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
}

.row .content-area.fields .container--img {
	display: block;
	overflow: hidden;
	position: relative;
}

.row .content-area.fields .container--img.overlay::after {
	content: '';
	position: absolute; top: 0; left: 0;
	width: 100%; height: 100%;
	background-color: rgba(0,0,0,.75);

	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.row .content-area.fields .container--img.overlay:hover::after {
	background-color: rgba(0,0,0,.5);
}

.row .content-area .rsc--img {
	max-width: 100%;
	min-width: 100%;
	min-height: 100%;
}

.row .content-area.fields .rsc--img {
	padding: 0;
}

.row .content-area.fields .container--img:hover .rsc--img {
	transform: scale(1.05);
}

.row .content-area.fields .rsc--img__play-button {
	z-index: 1;
	position: absolute; top: 50%; left: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
}

.row .content-area.fields .rsc--img__play-button h3 {
	margin: 0;
	margin-top: 10px;
	letter-spacing: 1px;
	color: #fff;
	font-family: 'Roboto', sans-serif;
	font-size: 14px;
	text-transform: uppercase;
}




/* ------------- */
/* Featured Post */
/* ------------- */

.row.featured--post {
	background-size: cover !important;
	background-repeat: no-repeat !important;
	background-position: center !important;
}

html body .row.featured--post .content-area .row--title h5,
html body .row.featured--post .content-area .row--title h2 {
	margin: 10px 0;
	color: #fff;
}

html body .row.featured--post .content-area .row--title h5 a:hover,
html body .row.featured--post .content-area .row--title h5 a:focus,
html body .row.featured--post .content-area .row--title h5 a:visited {
	color: var(--leo-red-main);
}



/* -------------------------------------------------------------
## Blog Archive
--------------------------------------------------------------*/

.archive-post_link {
	display: block;
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.blog-content .content-area {
	display: flex;
	flex-flow: column nowrap;
	justify-content: space-between;
}

.search-engine {
}

.object.archive-post {
	background-color: #fff;
	-webkit-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
	-moz-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
	box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);

	border-radius: 4px;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.object.archive-post:hover {
	transform: translateY(-3px) !important;
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}

.object.archive-post .entry-content {
	position: relative;
	display: flex;
	flex-direction: column;
}

.entry-featured-image_link {
	overflow: hidden;
}

.object.archive-post .entry-featured-image {
	border-top-right-radius: 4px;
	border-top-left-radius: 4px;
	height: 260px;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;

	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.object.archive-post .entry-featured-image::after {
	position: absolute;
	content: '+';
	display: flex;
	opacity: 0;
	background-color: var(--leo-red-main);
	font-size: 70px;
	color: #fff;
	justify-content: center;
	align-items: center;
	font-family: 'Roboto', sans-sevrif;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;

	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.object.archive-post:hover .entry-featured-image::after {
	opacity: .75;
}

.object.archive-post:hover .entry-featured-image {
	transform: scale(1.2);
}

.object.archive-post .entry-text {
	flex-grow: 2;
	flex-basis: auto;

	display: flex;
	flex-direction: column;
	justify-content: space-around;

	font-family: 'Open Sans', sans-serif;
	padding: 40px;
}

.object.archive-post .entry-date {
	font-weight: 100;
	font-size: 14px;
	line-height: 18px;
	margin-bottom: 15px;
	text-align: left;
}

.object.archive-post .entry-date > a {
	position: relative;
	z-index: 3;
}

.object.archive-post .entry-author {
	font-weight: 100;
	font-size: 14px;
	line-height: 20px;
	margin: 0 0 15px 0;
	text-align: left;
}

.object.archive-post .entry-title {
	font-weight: 400;
	font-family: 'Open Sans', sans-serif;
	color: #333;
	margin: 0;
	font-size: 24px;
	line-height: 34px;
	text-transform: inherit;
}

.blog-content {
	background-color: #f6f7f8;
}

.categories-title {
	font-size: 18px;
}

.blog-content .list-categories {
	padding: 0;
	font-family: 'Roboto';
	text-transform: uppercase;
	font-size: 16px;
}

.blog-content .list-categories ul  {
	padding: 0;
	margin: 0;
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	list-style: none;
}

.blog-content .list-categories ul li {
	list-style: none;
	margin-right: 40px;
}

/*--------------------------------------------------------------
## Blog Singles
--------------------------------------------------------------*/

.single-post .entry-header .row--title > h1 {
	font-size: 40px;
	line-height: 1.1;
}

.single-post article iframe {
	margin: 30px auto;
	display: block;
}

.single-post article img.aligncenter {
	filter: drop-shadow(0px 3px 10px rgba(0,0,0,0.25));
	margin: 30px auto;
	display: block;
	max-width: 100%;
	height: auto;
}

html body .row .content-area.post--content {
	width: 860px;
	margin: auto;
	padding: 0;
}

html body .row .content-area.post--content .row--title {
	width: 100%;
}

html body .row .content-area.post--content p,
html body .row .content-area.post--content ol li {
	font-size: 16px;
	line-height: 28px;
	font-weight: 400;
	text-align: justify;
	margin: 0;
}

html body .row .content-area.post--content p + p {
	margin-top: 30px;
}

html body .row .content-area.post--content ol li + li {
	margin-top: 30px;
}

html body .row .content-area.post--content p img {
	filter: drop-shadow(0px 3px 10px rgba(0,0,0,0.25));
}

html body .row .content-area.post--content p img.aligncenter {
	display: block;
	max-width: 100%;
	height: auto;
	margin: 30px auto;
}

html body .row .content-area.post--content ul li {
	font-size: 16px;
	line-height: 28px;
	font-weight: 400;
	text-align: left;
}

html body .row .content-area.post--content h3 {
	font-family: 'Roboto', sans-serif;
	text-transform: uppercase;
}

html body .row .content-area.post--content .big--text {
	font-weight: 700;
	text-align: justify;
}

html body .row .content-area.post--content .quote--right {
	text-align: left;
	margin: 0;
	margin-left: 44px;
	margin-bottom: 1px;
	color: red;
	width: 30%;
	float: right;
}

html body .row .content-area.post--content .quote--left {
	text-align: left;
	margin: 0;
	margin-right: 44px;
	margin-bottom: 1px;
	color: red;
	width: 30%;
	float: left;
}

html body .row .content-area.post--content .quote {
	text-align: left;
	color: red;
}

.post--event {
	margin-top: 40px;
}

.post--event > a {
	width: fit-content;
    padding: 5px 15px;
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
    color: #fff;
    background-color: var(--leo-red-main);
    position: relative;
	border-radius: 4px;
}

.post--event > a:hover {
	transform: translateY(-3px) !important;
	background-color: var(--leo-blue-1);
	color: #fff;
}

.post--event > a > div {
    font-size: 16px;
    display: flex;
    justify-content: center;
	align-items: center;
	-webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
}

.post--event > a > div > svg {
	-webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
}

.post--event > a > span {
    font-size: 16px;
    display: flex;
    padding-left: 10px;
    justify-content: flex-start;
    align-items: center;
    -webkit-transition: none;
    -moz-transition: none;
    -ms-transition: none;
    -o-transition: none;
    transition: none;
}

.post-meta {
	text-align: left;
	color: #918f8f;
	font-style: italic;
	font-weight: 400;
	padding-bottom: 20px;
}

.post--author {
	text-align: left;
	color: #918f8f;
	font-style: italic;
	font-size: 16px;
    line-height: 28px;
    font-weight: 400;
    margin-bottom: 20px;
}

.post--share {
	margin-top: 40px;
}

.wpml-ls-statics-post_translations {
	padding-top: 60px;
}

/*.a2a_svg, .a2a_count {
	border-radius: 0 !important;
}*/

.back-to-blog {
	font-size: 16px;
	text-transform: uppercase;
	font-family: 'Roboto', sans-serif;
	padding: 40px 0;
	margin: 40px 0;
	display: flex;
	align-items: center;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.back-to-blog {
	color: #2a2d31;
}

.back-to-blog:hover {
	margin-left: -40px;
	color: var(--leo-red-main);
}

.back-to-blog i,
.back-to-blog svg,
.back-to-blog path {
	-webkit-transition: none;
	-moz-transition: none;
	-ms-transition: none;
	-o-transition: none;
	transition: none;
}

.back-to-blog.error404 {
	color: #fff;
}

.back-to-blog.error404:hover {
	color: #fff;
}

/*--------------------------------------------------------------
# Buttons
--------------------------------------------------------------*/
.button-wrap {
	cursor: pointer;
	display: inline-block;
	margin-bottom: 10px;
	margin-top: 5%;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	-webkit-transition: all 0.15s ease;
	-moz-transition: all 0.15s ease;
	-ms-transition: all 0.15s ease;
	-o-transition: all 0.15s ease;
	transition: all 0.15s ease;
}

.button-wrap:hover {
	transform: translateY(-3px) !important;
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}

.button {
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	letter-spacing: 1px;
	background: var(--leo-blue-1);
	color: #fff;
	text-transform: uppercase;
	position: relative;
	padding: 16px 30px 16px 30px;
	margin-left: 60px;
	display: inline-block;
	-webkit-border-top-right-radius: 4px;
	-webkit-border-bottom-right-radius: 4px;
	-moz-border-radius-topright: 4px;
	-moz-border-radius-bottomright: 4px;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
}

.button--wo_icon {
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	letter-spacing: 1px;
	background: var(--leo-blue-1);
	color: #fff;
	text-transform: uppercase;
	position: relative;
	padding: 16px 30px 16px 30px;
	display: inline-block;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
}

.button--wo_icon:hover {
	background-color: #fff;
	color: var(--leo-blue-1);
}

.button svg {
	width: 60px !important;
	height: 100%;
	padding: 20px;
	position: absolute;
	left: -60px;
	top: 0;
	background: var(--leo-red-main);

	-webkit-border-top-left-radius: 5px;
	-webkit-border-bottom-left-radius: 4px;
	-moz-border-radius-topleft: 4px;
	-moz-border-radius-bottomleft: 4px;
	border-top-left-radius: 4px;
	border-bottom-left-radius: 4px;
}

.button:hover,
.button:focus {
	color: #fff !important;
	background: #2e2a2b;
}

.button.button--white {
	color: var(--leo-red-main);
	background: #fff;
}

.button.button--white svg {
	color: #fff !important;
}

.button.button--white:hover {
	color: var(--leo-red-main) !important;
	background: #fff;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
html body .gform_wrapper {
	margin-bottom: 0;
}

html body .gform_wrapper .top_label div.ginput_container,
html body .gform_wrapper .top_label div.ginput_container_textarea {
	margin-top: 0;
}

html body .gform_wrapper .top_label .gfield_label {
	margin-bottom: 0;
}

body .gform_wrapper ul li.gfield.extra-margin-top {
	margin-top: 30px;
}

html body .gform_confirmation_wrapper {
    padding: 15px;
    background-color: #fff;
    border: 3px solid green;
    text-align: center;
    color: green;
    font-weight: 700;
}

.inputs {
	color: rgba(145,145,145,.5);
}

.inputs select {
	color: var(--leo-red-main);
    border: none;
    border: 1px solid rgba(145,145,145,.3);
    padding: 7px 5px !important;
}

.inputs input, .inputs textarea {
	color: #888;
	border: none;
	border-bottom: 1px solid rgba(145,145,145,.3);
}

.inputs input:focus, .inputs textarea:focus {
	color: var(--leo-red-main);
	webkit-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
    -moz-box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
    box-shadow: 0px 10px 10px 0px rgba(0,0,0,0.08);
    border-bottom-color: #fff;
}

html .gform_wrapper .gfield_required {
	color: var(--leo-red-main);
}

html .gform_wrapper label.gfield_label {
	font-weight: 400;
}

html body .gform_wrapper .gform_button,
html body .gform_button_select_files {
	font-family: 'Roboto', sans-serif;
	font-size: 16px;
	letter-spacing: 1px;
	background: var(--leo-blue-1);
	color: #fff;
	text-transform: uppercase;
	position: relative;
	padding: 16px 30px 16px 30px;
	margin-left: 60px;
	display: inline-block;
	border: 0;
	-webkit-border-top-right-radius: 4px;
	-webkit-border-bottom-right-radius: 4px;
	-moz-border-radius-topright: 4px;
	-moz-border-radius-bottomright: 4px;
	border-top-right-radius: 4px;
	border-bottom-right-radius: 4px;
	margin-bottom: 10px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	-webkit-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	-moz-box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	box-shadow: 0px 3px 10px 0px rgba(0,0,0,0.25);
	-webkit-transition: all 0.15s ease;
	-moz-transition: all 0.15s ease;
	-ms-transition: all 0.15s ease;
	-o-transition: all 0.15s ease;
	transition: all 0.15s ease;
}

html body .gform_button_select_files {
	max-width: 100%;
	margin-left: 0;
	margin: 0 auto;
	font-size: 12px;
}

html body .gform_wrapper .gform_button:hover,
html body .gform_button_select_files:hover {
	color: #fff;
	background: #2e2a2b;
	transform: translateY(-3px);
    -webkit-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    -moz-box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
    box-shadow: 0px 6px 15px 0px rgba(0,0,0,0.4);
}


/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000; /* Above WP toolbar. */
}


/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clear:before,
.clear:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
/*.site-header:before,*/
/*.site-header:after,*/
.site-content:before,
.site-content:after,
.site-:before,
.site-:after {
	content: "";
	display: table;
}

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-:after {
	clear: both;
}

html body .wpb_content_element {
	margin-bottom: 0;
}

/*--------------------------------------------------------------
# Media queries
--------------------------------------------------------------*/
@media screen and (max-width: 1440px) {


	/* ---------- */
	/* Containers */
	/* ---------- */

	html body .content-area, .main-menu {
		width: 100%;
		margin: 0;
	}

	/* ---------- */

}

@media screen and (max-width:1400px)  {


}

@media screen and (max-width:1200px)  {

	.grid {
		grid-template-columns: repeat(2, minmax(150px,1fr));
	}

}

@media screen and (max-width:1080px)  {

	html body .offices--container {
		flex-direction: column;
	}

	html body .offices--container .office--content {
		width: 100%;
	}

	.tooltips { grid-template-columns: repeat(3, 1fr); }

}

@media screen and (max-width: 1300px) {
	.primary-menu li a {
		font-size: 14px;
	}
}

@media screen and (max-width: 1200px) {

	/* ----------- */
	/* Header Menu */
	/* ----------- */

	.hide_resp_menu {
		display: none;
	}

	html .hamburger {
		display: flex;
	}

	.hamburger-header {
		display: flex;
	}

	.menu--responsive {
		padding: 80px 40px;
	}

	.menu--responsive > div {
		width: 100%;
	}

	.primary-menu {
		flex-flow: column nowrap;
		height: 100%;
		overflow: hidden;
	}

	.primary-menu li.menu-item-has-children:after {
		content: none;
	}

	.primary-menu li {
		margin: 0;
		margin-right: 15px;
	}

	.primary-menu li a {
		padding: 10px;
		padding-left: 0;
		font-size: 16px;
		line-height: 1;
	}

	.sub-menu {
		padding: 0; margin: 0; background: none; position: relative;
		visibility: visible; opacity: 1; top: unset; left: unset;
		box-shadow: none;
	}

	.sub-menu:before { content: none; }

	.primary-menu .sub-menu li a {
		padding: 5px 0;
		color: #fff;
		opacity: 0.8;
		white-space: pre-wrap;
	}

	.primary-menu .sub-menu li a:hover {
		color: #fff;
	}

	.close-button, .menu-button { display: block; }

	.main-menu {
		display: none;
	}

	.hamburger-menu {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.primary-menu .current-menu-item > a {
		color: var(--leo-blue-1) !important;
	}

	.primary-menu li:hover .sub-menu {
		visibility: visible;
		opacity: 1;
		transform: none;
	    -webkit-transform: none;
	    -o-transform: none;
	    -moz-transform: none;
	}

}

@media screen and (max-width:1100px)  {


	html body .row .content-area.entry-header-content.post--content h1 {
		font-size: 50px;
		line-height: 50px;
	}

	/* ----------- */


}

@media (max-width: 1020px) {

	html body .row .content-area.post--content {
		width: 100%;
		margin: 0;
	}

}

@media (max-width:991px)  {

	html body .row .content-area .dot-list li {
		width: 100%;
		margin-right: 0;
	}

}

@media (max-width:960px)  {

	/* Team - Archive */
	.member_list .member_item {
		width: 31.66%;
	}

	.header-single-profile > h2,
	.header-single-profile > h3 {
		width: 100%;
	}

	/* Studies */
	.studies_list {
		grid-template-columns: repeat(2, 1fr);
	}

	/* Client List */
	.client_list li {
		width: 31.66%;
		padding-bottom: 21%;
	}

	/* Table Jobs */
	.tablesorter tr,
	#topTable tr {
		display: flex;
		flex-flow: column;
		align-items: flex-start;
	}

	.tablesorter thead tr,
	#topTable thead tr {
		padding-bottom: 20px;
	}

	.tablesorter th:last-child {
		display: none;
	}

	.tablesorter .job_row,
	#topTable .top_row {
		padding: 30px 0;
	}

	.tablesorter.job_row td:first-child {
		margin-bottom: 15px;
	}

	.tablesorter .job_row td:last-child,
	#topTable .top_row td:last-child {
		margin-top: 15px;
	}


	#topTable th { padding: 5px 0; }

	.tablesorter .job_row td,
	#topTable .top_row td {
		padding: 0;
	}

	html body .row .content-area .download--links li {
		width: calc(25% - 20px);
	}

	html body .employees--container .employee--content {
		width: 47.5%;
	}

	html body .contact--frow {
		flex-direction: column;
	}

	.row .content-area .row--title {
		width: 100%;
	}

	.little--title {
		width: 100%;
	}

	.row .content-area.rsc--content,
	.row .content-area.introduction {
		flex-direction: column;
	}

	.row .content-area .rsc--txt,
	.row .content-area.rsc--content .rsc--txt,
	.row .content-area.introduction .row--title,
	.row .content-area .container--img {
		width: 100%;
		margin-bottom: 5%;
	}

	.row .content-area .container--img {
		order: 3;
	}

	.row.cta {
		background-size: cover !important;
	}

}

@media (max-width: 768px){

	.navigation {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.navigation .nav-links {
		display: block;
	}

	.navigation .prev,
	.navigation .next {
		display: flex !important;
	}

	.navigation .prev {
		margin: 0 auto 15px;
	}

	.navigation .next {
		margin: 15px auto 0;
	}

	.tooltips { grid-template-columns: repeat(2, 1fr); }

	/* Team - Archive */
	.member_list .member_item {
		width: 48.5%;
	}

	/* Team - Singles */
	.member--single {
		justify-content: center;
		align-items: center;
	}

	.socials-icons ul {
		justify-content: center;
	}

	.member--single .image {
		order: 0;
		width: 75%; padding-bottom: 75%;
	}

	.member--single .text {
		width: 100%;
		order: 1;
		padding: 0;
		margin-top: 40px;
	}


	/* Studies */
	.studies_list  {
		grid-template-columns: repeat(1, 1fr);
	}

	/* Classic list */
	.classic li {
		width: 47.5%;
	}

	/* Client List */
	.client_list li {
		width: 47.5%;
		padding-bottom: 31.5%;
	}

	html body .row .content-area .download--links li {
		width: calc(50% - 20px);
	}

	html body .owl-theme .owl-nav [class*=owl-] {

		width: 45px;
		height: 45px;

	}

	.grid {
		grid-template-columns: repeat(1, minmax(150px,1fr));
	}

	html body .offices--container .office--content {
		flex-direction: column;
		margin-top: 10%;
	}

	html body .offices--container .office--content .office--img,
	html body .offices--container .office--content .office--desc {
		width: 100%;
	}

	html body .offices--container .office--content .office--img	{
		border-bottom-left-radius: 0px;
		border-top-right-radius: 4px;
	}

	/* ---- */
	/* Blog */
	/* ---- */

	.blog-content .list-categories ul {
		flex-direction: column;
		align-items: flex-start;
	}

	.blog-content .list-categories ul li {
		margin: 0;
	}

	html body .row .content-area.post--content .quote--left,
	html body .row .content-area.post--content .quote--right {
		width: 50%;
	}

	html body .row .content-area.entry-header-content.post--content h1 {
		font-size: 40px;
		line-height: 40px;
	}

	/* ---- */
	.site- .row .content-area.--content {
		flex-direction: column;
	}

	.site- .row .content-area.--content,
	.site- .row .content-area.--copyrights {
		padding: 5% 0;
	}

	.site- .row .content-area .--column {
		margin-bottom: 5%;
		width: 100%;
	}

}

@media (max-width:680px) {
	html body .employees--container .employee--content {
		width: 100%;
	}

	/* Client List */
	.client_list li{
		width: 100%;
		padding-bottom: 66.30%;
	}
}

@media (max-width:480px)  {

	.single-profiles .entry-header h2 {
		font-size: 22px;
		line-height: 28px;
	}

	.single-profiles .entry-header h3 {
		font-size: 18px;
		line-height: 24px;
	}

	.site-main-title {
		margin-bottom: 15px;
	}

	.row--title img {
		height: 100px;
	}

	.row.top--banner .content-area h2 {
		font-size: 22px;
		line-height: 28px;
	}

	body {
		min-width: 375px;
	}

	.header--page {
		padding-top: 80px !important;
	}

	.header--page .entry-header-content {
		height: unset !important;
		padding: 0 !important;
	}

	.tooltips { display: none; }

	.fancy-list.vertical.resp { display: flex; }

	/* Team - Archive */
	.member_list .member_item {
		width: 100%;
	}

	/* Team - Singles */
	.member--single .image {
		order: 0;
		width: 100%; padding-bottom: 100%;
	}

	.socials-icons ul {
		justify-content: flex-start;
	}


	/* Hamburger */
	html .hamburger {
		margin-right: 10%;
		padding-right: 0;
	}

	/* Classic list */
	.classic li {
		width: 100%;
	}

	html body .row .content-area .download--links li {
		width: 100%;
		margin-right: 0;
	}

	.menu--responsive {
		width: 100%;
	}

	html body .employees--container .employee--content div {
		width: 95%;
	}

	.featured--page h2 {
		font-size: 26px;
		line-height: 28px;
	}

	html body .employees--container .employee--content .employee--contact {
		height: 150px;
		flex-direction: column;
	}

	html body .employees--container .employee--content .employee--contact .employee--mail,
	html body .employees--container .employee--content .employee--contact .employee--linkedin {
		width: 100%;
	}

	html body .employees--container .employee--content .employee--contact .employee--mail {
		border-radius: unset;
	}

	html body .employees--container .employee--content .employee--contact .employee--linkedin {
		border-bottom-left-radius: 4px;
	}

	html body .employee--modal {
		width: 90%;
	}

	html body .row .content-area.entry-header-content.post--content h1 {
		font-size: 35px;
		line-height: 35px;
	}

	html body .row .content-area.post--content .quote--left,
	html body .row .content-area.post--content .quote--right {
		width: 100%;
		margin: 0;
	}

	html body .row .content-area.post--content ol {
		padding: 0;
		padding-left: 18px;
	}

	html body .row {
		padding: 5% 10%;
	}

	/* Typography */

	html body h1 {
		font-size: 30px;
		line-height: 45px;
	}

	html body h3 {
		font-size: 20px;
		margin-top: 15px;
	}

	.button {
		font-size: 14px;
	}

	.row.top--banner {
		padding: 80px 10%;
	}

	.site-header {
		padding: 0 10%;
	}



}

@media (max-width:360px)  {

}

@media print{

}