/* 4.0: CONTENT ------------------------------------------------- */
.home #main {
  padding: 0 !important;
}
.home #main-wrap {
  max-width: 100% !important;
}

/* HOMEPAGE BANNER ---------------------------------------------- */
.hp-banner {
  position: relative;
  z-index: 2;
  padding: 0 34px;
  background-color: transparent;
}
.hp-banner .wrap {

}
.hp-banner .banner-blocks {
  max-width: 1632px;
  width: 100%;
  margin: 0 auto;
}
.hp-banner .banner-block-set { }
.hp-banner .banner-block-set > .content,
.hp-banner .banner-block-set > .content * {
  box-sizing: border-box;
}
.hp-banner .banner-block-set > .content {
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -ms-flex-flow: row nowrap;
  -webkit-flex-flow: row nowrap;
  flex-flow: row nowrap;
}
.hp-banner .banner-block-set > .content .banner-block-title {
  position: absolute;
  bottom: 50%;
  left: 0;
  z-index: 2;
  width: 100%;
  color: #e04721;
  font-size: 150px;
  font-weight: 700;
  text-align: center;
}
.hp-banner .banner-block-set .banner-block-item {
  position: relative;
  z-index: 1;
  width: 33.3333%;
  padding: 0 16px;
}
.hp-banner .banner-block-set .banner-block-item .wrap {
  position: relative;
  height: 780px;
  border-bottom: 25px solid #e04721;
  background: #000 url('img/spacer.gif') center top no-repeat;
  background-size: cover;
}
.hp-banner .banner-block-set .banner-block-item .info {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  padding: 20px 10%;
  text-align: center;
}
.hp-banner .banner-block-set .banner-block-item .title {
  margin: 0 0 10px;
  color: #fff;
  font-size: 46px;
  font-weight: 800;
  line-height: 1em;
  text-transform: uppercase;
}
.hp-banner .banner-block-set .banner-block-item .caption {
  overflow: hidden;
  height: 2.45em;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2em;
}


/* HOMEPAGE BLOG SLIDER ----------------------------------------- */
.hp-blog {
  position: relative;
  z-index: 1;
  padding: 330px 50px 60px;
  margin: -150px 0 0;
  background: #15777e url('img/bg-torquoise-waves-repeating.jpg') 0 0 repeat;
}
.hp-blog > .wrap {
  max-width: 1620px;
  width: 100%;
  margin: 0 auto;
}
.hp-blog > .wrap h2 {
  margin: 0 0 1em;
  color: #fff;
  font-size: 30px;
  font-weight: 500;
  text-transform: uppercase;
}
.hp-blog > .wrap .more {
  padding-top: 50px;
  text-align: center;
}
.hp-blog > .wrap .more .btn {
  margin: 0;
}


/* HOMEPAGE OVERVIEW -------------------------------------------- */
.hp-overview.dual-column {
  padding: 120px 50px;
  background-color: #f1f1f1;
}
.hp-overview.dual-column .wrap {
  max-width: 1600px;
  box-shadow: 0 4px 7px rgba(38, 29, 22, 0.11);
}


/* PARTNERS GRID ------------------------------------------------ */
.home .partners-grid {
  padding: 100px 50px;
}
.home .partners-grid .wrap {
  max-width: 1200px;
  width: 100%;
}


@media screen and (max-width: 1700px) {

  /* HOMEPAGE BANNER ---------------------------------------------- */
  .hp-banner .banner-block-set > .content .banner-block-title {
    font-size: 8.8vw;
  }
  .hp-banner .banner-block-set .banner-block-item .title {
    font-size: 3.7vw;
  }

}


@media screen and (max-width: 1600px) {

  /* HOMEPAGE BLOG SLIDER ----------------------------------------- */
  .hp-blog {
    padding: 200px 50px 60px;
    margin: -100px 0 0;
  }


  /* HOMEPAGE OVERVIEW -------------------------------------------- */
  .hp-overview.dual-column {
    padding: 80px 50px;
  }

}


@media screen and (max-width: 1500px) {

  /* HOMEPAGE BANNER ---------------------------------------------- */
  .hp-banner .banner-block-set .banner-block-item .wrap {
    height: 690px;
  }
  .hp-banner .banner-block-set .banner-block-item .caption {
    height: 3.65em;
    font-size: 12px;
  }

}


@media screen and (max-width: 1300px) {

  /* HOMEPAGE BANNER ---------------------------------------------- */
  .hp-banner .banner-block-set .banner-block-item .wrap {
    height: 600px;
  }

}


@media screen and (max-width: 1100px) {

  /* HOMEPAGE BANNER ---------------------------------------------- */
  .hp-banner .banner-block-set .banner-block-item .wrap {
    height: 500px;
  }

}


@media screen and (max-width: 900px) { /* margins @ 40px */

  /* HOMEPAGE BANNER ---------------------------------------------- */
  .hp-banner {
    padding: 0;
  }
  .hp-banner .banner-block-set .banner-block-item {
    padding: 0;
  }

  /* HOMEPAGE BLOG SLIDER ----------------------------------------- */
  .hp-blog {
    padding: 50px 40px;
    margin: -10px 0 0;
  }
  .hp-blog > .wrap h2 {
    text-align: center;
  }


  /* HOMEPAGE OVERVIEW -------------------------------------------- */
  .hp-overview.dual-column {
    padding: 60px 40px;
  }


  /* PARTNERS GRID ------------------------------------------------ */
  .home .partners-grid {
    padding: 70px 40px;
  }

}


@media screen and (max-width: 800px) {

  /* HOMEPAGE BANNER ---------------------------------------------- */
  .hp-banner .banner-block-set .banner-block-item .info {
    bottom: 12px;
  }

}


@media screen and (max-width: 750px) {

  /* HOMEPAGE BANNER ---------------------------------------------- */
  .hp-banner .banner-block-set .banner-block-item .caption {
    height: 4.75em;
  }

}


@media screen and (max-width: 700px) { /* margins @ 30px */

  /* HOMEPAGE BLOG SLIDER ----------------------------------------- */
  .hp-blog {
    padding: 40px 30px;
  }


  /* HOMEPAGE OVERVIEW -------------------------------------------- */
  .hp-overview.dual-column {
    padding: 50px 30px;
  }


  /* PARTNERS GRID ------------------------------------------------ */
  .home .partners-grid {
    padding: 40px 30px;
  }

}


@media screen and (max-width: 600px) {

  /* HOMEPAGE BANNER ---------------------------------------------- */
  .hp-banner .banner-block-set .banner-block-item .caption {
    display: none;
  }

}


@media screen and (max-width: 500px) { /* margins @ 20px */

  /* HOMEPAGE BLOG SLIDER ----------------------------------------- */
  .hp-blog {
    padding: 30px 20px;
  }


  /* HOMEPAGE OVERVIEW -------------------------------------------- */
  .hp-overview.dual-column {
    padding: 30px 20px;
  }


  /* PARTNERS GRID ------------------------------------------------ */
  .home .partners-grid {
    padding: 30px 20px;
  }

}
