/**********/
/* COMMON */
/**********/

/*
font-family: 'Barlow', sans-serif;
font-family: 'Barlow Condensed', sans-serif;
*/

body {
	overflow-x: hidden;
	background: #fff;
	font-family: 'Barlow', sans-serif !important;
}

html {
  overflow-x: hidden;
}

*:focus {
	outline: 0 !important;
	border: 0 !important;
	box-shadow: none !important;
}

a, button {
	transition: all 0.25s ease;
}

.wrapper a { color: #46a77b; }

a:hover { color: inherit !important; text-decoration: none !important; }

p {
	font-size: 1rem;
	line-height: 1.2;
	margin-bottom: 1.25em;
	color: #000;
}

p:last-child { margin-bottom: 0; }

.onlymobile { display: none; }
.onlydesktop { display: block; }
.onlymobileflex { display: none; }
.onlydesktopflex { display: flex; }
.tel-link {
	pointer-events: none;
  cursor: default;
}

.btn-primary {
    color: #fff;
    background-color: #46a77b !important;
    border-color: #46a77b !important;
}



/**********/
/* HEADER */
/**********/

header {
	padding: 0;
}

header#onepager {
	position: fixed;
	z-index: 998;
	width: 100%;
}

header .row {
	transition: all 0.25s ease;
	background-color: transparent;
}

header.sticky {
	position: fixed;
	z-index: 998;
	width: 100%;
}

header.sticky .row {  }

.logoZone a {
	display: block;
	width: 12vw;
}

.logo {
	position: absolute;
	width: 10vw;
	margin-left: 1vw;
	transition: all 0.25s ease;
}

header.sticky .logo {
  width: 70px;
  position: relative;
  top: 0;
}



#intro {
	height: 25vh;
	padding: 3rem;
	color: #fff;
}

header.page-header, header.entry-header, footer.entry-footer {
  background-color: inherit;
  padding: 0;
}

.hero {
	position: relative;
}

.hero video {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-blend-mode: overlay;
  z-index: 50;
}

.hero .video-filter {
	position: absolute;
	width: 100%;
	height: 100%;
  mix-blend-mode: multiply;
  z-index: 60;
}

.hero_overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 70;
	padding: 3rem;
	color: #fff;
}


/* Bouton WPML */

.wpml-ls-legacy-list-horizontal {
  border: 0 !important;
  padding: 0 !important;
	display: inline-block;
  margin: 0 0 0 2rem;
  position: relative;
}

.wpml-ls-legacy-list-horizontal>ul {
	display: inline;
}

.wpml-ls-legacy-list-horizontal a {
	font-size: 1.5rem;
	font-weight: 500;
	color: #fff;
	padding: .75rem !important;
	background-color: #46a77b;
}

.wpml-ls-legacy-list-horizontal a:hover {
    text-decoration: none;
    color: #46a77b !important;
    background-color: #fff;
}

.wpml-ls-legacy-list-horizontal a span {
    vertical-align: inherit !important;
}

header.sticky .wpml-ls-legacy-list-horizontal a {
	font-size: 1rem;
}



/***********/
/* MENUS   */
/***********/

header nav { display: inline-block; }

header .menuItem {
	display: inline-block;
	position: relative;
	line-height: 1;
	font-size: .75rem;
	padding: 1.5rem 1rem;
	text-transform: uppercase;
	font-family: 'Barlow Condensed', sans-serif;
	transition: all 0.25s ease;
}

header .menuItem:last-child { margin: 0; }

header nav .menuItem a {
	font-size: 1rem;
	font-weight: 400;
	color: #fff;
	font-weight: 500;
}

header.sticky nav .menuItem a {

}

header nav .menuItem:hover, header nav .menuItem a.active {
	text-decoration: none;
	background-color: #fff;
	color: #000;
}
header nav .menuItem:hover a { color: #000; }


#wrapper-navbar-burger .hamburger {
	display: inline-block !important;
	margin-left: 1rem;
}

.rightpanel {
	background-color: #46a77b;
	width: 400px;
	height: 100vh;
	position: fixed;
	top: 0;
	right: -400px;
	z-index: 998;
	transition: all 0.25s ease;
	padding: 7rem 3rem 3rem 3rem;
}

.rightpanel.active {
	right: 0;
}

#full-container {
	transition: all 0.25s ease;
	position: relative;
	left: 0;
}

#full-container.away {
	left: -400px;
}

#full-container.away .hamburger {
	display: none !important;
}

.btn-close {
	top: 3rem !important;
	right: 3rem !important;
	cursor: pointer;
	position: absolute;
}

.btn-close i {
	font-size: 2rem;
	color: #fff;
}


.burger-nav .menuItem {
	display: block;
	margin: 0 0 1rem 0;
	position: relative;
}

.burger-nav .menuItem:last-child { margin: 0; }

