* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  background: #0a0a1a;  /* fallback if WebGL unavailable */
  overflow: hidden;
  width: 100vw;
  height: 100vh;
}

#bg-canvas, #cube-canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#bg-canvas   { z-index: 0; }  /* background layer — GLSL shader        */
#mid-lottie  { z-index: 1; }  /* middle layer — lottie blended over bg */
#cube-canvas { z-index: 2; }  /* foreground — Three.js cubes           */

#mid-lottie {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 75%;
  height: 75%;
  mix-blend-mode: screen;
  opacity: 0.8;
}

#mid-lottie svg {
  width: 100% !important;
  height: 100% !important;
}
