/*
Wireframe: 25
Version: 1.0
Update: 2019.09.26
*/

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

/*--------------------------------------------------
# Fonts
--------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Arvo:wght@400;700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Gloria+Hallelujah&display=swap');
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: local('Lato Regular'), local('Lato-Regular'),
       url('../fonts/lato-v16-latin-regular.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/lato-v16-latin-regular.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: local('Lato Bold'), local('Lato-Bold'),
       url('../fonts/lato-v16-latin-700.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/lato-v16-latin-700.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: local('Lato Light'), local('Lato-Light'),
       url('../fonts/lato-v16-latin-300.woff2') format('woff2'), /* Chrome 26+, Opera 23+, Firefox 39+ */
       url('../fonts/lato-v16-latin-300.woff') format('woff'); /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/*--------------------------------------------------
# General
--------------------------------------------------*/
body {
    background: #fff;
    color: #000;
    font-family: 'Lato', sans-serif;
    font-size: 16px;
    line-height: 1.4em;
    letter-spacing: .01em;
}
a {
    color: #f07713 ;
    text-decoration: underline;
    transition: all .4s;
}
a:active, a:hover, a:focus {
    color: #f07713;
    text-decoration: none;
}

.image-right {
    float: right;
    margin: 0 0 10px 15px;
}
.image-left {
    float: left;
    margin: 0 15px 10px 0;
}
 
h1, h2, h3, h4, h5, h6 {
  line-height: 1.35em;
  text-transform:none;
  font-family: 'Cormorant Garamond', serif;
  font-weight: bold;
}
h1 {
    font-size: 30px;
   color: #000;
}
h2 {
    font-size: 25px;
   color:#000000 ;
}
h3 {
    font-size: 36px;
   color: #000;
}
h4 {
    font-size: 20px;
   color:#000000 ;
}
h5 {
    font-size: 18px;
     color: #000;
}
h6 {
    font-size: 16px;
   color:#000000 ;
}

hr {
	border-color: #666;
}
.fullsite {
    overflow: hidden;
}

header.top .inner-wrapper {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
header.top {
    position: relative;
    background: #fff;
    box-shadow: 0 0 5px #f07713;
    align-items: center;
}
header.top.sticky.sticky-appear {
    transform: translateY(0);
}
header.top.sticky {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;
    transform: translateY(-100%);
    transition: transform .6s;
}
header.top.sticky.sticky-appear .logo {
    display: none;
}
header.top.sticky.sticky-appear nav.main-nav {
    position: relative;
    display: table;
    margin: 15px auto;
}
header.top nav.main-nav {
    position: relative;
}
header.top nav.mobile-nav {
    display: none;
    font-size: 2em;
}
header.top nav.mobile-nav a {
    color: #f07713;
}
header.top .logo {
    position: relative;
    padding: 10px 0;
}
.banner .img {
    width: 100%;
    height: 100%;
    position: absolute;
    background: url(../images/img-slide.jpg) 50% 20% / cover no-repeat;
    background-attachment: fixed;
    z-index: 1;
}
.banner .cta h4 {
    font-size: 3.6em;
    line-height: 1em;
    font-weight: normal;
    text-transform: none;
    margin: 0;
    white-space: nowrap;
    color: #fff;
}
.banner .cta span {
    position: relative;
    display: block;
    font-size: 2em;
    line-height: 1em;
    letter-spacing: 0.1em;
    font-weight: 300;
    text-align: right;
    color: #fff;
}
.banner {
    position: relative;
    background: #fff;
    background-size: cover;
}
body.pageTemplate.lang-nl .banner {
    min-width: 200px;
    position: relative;
    background: #fff;
    min-height: 315px;
}
.homeTemplate .banner {
    height: calc(90vh - 100px);
}
.banner #slideshow,
.banner .NewsItemBackground {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
}
.banner .NewsItemBackground {
    background: no-repeat center;
    background-size: cover;
}
.banner #slideshow.diy-slideshow .prev,
.banner #slideshow.diy-slideshow .next {
    border-radius: 0;
    width: 30px;
    line-height: 30px;
    padding: 0;
    text-align: center;
    font-size: .8em;
    transform: none;
}
.banner #slideshow.diy-slideshow .prev {
    left: auto;
    top: auto;
    bottom: 5px;
    right: 36px;
} 
.banner #slideshow.diy-slideshow .next {
    top: auto;
    bottom: 5px;
    right: 5px;
}
.banner .cta {
    position: absolute;
    left: 0;
    bottom: 17%;
    text-align: center;
    right: 0;
    margin: 0 auto;
    display: table;
    z-index: 3;
}
.banner .cta .slogan {
    position: relative;
    color: #fff;
    transform: translateX(-100vw);
    animation: slide-in .5s forwards;
}
.banner .cta .slogan h4 {
    font-size: 2.8em;
    line-height: 1em;
    font-weight: normal;
    text-transform: uppercase;
    margin: 0;
    white-space: nowrap;
    position: relative;
}
.banner .cta .slogan p {
    position: relative;
    display: block;
    font-size: 1.5em;
    line-height: 1em;
    letter-spacing: 0.1em;
    font-weight: 300;
    text-align: right;
}
.banner .cta .slogan p:before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 55%;
    height: 1px;
    background: #fff;
    display: block;
}

