@font-face {
    font-family: MuseoSans300;
    src: url(../fonts/MuseoSansCyrl_300.otf);
}

@font-face {
    font-family: MuseoSans700;
    src: url(../fonts/MuseoSansCyrl_700.otf);
}

*{
    box-sizing: border-box;
}

body{
    font-family: MuseoSans300;
}

h1, h2, h3{
    font-family: MuseoSans700;
}

h1{
    font-size: 28px;
    margin-bottom: 0;
}

h2{
    font-size: 20px;
    margin-bottom: 28px;
    width: 100%;
}

h3, p{
    font-size: 14px;
    line-height: 18px;
}

h3{
    margin: 28px 0 16px;
}

.topbar{
    padding: 1em 1.2em;
    position: fixed;
    width: 100%;
    background-color: white;
    z-index: 5000;
    top: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.navbar, .navbar-nav {
    top: -100%;
    transition: top 800ms ease;
}

.visible {
    top: 0;
}

.hamburger-menu,
.hamburger-menu:after,
.hamburger-menu:before {
  width: 24px;
  height: 3px;
  border-radius: 1px;
}

.hamburger-wrapper {
	display: block;
	padding: 12px 0;
	z-index: 1338;
}

.hamburger-menu {
	position: relative;
	background: black;
	transition: all 0ms 200ms;
	display: block;
}

.hamburger-menu.animate{
    background: white;
}

.hamburger-menu:before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 8px;
	background: black;
	transition: bottom 200ms 200ms cubic-bezier(0.23, 1, 0.32, 1), transform 200ms cubic-bezier(0.23, 1, 0.32, 1);
}

.hamburger-menu:after {
	content: "";
	position: absolute;
	left: 0;
	top: 8px;
	background: black;
	transition: top 200ms 200ms cubic-bezier(0.23, 1, 0.32, 1), transform 200ms cubic-bezier(0.23, 1, 0.32, 1);
}

.hamburger-menu.animate:after {
	top: 0;
	transform: rotate(45deg);
	transition: top 200ms cubic-bezier(0.23, 1, 0.32, 1), transform 200ms 200ms cubic-bezier(0.23, 1, 0.32, 1);;
}

.hamburger-menu.animate:before {
	bottom: 0;
	transform: rotate(-45deg);
	transition: bottom 200ms cubic-bezier(0.23, 1, 0.32, 1), transform 200ms 200ms cubic-bezier(0.23, 1, 0.32, 1);;
}

.breadcrumb, .search, .topbar-right{
    display: none;
}

.logo img{
    width: 123px;
}

.logo-flex{
    display: flex;
}

.europe{
    display: none;
    color: #E4002B;
    font-family: MuseoSans700;
    font-size: 15px;
    margin: 0;
    align-self: center;
}

.divider{
    width: 2px;
    height: 42px;
    background-color: #EEEEEE;
    transform: rotate(-10deg);
    align-self: center;
    margin: 0 1em;
}

.absolute-popup{
    display: none;
    position: relative;
    width: 100%;
}

.map-button{
    width: 35px;
    height: 35px;
    background-color: #E4002B;
    border-radius: 100px;
    top: 300px;
    right: 300px;
    position: absolute;
    cursor: pointer;
}

.popup{
    background-color: #EEEEEE;
    position: relative;
    margin-top: 74px;
    z-index: 120;
}

