.pvu{--pvu-stroke:#E8711A;--pvu-w:3;--pvu-off:0em;--pvu-mop:28%;--pvu-dur:.9s;--pvu-delay:.3s;margin:0}
.pvu-mark{position:relative;display:inline-block;white-space:nowrap;z-index:0}
.pvu-svg{position:absolute;pointer-events:none;overflow:visible;z-index:-1}
.pvu-svg--under{left:-2%;width:104%;bottom:calc(-.22em + var(--pvu-off));height:.38em}
.pvu-svg--circle{left:-12%;width:124%;top:-22%;height:144%}
.pvu-svg path{fill:none;stroke:var(--pvu-stroke);stroke-width:var(--pvu-w);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke;
  stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset var(--pvu-dur) cubic-bezier(.65,0,.35,1) calc(var(--pvu-delay) + var(--k,0) * .25s + var(--i,0) * var(--pvu-dur) * .7)}
.pvu-band{position:absolute;z-index:-1;left:-3%;right:-3%;bottom:calc(.06em + var(--pvu-off));height:.42em;border-radius:.12em .3em .18em .35em;
  background:color-mix(in srgb,var(--pvu-stroke) var(--pvu-mop),transparent);transform:scaleX(0) skewX(-8deg);transform-origin:left center;
  transition:transform var(--pvu-dur) cubic-bezier(.65,0,.35,1) calc(var(--pvu-delay) + var(--k,0) * .25s)}

/* états dessinés */
.pvu--static .pvu-svg path,.pvu.is-on .pvu-svg path{stroke-dashoffset:0}
.pvu--static .pvu-band,.pvu.is-on .pvu-band{transform:scaleX(1) skewX(-8deg)}
.pvu--hover .pvu-mark:hover .pvu-svg path{stroke-dashoffset:0;transition-delay:0s}
.pvu--hover .pvu-mark:hover .pvu-band{transform:scaleX(1) skewX(-8deg);transition-delay:0s}
/* « both » : redessin au survol (le script efface puis redessine) */
.pvu.is-redraw .pvu-svg path{transition:none;stroke-dashoffset:1}
.pvu.is-redraw .pvu-band{transition:none;transform:scaleX(0) skewX(-8deg)}

@media (prefers-reduced-motion:reduce){
  .pvu .pvu-svg path{transition:none!important;stroke-dashoffset:0!important}
  .pvu .pvu-band{transition:none!important;transform:scaleX(1) skewX(-8deg)!important}
}