.burger-nav .menuItem a {
	font-size: 1.25rem;
	font-weight: 400;
	color: #fff;
}

.burger-nav .menuItem a::before {
	font-family: "Font Awesome 5 Free"; font-weight: 700; content: "\f054";
	display: inline-block;
	width: 0rem;
	color: transparent;
	transition: all 0.25s ease;
}

.burger-nav .menuItem a:hover {
	text-decoration: none;
	color: #fff !important;
}

.burger-nav .menuItem a:hover::before {
	font-family: "Font Awesome 5 Free"; font-weight: 700; content: "\f054";
	display: inline-block;
	width: 1.5rem;
	color: #fff;
}

.phoneRight .wpml-ls-legacy-list-horizontal {
	top: -.65rem;
}

.navRightContent {
	display: inline-block;
	padding: 0 3rem;
}

header .phone a {
	font-size: 2rem;
	color: #fff;
	font-family: 'Barlow Condensed', sans-serif;
	font-weight: 900;
	line-height: 1;
	text-align: right;
	display: block;
}

header .address {
	font-size: 1rem;
	color: #fff;
	line-height: 1;
	display: block;
	text-transform: uppercase;
	text-align: right;
}


/***************/
/* MENU MOBILE */
/***************/

.hamburger { display: none; padding-right: 0; z-index: 999; position: relative; }
.hamburger-box { top: 2px; }
.hamburger-inner, .hamburger-inner::before, .hamburger-inner::after { background-color: #fff; }
.hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner::before, .hamburger.is-active .hamburger-inner::after {
    background-color: #fff;
}


@media only screen
and (max-width : 1450px) {

	header .menuItem a {
		font-size: 1rem !important;
	}

	.wpml-ls-legacy-list-horizontal a {
    font-size: 1rem !important;
	}

	#wrapper-navbar-tools .logo {
		width: 12vh;
		top: -75%;
	}

	#wrapper-navbar-tools .mainmenu {
		padding-left: 15vh;
	}

}


@media only screen
and (max-width : 1100px) {

	header .menuItem a {
		font-size: .8rem !important;
	}

	.wpml-ls-legacy-list-horizontal a {
    font-size: .8rem !important;
	}

	#wrapper-navbar-tools .wpml-ls-legacy-list-horizontal {
    margin: 0 0 0 1rem;
	}

	#wrapper-navbar-tools header {
    padding: 0 2rem;
	}

	#wrapper-navbar-tools .logo {
		top: -80%;
	}



	#wrapper-simple-navbar.withPhoneAddress .hamburger-box { top: -1px; }

	#wrapper-simple-navbar.withPhoneAddress .hamburger {
		display: inline-block;
		margin-right: 2rem;
	}

	#wrapper-simple-navbar.withPhoneAddress nav {
		position: fixed;
		width: 40%;
		height: 100vh;
		top: 0;
		right: -100%;
		background-color: #46a77b;
		transition: all 0.25s ease;
		z-index: 998;
		padding: 5rem 3rem 3rem 3rem;
		text-align: center;
	}

	#wrapper-simple-navbar.withPhoneAddress nav.active {
		right: 0;
	}

	#wrapper-simple-navbar.withPhoneAddress .menuItem {
		display: block;
		margin: .5rem;
		position: relative;
	}

	#wrapper-simple-navbar.withPhoneAddress .menuItem a {
		font-size: 3rem !important;
	}

	#wrapper-simple-navbar.withPhoneAddress .phone a { font-size: 2.5rem; line-height: 1.5; }

}

@media only screen
and (max-width : 1023px) {

	#wrapper-simple-navbar.withPhoneAddress .wpml-ls-legacy-list-horizontal { position: relative; margin: 0; }

	#wrapper-simple-navbar.withPhoneAddress .menuItem { margin: 0; padding: 0; }

	#wrapper-simple-navbar.withPhoneAddress .phone a { font-size: 1.5rem; line-height: 1.25; }

}


