body {
  font-family: 'BenchNine', sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
  font-family: 'BenchNine', sans-serif;
}

hr.star-light,
hr.star-dark {
  max-width: 15rem;
  padding: 0;
  text-align: center;
  border: none;
  border-top: solid 0.25rem;
  margin-top: 2.5rem;
  margin-bottom: 2.5rem;
}

hr.star-light:after,
hr.star-dark:after {
  position: relative;
  top: -.8em;
  display: inline-block;
  padding: 0 0.25em;
  content: '\f005';
  font-family: FontAwesome;
  font-size: 2em;
}

hr.star-light {
  border-color: #fff;
}

hr.star-light:after {
  color: #fff;
  background-color: #E52628;
}

hr.star-dark {
  border-color: #1D1D1B;
}

hr.star-dark:after {
  color: #1D1D1B;
  background-color: white;
}

section {
  padding: 6rem 0;
}

section h2 {
  font-size: 2.25rem;
  line-height: 2rem;
}

@media (min-width: 992px) {
  section h2 {
    font-size: 3rem;
    line-height: 2.5rem;
  }
}

.btn-xl {
  padding: 1rem 1.75rem;
  font-size: 1.25rem;
}

.btn-social {
  width: 3.25rem;
  height: 3.25rem;
  font-size: 1.25rem;
  line-height: 2rem;
}

.scroll-to-top {
  z-index: 1042;
  right: 1rem;
  bottom: 1rem;
  display: none;
}

.scroll-to-top a {
  width: 3.5rem;
  height: 3.5rem;
  background-color: rgba(33, 37, 41, 0.5);
  line-height: 3.1rem;
}

#mainNav {
  padding-top: 1rem;
  padding-bottom: 1rem;
  font-weight: 700;
  font-family: 'BenchNine', sans-serif;
  font-size: 1.9em;
}

#mainNav .navbar-brand {
  color: #fff;
}

#mainNav .navbar-nav {
  margin-top: 1rem;
  letter-spacing: 0.0625rem;
}

#mainNav .navbar-nav li.nav-item a.nav-link {
  color: #fff;
}

#mainNav .navbar-nav li.nav-item a.nav-link:hover {
  color: #E52628;
}

#mainNav .navbar-nav li.nav-item a.nav-link:active, #mainNav .navbar-nav li.nav-item a.nav-link:focus {
  color: #fff;
}

#mainNav .navbar-nav li.nav-item a.nav-link.active {
  color: #E52628;
}

#mainNav .navbar-toggler {
  font-size: 80%;
  padding: 0.8rem;
}

@media (min-width: 992px) {
  #mainNav {
    padding-top: 1.0rem;
    padding-bottom: 1.0rem;
    -webkit-transition: padding-top 0.3s, padding-bottom 0.3s;
    -moz-transition: padding-top 0.3s, padding-bottom 0.3s;
    transition: padding-top 0.3s, padding-bottom 0.3s;
  }
  #mainNav .navbar-brand {
    font-size: 1em;
    -webkit-transition: font-size 0.3s;
    -moz-transition: font-size 0.3s;
    transition: font-size 0.3s;
  }
  #mainNav .navbar-nav {
    margin-top: 0;
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link.active {
    color: #fff;
    background: #E52628;
  }
  #mainNav .navbar-nav > li.nav-item > a.nav-link.active:active, #mainNav .navbar-nav > li.nav-item > a.nav-link.active:focus, #mainNav .navbar-nav > li.nav-item > a.nav-link.active:hover {
    color: #fff;
    background: #E52628;
  }
  #mainNav.navbar-shrink {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  #mainNav.navbar-shrink .navbar-brand {
    font-size:0.9em;
  }
}

header.masthead {
  padding-top: calc(6rem + 72px);
  padding-bottom: 0px;
}

header.masthead h1 {
  font-size: 3rem;
  line-height: 3rem;
}

header.masthead h2 {
  font-size: 1.3rem;
  font-family: 'Lato';
}

@media (min-width: 992px) {
  header.masthead {
    padding-top: calc(6rem + 16px);
  }
  header.masthead h1 {
    font-size: 4.75em;
    line-height: 4rem;
  }
  header.masthead h2 {
    font-size: 1.75em;
  }
}

.portfolio {
  margin-bottom: -15px;
}

.portfolio .portfolio-item {
  position: relative;
  display: block;
  max-width: 25rem;
  margin-bottom: 15px;
}

.portfolio .portfolio-item .portfolio-item-caption {
  -webkit-transition: all ease 0.5s;
  -moz-transition: all ease 0.5s;
  transition: all ease 0.5s;
  opacity: 0;
  background-color: rgba(24, 188, 156, 0.9);
}

.portfolio .portfolio-item .portfolio-item-caption:hover {
  opacity: 1;
}

