.justified-gallery * {
box-sizing: border-box;	
}
.justified-gallery {
width: 100%;
position: relative;
overflow:hidden;
}
.justified-gallery > a,
.justified-gallery > div,
.justified-gallery > figure { 
position: absolute;
display: inline-block;
overflow: hidden;
opacity: 0;
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
}
.justified-gallery > a > img,
.justified-gallery > div > img,
.justified-gallery > a > a > img,
.justified-gallery > div > a > img,
.justified-gallery > figure > a > img,
.justified-gallery > figure > img {
position: absolute;
top: 50%;
left: 50%;
margin: 0;
padding: 0;
border: 0;
}
.justified-gallery > a > .caption,
.justified-gallery > div > .caption {
display: none;
position: absolute;
bottom: 0;
padding: 5px;
line-height: 1.4;
background-color: #000;
left: 0;
right: 0;
margin: 0;
color: #fff;
}
.justified-gallery > a > .caption.caption-visible,
.justified-gallery > div > .caption.caption-visible {
display: initial;
opacity: 1;
filter:"alpha(opacity=100)";
-webkit-animation: justified-gallery-show-caption-animation 500ms 0 ease;
-moz-animation: justified-gallery-show-caption-animation 500ms 0 ease;
-ms-animation: justified-gallery-show-caption-animation 500ms 0 ease;
animation: justified-gallery-show-caption-animation 500ms 0 ease;
}
.justified-gallery figure img {
position: relative;
display: block;
min-height: 100%;
max-width: 100%;
}
.justified-gallery figure figcaption {
padding: 1%;
width: 100%;
color: #fff;
text-transform: uppercase;
font-size: 1.25em;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
.justified-gallery figure figcaption > div {
padding: 1%;
width: 100%;
height: 100%;
color: #fff;
text-transform: uppercase;
font-size: 1.25em;
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
}
.justified-gallery figure figcaption::before,
.justified-gallery figure figcaption::after {
pointer-events: none;
}
.justified-gallery figure figcaption,
.justified-gallery figure figcaption > a {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}  .justified-gallery figure figcaption > a {
z-index: 1000;
text-indent: 200%;
white-space: nowrap;
font-size: 0;
opacity: 1;
outline: none;
height: 99%;
}
.justified-gallery figure figcaption::before {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: rgba(0,0,0,0.5);
content: '';
opacity: 0;
}
.justified-gallery figure p {
position: absolute;
bottom: 0;
width: 100%;
left: 0;
color: #ffffff;
letter-spacing: 1px;
font-size: 68.5%;
padding: 0em 1em 1em 1em;
margin: 0;
text-align: left;
font-weight: normal;
line-height: 1.3;
opacity: 0;
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
-webkit-hyphens: none;
-moz-hyphens: none;
-ms-hyphens: none;
hyphens: none;
}
.justified-gallery figure figcaption::before {
-webkit-transition: 0.4s ease-in-out;
-moz-transition: 0.4s ease-in-out;
-o-transition: 0.4s ease-in-out;
transition: 0.4s ease-in-out;
}
.justified-gallery figure:hover p {
opacity: 1;
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100); }
.justified-gallery figure:hover figcaption::before {
opacity: 1;
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
}
.justified-gallery > .entry-visible {
opacity: 1;
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
-webkit-animation: justified-gallery-show-entry-animation 500ms 0 ease;
-moz-animation: justified-gallery-show-entry-animation 500ms 0 ease;
-ms-animation:justified-gallery-show-entry-animation 500ms 0 ease;
animation:justified-gallery-show-entry-animation 500ms 0 ease;
}
.justified-gallery > .spinner {
position: absolute;
bottom: 0;
margin-left: -24px;
padding: 10px 0;
left: 50%;
opacity: initial;
filter: initial;
overflow: initial
}
.justified-gallery > .spinner>span {
display: inline-block;
opacity: 0;
filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
width: 8px;
height: 8px;
margin: 0 4px;
background-color: #000;
border-top-left-radius: 6px;
border-top-right-radius: 6px;
border-bottom-right-radius:6px;
border-bottom-left-radius:6px;
}