/*
 * mockup-fx.css: the shared "premium mockup" module for every funnel page.
 * Add class="fx-sweep" to a mockup wrapper (block element holding the image)
 * and load /assets/mockup-fx.js. One diagonal light sweep runs the first time
 * the wrapper scrolls into view; desktop hover lifts it. Nothing runs under
 * reduced motion. Add "fx-lift" alone for the hover lift without the sweep.
 */
.fx-sweep { position: relative; overflow: hidden; isolation: isolate; }
.fx-sweep::after {
  content: ""; position: absolute; inset: -10% -40%; pointer-events: none; z-index: 2;
  background: linear-gradient(105deg, transparent 38%, rgba(255, 255, 255, 0.55) 50%, transparent 62%);
  transform: translateX(-110%);
}
.fx-sweep.fx-in::after { animation: fx-sweep 1.6s cubic-bezier(.22, 1, .36, 1) .15s 1 forwards; }
@keyframes fx-sweep { to { transform: translateX(110%); } }
@media (hover: hover) and (pointer: fine) {
  .fx-sweep, .fx-lift { transition: transform .35s cubic-bezier(.22, 1, .36, 1), filter .35s ease; }
  .fx-sweep:hover, .fx-lift:hover { transform: translateY(-6px); filter: drop-shadow(0 18px 22px rgba(40, 20, 90, .16)); }
}
@media (prefers-reduced-motion: reduce) {
  .fx-sweep::after { display: none; }
  .fx-sweep, .fx-lift { transition: none; }
  .fx-sweep:hover, .fx-lift:hover { transform: none; }
}
