/* Decorative video layer; page content and navigation keep their existing stacking. */
.lobnho-video-bg {
  position: fixed;
  inset: 0;
  width: 100vw;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
  user-select: none;
  background: #08050b url("/assets/videos/BG1-poster.webp?v=20261015-video1") center / cover no-repeat;
}

/* Approved subtle-noise treatment is opt-in; standalone previews keep their original look. */
.lobnho-video-bg[data-video-treatment="noise"] {
  background: #000;
}

.lobnho-video-bg[data-video-treatment="noise"] > .lobnho-video-bg__media {
  position: absolute;
  inset: 0;
  opacity: .72;
  background: #08050b url("/assets/videos/BG1-poster.webp?v=20261015-video1") center / cover no-repeat;
}

.lobnho-video-bg[data-video-treatment="noise"] > .lobnho-video-bg__grain {
  position: absolute;
  inset: 0;
  z-index: 3;
  opacity: .03;
  pointer-events: none;
  mix-blend-mode: screen;
  background-repeat: repeat;
  background-size: 128px 128px;
}

.lobnho-video-bg video {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: none;
  object-fit: cover;
  object-position: center;
  pointer-events: none;
  opacity: 0;
}

/* The next decoder starts underneath the last frame, never over an empty layer. */
.lobnho-video-bg video.is-buffering {
  z-index: 1;
  opacity: 1;
}

.lobnho-video-bg video.is-active {
  z-index: 2;
  opacity: 1;
}

.lobnho-video-bg video::-webkit-media-controls,
.lobnho-video-bg video::-webkit-media-controls-start-playback-button {
  display: none !important;
}
