/*
 * START MALNET_ANIMATION_UPGRADE
 * Process section + mobile menu stagger animations. Homepage only.
 */

/* ── HERO GLOW FIX: push hero-glow-2 entirely below overflow:hidden boundary ── */
.hero .hero-glow-2 {
  bottom: -500px;
}

/* ── PROCESS SECTION - JS-first (requires body.mau-js) ── */
.mau-js .process-step {
  opacity: 0;
  transform: translateY(32px);
  transition:
    opacity  600ms cubic-bezier(0.22, 1, 0.36, 1),
    transform 600ms cubic-bezier(0.22, 1, 0.36, 1);
}
.mau-js .process-step.mau-revealed {
  opacity: 1;
  transform: none;
}

/* Sub-elements stagger within each revealed step */
.mau-js .process-step .process-num {
  opacity: 0;
  transform: scale(0.75);
  transition:
    opacity  380ms ease 100ms,
    transform 380ms cubic-bezier(0.34, 1.56, 0.64, 1) 100ms;
}
.mau-js .process-step.mau-revealed .process-num {
  opacity: 1;
  transform: none;
}

.mau-js .process-step .process-image {
  opacity: 0;
  transform: scale(0.96);
  transition:
    opacity  500ms ease 170ms,
    transform 500ms cubic-bezier(0.22, 1, 0.36, 1) 170ms;
}
.mau-js .process-step.mau-revealed .process-image {
  opacity: 1;
  transform: none;
}

.mau-js .process-step .process-content {
  opacity: 0;
  transform: translateY(16px);
  transition:
    opacity  420ms ease 260ms,
    transform 420ms ease 260ms;
}
.mau-js .process-step.mau-revealed .process-content {
  opacity: 1;
  transform: none;
}

/* ── MOBILE MENU ANIMATIONS ── */
@keyframes mauMenuHeaderIn {
  from { opacity: 0; transform: translateY(-12px); }
  to   { opacity: 1; transform: none; }
}
@keyframes mauMenuItemIn {
  from { opacity: 0; transform: translateX(-16px); }
  to   { opacity: 1; transform: none; }
}
@keyframes mauMenuFooterIn {
  from { opacity: 0; transform: translateY(12px); }
  to   { opacity: 1; transform: none; }
}

.mobile-menu.open .mobile-menu-header {
  animation: mauMenuHeaderIn 380ms cubic-bezier(0.22, 1, 0.36, 1) 50ms both;
}
.mobile-menu.open .mobile-menu-nav > * {
  animation: mauMenuItemIn 380ms cubic-bezier(0.22, 1, 0.36, 1) both;
}
.mobile-menu.open .mobile-menu-nav > *:nth-child(1) { animation-delay: 100ms; }
.mobile-menu.open .mobile-menu-nav > *:nth-child(2) { animation-delay: 150ms; }
.mobile-menu.open .mobile-menu-nav > *:nth-child(3) { animation-delay: 200ms; }
.mobile-menu.open .mobile-menu-nav > *:nth-child(4) { animation-delay: 250ms; }
.mobile-menu.open .mobile-menu-nav > *:nth-child(5) { animation-delay: 300ms; }
.mobile-menu.open .mobile-menu-nav > *:nth-child(6) { animation-delay: 350ms; }
.mobile-menu.open .mobile-login {
  animation: mauMenuItemIn 380ms cubic-bezier(0.22, 1, 0.36, 1) 400ms both;
}
.mobile-menu.open .mobile-menu-footer {
  animation: mauMenuFooterIn 380ms cubic-bezier(0.22, 1, 0.36, 1) 430ms both;
}

/* ── REDUCED MOTION: disable all upgrade animations ── */
@media (prefers-reduced-motion: reduce) {
  .mau-js .process-step,
  .mau-js .process-step .process-num,
  .mau-js .process-step .process-image,
  .mau-js .process-step .process-content {
    opacity: 1;
    transform: none;
    transition: none;
  }
  .mobile-menu.open .mobile-menu-header,
  .mobile-menu.open .mobile-menu-nav > *,
  .mobile-menu.open .mobile-login,
  .mobile-menu.open .mobile-menu-footer {
    animation: none;
  }
}

/*
 * END MALNET_ANIMATION_UPGRADE
 */
