/*
Wireframe: 28
Version: 1.0
Update: 2020.03.30
*/

/*--------------------------------------------------
>> TABLE OF CONTENTS:
----------------------------------------------------
# Fonts
# General
# Navigation
    ## Superfish
    ## Mobile navigation
--------------------------------------------------*/

/*--------------------------------------------------
# Fonts
--------------------------------------------------*/
@font-face {
    font-family: 'allerbold';
    src: url('../fonts/aller-webfont.woff2') format('woff2'),
         url('../fonts/aller-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'aller_lightregular';
    src: url('../fonts/aller_lt-webfont.woff2') format('woff2'),
         url('../fonts/aller_lt-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'allerregular';
    src: url('../fonts/allerdisplay-webfont.woff2') format('woff2'),
         url('../fonts/allerdisplay-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}
@font-face {
    font-family: 'allerregular';
    src: url('../fonts/aller_rg-webfont.woff2') format('woff2'),
         url('../fonts/aller_rg-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;

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

--------------------------------------------------*/
body {
    background: #fff;
    color: #535353; font-family: 'Roboto','allerregular', sans-serif;
    font-size: 15px;
    line-height: 1.5em;
}
a {
    color: #d03f13;
    text-decoration: underline;
    transition: all .4s;
}
a:active, a:hover, a:focus {
    color: #535353;
    text-decoration: none;
}

.image-right {
    float: right;
    margin: 0 0 20px 30px;
}
.image-left {
    float: left;
    margin: 0 30px 20px 0;
}
 
 .container{ width:1231px!important; position:relative;}
h1, h2, h3, h4, h5, h6 {font-family: 'Roboto','allerregular', sans-serif;line-height: 1em;font-weight:normal;text-shadow:none;text-transform:none;letter-spacing:0px;}
h1 {
    font-size: 28px;
	color:#373737;

}
h2 {
    font-size: 25px;
	color:#404f38;
}
h3 {
    font-size: 17px;
		color:#373737;
}
h4 {
    font-size: 16px;
		color:#404f38;
}
h5 {
    font-size: 15px;
		color:#373737;
}
h6 {

    font-size: 14px;
		color:#404f38;
}
hr {
	border-color: #666;
}

.fullsite {
}

.topbar {
    padding: 9px 0px 6px;
    background: #000000;
    color: #fff;
    font-size: 15px;
    letter-spacing: 1.8px;
    position: relative;
    min-height: 40px;
}

.topbar a {
  color: #fff;
  text-decoration: underline;
}
.topbar a:hover {   color: #d03f13;}
.topbar p {
    margin: 0;
}
.topbar .contact-info1 {
float:left;
}
.topbar .contact-info1 a {
    line-height: 1em;
    color: #fff;
    background: none!important;
    width: auto;
    margin: 0 10px 0 0;
    border-radius: 0;
    font-size: 0.8em;
}
.topbar .contact-info1 a.networks_facebook:hover,
.topbar .contact-info1 a.networks_twitter:hover,
.topbar .contact-info1 a.networks_instagram:hover,
.topbar .contact-info1 a.networks_pinterest:hover,
.topbar .contact-info1 a.networks_linkedin:hover,
.topbar .contact-info1 a.networks_tripadvisor:hover,
.topbar .contact-info1 a.networks_youtube:hover {
    color: #d03f13;
}
.topbar .networks_linking i {
    font-size: 1.8rem;
    margin-right: 10px;
}
.topbar .contact-info {
float: right;
    margin-top: 0px;
}

.topbar .contact-info span.phone {
    position: relative;

}

.topbar .contact-info .phone-responsive{    position: relative;
display:none;
  }

header.top {
    position: relative;
    background: #fff;
}
header.top.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    background: #fff;
    transform: translateY(-100%);
    transition: transform .6s;
	box-shadow:0px 0px 5px rgba(0,0,0,0.2);
}
header.top.sticky .header-grid .header-center .logo a svg {
   
}
header.top.sticky .logo {
	    margin-top: 0px;

}
header.top.sticky .header-grid {
    height: auto;
    padding: 5px 0;
}
header.top.sticky.sticky-appear {
    transform: translateY(0);
}
.has-lightbox header.top.sticky.sticky-appear {
    transform: translateY(-100%);
}
header.top .header-grid {
     display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    grid-gap: 5px;
    height: 211px;
}
header.top .header-grid .header-left {
    text-align: right;
}
header.top .header-grid .header-center {
    text-align: center;
}
header.top .header-grid .header-center .logo a {
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 300;
}

header.top .header-grid .header-right {
    text-align: left;
}

header.top.sticky .header-grid .logo img{
height:75px;

}
.logo {
    margin-top: -25px;
}
header.top nav.mobile-nav {
    display: none;
    font-size: 1.4em;
}
header.top nav.main-nav{   position: relative;
    margin-top: -10px;
 }
header.top.sticky nav.main-nav{ margin-top:0px;}
header.top nav.main-nav:before{ position:absolute; top:0px; left:0px; width:482px; height:1px; content:''; background:rgba(55,55,55,0.1);}
section.banner {
position: relative;
    padding: 0;
    background:url(../images/banner.jpg) top center no-repeat;
	height:325px;

}
section.banner.banner2 {
    height: auto;
    background: none;overflow: hidden;
}

section.banner .box_googlemapsv2 {
    position: absolute;
    left: 0px;
    width: 100%;
    top: 0px;
    height: 100%;
}

section.banner .slogon {
position: absolute;
    bottom: 12px;
    left: 50%;
    transform: translateX(-50%);
    margin: 0 auto;
    width: 100%;
    pointer-events: auto;
    text-align: center;
    font-size: 30px;
    letter-spacing: 2.8px;
    font-family: 'allerregular';
    color: #fff;
    text-transform: none;
    z-index: 5;
    line-height: 36px;
    text-shadow: 0px 0px 1px rgb(0 0 0 / 10%);

}
section.banner .titrslogon{     text-transform: uppercase;
    font-size: 30px;
    font-family: 'allerbold';
    }

section.services {
position: relative;
    background: #fff;
    min-height: 718px;
    padding: 0px 0 0px;
    text-align: center;
    width: 100%;
    float: left;
    padding-top: 60px;
    opacity: 1!important;
    color: #535353;
    letter-spacing: 1.5px;
    text-shadow: 0px 0px 0px #535353;

}
section.services h2{color:#404f38;/* font-family: 'allerbold'; */font-weight: bold;font-size:30px;width:auto;margin:0 auto;margin-bottom:25px;display:inline-block;padding:0px 60px 0px;letter-spacing: 1.5px;text-transform:uppercase;background:url(../images/bg-h-service.png) left center no-repeat, url(../images/bg-h-service.png) right center no-repeat;}
section.services p{ margin-bottom: 70px;}
section.services a{ text-decoration:none; }

section.services .services-boxes {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 0px;
    margin-top: 0px;
    width: 100%;
    float: left;
		opacity:1!important;
}
section.services .services-boxes [class*="box"] {
    position: relative;
    width:338px;
    pointer-events: all;

    align-items: center;

    transition: transform .4s, opacity .4s;
   padding:0px 0 0px;
	    text-align: left;
		padding:0px;
	
    height: auto;
	min-height:308px;
		float:left;
		opacity:1!important;
}
section.services .services-boxes [class*="box"]:before{ position:absolute; left:51px; right:-29px; top:-17px; bottom:0px; border:1px solid #404f38; opacity:1; content:'';}



section.services .services-boxes a{ text-decoration:none;	color:#fff; }
section.services .services-boxes .box01 {

}

section.services .services-boxes [class*="box"] .img{ position:relative; width:100%; height:217px; }
section.services .services-boxes [class*="box"] .img img{ position:relative; width:100%; height:100%;}


section.services .services-boxes .box h3 {
    position: relative;
    margin-top: 20px;
    margin-left: 72px;
    padding-bottom: 11px;
    font-size: 22px;
    margin-bottom: 5px;
    letter-spacing: 0.2px;
    color: #404f38;
    text-align: left;
    /* font-family: 'allerbold'; */
    font-weight: bold;
    letter-spacing: -0.4px;
    text-transform: uppercase;
    background: url(../images/sep-h-box.png) left bottom no-repeat;
}
section.services .services-boxes .box:hover h3{ color:#000;}

section.services .services-boxes .box .plus{
    position: relative;
    margin-left: 55px;
    margin-top: 10px;
    color: #404f38;
    font-size: 13px;
    text-transform: uppercase;
    text-shadow: 0px 0px 0px #404f38;
    }

article.content.aos-init.aos-animate {
    letter-spacing: 2.5px;
}
main.content-wrapper {
    padding: 75px 0 0px;
	width: 100%;
    float: left;
}
.homeTemplate main.content-wrapper {
   padding: 44px 0 0px;
}

 {
    display: block;
	
 
}

 .content-banner {
    position: relative;
    z-index: 2;
    grid-column: 1 / 3;
    grid-row: 1 / 3;

}
.homeTemplate  .content-banner {
    background:url(../images/home-photo.jpg)center no-repeat;
    background-size: cover;
}
 .content-banner #slideshow {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
 .content-banner .NewsPhoto {
    height: 100%;
}
 .content-banner .NewsPhoto img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
 .content-banner .box_googlemapsv2 {
    width: 100%;
    height: 100%;
}
 article.content {
      position: relative;
    z-index: 1;
    grid-column: 2 / 4;

    letter-spacing: 1.8px;
}
 article.content {
    position: relative;
    z-index: 1;
 border-bottom:1px solid rgba(55,55,55,0.1); 
 padding-bottom:65px;
    letter-spacing: 1px;
	opacity: 1!important;
}
 article.content header.page-title {
    position: relative;
    margin: 0 0 45px;
    float: left;
    width: 100%;
    text-align: center;
    opacity: 1!important;
	
 
}
 article.content header.page-title h1 {
    margin: 0;
	padding-left:0px;
	position:relative;
	  text-align:center;
	      width: 100%;

}

.homeTemplate  article.content header.page-title h1{ width:100%; float:left;}

 article.content header.page-title h1 span:only-child,
 article.content header.page-title h1 span:first-child {

    display: inline-block;
}
 article.content header.page-title h1 .sub-title {
font-family: 'allerbold';
    color: #404f38;
    letter-spacing: 0px;
    font-size: 33px;
    text-transform: uppercase;
    margin-top: 10px;
    display: block;
    text-shadow: none;
}

article.content::after {
    content: '';
    display: block;
    clear: both;
}
article.content p {
    margin: 0 0 20px;
}

article.content ul{padding-left: 20px}
article.content ul li {
    list-style: none;
 background: url(../images/list-icon01.png) no-repeat 0 4px;
    padding-left: 25px;
}
article.content  ul ul li {
 background: url(../images/list-icon01.png) no-repeat 0 4px;
    padding-left: 20px;
}
.table-page tr:nth-child(n) {
    background: #eee;
}
.table-page tr:nth-child(2n) {
    background: #fff;
}
.table-page tr {
    border-bottom: 1px dashed #231f20;
}
article.content ul ul {
    list-style-type: circle;
}
article.content .table-style {
    position: relative;
}
article.content .table-style th {
    background: #eee;
}
article.content .table-style th,
article.content .table-style td {
    border: 1px solid #999;
    padding: 2px 5px;
}
article.content ul.menu-list {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
	background: none;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
}
article.content ul.menu-list > li {
	position: relative;
	margin: 0;
	padding: 10px 0;
	list-style: none;
	background: none;
	border-bottom: 1px solid #eee;
	display: flex;
	justify-content: space-between;
}
article.content ul.menu-list > li:nth-child(odd) {
	margin-right: 15px;
}
article.content ul.menu-list > li:nth-child(even) {
	margin-left: 15px;
}
article.content ul.menu-list > li em {
	position: relative;
	font-style: normal;
	display: inline-block;
}
article.content ul.menu-list > li strong {
	position: relative;
	display: inline-block;
	color: #d03f13;
	margin-left: 10px;
}
article.content .mcePxmGallery {
    position: relative;
    margin: 0 0px 0px;
    text-align: center;
}



section.news {
      margin-top: 100px;
    background: #fff;
    padding: 100px;
    width: 100%;
    float: left;
}
.newsTemplate section.news {
    margin: 0;
}
section.news #AllNews {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 30px;
}
section.news #AllNews figure.Item {
    position: relative;
    display: grid;
    grid-template-columns: 30px 1fr 30px;
    grid-template-rows: 30px 200px 1fr;
}
section.news #AllNews figure.Item .photo {
    position: relative;
    z-index: 2;
    grid-column: 1 / 3;
    grid-row: 1 / 3;
    pointer-events: none;
}
section.news #AllNews figure.Item .photo::after {
    content: '';
    z-index: 2;
    position: absolute;
    left: 5px;
    right: 5px;
    top: 5px;
    bottom: 5px;
    background: rgba(255,240,0,.8);
    opacity: 0;
    transition: opacity .6s;
    transition-delay: .4s;
}
section.news #AllNews figure.Item:hover .photo::after {
    opacity: 1;
    transition-delay: 0s;
}
section.news #AllNews figure.Item .photo.nophoto {
}
section.news #AllNews figure.Item:hover .photo.nophoto {
}
section.news #AllNews figure.Item .photo img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 1;
    object-fit: cover;
    height: 100%;
    width: 100%;
    display: block;
    transition: opacity 1.25s;
}
section.news #AllNews figure.Item:hover .photo img {
    opacity: .5;
}
section.news #AllNews figure.Item .photo i {
    position: absolute;
    z-index: 3;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    font-size: 1em;
    margin-top: -50px;
    opacity: 0;
    transition: margin-top .6s, opacity .6s;
    transition-delay: 0s;
}
section.news #AllNews figure.Item:hover .photo i {
    margin-top: 0px;
    opacity: 1;
    transition-delay: .4s;
}
section.news #AllNews figure.Item figcaption {
    grid-column: 2 / 4;
    grid-row: 2 / 4;
    z-index: 1;
    padding: 220px 30px 30px;
    background: #efefef;
}
section.news #AllNews figure.Item figcaption h3 {
    margin: 0 0 10px;
}
section.news #AllNews figure.Item figcaption h3 span {
    font-weight: bold;
}
section.news #AllNews figure.Item figcaption h3 span:last-child {
    font-weight: 300;
}
section.news #AllNews figure.Item figcaption p {
    margin-bottom: 20px;
}
section.news #AllNews figure.Item figcaption a.button {
    display: inline-block;
    text-decoration: none;
    padding: 10px 15px;
    background: #d03f13;
    color: #fff;
    font-size: .7em;
    text-transform: uppercase;
    letter-spacing: .1em;
    transition: background .4s;
}
section.news #AllNews figure.Item figcaption a.button::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 20;
}
section.news #AllNews figure.Item:hover figcaption a.button {
    background: #353535;
}
section.realisations {        text-align: center;
    position: relative;
    width: 100%;
    float: left;
    margin-top: 0px;}

