.tb-video-banner {
  background: #F1F1F1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

@media screen and (min-width: 1250px) {
  .tb-video-banner {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
  }
}

.tb-video-banner .tb-video-banner-content-container {
  padding: 16px 16px;
  font-family: 'Libre Franklin', sans-serif;
}

@media screen and (min-width: 768px) {
  .tb-video-banner .tb-video-banner-content-container {
    padding: 24px 24px;
  }
}

@media screen and (min-width: 1250px) {
  .tb-video-banner .tb-video-banner-content-container {
    padding: 48px 32px;
    width: -webkit-calc(100% / 12 * 4);
    width: calc(100% / 12 * 4);
  }
}

.tb-video-banner .tb-video-banner-content-container .tb-video-banner-header {
  color: var(--Textcolors-color-text, #393939);
  font-size: 2.25em;
  font-style: normal;
  font-weight: 900;
  line-height: 48px;
  margin-bottom: 16px;
}

.tb-video-banner .tb-video-banner-content-container .tb-video-banner-subheader {
  color: var(--Textcolors-color-text, #393939);
  font-size: 1.25em;
  font-style: normal;
  font-weight: 700;
  line-height: 28px;
}

.tb-video-banner .tb-video-banner-content-container .tb-video-banner-body {
  color: var(--Textcolors-color-text, #393939);
  font-size: 1em;
  font-style: normal;
  font-weight: 400;
  line-height: 32px;
}

.tb-video-banner .tb-video-banner-content-container .tb-video-banner-button-container {
  margin-top: 32px;
}

.tb-video-banner .video-container {
  position: relative;
}

@media screen and (min-width: 1250px) {
  .tb-video-banner .video-container {
    width: -webkit-calc(100% / 12 * 8);
    width: calc(100% / 12 * 8);
  }
}

.tb-video-banner .video-container .video-banner-play-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.tb-video-banner .video-container video.video,
.tb-video-banner .video-container img.video-banner-error-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.tb-video-banner .gradient-background {
  -webkit-animation: loadingAnimation 2s infinite ease-in-out;
  animation: loadingAnimation 2s infinite ease-in-out;
}

@-webkit-keyframes loadingAnimation {
  0% {
    background: #F1F1F1;
  }
  50% {
    background: #DDDDDD;
  }
  100% {
    background: #F1F1F1;
  }
}

@keyframes loadingAnimation {
  0% {
    background: #F1F1F1;
  }
  50% {
    background: #DDDDDD;
  }
  100% {
    background: #F1F1F1;
  }
}
