/* PR-VIBECURB-07 · Gate 7.2 — redução segura de movimento. */

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto !important;
  }

  /*
   * A preferência do sistema elimina coreografias e transições não essenciais.
   * Estados de menu, abas, rail e links continuam mudando de forma instantânea.
   */
  body.vb-page *,
  body.vb-page *::before,
  body.vb-page *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }

  /* Nenhum conteúdo registrado pela fundação pode permanecer em estado inicial. */
  html.vb-js.vb-motion-ready body.vb-page .vb-motion-item,
  html.vb-js.vb-motion-ready body.vb-page .vb-motion-item.is-motion-visible,
  html.vb-js.vb-motion-ready body.vb-page .vb-motion-item.is-motion-entered {
    opacity: 1 !important;
    translate: 0 0 !important;
    scale: 1 1 !important;
    clip-path: none !important;
  }

  /* Movimentos de hover, foco e acionamento viram respostas visuais estáticas. */
  body.vb-page :is(
    .vb-brand,
    .vb-button,
    .vb-menu-button,
    .vb-rail__toggle,
    .vb-hero__signature
  ),
  body.vb-page :is(
    .vb-brand,
    .vb-button,
    .vb-menu-button,
    .vb-rail__toggle,
    .vb-hero__signature
  ):is(:hover, :focus-visible, :active) {
    transform: none !important;
    translate: 0 0 !important;
    scale: 1 !important;
  }

  body.vb-page :is(
    .vb-header__demo,
    .vb-link-arrow,
    .vb-hero__continue,
    main a:not(.vb-button)
  ) > span[aria-hidden="true"],
  body.vb-page :is(
    .vb-header__demo,
    .vb-link-arrow,
    .vb-hero__continue,
    main a:not(.vb-button)
  ):is(:hover, :focus-visible, :active) > span[aria-hidden="true"] {
    transform: none !important;
    translate: 0 0 !important;
    scale: 1 !important;
  }

  /* Indicadores contínuos e decorativos permanecem estáticos. */
  html.vb-js.vb-motion-ready #hero .vb-hero__field span,
  html.vb-js.vb-motion-ready #hero .vb-hero__continue > span:last-child,
  html.vb-js.vb-motion-ready #gestao .vb-evidence-room__instruments article::after {
    animation: none !important;
  }

  html.vb-js.vb-motion-ready #gestao .vb-evidence-room__instruments article::after {
    opacity: 0 !important;
    scale: 0 1 !important;
  }

  /* Menu e folio mantêm o estado final sem entrada escalonada ou crossfade. */
  body.vb-page .vb-nav.vb-nav--mobile-portal .vb-motion-menu-link,
  body.vb-page .vb-nav.vb-nav--mobile-portal.is-open .vb-motion-menu-link {
    opacity: 1 !important;
    transform: none !important;
    translate: 0 0 !important;
    scale: 1 !important;
  }

  body.vb-page .vb-menu-button__folio.is-motion-updating {
    animation: none !important;
  }
}