section.realisations h2{
    text-align: center;
    margin: 0px 0px 40px 0px;
    font-size: 30px;
    color: #404f38;
    letter-spacing: 0px;
    text-transform: uppercase;
    /* font-family: 'allerbold'; */
    font-weight: bold;
    }
section.realisations #Gallery {
    position: relative;
    min-height: 0 !important;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-gap: 0px;
	    margin-top: 0px;

}


section.realisations #Gallery .highslideContainer {
    position: relative;
    float: none;
    padding: 0;
    opacity: 1 !important;
}
section.realisations #Gallery .highslideContainer .highslide {
    display: block;
    background: #000;
    position:relative
}




section.realisations #Gallery .highslideContainer .highslide:hover img {opacity: 1;}

section.realisations #Gallery .highslideContainer .highslide:hover{ }
section.realisations #Gallery .highslideContainer .highslide:hover::after {
    content: '';
    position: absolute;
    left: 0px;
    right: 0px;
    top: 0px;
    bottom: 0px;
    background: none;
}

section.realisations #Gallery .highslideContainer .highslide:hover::before {
    content: '';
    position: absolute;
    left: 0px;
	text-align:center;
    top: 0px;
	color:#fff;
	z-index:10;
	width:100%;
	height:100%;
	background:url(../images/plus.png) center center no-repeat rgba(64,79,56,0.2);
}

