.block-hero-image {
  position: relative;
  margin-bottom: var(--padding);
  width: calc(100vw - var(--scrollbar-gutter, 0px));
  max-width: calc(100vw - var(--scrollbar-gutter, 0px));
  left: 50%;
  transform: translateX(-50%);
  box-sizing: border-box;
}
.block-hero-image:has(.block-hero-image__video) {
  height: 750px;
}
@media only screen and (max-width: 768px) {
  .block-hero-image:has(.block-hero-image__video) {
    width: 100vw;
    max-width: 100vw;
    height: auto;
    min-height: 75vh;
  }
}
.block-hero-image img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.block-hero-image .block-hero-image__media {
  position: relative;
}
.block-hero-image .desktop-image,
.block-hero-image .mobile-image {
  width: 100%;
}
@media only screen and (max-width: 1024px) {
  .block-hero-image .desktop-image {
    display: none;
  }
}
.block-hero-image .mobile-image {
  display: none;
}
@media only screen and (max-width: 1024px) {
  .block-hero-image .mobile-image {
    display: block;
  }
}
.block-hero-image .mobile-image img {
  aspect-ratio: 2/3;
}
.block-hero-image .block-hero-image__content {
  color: white !important;
  position: absolute;
  left: auto;
  right: 0;
  bottom: 0;
  z-index: 1;
  max-width: 9em;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-end;
  gap: 1rem;
  padding: var(--padding);
}
.block-hero-image .block-hero-image__title {
  margin: 0;
  padding: 0.5em 1em;
  color: white;
  border: 1px solid white;
}
.block-hero-image .block-hero-image__button {
  align-self: flex-end;
  color: currentColor !important;
  border-top-color: currentColor !important;
  border-left-color: currentColor !important;
  white-space: nowrap !important;
}
.block-hero-image .block-hero-image__button:hover, .block-hero-image .block-hero-image__button:focus {
  border-color: var(--fg) !important;
  background: var(--button-hover) !important;
  color: var(--button-hover-fg) !important;
}
.block-hero-image .block-hero-image__video {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
}
.block-hero-image .block-hero-image__video .video {
  width: 100%;
  height: 100%;
}
.block-hero-image .block-hero-image__video .video video {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  overflow: clip;
}
.block-hero-image .block-hero-image__video .is-mobile {
  display: none;
}
@media screen and (max-width: 768px) {
  .block-hero-image .block-hero-image__video.has-mobile-video .is-desktop {
    display: none;
  }
  .block-hero-image .block-hero-image__video .is-mobile {
    display: block;
  }
}
.block-header-desktop,
.block-header-mobile {
  position: absolute;
  background: none;
}
.block-header-desktop .logo a,
.block-header-mobile .logo a {
  transition: 0.2s ease all;
}
.block-header-desktop .logo svg,
.block-header-mobile .logo svg {
  background: none !important;
}
.block-header-desktop .logo a:hover,
.block-header-desktop .logo a:focus,
.block-header-mobile .logo a:hover,
.block-header-mobile .logo a:focus {
  opacity: 0.75;
}
div.block-header-mobile > .mobile-top {
  padding-top: 1em;
  font-size: 0.75em;
}
div.block-header-mobile > .mobile-top > .logo {
  margin-top: 1em;
  max-width: 15em;
}
