@-webkit-keyframes vls-gf-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

@keyframes vls-gf-spin {
  from {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  to {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

.vls-gf-gallery {
  position: relative;
  margin: 0;
  padding: 0;
  border: none; }
  .vls-gf-gallery button,
  .vls-gf-gallery button:hover,
  .vls-gf-gallery button:active,
  .vls-gf-gallery button:focus,
  .vls-gf-gallery a,
  .vls-gf-gallery a:hover,
  .vls-gf-gallery a:active,
  .vls-gf-gallery a:focus {
    outline: none; }
  .vls-gf-gallery .vls-gf-container:after {
    content: "";
    display: block;
    height: 1px;
    clear: both; }
  .vls-gf-gallery .vls-gf-container .vls-gf-item {
    position: absolute;
    overflow: hidden;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    z-index: 1;
    margin: 0; }
    .vls-gf-gallery .vls-gf-container .vls-gf-item.vls-gf-hidden {
      display: none; }
    .vls-gf-gallery .vls-gf-container .vls-gf-item:hover .vls-gf-info-back {
      opacity: 1; }
    .vls-gf-gallery .vls-gf-container .vls-gf-item a {
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 10; }
    .vls-gf-gallery .vls-gf-container .vls-gf-item .vls-gf-img {
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      margin: 0;
      border: none;
      overflow: hidden;
      z-index: 1;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0); }
      .vls-gf-gallery .vls-gf-container .vls-gf-item .vls-gf-img img {
        display: block;
        position: relative;
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        border: none; }
  .vls-gf-gallery.no-js .vls-gf-container .vls-gf-item {
    position: relative;
    float: left;
    width: 25%;
    padding-top: 25%; }
    .vls-gf-gallery.no-js .vls-gf-container .vls-gf-item a {
      position: absolute;
      left: 0;
      right: 0;
      top: 0;
      bottom: 0; }
      .vls-gf-gallery.no-js .vls-gf-container .vls-gf-item a img {
        max-width: 100%;
        max-height: 100%; }

.vls-gf-hidden {
  display: none; }

.vls-gf-clear {
  clear: both; }

.vls-gf-breadcrumbs {
  margin: 16px 0; }

.vls-gf-info-back {
  position: absolute;
  background-color: rgba(0, 0, 0, 0.52);
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  z-index: 10;
  -webkit-transition: opacity 600ms ease;
  transition: opacity 600ms ease; }
  .vls-gf-info-back .vls-gf-info-caption {
    color: white;
    padding: 10px 10px;
    font-size: 18px;
    text-transform: uppercase;
    margin: 0;
    text-align: center; }
  .vls-gf-info-back .vls-gf-info-description {
    color: white;
    padding: 2px 10px;
    margin: 0 0 10px 0;
    font-size: 14px;
    text-align: center; }

.vls-gf-album-info-none .vls-gf-info-caption {
  display: none; }

.vls-gf-album-info-none .vls-gf-info-description {
  display: none; }

.vls-gf-album-info-caption .vls-gf-info-description {
  display: none; }