section.realisations #Gallery .highslideContainer .highslide img {
    width: 100%;
    height: 290px;
    object-fit: cover;
    object-position: center left;
    transition: object-position .6s;
}
section.realisations #Gallery .highslideContainer .highslide:hover img {
    object-position: center right;
}
section.realisations #Gallery .highslideContainer .highslide-caption {
    display: none;
    padding-top: 15px;
    font-family: 'Alegreya', serif;
    font-style: italic;
    line-height: 1.5em;
    font-size: 1.1em;
}
section.realisations #Gallery .highslideContainer .highslide-caption strong {
    font-family: 'Montserrat', sans-serif;
    color: #fff;
    text-transform: uppercase;
    font-weight: normal;
    font-style: normal;
    font-size: 1.1em;
}
footer.bottom {
background: #fff;
    /* text-align: center; */
    color: #404f38;
    font-size: 17px;
       padding: 90px 0px 25px;
    min-height: 326px;
    letter-spacing: 0px;
    width: 100%;
    float: left;
    line-height: 23px;
    /* font-family: 'allerbold'; */
    text-shadow: 0px 0px 0px #404f38
 
}


footer.bottom a{ color:#d03f13;text-decoration:none;}
footer.bottom a:hover {

color: #d03f13;}
footer.bottom label.modal-label {
    color: #d03f13;
text-decoration:none;
    transition: color .4s;
}
footer.bottom label.modal-label:hover {
    text-decoration: none;
    color: #d03f13; 
}


footer.bottom .phone-responsive {
    display: none;
}

.footerSlideButton1 {
    color: #d03f13!important;
}


footer.bottom .row{ margin:0px; padding-bottom:30px; border-bottom:1px solid rgba(64,79,56,0.3); width:100%;}
footer.bottom .col-md-4{ padding:0px;}
.bloc1{    position: relative;
    float: left;
    padding-left: 28px;
    background: url(../images/ligging.png) left 0px no-repeat;
    min-height: 30px;
}

.bloc2{    position: relative;
    float: left;
    margin-left: 65px;
    margin-right: 0px;
    margin-top: 0px;
    padding-left: 33px;
    background: url(../images/tel.png) left 3px no-repeat;
    min-height: 30px;
}
.bloc3{    position: relative;
    float: right;
    padding-left: 35px;
    background: url(../images/mail.png) left 7px no-repeat;
    min-height: 30px;
    margin-left: -64px;
    
}

footer.bottom .open .containerOpening {display: flex;justify-content: space-between;text-align: center;padding: 0px 50px;}
footer.bottom .open {
    font-size: 17px;
    line-height: 1.4em;
    letter-spacing: 0.5px;
    color: #404f38;
    text-align: center;
    padding: 38px 0px 0px;
}
footer.bottom .open h3 {
    margin: 5px auto 15px;
    /* font-weight: bold; */
}
footer.bottom .openingDay {
	font-family: 'allerbold';
    display: block;
    text-transform: uppercase;
	
}
footer.bottom  span.openingTime {
    display: block;
    /* padding-left:9px; */
    /* margin-left: 20px; */
    margin: 0 auto;
    position: relative;
    /*width: 70%;*/
}
footer.bottom  span.openingTime:after {/* content:"0"; */left:0;position:absolute;}

a#scrollTopBtn {
    border-radius: 0;
    background: #000;
    font-size: 2em;
    line-height: 1em;
  z-index:9;
}



.mobile-links i.fa-solid.fa-location-dot::before{
  content: "\f3c5";
}
section.mobile-links{
  margin-top:25px;
  text-align: center;
}
section.mobile-links a i{
  font-style:normal!important;
}

section.mobile-links a i.fa-solid.fa-phone::before,
section.mobile-links a i.fa-regular.fa-envelope::before,
section.mobile-links a i.fa-solid.fa-location-dot::before,
section.mobile-links a i.fa-brands.fa-whatsapp:before{
  font-weight: bold;
  font-family: 'Font Awesome 5 Free';
 /* -webkit-text-stroke: 1px #b59c56;
  -webkit-text-fill-color: transparent;*/
  text-decoration: none;
  width: 42px;
  height: 42px;
  position: relative;
  display: inline-block;
  font-size:22px;
}
section.mobile-links a i.fa-brands.fa-whatsapp:before{
  font-family: 'Font Awesome 5 Brands';
  font-weight: 400;
}



@media only screen and (max-width : 1230px) {.container{ width:100%!important;}section.services .services-boxes div[class*="box"] 
section.banner {
       padding: 27px 0px 27px;}
    section.services {
        padding: 30px 30px;
		    min-height: auto;
    }
   
    .homeTemplate main.content-wrapper {
        padding: 50px 0;
    }
    section.newsletter {
        padding: 50px 3% 50px 27%;
    }
    section.newsletter h3 {
        font-size: 3em;
    }
    section.news {
        margin-top: 50px;
        padding: 50px 30px;
    }
.sf-menu a {
     padding: 0px 7px 0px!important;}

	.homeTemplate  article.content header.page-title h1 {
    max-width: 89%;
    float: left;
}

section.services .services-boxes [class*="box"] {
    width:100%;
   
}
section.services .services-boxes {

    grid-gap: 65px;}


section.banner {
    position: relative;
    padding: 0px /*37px 73px 0px*/;
}
 article.content header.page-title h1 .sub-title {

    font-size: 40px;}

section.services .services-boxes [class*="box"] .img {
 
    height: auto;
}
.bloc3 {

    margin-left: -108px;
}

header.top nav.main-nav::before {

    width: 386px; display:none;}
	footer.bottom {

    font-size: 15px;}
	.bloc2 {

    margin-left:33px;}
	.bloc1 {

    margin-right: -15px;
}section.services .services-boxes .box h3 {
  
    margin-left: 61px;
  
    font-size: 16px;}
}

@media only screen and (max-width : 1199px) {
section.services .services-boxes [class*="box"] {
   width: 90%;
min-height: auto;
padding-bottom: 23px;
}

.sf-menu a {
   font-size: 15px!important;
    padding: 0px 8px 0px!important;}

	section.services .services-boxes {
 
    grid-gap: 15px;}
	section.services .services-boxes .box h2 {

    letter-spacing: 1.5px;}
	 article.content header.page-title h1 .sub-title {
   
    font-size: 30px;}
section.services .services-boxes .box h2 {
    font-size: 29px;}

}
@media only screen and (max-width : 1023px) {}
@media only screen and (max-width : 991.98px) {section.services .services-boxes .box h3 {
  
margin-left: 52px;
  
font-size: 22px;
  
}
footer.bottom .open {
    margin: 0 auto;
    letter-spacing: 0px;
    width: 259px;
    font-size: 15px;}
.openingLine {
    width: 205px;
    padding-left: 9px;
    padding-right: 9px;
    margin-bottom: 10px !important;
}
	.homeTemplate  article.content header.page-title h1 {
    max-width: 100%;
    float: left;
	    margin-bottom: 20px;
}
.homeTemplate  article.content header.page-title h1 {
       max-width: 100%;
    float: left;
}
	section.services .services-boxes div[class*="box"] .box-content h5 {

    font-size: 15px;}
    .topbar {
		letter-spacing:0.8px;

    }
    header.top.sticky nav.main-nav {
        display: none;
    }
    header.top.sticky nav.mobile-nav {
        display: block;
		    margin-top: 15px;
    }
	header.top.sticky .header-grid {
    height: 88px;}
    section.banner #HomeImages .highslideContainer .highslide img {
        height: auto;
    }
     

    section.newsletter {
        width: 90vw;
    }
    section.newsletter h3 {
        font-size: 2.4em;
    }
    section.news {
        padding: 50px 15px;
    }
    section.news #AllNews {
        grid-gap: 15px;
    }
    section.news #AllNews figure.Item {
        grid-template-columns: 20px 1fr 20px;
        grid-template-rows: 20px 200px 1fr;
    }
    section.news #AllNews figure.Item figcaption {
        padding: 210px 15px 15px;
    }
    section.news #AllNews figure.Item figcaption h3 {
        font-size: 1.8em;
    }
    footer.bottom .address {
        padding-left: 0;
        padding-right: 0;
        font-size: 14px;
    }


    header.top nav.main-nav {
        display: none;
    }
    header.top nav.mobile-nav {
    display: block;
    margin-top: 51px;
    padding: 5px 0px;
    position: relative;
    z-index: 10;
    float: right;
    }

    header.top nav.mobile-nav a{
		color: #404f38;
	}
	
	    section.services .services-boxes [class*="box"] {
    width: 338px;
    display: table;
    margin: 0 auto;
    float: none;
    height: auto;
    padding-bottom: 35px;
    margin-bottom: 40px;

    }.services-boxes .box h2 {
		margin-top:0px;
}

