/* ==========================================================================
   12. Preferência de redução de movimento
   ========================================================================== */

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  .reveal-item {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .reveal-mask.reveal-item {
    clip-path: none !important;
  }

  .ocean-field__light,
  .ocean-field__caustics,
  .support-current__band {
    animation: none !important;
  }

  .hero-section::before {
    transform: none !important;
    will-change: auto !important;
  }

  .light-ray {
    display: none;
  }

  .ocean-particles {
    display: none;
  }

  .team-bg__caustics,
  .team-wave__layer,
  .team-wave__line {
    animation: none !important;
  }

  .team-wave {
    transform: none !important;
  }

  .cc-world {
    transform: none !important;
    transition: none !important;
  }

  .cc-card__inner,
  .team-carousel:not(.is-intro) .cc-card__inner,
  .team-carousel.is-intro .cc-card__inner {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    animation: none !important;
    transition-delay: 0ms !important;
  }

  .support-scroll-space {
    height: auto !important;
  }

  .support-sticky-stage {
    position: relative !important;
    top: auto !important;
    height: auto !important;
    overflow: visible !important;
  }

  .support-cosmos {
    position: relative !important;
    height: 50vh !important;
    min-height: 280px !important;
  }

  .support-globe,
  .support-route {
    height: 50vh !important;
    min-height: 280px !important;
  }

  .support-narrative {
    position: relative !important;
    left: auto !important;
    top: auto !important;
    bottom: auto !important;
    width: 100% !important;
    max-width: 720px !important;
    margin: 2rem auto 0 !important;
    padding: 0 1.5rem 3rem !important;
    pointer-events: auto !important;
  }

  .support-stepper {
    display: none !important;
  }

  .support-steps-container {
    min-height: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 3rem !important;
  }

  .support-step {
    position: static !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: none !important;
    pointer-events: auto !important;
    transition: none !important;
  }

  .support-marker__dot::before,
  .support-marker--dest .support-marker__dot::after {
    animation: none !important;
  }

  .support-celebration {
    display: none !important;
  }

  .contact-horizon {
    transform: translate(-50%, -50%) scaleX(1) !important;
    transition: none !important;
  }

  .contact-reflection {
    transform: translateX(-50%) scaleY(1) !important;
    transition: none !important;
  }

  .contact-sonar,
  .contact-horizon::after {
    display: none !important;
  }

  .contact-card:hover,
  .contact-card:focus-within {
    transform: none !important;
  }
}
