/* Gaelia Moments Landing 2.1.1: capa aislada de interacciones */
:root {
  --gm-progress: 0;
  --gm-hero-x: 0px;
  --gm-hero-y: 0px;
}

.gm-scroll-progress {
  position: fixed;
  inset: 0 0 auto;
  z-index: 30;
  height: 3px;
  pointer-events: none;
  transform-origin: left center;
  transform: scaleX(var(--gm-progress));
  background: linear-gradient(90deg, rgba(216, 185, 119, .95), rgba(47, 111, 112, .78));
  box-shadow: 0 0 18px rgba(216, 185, 119, .36);
}

.gm-cursor-glow {
  position: fixed;
  left: 0;
  top: 0;
  z-index: 4;
  width: 440px;
  height: 440px;
  border-radius: 50%;
  pointer-events: none;
  opacity: 0;
  mix-blend-mode: screen;
  background:
    radial-gradient(circle, rgba(241, 215, 154, .16) 0%, rgba(47, 111, 112, .09) 42%, transparent 72%);
  transform: translate3d(calc(var(--gm-cursor-x, 50vw) - 50%), calc(var(--gm-cursor-y, 50vh) - 50%), 0);
  transition: opacity .36s ease;
  will-change: transform, opacity;
}

.gm-cursor-glow.is-active {
  opacity: 1;
}

.site-nav {
  transition: background .24s ease, box-shadow .24s ease, backdrop-filter .24s ease, padding .24s ease;
}

.site-nav.gm-nav-scrolled {
  background:
    linear-gradient(180deg, rgba(19, 15, 12, .88), rgba(19, 15, 12, .58)),
    rgba(19, 15, 12, .42);
  box-shadow: 0 18px 34px rgba(19, 15, 12, .18);
}

.gm-magnetic {
  --gm-mx: 0px;
  --gm-my: 0px;
  transform: translate3d(var(--gm-mx), var(--gm-my), 0);
  transition: transform .14s ease-out, box-shadow .2s ease, border-color .2s ease, background .2s ease;
  will-change: transform;
}

.gm-magnetic:hover,
.gm-magnetic:focus-visible {
  box-shadow: 0 18px 36px rgba(19, 15, 12, .18);
}

.gm-reveal {
  opacity: 0;
  transform: translate3d(0, 28px, 0);
  transition:
    opacity .58s cubic-bezier(.2, .7, .2, 1),
    transform .58s cubic-bezier(.2, .7, .2, 1),
    filter .58s cubic-bezier(.2, .7, .2, 1);
  transition-delay: var(--gm-delay, 0ms);
  filter: blur(4px);
}

.gm-reveal[data-gm-reveal="fade-left"] {
  transform: translate3d(-28px, 12px, 0);
}

.gm-reveal[data-gm-reveal="fade-right"] {
  transform: translate3d(28px, 12px, 0);
}

.gm-reveal[data-gm-reveal="scale-soft"] {
  transform: scale(.965) translate3d(0, 20px, 0);
}

.gm-reveal.is-visible {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1);
  filter: blur(0);
}

.hero.gm-hero-interactive::after {
  background-position:
    calc(82% + var(--gm-hero-x) * .08) calc(22% + var(--gm-hero-y) * .08),
    calc(var(--gm-hero-x) * .12) calc(var(--gm-hero-y) * .12),
    calc(var(--gm-hero-x) * -.08) calc(var(--gm-hero-y) * -.08);
}

.hero.gm-hero-interactive .hero-showcase {
  transform:
    rotateY(calc(-7deg + (var(--landing21-depth) * 5deg)))
    rotateX(calc(2deg - (var(--landing21-depth) * 1.4deg)))
    translate3d(calc(var(--gm-hero-x) * .42), calc(var(--gm-hero-y) * .3 - (var(--landing21-depth) * 18px)), 0);
}

.hero.gm-hero-interactive .hero-slide.is-active .hero-slide__image img {
  transform:
    translate3d(calc(var(--gm-hero-x) * .12), calc(var(--gm-hero-y) * .1), 0)
    scale(calc(1.045 + (var(--landing21-depth) * .035)));
}

.hero.gm-hero-interactive .hero-slide__image::after {
  content: "";
  position: absolute;
  inset: 10%;
  pointer-events: none;
  background:
    radial-gradient(circle at 28% 22%, rgba(255, 248, 236, .18), transparent 4px),
    radial-gradient(circle at 72% 34%, rgba(216, 185, 119, .16), transparent 3px),
    radial-gradient(circle at 48% 78%, rgba(47, 111, 112, .14), transparent 4px);
  opacity: .62;
  transform: translate3d(calc(var(--gm-hero-x) * -.2), calc(var(--gm-hero-y) * -.16), 0);
}