.services-boxes .box:hover h2 {
		margin-top:0px;
}

   footer.bottom .col-md-3{ width:100%;}
   .bloc1{ display:table; margin:0 auto; margin-bottom:10px; float:none; width:259px;    padding-left: 40px;}
   .bloc2{ display:table; margin:0 auto; margin-bottom:10px; float:none; width:259px;    padding-left: 40px;}
   .bloc3{ display:table; margin:0 auto; margin-bottom:10px; float:none; width:259px;    padding-left: 40px;}
 
       section.services .services-boxes {
        grid-template-columns: 1fr;
        grid-gap: 20px;
    }
	 article.content header.page-title h1 .sub-title {
    
    font-size: 28px;}
	section.banner .cta {

    font-size: 22px;
    letter-spacing: 0.5px;}
	section.act h3 {
    font-size: 16px;

    letter-spacing: 0.5px; text-align:center; background:none; padding-left:0px;}
	section.act .content-act figure.Item .date {
    float: none;

    display: table;
    margin: 0 auto;
}
section.act .button{float: none;

    display: table;
    margin: 0 auto;}
	section.act .content-act {
    position: relative;
    width: 100%; text-align:center;}
	section.act .photo-act {

    position: relative;
    width: 100%;
    height: 200px;

}
section.act .photo-act::before{ display:none!important;}
.slick-dots {

    text-align: center!important;
    padding-left: 0px!important;
}
section.act {
    position: relative;
    padding: 0px 0px 30px;}
	section.act .content-act{ margin-top:20px;}
	 article.content {
    padding: 0px 61px 40px;}
	footer.bottom .open .containerOpening {
    display: block;
	    padding: 0px 000px;

}
.openingLine {


    margin: 0 auto;
}
.logo {
    margin-top: 4px;
    float: left;
	    max-width: 125px;
}
.logo img{ max-width:100%;}
header.top .header-grid {
    display: block;
height: 143px;
}
}
@media only screen and (max-width : 767.98px) {
	section.realisations #Gallery {

    grid-template-columns: repeat(2, 1fr);

}
section.banner .cta .telr {
    display: block;
    
}
.topbar .contact-info span.phone{display:none;}
.topbar .contact-info .phone-responsive{display: inline-block;}
footer.bottom .phone-responsive{display: inline-block;}
footer.bottom .phone{display:none;}
span.txt-cta{display:none;}
.topbar .contact-info1 .phone-responsive{     display: inline-block;}
.topbar .contact-info1 .phone{ display:none;}
section.banner .cta .phone{ display:none;}
section.banner .cta .phone-responsive{ display:block;}
    .topbar {
  grid-template-columns: 1fr;
padding: 10px;
letter-spacing: 0.5px;
font-size: 14px;
    }
    .topbar .contact-info1,
    .topbar .center-topbar,
    .topbar .right-topbar {
        text-align: center;
    }

    section.banner #HomeImages {
        grid-template-columns: 1fr;
    }
    section.banner #HomeImages .highslideContainer .highslide img {
        min-height: 0;
        height: 200px;
    }
    section.services h4 {
        position: relative;
        padding: 0 0 15px;
    }
    section.services h4::before {
        content: none;
    }
    section.services h4::after {
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        margin: 0;
        bottom: 0;
    }
    section.services .services-boxes {
        grid-template-columns: 1fr;
        grid-gap: 0px;
    }
     {
        grid-template-columns: 20px 1fr 20px;
        grid-template-rows: 20px 200px auto;
    }
	2 {
        grid-template-columns: 20px 1fr 20px;
        grid-template-rows: 20px 200px auto;
}
     article.content {
        padding: 0px 20px 20px;
    }
     article.content header.page-title {
        padding: 5px 10px 10px;
		min-height: auto;
    }
    section.newsletter {
        padding: 20px;
        font-size: 1em;
    }
    section.newsletter h3 {
        font-size: 2em;
    }
    section.news #AllNews {
        grid-template-columns: 1fr;
    }
    footer.bottom {
        padding: 20px 0;
    }

	section.banner .cta {
    transform: translateX(-50%);    left: 50%;    width: 295px;}
	



