/* ── YouTube Video Background ── */
.video-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
  opacity: 0;
  transition: opacity 1.5s ease;
}
.video-bg.loaded {
  opacity: 0.12;
}
/* Crop aggressively: zoom in ~3x so the centre overlay icons are pushed off-screen.
   The wave lines still show because the video is 30 min of continuous pattern —
   any crop region shows the same aesthetic. */
.video-bg .yt-wrapper {
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  overflow: hidden;
}
.video-bg .yt-wrapper iframe {
  width: 100%;
  height: 100%;
  pointer-events: none;
}
/* Invisible blocker on top */
.video-bg .yt-blocker {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  pointer-events: all;
  background: transparent;
}