.banner .cta a {
    position: relative;
    display: inline-block;
    text-transform: none;
    text-decoration: none;
    background: #fff;
    border-radius: 10px;
    color: #fff;
    letter-spacing: .1em;
    padding: 15px 27px;
    font-size: 18px;
    transition: box-shadow .4s;
    margin: 30px 0 0;
    background: linear-gradient(to top, #d69657 0%, #d69657 50%, #fff 50%, #fff 100%);
    background-size: 100% 200%;
    background-position: 0 100%;
    transition: background 400ms ease-in-out;
}
.banner .cta a:hover {
  color: #d69657;
  background-position: 0 0;
}

.banner .cta a strong {
    position: relative;
    font-weight: normal;
}
.banner:before {
    content: "";
    position: absolute;
    background: #00000085;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 2;
}
main.content-wrapper {
    position: relative;
    padding: 50px 0;
}
main.content-wrapper header.page-title {
    position: relative;
    margin-bottom: 25px;
}
main.content-wrapper header.page-title h1 {
    margin: 0;
    font-size: 33px;
    line-height: 1.5em;
    font-weight: bold;
    color: #000;
}
main.content-wrapper header.page-title h1 span.sub-title {
    font-size: 1.5em;
    color: #f07713;
}
 .image-right, .image-left {
    box-shadow: 10px -10px 0 -1px #fff, 10px -10px 0 0 #f07713;
}
main.content-wrapper header.page-title h1 .first-word::before {
    content: '';
    display: inline-block;
    width: 50px;
    height: 1px;
    background: #f07713;
    margin-right: 10px;
    vertical-align: middle;
}

.pageTemplate span.first-word {
    display: none;
}
article.content::after {
    content: '';
    display: block;
    clear: both;
}
article.content p {
    margin: 0 0 20px;
}
article.content ul {
    list-style: outside disc;
    margin-left: 0;
    padding: 0;
}
article.content ul li {
    position: relative;
    left: 1em;
    margin-left: 1em;
    padding-right: 1em;
}
article.content ul ul {
    list-style-type: circle;
}
article.content img.image-right, article.content img.image-left {
    box-shadow: 10px -10px 0 -1px #fff, 10px -10px 0 0 #000;
}
article.content .table-style {
    position: relative;
}
article.content .table-style th {
    background: #f2f2f2;
}
article.content .table-style th,
article.content .table-style td {
    border: 1px solid #ccc;
    padding: 2px 5px;
}
article.content #AllNews {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 40px;
}
article.content #AllNews figure.Item {
    position: relative;
}
article.content #AllNews figure.Item .photo {
    position: relative;
    height: 250px;
    margin-bottom: 20px;
    border: 1px solid #fdadac;
}
article.content #AllNews figure.Item .photo.nophoto {
    background: url(../images/news-nophoto.jpg) center no-repeat;
    background-size: cover;
}
article.content #AllNews figure.Item .photo img {
    position: relative;
    z-index: 1;
    object-fit: cover;
    height: 100%;
    width: 100%;
    display: block;
    transition: transform .4s;
}
article.content #AllNews figure.Item:hover .photo img {
    transform: translate(-10px, 10px);
}
article.content #AllNews figure.Item .photo h3 {
    z-index: 10;
    position: absolute;
	left: 5px;
	right: 5px;
	top: auto;
	bottom: 5px;
    background: rgba(0,0,0,.25);
    color: #fff;
    margin: 0;
	text-align: center;
	text-transform: uppercase;
	font-size: 1.8em;
	line-height: 1.5em;
	font-family: 'Cormorant Garamond', serif;
	box-shadow: 0 0 10px rgba(0,0,0,.2);
    transition: background .4s, transform .4s;
}
article.content #AllNews figure.Item:hover .photo h3 {
    background: #fdadac;
    transform: translate(-10px, 10px);
}
article.content #AllNews figure.Item figcaption span.button {
    display: inline-block;
    font-family: 'Lato', sans-serif;
	font-size: 1em;
    font-weight: normal;
	letter-spacing: 0.1em;
	background: #241c1c;
	line-height: 1em;
	text-transform: uppercase;
    color: #fff;
    padding: 10px 30px;
    transition: background .4s;
}
article.content #AllNews figure.Item:hover figcaption span.button {
    background: #fdadac;
}
article.content #AllNews figure.Item > a {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 10;
}
article.content section.newsletter {
    position: relative;
    background: #57af30;
    color: #7f6666;
    padding: 30px;
    margin-top: 35px;
}
article.content section.newsletter h2 {
    font-weight: 300;
    letter-spacing: 0.1em;
    margin-top: 0;
}
article.content section.newsletter a {
    color: #7f6666;
}
article.content section.newsletter a:hover {
    color: #302727;
}
/********** contact **************/
section.contact {
    position: relative;
    padding: 60px 0;
    background: #914d2a;
    text-align: center;
    color: #000;
}
section.contact h3 {
    font-size: 35px;
    text-transform: uppercase;
    font-weight: 700;
    margin: 0 0 20px;
    line-height: 1em;
}
section.contact h2 {
    float: left;
    position: relative;
    margin: 0;
    font-size: 2.7em;
    line-height: 1.1em;
    letter-spacing: 0;
    color: #000;
}
section.contact .container > div {
    position: relative;
}
.bloc-contact {
    display: grid;
    grid-template-columns: auto auto;
    justify-content: space-between;
    align-items: center;
}
.bloc-contact p:last-child {
    margin: 0;
}
section.contact .container > div a {
    font-size: 16px;
    line-height: 1;
    text-shadow: none;
    padding: 20px 45px;
    display: inline-block;
    text-decoration: none;
    color: #000;
    font-weight: 400;
    text-transform: uppercase;
    box-shadow: none;
    margin: 0;
    border-radius: 10px;
    transition: all 0.6s;
    background: #ab8c73;
    background: linear-gradient(to top, #f07713 0%, #f07713 50%, #fff 50%, #fff 100%);
    background-size: 100% 200%;
    background-position: 0 100%;
    transition: background 400ms ease-in-out;
}
section.contact .container > div a:hover {
    background-position: 0 0;
}

/*********** boxes ***************/

section.boxes {
    position: relative;
    padding: 60px 0;
    background: #914d2a;
}
section.boxes .boxes-wrapper {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-gap: 25px;
    text-align: center;
}
section.boxes .boxes-wrapper [class*="box"] {
    position: relative;
    background: #d69657;
    padding: 25px 35px;
    margin-left: auto;
    font-size: 0.9em;
    color: #fff;
    overflow: hidden;
    transition: background .4s;
    width: 100%;
}
section.boxes .boxes-wrapper [class*="box"]:hover {
    background: #fff;
    color: #000;
}
section.boxes .boxes-wrapper [class*="box"] h3 {
    position: relative;
    text-transform: none;
    font-size: 40px;
    color: #fff;
    margin: 0;
    margin-bottom: 15px;
}
section.boxes .boxes-wrapper [class*="box"]:hover h3 {
    color: #d69657;
}
section.boxes .boxes-wrapper [class*="box"] p {
    margin: 0;
}
section.boxes .boxes-wrapper [class*="box"] p:not(:last-child) {
    /* position: relative; */
}
section.boxes .boxes-wrapper [class*="box"] a {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    font-size: 0;
    z-index: 10;
}
section.boxes .boxes-wrapper [class*="box"]::before {
    content: '';
    position: relative;
    z-index: 1;
    display: block;
    background: center no-repeat;
    width: 200px;
    height: 200px;
    margin: 0 auto 20px;
}
section.boxes .boxes-wrapper .box01::before {
    background-image: url(../images/bx1.jpg);
	background-size: cover;
}
section.boxes .boxes-wrapper .box02::before {
    background-image: url(../images/bx2.jpg);
	background-size: cover;
}

section.boxes .boxes-wrapper [class*="box"] .circle {
    content: '';
    position: absolute;
    left: 50%;
    top: 125px;
    transform: translate(-50%, -50%);
    display: block;
    width: 200px;
    height: 200px;
    transition: transform 1s;
}
section.boxes .boxes-wrapper [class*="box"]:hover .circle {
    transform: translate(-50%, -50%) scale(10);
}
/****/
section.parallax {
    position: relative;
    background: url(../images/parallax.jpg) no-repeat center fixed;
    height: 450px;
}
/******** prestations ************/
section.prestations .box .icon-bx {
    height: 80px;
    display: table;
    margin: auto;
    width: 80px;
    transition: all .6s;
}
section.prestations .box.bx1 .icon-bx {
    background: url(../images/icon1.png) no-repeat center;
}
section.prestations .box.bx2 .icon-bx {
    background: url(../images/icon2.png) no-repeat center;
}
section.prestations .box.bx3 .icon-bx {
    background: url(../images/icon3.png) no-repeat center;
}
section.prestations {
    position: relative;
    padding: 50px 0;
}
section.prestations p {
    margin: 0;
}
section.prestations img {
    display: table;
    margin: auto;
    height: auto;
    width: 70%;
    max-width: 100%;
}
section.presentations h5 {
    margin: 0 0 10px;
    text-transform: uppercase;
}
section.presentations h4 {
    margin: 25px 0;
    color: #fff;
}
section.prestations h3 {
    text-align: center;
    margin-bottom: 57px;
    font-size: 34px;
}
section.prestations .box h3 {
    text-align: center;
    font-weight: 700;
    font-size: 25px;
    color: #46351d;
    letter-spacing: 0.1em;
    margin: 18px 0 0;
}

section.presentations h4 {
    margin: 25px 0;
}
.presentations-grid {
    display: grid;
    grid-template-columns: repeat(4,1fr);
    text-align: center;
}

/*********** box etapes *************/
section.etapes {
    position: relative;
    padding: 50px 0;
    text-align: center;
    background: #eee;
}
section.etapes h3 {
    margin: 0;
    padding: 30px 0 40px;
    position: relative;
    font-size: 30px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #f07713;
}
section.etapes h3 strong {
    font-size: 40px;
    font-weight: 700;
    line-height: 1.1em;
    letter-spacing: 0;
    color: #f07713;
}
section.etapes h3:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    width: 70px;
    height: 6px;
    background: #f07713;
    margin: auto;
}
section.etapes .projects-grid {
    display: grid;
    grid-template-columns: repeat(5,1fr);
    grid-gap: 0;
}
section.etapes .projects-grid .etape {
    padding: 0 30px 80px;
    position: relative;
    border-bottom: 2px solid #000;
}
section.etapes .projects-grid .etape h2 {
    margin: 0 0 0;
    font-weight: 500;
    font-size: 70px;
    color: #46351d;
    line-height: 1.1em;
    transition: all .4s;
}
section.etapes .projects-grid .etape h4 {
    font-weight: 500;
    color: #000000;
    font-size: 25px;
    margin: 10px 0 30px;
    line-height: 1.1em;
}
section.etapes .projects-grid .etape a {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    font-size: 0;
    outline: none;
}
section.etapes .projects-grid .etape p {
    margin: 0;
}
section.etapes .projects-grid .etape:before {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    height: 21px;
    width: 2px;
    background: #000;
    margin: auto;
		transition:all .4s;
}
section.etapes .projects-grid .etape:hover:before {
    height: 32px;
}
section.etapes .projects-grid .etape:after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    bottom: 21px;
    height: 26px;
    width: 26px;
    background: #f07713;
    margin: auto;
    border-radius: 50%;
		transition:all .4s;
}
section.etapes .projects-grid .etape:hover:after {
    bottom: 32px;
}
/*********** photo-spacer ****************/
section.photo-spacer {
    position: relative;
       height: 450px;
    /*background: url(../images/photo-spacer.jpg) no-repeat center fixed;*/
}
section.photo-spacer img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
/***************section.openinghours************/
section.openinghours {
    background: #e6c29f;
    padding: 50px 0;
    color: #914d2a;
    position: relative;
}
section.openinghours p {
    text-align: center;
    color: #fff;
}
section.openinghours h6 {
    color: #57af30;
    font-size: 0.8em;
    line-height: 1em;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin: 0;
    font-family: 'Lato', sans-serif;
}
section.openinghours h6::before {
    content: '';
    display: inline-block;
    width: 50px;
    height: 1px;
    margin-right: 10px;
    background: #000;
    vertical-align: middle;
}
section.openinghours h4 {
    font-size: 2.7em;
    line-height: 1em;
    text-align: center;
    margin-bottom: 60px;
    text-transform: none;
    color: #e89507;
}
section.openinghours .containerOpening {
    display: flex;
    justify-content: center;
    margin-top: 12px;
}
section.openinghours .containerOpening .openingLine {
    flex-grow: 1;
    flex-basis: 0;
    position: relative;
    padding: 24px 2px;
    margin: 5px;
    border: 2px solid #e89507;
    text-align: center;
}
section.openinghours .opening-grid {
    display: grid;
    grid-template-columns: auto auto;
    grid-gap: 41px;
}