.portfolio .portfolio-item .portfolio-item-caption .portfolio-item-caption-content {
  font-size: 1.5rem;
}

@media (min-width: 576px) {
  .portfolio {
    margin-bottom: -30px;
  }
  .portfolio .portfolio-item {
    margin-bottom: 30px;
  }
}

.portfolio-modal .portfolio-modal-dialog {
  padding: 3rem 1rem;
  min-height: calc(100vh - 2rem);
  margin: 1rem calc(1rem - 8px);
  position: relative;
  z-index: 2;
  -moz-box-shadow: 0 0 3rem 1rem rgba(0, 0, 0, 0.5);
  -webkit-box-shadow: 0 0 3rem 1rem rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 3rem 1rem rgba(0, 0, 0, 0.5);
}

.portfolio-modal .portfolio-modal-dialog .close-button {
  position: absolute;
  top: 2rem;
  right: 2rem;
}

.portfolio-modal .portfolio-modal-dialog .close-button i {
  line-height: 38px;
}

.portfolio-modal .portfolio-modal-dialog h2 {
  font-size: 2rem;
}

@media (min-width: 768px) {
  .portfolio-modal .portfolio-modal-dialog {
    min-height: 100vh;
    padding: 5rem;
    margin: 3rem calc(3rem - 8px);
  }
  .portfolio-modal .portfolio-modal-dialog h2 {
    font-size: 3rem;
  }
}

.floating-label-form-group {
  position: relative;
  border-bottom: 1px solid #e9ecef;
}

.floating-label-form-group input,
.floating-label-form-group textarea {
  font-size: 1.5em;
  position: relative;
  z-index: 1;
  padding-right: 0;
  padding-left: 0;
  resize: none;
  border: none;
  border-radius: 0;
  background: none;
  box-shadow: none !important;
}

.floating-label-form-group label {
  font-size: 0.85em;
  line-height: 1.764705882em;
  position: relative;
  z-index: 0;
  top: 2em;
  display: block;
  margin: 0;
  -webkit-transition: top 0.3s ease, opacity 0.3s ease;
  -moz-transition: top 0.3s ease, opacity 0.3s ease;
  -ms-transition: top 0.3s ease, opacity 0.3s ease;
  transition: top 0.3s ease, opacity 0.3s ease;
  vertical-align: middle;
  vertical-align: baseline;
  opacity: 0;
}

.floating-label-form-group:not(:first-child) {
  padding-left: 14px;
  border-left: 1px solid #e9ecef;
}

.floating-label-form-group-with-value label {
  top: 0;
  opacity: 1;
}

.floating-label-form-group-with-focus label {
  color: #E52628;
}

form .row:first-child .floating-label-form-group {
  border-top: 1px solid #e9ecef;
}

.footer {
  padding-top: 5rem;
  padding-bottom: 5rem;
  background-color: #1D1D1B;
  color: #fff;
}

.copyright {
  background-color: #0f0f39;
}

a {
  color: #E52628;
}

a:focus, a:hover, a:active {
  color: #128f76;
}

.btn {
  border-width: 2px;
}

.bg-primary {
  background-color: #E52628 !important;
}

.bg-secondary {
  background-color: #000 !important;
}

.text-primary {
  color: #E52628 !important;
}

.text-secondary {
  color: #1D1D1B !important;
}

.btn-primary {
  background-color: #E52628;
  border-color: #E52628;
}

.btn-primary:hover, .btn-primary:focus, .btn-primary:active {
  background-color: #128f76;
  border-color: #128f76;
}

.btn-secondary {
  background-color: #1D1D1B;
  border-color: #1D1D1B;
}

.btn-secondary:hover, .btn-secondary:focus, .btn-secondary:active {
  background-color: #0f0f39;
  border-color: #0f0f39;
}

.section-divider-top {
  border-top: solid 20px #0F0F39;
}

.header-img-container {
  min-height: 523px;
  background-image: url('../img/banner.jpg');
  background-repeat: no-repeat;
  background-size: 1348px 523px;
  background-position: center top;
  /*padding: 40px; (If don't want to set min-height or some image content is there) */
}

