/*********************************************************

# Hero

*********************************************************/

.lbv-hero {
   position: relative;
   min-height: 400px;
   display: flex;
   align-items: center;
   padding: 2rem;
   box-sizing: border-box;
   margin: 0 auto;
   width: 100%;
   max-width: 1060px;
}
.lbv-hero .lbv-hero__image-wrapper {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   bottom: 0;
   height: 100%;
   width: 100%;
}

.lbv-hero.lbv-hero::after {
   position: absolute;
   z-index: 0;
   content: "";
   width: 100%;
   top: 0;
   bottom: 0;
   left: 0;
   right: 0;
   background-image: linear-gradient(
      135deg,
      rgba(0, 0, 0, 0.53) 0,
      rgba(17, 30, 51, 0) 81%
   );
}

.lbv-hero .lbv-hero__image-wrapper img {
   width: 100%;
   height: 100%;
   object-fit: cover;
}

.lbv-hero .lbv-hero__content {
   position: relative;
   z-index: 1;
   text-align: left;
   padding: 6.5rem 1.4rem 2rem;
   padding-right: 25%;
   width: 100%;
   max-width: 1130px;
   margin-right: auto;
   margin-left: auto;
   box-sizing: border-box;
}

.lbv-hero h1.lbv-hero__heading,
.lbv-hero h2.lbv-hero__heading,
.lbv-hero h3.lbv-hero__heading,
.lbv-hero h4.lbv-hero__heading {
   margin: 0;
   color: #fff;
   font-size: 3.6rem;
   line-height: 4.4rem;
   text-shadow: 0 3px 2px rgba(0, 0, 0, 0.4);
   margin-top: 0;
   margin-bottom: 0.4em;
   font-weight: 600;
}

.lbv-hero .lbv-hero__text {
   color: #fff;
   font-size: 1.6rem;
   line-height: 2.2rem;
   text-shadow: 0 2px 3px rgba(0, 0, 0, 0.5);
}

.lbv-hero .lbv-hero__heading > .lbv-hero__item-link {
   color: #fff;
   text-decoration: none;
}

.lbv-hero .lbv-hero__heading > .lbv-hero__item-link:hover {
   color: #fff;
   text-decoration: underline;
}

.lbv-hero .lbv-hero__item-link:not(.lbv-hero__heading > a) {
   font-size: 1.125rem;
   text-decoration: none;
   font-weight: 500;
   text-align: center;
   cursor: pointer;
   display: inline-block;
   transition: all 0.1s ease-out;
   padding: 1rem 2rem;
   line-height: 1.5;
   background-color: #e2f0d4;
   color: #000;
   margin-top: 2em;
   border-radius: 6px;
}

.lbv-hero .lbv-hero__item-link:hover:not(.lbv-hero__heading > a) {
   background-color: #bfcbb4;
}

@media (max-width: 900px) {
   .lbv-hero {
      flex-direction: column;
      padding: 0;
      min-height: auto;
      margin-bottom: 1.2rem;
   }
   .lbv-hero .lbv-hero__image-wrapper {
      position: relative;
   }

   .lbv-hero.lbv-hero::after {
      display: none;
   }

   .lbv-hero h1.lbv-hero__heading,
   .lbv-hero h2.lbv-hero__heading,
   .lbv-hero h3.lbv-hero__heading,
   .lbv-hero h4.lbv-hero__heading {
      color: #4d4d4d;
      text-shadow: none;
      line-height: 1.4;
      font-size: 2.2rem;
   }

   .lbv-hero .lbv-hero__content {
      text-align: center;
      padding: 2rem;
      background: #fff;
   }

   .lbv-hero .lbv-hero__item-link {
      padding: 0.9em 1.8em;
      margin-top: 2em;
      font-size: 80%;
   }

   .lbv-hero .lbv-hero__text {
      color: #4d4d4d;
      text-shadow: none;
      line-height: 1.5;
   }
}

@media (max-width: 700px) {
   .lbv-hero .lbv-hero__heading {
      font-size: 2rem;
      margin-bottom: 0;
      line-height: 1.3;
      margin-top: 0;
      padding-left: 0;
      padding-right: 0;
   }

   .lbv-hero .lbv-hero__text {
      font-size: 100%;
      line-height: 1.5;
   }
}

@media (max-width: 400px) {
   .lbv-hero .lbv-hero__heading {
      font-size: 1.8rem;
   }

   .lbv-hero .lbv-hero__content {
      padding: 2rem 1.5rem;
   }

   .lbv-hero .lbv-hero__text {
      font-size: 0.9rem;
   }
}
