.navbar, 
.nav .menu-item,
.nav .menu-item .nav-item-child,
.nav .nav-item-child::before,
.header-shrink.header-center-aligned-transparent .navbar-nav .nav-item-child,
.navbar-logo-img,
.back-to-top-theme {
  /* override default transition properties */
  transition-duration: 0.4s !important;
  transition-timing-function: cubic-bezier(0.33, 1, 0.68, 1) !important;
}

/* navbar */
@media (min-width:992px) { /* laptop or desktop */
  .nav .menu-item .nav-item-child {
    --hover-height: 0px;
    --line-start: 25%;
    --line-end: 45%;
  }
  
  .nav .current-menu-item {
    /* pointer-events: none; */
  }
  
  .nav .menu-item .nav-item-child {
    /* transform: translateY(0px); /* hide transition into translate */
  }
  
  .nav .menu-item .nav-item-child:hover {
    /* transform: translateY(calc(var(--hover-height) * -1)); */
  }
  
  .nav .nav-item-child::before {
    content: "";
    position: absolute;
    bottom: 0;
    
    left: 0;
    right: 0;
    margin: 0 auto;
    
    height: 1px;
    background-color: currentColor;
    
    width: var(--line-start);
    opacity: 0;
    
    transition-property: width, opacity, transform;
  }
  
  .nav .current-menu-item .nav-item-child::before, 
  .nav .menu-item .nav-item-child:hover::before {
    width: var(--line-end);
    opacity: 1;
  }
  
  .nav .menu-item:hover .nav-item-child::before {
    /* transform: translateY(var(--hover-height)); */
  }
  
  .navbar-logo-img {
    transition-property: transform, opacity;
    transform: scale(1);
  }
  
  .navbar-logo-img:hover {
    transform: scale(1.25);
  }
  
  .ffb-id-navigation-header .ark-header:not(.header-shrink) .navbar-logo-img-fixed,
  .ffb-id-navigation-header .ark-header .navbar-logo-img-normal {
    opacity: 0;
    pointer-events: none;
  }
  
  .ffb-id-navigation-header .ark-header .navbar-logo-img-fixed,
  .ffb-id-navigation-header .ark-header:not(.header-shrink) .navbar-logo-img-normal {
    opacity: 1;
    pointer-events: auto;
  }
  
  .navbar-logo-wrap {
    display: flex;
    justify-content: center; 
    align-items: center;     
    width: 100%;             
    height: 100%;            
    position: relative;
  }
  
  .navbar-logo-img {
    display: block; 
    position: static; 
    max-height: 100%;            
  }

  
}

/* galerij */
.theme-portfolio-active-wrap::before {
    left: 0px !important;
    top: 0px !important;
    right: 0px !important;
    bottom: 0 !important;
}

.theme-portfolio-lightbox {
    transform: none !important;
    left: 0 !important; 
    top: 0 !important;
}

.theme-portfolio-lightbox,
.theme-portfolio-lightbox .cbp-lightbox,
.theme-portfolio-lightbox .ff-lightbox-icon {
    width: 100%;
    height: 100%;

    padding: 0;
}

.theme-portfolio-lightbox .ff-lightbox-icon,
.theme-portfolio-lightbox .ff-lightbox-icon:hover {       
    position: relative;
}

.theme-portfolio-lightbox .ff-lightbox-icon::before {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) scale(0.9);
    
    font-size: 40px;
}

.theme-portfolio-lightbox:hover .ff-lightbox-icon::before {
    transform: translate(-50%, -50%);
}


.cbp-item-wrapper {
    overflow: hidden;
}

.theme-portfolio-active-wrap::before,
.theme-portfolio-item-v3-heading,
.ff-lightbox-icon::before {
    transition-duration: 350ms !important;
}

.theme-portfolio-item-v3-heading {
    padding: 10px 30px 10px 30px !important;
    pointer-events: none; /* DISABLE LABEL LINKS HERE */
}

.theme-portfolio-item-v3-heading h4 {
    text-align: center;
    color: #fff !important;
}


@keyframes lightbox-appear {
    from {
        opacity: 0;
        backdrop-filter: blur(0px);
        transform: scale(1);
    }

    to {
        opacity: 1;
        backdrop-filter: blur(8px);
        transform: scale(1);
    }
}

@keyframes lightbox-content-appear {
    from {
        transform: scale(.97);
    }

    to {
        transform: none;
    }
}

.cbp-popup-lightbox,
.cbp-popup-content {
    animation-duration: 0.6s;
    animation-timing-function: cubic-bezier(0.25, 1, 0.5, 1);
    animation-fill-mode: both;
    animation-iteration-count: 1;
}

.cbp-popup-lightbox {
    animation-name: lightbox-appear;
}

.cbp-popup-content {
     animation-name: lightbox-content-appear;
}

/* back to top */
.back-to-top-theme {
    font-size: 21px;
    padding: 0;
    border-radius: 0;
}

.back-to-top-theme::after {
    content: "\f062" !important;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    
}