/* FMT Bounce Cards — GPU transforms only, no GSAP */
.elementor-element-fmtbc01,
.elementor-element-fmtbc02,
.elementor-element-fmtbc02 .elementor-widget-container,
.elementor-element-fmtbc02 .elementor-shortcode {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
}
.fmt-bounce-cards {
  --card-size: 157px;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  max-width: 100%;
  height: 250px;
  margin: 0 auto;
  direction: ltr;
  overflow: hidden;
  contain: layout paint;
}
.fmt-bounce-cards .card {
  --x: 0px;
  --r: 0deg;
  --s: 1;
  position: absolute;
  left: 50%;
  margin-left: calc(var(--card-size) / -2);
  width: var(--card-size);
  aspect-ratio: 1;
  border: 3px solid #fff;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 6px 18px rgba(51, 51, 51, 0.16);
  background: #f5f5f5;
  cursor: pointer;
  transform-origin: center center;
  transform: translate3d(var(--x), 0, 0) rotate(var(--r)) scale(var(--s));
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  will-change: transform;
}
.fmt-bounce-cards.is-live .card {
  transition: transform 0.85s cubic-bezier(0.22, 1, 0.36, 1);
}
.fmt-bounce-cards .card.is-static {
  cursor: default;
}
.fmt-bounce-cards .card-inner {
  display: block;
  width: 100%;
  height: 100%;
}
.fmt-bounce-cards .image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}
.fmt-bounce-cards a.card {
  color: inherit;
  text-decoration: none;
}
.fmt-bounce-cards .card-0 { --x: -40px; --r: 5deg; z-index: 1; }
.fmt-bounce-cards .card-1 { --x: -20px; --r: 2deg; z-index: 2; }
.fmt-bounce-cards .card-2 { --x: 0px; --r: -3deg; z-index: 5; }
.fmt-bounce-cards .card-3 { --x: 20px; --r: 3deg; z-index: 3; }
.fmt-bounce-cards .card-4 { --x: 40px; --r: -5deg; z-index: 1; }
.fmt-bounce-cards .card.is-front {
  z-index: 6;
}
@media (min-width: 768px) {
  .fmt-bounce-cards {
    --card-size: 240px;
    height: 340px;
    max-width: 760px;
  }
  .fmt-bounce-cards .card {
    border-width: 5px;
    border-radius: 25px;
    box-shadow: 0 8px 22px rgba(51, 51, 51, 0.18);
  }
  .fmt-bounce-cards .card-0 { --x: -140px; --r: 5deg; }
  .fmt-bounce-cards .card-1 { --x: -70px; --r: 1deg; }
  .fmt-bounce-cards .card-2 { --x: 0px; --r: -4deg; }
  .fmt-bounce-cards .card-3 { --x: 70px; --r: 4deg; }
  .fmt-bounce-cards .card-4 { --x: 140px; --r: -5deg; }
}
@media (prefers-reduced-motion: reduce) {
  .fmt-bounce-cards .card,
  .fmt-bounce-cards.is-live .card {
    animation: none !important;
    transition: none !important;
    will-change: auto;
  }
}
