body.frozen{
    overflow-y: hidden;
}

@media (min-width: 1800px) {
  .col-xxxl-5 {
    flex: 0 0 auto;
    width: 20%;
  }
}

a:hover{
    color:#555;
}

.blur-bright{
    position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 90;
	backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(6px);
    background-color:rgba(255,255,255,0.5);
    display:none;
}

.loading{
    position:fixed;
    top:0;
    left:0;
    right:0;
    bottom:0;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(6px);
    background-color:rgba(255,255,255,0.8);
    z-index: 999;
}
.loading img{
    position: absolute;
    top:50%;
    left:50%;
    width:30px;
    margin-left:-15px;
    margin-top:-15px;
}

.wrapper{
  overflow-x: hidden;  /* fallback */
  overflow-y: visible;
}
@supports (overflow: clip) {
  .wrapper{ overflow-x: clip; }
}

.container-fluid{
    max-width: 1300px;
}

h1,h5{
    font-size:2.2rem;
    font-weight:bold;
    line-height:1.2;
}
h2{
    font-size:2rem;
    font-weight:bold;
    line-height:1.2;
    margin:0 0 1rem 0;
}
h2 span{
    display:block;
    font-size:1.2rem;
    font-weight:normal;
    color:#aaa;
    margin-top:5px;
}
h3{
    font-size:1.5rem;
    font-weight:bold;
    line-height:1.2;
    margin:0 0 1rem 0;
}
a{
    color:#000;
}
p{
    font-size:1rem;
    color:#000;
    line-height:1.6;
}
.page-section ul li{
    list-style:disc;
}
.page-section ol li{
    list-style: decimal;
}
em{
    font-weight:600;
}
@media(min-width:992px){
    h1,h5{
        font-size:2.4rem;
    }
    h2{
        font-size:2.4rem;
    }
    h3{
        font-size:2rem;
    }
}
@media(min-width:1200px){
    h1,h5{
        font-size:2.8rem;
    }
    h2{
        font-size:2.8rem;
    }
    h3{
        font-size:2.2rem;
    }
}
.page-section h3{
    font-size:1.5rem;
    margin-top:2rem;
}

.top-bar{
    background-color: #ebcd87;
    width:100%;
    padding:0.3rem 1rem;
}
@media(min-width:992px){
    .top-bar{
        padding:0.3rem 2rem;
    }
    .top-bar .items a{
        font-size:1rem;
        line-height:1;
        padding:0 0 0 2rem;
        text-decoration:none;
    }
    .top-bar .items a:hover{
        color:#333;
    }
}

.header{
    padding:2rem 1rem;
    position: relative;
}
.header-container-page{
    background-color:#fdfaf3;
}
.header-page{
    
}
.header.fixed{
    position: fixed;
    z-index:10;
    top:0;
    left:0;
    right:0;
    width:100;
    /* backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    background-color:rgba(255,255,255,0.8); */
    background-color:#ebcd87;
    padding:1.2rem 1rem;
}
.header.fixed.when-nav-open{
    background-color:#ebcd87;
}
.header .logo{
    display:inline-block;
}
.header .logo img{
    max-width:200px;
}
.header .items{
    margin:0 0 0 3rem;
    position: relative;
    float: right;
    display:none;
}
.header .items a{
    display:inline-block;
    font-size:1.2rem;
    text-decoration:none;
    padding:1rem;
}
.header .items a:hover{
    color:#000;
}
.btn-open-nav{
    display:inline-block;
    position: relative;
    /* height:26px; */
}
.btn-open-nav span.bar{
    width:40px;
    height:2px;
    background-color:#000;
    display:block;
    margin:0 0 10px 0;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}
.btn-open-nav span.bar-3{
    margin:0;
}
@media(min-width:768px){
    .btn-open-nav .title{
        position: absolute;
        color:#000;
        left:calc(-100% - 15px);
    }
    .header .logo img{
        max-width:300px;
    }
    .btn-open-nav{
        padding-top:8px;
    }
}
@media(min-width:992px){
    .header{
        padding:2rem;
        z-index: 101;
        border-bottom:solid 1px #f8dfa5;
    }
    .header.fixed{
        z-index:101;
    }
    .header.fixed .items{
        display:inline-block;
    }
    .header.fixed .logo img{
        max-width: 200px;
    }
    .header.fixed .items a{
        padding:0 0 0 2rem;
    }
    .btn-open-nav{
        padding-top:18px;
    }
    .header.fixed .btn-open-nav{
        padding:0;
    }
    .header .items a{
        padding:1rem 0 0 3rem;
    }
}

