/* ====== Ethereal Shadow Background ====== */
/* SVG turbulence displacement + mask = flowing organic shadow */

.ethereal-bg {
  position: fixed;
  inset: 0;
  z-index: -1;
  overflow: hidden;
  pointer-events: none;
}
/* Contained variant — lives inside a positioned parent instead of fixed fullscreen */
.ethereal-bg.ethereal-bg--contained {
  position: absolute;
  z-index: 0;
}
.ethereal-bg .eth-layer {
  position: absolute;
  inset: -100px;
  filter: blur(4px);
}
.ethereal-bg .eth-mask {
  width: 100%;
  height: 100%;
  -webkit-mask-image: url('/assets/ethereal/mask.png');
  mask-image: url('/assets/ethereal/mask.png');
  -webkit-mask-size: cover;
  mask-size: cover;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  background-color: rgba(128,128,128,1);
}
.ethereal-bg .eth-noise {
  position: absolute;
  inset: 0;
  background-image: url('/assets/ethereal/noise.png');
  background-size: 240px;
  background-repeat: repeat;
  opacity: 0.08;
  pointer-events: none;
}
