html, body{
    background: #EFECEC;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-family: 'Open Sans', sans-serif;
    height:100%;
    padding:0px;
    margin:0px;}

body{
    -webkit-font-smoothing: subpixel-antialiased;
    -webkit-font-smoothing: antialiased;
    min-height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    background-size: cover;                                                                                     
    -o-background-size: cover;}

.wrapper{   
    -webkit-flex-grow: 1;
    -webkit-flex-shrink: 0;
    -webkit-flex-basis: auto;
    -webkit-box-flex: 1; 
        -ms-flex: 1 0 auto; 
            flex: 1 0 auto;
    position: relative;}

    .flex{
        display: -webkit-box;   
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;}

.kolommen2{
    margin-bottom: 30px;
    display: flex;
    justify-content: space-between;
    width: 100%;}

    .kolommen2 > div{
        width: calc(50% - 30px);}

    .kolommen2 p{
        column-count: 1!important;
        column-gap: 0;}

img{
    margin-bottom: 30px;
    max-width: 100%; 
    height: auto;}

.textkolom-2 p{
    flex-wrap: wrap;
    -webkit-perspective:1;
    -webkit-column-count: 2;
    -moz-column-count: 2;
    column-count: 2;
    -webkit-column-gap: 60px;
    -moz-column-gap: 60px;
    column-gap: 60px;}