section.openinghours .opening-Taodrutilburg-nl p {
    text-align: center;
    margin-top: 44px;
    font-size: 18px;
}
section.openinghours .containerOpening .openingLine .openingDay {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.25em;
    text-transform: uppercase;
    font-weight: bold;
    display: block;
    margin-bottom: 10px;
    color: #914d2a;
}
section.openinghours .containerOpening .openingLine .openingTime {
    color: #e89507;
    font-size: 14px;
}

section.contactform {
    padding: 50px 0 100px;
}
section.contactform h6 {
    color: #999;
    font-size: 0.8em;
    line-height: 1em;
    letter-spacing: 0.2em;
    text-transform: uppercase;
    margin: 0;
    font-family: 'Lato', sans-serif;
    text-align: center;
}
section.contactform h6::before {
    content: '';
    display: inline-block;
    width: 50px;
    height: 1px;
    margin-right: 10px;
    background: #57af30;
    vertical-align: middle;
}
section.contactform h4 {
    font-size: 2.2em;
    line-height: 1em;
    color: #f07713;
    text-align: center;
    margin-bottom: 30px;
}
/************ footer ******************/

footer.bottom {
    position: relative;
    background: #000;
    padding: 40px 0;
    color: #fff;
}
footer.bottom h3 {
    font-size: 1.8em;
    color: #f07713;
}
footer.bottom .logo-footer img {
    max-width: 100%;
}
footer.bottom .logo-footer {
    margin: 86px 0 0;
}
.googlemaps_v2 label.modal-label {
    color: #f07713;
}
.googlemaps_v2 label.modal-label:hover {
    text-decoration: none;
}
/******/
footer.bottom .footer-wrapper {
    display: grid;
    grid-template-columns: repeat(2,1fr);
    grid-gap: 10%;
}
footer.bottom .footer-wrapper p {
    margin: 0;
}
footer.bottom .footer-mail a {

    text-decoration: underline;
}
footer.bottom .footer-mail a:hover {
text-decoration: none;
}
footer.bottom .footer-right {
    float: right;
}
/*****/
.footer-small {
    margin: 50px 0 0;
    text-align: center;
    font-size: 16px;
    color: #fff;
    font-weight: 400;
}
.footer-small .nav-footer a {
    color: #000000;
    text-decoration: none;
    display: inline-block;
}
.footer-small .nav-footer a:hover {
    color: #000;
}
.footer-small .nav-footer span.sep {
    padding: 0 15px;
}

