.location-nav {
  position: relative;
}

.location-nav__item {
  position: relative;
  overflow: hidden;
}

.location-nav__item img {
  -webkit-transform: scale(1.05);
          transform: scale(1.05);
  -webkit-transition: -webkit-transform 300ms;
  transition: -webkit-transform 300ms;
  transition: transform 300ms;
  transition: transform 300ms, -webkit-transform 300ms;
}

.location-nav__item:hover::after {
  opacity: 0;
}

.location-nav__item:hover img {
  -webkit-transform: scale(1);
          transform: scale(1);
}

.location-nav__item::after {
  content: '';
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000000;
  opacity: .4;
  -webkit-transition: opacity 300ms;
  transition: opacity 300ms;
}

.location-nav__title {
  display: none;
  text-transform: uppercase;
  font-size: 10px;
  color: #FFFFFF;
  letter-spacing: 1px;
}

.location-nav__overlay {
  opacity: 0.95;
  background: #262D3F;
  font-family: 'Moderat Trial', sans-serif;
  width: 220px;
  height: 120px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  padding: 20px;
  -webkit-transition: opacity 300ms;
  transition: opacity 300ms;
}

.location-nav__overlay, .location-nav__overlay a {
  font-size: 18px;
  line-height: 18px;
  color: #F3F3F3;
}

.location-nav__overlay a {
  -webkit-transition: color 300ms;
  transition: color 300ms;
}

.location-nav__overlay i {
  font-size: 18px;
  line-height: 18px;
  color: #27D7D8;
}

.location-nav__overlay:hover {
  opacity: .99;
  color: #27D7D8;
}

.location-nav__overlay:hover a {
  color: #27D7D8;
}

.location-nav__overlay-container {
  position: absolute;
  z-index: 200;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.location-nav__overlay-container--left i {
  margin-right: 10px;
}

.location-nav__overlay-container--left .location-nav__overlay {
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
}

.location-nav__overlay-container--right i {
  margin-left: 10px;
}

.location-nav__overlay-container--right .location-nav__overlay {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

@media (min-width: 768px) {
  .location-nav__title {
    display: inline;
    position: absolute;
    z-index: 300;
    top: calc(50% - 95px);
    left: calc(50% - 92px);
  }
  .location-nav__overlay {
    width: 320px;
    height: 250px;
    padding: 30px;
  }
  .location-nav__overlay, .location-nav__overlay i {
    font-size: 20px;
    line-height: 20px;
  }
  .location-nav__overlay-container--left {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
  .location-nav__overlay-container--right {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