.leesmeer{
    padding: 15px 20px;
    color: #401d48;
    display: table;
    margin-bottom: 30px;
    border:2px solid #401d48;}

    .leesmeer + .leesmeer{
        margin-left: 15px;}

    .leesmeer:hover{
        padding: 15px 20px;
        color: #FFF;
        text-decoration: none;
        background: #401d48;
        border:2px solid #401d48;}

.leesmeer span.material-icons, .leesmeer i.material-icons{
    margin-left: 15px;
    vertical-align: middle;}



/* -------------------- NAVIGATIE -------------------- */
.nav .open>a, .nav .open>a:focus, .nav .open>a:hover{
    background: rgba(0,0,0,0);}

nav.navbarvf{
    position: absolute;
    width: 100%;
    padding: 0;
    z-index: 10;
    display: block;
    height: auto;}

    nav.navbarvf a{
        font-weight:600;
        padding:30px 1.5vw;
        color:#FFF;}

    nav.navbarvf .navbar-nav{
        float: none;
        display: inline-block;
        vertical-align: top;
        width: auto;
        margin: 30px auto;}

    nav.navbarvf .navbar-collapse {
        padding-left: 0px;
        padding-right: 0px;
        text-align: center;
        border-top: 0px solid transparent;
        -webkit-box-shadow: inset 0 0px 0 rgb(255 255 255 / 10%);
        box-shadow: inset 0 0px 0 rgb(255 255 255 / 10%);}

    nav.navbarvf .navbar-brand{
        padding: 0px;
        position: absolute;}

        nav.navbarvf .navbar-brand img{
            width: auto;
            padding: 0px;
            margin: 0px;
            height: 160px;}

nav.navbarvf .navbar-header{}

.navbarvf li a:focus, .navbarvf li a:hover {
    text-decoration: none;
    color:#fff;
    background-color: rgba(0,0,0,0)!important;}

.navbarvf .dropdown-menu{
    text-align: center;}

    .navbarvf ul.dropdown-menu {
        height: auto;}

    .navbarvf .open .dropdown-menu > li > a{
        font-size:1em;
        padding: 10px;}

        .navbarvf .open .dropdown-menu > li > a:hover{
            color:#000;}

        .dropdown-menu > li > a:focus, .dropdown-menu > li > a:hover{
            background: none;}

.navbar-nav>li>.dropdown-menu{
    margin-top:0px;
    border-radius: 0px 0px 5px 5px;}

nav.navbarvf .navbar-nav .dropdown > a:after {
    display: block;
    position: absolute;
    font-family: 'Material Icons';
    top: 50%;
    transform: translateY(-50%);
    right:15px;
    font-size: 1.2em;
    content: 'keyboard_arrow_down';}

nav.navbarvf a.dropdown-toggle{
    padding-right: 40px!important;}

ul.dropdown-menu li.open ul.dropdown-menu{
    position: relative;
    width: 100%;
    display: block;}

    ul.dropdown-menu li.open ul.dropdown-menu li{
        width: 100%;}

        ul.dropdown-menu li.open ul.dropdown-menu li a{
            background: rgba(0,0,0,0);
            color: #FFF;
            width: 100%;}

.dropdown-menu{
    background: none;
    -webkit-box-shadow: 0px 0px rgba(0,0,0,0);
            box-shadow: 0px 0px rgba(0,0,0,0);
    padding:0px 0px;
    margin:0px 0px;
    border-radius: 0px;    
    font-size: 1em;
    min-width:100px!important;
    border:0px;}

    .navbar-nav .open .dropdown-menu{
        left: 50%;
        transform: translateX(-50%);
        background: rgba(0,0,0,0);}
    
        .navbar-nav .open .dropdown-menu > li > a{
            text-align: center;
            padding:10px 15px;
            color:#FFF;}

        .navbar-nav .open .dropdown-menu > li.nav-selected > a{
            color:#FFF;}

            .navbar-nav .open .dropdown-menu > li > a:hover{
                color:#FFF;}

ul > li > ul > li.dropdown-menu{
    background: red;
    position: relative;
    display: block;}

.collapse.in{
    display: block!important;
}

/* -------------------- NAV HAMBURGER ICON ANIMATION -------------------- */
.navbar-default .navbar-toggle:focus,
.navbar-default .navbar-toggle:hover{
    background-color: transparent;}

    .navbar-default .navbar-toggle {
        border: none;}

        .navbar-toggle div.hamburger span.icon-bar {
            background: #FFF;
            -webkit-transition: all 0.15s;
            -o-transition: all 0.15s;
            transition: all 0.15s;}

        .navbar-toggle span:nth-child(1) {
            -webkit-transform: rotate(45deg);
                -ms-transform: rotate(45deg);
                    transform: rotate(45deg);
            -webkit-transform-origin: 10% 10%;
                -ms-transform-origin: 10% 10%;
                    transform-origin: 10% 10%;}

        .navbar-toggle span:nth-child(2) {
            opacity: 0;}

        .navbar-toggle span:nth-child(3) {
            -webkit-transform: rotate(-45deg);
                -ms-transform: rotate(-45deg);
                    transform: rotate(-45deg);
            -webkit-transform-origin: 10% 90%;
                -ms-transform-origin: 10% 90%;
                    transform-origin: 10% 90%;}

        .navbar-toggle.collapsed span:nth-child(1),
        .navbar-toggle.collapsed span:nth-child(3) {
            -webkit-transform: rotate(0);
                -ms-transform: rotate(0);
                    transform: rotate(0);}

        .navbar-toggle.collapsed span:nth-child(2) {
            opacity: 1;}


/* -------------------- ASIDE NAV -------------------- */
aside nav.navbarvf{
    position: relative;
    width: 100%;
    padding: 0;
    z-index: 10;
    display: block;
    height: auto;}

aside nav.navbarvf .navbar-nav{
    margin: 0;}

    aside nav.navbarvf a{
        display: block;
        padding: 10px;}

        aside .navbar-nav>li{
            float: none;
            display: block;}

         aside .nav-path-selected a{
            text-decoration: underline;}

aside .navbar-nav .open .dropdown-menu{
    width: 100%;
    display: block;
    position: relative;
    margin-bottom: 30px;}

aside .navbar-header{
    float:none;}

/* -------------------- HEADER -------------------- */
.wrapper header{
    position: relative;
    height: calc(100vh + 120px);
    width: 100%;
    min-height: 640px;
    align-items: center;
    display: flex;}

    .wrapper header .leesmeer{
        color: #FFF;
        text-align: center;
        border:2px solid #FFF;}    

        .wrapper header .leesmeer:hover{
            border:2px solid #401d48;}

.brand-nav{
    position: absolute;
    display: flex;
    margin: -60px auto 0;
    left:0;
    right:0;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;}

    .brand-nav .leesmeer{
        margin-bottom: 0;}

    .brand{
        display: flex;
        align-items: center;
        width: 100%;
        margin-bottom: 30px;}

        .brand img{
            max-width: 100%;
            width: 720px;
            padding: 30px;
            margin: 0 auto;
            height: auto;}


/* -------------------- SLIDER -------------------- */
#slider, #slider2{
    background: #000;
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 0;
    display: block;}

        #slider:before{
            position: absolute;
            left: 0;
            top: 0;
            z-index: 10;
            display: block;
            content:'';
            opacity: 0.5;
            width: 100%;
            height: 15vw;
            background: -moz-linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
            background: -webkit-linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
            background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);}

    .ccm-image-slider-container{
        overflow: hidden;
        height: 100%;
        display: block;
        position: relative;}

        .ccm-image-slider, .ccm-image-slider-inner, .rslides, .rslides > li{
            position: relative;
            display: flex;
            width: 100.2%;
            height: 100.2%;
            margin: -0.1%;}

    ul.rslides{
        background: #000;
        overflow: hidden;
        margin:0px;
        padding: 0px;
        list-style: none;}
        
        ul.rslides > li > img{
            position: absolute;
            object-fit: cover;
            opacity: 0.8;
            width: 100%;
            height: 100%;}

    .slidercontent{
        text-align: center;
        position: relative;
        width: 60%;
        margin: 120px auto;
        align-self: flex-end;
        z-index: 20;}

        .slidercontent span.title{
            position: relative;
            font-size: 2.7em;
            text-transform: uppercase;
            font-weight: 700;
            line-height: 1.1em;
            color:#FFF;
            text-shadow: none;
            padding: 0px;
            z-index: 5;}

        .slidercontent p{
            position: relative;
            font-size: 1.2em;
            color: #FFF;
            line-height: 1.6em;
            font-weight: 400;}       

        .slidercontent span{
            position: relative;
            font-size: calc(11px - 1.65vw);
            text-shadow: 1px 1px rgba(0,0,0,0.75);
            font-weight: 400;
            padding: 12px 25px;
            border-radius:5px;
            color: #FFF;
            z-index:-1;}

            .slider-text p, a.slider-button{
                margin:0;                            
                font-weight:300;
                padding:0px 0px;}

                    .slider-text p{
                        color: #FFF;}

                        a.slider-button{
                            font-size: 1.1em;
                            font-style: italic;
                            padding: 10px 50px 10px 20px;
                            color:#FFF;
                            position: relative;
                            display: inline-block;
                            border: 1px solid #FFF;
                            border-radius: 150px;
                            background:none;}

                            a.slider-button:hover{
                                background: #000;
                                border: 1px solid #000;
                                color: #FFF;
                                text-decoration: none;}

                            a.slider-button:before{
                                position: absolute;
                                right: 15px;
                                font-size: 16px;
                                font-family: 'Material Icons';
                                content: 'arrow_forward';}

                        .slider-button .material-icons{
                            vertical-align: middle; font-size: 1em;}

        .slidercontrol{}

        .slidercontrol a{
            color:#FFF;
            text-shadow: none;}


/* SLIDER 2 */
#slider2 .slidercontentwrapper {
    display: flex;
    max-width: 1280px;
    margin: 0 auto;}

#slider2 .slidercontent {
    text-align: left;
    position: relative;
    width: 40%;
    padding: 30px;
    margin: 90px 0 90px auto;
    align-self: flex-end;
    z-index: 20;}

#slider2 .leesmeer {
    color: #FFF;
    border-color: #FFF;}

    #slider2 .leesmeer:hover{
        border-color:#401d48;}


/* -------------------- MAIN -------------------- */
.wrapper main{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;}


/* -------------------- NAVBLOKKEN -------------------- */
.navblokken{
    display: flex;
    flex-wrap: wrap;
    position: relative;
    max-width: 1280px;
    margin: -60px auto 30px;}

    .navblok{
        box-shadow: 0 15px 45px rgba(0,0,0,0.1);
        margin: 30px;
        width: calc(100% / 3 - 60px);}

        .navblok a{
            background: #FFF;
            padding: 60px;
            width: 100%;
            height: 100%;
            color: #000;
            display: flex;
            text-align: center;
            flex-direction: column;}

                .navblok a:hover{
                    text-decoration: none;}

                    .navblok a:hover h2{
                        color: #401d48;}

                        .navblok a:hover img{
                            transform: scale(1.2);}

            .navblok img{
                margin: 0 auto;
                width: 60px;
                height: auto;}        

            .navblok h2{
                position: relative;
                text-transform: uppercase;
                font-size: 1.3em;
                margin-bottom:30px;
                margin-top: 30px;
                font-weight: 700;}

                .navblok h2:after{
                    content: '';
                    background: #401d48;
                    border-radius:5px;
                    width: 50%;
                    height: 4px;
                    bottom: -20px;
                    transform: translateY(-50%);
                    left: 0;
                    right: 0;
                    margin: 0 auto;
                    border-radius: 5px;
                    position: absolute;}

            .navblok p{
                flex:1;}


.prijslijst{
    }

    .prijslijst h3{
        margin-bottom: 15px;
        font-size: 1.3em;}

    .prijslijst ul{
        list-style: none;
        padding: 0;
        display: flex;
        flex-direction: column;
        margin: 0;}


    .prijslijst > ul + ul{
        padding-top: 15px;
        border-top:1px solid #efecec;
        margin-top:15px;}


        .prijslijst>ul>li{
            justify-content: space-between;
            display: flex;
            padding: 0;
            margin: 0 0 5px 0;}

        .behandeling span, .behandeling ul li{
            font-size: 1.2em;
            font-weight: 700;}

        .behandeling ul li{
            word-break: keep-all;
            white-space: nowrap;
            margin-left: 10px;}

        .beschrijving{
            width: 100%;}


/* -------------------- NIEUWS PROFIEL -------------------- */
.npwrapper{
    background: #FFF;
    width: 100%;
    padding:60px 30px;}

    .nieuwsprofiel{
        justify-content: space-between;
        display: flex;
        flex-wrap: wrap;
        margin: 0 auto;
        padding: 0 30px;
        max-width: 1280px;}

        .profiel{
            position: relative;
            width: calc(100% / 3 - 30px);}

            .proimg{
                margin-bottom: 15px;
                display: flex;
                position: relative;
                width: 100%;}

                .pro-img{
                    position: relative;}

                    .pro-img img{
                        width: 150px;
                        height: 150px;
                        margin-top: -75px;
                        border:5px solid #FFF;
                        box-shadow: 0 5px 10px rgba(0,0,0,0.1);
                        object-fit: cover;}

                .pro-pro{
                    flex:1;
                    padding: 0 0 0 15px;
                    align-self: flex-end;}            

                    .pro-pro h2{
                        color: #401d48;
                        font-size: 1.5em;
                        text-transform: uppercase;
                        font-weight: 300;
                        margin: 0;}

        .nieuws{
            position: relative;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            width: calc(100% / 3 * 2 - 30px);}

            .nieuws article{
                width: calc(50% - 30px);
                display: flex;}

                .nieuws article a{
                    text-decoration: none;
                    padding: 0 30px;
                    border-left: 5px solid #EFECEC;
                    display: flex;
                    align-items: flex-start;
                    flex-direction: column;}

                    .nieuws article h2{
                        margin: 0 0 30px 0;
                        font-weight: 700;
                        font-size: 1.6em;
                        color: #401d48;
                        text-transform: uppercase;}            

                    .nieuws article p{
                        flex:1;}            

                    .nieuws article span{
                        border-color:#efecec;
                        display: table;}


/* -------------------- HOME MAIN CONTENT -------------------- */
.maincontent{
    width: 100%;
    background:#efecec;}

    .mc-wrapper{
        padding: 90px 30px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        max-width: 1280px;}

        .mc{
            width: calc(100% / 3 * 2 - 60px);
            column-gap: 30px;
            column-count: 2;}

            .mc h1{
                -webkit-column-span: all;
                column-span: all;
                color: #401d48;
                text-transform: uppercase;
                font-size: 1.4em;
                font-weight: 700;
                margin-bottom: 30px;}


/* -------------------- OWL CAROUSEL -------------------- */
.carouselwrapper{
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: calc(100% / 3);}

    .owl-carousel{
        width: 100%;
        display: block;}    

        .owl-carousel .item{
            width: 100%;
            margin: 0 auto;
            display: block;}   

            .owl-carousel h3{
                font-size: 1.3em;
                text-transform: uppercase;
                font-weight: 700;
                color: #401d48;
                margin-bottom: 15px;}

            .owl-carousel .leesmeer{
                display: table;
                margin: 0 auto;
                justify-content: center;
                align-self: center;}

            .sterren{
                font-size: 1.5em;
                margin-bottom: 15px;
                color:#401d48;}

    .owl-dots{
        padding: 5px;}

        button.owl-dot{
            border-radius: 10px;
            height: 8px;
            width: 8px;
            background: rgba(0,0,0,0);
            border:1px solid #401d48!important;}

                button.owl-dot + button{
                    margin-left: 5px;}

            button.owl-dot.active{
                background: #401d48;
                border:1px solid #401d48!important;}



/* -------------------- FOOTER -------------------- */
footer{
    background: #FFF;}

    .ftr-wrapper{
        justify-content: space-between;
        display: flex;
        flex-wrap: wrap;
        margin: 0 auto;
        padding: 30px;
        max-width: 1280px;}

        .ftr-kolommen{
            display: flex;}

            .ftr-kolommen > div{
                display: flex;
                flex-wrap: wrap;
                flex-direction: column;}

            .ftr-kolommen > div + div{
                margin-left: 5vw;}


                .ftr-kolommen > div h6{
                    color: #401d48;
                    font-size: 1em;
                    text-transform: uppercase;
                    font-weight: 800;
                    margin-bottom: 30px;}

                .ftr-kolommen > div ul{
                    padding: 0;
                    margin: 0;
                    list-style: none;}

                    .ftr-kolommen > div ul li{
                        padding: 0;
                        margin: 0;}                    

                    .ftr-kolommen > div ul li + li{
                        margin-top: 10px;}

        .ftr-logos{
            display: flex;
            flex-direction: column;}

            .sociallist{
                justify-content: flex-end;
                display: flex;
                list-style: none;}

                .sociallist li + li{
                    margin-left: 5px;}

                .sociallist img{
                    width: auto;
                    height: 30px;}

            .merklist{
                list-style: none;}

                .merklist li + li{
                    margin-top: 5px;}

                .merklist img{
                    width: auto;
                    height: 50px;}


/* -------------------- VERVOLGPAGINA -------------------- */
/* -------------------- HEADER -------------------- */
.wrapper.vvp header{
    height: calc(400px);
    width: 100%;
    min-height: auto;}

.wrapper.vvp .brand-nav {
    margin:75px auto 0;
    max-width: 1280px;}

    .wrapper.vvp .brand{
        margin: 0;}

        .wrapper.vvp .brand img{
            width: 500px;
            margin: 0;}

.vvpcontent{
    position: relative;
    padding: 5vw 0;
    width: 100%;}

    .vvpc-wrapper{
        align-items: flex-start;
        padding: 30px;
        display: flex;
        flex-direction: column;
        max-width: 1280px;
        margin: 0 auto;}

.vvp-sb .vvpc-wrapper{
    align-items: flex-start;
    padding: 30px;
    display: flex;
    flex-direction: row;
    max-width: 1280px;
    margin: 0 auto;}

    .vvp-sb aside{
        position: sticky;
        width: 30vw;
        max-width: 300px;
        margin-right: calc(5vw);
        background: #FFF;
        align-self: flex-start;
        margin-top: calc(-5vw - 60px);}

        .pageicon{
            height: 30vw;
            max-height: 300px;
            padding: 30px;
            justify-content: center;
            align-items: center;
            align-content: center;
            flex-direction: column;
            display: flex;}

            .pageicon img{
                height: auto;
                width: 50%;}        

            .pageicon span{
                text-align: center;
                font-size: 1.3em;
                line-height: 1.1em;
                color: #401d48;
                width: 100%;
                font-weight: 700;
                text-transform: uppercase;}

        .vvp-sb .vvpc{
            flex: 1;}

    .sidebar{
        background: #282829;
        padding:30px;
        width: 100%;
        text-align: center;}

        .sidebar h5{
            font-size: 1.2em;
            font-weight: 700;
            margin-bottom: 20px;
            text-transform: uppercase;
            color: #FFF;}



/* -------------------- OPENINGSTIJDEN -------------------- */
.openingstijden{
    border-radius: 3px;
    background: #FFF;
    padding: 30px;}

    .openingstijden h3{
        margin: 0 0 15px 0;
        font-size: 1.3em;
        font-weight: 700;
        text-transform: uppercase;
        color: #401d48;}

    .openingstijden ul{
        list-style: none;
        display: flex;
        flex-direction: column;
        width: 100%;
        padding: 0;
        margin: 0;}

        .openingstijden ul li{
            width: 100%;
            justify-content: flex-end;
            display: flex;}

                .openingstijden > ul > li + li{
                    margin-top: 10px;}

            .openingstijden ul li ul{
                align-self: flex-end;
                flex:1;}

                .openingstijden ul li ul li{
                    text-align: right;}                

                    .openingstijden ul li ul li + li{
                        margin-top: 5px;}

.sec-wrap{
    width: 100%;
    background: rgba(255,255,255,0.9);}

    .sec-cont{
        max-width: 1280px;
        margin: 0 auto;
        padding: 60px 30px;}

    .sec-cont h2{
        font-weight: 700;
        color: #401d48;
        font-size: 1.7em;
        margin-bottom: 30px;
        text-transform: uppercase;}


.parallax{
    width: 100%;
    height: 40vh;
    min-height: 200px;}

.parallax-image-container img{
    max-width: none;}

div.ccm-block-custom-template-parallax.parallaxic-container, div.ccm-block-custom-template-parallax div.parallaxic-container {
    width: 100%;
    height: 100%;}


/* -------------------- BACK TO TOP -------------------- */
#back-top{
    background:rgba(255,255,255,0.9);
    display: block;
    position: fixed;
    right:15px;
    padding: 5px;
    bottom: 15px;
    border-radius: 4px;
    z-index: 50;}

#back-top a, #back-top button{
    display:block;
    padding:6px;
    border: 0px;
    border-radius: 4px;
    text-align: center;}

    #back-top a{}

    #back-top button{
        margin: 0px 0px 0px 0px; 
        padding: 0px 0px 0px 0px;}

    #back-top button .material-icons{
        border-radius: 4px;
        padding:6px;
        vertical-align: middle;}

#back-top i.material-icons{
    font-size:20px;
    color:#000;}

#back-top img{
    width: 15px;
    height: auto;}

* > *:last-child{
    margin-bottom: 0;}


/* -------------------- ANIMATIE -------------------- */
.leesmeer, .navblok a, .navblok a img{
    -webkit-transition: all 0.25s ease-in-out; -o-transition: all 0.25s ease-in-out; transition:all 0.25s ease-in-out;}


/* -------------------- VORMFACTOR -------------------- */
.vf{ position: absolute; bottom:-40px; left: 0px; right: 0px; margin:0px auto; text-align: center;}
.vf a{height:20px; width:100%; text-align:left; font-size:10px; color:#000000!important; text-decoration:none; text-align: center; display:inline-block; zoom: 1; filter: alpha(opacity=2); opacity: 0.1;}
.vf a:hover {filter: alpha(opacity=100); opacity: 1;}
.vf img{height:8px; width:80px;}


.clearfix:after{content:""; visibility:hidden; display:block; height:0; clear:both;}
.vcenter{display: -webkit-box; display: flex; display: -ms-flexbox; -webkit-box-align: center; -ms-flex-align: center; align-items: center;}