.nav-mobile{
    position:fixed;
    right:-330px;
    top:0;
    bottom:0;
    background-color:#ebcd87;
    width:330px;
    z-index:100;
    -webkit-transition: all .1s ease-in-out;
    -moz-transition: all .1s ease-in-out;
    transition: all .1s ease-in-out;
}
.nav-mobile.visible{
    right:0;
}
.nav-mobile .items{
    padding:2rem 2rem;
}
.nav-mobile .items a{
    display:block;
    color:#000;
    text-decoration:none;
    font-size:1.4rem;
    padding:0.5rem 0;
}
.nav-mobile .sub-items .sub-item{
    font-size:1.1rem;
    padding:0 0 0.5rem 0;
}
.nav-mobile .sub-item .icon{
    display:inline-block;
    width:8px;
    height:8px;
    background-color:#000;
    transform: rotate(-45deg);
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    margin:0 5px 0 0;
    position:relative;
    top:-1px;
}
.btn-close-nav{
    display:block;
    position:absolute;
    top:2.5rem;
    right:1.6rem;
}
.btn-close-nav span.bar{
    width:40px;
    height:2px;
    background-color:#000;
    display:block;
    margin:0 0 10px 0;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.btn-close-nav span.bar-1{
     margin-top:10px;
}
.btn-close-nav span.bar-1.rotate{
    transform: rotate(45deg);
}
.btn-close-nav span.bar-2{
    margin-top:-12px;
}
.btn-close-nav span.bar-2.rotate{
    transform: rotate(-45deg);
}

.btn-open-nav-desktop span.bar-1.rotate{
    transform: rotate(45deg);
    margin-top:12px;
}
.btn-open-nav-desktop span.bar-3.rotate{
    transform: rotate(-45deg);
    margin-top:-12px;
}

.nav-mobile .socials{
    padding:0 0 1rem 2rem;
}
.nav-mobile .socials.bottom{
    position: absolute;
    bottom:0;
    left:0;
}
.nav-mobile .socials a{
    display:inline-block;
    color:#000;
    font-size:1.2rem;
    text-decoration: none;
    border:solid 1px #000;
    border-radius:50%;
    width:40px;
    height:40px;
    line-height:40px;
    text-align:center;
    margin:0 5px 0 0;
}
.nav-mobile .socials a.btn-item{
    border:none;
    border-radius:0;
    width:auto;
    margin:0 0 0 2rem;
}

.nav-desktop{
    position: fixed;
    top: -100%;
    left:0;
    right:0;
    background-color:#ebcd87;
    z-index: 100;
    padding:130px 2rem 3rem 2rem;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
}
.nav-desktop.visible{
    top:0;
}
.nav-desktop .items a{
    display:block;
    color:#000;
    font-size:1.5rem;
    text-decoration: none;
    padding:0.5rem 0;
    -webkit-transition: all .4s ease-in-out;
    -moz-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
}
.nav-desktop .items a:hover{
    padding-left:0.5rem;
}

.nav-desktop .sub-items .sub-item{
    font-size:1.2rem;
    padding:0 0 0.5rem 0;
}
.nav-desktop .sub-item .icon{
    display:inline-block;
    width:8px;
    height:8px;
    background-color:#000;
    transform: rotate(-45deg);
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    margin:0 5px 0 0;
    position:relative;
    top:-1px;
}
.nav-desktop .sub-item:hover .icon{
    transform: rotate(45deg);
}

.nav-desktop .socials{
    margin-top:3rem;
}
.nav-desktop .socials a{
    display:inline-block;
    color:#000;
    font-size:1.2rem;
    text-decoration: none;
    border:solid 1px #000;
    border-radius:50%;
    width:40px;
    height:40px;
    line-height:40px;
    text-align:center;
    margin:0 5px 0 0;
}
.nav-desktop .socials a:hover{
    background-color:#000;
    color:#ebcd87;
}
.nav-desktop .socials a.btn-item{
    border:none;
    border-radius:0;
    width:auto;
    margin:0 0 0 2rem;
}
.nav-desktop .socials a.btn-item i{
    margin-left:0.3rem;
    -webkit-transition: all .1s ease-in-out;
    -moz-transition: all .1s ease-in-out;
    transition: all .1s ease-in-out;
}
.nav-desktop .socials a.btn-item:hover{
    background-color:transparent;
    color:#000;
}
.nav-desktop .socials a.btn-item:hover i{
    margin-left:0.5rem;
}
.nav-desktop .tagline{
    font-size:1.2rem;
    line-height:1.4;
    margin:0 0 30px 0;
}

.hero{
    padding:3rem 0 3rem 1rem;
    background-color:#fdfaf3;
    position:relative;
}
.hero.when-header-fixed{
    padding-top:150px;
}
.hero::before{
    content:'';
    background-color:#fff;
    height:30%;
    width:100%;
    position: absolute;
    top:0;
    left:0;
    z-index: 0;
}
.hero h1{
    position:relative;
    z-index: 1;
}
.hero-slide{
    padding:0 5px;
    position: relative;
}
.icon-swipe{
    position: absolute;
    top:50%;
    left:50%;
    width:40px;
    margin-left:-20px;
    margin-top:-20px;
}
.hero-pic{
    display:block;
    width:280px;
    height:280px;
}
@media(min-width:768px){
    .hero .row{
        position:relative;
    }
    .hero h1{
        position:absolute;
        bottom:0;
    }
    .hero-carousel{
        width:660px;
    }
    .hero-pic{
        width:320px;
    }
    .hero .btn-row{
        margin-top:3rem;
    }
}
@media(min-width:992px){
    .hero{
        padding:3rem 1rem 3rem 2rem;
    }
    .hero-carousel{
        width:860px;
    }
    .hero-pic{
        width:420px;
        height:320px;
    }
    .hero .btn-row{
        margin:0;
        padding:4rem 3rem;
    }
}
@media(min-width:1200px){
    .hero-carousel{
        width:1260px;
    }
    .hero-pic{
        width:620px;
        height:500px;
    }
    .hero .btn-row{
        padding:3rem 4rem;
    }
}
@media(min-width:1400px){
    .hero-carousel{
        width:1660px;
    }
    .hero-pic{
        width:820px;
        height:700px;
    }
}


.btn-default{
    display:inline-flex;
    align-items: center;
    color:#000;
    text-decoration:none;
}
.btn-default.pill{
    background-color:#ebcd87;
    border-radius:50px;
    padding:1rem 2rem;
}
button.btn-default{
    border:none;
    background-color:#ebcd87;
    padding:1rem 2rem;
    border-radius: 50px;
    -webkit-transition: all .1s ease-in-out;
    -moz-transition: all .1s ease-in-out;
    transition: all .1s ease-in-out;
    font-weight: bold;
}
button.btn-default i{
    margin-left:10px;
}
button.btn-default:hover{
    background-color:#151515;
    color:#fff;
}
.btn-default .icon{
    width:12px;
    height:12px;
    background-color:#ebcd87;
    transform: rotate(-45deg);
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.btn-default.pill .icon{
    background-color:#000;
}
.btn-default .title{
    font-size:1rem;
    padding:0 0 0 0.8rem !important;
    position:relative;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    font-weight:bold;
}
/*
.btn-default .title::after{
    content:'';
    position:absolute;
    bottom:-5px;
    left:0.8rem;
    right:0;
    background-color:#000;
    height:1px;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
*/
@media(min-width:1200px){
    .btn-default:hover{
        color:#000;
    }
    .btn-default:hover .icon{
        background-color:#000;
        transform: rotate(45deg);
    }
    .btn-default .title::after{
        right:auto;
        width:calc(100% - 0.8rem);
    }
    .btn-default:hover .title::after{
        left:0.8rem;
        width:5px;
        background-color:#ebcd87;
    }
    .btn-default:hover .title{
        padding-left:1rem;
    }
    .btn-default.pill .title{
        font-size:1.2rem;
    }
}

.home-cats{
    padding:3rem 1rem;
    display:flex;
    align-items:center;
}
.home-cats > .container-fluid{
    width:100%;
}
.home-cats .list a{
    display:flex;
    color:#000;
    text-decoration:none;
    margin:0 0 1rem 0;
}
.home-cats .list a .icon{
    width:12px;
    height:12px;
    margin-top:6px;
    background-color:#000;
    transform: rotate(-45deg);
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}
.home-cats .list a .title{
    font-size:1rem;
    padding:0 0 0 0.8rem;
    position:relative;
    -webkit-transition: all .2s ease-in-out;
    -moz-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
    font-weight:bold;
}
.home-cats .list a .subtitle{
    display:block;
    color:#aaa;
    font-weight:normal
}
.photowall{
    padding:0 0 0 1.5rem;
}
.photowall.left{
    padding:0 1.5rem 0 0;
}
.photowall .section{
    display:inline-flex;
    width:100%;
}
.photowall .section-2{
    margin-top:-6px;
}
.photowall .pic{
    display:inline-block;
    padding:2px 0 2px 4px;
}
.photowall.left .pic{
    padding:2px 4px 2px 0;
}
.photowall .pic a{
    display:block;
    height:140px;
    width:100%;
    background-color:#eee;
}
.photowall .pic a:hover{
    opacity: 0.9;
}
.photowall .pic-1{
    width:40%;
}
.photowall .pic-2{
    width:30%;
}
.photowall .pic-3{
    width:30%;
}
.photowall .pic-4{
    width:30%;
}
.photowall .pic-5{
    width:50%;
}
.photowall .pic-6{
    width:20%;
}
@media(min-width:768px){
    .home-cats-container{
        position:relative;
    }
    .photowall{
        position:absolute;
        right:0;
        top:5rem;
        width:50%;
    }
    .photowall.left{
        left:0;
        right:auto;
    }
    .photowall .pic a{
        height:210px;
    }
}
@media(min-width:992px){
    .home-cats{
        padding:5rem 2rem 0 2rem;
    }
    .photowall{
        top:6rem;
    }
}
@media(min-width:1200px){
    .home-cats{
        height:800px;
    }
    .photowall .pic a{
        height:320px;
    }
    .home-cats .list a:hover{
        color:#ebcd87;
    }
    .home-cats .list a:hover .icon{
        background-color:#ebcd87;
        transform: rotate(45deg);
    }
    .home-cats .list a:hover .title{
        padding-left:1rem;
    }
}
@media(min-width:1400px){
    .home-cats{
        height:760px;
    }
    .home-cats{
        padding:6rem 2rem 0 2rem;
    }
}

.usp{
    padding:3rem 1rem;
    background-color:#fdfaf3;
}
.card-icon{
    text-align:center;
    margin:0 0 2rem 0;
}
.card-icon .icon{
    font-size:3rem;
    line-height:1;
    margin:0 0 15px 0;
}
.card-icon .title{
    font-weight:bold;
    font-size:1.5rem;
    line-height:1.2;
    margin:0 0 15px 0;
}
.card-icon .details{
    font-size:1rem;
    font-size:1.6;
}
@media(min-width:768px){
    .usp{
        margin:3rem 0;
    }
}
@media(min-width:992px){
    .usp{
        padding:3rem 2rem 3rem 2rem;
    }
}
@media(min-width:1200px){
    .card-icon{
        padding:0 2rem;
    }
}
@media(min-width:1400px){
    .usp{
        padding:6rem 2rem;
    }
}

.appointment .pic{
    height:280px;
    /*background-attachment: fixed;*/
    background-color:#eee;
}
.appointment .details{
    padding:3rem 1rem;
    text-align:center;
}
.appointment .details p{
    line-height:1.6;
}
.btn-secundary{
    background-color:#ebcd87;
    color:#000;
    text-decoration:none;
    padding:1rem 2rem;
    font-size:1rem;
    display:inline-block;
}
.btn-secundary:hover{
    background-color:#000;
    color:#ebcd87;
}
@media(min-width:768px){
    .appointment{
        display:flex;
        align-items:stretch;
    }
    .appointment .pic{
        width:50%;
        position:relative;
        height:auto;
        min-height:100%;
    }
    .appointment .details{
        position:relative;
        padding:0 3rem;
        width:50%;
        display:flex;
        flex-direction:column;
        justify-content:center;
    }
}
@media(min-width:992px){
    .appointment .details p{
    }
    .appointment .details{
        padding:0 3rem;
    }
}
@media(min-width:1200px){
    .appointment .pic{
        /* background-attachment: fixed; */
    }
    .appointment .details{
        padding:0 0 0 0;
    }
}

.insta-feed{
    padding:3rem 0;
}
.insta-container{
    position:relative;
    padding-left:120px;
}
.insta-slide{
    padding:0 0.2rem;
}
.insta-pic{
    display:block;
    width:200px;
    height:200px;
}
.insta-pic:hover{
    opacity: 0.9;
}
.insta-icon{
    position:absolute;
    top:50%;
    margin-top:-50px;
    left:30px;
}
.insta-icon a{
    text-decoration:none;
    display:block;
    text-align:center;
}
.insta-icon .icon{
    width:60px;
    height:60px;
    border-radius:50%;
    border:solid 1px #000;
    color:#000;
    line-height:60px;
    font-size:1.5rem;
    text-align:center;
    display:inline-block;
}
.insta-icon .title{
    display:block;
    font-size:0.9rem;
    line-height:1.2;
    color:#000;
    text-decoration:none;
    margin:0.5rem 0 0 0;
}
@media(min-width:768px){
    .insta-container{
        padding-left:140px;
    }
    .insta-carousel{
        margin-right:-90px;
    }
    .insta-pic{
        width:230px;
        height:230px;
    }
    .insta-icon{
        left:35px;
    }
}
@media(min-width:992px){
    .insta-feed{
        padding:6rem 0 3rem 0;
    }
    .insta-icon{
        left:calc(15% - 40px);
    }
    .insta-container{
        padding-left:30%;
    }
    .insta-pic{
        width:250px;
        height:250px;
    }
}
@media(min-width:1200px){
    .insta-pic{
        width:290px;
        height:290px;
    }
}
@media(min-width:1400px){
    .insta-pic{
        width:320px;
        height:320px;
    }
}

.testimonials{
    padding:3rem 0 4.5rem 0;
}
.testimonial{
    position:relative;
}
.testimonial .quote{
    text-align:center;
    padding:0 1rem;
}
.testimonial .author{
    text-align:center;
    font-weight:bold;
    margin:1rem 0 0 0;
}
.testimonial i{
    font-size:4rem;
    line-height:1;
    color:#ebcd87;
}
.slick-dots{
    bottom:-45px;
}
.slick-dots li{
    margin:0 0.4rem;
    width:10px;
}
.slick-dots li.slick-active{
    margin:0 0.8rem 0 0.4rem;
}
.slick-dots li button{
    padding:0;
    width:auto;
}
.slick-dots li button:before{
    font-size:10px;
    opacity: 1;
    color:#ccc;
    content:'';
    width:10px;
    height:10px;
    background-color:#ccc;
    border-radius:50%;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.slick-dots li.slick-active button:before{
    background-color:#ebcd87;
    opacity: 1;
    width:20px;
    border-radius:5px;
}
@media(min-width:992px){
    .testimonials{
        padding:7.5rem 0 7.5rem 0;
    }
}
@media(min-width:1200px){
    .testimonial .quote{
        font-size:1.5rem;
    }
}

footer{
    background-color:#fdfaf3;
    padding:3rem 1rem;
}
.footer-cta{
    font-size:1.3rem;
    line-height:1.2;
    font-weight:bold;  
}
.footer-cta p{
    font-size:1.2rem;
    line-height: 1.4;
    font-weight:normal;
    margin:1rem 0 2rem 0;
}
.footer-cta a{
    color:#000;
    display:block;
    text-decoration:none;
    font-size:1.5rem;
}
.footer-cta a span{
    position: relative;
}
.footer-cta a span::after{
    content:'';
    position:absolute;
    bottom:-5px;
    background-color:#ebcd87;
    width:100%;
    height:5px;
    left:0;
    -webkit-transition: all .1s ease-in-out;
    -moz-transition: all .1s ease-in-out;
    transition: all .1s ease-in-out;
}
.footer-cta a:hover span::after{
    bottom:0px;
}
footer .line{
    position: relative;
    margin:0 0 1rem 0;
}
footer .line i{
    position:absolute;
    top:0;
    left:0;
    font-size:1rem;
    line-height:1.6;
    opacity: 0.2;
}
footer .line .details{
    padding:0 0 0 30px;
    color:#000;
    font-size:1rem;
    line-height:1.6;
}
footer .line .details a{
    color:#000;
    text-decoration:none;
    display:inline-block;
}
footer .line .details a.btn-social{
    padding:0 1rem 0 0;
}
@media(min-width:768px){
    .footer-cta{
        font-size:1.8rem;
    }
}
@media(min-width:992px){
    footer{
        padding:5rem 2rem;
    }
    .footer-cta{
        font-size:2.4rem;
    }
}

.bar-bottom{
    background-color:#ebcd87;
    color:#000;
    padding:1rem;
    font-size:0.9rem;
    line-height:1.2;
}
.bar-bottom a{
    color:#000;
    text-decoration:none;
    display:inline-block;
}
.bar-bottom .menu a,
.bar-bottom .menu span{
    display:inline-block;
    padding:0 0.2rem;
}

.page-header{
    padding:2rem 1rem;
    background-color:#fdfaf3;
}
.page-header.when-header-fixed{
    padding-top:135px;
}
.crumbs{
    margin:0 0 1rem 0;
}
.crumbs a,
.crumbs span,
.crumbs i{
    display:inline-block;
    color:#aaa;
    font-size:0.9rem;
}

.page-intro{
    padding:2rem 1rem;
}
.page-intro .main-pic{
    height:210px;
    background-color:#eee;
}
.main-video {
  position: relative;
  width: 100%;
  /* kies je eigen hoogte; kan ook met min-height of via breakpoint */
  height: 210px;
  overflow: hidden;
}
.main-video .yt-bg {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;     /* basismaat: vult container */
  height: 100%;    /* basismaat: vult container */
  transform: translate(-50%, -50%); /* we schalen via JS */
  transform-origin: center center;
  pointer-events: none; /* niet aanklikbaar als background */
  border: 0;
}
.video-overlay-content{
    position: absolute;
    bottom:0;
    left:0;
    right:0;
    background: #000000;
    background: linear-gradient(0deg, rgba(0, 0, 0, 1) 0%, rgba(237, 221, 83, 0) 100%);
    height:20%;
}
.video-overlay-content a{
    position: absolute;
    bottom:15px;
    left:0;
    right:0;
    text-align:center;
    color:#aaa;
    text-decoration:none;
}
.video-overlay-content a:hover{
    color:#ccc;
}
@media(min-width:768px){
    .page-intro{
        padding:2rem;
    }
    .page-intro .main-pic{
        height:390px;
    }
}
@media(min-width:992px){
    .main-video {
        height:410px;
    }
}
@media(min-width:1200px){
    .page-intro .main-pic{
        min-height:500px;
        height:100%;
    }
    .page-intro p{
        padding-right:10%;
    }
    .main-video {
        height:500px;
    }
}

.pic-rows{
    padding:2rem 0;
}
.pic-row{
    padding:0 0 2rem 0;
}
.pic-row .main-pic{
    height:290px;
    background-color:#eee;
}
.pic-row .details{
    padding:2rem;
}
.pic-row .container-fluid{
    max-width:1600px;
}
@media(min-width:768px){
    .row-pics{
        padding:4rem 0;
    }
    .pic-row .main-pic{
        height:340px;
    }
    .pic-row{
        padding:0;
    }
}
@media(min-width:992px){
    .pic-row .main-pic{
        height:410px;
    }
    .pic-row .details{
        padding:0;
    }
}
@media(min-width:1200px){
    .pic-row .main-pic{
        height:510px;
    }
}

.page-section{
    padding:2rem 1rem;
}
@media(min-width:992px){
    .page-section{
        padding:4rem 2rem;
    }
}

.page-contact .line{
    margin:0 0 1rem 0;
}
.page-contact .line i{
    color:#ebcd87;
    font-size:1.5rem;
    margin:0 0 0.5rem 0;
}
.page-contact .line .details{
    color:#000;
}
.page-contact .line .details a{
    color:#000;
    display:inline-block;
    text-decoration:none;
}
.page-contact .line .details .btn-social{
    padding:0 0.5rem;
}
@media(min-width:768px){
    .page-contact .line{
        display:flex;
    }
    .page-contact .line i{
        width:40px;
        display:inline-flex;
    }
    .page-contact .line a:hover{
        color:#ebcd87;
    }
    .page-contact .line .details{
        width:calc(100% - 40px);
        display:flex;
        flex-direction: column
    }
    .page-contact .line .details .btn-social{
        display:block;
        margin:0 0 1rem 0;
        padding:0;
    }
    .page-contact .with-border{
        position:relative;
    }
    .page-contact .with-border::after{
        content:'';
        position:absolute;
        top:40%;
        right:0;
        width:1px;
        height:60px;
        margin-top:-30px;
        background-color:#ebcd87;
    }
}

/*

	FORM

-------- */
label {
	color: #777;
}

.form-row {
	margin: 0 0 15px 0;
}

.form-group {
	margin: 0 0 1rem 0;
}

.form-control:focus,
.form-check-input:focus,
.form-select:focus {
	border-color: #ebcd87 !important;
	box-shadow: 0 0 0 .25rem rgba(235, 205, 135, 0.25);
}

.form-check-input:checked {
	background-color: #ebcd87;
	border-color: #ebcd87;
}
.form-check-input:checked[type=checkbox] {
	background-color: #ebcd87;
	border-color: #ebcd87;
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10l3 3 6-6'/%3E%3C/svg%3E");
}

.form-floating>label {
	color: #555;
}

.form-label {
	margin-bottom: .2rem;
	font-weight: bold;
}

textarea::placeholder {
	color: #aaa !important;
	/* Change the placeholder color */
	opacity: 1;
	/* Ensures the placeholder is fully opaque */
	font-size: 1rem;
}

textarea:-ms-input-placeholder {
	/* Internet Explorer 10+ */
	color: #aaa !important;
}

textarea::-ms-input-placeholder {
	/* Microsoft Edge */
	color: #aaa !important;
}

input:focus-visible {
	outline-offset: 0px;
	outline-color: #ebcd87;
	/* Change this to your desired color */
	outline-width: 2px;
	/* Adjust the outline width if needed */
	outline-style: solid;
	/* Ensure the outline has a visible style */
}

.form-check-label a {
	color: #777;
	line-height: 1.2;
}

.form-floating>.form-control, .form-floating>.form-control-plaintext{
	border:solid 1px #ccc;
	border-radius:5px;
}
.map iframe{
    width:100%;
    height:210px;
    display:block;
}
@media(min-width:768px){
    .map iframe{
        height:400px;
    }
}

.divider{
    height:310px;
    position:relative;
}
.divider::after{
    position:absolute;
    content:'';
    bottom:0;
    left:0;
    right:0;
    height:80%;
    background: #000000;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.8) 0%, rgba(237, 221, 83, 0) 100%);
    z-index: 1;
}
.divider .tagline{
    color:#fff;
    position: absolute;
    bottom:2rem;
    left:2rem;
    right:2rem;
    font-size:2rem;
    font-weight:bold;
    z-index: 2;
    line-height:1.2;
    max-width:1400px;
    margin:0 auto;
}
@media(min-width:768px){
    .divider .tagline{
        font-size:2.5rem;
        bottom:3rem;
        left:3rem;
        width:50%;
        margin:0;
    }
}
@media(min-width:992px){
    .divider{
        height:500px;
        background-attachment: fixed;
    }
    .divider .tagline{
        font-size:3rem;
    }
}
@media(min-width:1200px){
    .divider .tagline{
        max-width:1200px;
        margin:0 auto;
        width:100%;
        font-size:3.5rem;
    }
    .divider .tagline span{
        display:block;
        width:50%;
    }
}

.photowall-2 .pic a{
    display:block;
    height:130px;
    background-color:#eee;
}
@media(min-width:768px){
    .photowall-2 .pic a{
        height:200px;
    }
}
@media(min-width:1200px){
    .photowall-2 .pic a{
        height:240px;
    }
}

.container-filters{
    max-width: 100%;
    padding:0;
}
.filters {
    display: flex;
    gap: 0.5rem;             /* space between items */
    overflow-x: auto;        /* enable horizontal scrolling */
    -webkit-overflow-scrolling: touch; /* smooth scroll on iOS */
    white-space: nowrap;     /* prevent wrapping */
    padding:0 0 0 2rem;
}

.filters .filter {
    flex: 0 0 auto;          /* keep items their width, don't shrink */
    display: inline-block;
    background-color:#eee;
    color:#555;
    padding:0.5rem 1rem;
    border-radius:20px;
    text-decoration:none;
}
.filters .filter:hover{
    background-color:#e5e5e5;
}
.filters .filter.active{
    background-color:#ebcd87;
    color:#000;
}
@media (min-width: 768px) {
    .container-filters{
        max-width:1400px;
    }
    .filters {
        display:block;
        overflow-x: visible;   /* geen scroll */
        white-space: normal;   /* items mogen terugbreken */
        padding:0;
    }
    .filters .filter {
        flex: initial;         /* reset naar standaard */
        margin:0.6rem 0.15rem 0 0.15rem;
    }
}

.container-fluid.full{
    max-width:100%;
    padding:0;
}
.card-pic{
    display:block;
    text-decoration:none;
    color:#000;
}
.card-pic:hover{
    color:#ebcd87;
    opacity: 0.9;
}
.card-pic span{
    display:block;
}
.card-pic .pic{
    height:180px;
    background-color:#eee;
}
.card-pic .title{
    padding:0.5rem;
    text-align:center;
}
@media(min-width:768px){
    .card-pic .pic{
        height:240px;
    }
    .card-pic .title{
        font-size:1.2rem;
        font-weight:bold;
    }
}
@media(min-width:1200px){
    .card-pic .pic{
        height:380px;
    }
}

.project-main-pic{
    display:block;
    height:240px;
}
.project-details .location{
    font-weight:bold;
    margin:0 0 1rem 0;
}
.project-pic{
    display:block;
    margin:0 0 1rem 0;
}
.project-pic img{
    width:100%;
}
.btn-cat{
    display:inline-block;
    padding:0.5rem 1.2rem;
    background-color:#ebcd87;
    color:#000;
    text-decoration:none;
    border-radius:30px;
    margin:0 3px 8px 0;
}
.btn-cat:hover{
    color:#000;
    opacity: 0.9;
}
.btn-cat.active{
    background-color:#151515;
    color:#ebcd87;
}
.btns-cats{
    margin-top:2rem;
}
@media(min-width:768px){
    .project-main-pic{
        height:310px;
    }
    .project-details{
        position: sticky;
        top:6rem;
        position: -webkit-sticky; /* Safari */
        align-self: flex-start;   /* avoids flex stretch issues in some browsers */
    }
    .project-details.is-sticky{
        max-height: calc(100vh - 6rem);
        overflow-y: auto;
        overscroll-behavior: contain;
        -webkit-overflow-scrolling: touch;
        padding-bottom:2rem;
    }
}

.nav-projects .list{
  --cell: 4px;                /* dot size */
  --gap: 2px;                 /* space between dots */
  --step: calc(var(--cell) + var(--gap)); /* vertical/horizontal step = 6px */
  width: 40px; height: 40px; overflow: hidden; display: inline-block;
}
.nav-projects .list a, .list span{ display:block; }
.nav-projects .list a{ position:relative; padding:10px; }
.nav-projects .list a span{
  width: calc(var(--cell)*3 + var(--gap)*2);  /* 3 cols + 2 gaps */
  height: calc(var(--cell)*3 + var(--gap)*2); /* 3 rows visible */
  overflow:hidden; position:relative;
}

/* Base dot */
.nav-projects .list a i{
  position:absolute; display:block;
  width: var(--cell); height: var(--cell);
  background:#151515;
  transition: transform 320ms cubic-bezier(.2,.8,.2,1), background 200ms ease, opacity 320ms ease;
  will-change: transform;
}

/* Column positions (0, step, 2*step) */
.nav-projects .list a i.c1{ left: 0; }
.nav-projects .list a i.c2{ left: calc(var(--step) * 1); }
.nav-projects .list a i.c3{ left: calc(var(--step) * 2); }

/* Initial row positions:
   b1 = 0, b2 = step, b3 = 2*step, b4 starts just below (3*step) */
.nav-projects .list a i.b1{ transform: translateY(calc(var(--step) * 0)); }
.nav-projects .list a i.b2{ transform: translateY(calc(var(--step) * 1)); }
.nav-projects .list a i.b3{ transform: translateY(calc(var(--step) * 2)); }
.nav-projects .list a i.b4{ transform: translateY(calc(var(--step) * 3)); opacity: 0; } /* hidden below */

/* Hover: scroll everything up by one step.
   Top row (b1) exits, b2->row1, b3->row2, b4 appears at row3. */
.nav-projects .list a:hover i{ background:#151515; }
.nav-projects .list a:hover i.b1{ transform: translateY(calc(var(--step) * -1)); opacity: 0; }
.nav-projects .list a:hover i.b2{ transform: translateY(calc(var(--step) * 0));  opacity: 1; }
.nav-projects .list a:hover i.b3{ transform: translateY(calc(var(--step) * 1));  opacity: 1; }
.nav-projects .list a:hover i.b4{ transform: translateY(calc(var(--step) * 2));  opacity: 1; }

/* (Optional) tiny per-column stagger for a belt feel */
.nav-projects .list a:hover i.c1{ transition-delay: 0ms; }
.nav-projects .list a:hover i.c2{ transition-delay: 20ms; }
.nav-projects .list a:hover i.c3{ transition-delay: 40ms; }

/* Accessibility */
@media (prefers-reduced-motion: reduce){
  .list a i{ transition: none; }
}

.nav-projects{
    display:flex;
    margin-top:15px;
    position:fixed;
    bottom:-75px;
    left:0;
    right:0;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(6px);
    background-color:rgba(255,255,255,0.8);
    padding:1rem 0.5rem;
    z-index:89;
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
}
.nav-projects.show{
    bottom:0;
}
.nav-projects .ctrl{
    color:#555;
    display:inline-block;
    text-decoration: none;
    text-align:center;
    width:40%;
}
.nav-projects .ctrl:hover{
    color:#000;
}
.nav-projects .list{
    width:20%;
    display:inline-block;
    text-align:center;
    padding-top:10px;
}
.nav-projects .list a{
    padding:0;
}
.nav-projects .list a span{
    display:inline-block;
    margin:0 auto;
}
.nav-projects .ctrl .title{
    display:block;
    font-size:12px;
    color:#aaa;
}
.nav-projects .ctrl .name{
    font-size:14px;
}
@media(min-width:768px){
    .nav-projects{
        width:500px;
        margin-left:-250px;
        left:50%;
        right:auto;
        border-radius:50px;
        -webkit-box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1); 
	    box-shadow: 0px 0px 15px 0px rgba(0,0,0,0.1);
    }
    .nav-projects.show{
        bottom:30px;
    }
}

.fancybox__thumbs .carousel__slide .fancybox__thumb::after{
    border-color:#ebcd87;
}

.page-grid,
.page-blog{
    border-bottom:solid 1px #eee;
}
.grid-item{
    margin:0 0 30px;
}
.grid-item .image{
    display:block;
    height:210px;
    position:relative;
}
.grid-jobs .grid-item .image{
    height:310px;
}
.grid-item .image:hover{
    opacity: 0.9;
}
.grid-item .label{
    background-color:#ebcd87;
    font-size:1rem;
    position:absolute;
    top:15px;
    padding:0.5rem 1rem;
    border-radius:30px;
    left:-15px;
    color:#000;
}
.grid-item .title{
    display:block;
    text-decoration:none;
    color:#000;
    font-size:1.5rem;
    font-weight:bold;
    line-height:1.3;
    padding:1rem;
    text-align:center;
}
.grid-jobs .grid-item .title{
    text-align:left;
}
.grid-jobs .grid-item .title span{
    display:block;
    font-weight:normal;
    font-size:1rem;
    color:#000;
    line-height:1.6;
    margin:1rem 0 0 0;
}
.grid-item .title:hover{
    color:#ebcd87;
}
@media(min-width:992px){
    .grid-jobs .grid-item .image{
        height:390px;
    }
}
@media(min-width:1200px){
    .grid-item .image{
        height:280px;
    }
    .grid-jobs .grid-item .image{
        height:490px;
    }
    .grid-item .title{
        font-size:2rem;
    }
}

.page-blog h1{
    font-weight:bold;
    font-size:2.2rem;
    line-height:1.2;
    margin:0 0 1rem 0;
}
.page-blog h2{
    font-weight:bold;
    font-size:1.5rem;
    line-height:1.2;
    margin:0 0 1rem 0;
    color:#000;
}
.page-blog h3,
.page-blog h4,
.page-blog h5,
.page-blog h6{
    font-weight:bold;
    font-size:1.2rem;
    line-height:1.2;
    margin:0 0 1rem 0;
}
.page-blog em{
    font-style:italic;
}
.page-blog .image{
    display:block;
    height:210px;
    position:relative;
    margin:0 0 1rem 0;
}
.page-blog.page-job .image{
    height:330px;
}
.page-blog .label{
    display: inline-block;
    margin:0 0 1rem 0;
    background-color:#ebcd87;
    font-size:1rem;
    padding:0.5rem 1.5rem;
    border-radius:30px;
    color:#000;
}
@media(min-width:768px){
    .page-blog h1{
        font-size:2.2rem;
    }
    .page-blog .image{
        height:320px;
    }
    .page-blog.page-job .image{
        height:520px;
    }
}
@media(min-width:1200px){
    .page-blog .image{
        height:420px;
    }
}
@media(min-width:992px){
    .page-blog .sticky-col{
        position: sticky;
        position: -webkit-sticky; /* Safari */
        top: 6rem;
        align-self: flex-start;
    }
}
@media(min-width:992px){
    .page-blog.page-job .image{
        position: sticky;
        position: -webkit-sticky; /* Safari */
        top: 6rem;
    }
    .page-blog.page-job .col-lg-5{
        align-self: flex-start;
    }
}

.mobile-fix-bottom{
    position: fixed;
    bottom:0;
    left:0;
    right:0;
    background-color:#ebcd87;
    padding:0;
    -webkit-box-shadow: -1px 0px 15px -5px rgba(0,0,0,0.5); 
    box-shadow: -1px 0px 15px -5px rgba(0,0,0,0.5);
    transform: translateY(0);
    transition: transform .3s ease;
}
.mobile-fix-bottom.is-hidden{
    transform: translateY(105%);
}
.mobile-fix-bottom a{
    display:inline-block;
    font-size:1.1rem;
    text-align:center;
    text-align:center;
    line-height:1;
    text-decoration:none;
    padding:1.2rem 0.5rem;
}
.mobile-fix-bottom a .icon{
    display:inline-block;
    width:8px;
    height:8px;
    background-color:#000;
    transform: rotate(-45deg);
    -webkit-transition: all .3s ease-in-out;
    -moz-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    margin:0 5px 0 0;
    position:relative;
    top:-1px;
}
.mobile-fix-bottom .btn-2-container{
    border-left:solid 1px #f8dfa5;
}

.showroom-image{
    height:280px;
}
@media(min-width:768px){
    .showroom-details{
        padding:1rem;
    }
    .showroom-image{
        height:100%;
    }
}
@media(min-width:992px){
    .showroom-details{
        padding:2rem;
    }
    .showroom-details h2{
        font-size:2.2rem;
    }
}
@media(min-width:1200px){
    .showroom-details{
        padding:5rem;
    }
}

.section-yellow{
    background-color:#fdfaf3;
}

.faq-item{
    border-bottom:solid 1px #ddd;
    padding:0 0 1rem 0;
}
.faq-item .question{
    font-size:1.2rem;
    font-weight:bold;
    line-height:1.3;
    cursor: pointer;
}
.faq-item .answer{
    display:none;
}

ul li{
    list-style: disc;
    margin:0 0 0.5rem 0;
}
ul li::marker{
    color:#ebcd87;
}
.p-no-padding-right p{
    padding-right:0;
}

.geo-locs{
    padding:2rem 1rem 0 1rem;
    display:none;
}
.geo-locs a{
    display:block;
    text-decoration: none;
    font-size:1rem;
    line-height:1.4;
    padding:2px 0;
}
ul li a{
    text-decoration: none;
}