.hero-v21{
    position: relative;
  }
  .hero-v21 .item .slide-bg,
  .hero-v21 {
    height: 50vh;
  }
    .hero-v21.home, .hero-v21.home .item .slide-bg {
    height: 80vh;
  }

  /* @media (min-width: 992px){
    .hero-v21 .item .slide-bg,
    .hero-v21 {
      height: 720px;
    }    
  } */
  .hero-v21.hero-subpage .item ,
  .hero-v21.hero-subpage .item .slide-bg,
  .hero-v21.hero-subpage {
    height: 600px;
  }
  .hero-v21 .item .caption-holder {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    background: rgba(0,0,0,0.3);
  }
  /* .hero-v21 .item .caption-holder h1 {
    text-transform: uppercase;
    font-weight: 700;
    font-size: 36px;
    text-shadow: 4px 6px 13px rgba(0,0,0,0.6);
  }
  */
  .hero-v21 .item .caption-holder h1 span{
    font-weight: 400;
    display: block;
  }
  .hero-v21 .item .caption-holder p {
    /* font-weight: 700;
    font-size: 22px;
    line-height: 26px; */
    color: #fff;
    /* text-shadow: 4px 6px 13px rgba(0,0,0,0.6); */
  }
  /* .hero-v21 .item .caption-holder a {
    font-size: 22px;
    text-transform: inherit;
    line-height: 1.2;
    font-weight: 300;
    color: #fff;
    display: inline-block;
    margin-top: 20px;
  } */


  .hero-v21 .table-cell {
    position: relative;
    z-index: 1;
  }
  
  .hero-v21 .carousel .carousel-indicator {
    position: absolute;
    right: 120px;
    width: auto;
    top: 50%;
    transform: translateY(-50%);
  }
  .hero-v21 .carousel .carousel-indicator .carousel-indicators {
    position: absolute;
    right: auto;
    left: 0;
    width: auto;
    height: auto !important;
    top: 50%;
    bottom: inherit;
    margin: 0;
    padding: 30px 0;
    display: block;
    transform: translateY(-50%);
  }
  .hero-v21 .carousel .carousel-indicators li {
    display: block;
    margin: 40px 5px;
    border: 2px solid #fff;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    border-radius: 50%;
    background: #fff;
    position: relative;
    z-index: 1;
    opacity: .7;
    transition: .7s;
  }
  .hero-v21 .carousel .carousel-indicators li::after {
    position: absolute;
    content: attr(data-slide-to-num);
    top: 50%;
    transform: translateY(-50%);
    right: -4ch;
  color: #fff;
  font-size: 12px;
  z-index: 2;
  text-indent: 0;
  opacity: 0;
  }

  .hero-v21 .carousel .carousel-indicators li:hover,
    .hero-v21 .carousel .carousel-indicators li.active {
    width: 10px;
    height: 10px;
    opacity: 1;
  }

  @media only screen and (max-width: 1199px) {
      .hero-v21 .item .caption-holder h1 {
          font-size: 48px;
      }
  }

  .hero-v21 .item .caption-holder .btn-primary {
      border: 2px solid #fff;
  }

  @media only screen and (max-width: 992px) {
    .hero-v21 .carousel .carousel-indicator {
      right: auto;
      left: 0;
      top: auto;
      bottom: 0;
      width: 100%;
      z-index: 999;
      height: auto;
    }
    .hero-v21 .carousel .carousel-indicator .carousel-indicators {
      width: 100%;
      padding-bottom: 40px;
      display: block;
      transform: inherit;
      flex: inherit;
      top: auto;
      bottom: 0;
      text-align: center;
      transform: translateY(0%);
    }
    .hero-v21 .carousel .carousel-indicator .carousel-indicators li {
      display: inline-block !important;
      margin: 0 4px;
    }
  }
  .slide-down {
    opacity: 0;
    -webkit-animation: slide-down 1s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
  }
  .slide-up {
    opacity: 0;
    -webkit-animation: slide-up 1s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
    animation-delay: var(--delay);
  }
  
  .slide-up-2x {
    opacity: 0;
    -webkit-animation: slide-up-2x 2s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
  }
  
  .slide-up-3x {
    opacity: 0;
    -webkit-animation: slide-up-3x 2s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
  }
  
  .slide-in {
    opacity: 0;
    -webkit-animation: slide-in 1s cubic-bezier(0.4, 0, 0.2, 1) 500ms forwards;
  }
  @-webkit-keyframes slide-down {
      0% { -webkit-transform: translateY(-200%); opacity: 1 }
      100% { -webkit-transform: translateY(0); opacity: 1  }
  }
  @-webkit-keyframes slide-up {
      0% { -webkit-transform: translateY(80px); opacity: 0 }
      100% { -webkit-transform: translateY(0); opacity: 1  }
  }
  @-webkit-keyframes slide-up-2x {
      0% { -webkit-transform: translateY(300%); opacity: 1 }
      100% { -webkit-transform: translateY(0); opacity: 1  }
  }
  @-webkit-keyframes slide-up-3x {
      0% { -webkit-transform: translateY(200%); opacity: 1 }
      100% { -webkit-transform: translateY(0); opacity: 1  }
  }
  @-webkit-keyframes slide-in {
      0% { -webkit-transform: translateX(200%); opacity: 1 }
      100% { -webkit-transform: translateX(0); opacity: 1  }
  }
  .hero-v21.hero-subpage .caption-holder .slide-up .btn-theme{
    margin: 10px;
  }
  .hero-v21.hero-subpage .caption-holder .slide-up .btn-white.btn-theme{
    margin: 10px;
  }
  @media (min-width:576px){
    .hero-v21.hero-subpage .caption-holder .slide-up .btn-white.btn-theme{
      margin-left: 20px;
    }
  }
  .hero-v21 .spacer {
      position: absolute;
    z-index: 1;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .hero-v21 .spacer .spacer-inner{
      height: 40px;
  }
  @media (min-width: 768px) {
      .hero-v21 .spacer .spacer-inner{
          height: 100px;
      }	
  }

  @media (min-width: 992px) {

    .hero-v21 .carousel .carousel-indicators li::after {
    opacity: 1;
    }
  
}
  @media (min-width: 1200px) {
      .hero-v21 .spacer .spacer-inner{
          height: 125px;
      }	

    
  }
  @media (min-width: 1800px) {
      .hero-v21 .spacer .spacer-inner{
          height: 185px;
      }	
  }
  
  .hero-v21.hero-subpage {
    border-bottom: 10px solid #006db6;
  }
  
  /* Bootstrap Fade In out Animation */
  /* YOUR CSS simplified */  
  .carousel-inner > .item > img, .carousel-inner > .item > a > img {
          display: block;
          height: auto;
          width: 100%;
          line-height: 1;
      }
  
  /*Bootstrap Carousel Fade Transition (for Bootstrap 3.3.x)
    CSS from:       http://codepen.io/transportedman/pen/NPWRGq
    and:            http://stackoverflow.com/questions/18548731/bootstrap-3-carousel-fading-to-new-slide-instead-of-sliding-to-new-slide
    Inspired from:  http://codepen.io/Rowno/pen/Afykb*/
  .carousel-fade .carousel-inner .item {
    opacity: 0;
    transition-property: opacity;
  }    
  .carousel-fade .carousel-inner .next.left,
  .carousel-fade .carousel-inner .prev.right {
    opacity: 1;
  }    
  .carousel-fade .carousel-control {
    z-index: 2;
  }
  
  /*WHAT IS NEW IN 3.3: "Added transforms to improve carousel performance in modern browsers."
    Need to override the 3.3 new styles for modern browsers & apply opacity*/
  @media all and (transform-3d), (-webkit-transform-3d) {
      .carousel-fade .carousel-inner > .item.next,
      .carousel-fade .carousel-inner > .item.active.right {
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
      }
      .carousel-fade .carousel-inner > .item.prev,
      .carousel-fade .carousel-inner > .item.active.left {
        opacity: 0;
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
      }
      .carousel-fade .carousel-inner > .item.next.left,
      .carousel-fade .carousel-inner > .item.prev.right,
      .carousel-fade .carousel-inner > .item.active {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0);
                transform: translate3d(0, 0, 0);
      }
  }
  
  
  .hero-v21 .banner-bottom-contact {
      position: relative;
      z-index: 9;
      
  }
  .hero-v21 .banner-bottom-contact-holder,
  .hero-v21 .banner-bottom-contact {
      background: rgba(37, 37, 37, 1);
  }
  @media (min-width: 992px) {
      .hero-v21 .banner-bottom-contact {
          position: absolute;
          left: 0;
          right: 0;
          bottom: -70px;
          z-index: 9;
          background: transparent;
      }
  }
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder {
      padding: 50px;
  }
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget,
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget-sm {
      color: #fff;
  }
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget p,
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget-sm p {
      color: #fff;
  } 
  .hero-v21 .banner-bottom-contact-holder .contact-widget a {
      font-size: 20px;
      line-height: 22px;
      color: #006db6;
  }
  @media (min-width: 768px) {
      .hero-v21 .banner-bottom-contact-holder .contact-widget a {
          font-size: 38px;
          line-height: 42px;
      }
  }
  .hero-v21 .banner-bottom-contact-holder .contact-widget a i {
      margin-right: 10px;
  }
  .hero-v21 .banner-bottom-contact-holder .contact-widget a:hover {
      color: #fff;
  }
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget-sm {
      position: relative;
      padding-left: 65px;
  }
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget-sm span {
      font-size: 13.6;
      font-weight: 500;
      padding-bottom: 12px;
      display: block;
  }
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget-sm p {
      font-size: 14px;
      line-height: 23px;
      margin: 0;
  }
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget-sm p em {
      font-style: normal;
      color: #565656;
  }
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget-sm .widget-icon {
      position: absolute;
      left: 0;
      top: 0;
      opacity: 0.4;
      transition: all 0.35s ease-out;
  }
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget-sm:hover .widget-icon {
      opacity: 1;
  }
  
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget-sm-hours,
  .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget {
      padding-bottom: 70px;
  }
  @media (min-width: 992px) {
      .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget-sm-hours,
      .hero-v21 .banner-bottom-contact .banner-bottom-contact-holder .contact-widget {
          padding-bottom: 0;
      }
  }





@media only screen and (max-width: 768px) {
  .hero-variant.hero-v21,
  .hero-variant.hero-v21 .item,
  .hero-variant.hero-v21 .item .slide-bg {
    height: 90vh !important;
  }
}

@media only screen and (max-width: 768px) {
  .hero-variant.hero-v21 .caption-holder {
    padding-top: 50px;
    padding-left: 0 !important;
    margin-left: -10px !important;
  }
}