header.top .logo img{ max-width: 100%;}
h1 {
       font-size: 20px;
}

.topbar .contact-info {
    float: none;
    text-align: center;
    margin: 0 auto;
	 display: table;
}
nav.language {

    font-size: 14px;
    margin: 0 auto;
    display: table;
	
}
.topbar .contact-info1 {
    float: none;
    text-align: center;
    margin: 0 auto;
	 display: table;
}
 article.content header.page-title h1 .sub-title {
font-size: 20px;    margin-top: 10px;}

}
@media only screen and (max-width : 480px) {
		    section.services .services-boxes [class*="box"] {
    width: 100%;
    display: table;
    margin: 0 auto;
    float: none;
    height: auto;
    padding-bottom: 35px;
    min-height: auto;
    margin-bottom: 40px;    padding-right: 7px;

    }
section.services .services-boxes .box h2 {
	font-size: 27px;
}
.sep {
    margin: 0px 0.5px;

    display: inline-block;


}section.realisations #Gallery {

    grid-template-columns: repeat(1, 1fr);}
	
	section.services .services-boxes [class*="box"] .img {
 
    width: 93%;}
	section.services .services-boxes [class*="box"]::before {
    
right: 7px;
    
left: 30px;
    
}
	}

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

/*--------------------------------------------------
## Superfish
--------------------------------------------------*/
.sf-menu, .sf-menu * {
	margin: 0;
	padding: 0;
	list-style: none;
}
.sf-menu {
    display: flex;
    justify-content: center;
}
.sf-menu li {
	position: relative;
}
.sf-menu ul {
	position: absolute;
	display: none;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	z-index: 99;
}
.sf-menu > li {
	/*float: left;*/
	display: inline-block;
}
.sf-menu li:hover > ul,
.sf-menu li.sfHover > ul {
	display: block;
}
.sf-menu a {
	display: block;
	position: relative;
}
.sf-menu ul ul {
	top: 0;
	left: 100%;
}
.sf-menu a {
padding: 0px 18px 0px;
    font-size: 17px;
    font-family: 'Roboto','allerregular', sans-serif;
    text-decoration: none;
    color: #373737;

    text-transform: none;
    line-height: 53px;
    height: 53px;
    letter-spacing: 1px;
    border-bottom: 2px solid rgba(64,79,56,0);
    margin-top: 31px;
}


