/* ============================================================
   HERO
/* ============================================================ */
.hero {
  position: relative; }
  @media (max-width: 991px) {
    .hero {
      height: 100% !important; } }

.hero h1, .hero h2, .hero h3, .hero h4, .hero h5, .hero p {
  color: #fff; }

.hero__background-overlay {
  position: absolute;
  width: 100%;
  height: 100%; }

.hero__video-background {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  overflow: hidden; }

.hero__video-background video {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  min-height: 100%;
  min-width: 100%;
  height: auto;
  width: 100%;
  object-fit: cover;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.hero__cta-card {
  background: #fff;
  padding: 20px 20px 0;
  position: absolute;
  bottom: 0;
  right: 40px;
  text-align: center;
  border-bottom: 1px solid #E1E5E4; }
  @media (max-width: 991px) {
    .hero__cta-card {
      position: relative;
      display: block;
      width: 100%;
      bottom: -35px;
      left: 0; } }
  @media (min-width: 992px) and (max-width: 1199px) {
    .hero__cta-card {
      right: 0; } }

/*** temp promo styles for cta card ***/
.hero-temp-header {
  font-family: "DomaineDisplayNarrowBold", helvetica, serif;
  text-transform: uppercase;
  font-size: 1.955rem;
  margin-bottom: 20px; }

.hero-temp-description {
  margin-bottom: 20px; }
  .hero-temp-description span {
    text-transform: uppercase;
    font-weight: bold;
    font-size: 0.875rem;
    letter-spacing: 1px;
    display: block; }
  .hero-temp-description span.km-temp-standout {
    font-size: 1.3125rem;
    padding: 1px 0;
    font-family: "ProximaNova-Bold", helvetica, sans-serif;
    color: #C30019;
    letter-spacing: 2px; }