.section-container {
  width: 1348px;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  max-width: 100%;
}
.ch1-img-container {
  min-height: 528px;
  background-image: url('../img/bg1.jpg');
  background-repeat: no-repeat;
  background-size: 1348px 528px;
  background-position: center top;
}
.ch2-img-container {
  min-height: 537px;
  background-image: url('../img/bg2.jpg');
  background-repeat: no-repeat;
  background-size: 1348px 537px;
  background-position: center top;
}
.ch3-img-container {
  min-height: 540px;
  background-image: url('../img/bg3.jpg');
  background-repeat: no-repeat;
  background-size: 1348px 540px;
  background-position: center top;
}
.ch4-img-container {
  min-height: 539px;
  background-image: url('../img/bg4.jpg');
  background-repeat: no-repeat;
  background-size: 1348px 539px;
  background-position: center top;
}
.ch5-img-container {
  min-height: 395px;
  background-image: url('../img/bg5.jpg');
  background-repeat: no-repeat;
  background-size: 1348px 395px;
  background-position: center top;
}
.ch6-img-container {
  min-height: 540px;
  background-image: url('../img/bg6.jpg');
  background-repeat: no-repeat;
  background-size: 1348px 540px;
  background-position: center top;
}
.ch7-img-container {
  min-height: 532px;
  background-image: url('../img/bg7.jpg');
  background-repeat: no-repeat;
  background-size: 1348px 532px;
  background-position: center top;
}

.vid-container {
  min-height: 292px;
  background-image: url('../img/laptop_movie.png');
  background-repeat: no-repeat;
  background-size: 458px 292px;
  background-position: center top;
  position: relative;
  width: 458px;
  height: 292px;
}
.vid-container iframe {
  position: absolute;
  left: 54px;
  top: 22px;
}

.vid1 {
  top: 36px;
  left: 12%;
}
.vid2 {
  top: 80px;
  left: 55%;
}
.vid3 {
  top: 67px;
  left: 16%;
}
.vid4 {
  top: 80px;
  left: 55%;
}
.vid5 {
  top: 52px;
  left: 15%;
}
.vid6 {
  top: 45px;
  left: 54%;
}
.vid7 {
  top: 47px;
  left: 16%;
}

section.challenge {
  padding: 0px;
}

.ch-info-container {
  font-family: 'Montserrat', sans-serif;
  width: 550px;
  position: absolute;
  top: 0px;
}

.ch-info-container .title {
  font-size: 29px;
  font-weight: 700;
  color: #000;
  margin-bottom: 50px;
  text-align:left;
  line-height: 1em;
}

.ch-info-container .desc {
  font-size: 19px;
  font-weight: 600;
  color: #fff;
  text-align:left;
}

#ch1 .ch-info-container {
  top: 125px;
  right: 20px;
}
#ch1 .title {
  margin-left: 120px;
}

#ch2 .ch-info-container {
  top: 125px;
  left: 20px;
}


#ch3 .ch-info-container {
  top: 125px;
  right: 20px;
}
#ch3 .title {
  margin-left: 120px;
}

#ch4 .ch-info-container {
  top: 125px;
  left: 20px;
}


#ch5 .ch-info-container {
  top: 125px;
  right: 20px;
}
#ch5 .title {
  margin-left: 120px;
}

#ch6 .ch-info-container {
  top: 115px;
  left: 20px;
}


#ch7 .ch-info-container {
  top: 175px;
  right: 20px;
}
#ch7 .title {
  margin-left: 120px;
}
body {
  background-color: #000!important;
}


.white-bg {
    background-color: #fff!important;
}


@media (max-width: 991.98px) {
  body {
    background-color: #fff!important;
  }
  #logo {
    width: 150px;
  }
  .header-img-container {
    min-height: 150px;
    background-size: contain;
  }

  .ch1-img-container {
    background: none;
  }
  .ch2-img-container {
    background: none;
  }
  .ch3-img-container {
    background: none;
  }
  .ch4-img-container {
    background: none;
  }
  .ch5-img-container {
    background: none;
  }
  .ch6-img-container {
    background: none;
  }
  .ch7-img-container {
    background: none;
  }

  .vid-container {
    max-width: 95%;
    position: relative;
    left: 0px;
    top: 20px;
    margin: 0px auto;
    background-size: contain;
  }

  .vid-container iframe {
    width: 76%;
    position: absolute;
    left: 12%;
    top: 5%;
    height: 59%;
  }

  .ch-info-container {
    max-width: 100%;
    width: 100%;
    position: relative;
    top: 0px !important;
    left: 0px !important;
    right: 0px !important;
  }

  .ch-info-container .desc {
    max-width: 100%;
    position: relative;
    left: 0px;
    top: 0px;
    padding: 20px;
    background-color: rgba(229, 39, 39,  0.8);
  }
  .ch-info-container .title {
    max-width: 100%;
    width: 100%;
    position: relative;
    left: 0px;
    top: 0px;
    margin: 0px!important;
    text-align: center;
    background-color: rgba(255,255,255,0.8);
    padding: 20px 0px;
  }
  .ch-vid-container {
    background-color: rgba(166, 204, 213, 0.8);
  }

  header.masthead {
    padding-top: 28%;
  }
  #challenge {
    background-image: url('../img/bg-mobile.png');
    background-repeat: repeat-y;
    background-size: 992px 2952px;
    background-position: center top;
  }
  section {
    padding: 2rem 0;
  }
}


