/* Archivo Clasificado · estilos de /motion-primitives.js
   Port de motion-primitives.com (MIT © 2024 ibelick).
   Variables para ajustar por página: --mp-spot-color, --mp-trail, --mp-trail-color, --mp-progress. */
:root{--mp-ease:cubic-bezier(.16,1,.3,1)}

/* ---- Text Effect: oculto hasta que el JS lo prepara (con salida de emergencia si no carga) ---- */
@media (prefers-reduced-motion:no-preference){
  .js [data-mp~="text-effect"]:not(.mp-te){opacity:0;animation:mp-failsafe 0s 2.5s forwards}
}
@keyframes mp-failsafe{to{opacity:1}}
.mp-te .mp-w{display:inline-block;opacity:0;filter:blur(12px);
  transition:opacity .6s var(--mp-ease),filter .7s var(--mp-ease),transform .9s var(--mp-ease);
  transition-delay:calc(var(--w,0) * 50ms + var(--mp-delay,0ms))}
.mp-te-fib .mp-w{transform:translateY(.28em)}
.mp-te.mp-on .mp-w{opacity:1;filter:none;transform:none}

/* ---- Animated Number ---- */
[data-mp~="number"]{font-variant-numeric:tabular-nums}

/* ---- Spotlight ---- */
.mp-spot{position:absolute;left:0;top:0;z-index:-1;border-radius:50%;pointer-events:none;opacity:0;
  background:radial-gradient(circle at center,var(--mp-spot-color,rgba(242,240,235,.16)),transparent 70%);
  filter:blur(18px);transition:opacity .25s var(--mp-ease)}
.mp-spot.on{opacity:1}

/* ---- Border Trail ---- */
.mp-trail{position:absolute;inset:0;z-index:1;pointer-events:none;border-radius:inherit;border:1px solid transparent;
  -webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;
  mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);mask-composite:exclude}
.mp-trail i,.mp-trail-glow{display:none;position:absolute;width:var(--mp-trail,60px);aspect-ratio:1;pointer-events:none}
.mp-trail i{background:var(--mp-trail-color,radial-gradient(circle,#fff 0,#ffb08a 30%,transparent 70%))}
/* halo que acompaña al destello por dentro de la tarjeta, detrás del contenido */
.mp-trail-glow{z-index:-1;border-radius:50%;opacity:var(--mp-trail-glow,.35);filter:blur(24px);
  background:radial-gradient(circle,var(--mp-trail-glow-color,#e8450c),transparent 65%)}
@supports (offset-path:rect(0 auto auto 0)){
  .mp-trail i,.mp-trail-glow{display:block;offset-path:rect(0 auto auto 0 round var(--mp-trail,60px));animation:mp-trail 5s linear infinite}
}
@keyframes mp-trail{from{offset-distance:0%}to{offset-distance:100%}}

/* ---- Scroll Progress ---- */
.mp-progress{position:absolute;left:0;right:0;bottom:-1px;height:2px;pointer-events:none;
  background:var(--mp-progress,#e8450c);transform:scaleX(0);transform-origin:0 50%}

@media (prefers-reduced-motion:reduce){
  .mp-trail,.mp-trail-glow,.mp-spot{display:none}
}
