/* Overlay: fade + slide sutil de baixo pra cima */
#rf-nav-overlay {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-12px);
  transition: opacity 0.4s ease, transform 0.4s ease, visibility 0s linear 0.4s;
}

#rf-nav-overlay.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  transition: opacity 0.4s ease, transform 0.4s ease, visibility 0s linear 0s;
}

/* Itens do menu: cascata (stagger) */
#rf-nav-overlay .rf-nav-link {
  opacity: 0;
  transform: translateY(16px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

#rf-nav-overlay.is-open .rf-nav-link {
  opacity: 1;
  transform: translateY(0);
}

/* Delay progressivo por item (até 8 itens, suficiente pro seu menu) */
#rf-nav-overlay.is-open li:nth-child(1) .rf-nav-link { transition-delay: 0.10s; }
#rf-nav-overlay.is-open li:nth-child(2) .rf-nav-link { transition-delay: 0.16s; }
#rf-nav-overlay.is-open li:nth-child(3) .rf-nav-link { transition-delay: 0.22s; }
#rf-nav-overlay.is-open li:nth-child(4) .rf-nav-link { transition-delay: 0.28s; }
#rf-nav-overlay.is-open li:nth-child(5) .rf-nav-link { transition-delay: 0.34s; }
#rf-nav-overlay.is-open li:nth-child(6) .rf-nav-link { transition-delay: 0.40s; }

/* Botão de fechar: leve rotação + fade */
#rf-nav-close {
  opacity: 0;
  transform: rotate(-45deg);
  transition: opacity 0.3s ease 0.2s, transform 0.3s ease 0.2s;
}

#rf-nav-overlay.is-open #rf-nav-close {
  opacity: 1;
  transform: rotate(0deg);
}

/* Respeita usuários que preferem menos movimento (acessibilidade) */
@media (prefers-reduced-motion: reduce) {
  #rf-nav-overlay,
  #rf-nav-overlay .rf-nav-link,
  #rf-nav-close {
    transition: opacity 0.15s ease !important;
    transform: none !important;
  }
}