.wrapper {
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  display: block;
  z-index: 10;
}

.wrapper img {
  display: block;
  max-width: 100%;
  vertical-align: middle;
}

.box-container {
  width: 100%;
  height: 100%;
  overflow: hidden;
  left: 0;
  top: 0;
  display: flex;
  flex-flow: row wrap;
}

.box {
  width: 25%;
  height: 100%;
  position: relative;
  display: block;
  overflow: hidden;
}

.box div {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
}

.box .box-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.box-bg {
  display: block;
  z-index: 10;
  background-color: #fff;
  background-image: url('../images/banner-desktop.jpg');
  background-repeat: no-repeat;
}

.box-top,
.box-bottom {
  transition: transform .6s ease-out;
}

.box.active .box-top,
.box.active .box-bottom {
  transform: translateY(-100%);
}

.box1 .box-bg {
  background-position: 0px 0px
}

.box2 .box-bg {
  background-position: -320px 0px
}

.box3 .box-bg {
  background-position: -640px 0px
}

.box4 .box-bg {
  background-position: -960px 0px
}

.text-intro {
  background: #104c97;
  width: 100%;
  height: 70px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -35px;
  z-index: 9;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: scaleY(0);
}

.box-caption {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 200px;
  opacity: 0;
  visibility: hidden;
}

.box-bottom-bottom {
  position: absolute !important;
  height: auto !important;
  left: 0;
  bottom: 30px;
  margin: 0 auto;
}

.box-bottom-bottom img {
  margin: 0 auto;
  cursor: pointer;
}

.box-bottom img {
  cursor: pointer;
}

.logo-box-top {
  display: block;
  border: 10px solid #ffffff;
  width: calc(100% - 20px) !important;
  height: calc(100% - 55px) !important;
  position: absolute;
  left: 10px;
  top: 10px;
  background: url(../images/HILTON.png) no-repeat center bottom 15px;
  background-size: 100px auto;
  transition: height .5s ease;
}

.smartphone .logo-box-top {
  border: 3px solid #fff;
  width: calc(100% - 17px)!important;
  background-size: 70px auto;
  left: 5px;
}

.smartphone .box3 .logo-box-top,
.smartphone .box4 .logo-box-top {
  position: relative;
  bottom: 0px;
  top: 7px;
}

.smartphone .box-caption {
  width: 50%;
}

.height-auto {
  height: calc(100% - 20px) !important;
}

.mobile-view {
  display: none;
}


/* MOBILE AND TABLETS */

.isMobile .mobile-view {
  display: block;
}

.bg-mobile-box {
  position: absolute;
  left: 0;
  top: 0;
  overflow: hidden;
  z-index: 12;
  flex-flow: row wrap;
  width: 100%;
  height: 100%;
}

.bg-mobile-left {
  display: block;
  left: 0;
  top: 0;
  width: 50%;
  height: 100%;
  background: url('../images/banner-tablet.jpg') no-repeat;
  background-position: 0px 0px;
  background-size: 768px auto;
}

.bg-mobile-right {
  position: absolute;
  display: block;
  right: 0;
  top: 0;
  width: 50%;
  height: 100%;
  background: url('../images/banner-tablet.jpg') no-repeat;
  background-position: -384px 0px;
  background-size: 768px auto;
}

.smartphone .bg-mobile-left,
.smartphone .bg-mobile-right {
  display: none;
}

.isMobile .box {
  width: 50%;
  height: 50%;
}

.isMobile .box .box-bg {
  display: none;
}

.text-intro {
  background: #104c97;
  width: 100%;
  height: 70px;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -35px;
  z-index: 9;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: scaleY(0);
}

.isMobile .box1 .box-top {
  background: url(../images/BOX1-MOBILE.jpg) no-repeat center;
  background-size: 450px auto;
}

.isMobile .box2 .box-top {
  background: url(../images/BOX2-MOBILE.jpg) no-repeat center;
  background-size: 450px auto;
}

.isMobile .box3 .box-top {
  background: url(../images/BOX3-MOBILE.jpg) no-repeat center;
  background-size: 450px auto;
}

.isMobile .box4 .box-top {
  background: url(../images/BOX4-MOBILE.jpg) no-repeat center;
  background-size: 450px auto;
}

.isMobile .box-img {
  display: none;
}

.isMobile .box-caption {
  top: 30%;
  opacity: 1;
  visibility: visible;
}

.tablet .box-caption {
  width: 60%;
}

.isMobile .box-bottom>img {
  display: none;
}

.isMobile .box1 .box-bottom {
  background: #fff url(../images/MOBILE_TEXT1.png) no-repeat center;
  background-size: 100% auto;
}

.isMobile .box2 .box-bottom {
  background: #fff url(../images/MOBILE_TEXT2.png) no-repeat center;
  background-size: 100% auto;
}

.isMobile .box3 .box-bottom {
  background: #fff url(../images/MOBILE_TEXT3.png) no-repeat center;
  background-size: 100% auto;
}

.isMobile .box4 .box-bottom {
  background: #fff url(../images/MOBILE_TEXT4.png) no-repeat center;
  background-size: 100% auto;
}

.isMobile .box-bottom-bottom {
  bottom: 7%;
}

.isMobile .smartphone .box-bottom-bottom {
  bottom: 20px;
}

.isMobile .box-bottom-bottom img {
  max-width: 120px;
}

.isMobile .smartphone .box-bottom-bottom img {
  max-width: 100px;
}

.isMobile .close-button {
  background-position: center;
}

.isMobile .smartphone .close-button {
  background-size: 20px auto;
  width: 35px;
  height: 35px;
  background-position: top right;
}

.smartphone .text-intro {
  height: 42px;
  margin-top: -20px;
}

.smartphone .text-intro img {
  max-width: 90%;
}

.bg-smartphone {
  width: 100%;
  height: 100%;
  display: block;
  overflow: hidden;
  background: url(../images/banner-mobile.jpg) no-repeat center;
  background-size: 560px auto;
  display: none;
}

.smartphone .bg-smartphone {
  display: block;
}

.bg-smartphone-inner {
  width: 100%;
  height: 100%;
  border: 4px solid #0bb6f7;
}

.bg-smartphone-content,
.bg-smartphone-content div {
  position: relative;
}

.bg-smartphone-logo {
  display: block;
  max-width: 100px;
  margin: 0 auto 40px;
}

.bg-smartphone-text {
  display: block;
  max-width: 90%;
  margin: 0 auto;
}

.tablet_image .bg-smartphone-logo {
  margin: 0 auto 100px;
}

.tablet_image .bg-smartphone-text {
  left: 50%;
  transform: translateX(-36%);
}

@media only screen and (max-width: 550px) {
  .box {
      width: 50%;
      height: 50%;
  }
  .desktop {
      height: 100%;
      top: 0%;
  }
  .box-caption {
      top: 40%;
      width: 50%;
  }
  img.box-img {
      width: 100%;
      height: 100%;
  }
  .close {
      width: 6%;
  }
  .box-bottom img {
      width: 100%;
      height: 100%;
  }
  .box-bottom-bottom img {
      width: 50%;
      height: auto;
  }
  .box-bottom-bottom {
      bottom: 6%;
  }
}