/* Gallery */
@-moz-keyframes gallery-modal-spinner {
    0% { -moz-transform: rotate(0deg); -webkit-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -moz-transform: rotate(360deg); -webkit-transform: rotate(360deg); -ms-transform: rotate(360deg); transform: rotate(360deg); }
}
@-webkit-keyframes gallery-modal-spinner {
  	0% { -moz-transform: rotate(0deg); -webkit-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -moz-transform: rotate(360deg); -webkit-transform: rotate(360deg); -ms-transform: rotate(360deg); transform: rotate(360deg); }
}
@-ms-keyframes gallery-modal-spinner {
    0% { -moz-transform: rotate(0deg); -webkit-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -moz-transform: rotate(360deg); -webkit-transform: rotate(360deg); -ms-transform: rotate(360deg); transform: rotate(360deg); }
}
@keyframes gallery-modal-spinner {
    0% { -moz-transform: rotate(0deg); -webkit-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg); }
  100% { -moz-transform: rotate(360deg); -webkit-transform: rotate(360deg); -ms-transform: rotate(360deg); transform: rotate(360deg); }
}

.gallery { }
/*.gallery > * { width: 20rem; height: 100%; }*/
.gallery .image { display: block; position: relative; border-bottom: 0; overflow: hidden; }
.gallery .image img { -moz-transition: -moz-transform 0.2s ease-in-out; -webkit-transition: -webkit-transform 0.2s ease-in-out; -ms-transition: -ms-transform 0.2s ease-in-out; transition: transform 0.2s ease-in-out; }
.gallery .image:after { -moz-transition: opacity 0.2s ease-in-out; -webkit-transition: opacity 0.2s ease-in-out; -ms-transition: opacity 0.2s ease-in-out; transition: opacity 0.2s ease-in-out; }
.gallery .image:hover img { -moz-transform: scale(1.025); -webkit-transform: scale(1.025); -ms-transform: scale(1.025); transform: scale(1.025); }
.gallery .image:hover:after { opacity: 0; }
.gallery .modal {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-align-items: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -moz-justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  pointer-events: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -moz-transition: opacity 0.5s ease, visibility 0.5s, z-index 0.5s;
  -webkit-transition: opacity 0.5s ease, visibility 0.5s, z-index 0.5s;
  -ms-transition: opacity 0.5s ease, visibility 0.5s, z-index 0.5s;
  transition: opacity 0.5s ease, visibility 0.5s, z-index 0.5s;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  position: fixed;
  background-color: rgba(46, 43, 55, 0.875);
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  outline: 0;
  visibility: none;
  z-index: 0;
  color: #000000;
}
.gallery .modal:before {
  -moz-animation: gallery-modal-spinner 1s infinite linear;
  -webkit-animation: gallery-modal-spinner 1s infinite linear;
  -ms-animation: gallery-modal-spinner 1s infinite linear;
  animation: gallery-modal-spinner 1s infinite linear;
  -moz-transition: opacity 0.25s ease;
  -webkit-transition: opacity 0.25s ease;
  -ms-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
  -moz-transition-delay: 0.5s;
  -webkit-transition-delay: 0.5s;
  -ms-transition-delay: 0.5s;
  transition-delay: 0.5s;
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  width: 4rem;
  height: 4rem;
  margin: -2rem 0 0 -2rem;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='96px' height='96px' viewBox='0 0 96 96' zoomAndPan='disable'%3E%3Cstyle%3Ecircle %7Bfill: transparent%3B stroke: rgba(255, 255, 255, 0.875)%3B stroke-width: 1.5px%3B %7D%3C/style%3E%3Cdefs%3E%3CclipPath id='corner'%3E%3Cpolygon points='0,0 48,0 48,48 96,48 96,96 0,96' /%3E%3C/clipPath%3E%3C/defs%3E%3Cg clip-path='url(%23corner)'%3E%3Ccircle cx='48' cy='48' r='32'/%3E%3C/g%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 4rem;
  opacity: 0;
}
.gallery .modal:after {
  content: '';
  display: block;
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  width: 4rem;
  height: 4rem;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='64px' height='64px' viewBox='0 0 64 64' zoomAndPan='disable'%3E%3Cstyle%3Eline %7Bstroke: rgba(255, 255, 255, 0.875)%3Bstroke-width: 1.5px%3B%7D%3C/style%3E%3Cline x1='20' y1='20' x2='44' y2='44' /%3E%3Cline x1='20' y1='44' x2='44' y2='20' /%3E%3C/svg%3E");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 3rem;
  cursor: pointer;
}
.gallery .modal .inner {
  -moz-transform: translateY(0.75rem);
  -webkit-transform: translateY(0.75rem);
  -ms-transform: translateY(0.75rem);
  transform: translateY(0.75rem);
  -moz-transition: opacity 0.25s ease, -moz-transform 0.25s ease;
  -webkit-transition: opacity 0.25s ease, -webkit-transform 0.25s ease;
  -ms-transition: opacity 0.25s ease, -ms-transform 0.25s ease;
  transition: opacity 0.25s ease, transform 0.25s ease;
  opacity: 0;
}
.gallery .modal .inner img { display: block; max-width: 90vw; max-height: 85vh; box-shadow: 0 1rem 3rem 0 rgba(0, 0, 0, 0.35); }
.gallery .modal.visible { pointer-events: auto; opacity: 1; visibility: visible; z-index: 11000; }
.gallery .modal.visible:before { opacity: 1; }
.gallery .modal.loaded .inner {
  -moz-transform: translateY(0);
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  -moz-transition: opacity 0.5s ease, -moz-transform 0.5s ease;
  -webkit-transition: opacity 0.5s ease, -webkit-transform 0.5s ease;
  -ms-transition: opacity 0.5s ease, -ms-transform 0.5s ease;
  transition: opacity 0.5s ease, transform 0.5s ease;
  opacity: 1;
}
.gallery .modal.loaded:before { -moz-transition-delay: 0s; -webkit-transition-delay: 0s; -ms-transition-delay: 0s; transition-delay: 0s; opacity: 0; }

@media screen and (max-width: 980px) { .gallery .modal .inner img { max-width: 100vw; } }





