/* Subtle mobile-only motion. Desktop layout and appearance remain unchanged. */
@media (max-width: 767px) {
  html { scroll-behavior: smooth; }

  .rps-mobile-reveal {
    opacity: 0;
    transform: translate3d(0, 18px, 0);
    transition:
      opacity .55s cubic-bezier(.22,.61,.36,1),
      transform .55s cubic-bezier(.22,.61,.36,1);
    transition-delay: var(--rps-mobile-delay, 0ms);
    will-change: opacity, transform;
  }

  .rps-mobile-reveal.rps-mobile-visible {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }

  .hero-bg,
  .service-hero-bg {
    animation: rpsMobileHeroScale 7s ease-out both;
    transform-origin: center center;
  }

  .btn,
  button,
  .service-card,
  .feature-card,
  .ba-card,
  .testimonial-card,
  .trust-item {
    -webkit-tap-highlight-color: transparent;
  }

  .btn:active,
  button:active {
    transform: scale(.98);
    transition-duration: .12s;
  }

  .service-card:active,
  .feature-card:active,
  .ba-card:active,
  .testimonial-card:active {
    transform: translateY(-2px);
    transition-duration: .12s;
  }

  @keyframes rpsMobileHeroScale {
    from { transform: scale(1.035); }
    to { transform: scale(1); }
  }
}

@media (prefers-reduced-motion: reduce) {
  .rps-mobile-reveal,
  .rps-mobile-reveal.rps-mobile-visible {
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }

  .hero-bg,
  .service-hero-bg {
    animation: none !important;
  }
}