@media only screen
and (max-width : 812px) {

	.hamburger¸, #wrapper-simple-navbar.withPhoneAddress .hamburger { display: inline-block; }

	header nav, #wrapper-simple-navbar.withPhoneAddress header nav {
		position: fixed;
		width: 100%;
		height: 100vh;
		top: 0;
		right: -100%;
		background-color: #46a77b;
		transition: all 0.25s ease;
		z-index: 998;
		padding: 5rem 3rem 3rem 3rem;
		text-align: center;
	}

	header nav.active, #wrapper-simple-navbar.withPhoneAddress header nav.active { right: 0; }

	header .menuItem, #wrapper-simple-navbar.withPhoneAddress header .menuItem {  display: block; margin: .5rem; position: relative; }

	.wpml-ls-legacy-list-horizontal, #wrapper-simple-navbar.withPhoneAddress .wpml-ls-legacy-list-horizontal {
    position: relative;
    margin: 0 0 0 1rem;
    top: 0;
	}

	.wpml-ls-legacy-list-horizontal a, #wrapper-simple-navbar.withPhoneAddress .wpml-ls-legacy-list-horizontal a { font-size: 1rem; padding: .5rem !important; }

	#wrapper-navbar-tools .logo { width: 5rem; position: relative; top: inherit; }

	#wrapper-navbar-tools nav.mainmenu {
		top: 0;
		padding: 5rem 3rem 0 3rem;
	}

	#wrapper-navbar-tools nav.toolsmenu {
		height: auto;
		bottom: 0;
		top: inherit;
		padding: 2rem 0;
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
	  align-items: center;
	  border-top: 1px solid #fff;
	}

	header .menuItem a, #wrapper-simple-navbar.withPhoneAddress header .menuItem a {
		font-size: 1.5rem !important;
	}

	header .menuItem, #wrapper-simple-navbar.withPhoneAddress header .menuItem { margin: 0; padding: 0; }

	#wrapper-simple-navbar.withPhoneAddress .wpml-ls-legacy-list-horizontal { position: relative; margin: 0; }

	#wrapper-simple-navbar.withPhoneAddress .menuItem { margin: 0; padding: 0; }

	#wrapper-simple-navbar.withPhoneAddress .menuItem a {  font-size: 1rem !important; }

	#wrapper-simple-navbar.withPhoneAddress .hamburger-box { transform: scale(1); top: .35rem; }

}



/**********/
/* FOOTER */
/**********/

footer {
	padding: 2rem;
	color: #fff;
	font-size: .75rem;
	background-color: #000;
}

footer a { color: #fff; }

.copyright * {
	text-align: right;
	font-size: .75rem;
}

.bottomLinks * {
	font-size: .75rem;
}

.bottomLinks a::after {
	content: "|";
	display: inline-block;
	margin: 0 .5rem;
}

.bottomLinks a:last-child::after {
	display: none;
}



/* OnePager */

.white {
	color: #fff !important;
}

.paddingFourRem { padding: 3rem 4rem 4rem 4rem !important;}
.paddingTwoRem { padding: 2rem !important; }

h1 {
	text-transform: uppercase;
	font-family: 'Barlow Condensed', sans-serif;
	padding: 3rem;
}

h1 span.big {
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 6vw;
	line-height: .8;
	font-weight: 700;
	color: #fff;
}

h1 span.big span {
	color: #ed1c24;
	font-size: 1.2rem;
	display: block;
	letter-spacing: 3px;
	font-weight: 500;
	margin-bottom: 2rem;
}

h2 {
	color: #fff;
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 3rem !important;
	text-transform: uppercase;
	font-weight: 700 !important;
	margin-bottom: .5rem !important;
}

h3 {
	color: #000;
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 3rem !important;
	line-height: 1 !important;
	font-weight: 700 !important;
	margin-bottom: 1rem !important;
}

h3.services-title{
	padding: 3rem;
	margin-bottom: 0 !important;
}

h3 span {
	font-weight: 700;
	display: inline-block;
	letter-spacing: 3px;
	border-bottom: 1px solid #000;
	font-size: .75rem;
	padding-bottom: 2px;
}

#apropos h3 span {
	border-bottom: 1px solid #ed1c24;
}

h4 {
	font-weight: 700 !important;
	font-size: 1rem !important;
	line-height: 1 !important;
}

.heroSlider {
	height: 100vh;
}

.heroSlider {
	padding: 4rem;
}

.city ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.city ul li {
	color: #fff;
	font-weight: 900;
	line-height: 1;
	border-right: 5px solid #46a77b;
	text-transform: uppercase;
	font-size: 1.5rem;
	padding: .5rem 1.5rem;
	text-align: right;
}

.small-logo {
	height: 3rem;
	margin-right: 2.5rem;
	margin-top: 2rem;
	display: inline-block;
}

.small-logo:last-child { margin-right: 0; }

#divisions .bordered {
	border-right: 2px solid #ededed;
}

.map-overlay {
	position: absolute;
	width: 40%;
	height: 100%;
	padding: 2rem;
	z-index: 50;
	background-color: rgba(255,255,255,0.7);
}

