/**
 * @file
 * Visual styles for Levelplus's masonry grid views.
 */

.masonry-grid-item {
  list-style: none;
}
.grid-masonry-container,
.grid-masonry-container-style-2,
.grid-masonry-isotope-container {
  display: none;
}
.style-2 .masonry-grid-item {
  overflow: hidden;
}
.masonry-grid-item-image {
  width: 50%;
  float: left;
  position: relative;
}
.masonry-grid-item-image a {
  display: block;
}
.masonry-grid-item-image a:after {
  position: absolute;
  width: 100%;
  height: 100%;
  content: "";
  background-color: rgba(0, 0, 0, 0.3);
  left: 0;
  top: 0;
}
.masonry-grid-item-body {
  height: 100%;
  width: 100%;
  color: #ffffff;
  padding: 20px;
  -webkit-transition: ease-in-out 0.2s;
  -o-transition: ease-in-out 0.2s;
  transition: ease-in-out 0.2s;
}
.masonry-grid-item-image + .masonry-grid-item-body {
  left: 50%;
  width: 50%;
  position: absolute;
}
.masonry-grid-item-image + .masonry-grid-item-body:after {
  content: "\f0d9";
  font-family: "FontAwesome";
  font-size: 70px;
  position: absolute;
  left: -20px;
  top: 50%;
  line-height: 70px;
  margin-top: -35px;
  -webkit-transition: ease-in-out 0.2s;
  -o-transition: ease-in-out 0.2s;
  transition: ease-in-out 0.2s;
}
.masonry-grid-item:hover .masonry-grid-item-body:after {
  color: #e8eff6;
}
.masonry-grid-item-body .views-field-body {
  -webkit-transition: ease-in-out 0.3s;
  -o-transition: ease-in-out 0.3s;
  transition: ease-in-out 0.3s;
}
.masonry-grid-item:hover .masonry-grid-item-body {
  background-color: #e8eff6;
}
.masonry-grid-item-body h2 {
  margin-top: 0px;
  text-transform: none;
  font-size: 1.37em;
}
.masonry-grid-item-body h2 a {
  color: #ffffff;
}
.masonry-grid-item:hover .masonry-grid-item-body .views-field-body {
  opacity: 0;
  filter: alpha(opacity=0);
}
.masonry-grid-item .masonry-grid-item-body .button-wrapper {
  position: absolute;
  bottom: -60px;
  width: 100%;
  left: 0;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: ease-in-out 0.3s;
  -o-transition: ease-in-out 0.3s;
  transition: ease-in-out 0.3s;
}
.masonry-grid-item:hover .masonry-grid-item-body .button-wrapper {
  bottom: 20px;
  opacity: 1;
  filter: alpha(opacity=100);
}
.view-promoted-items-masonry:not(.style-2) .more-link a {
  font-size: 2em;
  text-transform: none;
  font-weight: 100;
  border: none;
  -webkit-transition: ease-in-out 0.3s;
  -o-transition: ease-in-out 0.3s;
  transition: ease-in-out 0.3s;
}
.view-promoted-items-masonry:not(.style-2) .more-link a:hover {
  background-color: transparent;
}
.view-promoted-items-masonry:not(.style-2) .more-link a:after {
  font-size: 0.8em;
  right: 5px;
  content: "+";
  -webkit-transform: scale(1) rotate(0);
  -ms-transform: scale(1) rotate(0);
  -o-transform: scale(1) rotate(0);
  transform: scale(1) rotate(0);
}
.view-promoted-items-masonry:not(.style-2) .more-link a:before {
  right: 10px;
  content: "\f105";
  font-family: "FontAwesome";
  opacity: 0;
  filter: alpha(opacity=0);
  font-size: 0.7em;
  position: absolute;
  top: 54%;
  margin-top: -0.5em;
  line-height: 1em;
  -webkit-transform: scale(0.4) rotate(45deg);
  -ms-transform: scale(0.4) rotate(45deg);
  -o-transform: scale(0.4) rotate(45deg);
  transform: scale(0.4) rotate(45deg);
  -webkit-transition: ease-in-out 0.3s;
  -o-transition: ease-in-out 0.3s;
  transition: ease-in-out 0.3s;
}
.view-promoted-items-masonry:not(.style-2) .more-link a:hover:after {
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transform: scale(0.4) rotate(45deg);
  -ms-transform: scale(0.4) rotate(45deg);
  -o-transform: scale(0.4) rotate(45deg);
  transform: scale(0.4) rotate(45deg);
  -webkit-transition: ease-in-out 0.3s;
  -o-transition: ease-in-out 0.3s;
  transition: ease-in-out 0.3s;
}
.view-promoted-items-masonry:not(.style-2) .more-link a:hover:before {
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: scale(1) rotate(0);
  -ms-transform: scale(1) rotate(0);
  -o-transform: scale(1) rotate(0);
  transform: scale(1) rotate(0);
}
.colored-region:not(.dark) .masonry-grid-item-body a.button,
.colored-region:not(.dark) .masonry-grid-item-body a.button:after,
.colored-region:not(.dark) .view-promoted-items-masonry:not(.style-2) .more-link a:before,
.colored-region:not(.dark) .view-promoted-items-masonry:not(.style-2) .more-link a:after,
.masonry-grid-item-body a.button:hover,
.masonry-grid-item-body a.button:hover:after,
.dark .masonry-grid-item-body a.button:hover,
.dark .masonry-grid-item-body a.button:hover:after {
  color: #ffffff;
}
.colored-region .view-promoted-items-masonry:not(.style-2) .more-link a,
.colored-region .view-promoted-items-masonry:not(.style-2) .more-link a:hover {
  background-color: transparent;
  color: #ffffff;
}
@media (min-width:481px) {
  .masonry-grid-item:nth-child(4n+4) .masonry-grid-item-image,
  .masonry-grid-item:nth-child(4n+3) .masonry-grid-item-image {
    left: 50%;
  }
  .masonry-grid-item:nth-child(4n+4) .masonry-grid-item-image + .masonry-grid-item-body,
  .masonry-grid-item:nth-child(4n+3) .masonry-grid-item-image + .masonry-grid-item-body {
    left: 0;
  }
  .masonry-grid-item:nth-child(4n+4) .masonry-grid-item-image + .masonry-grid-item-body:after,
  .masonry-grid-item:nth-child(4n+3) .masonry-grid-item-image + .masonry-grid-item-body:after {
    content: "\f0da";
    right: -20px;
    left: auto;
  }
}
@media (min-width:481px) and (max-width:767px) {
  .masonry-grid-item-body h2 {
    font-size: 1em;
  }
  .masonry-grid-item .masonry-grid-item-body .views-field-body {
    font-size: 0.8em;
  }
}
@media (min-width:992px) and (max-width:1199px) {
  .masonry-grid-item-body h2 {
    font-size: 1.12em;
  }
  .masonry-grid-item .masonry-grid-item-body .views-field-body {
    font-size: 0.87em;
  }
  .grid-masonry-container-style-2 .views-row {
    min-height: 445px;
  }
}
@media (min-width:1200px) {
  .grid-masonry-container-style-2 .views-row {
    min-height: 493px;
  }
}
@media (max-width:767px) {
  .masonry-grid-item {
    max-width: 100%;
  }
}
@media (max-width:480px) {
  .masonry-grid-item-image {
    width: auto;
    float: none;
  }
  .masonry-grid-item-image + .masonry-grid-item-body {
    position: relative;
    left: auto;
    width: 100%;
  }
  .masonry-grid-item-image + .masonry-grid-item-body:after {
    content: "\f0d8";
    left: 50%;
    top: -10px;
    margin-left: -35px;
    width: 70px;
    text-align: center;
  }
}