.sf-menu li {
    padding: 0px 1px 0px 2px;

}
 .sf-menu li:first-child {
    padding-left: 0;
	border-left:none;
	background:none;
}
 .sf-menu li:last-child { padding-right:0px;}
.sf-menu > li > a:hover::before,
.sf-menu > li.sfHover > a::before, .sf-menu > li.selected > a::before, .sf-menu > li.active > a::before {
	opacity:1;
}

.sf-menu > li > a:hover,
.sf-menu > li.sfHover > a, .sf-menu > li.selected > a, .sf-menu > li.active > a {

	 color:#404f38;
border-bottom:2px solid rgba(64,79,56,1);
	
}
.sf-menu ul {
    background: #fff;
    width: 99.4%;
    text-align: center;
    margin-left: 0px;
	box-shadow:0px 0px 2px rgba(0,0,0,0.2);

}
.sf-menu ul li{	white-space:normal; border-bottom:1px solid rgba(0,0,0,0.3); background:none; padding:0px!important;}
.sf-menu ul li:not(:first-child) {

}
.sf-menu ul li:last-child { border-bottom:none;}
.sf-menu ul a {
    padding: 13px 13px!important;
	line-height:1em!important;
	height:auto!important;

    transition: color .4s, border-bottom-color .8s;
	color:#000!important;

	border-bottom:none!important;
	border-top:none!important;
	margin:0px;
}
.sf-menu ul a:before { display:none;}
.sf-menu ul a:hover,
.sf-menu ul .selected a, .sf-menu ul .active a {

}
.sf-menu ul a:hover,
.sf-menu ul .selected a, .sf-menu ul .active a {
	 color:#404f38!important;

		border-bottom:none!important;
	border-top:none!important;
}
.sf-menu li a:hover,
 .sf-menu li.selected a, .sf-menu li.active a {

}
/*** arrows (for all except IE7) **/
.sf-arrows .sf-with-ul {
}
/* styling for both css and generated arrows */
.sf-arrows .sf-with-ul::after {
    content: '\f107';
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    margin-left: 10px;
}
@media only screen and (max-width : 991.98px) {
  
}
/*--------------------------------------------------
## Mobile navigation
--------------------------------------------------*/
.site-overlay {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.3);
	opacity: 0;
	transform: translate3d(100%,0,0);
	transition: opacity 0.4s, transform 0s 0.4s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}