.benefits-strip article.gm-tilt,
.package-card.gm-tilt,
.process-visual-grid article.gm-tilt {
  transform-style: preserve-3d;
  will-change: transform;
}

.benefits-strip article:hover {
  border-color: rgba(155, 122, 69, .32);
}

.benefits-strip article:hover i {
  transform: translateY(-3px) scale(1.045);
}

.event-visual__ambient {
  animation: gmAmbientDrift 24s ease-in-out infinite alternate;
}

.event-visual.is-changing img,
.event-visual:hover img {
  transform: translateY(-3px) scale(1.018);
}

.event-tabs button {
  transition: color .2s ease, background .2s ease, border-color .2s ease, transform .2s ease;
}

.event-tabs button:hover {
  transform: translateX(3px);
}

.package-card--audiovisual {
  position: relative;
}

.package-card--audiovisual > * {
  position: relative;
  z-index: 1;
}

.package-card--audiovisual::before {
  opacity: .95;
}

.package-card--experience {
  box-shadow: 0 28px 62px rgba(19, 15, 12, .18);
}

.package-card--experience:hover {
  border-color: rgba(241, 215, 154, .55);
  box-shadow: 0 34px 82px rgba(19, 15, 12, .28), 0 0 44px rgba(216, 185, 119, .14);
}

.process-visual.is-visible .process-visual-grid::before {
  background:
    linear-gradient(90deg, rgba(47, 111, 112, .16), rgba(185, 128, 68, .34), rgba(47, 111, 112, .16)),
    linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, .86) 8%, transparent 17%);
  background-size: 100% 100%, 230% 100%;
  animation: gmLineSheen 3.2s ease-in-out .5s 1;
}

.process-visual-grid article:hover img {
  transform: scale(1.025);
}

.process-visual-grid article:hover i {
  transform: translateY(-3px) scale(1.045);
}

.faq-list details {
  transition: transform .24s ease, box-shadow .24s ease, border-color .24s ease;
}

.faq-list details[open] {
  transform: translateY(-2px);
}

.faq-list details[open] p {
  animation: gmFaqOpen .28s ease both;
}

.cta-band.gm-drift {
  background-size: 150% 150%, 100% 100%;
  animation: gmCtaDrift 24s ease-in-out infinite alternate;
}

.cta-band.gm-drift::after {
  animation: gmCtaLight 18s ease-in-out infinite alternate;
}

@keyframes gmAmbientDrift {
  from { transform: scale(1.05) translate3d(-6px, -4px, 0); }
  to { transform: scale(1.09) translate3d(7px, 5px, 0); }
}

@keyframes gmLineSheen {
  from { background-position: 0 0, -70% 0; }
  to { background-position: 0 0, 170% 0; }
}

@keyframes gmFaqOpen {
  from { opacity: 0; transform: translateY(-5px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes gmCtaDrift {
  from { background-position: 42% 48%, center; }
  to { background-position: 58% 52%, center; }
}

@keyframes gmCtaLight {
  from { opacity: .38; transform: translate3d(-12px, -8px, 0) scale(1); }
  to { opacity: .54; transform: translate3d(14px, 10px, 0) scale(1.035); }
}

@media (hover: none), (pointer: coarse) {
  .gm-cursor-glow,
  .gm-scroll-progress {
    display: none;
  }

  .gm-magnetic,
  .benefits-strip article.gm-tilt,
  .package-card.gm-tilt,
  .process-visual-grid article.gm-tilt {
    transform: none !important;
  }

  .hero.gm-hero-interactive .hero-showcase,
  .hero.gm-hero-interactive .hero-slide.is-active .hero-slide__image img {
    transform: none;
  }
}

@media (max-width: 760px) {
  .gm-reveal {
    transform: translate3d(0, 18px, 0);
    filter: blur(2px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .gm-cursor-glow,
  .gm-scroll-progress {
    display: none !important;
  }

  .gm-reveal,
  .gm-reveal[data-gm-reveal],
  .hero.gm-hero-interactive .hero-showcase,
  .hero.gm-hero-interactive .hero-slide.is-active .hero-slide__image img,
  .gm-magnetic,
  .benefits-strip article.gm-tilt,
  .package-card.gm-tilt,
  .process-visual-grid article.gm-tilt {
    opacity: 1 !important;
    filter: none !important;
    transform: none !important;
    transition: none !important;
  }

  .event-visual__ambient,
  .process-visual.is-visible .process-visual-grid::before,
  .cta-band.gm-drift,
  .cta-band.gm-drift::after {
    animation: none !important;
  }
}