.fa-map-marker:before {
    content: "\f041 " !important;
}

.googlemaps_v2 .modal__inner {
    width: 100% !important;
    height: 100% !important;
}
footer.bottom .social {
    display: table;
    margin: 15px auto 0;
}
footer.bottom .social a.networks_facebook {
    position: relative;
    display: block;
    height: 48px;
    width: 48px;
    font-size: 0;
    transition: all 0.6s;
    background: url(../images/icon-fb.png) no-repeat;
    border-radius: 0;
}
footer.bottom .social a.networks_facebook:hover {
	transform: scale(0.9);
}
p.twkolom {
    display: flex;
}
footer.bottom i {
    padding: 5px 5px 0 0;
}
#news-popup {
    transform: translateX(-100vw);
    animation: slide-in .5s forwards;
}
#news-popup .popup-wrapper .popup-content .news-item-title {
    text-transform: uppercase;
    font-weight: normal;
    color: #3b3b3b;
    border-color: #57af30;
}

a#scrollTopBtn {
    border-radius: 0;
    right: 13px;
    background: #000 !important;
    border: 1px solid #f07713;
}
a#scrollTopBtn:hover {
    background: #f07713 !important;
}

@keyframes slide-in {
    100% {
    	transform: translateX(0%); 
    	opacity: 1;
    }
}
@-webkit-keyframes slide-in {
    100% {
    	-webkit-transform: translateX(0%); 
    	opacity: 1;
    }
}


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

