/* Efectos anadidos sobre la web (no tocan el codigo original). Solo transform/opacity/translate/scale/filter de entrada.
   Los de movimiento van dentro de prefers-reduced-motion:no-preference; el bloque reduce arregla ademas la aparicion y la
   inclinacion originales, que no respetaban esa preferencia. */
@media (prefers-reduced-motion: reduce) {
  [data-reveal] { opacity: 1 !important; transform: none !important; transition: none !important; }
  [data-tilt], [data-depth] { transform: none !important; }
  html { scroll-behavior: auto !important; }
}
/* foco de teclado visible en fondo claro y oscuro (anillo azul + anillo blanco) */
:focus-visible { outline: none !important; box-shadow: 0 0 0 2px #002BAB, 0 0 0 5px #fff !important; }

@media (prefers-reduced-motion: no-preference) {
  #rr-progreso { position: fixed; left: 0; top: 0; width: 100%; height: 3px; z-index: 60; pointer-events: none;
    transform-origin: 0 50%; transform: scaleX(0); will-change: transform; background: linear-gradient(90deg, #A8F0C4, #48CE86); }
  /* titular del hero: entra por lineas, cuando el precargador ya se ha ido (la clase la pone efectos.js) */
  .rr-listo h1 > span { animation: rr-linea 1.1s cubic-bezier(.2, .7, .2, 1) both; }
  .rr-listo h1 > span:nth-child(2) { animation-delay: .16s; }
  @keyframes rr-linea { from { opacity: 0; translate: 0 .32em; filter: blur(10px); } to { opacity: 1; translate: 0 0; filter: blur(0); } }
  /* tarjetas flotantes del hero: deriva suave y desacompasada (la casa 3D, data-depth=40, no) */
  [data-depth]:not([data-depth="40"]) { animation: rr-flota 7s ease-in-out infinite alternate; }
  [data-depth="150"] { animation-duration: 8s !important; }
  [data-depth="110"] { animation-duration: 6.5s !important; animation-delay: -2s !important; }
  [data-depth="190"] { animation-duration: 7.5s !important; animation-delay: -4s !important; }
  [data-depth="80"]  { animation-duration: 9s !important;   animation-delay: -1s !important; }
  @keyframes rr-flota { from { translate: 0 -5px; } to { translate: 0 6px; } }
  /* pulsacion tactil de los botones en pastilla y zoom lento de las fotos de los servicios */
  a[style*="999px"]:active, button[style*="999px"]:active { scale: .97; }
  [data-wizard] button img { transition: scale .7s cubic-bezier(.2, .7, .2, 1); }
  [data-wizard] button:hover img { scale: 1.06; }
}