.close{
    background-image: url(../img/close.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 23px;
    height: 23px;
    position: absolute;
    top: calc(1em - 4px);
    right: calc(1em - 4px);
    z-index: 125;
}

.back{
    background-image: url(../img/back.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 15px;
    height: 15px;
    position: absolute;
    top: 1em;
    left: 1em;
    z-index: 125;
}

.popup-text{
    min-height: 375px;
    position: relative;
    padding: 1.5em 1.2em;
}

.popup-img{
    width: 100%;
}

.popup-img img{
    min-width: 100%;
    max-width: 100%;
    height: auto;
}

.category{
    color: #E4002B;
    text-transform: uppercase;
    font-family: MuseoSans700;
    display: flex;
    align-items: center;
}

.category-icon{
    background-image: url(../img/slimmer.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 35px;
    height: 35px;
    margin-right: 6px;
    align-self: center;
}

.more{
    font-family: MuseoSans700;
    display: flex;
    color: black;
    text-decoration: none;
}

.more p{
    margin: 0;
}

.arrow{
    background-image: url(../img/more.png);
    background-size: contain;
    background-repeat: no-repeat;
    min-width: 14px;
    min-height: 14px;
    margin-left: 12px;
    margin-top: 2px;
}

.absolute-overlay{
    position: relative;
    width: 100%
}

.absolute-list{
    position: relative;
    width: 100%;
}

.absolute-overlay{
    display: none;
}

.overlay{
    background-color: white;
    position: relative;
    padding: 1.5em 1.2em;
    margin-top: 74px;
}

.overlay-img{
    margin: 28px -1.2em 0;
}

.overlay-video{
    margin-top: 28px;
}

.overlay-img img{
    max-width: 100%;
}

.share{
    display: flex;
    margin: 2em 0;
}

.share p{
    margin: 0 0.5em 0 0;
    font-family: MuseoSans700;
    font-size: 12px;
}

.social img{
    height: 16px;
    margin: 0 0.5em;
}

.box{
    margin: 0 -1.2em;
    padding: 0.2em 1.2em;
}

.box-gray{
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(255,255,255,1) 0%, rgba(245,245,240,0.5956757703081232) 100%);
}

.gray{
    color: #7D7573;
}

.sponsors{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.sponsor{
    max-width: 45%;
}

.sponsor img{
    width: 100%;
}

.local-img{
    width: 100%;
}

.local-img img{
    max-width: 100%;
}

.overlay .more{
    margin-bottom: 2em;
}

.embed-container{ 
    position: relative; 
    padding-bottom: 56.25%; 
    height: 0; 
    overflow: hidden; 
    max-width: 100%; 
} 

.embed-container iframe, .embed-container object, .embed-container embed{ 
    position: absolute; 
    top: 0; 
    left: 0; 
    width: 100%; 
    height: 100%;
}

.up{
    width: 100%;
    display: flex;
    justify-content: flex-end;
}

.arrow-up{
    width: 55px;
    height: 55px;
    border-radius: 100px;
    background-color: #F2F3F4;
    display: flex;
    justify-content: center;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}

.arrow-up:hover{
    background-color: white;
}

.arrow-up img{
    align-self: center;
    padding-bottom: 2px;
}

.absolute-list{
    display: none;
}

.overlay-list{
    background-color: white;
    position: relative;
    padding: 3em 1.2em 1.5em;
}

.list-item{
    text-decoration: none;
    display: flex;
    justify-content: space-between;
    box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    width: 90%;
    margin-bottom: 1.5em;
}

.list-item a:hover{
    border-left: 3px solid #E4002B;
}

.list-item:hover .list-more{
    color: white;
    background-color: #E4002B;
}

.list-item:hover .list-more .arrow{
    background-image: url(../img/more-white.png);
}

.list-info{
    padding: 0.8em 1em;
    width: 100%;
}

.list-info, .list-text{
    align-self: center;
}

.list-text{
    display: flex;
    flex-wrap: wrap;
}

.list-icon{
    background-image: url(../img/groener.svg);
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    min-width: 35px;
    min-height: 35px;
    margin-right: 6px;
    align-self: center;
}

.list-icon-flex{
    display: flex;
}

.list-title{
    color: black;
    text-transform: uppercase;
    align-self: center;
}

.list-title p, .list-description p{
    margin: 0;
}

.list-description, .list-more{
    color: #7D7573;
}

.list-more{
    display: flex;
    background-color: #EEEEEE;
    padding: 1em;
}

.list-more p{
    margin: 0;
    align-self: center;
}

.list-more .arrow{
    align-self: center;
    margin-top: 0;
}

footer{
    display: none;
    background-color: #363636;
    color: white;
    font-size: 14px;
    text-align: center;
    padding: 1.2em;
}

footer p{
    margin: 0 0.5em;
}

footer a{
    color: white;
    margin: 0 0.5em;
}

.map{
    background-image: url(../img/map.png);
    background-size: cover;
    background-position: center;
    position: fixed;
    width: 100vw;
    height: 100vh;
    z-index: -10;
}

main {
    min-height: calc(100vh - 74px);
}

.search-container{
    margin-right: 36px;
}

.search{
    display: flex;
    background-color: #F6F6F6;
}

.chosen-container {
    border: none;
    padding: 0.7em 1em;
    background-color: #F6F6F6;
    background-image: url(../img/search.svg);
    background-repeat: no-repeat;
    background-position-y: center;
    margin-left: 12px;
    padding-left: 35px;
    background-position-x: 12px;
    background-size: 25px;
    min-width: 233px
}

.search-top input {
    border: none;
    padding: 0.7em 1em;
    background-color: #F6F6F6;
    background-image: url(../img/search.svg);
    background-repeat: no-repeat;
    background-position-y: center;
    padding-left: 50px;
    background-position-x: 12px;
    background-size: 25px;
    min-width: 233px
}

.chosen-container-multi .chosen-choices li.search-choice{
    border: none!important;
    background-image: none!important;
    background-color: #EEEEEE;
}

.dropdown-search .chosen-container{
    background-image: none;
    padding-left: 0;
    min-width: 175px;
}

.chosen-select,
.chosen-select::-webkit-input-placeholder,
.chosen-select::placeholder ,
.chosen-search-input,
.chosen-results {
    font-family: MuseoSans300!important;
    font-size: 16px!important;
    color: -internal-light-dark-color(black, white)!important;
}

.chosen-container {
    width: 100%!important;
    margin-left: 0;
}

.search--chosen {
    margin: auto;
}

.navbar .search--chosen {
    margin: 0 28px;
    width: 100%;
    justify-content: space-between;
}

.search--chosen button {
    width: 50px;
}

.dropdown-search .search--chosen button{
    width: 45px;
}

.chosen-choices {
    box-shadow: none!important;
    border: 0!important;
    background: transparent!important;
}

.chosen-container .chosen-results li {
    padding-top: .5rem!important;
    padding-bottom: .5rem!important;
}

.chosen-container-multi .chosen-choices li.search-field {
   padding-left: .5rem!important;
}

.chosen-container .chosen-drop {
    left: 0;
    width: 100%;
    border: none!important;
    border-top: 0;
    background: #F6F6F6!important;
    box-shadow:none!important;
    clip: none!important;
}
/* .topbar .chosen-container .chosen-drop .chosen-results li {
    padding-left: 2.5rem;
} */

.dropdown-search .chosen-container .chosen-drop{
    padding-left: 0;
}

.chosen-container ul.chosen-results li.highlighted {
    background-color: #E4002B;
    background-image: none;
  }

.search button {
    border: none;
    background-color: #EEEEEE;
    width: 40px;
    cursor: pointer;
    outline: none;
}

.search-top button{
    height: 40px;
}

.search button img {
    margin-top: 5px;
    width: 14px;
}

input:focus{
    outline: none;
}

.chosen-container-multi .chosen-choices li.search-choice .search-choice-close,
.chosen-container-multi .chosen-choices li.search-choice .search-choice-close:hover {
    background: url(../img/close.png);
    background-repeat: no-repeat;
    background-size: contain;
}

.navbar .search button img {
    width: 22px;
}

.chosen-single{
    border: none!important;
    background-image: none!important;
    box-shadow: none!important;
}

.chosen-single span{
    padding-top: 0.1em;
}

.navbar{
    width: 100%;
    height: 100vh;
    position: fixed;
    background-color: #EEEEEE;
    z-index: 500;
    padding-top: 74px;
}

.navbar-nav{
    list-style: none;
    padding: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    position: fixed;
    width: 100%;
    height: calc(100vh - 74px - 150px);
    overflow-y: scroll;
    margin: 74px 0 150px;
    -ms-overflow-style: none;
}

.navbar-nav::-webkit-scrollbar{
    display: none;
}

.nav-item {
    width: 100%;
    border-right: 3px solid #EEEEEE;
}
.nav-link {
    border-left: 3px solid #EEEEEE;
}

.nav-link{
    display: flex;
    align-items: center;
    height: 74px;
    text-decoration: none;
    color: #242424;
    font-family: MuseoSans700;
    font-size: 20px;
}

.nav-link img{
    width: 69px;
    height: 69px;
}

.nav-item:hover,
.nav-item.active{
    border-right: 3px solid white;
    background-color: white;
}

.nav-item:hover .nav-link{
    border-left: 3px solid #E4002B;
}

.nav-footer{
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: 150px;
    padding: 1em 2em;
    background-color: #363636;
    text-align: center;
    display: flex;
    flex-direction: column;
}

.nav-footer .eu{
    color: white;
    background-color: #E4002B;
    text-decoration: none;
    padding: 1em;
    margin: auto;
    align-self: center;
    width: 80%;
}

.mobile-footer p{
    color: white;
    font-size: 14px;
    margin: 0.5em 0;
}

.mobile-link{
    color: white;
    font-size: 14px;
    margin: 0 0.5em;
}

.trefwoord-search, .organisatie-search, .locatie-search{
    display: flex;
}

.locatie-point{
    margin-left: 36px;
    height: 72px;
    display: flex;
    width: 75%;
}

.locatie-point a{
    text-decoration: none;
    color: black;
    align-self: center;
    width: 100%;
    display: flex;
}

.locatie-point img{
    margin-left: 16px;
}

.locatie-dropdown, .thema-dropdown, .programma-dropdown, .organisatie-dropdown, .trefwoord-dropdown{
    display: none;
}

.filter-item{
    display: flex;
    width: 100%;
    margin: 1em 0;
}

.program-filter-item{
    display: flex;
}

.filter-text{
    margin: 0;
    margin-right: 5px;
    align-self: center;
    font-family: MuseoSans700;
    width: calc(100% - 144px);
}

.filter-icon{
    background-size: contain;
    background-repeat: no-repeat;
    height: 35px;
    min-width: 72px;
}

.slimmer-europa{
    background-image: url(../img/slimmer-europa.svg);
}

.groener-europa{
    background-image: url(../img/groener-europa.svg);
}

.verbonden-europa{
    background-image: url(../img/verbonden-europa.svg);
}

.socialer-europa{
    background-image: url(../img/socialer-europa.svg);
}

.dichter-europa{
    background-image: url(../img/dichter-europa.svg);
}

.samenwerken-europa{
    background-image: url(../img/samenwerken-europa.svg);
}

.organisatie-opties{
    margin-top: 1em;
}

.opties a{
    text-decoration: none;
    color: black;
    text-transform: capitalize;
    font-family: MuseoSans700;
    display: block;
    margin-left: 72px;
    margin-bottom: 1em;
    font-size: 14px;
}

.opties p{
    margin: 0 0 0 72px;
    font-size: 14px;
    text-transform: capitalize;
    font-family: MuseoSans700;
    width: calc(100% - 144px);
    align-self: center;
}

.program-filter-item p{
    margin-right: 5px;
}

.opties a:hover{
    color: #E4002B;
}

.program-filter-item{
    margin: 1.2em 0;
}

.switch {
    position: relative;
    display: inline-block;
    width: 40px;
    height: 20px;
    align-self: center;
}

.switch input {
    opacity: 0;
    width: 0;
    height: 0;
}

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #BCBBBB;
    -webkit-transition: .4s;
    transition: .4s;
}

.slider:before {
    position: absolute;
    content: "";
    height: 14px;
    width: 14px;
    left: 4px;
    bottom: 3px;
    background-color: white;
    -webkit-transition: .4s;
    transition: .4s;
}

input:checked + .slider {
    background-color: #E4002B;
}

input:checked + .slider:before {
    -webkit-transform: translateX(18px);
    -ms-transform: translateX(18px);
    transform: translateX(18px);
}

.slider.round {
    border-radius: 34px;
}

.slider.round:before {
    border-radius: 50%;
}

.overlay-list{
    margin-top: 74px;
}

.slick-prev:before{
    color: black;
}

.slick-next:before{
    color: black;
}

.slick-prev {
    left: 10px;
    z-index: 125;
}

.slick-next {
    right: 10px;
    z-index: 125;
}

@media(min-width: 375px){
    .popup .more{
        position: absolute;
        bottom: 2em;
    }

    .europe{
        display: block;
    }
}

@media(min-width: 568px){
    .overlay, .overlay-list{
        padding: 3em 2em 1.5em;
    }

    .overlay .close{
        top: calc(1.5em - 4px);
        right: calc(2em - 4px);
    }
    
    .back{
        top: 1.5em;
        left: 2em;
    }

    .overlay-img{
        margin: 28px -2em;
    }

    .absolute-popup{
        padding: 120px 0;
    }

    .popup{
        max-width: 375px;
        margin: 0 auto;
        box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    }

    .popup-text{
        min-width: 375px;
    }

    .popup-img{
        min-width: 375px;
        max-height: 375px;
    }
    
    .popup-img img{
        max-width: 100%;
    }
}

@media(min-width: 768px){
    #map {
        width: calc(100vw - (74px));
        left: 74px;
    }
    
    .topbar{
        z-index: 100;
    }
    
    .topbar-right{
        display: flex;
    }

    .list-button, .pinpoints-button, .view-divider{
        display: flex;
    }

    .pinpoints-bg{
        background-image: url(../img/pinpoints.svg);
        background-size: contain;
        background-repeat: no-repeat;
        width: 23px;
        height: 23px;
        align-self: center;
    }

    .pinpoints-bg:hover{
        background-image: url(../img/pinpoints.svg)!important;
    }

    .list-bg{
        background-image: url(../img/list-bl.svg);
        background-size: contain;
        background-repeat: no-repeat;
        width: 31px;
        height: 18px;
        align-self: center;
    }

    .list-bg:hover{
        background-image: url(../img/list.svg)!important;
    }

    .view-divider{
        width: 1px;
        height: 42px;
        background-color: #707070;
        margin: 0 1em;
    }

    .hamburger-wrapper{
        display: none;
    }
    
    .navbar{
        width: 74px;
        transition: width 500ms ease;
        top: 0;
        z-index: 50;
    }
    
    .navbar-nav{
        margin: 0;
        width: 74px;
        height: calc(100vh - 144px);
        top: 0;
        bottom: 0;
        margin: 74px 0;
    }
    
    .link-text{
        transform: translateX(-200px);
        opacity: 0;
        transition: transform 200ms ease;
        transition: opacity 200ms 100ms ease;
    }
    
    .navbar:hover{
        width: 275px;
        box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
    }
    .navbar:hover .navbar-nav{
        width: 275px;
        transition: width 500ms ease;
    }
    
    .navbar:hover .link-text{
        transform: translateX(0);
        opacity: 1;
    }

    .navbar:hover .nav-footer a{
        opacity: 1;
    }

    .nav-footer{
        height: 74px;
        width: 275px;
        padding: 0 2em;
    }

    .nav-footer .eu{
        opacity: 0;
        width: 100%;
        transition: opacity 500ms ease;
    }

    .mobile-footer {
        display: none;
    }

    .dropdown-search .chosen-container{
        background-image: none;
        padding-left: 0;
        min-width: 175px;
        max-width: 175px;
    }

    .locatie-point a{
        justify-content: space-between;
    }

    .locatie-point img{
        align-self: center;
    }

    .filter-text{
        width: 50%;
    }

    .program-filter-item p{
        width: 50%;
    }

    footer{
        height: 74px;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .absolute-overlay, .absolute-list {
        padding: 120px 0;
    }

    .overlay, .overlay-list{
        max-width: 70%;
        margin: 0 auto;
        box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
        z-index: 120;
    }

    .overlay-img{
        margin: 28px 0em;
    }

    .list-title{
        min-width: 250px;
    }

    .list-more{
        min-width: 145px;
    }
    
}

@media(min-width: 1024px){
    .flex{
        display: flex;
        justify-content: space-between;
    }

    .video-section{
        justify-content: center;
    }

    .flex-section{
        width: 45%;
    }

    .video-section .flex-section{
        width: 60%;
    }

    .overlay-video{
        margin-bottom: 28px;
    }

    .sponsors{
        justify-content: flex-start;
    }

    .sponsor{
        max-width: 25%;
    }

    .locals-flex{
        display: flex;
        flex-wrap: wrap;
    }

    .local{
        width: 50%;
        padding: 0 1em 0 0;
    }

    .list-icon{
        margin-right: 24px;
    }

    .popup{
        display: flex;
        max-width: 750px;
        position: relative;
    }
}

@media(min-width: 1200px){
    .breadcrumb{
        display: flex;
    }

    .breadcrumb-item{
        display: flex;
        margin-right: 1em;
    }

    .breadcrumb-item p{
        margin: 0;
        align-self: center;
    }

    .breadcrumb-icon{
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        width: 35px;
        height: 35px;
        align-self: center;
    }

    .slimmer-icon{
        background-image: url(../img/slimmer.svg);
    }

    .locatie-icon{
        background-image: url(../img/b-locatie.svg);
    }

    .samenwerken-icon{
        background-image: url(../img/samenwerken.svg);
    }

    .path{
        font-size: 14px;
        text-decoration: none;
        color: black;
    }

    .current-path{
        color: #E4002B;
    }
    
    .local{
        width: 25%;
        padding: 0 1em 0 0;
    }

    .list-text{
        flex-wrap: nowrap;
    }

    .gray{
        width: 35%;
    }

    .box{
        display: flex;
        justify-content: space-between;
    }
}


.search--chosen button {
    width: 50px;
}