/* Close Button */
.close-button {
	width: 1.5em;
	height: 1.5em;
	position: absolute;
	right: 1em;
	top: 1em;
	overflow: hidden;
	text-indent: 1em;
	font-size: 0.75em;
	border: none;
	background: transparent;
	color: transparent;
}
.close-button::before,
.close-button::after {
	content: '';
	position: absolute;
	width: 3px;
	height: 100%;
	top: 0;
	left: 50%;
	background: #ccc;
	transition: background .4s;
}
.close-button::before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.close-button::after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.close-button:hover::before,
.close-button:hover::after {
	background: #fff;
}
/* Menu */
.menu-wrap {
	position: fixed;
	overflow: auto;
	top: 0;
	left: 0;
	z-index: 1001;
	width: 300px;
	height: 100%;
	background: #404f38;
	box-shadow: 0 0 20px rgba(0,0,0,.8);
	padding: 40px 20px 20px;
	transform: translateX(-100vw);
	transition: transform 0.4s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}
.mobile-menu {
	transform: translateX(500px);
}
.mobile-menu > ul,
.mobile-menu .language {
	display: block;
	transform: translateX(-1000px);
}
.mobile-menu,
.mobile-menu > ul,
.mobile-menu .language {
	transition: transform 0s 0.4s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}
