.image-block--banner {
  --banner-color: #fff;
  overflow: visible !important;
  --h1-font-size: 50px;
  --h1-line-height: 55px;
  --h1-color: #fff!important;
  width: 100%;
}
.image-block--banner.image-banner-block--main {
  --banner-height: 100vh;
}
.image-block--banner.image-banner-block--main figure > div {
  background-position: bottom;
}
.image-block--banner.image-banner-block--main figure figcaption {
  bottom: 33%;
}
.image-block--banner h1 {
  max-width: 640px;
}
.image-block--banner figure {
  position: relative;
  height: var(--banner-height, 600px);
}
.image-block--banner figure > div {
  height: var(--banner-height, 600px);
  background-position: center;
  background-size: cover;
}
.image-block--banner figure figcaption {
  --custom-color: var(--banner-color);
  position: absolute;
  left: 0;
  right: 0;
  bottom: 241px;
  z-index: 1;
}
.image-block--banner figure:before {
  content: "";
  position: absolute;
  inset: 0 0 0 0;
  opacity: 1;
  background-image: linear-gradient(0deg, rgba(4, 30, 66, 0) 0%, rgba(4, 30, 66, 0.3) 100%);
}
.image-block--banner figure:after {
  --offset: calc( var(--banner-height) / -8.5);
  --height: calc( var(--banner-height) / 3);
  --split: calc(var(--height) + var(--offset));
  content: "";
  position: absolute;
  bottom: var(--offset);
  left: 20%;
  height: var(--height);
  width: 1px;
  opacity: 1;
  background-image: linear-gradient(180deg, #fff 0%, #fff var(--split), var(--primary) var(--split), var(--primary) 100%);
}
@media (max-width: 692px) {
  .image-block--banner {
    --h1-font-size: 30px;
    --h1-line-height: 36px;
    text-shadow: #333 1px 0 10px !important;
    --custom-color: #fff!important;
  }
}
