/* Ruta Paraguaya · cursor motorhome. Solo en dispositivos con mouse. */
/* La flecha normal del mouse queda visible; el motorhome la acompaña un poco por encima. */
#rp-cursor { position: fixed; inset: 0; pointer-events: none; z-index: 2147483000; overflow: hidden; display: none; }
@media (hover: hover) and (pointer: fine) { #rp-cursor { display: block; } }
.rp-van { position: absolute; left: 0; top: 0; width: 43px; height: 24px; transform: translate(-50%, -50%); will-change: transform; }
.rp-van svg { width: 100%; height: 100%; display: block; filter: drop-shadow(0 3px 4px rgba(0,0,0,.28)); }
.rp-beam { position: absolute; left: 94%; top: 62%; width: 50px; height: 26px; transform: translateY(-50%);
  background: radial-gradient(ellipse at left, rgba(255,240,170,.65) 0%, rgba(255,230,120,.22) 45%, rgba(255,230,120,0) 80%);
  clip-path: polygon(0 36%, 100% 0, 100% 100%, 0 64%); opacity: .85; transition: width .25s, height .25s, opacity .25s; }
.rp-van.is-hover .rp-beam { width: 60px; height: 32px; opacity: 1; }
.rp-dust { position: absolute; width: 6px; height: 6px; border-radius: 50%; background: rgba(190,175,150,.75); transform: translate(-50%,-50%);
  animation: rp-dust .6s cubic-bezier(.25,1,.5,1) forwards; }
@keyframes rp-dust { to { opacity: 0; transform: translate(calc(-50% + var(--dx)), calc(-50% + var(--dy))) scale(.2); } }
[data-magnetic] { transition: transform .2s cubic-bezier(.25,1,.5,1); will-change: transform; }
@media (prefers-reduced-motion: reduce) { #rp-cursor { display: none; } }