/*--------------------------------------------------
## Superfish
--------------------------------------------------*/
.sf-menu, .sf-menu * {
	margin: 0;
	padding: 0;
	list-style: none;
}
.sf-menu li {
	position: relative;
}
.sf-menu ul {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 99;
    background: rgba(255,255,255,.9);
    box-shadow: 0px 0px 10px rgba(0,0,0,.2);
    padding: 0 !important;
    min-width: 100%;
    text-align: center;
    margin-top: 20px;
}
.sf-menu ul::before {
    content: '';
    width: 0px;
    height: 0px;
    border-left: 5px solid transparent;
    border-right: 5px solid transparent;
    border-bottom: 5px solid #fff;
    position: absolute;
    top: -5px;
    left: 50%;
    transform: translateX(-50%);
}
.sf-menu {
    display: flex;
}
.sf-menu > li {
    flex: 1 1 auto;
    padding: 10px 0;
}
.sf-menu > li:not(:first-child) {
    margin-left: 50px;
}
.sf-menu li:hover > ul,
.sf-menu li.sfHover > ul {
	display: block;
}

header.top.sticky .sf-menu a {
	display: block;
}
.sf-menu a {
    display: block;
    position: relative;
    letter-spacing: 0;
    padding-left: 0;
    text-transform: none;
    font-size: 18px;
    text-decoration: none;
    color: #000;
    text-align: center;
    font-weight: 600;
}
.sf-menu > li > a::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 0;
    height: 1px;
    display: block;
    background: #f07713 ;
    transition: width .4s;
}
.sf-menu li a:hover, .sf-menu li.sfHover > a, .sf-menu li.selected > a, .sf-menu li.active > a {
    color: #f07713;
}
.sf-menu li {
	white-space: nowrap;
}
.sf-menu ul li:not(:first-child) {
    margin-top: 5px;
}
.sf-menu ul li a {
    padding: 5px 10px;
    color: #707070;
    line-height: 2em;
    letter-spacing: normal;
    border: none;
    transition: background .4s, color .4s;
}
.sf-menu li a:hover::before, .sf-menu li.sfHover > a::before,
.sf-menu li.selected > a::before, .sf-menu li.active > a::before {
    width: 100%;
}
.sf-menu ul li a:hover, .sf-menu ul li.sfHover > a, .sf-menu ul li.selected > a, .sf-menu ul li.active > a {
    background: #2b9ab1;
    color: #fff;
}