.mobile-menu ul {
	list-style: none;
	margin: 0;
	padding: 0;
    font-size: .7em;
}
.mobile-menu ul ul {
    font-size: 1em;
	background: rgba(0,0,0,.15);
	margin-top: 5px;
	margin-bottom: -5px;
	border-top: 1px solid rgba(0,0,0,.2);
}
.mobile-menu li:first-child {
	border-top: none;
}
.mobile-menu > ul ~ ul li:first-child {
	border-top: 1px solid rgba(0,0,0,.2);
}
.mobile-menu li {
	padding: 5px 0;
	border-top: 1px solid rgba(0,0,0,.2);
}
.mobile-menu li li {
	position: relative;
	border-top: 1px solid rgba(0,0,0,.2);
}
.mobile-menu li li::before {
	content: '\f105';
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
	position: absolute;
	color: rgba(0,0,0,.5);
	z-index: 5;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
}
.mobile-menu a {
    text-transform: uppercase;
	padding: 5px 10px;
	display: block;
    color: #fff;
	text-decoration: none;
	transition: background .4s, color .4s;
	font-size: 16px;
}
.mobile-menu a:hover, .mobile-menu .selected > a, .mobile-menu .active > a {
	background: #fff;
	color: #404f38;
}
.mobile-menu li li a {
	padding-left: 25px;
}
/* Language menu */
.mobile-menu .language {
    text-align: center;
    margin-top: 15px;
}
.mobile-menu .language a {
    text-transform: uppercase;
	padding: 5px 10px;
	display: inline-block;
    color: #000;
	text-decoration: none;
	font-size: .7em;
}
/* Shown menu */
.show-menu .menu-wrap {
	transform: translate3d(0,0,0);
	transition: transform 0.8s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}
.show-menu .mobile-menu,
.show-menu .mobile-menu ul,
.show-menu .mobile-menu .language {
	transform: translate3d(0,0,0);
	transition: transform 0.8s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}
.show-menu .mobile-menu ul,
.show-menu .mobile-menu .language {
	transition-duration: 0.9s;
}
.show-menu .site-overlay {
	opacity: 1;
	transition: opacity 0.8s;
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
	transform: translate3d(0,0,0);
}


.gdpr_policy {line-height: 20px;margin: 10px 0;}
.contactForm .gdpr_policy label {
    width: 90%;
    margin: -5px 0 0 20px;
}
.contactForm .gdpr_policy input[type=checkbox] {
    position: absolute;
    margin-top: 5px;
}
form.contactForm .g-recaptcha{
    float: none;
}
@media only screen and (max-width : 480px) {
    .contactForm .gdpr_policy input[type=checkbox] {
        margin-top: 0px;
    }
/*submit btn*/
    .contact-submit,
    .contactForm .form-submit-button{
        width:100%;
    }
}
/*recaptcha*/
.contactForm .g-recaptcha {
    margin-bottom: 20px;
}
@media only screen and (max-width: 420px){
	.contactForm .g-recaptcha {
	    float: none;
	    margin-left: 0px;
	}
	.g-recaptcha * {
	    width: 100% !important;
	}
}


.ppcontrols ul {
	padding: 0 !important;
	margin: 0 !important;
	background: none !important;
	text-align: center !important;
	display: block !important;
}
.ppcontrols ul li {
	padding: 0 !important;
	margin: 0 !important;
	background: none !important;
	left: 0 !important;
}
.ppcontrols ul li::before {
	content: '' !important;
}
.video {
	float: right;
	margin: 0 0 20px 20px; 
	max-width: 480px;
	width: 100%;
	max-height: 270px;
}
.youtube-theme {
    background-size: cover !important;
    height: auto !important;
}
/*Responsive*/
@media only screen and (max-width : 660px) {
	.video {
        float: none;
        margin: 10px auto;
      clear: both;
	}
}
@media only screen and (max-width : 320px) {
	.video {
		height:164px;
	}
}
