/*************************************************
partfileimagegallery-2.2
*************************************************/

/* fundementals */
.partContentFileImageGallery figure {
    margin:0;
    max-width: 100%; /* responsive */
}

.partContentFileImageGallery figure .imagePlaceholderContainer {
    position: relative;
    overflow: hidden;
}

.partContentFileImageGallery figure .imagePlaceholderContainer .imagePlaceholder {
    /* padding-bottom is calculated and set by back-end */
}

.partContentFileImageGallery figure .imagePlaceholderContainer img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
}

.partContentFileImageGallery figure figcaption {
    text-align:center; 
    padding:10px; 
    padding-bottom: 0px;
    font-size: 14px;
    line-height: 1.4em;
} 

.partContentFileImageGallery .contentFileImage a {
    display: block;
    color: inherit;
    text-decoration: none;
    max-width: 100%; /* responsive */
}

/* single image */
.partContentFileImageGallery.single {
    /* margin-bottom should be set on content container level */
}

.partContentFileImageGallery.single.imagesInRow .contentFileImageContainer .contentFileImage {
    margin-bottom: 0;
}

/* mulitple images */
.partContentFileImageGallery.multiple {
    padding-bottom: 10px;
}

/* images in a row */
.partContentFileImageGallery.imagesInRow .contentFileImageContainer {
    display: flex; 
    flex-wrap: wrap; 
    align-items: flex-start; 
    margin-left: -10px; 
    margin-right: -10px;
}

.partContentFileImageGallery.imagesInRow .contentFileImageContainer .contentFileImage {
    margin-left: 10px; 
    margin-right: 10px; 
    margin-bottom: 20px;
}

/* images in a row with set width */
.partContentFileImageGallery.imagesInRow1 .contentFileImage {width: calc(100% - 20px);}
.partContentFileImageGallery.imagesInRow2 .contentFileImage {width: calc(50% - 20px);}
.partContentFileImageGallery.imagesInRow3 .contentFileImage {width: calc(33.3333333333% - 20px);}
.partContentFileImageGallery.imagesInRow4 .contentFileImage {width: calc(25% - 20px);}
.partContentFileImageGallery.imagesInRow5 .contentFileImage {width: calc(20% - 20px);}
.partContentFileImageGallery.imagesInRow6 .contentFileImage {width: calc(16.6666666667% - 20px);}

/* responsive */
@media screen and (max-width: 767px){
	.partContentFileImageGallery.imagesInRow4 .contentFileImage {width: calc(33.3333333333% - 20px);}
}

@media screen and (max-width: 667px){
	.partContentFileImageGallery.imagesInRow4 .contentFileImage, .partContentFileImageGallery.imagesInRow3 .contentFileImage {width: calc(50% - 20px);}
}

/* vertical and horizontal align to center */
.partContentFileImageGallery.centerAlign .contentFileImageContainer {
    align-items: center;
}

.partContentFileImageGallery.centerAlign .contentFileImage {
    display:flex; justify-content: center; align-items: center;
}

/* blur effect on load */
.partContentFileImageGallery figure .imagePlaceholderContainer img.lazyload.blurOnLoad, .partContentFileImageGallery figure .imagePlaceholderContainer img.lazyloading.blurOnLoad {
    opacity: 0;
    filter: blur(25px);
    -webkit-filter: blur(25px);
    transition: opacity 400ms;
    -webkit-transition: opacity 400ms;
}

.partContentFileImageGallery figure .imagePlaceholderContainer img.lazyloading.blurOnLoad {
    opacity: 1;
}

    /* when loaded animate blur to 0 */
    .partContentFileImageGallery figure .imagePlaceholderContainer img.lazyloaded.blurOnLoad {
        filter: blur(0);
        -webkit-filter: blur(0);
        transition: filter 400ms;    
        -webkit-transition: -webkit-filter 400ms;
    } 

    /* disabled animation when image is cashed */
    .partContentFileImageGallery figure .imagePlaceholderContainer img.ls-is-cached.blurOnLoad {
        transition: filter 0ms;    
        -webkit-transition: -webkit-filter 0ms;
    }

/* no placeholder (for default image from style) */
.partContentFileImageGallery figure .imagePlaceholderContainer img.noPlaceholder {
    position: relative;
}

/*  Custom code */
.personItem .partContentFileImageGallery.single         {width: 100%;}
.personItem .partContentFileImageGallery.single figure {margin:auto;}
.personItem .partContentFileImageGallery:nth-child(2) {position: absolute; top:0; opacity: 0; transition: .3s;}
.personItem:hover .partContentFileImageGallery.single {opacity: 1;}

#portfolioItemImages .contentFileImage                  {width:100%;}