.video-hero {
  position: relative;
  margin: 0;
  overflow-x: hidden;
  width: 100%;
  min-height: calc(100vh - 40px);

  .background-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    overflow: hidden;
    background-color: #001a23;
    background-size: cover;
    background-position: 75% 50%;
    background-repeat: no-repeat;
    @media (min-width: 848px) {
      background-position: 0 50%;
    }

    video {
      object-fit: cover;
      object-position: top right;
      width: 100%;
      height: 100%;

      &.mobile {
        display: block;
      }
      &.desktop {
        display: none;
      }

      @media screen and (min-width: 848px) {
        &.mobile {
          display: none;
        }
        &.desktop {
          display: block;
        }
      }
    }

    .background-link {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: 1;

      &.desktop {
        display: none;
      }

      @media (min-width: 848px) {
        &.desktop {
          display: block;
        }

        &.mobile {
          display: none;
        }
      }
    }
  }

  .container {
    position: relative;
    z-index: 3;
    padding: 240px 1.5rem 100px;
    position: relative;
    @media (max-width: 1072px) {
      padding: 230px 16px 30px;
    }

    .hero-h1 {
      font-size: var(--h1-size, 3rem);
      line-height: 1;
      margin: 0 0 1rem;
    }

    h2.hero-header {
      margin: 0 0 1.5rem;
      line-height: 1;

      @media (min-width: 848px) {
        font-size: var(--h2-size95);
      }

      @media (max-width: 1072px) {
        margin: 0 0 1rem;
      }
    }

    .hero-copy {
      margin-bottom: 3rem;
      position: relative;
      z-index: 10;

      .pill-container {
        align-items: flex-start;
        display: flex;
        flex-direction: row;

        .pill {
          align-items: center;
          background-color: rgba(255, 255, 255, 0.8);
          color: #003a50 !important;
          border-radius: 25px;
          display: flex;
          flex-direction: row;
          font-size: 1rem;
          font-weight: 700;
          justify-content: center;
          line-height: 1;
          margin: 0;
          padding: 0.5em 1em;
          padding: 0.65em 1em;

          h1 {
            font-size: inherit !important;
            font-weight: inherit !important;
            line-height: inherit !important;
            margin: 0 !important;
            padding: 0 !important;
            color: inherit !important;
          }

          &:before {
            content: url('data:image/svg+xml;charset=utf-8,<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg"><circle cx="9.7447" cy="9.93024" r="9.5572" fill="%23003A50"/><path d="M13.577 9.25332C14.0979 9.55405 14.0979 10.3059 13.577 10.6066L8.41181 13.5888C7.89092 13.8895 7.2398 13.5136 7.2398 12.9121V6.94785C7.2398 6.34637 7.89092 5.97045 8.41181 6.27119L13.577 9.25332Z" fill="white" fill-opacity="0.8"/></svg>');
            display: inline-block;
            margin-right: 0.6em;
            line-height: 0;
          }
        }
      }

      & > div:last-of-type {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
        justify-content: start;
        margin: 1.5rem 0;
        @media (min-width: 848px) {
          flex-direction: row;
          margin: 2rem 0;
          gap: 2rem;
        }

        & > p {
          margin: 0;
        }
      }

      .text_box p {
        font-size: var(--body3);
        line-height: 1.4;
        margin: 0.8em auto;
        text-transform: none;
      }
      
    .text_box {
      h2 {
        /* font-size: var(--h1-size, 3rem); */
        font-size: var(--h2-size95);
        line-height: 1.1;
        font-weight: var(--h1-weight, 700);
        margin: 0 0 8px 0 !important;
        padding: 0 !important;
        padding-top: 2rem !important;

        @media (max-width: 1072px) {
          margin: 0 0 8px 0 !important;
        }

        @media (min-width: 1072px) {
          margin: 0 0 8px 0 !important;
        }
      }

      .features_list {
        display: grid;
        align-items: center;
        justify-content: start;
        grid-template-columns: auto auto;
        gap: 1rem;
        margin: 0;
        font-size: var(--body3);
        @media (max-width: 600px) {
          gap: 0.5rem;
        }

        .check-text {
          align-items: center;
          display: flex;
          gap: 0.5rem;
          line-height: 1;
        }
      }
    }

    pointer-events: none;

    .pill,
    .hero-h1,
    .hero-header,
    .text_box > *,
    .btn_wrap,
    .features_list {
      pointer-events: auto;
    }
  }

  @media (prefers-reduced-motion) {
    .background-wrapper video {
      display: none !important;
    }
  }
}