div.part-gallery {
    
}

body.home div.part-gallery {
    position:relative;
}

body.home div.part-gallery::after {
    content:"";
    display:block;
    position:absolute;
    top:0;
    right:0;
    bottom:0;
    left:0;
    z-index:30;
    background-color:rgba(255,255,255,0.7);
    pointer-events:none;
    transition:0.3s;
}

body.home div.part-gallery:hover::after {
    opacity:0;
}

body.home div.part-gallery h2.component-heading {
    position:absolute;
    z-index:31;
    left:50%;
    top:50%;
    transform:translateX(-50%) translateY(-50%);
    background-color:var(--lblue);
    padding:52px 180px;
    text-align:center;
    pointer-events:none;
    transition:0.3s;
    color:#ffffff;
    max-width:580px;
}

body.home div.part-gallery:hover h2.component-heading {
    opacity:0.6;
}


body.home div.part-gallery .content-galleries {
    display:flex;
    flex-wrap:wrap;
    
}

body.home div.part-gallery .content-galleries .clear {
    display:none;
}

body.home div.part-gallery .content-galleries .gallery-album {
    display:none;
    width:25%;
    height:17vw;
    position:relative;
    transition:0.3s;
    z-index:1;
    box-shadow:0 0 0 rgba(0,0,0,0.3);
}

body.home div.part-gallery .content-galleries .gallery-album:hover {
    z-index:29;
    box-shadow:0 10px 10px rgba(0,0,0,0.3);
    transform:scale(1.05,1.05);
}

body.home div.part-gallery .content-galleries .gallery-album a {
    position:absolute;
    z-index:1;
    display:block;
    top:0;
    right:0;
    bottom:0;
    left:0;
    background-repeat:no-repeat;
    background-position:center center;
    background-size:cover;
}

body.home div.part-gallery .content-galleries .gallery-album a::before {
    content:"";
    display:block;
    position:absolute;
    z-index:2;
    opacity:0;
    transition:0.3s;
    top:0;
    right:0;
    bottom:0;
    left:0;
    background-color:#000000;
    pointer-events:none;
}

body.home div.part-gallery .content-galleries .gallery-album:hover a::before {
    opacity:0.1;
}

body.home div.part-gallery .content-galleries .gallery-album a::after {
    content:"";
    display:block;
    position:absolute;
    z-index:3;
    top:0;
    right:0;
    bottom:0;
    left:0;
    background-repeat:no-repeat;
    background-position:center 70%;
    background-image:url('../gfx/zoom-in.svg');
    transition:0.3s;
    opacity:0;
}

body.home div.part-gallery .content-galleries .gallery-album:hover a::after {
    opacity:0.85;
    background-position:center center;
}

body.home div.part-gallery .content-galleries .gallery-album a img {
    display:none;
}

body.home div.part-gallery .content-galleries .gallery-album .details {
    display:none;
}

body.home div.part-gallery .content-galleries .gallery-album:nth-child(-n+8) {
    display:block;
}

/* CONTENT */

.content div.part-gallery .content {
    padding:0;
}

.content div.part-gallery a.new-window {
  display: none;
}

.content div.part-gallery ul.breadcrumb {
    margin-bottom:16px;
}

.content div.part-gallery ul.breadcrumb li {
    display:inline-block;
    margin-left:5px;
}

.content div.part-gallery ul.breadcrumb li,
.content div.part-gallery ul.breadcrumb li a {
    text-transform:uppercase;
    color:var(--blue);
    font-size:14px;
    line-height:22px;
}

.content div.part-gallery > div.component-body div.gallery-album,
.content div.part-gallery > div.component-body div.gallery-image {
  margin: 3px;
  width: 174px;
  height:174px;
  display: block;
  overflow: hidden;
  background-color:#ffffff;
  float: left;
  position: relative;
  z-index:1;
  transition:0.3s;
  box-shadow:0 0 0 rgba(0,0,0,0.4);
}

.content div.part-gallery > div.component-body div.gallery-album:hover,
.content div.part-gallery > div.component-body div.gallery-image:hover {
    z-index:2;
    transform:scale(1.1,1.1);
    box-shadow:0 10px 10px rgba(0,0,0,0.4);
}

.content div.part-gallery > div.component-body div.gallery-album {
    
}

.content div.part-gallery div.gallery-image div.lastpic {
  overflow: hidden;
  text-align: center;
  position: relative;
  height:100%;
}

.content div.part-gallery div.gallery-image div.lastpic > div.vdate {
  padding: 5px;
  position: absolute;
  background-color:rgba(0,0,0,0.4);
  bottom: 0;
  left: 0;
  width:100%;
  transition:0.3s;
  color: #fff;
  opacity: 0;
  bottom:-32px;
  font-size:12px;
  line-height:16px;
}
.content div.part-gallery div.gallery-image div.lastpic:hover > div.vdate{
    opacity: 1;
    bottom:0;
}

.content div.part-gallery div.gallery-album div.lastpic > a,
.content div.part-gallery div.gallery-image div.lastpic > a {
  padding: 0;
  margin: 0;
  display:flex;
  justify-content:center;
  align-items:center;
  height:100%;
  overflow:hidden;
}

.content div.part-gallery div.gallery-album div.lastpic > a > img,
.content div.part-gallery div.gallery-image div.lastpic > a > img {
  max-width:none;
  width:auto;
  height:100%;
  margin:0;
  display:block;
}

.content div.part-gallery div.gallery-album.img-portrait div.lastpic > a > img,
.content div.part-gallery div.gallery-image.img-portrait div.lastpic > a > img {
  width:100%;
  height:auto;  
}

/*----+ VIDEO +----*/

.content div.part-gallery  div.gallery-image div.lastpic a div.video {
    display: block;
    width: 48px;
    height: 48px;
    position: absolute;
    background: transparent url(../gfx/video.png) 0 0 no-repeat;
    top: 50%;
    left: 50%;
    margin: -24px 0 0 -24px;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease-in-out;
    -moz-transition: opacity 0.3s ease-in-out;
    -ms-transition: opacity 0.3s ease-in-out;
    transition: opacity 0.3s ease-in-out;
}
.content div.part-gallery  div.gallery-image div.lastpic a:hover div.video{
    opacity: 1;
}

@media only screen and (max-width:639px) {
    
    body.home div.part-gallery h2.component-heading {
        padding:36px;
    }
    
    body.home div.part-gallery .content-galleries .gallery-album {
        width:50%;
        height:27vw;
    }
}