/* styling for both css and generated arrows */
.sf-arrows .sf-with-ul::after {
    content: '\f0d7';
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    margin-left: 5px;
    transition: color .4s;
}
.sf-arrows > li > .sf-with-ul:focus:after,
.sf-arrows > li:hover > .sf-with-ul::after,
.sf-arrows > .sfHover > .sf-with-ul::after,
.sf-arrows > .selected > .sf-with-ul::after,
.sf-arrows > .active > .sf-with-ul::after {
}

@media only screen and (max-width : 1024px) {
    .sf-menu > li:not(:first-child) {
        margin-left: 15px;
    }
}

/*--------------------------------------------------
## 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: rgba(57,57,57, 1);
	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 {
	display: block;
	transform: translateX(-1000px);
}
.mobile-menu,
.mobile-menu > ul {
	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: .75em;
    letter-spacing: 0.2em;
}
.mobile-menu ul ul {
    font-size: 1em;
	background: rgba(0,0,0,.15);
	margin-top: 5px;
	margin-bottom: -5px;
	border-top: 1px solid rgba(255,255,255,.2);
}
.mobile-menu li:first-child {
	border-top: none;
}
.mobile-menu li {
	padding: 5px 0;
	border-top: 1px solid rgba(255,255,255,.2);
}
.mobile-menu li li {
	position: relative;
	border-top: 1px solid rgba(255,255,255,.2);
}
.mobile-menu li li::before {
	content: '\f105';
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
	position: absolute;
	color: rgba(255,255,255,.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;
}
.mobile-menu a:hover, .mobile-menu .selected > a, .mobile-menu .active > a {
    background: #f07713;
}
.mobile-menu li li a {
	padding-left: 25px;
}
/* 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 {
	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 {
	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);
}

.topbalk {
	display: block;
	background: #fff  ;
	position: relative;
	padding: 5px 0;
	color: #000;
	width: 100%;
	height: 30px;
	z-index: 10;
	overflow: hidden;
}
.topbalk .links {
	float: left;
}
.topbalk .links a{
	text-decoration: none;	
	color: #000;
}
.topbalk .links a:last-child{
	margin-left: 15px;
}
.topbalk .rechts {
	float: right;
}

@media only screen and (max-width : 767.98px) {
	.topbalk {
	  font-size: 13px;
	}
	.topbalk .links {
		width: 87%;
	}
	.topbalk .rechts{
		width: 13%;
	}
	.topbalk .rechts .rbalk .fas {
		margin-top: 5px;
		cursor: pointer;
		padding-right: 5px;
	}
	.topbalk .rechts .rbalk {
		right: -155px;
		background: #fff;
		display: grid;
		position: absolute;
		grid-template-columns: 20px 1fr;
		line-height: 22px;
		height: 24px;
		transition: right .4s;
	}
	.topbalk .rechts .rbalk.zichtbaar {
		right: 34px;
	}	
}

.sf-menu li#menu_12 a{
  background: #000;
  color: #fff;
  padding: 2px 15px;
}
.whatsappfix {
display: block;
position: fixed;
height: 70px;
width: 70px;
bottom: 80px;
right: 0px;
font-size: 20px;
}
/***************************************/
@media only screen and (max-width : 1350px) {
    article.content .content-inner {
        width: calc(970px / 2 - 15px);
    }
    footer.bottom .contact .inner {
        width: calc(970px / 2 - 15px);
    }
      header.top nav.mobile-nav {
        display: block;
    }
    header.top nav.main-nav {
        display: none;
    }
  header.top.sticky.sticky-appear nav.main-nav {
    display: none;

}
header.top.sticky.sticky-appear nav.mobile-nav {
    display: table;
    margin: 15px auto;
}
}
@media only screen and (max-width : 1199px) {
  footer.bottom h3 {
    font-size: 1.7em;
    color: #f07713;
}
section.boxes .boxes-wrapper [class*="box"] h3 {
    font-size: 35px;
}
  .img-home .image-right {
    float: none;
    margin: 0 auto 30px;
    display: table;
}
  section.etapes .projects-grid .etape h4 {
    font-size: 21px;
}
  
}
@media only screen and (max-width : 991px) {
  .banner .cta h4 {
    white-space: initial;
    font-size: 3.3em;

}
  section.etapes .projects-grid {
    grid-template-columns: repeat(3,1fr);
}
  section.boxes .boxes-grid {
    width: 100%;
}
  section.boxes:before {
    display: none;
}
  footer.bottom h3 {
    font-size: 1.3em;
}
section.contact h2, section.openinghours h4, section.boxes h2, .banner .cta .slogan h4 {
    font-size: 2.4em;
    text-align: left;
}
  section.prestations img {
    width: 90%;
}
section.boxes {
    padding: 50px 0;
}
main.content-wrapper header.page-title h1 {
    font-size: 28px;
    line-height: 1.5em;

}
    main.content-wrapper {
        padding: 50px 0;
    }
section.boxes .boxes-wrapper {
    width: auto;
    grid-template-columns: repeat(2, 1fr);
}
	.banner .cta .slogan {
		font-size: .81em;
	}
    section.openinghours .containerOpening {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    }
    section.contactform {
        padding: 50px 0;
    }
  .image-right {
    float: none;
    margin: 0 auto 40px;
    display: table;
}
  .presentations-grid {
    display: grid;
    grid-template-columns: repeat(1,1fr);
    grid-gap: 40px;
}
}
@media only screen and (max-width : 767px) {
  .banner .cta .slogan p {
    font-size: 2em;
}
section.boxes .boxes-grid {
    grid-template-columns: repeat(1, 1fr);
    width: 75%;
    margin: auto;
}
section.contact .container > div {
    grid-template-columns: auto;
    grid-gap: 30px;
    justify-content: center;
}
p.twkolom {
    display: table;
    margin: 10px auto;
}
  section.etapes .projects-grid {
    grid-template-columns: repeat(1,1fr);
}
  section.prestations img {
    width: 41%;
    margin: 25px auto;
}
  section.contact h2, section.openinghours h4, section.boxes h2, .banner .cta .slogan h4 {
    text-align: center;
}
  section.etapes .projects-grid .etape h4 {
    margin: 10px 0 0;
}
  footer.bottom i {
    padding: 0 0 13px;
    display: block;
}
  
  .bloc3 ul {
    display: table;
    margin: 0 auto;
    text-align: left;
}
    .image-right,
    .image-left {
        float: none;

        max-width: 100%;
        height: auto;
        display: block;
    }
.banner .cta .slogan {
    font-size: .75em;
}
    article.content #AllNews {
        grid-template-columns: 1fr;
        grid-gap: 50px;
    }
  
    section.boxes .boxes-wrapper {
        grid-template-columns: 1fr;
    }
    section.openinghours .containerOpening {
        margin-top: 30px;
    }
    footer.bottom .phone {
        display: none;
    }
    footer.bottom .phone-responsive {
        display: inline-block;
    }
  section.openinghours .opening-grid {
    display: grid;
    grid-template-columns: auto;
    grid-gap: 33px;
}
  footer.bottom .footer-grid {
    display: grid;
    grid-template-columns: auto;
    grid-gap: 26px;
justify-content: inherit;
}
  footer.bottom {
    text-align: center;
}
.banner .cta h4 {
    font-size: 40px;
    line-height: 1em;
}
  .banner .cta span {
    font-size: 20px;
    line-height: 1em;
}
section.contactform h4 {
    font-size: 30px;
    line-height: 1em;
}
.footer-menu {
    margin: auto;
    display: table;
    text-align: left;
}
  section.prestations img {
    width: 70%;
}
}
@media only screen and (max-width : 480px) {
  section.contact h2, section.openinghours h4, 
  section.boxes h2, .banner .cta .slogan h4 {
    font-size: 1.5em;
}
  section.boxes .boxes-grid {
    width: auto;

}
  main.content-wrapper header.page-title h1 span.sub-title {
    font-size: 1.4em;
}
  .banner .cta h4 {
    font-size: 27px;
}
  .banner .cta .slogan p:before {
    display: none;
}
  .banner .cta .slogan p {
    text-align: center;
}
  
	section.openinghours h4 {
    font-size: 30px;

    margin-bottom: 24px;

}
  section.boxes .boxes-wrapper [class*="box"] h3 {
    font-size: 30px;
}
  header.top .logo img {
    max-width: 100%;
}
.banner .cta .slogan h4:before {
	display: none;
}
  
  main.content-wrapper header.page-title h1 {
    margin: 0;
    font-size: 1.5em;
    line-height: 1.5em;
    font-weight: bold;
    color: #000;
}
.logo {
    width: 220px;
}
	.banner .cta .slogan h4 {
		white-space: break-spaces;
	}
	.banner .cta .slogan span::before {
		position: relative;
		left: 0;
		right: 0;
		top: 50%;
		width: calc(100% - 30px);
		margin: 5px auto;
	}
	.banner .cta .slogan span {
		text-align: center;
	}
	.diy-slideshow figure img {
	  object-position: -150px;
	}  
}