/* ==========================================================================
   HPP sections styles
   ========================================================================== */

/**/
/* MANSONRY GRID SECTION*/
/**/

#grid-section {
  text-align: -webkit-center;
}
#grid-section a {
  font-size: 12px;
}
.details ul li {
  list-style-type: none;
  padding: 2px;
  text-align: left !important;
}
#grid-section a {
  color: #fff;
}
.grid-item.two_two .details h2 {
  padding-left: 0px !important;
  text-align: left !important;
  margin-bottom: 0 !important;
  opacity: 1 !important;
  font-size: 1.5rem;
}

.grid-item.two_two .featured_img {
  cursor: pointer;
  opacity: 1 !important;
}

#grid-section {
  position: relative;
  overflow: hidden;

  background: #191919;

  min-height: 500px;
  padding: 6em 0;

  text-align: center;
  color: #fff;
}

#grid-section h1,
#grid-section p {
  position: relative;
}

#grid-section p {
  font-size: 1.3em;
  margin: 7px;
  letter-spacing: 0.1em;
}

.homepage-grid {
  padding-top: 0em;
}

.grid-item img {
  max-height: 100%;
  margin: 0 auto;
}

.grid-item {
  margin: 0px;
  float: left;
  position: relative;
  color: #fff;
  overflow: visible;

  width: 25%;
}

.grid-item.two_two .details,
.grid-item.two_two.active {
  background: #4b4b4b;

  -webkit-transition: background 0.4s ease;
  transition: background 0.4s ease;
}

.grid-item.two_two.left.active {
  border-left: none;
  border-right: 1px solid #ccc;
}

.grid-item.two_two.active .details {
  opacity: 1;
  z-index: 999;

  left: 100%;

  -webkit-transition: opacity 0.4s ease;
  transition: opacity 0.4s ease;
}

.grid-item.two_two .details .close {
  max-width: none;
  max-height: none;
  position: absolute;
  top: 1.5em;
  right: 2em;
  cursor: pointer;
}

.grid-item.two_two .details {
  position: absolute;
  width: 100%;
  top: 0;
  left: 100%;
  opacity: 0;
  z-index: -1;
  display: table;
  -webkit-transition: opacity 0.4s ease, background 0.4s ease;
  transition: opacity 0.4s ease, background 0.4s ease;
}

.grid-item.two_two.left .details {
  border-right: none;
  border-left: 1px solid #ccc;
}

.grid-item.two_two .details .container {
  padding-right: 5em;
  padding-left: 1em;
  text-align: center;
  display: table-cell;
  vertical-align: middle;
}

.grid-item.two_two.left .details .container {
  padding-right: 1em;
  padding-left: 5em;
}

.grid-item.two_two .featured_img {
  transform: scale(0.9);
  -webkit-transform: scale(0.9);

  -webkit-transition: transform 0.4s ease;
  transition: transform 0.4s ease;
}

.grid-item.two_two.active .featured_img,
.grid-item.two_two:hover .featured_img {
  transform: scale(1);
  -webkit-transform: scale(1);

  -webkit-transition: transform 0.4s ease;
  transition: transform 0.4s ease;
}

.grid-item.two_two.active.left .details {
  left: -100%;
}

.grid-item.two_two.active.left .details .close {
  right: initial;
  left: 2em;
}

.grid-item.two_two,
.grid-item.two_two .details {
  height: 11.9vw;
  display: table;
}

.grid-item.two_two .details h2 {
  margin-top: 0em;
  margin-bottom: 2em;
  font-weight: 400;
}

.grid-item.two_two .details span {
  font-size: 1.1em;
  line-height: 1.5;
}

.grid-item .content {
  height: 100%;
  padding: 5% 0;
  position: relative;
  overflow: visible;
  vertical-align: middle;
}

#grid-section .cta {
  display: inline-block;
  margin-top: 4em;
  margin-bottom: 1em;
  padding: 1em 2em;
  font-weight: 500;
  background: #191919;
  color: #fff;
  font-size: 1em;
  text-transform: uppercase;

  letter-spacing: 0.12em;
  text-align: center;
  cursor: pointer;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}

#grid-section .cta:hover {
  background: #191919;
  -webkit-transition: all 0.15s ease-out;
  -moz-transition: all 0.15s ease-out;
  transition: all 0.15s ease-out;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (min-width: 1920px) {
  .grid-item {
    width: 20%;
    height: 20vw !important;
  }

  .grid-item.two_two .details {
    height: 20vw !important;
  }
}

@media only screen and (max-width: 1319px) {
  .grid-item.two_two {
    width: 33.333%;
    height: 33vw !important;
  }

  .grid-item.two_two .details {
    height: 33vw !important;
  }

  .grid-item .content h1 {
    font-size: 2em;
  }

  .grid-item .content p {
    font-size: 1.1em !important;
  }

  .grid-item .cta.bottom-left {
    bottom: 2em;
    left: 3em;
  }

  .grid-item .cta.bottom-right {
    bottom: 2em;
    right: 2.5em;
  }

  .grid-item .cta.bottom-center {
    text-align: center;
    bottom: 3em;
  }

  .grid-item .cta button {
    font-size: 1.1em;
  }

  /*custom css*/
  .grid-item .rgb-logo {
    display: none;
  }

  .grid-item .rgb-wrapper {
    padding-top: 6%;
  }
}

@media only screen and (max-width: 992px) {
  .grid-item.two_two {
    width: 50%;
    height: 40vw !important;
  }

  .grid-item.two_two .details {
    height: 40vw !important;
  }
}

@media only screen and (max-width: 768px) {
  .homepage-grid {
    width: 100%;
    margin: 0;
    padding-top: 60px;
  }

  .grid-item {
    padding: 0;
    margin: 0;
  }

  .grid-item .gradient-layer {
    display: block;
  }

  .grid-item.two_two {
    width: 100%;
    height: 75vw !important;
  }

  .grid-item.two_two .details,
  .grid-item.two_two.active.left .details,
  .grid-item.two_two.left .details {
    height: 75vw !important;
    left: 0;
  }

  .grid-item img {
    max-width: 90%;
    max-height: 100%;
  }

  #grid-section {
    padding-bottom: 0;
  }
}

@media only screen and (max-width: 479px) {
  #grid-section {
    padding: 0;
  }

  #grid-section .wrapper.homepage-grid {
    padding: 0;
  }

  .grid-item.two_two .details .container,
  .grid-item.two_two.left .details .container {
    padding-right: 2em;
    padding-left: 2em;
    text-align: left;
  }

  .grid-item.two_two .details {
    border: none !important;
  }

  .grid-item.two_two .details span {
    font-size: 1em;
  }
}