.map-overlay * { color: #000; }

.map-overlay h3 span {
	text-transform: uppercase;
	color: #7f8284 !important;
	border-color: #ed1c24;
}

.map-overlay h6 {
	color: #7f8284 !important;
	font-size: 1rem;
	font-family: 'Barlow Condensed', sans-serif;
	margin-bottom: 0;
	line-height: 1.2;
	margin-top: 1rem;
}

.map-overlay p {
	font-size: 1.5rem;
	font-family: 'Barlow Condensed', sans-serif;
	font-weight: 500;
}

div.wpforms-container-full .wpforms-form input[type=text] {
    border-radius: 0 !important;
    color: #7f8284 !important;
    font-size: 1rem !important;
    border: 0 !important;
    padding: 1rem !important;
    line-height: 1 !important;
}
div.wpforms-container-full .wpforms-form input[type=tel] {
    border-radius: 0 !important;
    color: #7f8284 !important;
    font-size: 1rem !important;
    border: 0 !important;
    padding: 1rem !important;
    line-height: 1 !important;
}

#demande-de-soumission ::placeholder {
  color: #7f8284 !important;
}

#demande-de-soumission .paddingFourRem { width: 80%; }

label.wpforms-error { color: #fff !important; }

div.wpforms-container-full { margin: 0 !important; }

.btn-plane {
	background: none !important;
	color: #fff !important;
	border: 0 !important;
	font-family: 'Barlow Condensed', sans-serif;
	font-weight: 500;
	font-size: 1.2rem !important;
}

.btn-plane::after {
	content: url(../../../../uploads/2020/06/btn-arrow.png);
	display: inline-block;
	margin-left: .5rem;
	position: relative;
	transform: scale(.75);
	top: .5rem;
	transition: all 0.25s ease;
}

.btn-plane:hover::after {
	margin-left: 1rem;
}

div.wpforms-container-full .wpforms-form .wpforms-submit-container, div.wpforms-container-full .wpforms-form button[type=submit] {
	padding: 0 !important;
}

div.wpforms-container-full .wpforms-form .wpforms-submit-container {
  display: inline-block !important;
}


/* Fix */

.menuBg {
	background-color: #ed1c24;
}

.box-slogan {
	position: absolute;
	width: 50%;
	right: 0;
	bottom: 0;
	background-color: rgba(21,21,21,.8);
	padding: 1rem;
	color: #ed1c24;
	font-family: 'Barlow Condensed', sans-serif;
	font-size: 2.5vw;
	font-weight: 500;
	line-height: 1;
	text-transform: uppercase;
	text-align: center;
}

#apropos {
	padding: 10vw;
}

.paddingLeftFourRem {
	padding-left: 4rem !important;
}

.aDivision {
	height: 75vh;
  display: flex;
  align-items: flex-end;
  justify-content: flex-start;
  overflow: hidden;
}

.aDivision * {
	color: #fff !important;
}

.aDivision h2 {
	text-transform: initial;
}

.rolloverContent {
	opacity: 0;
	height: 0;
	transition: all 0.25s ease;
}

.aDivision:hover .rolloverContent {
	opacity: 1;
	height: auto;
}

.btn-green {
	background-color: #ed1c24;
	font-size: 1rem;
	font-family: 'Barlow Condensed', sans-serif;
	font-weight: 500;
	margin-top: 2rem;
	text-transform: uppercase;
	padding: 1rem 3rem;
	display: inline-block;
	transition: all 0.25s ease;
}
.btn-green:hover {
	background-color: #fff;
	color: #ed1c24 !important;
}

.arrowLeft {
	background-color: #222;
}

.arrowLeft i, .arrowRight i {
	color: #ed1c24;
	font-size: 4vw;
	transition: all 0.25s ease;
	cursor: pointer;
	opacity: .75;
}

.arrowLeft i:hover, .arrowRight i:hover {
	color: #ed1c24;
	opacity: 1;
}

.arrowRight {
	background-color: #222;
}

#realisations-slider {
	width: 100%;
}

.realSlide {
	height: 75vh
}

#demande-de-soumission {
	padding: 5rem;
	background-color: #ed1c24;
	position: relative;
	margin: 2rem;
	overflow: hidden;
}

#demande-de-soumission h3 span {
	color: #fff;
}

.formContainer {
	padding: 0 2vw;
}

.machine {
	position: absolute;
	top: -12vw;
	right: -6vw;
	width: 35vw;
}

.boite-a * {
	color: #fff !important;
}

#demande-de-soumission h3 {
	color: #fff;
}

.img-overlay {
	position: absolute;
	left: 0;
	/* bottom: 0; */
  top: 2rem;
	width: 100%;
	background-color: #222;
	z-index: 100;
}

.img-overlay .img-tel a {
	color: #fff;
	font-size: 4vw;
	font-family: 'Barlow Condensed', sans-serif;
	font-weight: 500;
	text-align: center;
	display: block;
}

.img-overlay .img-overlay-icon {
	background-color: #ed1c24;
}

.img-overlay .img-overlay-icon i {
	color: #fff;
	font-size: 4vw;
	padding: 2vw;
}

.serviceColLeft {
	background-color: #ed1c24;
}

.serviceColRight {
	background-color: #f3f3f3;
}




@media (max-width: 768px) {

  .img-overlay {
    top: -1rem;
  }
}
