/* VYBESHIFT layered mockup backgrounds generated by Codex */
body.vybe-has-layered-mockup {
  background-color: #081016;
}
body.vybe-has-layered-mockup > :not(.vybe-layered-mockup-bg) {
  position: relative;
  z-index: 2;
}
.vybe-layered-mockup-bg {
  position: fixed;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  overflow: hidden;
  isolation: isolate;
  opacity: .72;
}
.vybe-layered-mockup-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 6;
  background:
    linear-gradient(90deg, rgba(6, 14, 18, .52), rgba(6, 14, 18, .12) 42%, rgba(6, 14, 18, .46)),
    radial-gradient(circle at 28% 72%, rgba(89, 255, 222, .12), transparent 38%),
    linear-gradient(180deg, rgba(6, 14, 18, .12), rgba(6, 14, 18, .42));
}
.vybe-layered-mockup-bg img,
.vybe-layered-mockup-bg video {
  position: absolute;
  pointer-events: none;
  user-select: none;
}
.vybe-lm-video,
.vybe-lm-base,
.vybe-lm-slice {
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.vybe-lm-video {
  z-index: 0;
  opacity: .24;
  filter: saturate(1.15) contrast(1.04);
}
.vybe-lm-base {
  z-index: 1;
  opacity: .34;
  filter: blur(1px) saturate(1.1);
}
.vybe-lm-slice {
  z-index: 2;
  opacity: .48;
  transform: scale(1.05);
  mix-blend-mode: screen;
}
.vybe-lm-overlay {
  z-index: 3;
  width: min(94vw, 1280px);
  left: 58%;
  top: 52%;
  transform: translate(-50%, -50%);
  opacity: .3;
  mix-blend-mode: screen;
}
.vybe-lm-cutout {
  z-index: 4;
  width: var(--w, min(32vw, 520px));
  left: var(--x, 50%);
  top: var(--y, 50%);
  transform: translate(-50%, -50%) scale(var(--s, 1));
  opacity: var(--o, .7);
  filter: drop-shadow(0 26px 60px rgba(0,0,0,.34));
}
@media (max-width: 720px) {
  .vybe-layered-mockup-bg { opacity: .48; }
  .vybe-lm-overlay { width: 145vw; left: 56%; }
  .vybe-lm-cutout { opacity: calc(var(--o, .7) * .66); }
}
@media (prefers-reduced-motion: reduce) {
  .vybe-lm-video { display: none; }
}
