/* Impulsito animado · SVG + CSS puro, sin librerías
   Impulsibox · 2026-09-18 · borrador
   Se aplica una clase de estado al contenedor: .impulsito.impulsito--reposo
   Origen de todas las transformaciones: el centro del cuerpo (84, 72). */

.impulsito{display:inline-block;line-height:0}
.impulsito .imp-svg{display:block;width:100%;height:auto;overflow:visible}

/* ---------------------------------------------------- partes y transiciones */
.impulsito .imp-fig,
.impulsito .imp-estela,
.impulsito .imp-mirada,
.impulsito .imp-ojo,
.impulsito .imp-parpado{transform-box:view-box;transform-origin:84px 72px}
.impulsito .imp-ojo--izq{transform-origin:71.2px 65.6px}
.impulsito .imp-ojo--der{transform-origin:96.8px 65.6px}

.impulsito .imp-fig,
.impulsito .imp-estela,
.impulsito .imp-mirada,
.impulsito .imp-ojo{transition:transform 360ms cubic-bezier(.4,0,.2,1)}
.impulsito .imp-e,
.impulsito .imp-ojo-arco,
.impulsito .imp-ojo-globo,
.impulsito .imp-ojo-brillo{transition:opacity 360ms ease}

/* la estela: cinco formas superpuestas que se cruzan por opacidad */
.impulsito .imp-e{opacity:0}
.impulsito .imp-e--reposo{opacity:1}
.impulsito .imp-ojo-arco{opacity:0}
/* el párpado descansa fuera del ojo; al bajar, lo tapa */
.impulsito .imp-parpado{transform:translateY(-14px)}

/* ============================================================ los keyframes */
@keyframes imp-flotar{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes imp-ondear{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2.5deg)}}
@keyframes imp-parpadeo{0%,93%,100%{transform:translateY(-14px)}
                        95.5%,96.5%{transform:translateY(12px)}}

@keyframes imp-saludo-salto{0%{transform:translateY(0)}18%{transform:translateY(-14px)}
  34%{transform:translateY(0)}42%{transform:translateY(-4px)}50%,100%{transform:translateY(0)}}
@keyframes imp-saludo-latigazo{0%{transform:rotate(0)}14%{transform:rotate(-16deg)}
  32%{transform:rotate(9deg)}48%{transform:rotate(-3deg)}62%,100%{transform:rotate(0)}}
@keyframes imp-guino{0%,20%,42%,100%{transform:translateY(-14px)}26%,36%{transform:translateY(12px)}}

@keyframes imp-pensar-cuerpo{0%,100%{transform:rotate(-1deg)}50%{transform:rotate(-5deg)}}
@keyframes imp-pensar-mirada{0%,100%{transform:translate(-4px,-4px)}
  45%,55%{transform:translate(4px,-5px)}}
@keyframes imp-pensar-rizo{0%,100%{transform:rotate(0)}50%{transform:rotate(-14deg)}}
@keyframes imp-sale{0%,28%{opacity:1}34%,66%{opacity:0}72%,100%{opacity:1}}
@keyframes imp-entra{0%,28%{opacity:0}34%,66%{opacity:1}72%,100%{opacity:0}}

@keyframes imp-buscar-cuerpo{0%,100%{transform:rotate(3deg)}50%{transform:rotate(-3deg)}}
@keyframes imp-buscar-mirada{0%,100%{transform:translateX(5px)}50%{transform:translateX(-5px)}}
@keyframes imp-buscar-estela{0%,100%{transform:rotate(-10deg)}50%{transform:rotate(14deg)}}

@keyframes imp-trabajar-cuerpo{0%,100%{transform:translateY(0)}45%{transform:translateY(-4px)}}
@keyframes imp-trabajar-estela{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}

@keyframes imp-comprar-cuerpo{0%,100%{transform:translate(0,0)}
  25%{transform:translate(7px,-4px)}50%{transform:translate(10px,0)}75%{transform:translate(5px,-2px)}}
@keyframes imp-comprar-estela{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
@keyframes imp-comprar-mirada{0%,100%{transform:translateX(-3px)}50%{transform:translateX(4px)}}

@keyframes imp-celebrar-salto{0%{transform:translateY(0)}22%{transform:translateY(-26px)}
  40%{transform:translateY(0)}50%{transform:translateY(-8px)}60%{transform:translateY(0)}
  66%{transform:translateY(-2px)}72%,100%{transform:translateY(0)}}
@keyframes imp-celebrar-estela{0%{transform:rotate(0)}22%{transform:rotate(6deg)}
  45%{transform:rotate(-3deg)}62%,100%{transform:rotate(0)}}
@keyframes imp-celebrar-alta{0%,8%{opacity:0}12%,52%{opacity:1}56%,100%{opacity:0}}
@keyframes imp-celebrar-reposo{0%,8%{opacity:1}12%,52%{opacity:0}56%,100%{opacity:1}}
@keyframes imp-celebrar-ojo{0%,6%{opacity:1}10%,60%{opacity:0}64%,100%{opacity:1}}
@keyframes imp-celebrar-arco{0%,6%{opacity:0}10%,60%{opacity:1}64%,100%{opacity:0}}

@keyframes imp-contento-balanceo{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}
@keyframes imp-contento-estela{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}

@keyframes imp-error-sacudida{0%,64%,100%{transform:translateX(0)}
  4%{transform:translateX(-5px)}10%{transform:translateX(5px)}16%{transform:translateX(-4px)}
  22%{transform:translateX(3px)}28%{transform:translateX(-2px)}34%{transform:translateX(0)}}
@keyframes imp-error-temblor{0%,64%,100%{transform:scale(1.12) translateX(0)}
  6%{transform:scale(1.12) translateX(-1.5px)}12%{transform:scale(1.12) translateX(1.5px)}
  18%{transform:scale(1.12) translateX(-1px)}26%{transform:scale(1.12) translateX(0)}}
@keyframes imp-error-estela{0%{transform:rotate(0)}6%{transform:rotate(-9deg)}
  14%,100%{transform:rotate(-4deg)}}

/* ================================================================= 1 REPOSO */
.impulsito--reposo .imp-fig{animation:imp-flotar 3s ease-in-out infinite}
.impulsito--reposo .imp-estela{animation:imp-ondear 3s ease-in-out infinite}
.impulsito--reposo .imp-parpado{animation:imp-parpadeo 4.5s ease-in-out infinite}

/* ============================================================== 2 SALUDANDO */
/* gesto único: en el producto se lanza una vez y vuelve a reposo.
   Aquí el ciclo lleva la pausa dentro para poder verlo en bucle. */
.impulsito--saludando .imp-fig{animation:imp-saludo-salto 2.4s cubic-bezier(.3,0,.2,1) infinite}
.impulsito--saludando .imp-estela{animation:imp-saludo-latigazo 2.4s cubic-bezier(.3,0,.2,1) infinite}
.impulsito--saludando .imp-ojo--der .imp-parpado{animation:imp-guino 2.4s ease-in-out infinite}

/* =============================================================== 3 PENSANDO */
.impulsito--pensando .imp-fig{animation:imp-pensar-cuerpo 5s ease-in-out infinite}
.impulsito--pensando .imp-mirada{animation:imp-pensar-mirada 5s ease-in-out infinite}
.impulsito--pensando .imp-estela{animation:imp-pensar-rizo 5s ease-in-out infinite}
.impulsito--pensando .imp-e--reposo{animation:imp-sale 5s ease-in-out infinite}
.impulsito--pensando .imp-e--rizo{animation:imp-entra 5s ease-in-out infinite}
.impulsito--pensando .imp-parpado{animation:imp-parpadeo 6s ease-in-out infinite}

/* =============================================================== 4 BUSCANDO */
.impulsito--buscando .imp-e--reposo{opacity:0}
.impulsito--buscando .imp-e--rizo{opacity:1}
.impulsito--buscando .imp-fig{animation:imp-buscar-cuerpo 2.4s ease-in-out infinite}
.impulsito--buscando .imp-mirada{animation:imp-buscar-mirada 2.4s ease-in-out infinite}
.impulsito--buscando .imp-estela{animation:imp-buscar-estela 2.4s ease-in-out infinite}

/* ============================================================= 5 TRABAJANDO */
.impulsito--trabajando .imp-fig{animation:imp-trabajar-cuerpo .62s ease-in-out infinite}
.impulsito--trabajando .imp-estela{animation:imp-trabajar-estela .2s ease-in-out infinite}
.impulsito--trabajando .imp-ojo--izq{transform:translateX(1.4px)}
.impulsito--trabajando .imp-ojo--der{transform:translateX(-1.4px)}
.impulsito--trabajando .imp-parpado{animation:imp-parpadeo 5s ease-in-out infinite}

/* ============================================================== 6 COMPRANDO */
.impulsito--comprando .imp-fig{animation:imp-comprar-cuerpo 2.6s ease-in-out infinite}
.impulsito--comprando .imp-estela{animation:imp-comprar-estela 1.3s ease-in-out infinite}
.impulsito--comprando .imp-mirada{animation:imp-comprar-mirada 2.6s ease-in-out infinite}
.impulsito--comprando .imp-parpado{animation:imp-parpadeo 5.5s ease-in-out infinite}

/* ============================================================ 7 CELEBRANDO */
/* gesto único: 1,1 s de salto y el resto del ciclo, reposo. */
.impulsito--celebrando .imp-fig{animation:imp-celebrar-salto 3.2s cubic-bezier(.25,0,.2,1) infinite}
.impulsito--celebrando .imp-estela{animation:imp-celebrar-estela 3.2s ease-in-out infinite}
.impulsito--celebrando .imp-e--alta{animation:imp-celebrar-alta 3.2s ease-in-out infinite}
.impulsito--celebrando .imp-e--reposo{animation:imp-celebrar-reposo 3.2s ease-in-out infinite}
.impulsito--celebrando .imp-ojo-globo,
.impulsito--celebrando .imp-ojo-brillo{animation:imp-celebrar-ojo 3.2s ease-in-out infinite}
.impulsito--celebrando .imp-ojo-arco{animation:imp-celebrar-arco 3.2s ease-in-out infinite}

/* =============================================================== 8 CONTENTO */
.impulsito--contento .imp-ojo-globo,
.impulsito--contento .imp-ojo-brillo{opacity:0}
.impulsito--contento .imp-ojo-arco{opacity:1}
.impulsito--contento .imp-fig{animation:imp-contento-balanceo 2s ease-in-out infinite}
.impulsito--contento .imp-estela{animation:imp-contento-estela 1s ease-in-out infinite}

/* 9 TRISTE · rehecho en la tanda 2, mas abajo */

/* ================================================================ 10 ERROR */
.impulsito--error .imp-e--reposo{opacity:0}
.impulsito--error .imp-e--torcida{opacity:1}
.impulsito--error .imp-fig{animation:imp-error-sacudida 2.8s ease-in-out infinite}
.impulsito--error .imp-estela{animation:imp-error-estela 2.8s ease-in-out infinite}
.impulsito--error .imp-ojo{animation:imp-error-temblor 2.8s ease-in-out infinite}

/* ========================================== tamaños pequeños: menos moverse */
.impulsito--pequeno .imp-fig,
.impulsito--pequeno .imp-estela{animation:none!important;transform:none!important}
.impulsito--pequeno.impulsito--reposo .imp-fig{animation:imp-flotar 3.6s ease-in-out infinite!important}
.impulsito--pequeno.impulsito--reposo .imp-estela{animation:imp-ondear 3.6s ease-in-out infinite!important}

/* ============================== accesibilidad: solo el parpadeo si se pide */
@media (prefers-reduced-motion: reduce){
  .impulsito .imp-fig,
  .impulsito .imp-estela,
  .impulsito .imp-mirada,
  .impulsito .imp-ojo,
  .impulsito .imp-ojo-globo,
  .impulsito .imp-ojo-brillo,
  .impulsito .imp-ojo-arco,
  .impulsito .imp-e{animation:none!important;transition:none!important}
  .impulsito .imp-fig,
  .impulsito .imp-estela,
  .impulsito .imp-mirada{transform:none!important}
  .impulsito .imp-parpado{animation:imp-parpadeo 5s ease-in-out infinite!important}
}

/* ==========================================================================
   TANDA 2 · emociones basicas, si/no, escribiendo y escuchando
   El parpado es parte del ojo: un rectangulo del color del cuerpo que baja
   sobre el. Abierto = translateY(-14). Media asta = 0. Cerrado = +12.
   Rotandolo se consiguen los parpados en diagonal.
   ========================================================================== */
.impulsito .imp-ojo--izq .imp-parpado{transform-origin:71.2px 65.6px}
.impulsito .imp-ojo--der .imp-parpado{transform-origin:96.8px 65.6px}
.impulsito .imp-parpado{transition:transform 360ms cubic-bezier(.4,0,.2,1)}

/* el unico objeto de esta tanda: la burbuja «…» */
.impulsito .imp-objeto{opacity:0;transition:opacity 360ms ease}
.impulsito .imp-ojo-risa{opacity:0;transition:opacity 360ms ease}
.impulsito .imp-punto{transform-box:view-box;transform-origin:center}

/* ------------------------------------------------------------- keyframes */
@keyframes imp-triste-cuerpo{0%,40%{transform:translateY(6px)}
  50%,58%{transform:translateY(1px)}70%,100%{transform:translateY(6px)}}
@keyframes imp-triste-mirada{0%,40%{transform:translateY(3px)}
  50%,58%{transform:translateY(-4px)}70%,100%{transform:translateY(3px)}}
@keyframes imp-triste-parpado{0%,40%{transform:translateY(0)}
  50%,58%{transform:translateY(-9px)}70%,100%{transform:translateY(0)}}
@keyframes imp-triste-estela{0%,100%{transform:rotate(0)}50%{transform:rotate(-4deg)}}

@keyframes imp-duda-cuerpo{0%,100%{transform:rotate(-10deg)}50%{transform:rotate(-5deg)}}
@keyframes imp-duda-mirada{0%,100%{transform:translate(2px,-3px)}50%{transform:translate(4px,-1px)}}
@keyframes imp-duda-estela{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}

@keyframes imp-asombro-cuerpo{0%{transform:translate(0,0)}
  12%{transform:translate(6px,-10px)}26%{transform:translate(4px,-7px)}
  44%,100%{transform:translate(0,0)}}
@keyframes imp-asombro-estela{0%{transform:rotate(0)}12%{transform:rotate(-7deg)}
  30%{transform:rotate(-2deg)}48%,100%{transform:rotate(0)}}

@keyframes imp-enojado-cuerpo{0%,100%{transform:translate(-1.2px,3px)}
  50%{transform:translate(1.2px,3px)}}
@keyframes imp-enojado-estela{0%,100%{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}

@keyframes imp-miedo-cuerpo{0%,100%{transform:translate(-.9px,5px) scale(.88)}
  50%{transform:translate(.9px,5px) scale(.88)}}

@keyframes imp-aburrido-mirada{0%,34%{transform:translateX(-6px)}48%,84%{transform:translateX(6px)}100%{transform:translateX(-6px)}}
@keyframes imp-aburrido-parpado{0%,38%{transform:translateY(0)}
  47%,53%{transform:translateY(12px)}62%,100%{transform:translateY(0)}}
@keyframes imp-aburrido-cuerpo{0%,100%{transform:translateY(2px) rotate(-5deg)}50%{transform:translateY(4.5px) rotate(-2deg)}}
@keyframes imp-aburrido-estela{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(1deg)}}

@keyframes imp-cansado-cuerpo{0%{transform:translateY(0)}36%{transform:translateY(9px)}
  44%{transform:translateY(-3px)}56%,100%{transform:translateY(0)}}
@keyframes imp-cansado-parpado{0%{transform:translateY(-6px)}32%{transform:translateY(12px)}
  44%{transform:translateY(-11px)}60%,100%{transform:translateY(-6px)}}

@keyframes imp-riendo-cuerpo{0%,100%{transform:translateY(0)}50%{transform:translateY(-3.5px)}}
@keyframes imp-riendo-estela{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}

@keyframes imp-si-cuerpo{0%{transform:translateY(0)}10%{transform:translateY(9px)}
  20%{transform:translateY(0)}30%{transform:translateY(9px)}40%,100%{transform:translateY(0)}}
@keyframes imp-si-estela{0%{transform:rotate(0)}10%{transform:rotate(8deg)}
  20%{transform:rotate(0)}30%{transform:rotate(8deg)}40%,100%{transform:rotate(0)}}

@keyframes imp-no-cuerpo{0%{transform:translateX(0)}10%{transform:translateX(-10px)}
  22%{transform:translateX(10px)}34%{transform:translateX(-8px)}
  44%{transform:translateX(6px)}54%,100%{transform:translateX(0)}}
@keyframes imp-no-mirada{0%{transform:translateX(0)}10%{transform:translateX(5px)}
  22%{transform:translateX(-5px)}34%{transform:translateX(4px)}
  44%{transform:translateX(-3px)}54%,100%{transform:translateX(0)}}
@keyframes imp-no-estela{0%{transform:rotate(0)}14%{transform:rotate(9deg)}
  26%{transform:rotate(-9deg)}38%{transform:rotate(6deg)}50%,100%{transform:rotate(0)}}

@keyframes imp-escribe-mirada{0%{transform:translateX(-5px)}70%{transform:translateX(5px)}
  80%,100%{transform:translateX(-5px)}}
@keyframes imp-escribe-estela{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}
@keyframes imp-punto{0%,100%{opacity:.35;transform:translateY(0)}
  32%{opacity:1;transform:translateY(-2.6px)}64%{opacity:.35;transform:translateY(0)}}

@keyframes imp-escucha-cuerpo{0%,56%{transform:rotate(-6deg) translateY(0)}
  64%{transform:rotate(-6deg) translateY(5px)}72%{transform:rotate(-6deg) translateY(0)}
  80%{transform:rotate(-6deg) translateY(5px)}88%,100%{transform:rotate(-6deg) translateY(0)}}

/* ======================================================= 11 TRISTE (rehecho) */
.impulsito--triste .imp-e--reposo{opacity:0}
.impulsito--triste .imp-e--caida{opacity:1}
.impulsito--triste .imp-fig{animation:imp-triste-cuerpo 6s cubic-bezier(.4,0,.5,1) infinite}
.impulsito--triste .imp-mirada{animation:imp-triste-mirada 6s ease-in-out infinite}
.impulsito--triste .imp-estela{animation:imp-triste-estela 6s ease-in-out infinite}
.impulsito--triste .imp-parpado{animation:imp-triste-parpado 6s ease-in-out infinite}

/* ================================================================== 12 DUDA */
.impulsito--duda .imp-e--reposo{opacity:0}
.impulsito--duda .imp-e--interrogacion{opacity:1}
.impulsito--duda .imp-fig{animation:imp-duda-cuerpo 3.4s ease-in-out infinite}
.impulsito--duda .imp-mirada{animation:imp-duda-mirada 3.4s ease-in-out infinite}
.impulsito--duda .imp-estela{animation:imp-duda-estela 3.4s ease-in-out infinite}
.impulsito--duda .imp-ojo--izq .imp-parpado{transform:translateY(-3px)}

/* =============================================================== 13 ASOMBRO */
.impulsito--asombro .imp-e--reposo{opacity:0}
.impulsito--asombro .imp-e--rigida{opacity:1}
.impulsito--asombro .imp-fig{animation:imp-asombro-cuerpo 2.6s cubic-bezier(.2,0,.2,1) infinite}
.impulsito--asombro .imp-estela{animation:imp-asombro-estela 2.6s cubic-bezier(.2,0,.2,1) infinite}
.impulsito--asombro .imp-ojo{transform:scale(1.2)}
.impulsito--asombro .imp-parpado{transform:translateY(-17px)}

/* =============================================================== 14 ENOJADO */
.impulsito--enojado .imp-e--reposo{opacity:0}
.impulsito--enojado .imp-e--corta{opacity:1}
.impulsito--enojado .imp-fig{animation:imp-enojado-cuerpo .19s ease-in-out infinite}
.impulsito--enojado .imp-estela{animation:imp-enojado-estela .19s ease-in-out infinite}
.impulsito--enojado .imp-ojo--izq .imp-parpado{transform:translateY(-3px) rotate(21deg)}
.impulsito--enojado .imp-ojo--der .imp-parpado{transform:translateY(-3px) rotate(-21deg)}

/* ================================================================= 15 MIEDO */
.impulsito--miedo .imp-e--reposo{opacity:0}
.impulsito--miedo .imp-e--escondida{opacity:1}
.impulsito--miedo .imp-fig{animation:imp-miedo-cuerpo .13s ease-in-out infinite}
.impulsito--miedo .imp-ojo{transform:scale(.72)}
.impulsito--miedo .imp-mirada{transform:translate(-4px,3px)}

/* ============================================================== 16 ABURRIDO */
.impulsito--aburrido .imp-e--reposo{opacity:0}
.impulsito--aburrido .imp-e--caida{opacity:1}
.impulsito--aburrido .imp-fig{animation:imp-aburrido-cuerpo 5.4s ease-in-out infinite}
.impulsito--aburrido .imp-mirada{animation:imp-aburrido-mirada 5.4s ease-in-out infinite}
.impulsito--aburrido .imp-estela{animation:imp-aburrido-estela 5.4s ease-in-out infinite}
.impulsito--aburrido .imp-parpado{animation:imp-aburrido-parpado 5.4s ease-in-out infinite}

/* =============================================================== 17 CANSADO */
.impulsito--cansado .imp-e--reposo{opacity:0}
.impulsito--cansado .imp-e--caida{opacity:1}
.impulsito--cansado .imp-fig{animation:imp-cansado-cuerpo 3.4s cubic-bezier(.5,0,.3,1) infinite}
.impulsito--cansado .imp-parpado{animation:imp-cansado-parpado 3.4s ease-in-out infinite}

/* ================================================================ 18 RIENDO */
.impulsito--riendo .imp-ojo-globo,
.impulsito--riendo .imp-ojo-brillo{opacity:0}
.impulsito--riendo .imp-ojo-risa{opacity:1}
.impulsito--riendo .imp-mirada{transform:translateY(-1.5px)}
.impulsito--riendo .imp-fig{animation:imp-riendo-cuerpo .27s ease-in-out infinite}
.impulsito--riendo .imp-estela{animation:imp-riendo-estela .27s ease-in-out infinite}

/* ==================================================================== 19 SI */
/* gesto unico: 1,0 s de asentimiento dentro de un ciclo de 2,4 s */
.impulsito--si .imp-fig{animation:imp-si-cuerpo 2.4s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--si .imp-estela{animation:imp-si-estela 2.4s cubic-bezier(.4,0,.3,1) infinite}

/* ==================================================================== 20 NO */
.impulsito--no .imp-fig{animation:imp-no-cuerpo 2.4s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--no .imp-mirada{animation:imp-no-mirada 2.4s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--no .imp-estela{animation:imp-no-estela 2.4s cubic-bezier(.4,0,.3,1) infinite}

/* =========================================================== 21 ESCRIBIENDO */
.impulsito--escribiendo .imp-objeto--puntos{opacity:1}
.impulsito--escribiendo .imp-mirada{animation:imp-escribe-mirada 2.2s linear infinite}
.impulsito--escribiendo .imp-estela{animation:imp-escribe-estela .3s ease-in-out infinite}
.impulsito--escribiendo .imp-punto{animation:imp-punto .9s ease-in-out infinite}
.impulsito--escribiendo .imp-punto--2{animation-delay:.15s}
.impulsito--escribiendo .imp-punto--3{animation-delay:.3s}
.impulsito--escribiendo .imp-parpado{animation:imp-parpadeo 5.5s ease-in-out infinite}

/* ============================================================ 22 ESCUCHANDO */
.impulsito--escuchando .imp-fig{animation:imp-escucha-cuerpo 4.4s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--escuchando .imp-ojo{transform:scale(1.1)}
.impulsito--escuchando .imp-parpado{animation:imp-parpadeo 6.5s ease-in-out infinite}
.impulsito--escuchando .imp-estela{animation:imp-ondear 4.4s ease-in-out infinite}

/* ============================== accesibilidad, tambien para lo nuevo ====== */
@media (prefers-reduced-motion: reduce){
  .impulsito .imp-punto{animation:none!important;transform:none!important;opacity:1!important}
  .impulsito .imp-objeto{transition:none!important}
}

/* ==========================================================================
   TANDA 3 · con objeto
   Cada objeto es un grupo propio, oculto por defecto; aparece con un escalado
   corto desde 0,8 y opacidad. Impulsito no tiene manos: el objeto se apoya a
   su lado, flota junto a el, o lo «sujeta» la estela.
   ========================================================================== */
.impulsito .imp-objeto{opacity:0;transform:scale(.8);transform-box:fill-box;transform-origin:center;
  transition:opacity 360ms ease,transform 360ms cubic-bezier(.4,0,.2,1)}
.impulsito .obj-check{opacity:0;transition:opacity 260ms ease}
.impulsito .obj-tapa{transform-box:view-box}
.impulsito .obj-tapa--izq{transform-origin:15px 142px;transform:rotate(-66deg)}
.impulsito .obj-tapa--der{transform-origin:57px 142px;transform:rotate(66deg)}
.impulsito .obj-cerrojo{transform-box:view-box;transform-origin:123px 74px}
.impulsito .obj-nota,
.impulsito .obj-vaho path,
.impulsito .obj-lapiz{transform-box:view-box;transform-origin:center}
.impulsito .obj-nota{opacity:0}
.impulsito .obj-vaho path{opacity:0}
/* a 40 y a 24 px los objetos no caben: se apagan (ver la especificacion) */
.impulsito--pequeno .imp-objeto{display:none}

/* -------------------------------------------------------------- keyframes */
@keyframes imp-leer-mirada{0%,2%{transform:translate(-4px,-2px)}22%{transform:translate(4px,-2px)}
  25%,27%{transform:translate(-4px,1px)}47%{transform:translate(4px,1px)}
  50%,52%{transform:translate(-4px,4px)}72%{transform:translate(4px,4px)}
  78%,100%{transform:translate(-4px,-2px)}}
@keyframes imp-leer-pagina{0%,74%{transform:rotate(0)}80%{transform:rotate(-17deg)}
  86%{transform:rotate(3deg)}92%,100%{transform:rotate(0)}}

@keyframes imp-estudiar-mirada{0%,6%{transform:translate(-5px,4px)}
  60%{transform:translate(-5px,4px)}70%,92%{transform:translate(1px,-1px)}
  100%{transform:translate(-5px,4px)}}
@keyframes imp-estudiar-estela{0%,18%{transform:rotate(0)}24%{transform:rotate(-11deg)}
  30%{transform:rotate(-2deg)}36%{transform:rotate(-11deg)}42%{transform:rotate(-2deg)}
  48%{transform:rotate(-11deg)}56%,100%{transform:rotate(0)}}
@keyframes imp-estudiar-lapiz{0%,18%{transform:translate(0,0)}24%{transform:translate(-2px,3px)}
  30%{transform:translate(0,0)}36%{transform:translate(-2px,3px)}42%{transform:translate(0,0)}
  48%{transform:translate(-2px,3px)}56%,100%{transform:translate(0,0)}}

@keyframes imp-custodia-mirada{0%,28%{transform:translate(4px,0)}
  40%,74%{transform:translate(0,0)}86%,100%{transform:translate(4px,0)}}
@keyframes imp-custodia-cuerpo{0%,54%{transform:translateY(0)}62%{transform:translateY(5px)}
  70%{transform:translateY(0)}78%{transform:translateY(5px)}86%,100%{transform:translateY(0)}}

@keyframes imp-salto-corto{0%,8%{transform:translateY(0)}24%{transform:translateY(-15px)}
  40%{transform:translateY(0)}48%{transform:translateY(-5px)}56%,100%{transform:translateY(0)}}
@keyframes imp-cerrojo-abre{0%,10%{transform:rotate(0) translate(0,0)}
  26%,100%{transform:rotate(-38deg) translate(0,-3px)}}

@keyframes imp-tapa-izq{0%,8%{transform:rotate(-66deg)}
  26%{transform:rotate(-42deg)}32%{transform:rotate(-48deg)}
  50%{transform:rotate(-20deg)}56%{transform:rotate(-26deg)}
  74%{transform:rotate(0)}80%{transform:rotate(-7deg)}
  88%,94%{transform:rotate(0)}100%{transform:rotate(-66deg)}}
@keyframes imp-tapa-der{0%,8%{transform:rotate(66deg)}
  26%{transform:rotate(42deg)}32%{transform:rotate(48deg)}
  50%{transform:rotate(20deg)}56%{transform:rotate(26deg)}
  74%{transform:rotate(0)}80%{transform:rotate(7deg)}
  88%,94%{transform:rotate(0)}100%{transform:rotate(66deg)}}
@keyframes imp-empaca-estela{0%,14%{transform:rotate(0)}22%{transform:rotate(-13deg)}
  30%{transform:rotate(-3deg)}46%{transform:rotate(-13deg)}54%{transform:rotate(-3deg)}
  70%{transform:rotate(-13deg)}78%,100%{transform:rotate(0)}}

@keyframes imp-camino{0%,100%{transform:translateX(0)}50%{transform:translateX(13px)}}

@keyframes imp-baila-cuerpo{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
@keyframes imp-baila-estela{0%,100%{transform:rotate(-12deg)}50%{transform:rotate(12deg)}}

@keyframes imp-canta-cuerpo{0%,10%{transform:translateY(0)}26%{transform:translateY(-8px)}
  42%{transform:translateY(0)}58%{transform:translateY(-5px)}72%,100%{transform:translateY(0)}}
@keyframes imp-nota-sube{0%{opacity:0;transform:translateY(6px) scale(.7)}
  18%{opacity:1;transform:translateY(0) scale(1)}
  62%{opacity:1;transform:translateY(-14px) scale(1)}
  86%,100%{opacity:0;transform:translateY(-26px) scale(.8)}}

@keyframes imp-cafe-mirada{0%,10%{transform:translate(3px,4px)}
  44%,62%{transform:translate(3px,4px)}76%,100%{transform:translate(0,1px)}}
@keyframes imp-cafe-ojo{0%,42%{opacity:1}52%,70%{opacity:0}80%,100%{opacity:1}}
@keyframes imp-cafe-arco{0%,42%{opacity:0}52%,70%{opacity:1}80%,100%{opacity:0}}
@keyframes imp-vaho{0%{opacity:0;transform:translateY(5px)}
  25%{opacity:.9;transform:translateY(0)}70%{opacity:.5;transform:translateY(-8px)}
  100%{opacity:0;transform:translateY(-15px)}}

/* ============================================================== 22 LEYENDO */
.impulsito--leyendo .imp-objeto--lentes{opacity:1;transform:none}
.impulsito--leyendo .imp-mirada{animation:imp-leer-mirada 6s cubic-bezier(.5,0,.5,1) infinite}
.impulsito--leyendo .imp-estela{animation:imp-leer-pagina 6s cubic-bezier(.3,0,.3,1) infinite}
.impulsito--leyendo .imp-parpado{animation:imp-parpadeo 6s ease-in-out infinite}

/* =========================================================== 23 ESTUDIANDO */
.impulsito--estudiando .imp-objeto--cuaderno{opacity:1;transform:none}
.impulsito--estudiando .imp-mirada{animation:imp-estudiar-mirada 5s ease-in-out infinite}
.impulsito--estudiando .imp-estela{animation:imp-estudiar-estela 5s ease-in-out infinite}
.impulsito--estudiando .obj-lapiz{animation:imp-estudiar-lapiz 5s ease-in-out infinite}
.impulsito--estudiando .imp-parpado{animation:imp-parpadeo 5.5s ease-in-out infinite}

/* ====================================================== 24 PAGO TRANQUILO */
.impulsito--pago-tranquilo .imp-objeto--candado{opacity:1;transform:none}
.impulsito--pago-tranquilo .imp-mirada{animation:imp-custodia-mirada 4.5s ease-in-out infinite}
.impulsito--pago-tranquilo .imp-fig{animation:imp-custodia-cuerpo 4.5s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--pago-tranquilo .imp-estela{animation:imp-ondear 4.5s ease-in-out infinite}
.impulsito--pago-tranquilo .imp-parpado{animation:imp-parpadeo 5s ease-in-out infinite}

/* ------- variante: el pago se liberó (gesto único, 2,6 s) ---------------- */
.impulsito--pago-liberado .imp-objeto--candado{opacity:1;transform:none}
.impulsito--pago-liberado .obj-cerrojo{animation:imp-cerrojo-abre 2.6s cubic-bezier(.3,0,.2,1) infinite}
.impulsito--pago-liberado .imp-fig{animation:imp-salto-corto 2.6s cubic-bezier(.25,0,.2,1) infinite}
.impulsito--pago-liberado .imp-ojo-globo,
.impulsito--pago-liberado .imp-ojo-brillo{opacity:0}
.impulsito--pago-liberado .imp-ojo-arco{opacity:1}
.impulsito--pago-liberado .imp-estela{animation:imp-celebrar-estela 2.6s ease-in-out infinite}

/* =========================================================== 25 VERIFICANDO */
.impulsito--verificando .imp-objeto--escudo{opacity:1;transform:none}
.impulsito--verificando .imp-mirada{animation:imp-custodia-mirada 3.6s ease-in-out infinite}
.impulsito--verificando .imp-estela{animation:imp-ondear 3.6s ease-in-out infinite}
.impulsito--verificando .imp-fig{animation:imp-flotar 3.6s ease-in-out infinite}
.impulsito--verificando .imp-parpado{animation:imp-parpadeo 4.5s ease-in-out infinite}

/* ------- variante: verificado (gesto único, 2,6 s) ----------------------- */
.impulsito--verificado .imp-objeto--escudo{opacity:1;transform:none}
.impulsito--verificado .obj-check{opacity:1}
.impulsito--verificado .imp-fig{animation:imp-salto-corto 2.6s cubic-bezier(.25,0,.2,1) infinite}
.impulsito--verificado .imp-ojo-globo,
.impulsito--verificado .imp-ojo-brillo{opacity:0}
.impulsito--verificado .imp-ojo-arco{opacity:1}
.impulsito--verificado .imp-estela{animation:imp-celebrar-estela 2.6s ease-in-out infinite}

/* ========================================================= 26 EMPAQUETANDO */
.impulsito--empaquetando .imp-objeto--caja{opacity:1;transform:none}
.impulsito--empaquetando .obj-tapa--izq{animation:imp-tapa-izq 3s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--empaquetando .obj-tapa--der{animation:imp-tapa-der 3s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--empaquetando .imp-estela{animation:imp-empaca-estela 3s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--empaquetando .imp-mirada{transform:translate(-4px,3px)}
.impulsito--empaquetando .imp-parpado{animation:imp-parpadeo 5s ease-in-out infinite}

/* ============================================================ 27 EN CAMINO */
.impulsito--en-camino .imp-e--reposo{opacity:0}
.impulsito--en-camino .imp-e--larga{opacity:1}
.impulsito--en-camino .imp-objeto--caja{opacity:1;transform:none;
  animation:imp-camino 3.4s ease-in-out infinite}
.impulsito--en-camino .obj-tapa--izq,
.impulsito--en-camino .obj-tapa--der{transform:rotate(0)}
.impulsito--en-camino .imp-fig{animation:imp-camino 3.4s ease-in-out infinite}
.impulsito--en-camino .imp-parpado{animation:imp-parpadeo 5s ease-in-out infinite}

/* ============================================================ 28 ENTREGADO */
.impulsito--entregado .imp-objeto--caja{opacity:1;transform:none}
.impulsito--entregado .imp-fig{animation:imp-salto-corto 2.6s cubic-bezier(.25,0,.2,1) infinite}
.impulsito--entregado .imp-ojo-globo,
.impulsito--entregado .imp-ojo-brillo{opacity:0}
.impulsito--entregado .imp-ojo-arco{opacity:1}
.impulsito--entregado .imp-estela{animation:imp-celebrar-estela 2.6s ease-in-out infinite}

/* ============================================================= 29 BAILANDO */
.impulsito--bailando .imp-objeto--auriculares{opacity:1;transform:none}
.impulsito--bailando .imp-fig{animation:imp-baila-cuerpo 1.6s ease-in-out infinite}
.impulsito--bailando .imp-estela{animation:imp-baila-estela 1.6s ease-in-out infinite}
.impulsito--bailando .imp-parpado{animation:imp-parpadeo 4s ease-in-out infinite}

/* ============================================================= 30 CANTANDO */
.impulsito--cantando .imp-objeto--micro,
.impulsito--cantando .imp-objeto--notas{opacity:1;transform:none}
.impulsito--cantando .imp-fig{animation:imp-canta-cuerpo 3s cubic-bezier(.3,0,.3,1) infinite}
.impulsito--cantando .imp-ojo-globo,
.impulsito--cantando .imp-ojo-brillo{opacity:0}
.impulsito--cantando .imp-ojo-arco{opacity:1}
.impulsito--cantando .imp-estela{animation:imp-contento-estela 1.5s ease-in-out infinite}
.impulsito--cantando .obj-nota{animation:imp-nota-sube 2.4s ease-out infinite}
.impulsito--cantando .obj-nota--2{animation-delay:.5s}
.impulsito--cantando .obj-nota--3{animation-delay:1s}

/* ================================================================= 31 CAFÉ */
.impulsito--cafe .imp-objeto--taza{opacity:1;transform:none}
.impulsito--cafe .imp-mirada{animation:imp-cafe-mirada 4.5s ease-in-out infinite}
.impulsito--cafe .imp-fig{animation:imp-flotar 4.5s ease-in-out infinite}
.impulsito--cafe .imp-ojo-globo,
.impulsito--cafe .imp-ojo-brillo{animation:imp-cafe-ojo 4.5s ease-in-out infinite}
.impulsito--cafe .imp-ojo-arco{animation:imp-cafe-arco 4.5s ease-in-out infinite}
.impulsito--cafe .obj-vaho path{animation:imp-vaho 2.6s ease-out infinite}
.impulsito--cafe .obj-vaho path:last-child{animation-delay:.9s}

/* ==================================== accesibilidad, tambien para lo nuevo */
@media (prefers-reduced-motion: reduce){
  .impulsito .obj-nota,
  .impulsito .obj-vaho path,
  .impulsito .obj-lapiz,
  .impulsito .obj-tapa,
  .impulsito .obj-cerrojo{animation:none!important}
  .impulsito .obj-nota,
  .impulsito .obj-vaho path{opacity:1!important;transform:none!important}
  .impulsito .imp-objeto{transition:none!important}
}

/* ------------------------------------------------------------------------
   Mejora progresiva: en Chrome y Edge la propiedad `d` sí interpola entre
   dos paths con el mismo esqueleto de comandos, y las cinco estelas lo
   comparten (M · C · C · A · Z). Donde eso funciona, la estela se deforma
   de verdad y las otras cuatro formas se apagan. Donde no (Firefox hoy),
   queda el cruce por opacidad de arriba, que se ve igual de digno.
   ------------------------------------------------------------------------ */
@supports (d: path("M0 0Z")){
  .impulsito .imp-e--rizo,
  .impulsito .imp-e--alta,
  .impulsito .imp-e--caida,
  .impulsito .imp-e--torcida,
  .impulsito .imp-e--interrogacion,
  .impulsito .imp-e--rigida,
  .impulsito .imp-e--corta,
  .impulsito .imp-e--escondida{opacity:0!important;animation:none!important}
  .impulsito .imp-e--reposo{opacity:1!important;
    transition:d 360ms cubic-bezier(.4,0,.2,1)}

  @keyframes imp-d-pensar{0%,28%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}34%,66%{d:path("M75.72 102.91C44.81 94.63 36.9 134.54 20.2 101.75C34.4 129.62 41.47 87.48 55 58.48A32 32 0 1 1 75.72 102.91Z")}72%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}
  @keyframes imp-d-celebrar{0%,8%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}12%,52%{d:path("M100 99.71C72.29 115.71 68.32 144.1 62.32 158.94C67.42 146.33 73.82 116.09 56.86 88.96A32 32 0 1 1 100 99.71Z")}56%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}

  .impulsito--buscando .imp-e--reposo{d:path("M75.72 102.91C44.81 94.63 36.9 134.54 20.2 101.75C34.4 129.62 41.47 87.48 55 58.48A32 32 0 1 1 75.72 102.91Z")}
  .impulsito--duda     .imp-e--reposo{d:path("M91.74 103.05C60.69 110.79 51.85 197.63 42.4 144.05C50.43 189.59 62.06 111.58 53.24 80.82A32 32 0 1 1 91.74 103.05Z")}
  .impulsito--asombro  .imp-e--reposo{d:path("M86.23 103.92C54.31 106.15 35.82 125.51 26.19 136.21C34.38 127.11 53.14 105.1 52.02 73.12A32 32 0 1 1 86.23 103.92Z")}
  .impulsito--enojado  .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--miedo    .imp-e--reposo{d:path("M107.78 93.41C86.37 117.19 91.87 115.06 75.76 130.62C89.46 117.4 69.27 114.79 55.24 86.03A32 32 0 1 1 107.78 93.41Z")}
  .impulsito--aburrido .imp-e--reposo{d:path("M103.7 97.22C78.48 116.92 75.97 129.18 75.97 148.38C75.97 132.06 80.06 117.08 59.49 92.57A32 32 0 1 1 103.7 97.22Z")}
  .impulsito--cansado  .imp-e--reposo{d:path("M103.7 97.22C78.48 116.92 75.97 129.18 75.97 148.38C75.97 132.06 80.06 117.08 59.49 92.57A32 32 0 1 1 103.7 97.22Z")}
  .impulsito--triste   .imp-e--reposo{d:path("M103.7 97.22C78.48 116.92 75.97 129.18 75.97 148.38C75.97 132.06 80.06 117.08 59.49 92.57A32 32 0 1 1 103.7 97.22Z")}
  .impulsito--error    .imp-e--reposo{d:path("M77.35 103.3C46.05 96.65 28.78 79.82 21.58 111C27.7 84.5 45.21 95.31 52.95 64.26A32 32 0 1 1 77.35 103.3Z")}
  .impulsito--pensando .imp-e--reposo{animation:imp-d-pensar 5s ease-in-out infinite!important}
  .impulsito--celebrando .imp-e--reposo{animation:imp-d-celebrar 3.2s ease-in-out infinite!important}
}

@media (prefers-reduced-motion: reduce){
  .impulsito .imp-e--reposo{animation:none!important;transition:none!important}
}

/* ==========================================================================
   TANDA 4 - sociales y emociones finas (18 estados, del 33 al 50)
   Tres estelas nuevas (check, senal, erguida) y una sola forma de ojo nueva:
   el corazon de «enamorado». Los ciclos se escogen entre los divisores de
   4,8 s (4,8 - 2,4 - 1,6 - 1,2 - 0,4) para que la tira de todos cierre bien.
   ========================================================================== */
.impulsito .imp-ojo-corazon{opacity:0;transition:opacity 360ms ease;transform-box:view-box}
.impulsito .imp-ojo--izq .imp-ojo-corazon{transform-origin:71.2px 65.6px}
.impulsito .imp-ojo--der .imp-ojo-corazon{transform-origin:96.8px 65.6px}

/* -------------------------------------------------------------- keyframes */
@keyframes imp-vale-cuerpo{0%,6%{transform:translateY(0)}20%{transform:translateY(-7px)}
  38%,100%{transform:translateY(0)}}
@keyframes imp-vale-estela{0%,8%{transform:rotate(0)}20%{transform:rotate(-5deg)}
  60%{transform:rotate(-1deg)}74%,100%{transform:rotate(0)}}
@keyframes imp-vale-mirada{0%,10%{transform:translate(0,0)}30%,58%{transform:translate(3px,-3px)}
  76%,100%{transform:translate(0,0)}}
@keyframes imp-vale-sale{0%,10%{opacity:1}20%,60%{opacity:0}72%,100%{opacity:1}}
@keyframes imp-vale-entra{0%,10%{opacity:0}20%,60%{opacity:1}72%,100%{opacity:0}}

@keyframes imp-aplaude-cuerpo{0%{transform:translateY(0)}20%{transform:translateY(-11px)}
  40%{transform:translateY(0)}58%{transform:translateY(-7px)}76%,100%{transform:translateY(0)}}
@keyframes imp-aplaude-estela{0%,100%{transform:rotate(-14deg)}50%{transform:rotate(14deg)}}

@keyframes imp-choca-cuerpo{0%,10%{transform:translate(0,0)}24%{transform:translate(25px,-7px)}
  32%{transform:translate(20px,-3px)}48%,100%{transform:translate(0,0)}}
@keyframes imp-choca-estela{0%,10%{transform:rotate(0)}24%{transform:rotate(-15deg)}
  40%{transform:rotate(6deg)}56%,100%{transform:rotate(0)}}
@keyframes imp-choca-mirada{0%,10%{transform:translate(0,0)}26%,36%{transform:translate(5px,-1px)}
  56%,100%{transform:translate(0,0)}}
@keyframes imp-choca-sale{0%,12%{opacity:1}20%,40%{opacity:0}50%,100%{opacity:1}}
@keyframes imp-choca-entra{0%,12%{opacity:0}20%,40%{opacity:1}50%,100%{opacity:0}}
@keyframes imp-choca-ojo{0%,16%{opacity:1}22%,38%{opacity:0}46%,100%{opacity:1}}
@keyframes imp-choca-arco{0%,16%{opacity:0}22%,38%{opacity:1}46%,100%{opacity:0}}

@keyframes imp-llama-cuerpo{0%,4%{transform:translateY(0)}14%{transform:translateY(-13px)}
  26%{transform:translateY(0)}36%{transform:translateY(-13px)}48%,100%{transform:translateY(0)}}
@keyframes imp-llama-estela{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}

@keyframes imp-susurra-cuerpo{0%,100%{transform:translate(13px,0) rotate(-7deg) scale(.9)}
  50%{transform:translate(13px,-3px) rotate(-7deg) scale(.9)}}

@keyframes imp-adios-cuerpo{0%{transform:translate(0,0) rotate(0)}
  9%{transform:translate(0,0) rotate(-11deg)}18%{transform:translate(0,0) rotate(10deg)}
  27%{transform:translate(0,0) rotate(-9deg)}36%{transform:translate(0,0) rotate(8deg)}
  46%{transform:translate(0,0) rotate(0)}
  68%,84%{transform:translate(-70px,12px) rotate(4deg)}
  85%,100%{transform:translate(0,0) rotate(0)}}
@keyframes imp-adios-opacidad{0%,54%{opacity:1}70%,84%{opacity:0}94%,100%{opacity:1}}
@keyframes imp-adios-sale{0%,46%{opacity:1}56%,84%{opacity:0}92%,100%{opacity:1}}
@keyframes imp-adios-entra{0%,46%{opacity:0}56%,84%{opacity:1}92%,100%{opacity:0}}

@keyframes imp-perdon-cuerpo{0%,6%{transform:translateY(0) rotate(0) scale(1)}
  22%,56%{transform:translateY(8px) rotate(7deg) scale(.9)}
  72%,88%{transform:translateY(6px) rotate(3deg) scale(.93)}
  100%{transform:translateY(0) rotate(0) scale(1)}}
@keyframes imp-perdon-mirada{0%,6%{transform:translate(0,0)}22%,56%{transform:translate(-2px,5px)}
  72%,88%{transform:translate(0,-1px)}100%{transform:translate(0,0)}}
@keyframes imp-perdon-parpado{0%,6%{transform:translateY(-14px)}22%,56%{transform:translateY(-2px)}
  72%,100%{transform:translateY(-14px)}}
@keyframes imp-perdon-sale{0%,8%{opacity:1}18%,88%{opacity:0}96%,100%{opacity:1}}
@keyframes imp-perdon-entra{0%,8%{opacity:0}18%,88%{opacity:1}96%,100%{opacity:0}}

@keyframes imp-espera-cuerpo{0%,34%{transform:translateY(0) rotate(0)}
  48%,72%{transform:translateY(-2px) rotate(-9deg)}88%,100%{transform:translateY(0) rotate(0)}}

@keyframes imp-verguenza-cuerpo{0%,100%{transform:translate(-2px,4px) rotate(-7deg) scale(.93)}
  50%{transform:translate(-2px,6px) rotate(-5deg) scale(.93)}}
@keyframes imp-verguenza-estela{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(4deg)}}

@keyframes imp-orgullo-cuerpo{0%,100%{transform:translateY(-5px) scale(1.05)}
  50%{transform:translateY(-8px) scale(1.08)}}
@keyframes imp-orgullo-estela{0%,100%{transform:rotate(2deg)}50%{transform:rotate(-2deg)}}

@keyframes imp-curioso-cuerpo{0%,100%{transform:rotate(-3deg) scale(1.1)}
  50%{transform:rotate(3deg) scale(1.1)}}
@keyframes imp-curioso-cola{0%,100%{transform:rotate(-13deg)}50%{transform:rotate(13deg)}}

@keyframes imp-nervioso-mirada{0%,12%{transform:translateX(-6px)}20%,32%{transform:translateX(6px)}
  40%,52%{transform:translateX(-6px)}60%,72%{transform:translateX(5px)}80%,100%{transform:translateX(-6px)}}
@keyframes imp-nervioso-cuerpo{0%,100%{transform:translateY(2px)}50%{transform:translateY(4px)}}
@keyframes imp-nervioso-estela{0%,100%{transform:rotate(0)}45%{transform:rotate(-7deg)}}

@keyframes imp-alivio-cuerpo{0%,8%{transform:translateY(0)}24%{transform:translateY(-12px)}
  46%{transform:translateY(5px)}64%,100%{transform:translateY(0)}}
@keyframes imp-alivio-ojo{0%,22%{opacity:1}30%,56%{opacity:0}64%,100%{opacity:1}}
@keyframes imp-alivio-arco{0%,22%{opacity:0}30%,56%{opacity:1}64%,100%{opacity:0}}
@keyframes imp-alivio-sale{0%,28%{opacity:1}38%,62%{opacity:0}74%,100%{opacity:1}}
@keyframes imp-alivio-entra{0%,28%{opacity:0}38%,62%{opacity:1}74%,100%{opacity:0}}

@keyframes imp-gracias-cuerpo{0%,6%{transform:translateY(0) rotate(0)}
  24%,36%{transform:translateY(8px) rotate(17deg)}54%,100%{transform:translateY(0) rotate(0)}}
@keyframes imp-gracias-estela{0%,6%{transform:rotate(0)}24%,36%{transform:rotate(-10deg)}
  54%,100%{transform:rotate(0)}}
@keyframes imp-gracias-parpado{0%,10%{transform:translateY(-14px)}24%,36%{transform:translateY(6px)}
  52%,100%{transform:translateY(-14px)}}

@keyframes imp-decepcion-cuerpo{0%,8%{transform:translateY(0)}24%,74%{transform:translateY(5px)}
  92%,100%{transform:translateY(0)}}
@keyframes imp-decepcion-parpado{0%,30%{transform:translateY(-5px)}44%,54%{transform:translateY(12px)}
  68%,100%{transform:translateY(-5px)}}

@keyframes imp-enamorado-cuerpo{0%,100%{transform:translateY(-7px)}50%{transform:translateY(-11px)}}
@keyframes imp-enamorado-ojo{0%,14%{opacity:1}22%,72%{opacity:0}80%,100%{opacity:1}}
@keyframes imp-enamorado-corazon{0%,14%{opacity:0}22%,72%{opacity:1}80%,100%{opacity:0}}
@keyframes imp-latido{0%,100%{transform:scale(1)}50%{transform:scale(1.1)}}

@keyframes imp-travieso-cuerpo{0%,100%{transform:rotate(-9deg)}50%{transform:rotate(9deg)}}
@keyframes imp-travieso-mirada{0%,100%{transform:translate(-3px,1px)}50%{transform:translate(3px,1px)}}

@keyframes imp-sospecha-cuerpo{0%,10%{transform:translateX(0) scale(1)}
  55%,78%{transform:translateX(3px) scale(.93)}100%{transform:translateX(0) scale(1)}}
@keyframes imp-sospecha-mirada{0%,20%{transform:translate(0,0)}42%,70%{transform:translate(-3px,0)}
  90%,100%{transform:translate(0,0)}}

/* ======================================================== 33 VALE / CHECK */
/* gesto unico: la estela se estira, traza el check y vuelve (2,4 s) */
.impulsito--vale .imp-fig{animation:imp-vale-cuerpo 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--vale .imp-estela{animation:imp-vale-estela 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--vale .imp-mirada{animation:imp-vale-mirada 2.4s ease-in-out infinite}
.impulsito--vale .imp-e--reposo{animation:imp-vale-sale 2.4s ease-in-out infinite}
.impulsito--vale .imp-e--check{animation:imp-vale-entra 2.4s ease-in-out infinite}

/* ========================================================= 34 APLAUDIENDO */
.impulsito--aplaudiendo .imp-ojo-globo,
.impulsito--aplaudiendo .imp-ojo-brillo{opacity:0}
.impulsito--aplaudiendo .imp-ojo-arco{opacity:1}
.impulsito--aplaudiendo .imp-fig{animation:imp-aplaude-cuerpo 1.2s cubic-bezier(.3,0,.3,1) infinite}
.impulsito--aplaudiendo .imp-estela{animation:imp-aplaude-estela 1.2s ease-in-out infinite}

/* ============================================================ 35 CHOCANDO */
/* gesto unico: sale hacia el borde derecho como quien choca la mano (2,4 s) */
.impulsito--chocando .imp-fig{animation:imp-choca-cuerpo 2.4s cubic-bezier(.25,0,.2,1) infinite}
.impulsito--chocando .imp-estela{animation:imp-choca-estela 2.4s cubic-bezier(.25,0,.2,1) infinite}
.impulsito--chocando .imp-mirada{animation:imp-choca-mirada 2.4s ease-in-out infinite}
.impulsito--chocando .imp-e--reposo{animation:imp-choca-sale 2.4s ease-in-out infinite}
.impulsito--chocando .imp-e--larga{animation:imp-choca-entra 2.4s ease-in-out infinite}
.impulsito--chocando .imp-ojo-globo,
.impulsito--chocando .imp-ojo-brillo{animation:imp-choca-ojo 2.4s ease-in-out infinite}
.impulsito--chocando .imp-ojo-arco{animation:imp-choca-arco 2.4s ease-in-out infinite}

/* ================================================ 36 LLAMANDO LA ATENCION */
.impulsito--llamando .imp-e--reposo{opacity:0}
.impulsito--llamando .imp-e--senal{opacity:1}
.impulsito--llamando .imp-fig{animation:imp-llama-cuerpo 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--llamando .imp-estela{animation:imp-llama-estela 1.2s ease-in-out infinite}
.impulsito--llamando .imp-mirada{transform:translate(3px,-4px)}
.impulsito--llamando .imp-parpado{transform:translateY(-16px)}

/* ========================================================== 37 SUSURRANDO */
.impulsito--susurrando .imp-e--reposo{opacity:0}
.impulsito--susurrando .imp-e--corta{opacity:1}
.impulsito--susurrando .imp-fig{animation:imp-susurra-cuerpo 4.8s ease-in-out infinite}
.impulsito--susurrando .imp-estela{animation:imp-ondear 4.8s ease-in-out infinite}
.impulsito--susurrando .imp-parpado{transform:translateY(-7px)}
.impulsito--susurrando .imp-mirada{transform:translate(2px,0)}

/* ======================================================= 38 DESPIDIENDOSE */
/* gesto unico: saluda, se va por la estela y en la demo vuelve (4,8 s) */
.impulsito--despidiendose .imp-fig{animation:imp-adios-cuerpo 4.8s cubic-bezier(.4,0,.3,1) infinite,
  imp-adios-opacidad 4.8s linear infinite}
.impulsito--despidiendose .imp-e--reposo{animation:imp-adios-sale 4.8s ease-in-out infinite}
.impulsito--despidiendose .imp-e--larga{animation:imp-adios-entra 4.8s ease-in-out infinite}
.impulsito--despidiendose .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ===================================================== 39 PIDIENDO PERDON */
/* gesto unico: se encoge, mira abajo y vuelve a mirar al usuario (4,8 s) */
.impulsito--perdon .imp-fig{animation:imp-perdon-cuerpo 4.8s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--perdon .imp-mirada{animation:imp-perdon-mirada 4.8s ease-in-out infinite}
.impulsito--perdon .imp-parpado{animation:imp-perdon-parpado 4.8s ease-in-out infinite}
.impulsito--perdon .imp-e--reposo{animation:imp-perdon-sale 4.8s ease-in-out infinite}
.impulsito--perdon .imp-e--caida{animation:imp-perdon-entra 4.8s ease-in-out infinite}
.impulsito--perdon .imp-estela{animation:imp-triste-estela 4.8s ease-in-out infinite}

/* ================================================== 40 ESPERANDO RESPUESTA */
.impulsito--esperando-respuesta .imp-fig{animation:imp-espera-cuerpo 4.8s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--esperando-respuesta .imp-estela{animation:imp-ondear 4.8s ease-in-out infinite}
.impulsito--esperando-respuesta .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ============================================================ 41 VERGUENZA */
.impulsito--verguenza .imp-e--reposo{opacity:0}
.impulsito--verguenza .imp-e--rizo{opacity:1}
.impulsito--verguenza .imp-fig{animation:imp-verguenza-cuerpo 4.8s ease-in-out infinite}
.impulsito--verguenza .imp-estela{animation:imp-verguenza-estela 4.8s ease-in-out infinite}
.impulsito--verguenza .imp-mirada{transform:translate(-6px,4px)}
.impulsito--verguenza .imp-parpado{transform:translateY(-4px)}

/* ============================================================ 42 ORGULLOSO */
.impulsito--orgulloso .imp-e--reposo{opacity:0}
.impulsito--orgulloso .imp-e--erguida{opacity:1}
.impulsito--orgulloso .imp-ojo-globo,
.impulsito--orgulloso .imp-ojo-brillo{opacity:0}
.impulsito--orgulloso .imp-ojo-arco{opacity:1}
.impulsito--orgulloso .imp-fig{animation:imp-orgullo-cuerpo 4.8s ease-in-out infinite}
.impulsito--orgulloso .imp-estela{animation:imp-orgullo-estela 4.8s ease-in-out infinite}

/* ============================================================== 43 CURIOSO */
.impulsito--curioso .imp-fig{animation:imp-curioso-cuerpo 2.4s ease-in-out infinite}
.impulsito--curioso .imp-estela{animation:imp-curioso-cola 1.2s ease-in-out infinite}
.impulsito--curioso .imp-ojo{transform:scale(1.15)}
.impulsito--curioso .imp-parpado{transform:translateY(-16px)}

/* ============================================================= 44 NERVIOSO */
.impulsito--nervioso .imp-e--reposo{opacity:0}
.impulsito--nervioso .imp-e--caida{opacity:1}
.impulsito--nervioso .imp-fig{animation:imp-nervioso-cuerpo 2.4s ease-in-out infinite}
.impulsito--nervioso .imp-mirada{animation:imp-nervioso-mirada 2.4s cubic-bezier(.5,0,.3,1) infinite}
.impulsito--nervioso .imp-estela{animation:imp-nervioso-estela .4s ease-in-out infinite}

/* ============================================================= 45 ALIVIADO */
/* gesto unico: el suspiro (4,8 s) */
.impulsito--aliviado .imp-fig{animation:imp-alivio-cuerpo 4.8s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--aliviado .imp-estela{animation:imp-ondear 4.8s ease-in-out infinite}
.impulsito--aliviado .imp-ojo-globo,
.impulsito--aliviado .imp-ojo-brillo{animation:imp-alivio-ojo 4.8s ease-in-out infinite}
.impulsito--aliviado .imp-ojo-arco{animation:imp-alivio-arco 4.8s ease-in-out infinite}
.impulsito--aliviado .imp-e--reposo{animation:imp-alivio-sale 4.8s ease-in-out infinite}
.impulsito--aliviado .imp-e--caida{animation:imp-alivio-entra 4.8s ease-in-out infinite}

/* =========================================================== 46 AGRADECIDO */
/* gesto unico: la reverencia (2,4 s) */
.impulsito--agradecido .imp-fig{animation:imp-gracias-cuerpo 2.4s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--agradecido .imp-estela{animation:imp-gracias-estela 2.4s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--agradecido .imp-parpado{animation:imp-gracias-parpado 2.4s ease-in-out infinite}

/* ========================================================= 47 DECEPCIONADO */
.impulsito--decepcionado .imp-e--reposo{opacity:0}
.impulsito--decepcionado .imp-e--corta{opacity:1}
.impulsito--decepcionado .imp-fig{animation:imp-decepcion-cuerpo 4.8s cubic-bezier(.4,0,.5,1) infinite}
.impulsito--decepcionado .imp-parpado{animation:imp-decepcion-parpado 4.8s cubic-bezier(.4,0,.4,1) infinite}
.impulsito--decepcionado .imp-mirada{transform:translateY(2px)}

/* ============================================================ 48 ENAMORADO */
.impulsito--enamorado .imp-fig{animation:imp-enamorado-cuerpo 4.8s ease-in-out infinite}
.impulsito--enamorado .imp-estela{animation:imp-ondear 4.8s ease-in-out infinite}
.impulsito--enamorado .imp-ojo-globo,
.impulsito--enamorado .imp-ojo-brillo{animation:imp-enamorado-ojo 4.8s ease-in-out infinite}
.impulsito--enamorado .imp-ojo-corazon{animation:imp-enamorado-corazon 4.8s ease-in-out infinite,
  imp-latido 1.2s ease-in-out infinite}

/* ============================================================= 49 TRAVIESO */
.impulsito--travieso .imp-fig{animation:imp-travieso-cuerpo 1.2s ease-in-out infinite}
.impulsito--travieso .imp-estela{animation:imp-contento-estela 1.2s ease-in-out infinite}
.impulsito--travieso .imp-mirada{animation:imp-travieso-mirada 1.2s ease-in-out infinite}
.impulsito--travieso .imp-ojo--der .imp-parpado{animation:imp-guino 2.4s ease-in-out infinite}

/* ========================================================== 50 SOSPECHANDO */
/* un solo parpado, a media asta y recto; enojado lleva los dos en diagonal */
.impulsito--sospechando .imp-e--reposo{opacity:0}
.impulsito--sospechando .imp-e--rigida{opacity:1}
.impulsito--sospechando .imp-fig{animation:imp-sospecha-cuerpo 4.8s ease-in-out infinite}
.impulsito--sospechando .imp-mirada{animation:imp-sospecha-mirada 4.8s ease-in-out infinite}
.impulsito--sospechando .imp-ojo--der .imp-parpado{transform:translateY(0)}
.impulsito--sospechando .imp-ojo--izq .imp-parpado{transform:translateY(-14px)}

/* ==================================== accesibilidad, tambien para lo nuevo */
@media (prefers-reduced-motion: reduce){
  .impulsito .imp-ojo-corazon{animation:none!important;transform:none!important;opacity:0!important}
  .impulsito .imp-fig{opacity:1!important}
}

/* ------------------------------------------------------------------------
   Morfeo real de `d` para la tanda 4 (Chrome y Edge). Aqui se apagan ademas
   las tres estelas nuevas y la `larga` -que faltaba desde la tanda 3, y por
   eso «en camino» ensenaba dos estelas a la vez- y se les da su forma a los
   dos estados que se habian quedado sin regla: `en-camino` y la duda.
   ------------------------------------------------------------------------ */
@supports (d: path("M0 0Z")){
  .impulsito .imp-e--larga,
  .impulsito .imp-e--check,
  .impulsito .imp-e--senal,
  .impulsito .imp-e--erguida{opacity:0!important;animation:none!important}

  @keyframes imp-d-vale{0%,10%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}20%,60%{d:path("M92.82 102.76C94 144 114 76 150 22C120 60 72 126 57.47 89.89A32 32 0 1 1 92.82 102.76Z")}72%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}
  @keyframes imp-d-choca{0%,12%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}20%,40%{d:path("M76.8 103.18C45.62 95.98 6.07 128.2 -5.12 134.41C4.39 129.13 48.34 99.86 52.24 68.1A32 32 0 1 1 76.8 103.18Z")}50%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}
  @keyframes imp-d-adios{0%,46%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}56%,84%{d:path("M76.8 103.18C45.62 95.98 6.07 128.2 -5.12 134.41C4.39 129.13 48.34 99.86 52.24 68.1A32 32 0 1 1 76.8 103.18Z")}92%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}
  @keyframes imp-d-perdon{0%,8%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}18%,88%{d:path("M103.7 97.22C78.48 116.92 75.97 129.18 75.97 148.38C75.97 132.06 80.06 117.08 59.49 92.57A32 32 0 1 1 103.7 97.22Z")}96%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}
  @keyframes imp-d-alivio{0%,28%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}38%,62%{d:path("M103.7 97.22C78.48 116.92 75.97 129.18 75.97 148.38C75.97 132.06 80.06 117.08 59.49 92.57A32 32 0 1 1 103.7 97.22Z")}74%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}

  .impulsito--en-camino     .imp-e--reposo{d:path("M76.8 103.18C45.62 95.98 6.07 128.2 -5.12 134.41C4.39 129.13 48.34 99.86 52.24 68.1A32 32 0 1 1 76.8 103.18Z")}
  .impulsito--llamando      .imp-e--reposo{d:path("M78.99 40.39C110.6 35.39 117.65 19.09 128.97 7.78C119.35 17.4 109.31 34.48 115.41 65.89A32 32 0 1 1 78.99 40.39Z")}
  .impulsito--susurrando    .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--verguenza     .imp-e--reposo{d:path("M75.72 102.91C44.81 94.63 36.9 134.54 20.2 101.75C34.4 129.62 41.47 87.48 55 58.48A32 32 0 1 1 75.72 102.91Z")}
  .impulsito--orgulloso     .imp-e--reposo{d:path("M97.02 101.23C67.78 114.25 53.6 125.88 55.83 141.72C53.94 128.26 66.32 113.66 54.33 83.99A32 32 0 1 1 97.02 101.23Z")}
  .impulsito--nervioso      .imp-e--reposo{d:path("M103.7 97.22C78.48 116.92 75.97 129.18 75.97 148.38C75.97 132.06 80.06 117.08 59.49 92.57A32 32 0 1 1 103.7 97.22Z")}
  .impulsito--decepcionado  .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--sospechando   .imp-e--reposo{d:path("M86.23 103.92C54.31 106.15 35.82 125.51 26.19 136.21C34.38 127.11 53.14 105.1 52.02 73.12A32 32 0 1 1 86.23 103.92Z")}
  .impulsito--vale          .imp-e--reposo{animation:imp-d-vale 2.4s ease-in-out infinite!important}
  .impulsito--chocando      .imp-e--reposo{animation:imp-d-choca 2.4s ease-in-out infinite!important}
  .impulsito--despidiendose .imp-e--reposo{animation:imp-d-adios 4.8s ease-in-out infinite!important}
  .impulsito--perdon        .imp-e--reposo{animation:imp-d-perdon 4.8s ease-in-out infinite!important}
  .impulsito--aliviado      .imp-e--reposo{animation:imp-d-alivio 4.8s ease-in-out infinite!important}
}

/* Ultimo, para que gane al bloque de arriba: con `prefers-reduced-motion` no
   se mueve tampoco el morfeo de `d`, y el muneco no se desvanece nunca. */
@media (prefers-reduced-motion: reduce){
  .impulsito.impulsito .imp-e--reposo{animation:none!important;transition:none!important}
  .impulsito.impulsito .imp-fig{opacity:1!important}
}

/* ==========================================================================
   TANDA 5 - cuerpo y funcionales que faltaban (15 estados, del 51 al 65)
   Seis estelas nuevas (apunta, abierta, dormida, espiral, enroscada y
   horizontal) con el mismo esqueleto M-C-C-A-Z, y cinco objetos: el gorro de
   fiesta y la gorra van DENTRO de la figura (saltan y se desplazan con el
   cuerpo); el birrete, la «z» y el punto que orbita van FUERA, porque tienen
   vida propia. Los ciclos siguen siendo divisores de 4,8 s.
   ========================================================================== */
.impulsito .obj-punto-orbital{transform-box:view-box;transform-origin:84px 72px}
.impulsito .imp-objeto--birrete,
.impulsito .imp-objeto--zeta{transform-box:view-box;transform-origin:84px 72px}

/* -------------------------------------------------------------- keyframes */
@keyframes imp-orbita-punto{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes imp-orbita-estela{from{transform:rotate(-34deg)}to{transform:rotate(326deg)}}
@keyframes imp-orbita-mirada{0%,100%{transform:translate(0,-4px)}
  25%{transform:translate(4px,0)}50%{transform:translate(0,4px)}75%{transform:translate(-4px,0)}}

@keyframes imp-envia-cuerpo{0%,10%{transform:translate(0,0) scale(1)}
  20%{transform:translate(-8px,5px) scale(.95)}
  34%{transform:translate(54px,-9px) scale(1)}
  46%,64%{transform:translate(72px,-13px) scale(1)}
  65%,100%{transform:translate(0,0) scale(1)}}
@keyframes imp-envia-opacidad{0%,32%{opacity:1}42%,66%{opacity:0}80%,100%{opacity:1}}
@keyframes imp-envia-estela{0%,12%{transform:rotate(0)}22%{transform:rotate(15deg)}
  34%{transform:rotate(4deg)}46%,100%{transform:rotate(0)}}
@keyframes imp-envia-mirada{0%,12%{transform:translate(0,0)}24%,46%{transform:translate(5px,-1px)}
  66%,100%{transform:translate(0,0)}}
@keyframes imp-envia-sale{0%,14%{opacity:1}22%,46%{opacity:0}60%,100%{opacity:1}}
@keyframes imp-envia-entra{0%,14%{opacity:0}22%,46%{opacity:1}60%,100%{opacity:0}}

@keyframes imp-senala-cuerpo{0%,100%{transform:translate(7px,0)}50%{transform:translate(7px,-3px)}}
@keyframes imp-senala-mirada{0%,18%{transform:translate(0,0)}
  34%,70%{transform:translate(6px,2px)}86%,100%{transform:translate(0,0)}}
@keyframes imp-senala-estela{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}

@keyframes imp-presenta-cuerpo{0%,100%{transform:translate(-15px,0) rotate(-2deg)}
  50%{transform:translate(-15px,-3px) rotate(1deg)}}
@keyframes imp-presenta-mirada{0%,14%{transform:translate(6px,1px)}
  34%,58%{transform:translate(-2px,0)}78%,100%{transform:translate(6px,1px)}}
@keyframes imp-presenta-estela{0%,8%{transform:rotate(11deg)}24%,84%{transform:rotate(0)}
  96%,100%{transform:rotate(11deg)}}
@keyframes imp-presenta-sale{0%,8%{opacity:1}18%,84%{opacity:0}94%,100%{opacity:1}}
@keyframes imp-presenta-entra{0%,8%{opacity:0}18%,84%{opacity:1}94%,100%{opacity:0}}

@keyframes imp-cuenta-cuerpo{0%,4%{transform:translateY(0)}12%{transform:translateY(-12px)}
  20%{transform:translateY(0)}30%{transform:translateY(-12px)}38%{transform:translateY(0)}
  48%{transform:translateY(-12px)}56%,100%{transform:translateY(0)}}
@keyframes imp-cuenta-parpado{0%,10%{transform:translateY(-14px)}
  12.5%,13.5%{transform:translateY(12px)}16%,28%{transform:translateY(-14px)}
  30.5%,31.5%{transform:translateY(12px)}34%,46%{transform:translateY(-14px)}
  48.5%,49.5%{transform:translateY(12px)}52%,100%{transform:translateY(-14px)}}
@keyframes imp-cuenta-estela{0%,4%{transform:rotate(0)}12%{transform:rotate(-7deg)}
  20%{transform:rotate(2deg)}30%{transform:rotate(-7deg)}38%{transform:rotate(2deg)}
  48%{transform:rotate(-7deg)}58%,100%{transform:rotate(0)}}

@keyframes imp-guarda-cuerpo{0%,20%{transform:translateY(0)}34%{transform:translateY(-14px)}
  48%{transform:translateY(0)}56%{transform:translateY(-4px)}64%,100%{transform:translateY(0)}}
@keyframes imp-guarda-guino{0%,6%{transform:translateY(-14px)}
  11%,20%{transform:translateY(12px)}26%,100%{transform:translateY(-14px)}}
@keyframes imp-guarda-estela{0%,22%{transform:rotate(0)}34%{transform:rotate(-12deg)}
  50%{transform:rotate(3deg)}64%,100%{transform:rotate(0)}}
@keyframes imp-guarda-sale{0%,22%{opacity:1}30%,52%{opacity:0}64%,100%{opacity:1}}
@keyframes imp-guarda-entra{0%,22%{opacity:0}30%,52%{opacity:1}64%,100%{opacity:0}}

@keyframes imp-duerme-cuerpo{0%,100%{transform:translateY(4px)}50%{transform:translateY(-1px)}}
@keyframes imp-duerme-estela{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(1.5deg)}}
@keyframes imp-zeta{0%,4%{opacity:0;transform:translate(0,8px) scale(.6)}
  18%{opacity:1;transform:translate(-2px,0) scale(1)}
  58%{opacity:.85;transform:translate(-8px,-20px) scale(1.15)}
  80%,100%{opacity:0;transform:translate(-13px,-34px) scale(1.3)}}

@keyframes imp-despierta-cuerpo{0%,6%{transform:translateY(5px) scale(.97)}
  22%{transform:translateY(-15px) scale(1.06)}36%{transform:translateY(1px) scale(1)}
  46%{transform:translateY(-4px) scale(1)}58%,100%{transform:translateY(0) scale(1)}}
@keyframes imp-despierta-parpado{0%,10%{transform:translateY(12px)}
  20%{transform:translateY(-14px)}26%{transform:translateY(8px)}
  32%{transform:translateY(-14px)}38%{transform:translateY(8px)}
  46%,100%{transform:translateY(-14px)}}
@keyframes imp-despierta-estela{0%,8%{transform:rotate(0)}20%{transform:rotate(-13deg)}
  32%{transform:rotate(9deg)}44%{transform:rotate(-5deg)}56%{transform:rotate(2deg)}
  66%,100%{transform:rotate(0)}}
@keyframes imp-despierta-sale{0%,10%{opacity:1}20%,44%{opacity:0}58%,100%{opacity:1}}
@keyframes imp-despierta-entra{0%,10%{opacity:0}20%,44%{opacity:1}58%,100%{opacity:0}}

@keyframes imp-vuelta-estela{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes imp-vuelta-mirada{0%,100%{transform:translate(0,-3.5px)}
  25%{transform:translate(3.5px,0)}50%{transform:translate(0,3.5px)}
  75%{transform:translate(-3.5px,0)}}

@keyframes imp-estira-cuerpo{0%,8%{transform:translateY(2px) scale(.99)}
  28%{transform:translateY(-21px) scale(1.09)}46%{transform:translateY(-17px) scale(1.07)}
  60%{transform:translateY(5px) scale(.98)}74%,100%{transform:translateY(0) scale(1)}}
@keyframes imp-estira-estela{0%,10%{transform:rotate(0)}30%{transform:rotate(-7deg)}
  52%{transform:rotate(6deg)}66%{transform:rotate(-2deg)}78%,100%{transform:rotate(0)}}
@keyframes imp-estira-ojo{0%,16%{opacity:1}24%,52%{opacity:0}62%,100%{opacity:1}}
@keyframes imp-estira-arco{0%,16%{opacity:0}24%,52%{opacity:1}62%,100%{opacity:0}}
@keyframes imp-estira-sale{0%,12%{opacity:1}22%,56%{opacity:0}68%,100%{opacity:1}}
@keyframes imp-estira-entra{0%,12%{opacity:0}22%,56%{opacity:1}68%,100%{opacity:0}}

@keyframes imp-rueda-cuerpo{0%,12%{transform:translateX(0)}
  60%,72%{transform:translateX(52px)}73%,100%{transform:translateX(0)}}
@keyframes imp-rueda-opacidad{0%,52%{opacity:1}64%,72%{opacity:0}86%,100%{opacity:1}}
@keyframes imp-rueda-estela{0%,12%{transform:rotate(0)}60%,100%{transform:rotate(720deg)}}
@keyframes imp-rueda-sale{0%,6%{opacity:1}14%,84%{opacity:0}94%,100%{opacity:1}}
@keyframes imp-rueda-entra{0%,6%{opacity:0}14%,84%{opacity:1}94%,100%{opacity:0}}

@keyframes imp-desliza-cuerpo{0%,100%{transform:translateX(-17px)}50%{transform:translateX(17px)}}
@keyframes imp-desliza-mirada{0%,100%{transform:translateX(-3px)}50%{transform:translateX(4px)}}
@keyframes imp-desliza-estela{0%,100%{transform:rotate(4deg)}50%{transform:rotate(-3deg)}}

@keyframes imp-fiesta-cuerpo{0%,6%{transform:translateY(0)}20%{transform:translateY(-17px)}
  34%{transform:translateY(0)}44%{transform:translateY(-8px)}54%{transform:translateY(0)}
  62%{transform:translateY(-3px)}70%,100%{transform:translateY(0)}}
@keyframes imp-fiesta-estela{0%,6%{transform:rotate(0)}20%{transform:rotate(7deg)}
  40%{transform:rotate(-4deg)}58%,100%{transform:rotate(0)}}

@keyframes imp-gradua-cuerpo{0%,8%{transform:translateY(0)}22%{transform:translateY(-19px)}
  38%{transform:translateY(0)}46%{transform:translateY(-5px)}54%,100%{transform:translateY(0)}}
@keyframes imp-gradua-birrete{0%,8%{transform:translateY(0) rotate(0)}
  22%{transform:translateY(-22px) rotate(-5deg)}
  40%{transform:translateY(-27px) rotate(-9deg)}
  58%{transform:translateY(-16px) rotate(-5deg)}
  72%{transform:translateY(-2px) rotate(1deg)}80%,100%{transform:translateY(0) rotate(0)}}

@keyframes imp-reparte-cuerpo{0%,100%{transform:translateX(-5px)}50%{transform:translateX(11px)}}

/* Arreglo de la tanda 2: la burbuja de «escribiendo» nunca se veia. Su
   regla estaba ANTES del bloque generico de objetos de la tanda 3, que
   apaga todos los objetos con la misma especificidad y gana por orden. */
.impulsito--escribiendo .imp-objeto--puntos{opacity:1;transform:none}

/* la duda dejo de tener variante: desde el 18-09 lleva siempre el «?». La
   regla va aqui, despues del bloque generico de objetos de la tanda 3. */
.impulsito--duda .imp-objeto--signo{opacity:1;transform:none}

/* ============================================================ 51 ESPERANDO */
.impulsito--esperando .imp-e--reposo{opacity:0}
.impulsito--esperando .imp-e--corta{opacity:1}
.impulsito--esperando .imp-objeto--orbita{opacity:1;transform:none}
.impulsito--esperando .obj-punto-orbital{animation:imp-orbita-punto 2.4s linear infinite}
.impulsito--esperando .imp-estela{animation:imp-orbita-estela 2.4s linear infinite}
.impulsito--esperando .imp-mirada{animation:imp-orbita-mirada 2.4s linear infinite}
.impulsito--esperando .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ============================================================= 52 ENVIANDO */
/* gesto unico: se agacha, se dispara y en la demo vuelve (2,4 s) */
.impulsito--enviando .imp-fig{animation:imp-envia-cuerpo 2.4s cubic-bezier(.3,0,.15,1) infinite,
  imp-envia-opacidad 2.4s linear infinite}
.impulsito--enviando .imp-estela{animation:imp-envia-estela 2.4s cubic-bezier(.3,0,.2,1) infinite}
.impulsito--enviando .imp-mirada{animation:imp-envia-mirada 2.4s ease-in-out infinite}
.impulsito--enviando .imp-e--reposo{animation:imp-envia-sale 2.4s ease-in-out infinite}
.impulsito--enviando .imp-e--larga{animation:imp-envia-entra 2.4s ease-in-out infinite}

/* ============================================================ 53 SENALANDO */
.impulsito--senalando .imp-e--reposo{opacity:0}
.impulsito--senalando .imp-e--apunta{opacity:1}
.impulsito--senalando .imp-fig{animation:imp-senala-cuerpo 4.8s ease-in-out infinite}
.impulsito--senalando .imp-mirada{animation:imp-senala-mirada 4.8s ease-in-out infinite}
.impulsito--senalando .imp-estela{animation:imp-senala-estela 1.2s ease-in-out infinite}
.impulsito--senalando .imp-parpado{transform:translateY(-15px)}

/* ========================================================== 54 PRESENTANDO */
.impulsito--presentando .imp-fig{animation:imp-presenta-cuerpo 4.8s ease-in-out infinite}
.impulsito--presentando .imp-mirada{animation:imp-presenta-mirada 4.8s ease-in-out infinite}
.impulsito--presentando .imp-estela{animation:imp-presenta-estela 4.8s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--presentando .imp-e--reposo{animation:imp-presenta-sale 4.8s ease-in-out infinite}
.impulsito--presentando .imp-e--abierta{animation:imp-presenta-entra 4.8s ease-in-out infinite}
.impulsito--presentando .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ============================================================= 55 CONTANDO */
/* gesto unico: tres saltos cortos con un parpadeo en cada uno (2,4 s) */
.impulsito--contando .imp-fig{animation:imp-cuenta-cuerpo 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--contando .imp-estela{animation:imp-cuenta-estela 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--contando .imp-parpado{animation:imp-cuenta-parpado 2.4s ease-in-out infinite}

/* ============================================================ 56 GUARDANDO */
/* gesto unico: primero el guino, despues el salto corto (2,4 s) */
.impulsito--guardando .imp-fig{animation:imp-guarda-cuerpo 2.4s cubic-bezier(.3,0,.2,1) infinite}
.impulsito--guardando .imp-estela{animation:imp-guarda-estela 2.4s cubic-bezier(.3,0,.2,1) infinite}
.impulsito--guardando .imp-ojo--der .imp-parpado{animation:imp-guarda-guino 2.4s ease-in-out infinite}
.impulsito--guardando .imp-e--reposo{animation:imp-guarda-sale 2.4s ease-in-out infinite}
.impulsito--guardando .imp-e--corta{animation:imp-guarda-entra 2.4s ease-in-out infinite}

/* ============================================================ 57 DURMIENDO */
.impulsito--durmiendo .imp-e--reposo{opacity:0}
.impulsito--durmiendo .imp-e--dormida{opacity:1}
.impulsito--durmiendo .imp-parpado{transform:translateY(9.4px)}
.impulsito--durmiendo .imp-fig{animation:imp-duerme-cuerpo 4.8s ease-in-out infinite}
.impulsito--durmiendo .imp-estela{animation:imp-duerme-estela 4.8s ease-in-out infinite}
.impulsito--durmiendo .imp-objeto--zeta{opacity:1;animation:imp-zeta 4.8s ease-out infinite}

/* ========================================================== 58 DESPERTANDO */
/* gesto unico: estiron, parpadeo doble y sacudida de la estela (2,4 s) */
.impulsito--despertando .imp-fig{animation:imp-despierta-cuerpo 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--despertando .imp-estela{animation:imp-despierta-estela 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--despertando .imp-parpado{animation:imp-despierta-parpado 2.4s ease-in-out infinite}
.impulsito--despertando .imp-e--reposo{animation:imp-despierta-sale 2.4s ease-in-out infinite}
.impulsito--despertando .imp-e--erguida{animation:imp-despierta-entra 2.4s ease-in-out infinite}

/* ======================================================== 59 DANDO VUELTAS */
.impulsito--dando-vueltas .imp-e--reposo{opacity:0}
.impulsito--dando-vueltas .imp-e--espiral{opacity:1}
.impulsito--dando-vueltas .imp-estela{animation:imp-vuelta-estela 4.8s linear infinite}
.impulsito--dando-vueltas .imp-mirada{animation:imp-vuelta-mirada 4.8s linear infinite}
.impulsito--dando-vueltas .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}
.impulsito--dando-vueltas .imp-parpado{transform:translateY(-16px)}

/* ========================================================== 60 ESTIRANDOSE */
/* gesto unico: se alarga hacia arriba y suelta (4,8 s) */
.impulsito--estirandose .imp-fig{animation:imp-estira-cuerpo 4.8s cubic-bezier(.35,0,.25,1) infinite}
.impulsito--estirandose .imp-estela{animation:imp-estira-estela 4.8s cubic-bezier(.35,0,.25,1) infinite}
.impulsito--estirandose .imp-ojo-globo,
.impulsito--estirandose .imp-ojo-brillo{animation:imp-estira-ojo 4.8s ease-in-out infinite}
.impulsito--estirandose .imp-ojo-arco{animation:imp-estira-arco 4.8s ease-in-out infinite}
.impulsito--estirandose .imp-e--reposo{animation:imp-estira-sale 4.8s ease-in-out infinite}
.impulsito--estirandose .imp-e--erguida{animation:imp-estira-entra 4.8s ease-in-out infinite}

/* ============================================================== 61 RODANDO */
/* gesto unico: se hace bola, rueda a la derecha y en la demo vuelve (4,8 s) */
.impulsito--rodando .imp-fig{animation:imp-rueda-cuerpo 4.8s cubic-bezier(.35,0,.3,1) infinite,
  imp-rueda-opacidad 4.8s linear infinite}
.impulsito--rodando .imp-estela{animation:imp-rueda-estela 4.8s cubic-bezier(.35,0,.3,1) infinite}
.impulsito--rodando .imp-e--reposo{animation:imp-rueda-sale 4.8s ease-in-out infinite}
.impulsito--rodando .imp-e--enroscada{animation:imp-rueda-entra 4.8s ease-in-out infinite}
.impulsito--rodando .imp-mirada{transform:translateX(4px)}

/* ========================================================= 62 DESLIZANDOSE */
.impulsito--deslizandose .imp-e--reposo{opacity:0}
.impulsito--deslizandose .imp-e--horizontal{opacity:1}
.impulsito--deslizandose .imp-fig{animation:imp-desliza-cuerpo 4.8s ease-in-out infinite}
.impulsito--deslizandose .imp-mirada{animation:imp-desliza-mirada 4.8s ease-in-out infinite}
.impulsito--deslizandose .imp-estela{animation:imp-desliza-estela 4.8s ease-in-out infinite}
.impulsito--deslizandose .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* =============================================================== 63 FIESTA */
/* el punto verde de la punta del gorro es la unica excepcion de color */
.impulsito--fiesta .imp-objeto--gorro{opacity:1;transform:none}
.impulsito--fiesta .imp-fig{animation:imp-fiesta-cuerpo 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--fiesta .imp-estela{animation:imp-fiesta-estela 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--fiesta .imp-ojo-globo,
.impulsito--fiesta .imp-ojo-brillo{opacity:0}
.impulsito--fiesta .imp-ojo-arco{opacity:1}

/* ============================================================= 64 GRADUADO */
/* gesto unico: salta y el birrete se queda un instante arriba (2,4 s) */
.impulsito--graduado .imp-objeto--birrete{opacity:1;
  animation:imp-gradua-birrete 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--graduado .imp-fig{animation:imp-gradua-cuerpo 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--graduado .imp-estela{animation:imp-fiesta-estela 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--graduado .imp-ojo-globo,
.impulsito--graduado .imp-ojo-brillo{opacity:0}
.impulsito--graduado .imp-ojo-arco{opacity:1}

/* =========================================================== 65 REPARTIDOR */
.impulsito--repartidor .imp-e--reposo{opacity:0}
.impulsito--repartidor .imp-e--larga{opacity:1}
.impulsito--repartidor .imp-objeto--gorra{opacity:1;transform:none}
.impulsito--repartidor .imp-fig{animation:imp-reparte-cuerpo 2.4s ease-in-out infinite}
.impulsito--repartidor .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}
.impulsito--repartidor .imp-mirada{transform:translateX(2px)}

/* --------------------------------------------------------------------------
   Morfeo real de `d` para la tanda 5 (Chrome y Edge): se apagan las seis
   estelas nuevas y la de reposo cambia su propia forma.
   -------------------------------------------------------------------------- */
@supports (d: path("M0 0Z")){
  .impulsito .imp-e--apunta,
  .impulsito .imp-e--abierta,
  .impulsito .imp-e--dormida,
  .impulsito .imp-e--espiral,
  .impulsito .imp-e--enroscada,
  .impulsito .imp-e--horizontal{opacity:0!important;animation:none!important}

  @keyframes imp-d-envia{0%,14%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}22%,46%{d:path("M76.8 103.18C45.62 95.98 6.07 128.2 -5.12 134.41C4.39 129.13 48.34 99.86 52.24 68.1A32 32 0 1 1 76.8 103.18Z")}60%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}
  @keyframes imp-d-presenta{0%,8%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}18%,84%{d:path("M112.25 56.98C127.28 85.23 116.78 115.63 141.04 110.47C120.42 114.86 112.48 107.17 80.66 103.82A32 32 0 1 1 112.25 56.98Z")}94%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}
  @keyframes imp-d-guarda{0%,22%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}30%,52%{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}64%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}
  @keyframes imp-d-despierta{0%,10%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}20%,44%{d:path("M97.02 101.23C67.78 114.25 53.6 125.88 55.83 141.72C53.94 128.26 66.32 113.66 54.33 83.99A32 32 0 1 1 97.02 101.23Z")}58%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}
  @keyframes imp-d-estira{0%,12%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}22%,56%{d:path("M97.02 101.23C67.78 114.25 53.6 125.88 55.83 141.72C53.94 128.26 66.32 113.66 54.33 83.99A32 32 0 1 1 97.02 101.23Z")}68%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}
  @keyframes imp-d-rueda{0%,6%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}14%,84%{d:path("M84 104C52 104 8.76 120.93 43.22 85.25C13.93 115.58 39.3 64.92 65.19 46.11A32 32 0 1 1 84 104Z")}94%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}

  .impulsito--esperando      .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--senalando      .imp-e--reposo{d:path("M112.25 56.98C127.28 85.23 135.23 84.77 150.76 88.64C137.56 85.35 128.42 80.64 101.89 98.53A32 32 0 1 1 112.25 56.98Z")}
  .impulsito--durmiendo      .imp-e--reposo{d:path("M100 99.71C72.29 115.71 88.16 124.59 61.22 128.37C84.12 125.16 62.06 111.58 53.24 80.82A32 32 0 1 1 100 99.71Z")}
  .impulsito--dando-vueltas  .imp-e--reposo{d:path("M76.26 103.05C45.21 95.31 -4.42 156.04 21.58 111C-0.52 149.28 46.05 96.65 52.7 65.35A32 32 0 1 1 76.26 103.05Z")}
  .impulsito--deslizandose   .imp-e--reposo{d:path("M63.43 96.51C38.92 75.94 18.59 78.42 1 77.8C15.95 78.33 38.81 74.37 60.22 50.59A32 32 0 1 1 63.43 96.51Z")}
  .impulsito--repartidor     .imp-e--reposo{d:path("M76.8 103.18C45.62 95.98 6.07 128.2 -5.12 134.41C4.39 129.13 48.34 99.86 52.24 68.1A32 32 0 1 1 76.8 103.18Z")}
  .impulsito--enviando       .imp-e--reposo{animation:imp-d-envia 2.4s ease-in-out infinite!important}
  .impulsito--presentando    .imp-e--reposo{animation:imp-d-presenta 4.8s ease-in-out infinite!important}
  .impulsito--guardando      .imp-e--reposo{animation:imp-d-guarda 2.4s ease-in-out infinite!important}
  .impulsito--despertando    .imp-e--reposo{animation:imp-d-despierta 2.4s ease-in-out infinite!important}
  .impulsito--estirandose    .imp-e--reposo{animation:imp-d-estira 4.8s ease-in-out infinite!important}
  .impulsito--rodando        .imp-e--reposo{animation:imp-d-rueda 4.8s ease-in-out infinite!important}
}

/* Ultimo de todo: con `prefers-reduced-motion` no se mueve nada de la tanda 5
   y el muneco nunca desaparece de la pantalla. */
@media (prefers-reduced-motion: reduce){
  .impulsito.impulsito .obj-punto-orbital,
  .impulsito.impulsito .imp-objeto--zeta,
  .impulsito.impulsito .imp-objeto--birrete,
  .impulsito.impulsito .imp-e--reposo{animation:none!important;transform:none!important;
    transition:none!important}
  .impulsito.impulsito--durmiendo .imp-objeto--zeta{opacity:1!important}
  .impulsito.impulsito .imp-fig{opacity:1!important}
}

/* ==========================================================================
   TANDA 6 - contexto: hora, clima, lugar, salud, caracter y actividades
   (24 estados, del 66 al 89). Una estela nueva -«pelo», la que sale hacia
   arriba y se lee como su peinado-, una forma de ojo nueva -la espiral de
   «loco»- y veintidos objetos. Los ciclos siguen siendo divisores de 4,8 s.
   Los objetos negros se dibujan en negro; sobre fondo oscuro se les pone
   `.impulsito--sobre-oscuro` al contenedor y pasan a blanco. Ningun color
   nuevo: negro, blanco, gris y el verde de Impulsito.
   ========================================================================== */
.impulsito .imp-ojo-espiral{opacity:0;transition:opacity 360ms ease;transform-box:view-box}
.impulsito .imp-ojo--izq .imp-ojo-espiral{transform-origin:71.2px 65.6px}
.impulsito .imp-ojo--der .imp-ojo-espiral{transform-origin:96.8px 65.6px}

.impulsito .obj-gota,
.impulsito .obj-onda,
.impulsito .obj-raya,
.impulsito .obj-igual{transform-box:view-box;transform-origin:center}
.impulsito .obj-gota,
.impulsito .obj-igual{opacity:0}
.impulsito .obj-lapiz-tr{transform-box:view-box;transform-origin:128px 122px}
.impulsito .imp-objeto--termometro{transform-box:view-box;transform-origin:132px 104px}
.impulsito .imp-objeto--sombrilla{transform-box:view-box;transform-origin:122px 136px}
.impulsito .imp-objeto--luna,
.impulsito .imp-objeto--sol,
.impulsito .imp-objeto--corazon,
.impulsito .imp-objeto--panuelo,
.impulsito .imp-objeto--telefono,
.impulsito .imp-objeto--cubiertos{transform-box:view-box;transform-origin:84px 72px}

/* sobre fondo oscuro los objetos negros pasan a blanco y sus detalles
   blancos, a oscuro. El cuerpo, la estela y los ojos no cambian. */
.impulsito{--imp-tinta:#111827;--imp-papel:#ffffff}
.impulsito--sobre-oscuro{--imp-tinta:#ffffff;--imp-papel:#111827}
.impulsito .imp-objeto [fill="#111827"]{fill:var(--imp-tinta)}
.impulsito .imp-objeto [stroke="#111827"]{stroke:var(--imp-tinta)}
.impulsito .imp-objeto [fill="#ffffff"]{fill:var(--imp-papel)}
.impulsito .imp-objeto [stroke="#ffffff"]{stroke:var(--imp-papel)}

/* -------------------------------------------------------------- keyframes */
@keyframes imp-noche-cuerpo{0%,100%{transform:translateY(3px)}50%{transform:translateY(-1px)}}
@keyframes imp-noche-parpado{0%,32%{transform:translateY(0)}
  46%,62%{transform:translateY(9.4px)}76%,100%{transform:translateY(0)}}
@keyframes imp-noche-luna{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}

@keyframes imp-dia-cuerpo{0%,8%{transform:translateY(6px) scale(.97)}
  30%{transform:translateY(-13px) scale(1.05)}46%{transform:translateY(-9px) scale(1.04)}
  62%{transform:translateY(2px) scale(1)}76%,100%{transform:translateY(0) scale(1)}}
@keyframes imp-dia-parpado{0%,10%{transform:translateY(12px)}32%,100%{transform:translateY(-14px)}}
@keyframes imp-dia-sol{0%,6%{opacity:0;transform:translateY(24px)}
  38%,100%{opacity:1;transform:translateY(0)}}
@keyframes imp-dia-estela{0%,10%{transform:rotate(0)}32%{transform:rotate(-9deg)}
  56%{transform:rotate(4deg)}72%,100%{transform:rotate(0)}}
@keyframes imp-dia-sale{0%,10%{opacity:1}20%,70%{opacity:0}82%,100%{opacity:1}}
@keyframes imp-dia-entra{0%,10%{opacity:0}20%,70%{opacity:1}82%,100%{opacity:0}}

@keyframes imp-calor-cuerpo{0%,100%{transform:translateY(4px)}50%{transform:translateY(6px)}}
@keyframes imp-calor-abanico{0%,100%{transform:rotate(-12deg)}50%{transform:rotate(12deg)}}
@keyframes imp-gota-cae{0%{opacity:0;transform:translateY(-8px) scale(.7)}
  20%{opacity:1;transform:translateY(0) scale(1)}
  70%{opacity:1;transform:translateY(26px) scale(1)}
  100%{opacity:0;transform:translateY(46px) scale(.9)}}

@keyframes imp-soleado-cuerpo{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}

@keyframes imp-lluvia-cuerpo{0%,100%{transform:translateY(5px) scale(.95)}
  50%{transform:translateY(2px) scale(.95)}}

@keyframes imp-frio-cuerpo{0%,100%{transform:translate(-1.5px,2px)}50%{transform:translate(1.5px,2px)}}
@keyframes imp-frio-estela{0%,100%{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}

@keyframes imp-olor-cuerpo{0%,10%{transform:translate(0,0) rotate(0)}
  34%,72%{transform:translate(12px,-2px) rotate(8deg)}92%,100%{transform:translate(0,0) rotate(0)}}
@keyframes imp-olor-onda{0%{opacity:0;transform:translate(7px,5px) scale(.85)}
  22%{opacity:.95;transform:translate(2px,1px) scale(1)}
  74%{opacity:.85;transform:translate(-4px,-7px) scale(1.05)}
  100%{opacity:0;transform:translate(-8px,-11px) scale(1.1)}}
@keyframes imp-olor-parpado{0%,12%{transform:translateY(-14px)}
  28%,80%{transform:translateY(7px)}94%,100%{transform:translateY(-14px)}}

@keyframes imp-enfermo-cuerpo{0%,100%{transform:translateY(5px) rotate(-5deg)}
  50%{transform:translateY(5px) rotate(5deg)}}
@keyframes imp-enfermo-termo{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}

@keyframes imp-estornudo-cuerpo{0%,20%{transform:translate(0,0) scale(1)}
  40%{transform:translate(7px,4px) scale(.93)}
  52%{transform:translate(-10px,-7px) scale(1.05)}
  64%{transform:translate(2px,2px) scale(.99)}78%,100%{transform:translate(0,0) scale(1)}}
@keyframes imp-estornudo-ojo{0%,24%{opacity:1}34%,62%{opacity:0}74%,100%{opacity:1}}
@keyframes imp-estornudo-arco{0%,24%{opacity:0}34%,62%{opacity:1}74%,100%{opacity:0}}
@keyframes imp-estornudo-estela{0%,20%{transform:rotate(0)}40%{transform:rotate(10deg)}
  52%{transform:rotate(-15deg)}66%{transform:rotate(4deg)}80%,100%{transform:rotate(0)}}
@keyframes imp-estornudo-panuelo{0%,14%{opacity:0;transform:translateY(10px)}
  30%,72%{opacity:1;transform:translateY(0)}88%,100%{opacity:0;transform:translateY(8px)}}

@keyframes imp-timido-cuerpo{0%,12%{transform:translate(-34px,4px) rotate(-15deg) scale(.86)}
  40%,62%{transform:translate(-14px,0) rotate(-7deg) scale(.9)}
  88%,100%{transform:translate(-34px,4px) rotate(-15deg) scale(.86)}}
@keyframes imp-timido-mirada{0%,20%{transform:translate(5px,3px)}
  44%,62%{transform:translate(7px,1px)}84%,100%{transform:translate(5px,3px)}}

@keyframes imp-perezoso-cuerpo{0%,100%{transform:translateY(15px) rotate(-90deg)}
  50%{transform:translateY(18px) rotate(-90deg)}}
@keyframes imp-perezoso-estela{0%,100%{transform:rotate(-2deg)}50%{transform:rotate(2deg)}}

@keyframes imp-elegante-estela{0%,100%{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}

@keyframes imp-influencer-cuerpo{0%,14%{transform:translate(-5px,0) rotate(-6deg)}
  42%,64%{transform:translate(-9px,-3px) rotate(6deg)}88%,100%{transform:translate(-5px,0) rotate(-6deg)}}
@keyframes imp-influencer-tel{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

@keyframes imp-disena-mirada{0%,10%{transform:translate(-5px,2px)}
  46%,60%{transform:translate(5px,3px)}92%,100%{transform:translate(-5px,2px)}}
@keyframes imp-disena-estela{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
@keyframes imp-disena-lapiz{0%,100%{transform:translate(0,0) rotate(0)}
  50%{transform:translate(-5px,4px) rotate(-7deg)}}

@keyframes imp-calcula-mirada{0%,6%{transform:translate(4px,2px)}
  26%{transform:translate(7px,4px)}46%{transform:translate(4px,6px)}
  64%{transform:translate(7px,7px)}82%,100%{transform:translate(4px,2px)}}
@keyframes imp-calcula-cuerpo{0%,100%{transform:rotate(2deg)}50%{transform:rotate(-1deg)}}
@keyframes imp-calcula-igual{0%,64%{opacity:0}76%,94%{opacity:1}100%{opacity:0}}

@keyframes imp-besa-cuerpo{0%,14%{transform:translate(0,0) rotate(0)}
  34%,50%{transform:translate(5px,3px) rotate(7deg)}72%,100%{transform:translate(0,0) rotate(0)}}
@keyframes imp-besa-ojo{0%,12%{opacity:1}24%,66%{opacity:0}78%,100%{opacity:1}}
@keyframes imp-besa-arco{0%,12%{opacity:0}24%,66%{opacity:1}78%,100%{opacity:0}}
@keyframes imp-besa-corazon{0%,24%{opacity:0;transform:translate(0,8px) scale(.5)}
  42%{opacity:1;transform:translate(2px,-4px) scale(1)}
  74%{opacity:1;transform:translate(6px,-22px) scale(1.05)}
  94%,100%{opacity:0;transform:translate(9px,-34px) scale(.9)}}

@keyframes imp-come-cuerpo{0%,100%{transform:translateY(0) scale(1)}
  50%{transform:translateY(-2px) scale(1.045)}}
@keyframes imp-come-cubiertos{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}

@keyframes imp-loco-cuerpo{0%,100%{transform:rotate(-8deg)}50%{transform:rotate(8deg)}}
@keyframes imp-loco-ojo{from{transform:rotate(0)}to{transform:rotate(360deg)}}
@keyframes imp-loco-estela{0%,100%{transform:rotate(-17deg)}25%{transform:rotate(6deg)}
  50%{transform:rotate(17deg)}75%{transform:rotate(-6deg)}}

@keyframes imp-playa-cuerpo{0%,100%{transform:translateY(2px) rotate(-3deg)}
  50%{transform:translateY(-2px) rotate(3deg)}}
@keyframes imp-playa-sombrilla{0%,100%{transform:rotate(-1.5deg)}50%{transform:rotate(1.5deg)}}

@keyframes imp-montana-cuerpo{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes imp-montana-mirada{0%,20%{transform:translate(0,-4px)}
  50%,70%{transform:translate(3px,-5px)}96%,100%{transform:translate(0,-4px)}}

@keyframes imp-corre-cuerpo{0%,100%{transform:rotate(11deg) translateY(0)}
  50%{transform:rotate(11deg) translateY(-5px)}}
@keyframes imp-corre-estela{0%,100%{transform:rotate(-4deg)}50%{transform:rotate(3deg)}}
@keyframes imp-corre-raya{0%{opacity:0;transform:translateX(18px)}
  25%{opacity:1;transform:translateX(8px)}
  70%{opacity:.85;transform:translateX(-10px)}100%{opacity:0;transform:translateX(-22px)}}

@keyframes imp-nada-cuerpo{0%,100%{transform:translate(-10px,3px) rotate(-6deg)}
  50%{transform:translate(10px,-3px) rotate(6deg)}}
@keyframes imp-nada-estela{0%,100%{transform:rotate(5deg)}50%{transform:rotate(-5deg)}}

@keyframes imp-deporte-cuerpo{0%,100%{transform:translateY(0)}
  38%{transform:translateY(-15px)}72%{transform:translateY(0)}}
@keyframes imp-deporte-estela{0%,100%{transform:rotate(0)}38%{transform:rotate(-9deg)}
  72%{transform:rotate(3deg)}}

@keyframes imp-tel-mirada{0%,46%{transform:translate(6px,3px)}
  60%,88%{transform:translate(0,0)}98%,100%{transform:translate(6px,3px)}}
@keyframes imp-tel-cuerpo{0%,12%{transform:translate(0,0)}
  26%{transform:translate(7px,1px)}34%{transform:translate(5px,0)}
  42%{transform:translate(7px,1px)}56%,100%{transform:translate(0,0)}}
@keyframes imp-tel-estela{0%,14%{transform:rotate(0)}26%{transform:rotate(-8deg)}
  38%{transform:rotate(-2deg)}48%{transform:rotate(-6deg)}60%,100%{transform:rotate(0)}}
@keyframes imp-tel-toque{0%,22%{transform:scale(1)}28%{transform:scale(.97)}38%,100%{transform:scale(1)}}

/* ======================================================= 66 BUENAS NOCHES */
/* el fondo oscuro lo pone la tarjeta; aqui no hay ningun color nuevo */
.impulsito--buenas-noches .imp-e--reposo{opacity:0}
.impulsito--buenas-noches .imp-e--dormida{opacity:1}
.impulsito--buenas-noches .imp-objeto--gorro-dormir,
.impulsito--buenas-noches .imp-objeto--luna{opacity:1;transform:none}
.impulsito--buenas-noches .imp-fig{animation:imp-noche-cuerpo 4.8s ease-in-out infinite}
.impulsito--buenas-noches .imp-estela{animation:imp-duerme-estela 4.8s ease-in-out infinite}
.impulsito--buenas-noches .imp-parpado{animation:imp-noche-parpado 4.8s ease-in-out infinite}
.impulsito--buenas-noches .imp-objeto--luna{animation:imp-noche-luna 4.8s ease-in-out infinite}

/* ========================================================= 67 BUENOS DIAS */
/* gesto unico: el estiron de la manana y el sol que sale por detras (2,4 s) */
.impulsito--buenos-dias .imp-objeto--sol{opacity:1;
  animation:imp-dia-sol 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--buenos-dias .imp-fig{animation:imp-dia-cuerpo 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--buenos-dias .imp-estela{animation:imp-dia-estela 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--buenos-dias .imp-parpado{animation:imp-dia-parpado 2.4s ease-in-out infinite}
.impulsito--buenos-dias .imp-e--reposo{animation:imp-dia-sale 2.4s ease-in-out infinite}
.impulsito--buenos-dias .imp-e--erguida{animation:imp-dia-entra 2.4s ease-in-out infinite}

/* ================================================================ 68 CALOR */
.impulsito--calor .imp-e--reposo{opacity:0}
.impulsito--calor .imp-e--caida{opacity:1}
.impulsito--calor .imp-objeto--sudor{opacity:1;transform:none}
.impulsito--calor .imp-fig{animation:imp-calor-cuerpo 4.8s ease-in-out infinite}
.impulsito--calor .imp-estela{animation:imp-calor-abanico 1.2s ease-in-out infinite}
.impulsito--calor .imp-parpado{transform:translateY(0)}
.impulsito--calor .obj-gota{animation:imp-gota-cae 2.4s ease-in infinite}
.impulsito--calor .obj-gota--2{--retraso:1200ms;animation-delay:var(--retraso)}

/* ============================================================== 69 SOLEADO */
.impulsito--soleado .imp-objeto--lentes-sol,
.impulsito--soleado .imp-objeto--sol{opacity:1;transform:none}
.impulsito--soleado .imp-fig{animation:imp-soleado-cuerpo 2.4s ease-in-out infinite}
.impulsito--soleado .imp-estela{animation:imp-contento-estela 1.2s ease-in-out infinite}

/* ============================================================= 70 LLUVIOSO */
.impulsito--lluvioso .imp-e--reposo{opacity:0}
.impulsito--lluvioso .imp-e--corta{opacity:1}
.impulsito--lluvioso .imp-objeto--paraguas,
.impulsito--lluvioso .imp-objeto--gotas{opacity:1;transform:none}
.impulsito--lluvioso .imp-fig{animation:imp-lluvia-cuerpo 4.8s ease-in-out infinite}
.impulsito--lluvioso .imp-estela{animation:imp-frio-estela 2.4s ease-in-out infinite}
.impulsito--lluvioso .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}
.impulsito--lluvioso .obj-gota{animation:imp-gota-cae 1.6s linear infinite}
.impulsito--lluvioso .obj-gota--2{--retraso:550ms;animation-delay:var(--retraso)}
.impulsito--lluvioso .obj-gota--3{--retraso:1100ms;animation-delay:var(--retraso)}

/* ================================================================= 71 FRIO */
.impulsito--frio .imp-e--reposo{opacity:0}
.impulsito--frio .imp-e--enroscada{opacity:1}
.impulsito--frio .imp-objeto--bufanda{opacity:1;transform:none}
.impulsito--frio .imp-fig{animation:imp-frio-cuerpo .4s ease-in-out infinite}
.impulsito--frio .imp-estela{animation:imp-frio-estela 1.2s ease-in-out infinite}
.impulsito--frio .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ============================================================= 72 MAL OLOR */
.impulsito--mal-olor .imp-e--reposo{opacity:0}
.impulsito--mal-olor .imp-e--escondida{opacity:1}
.impulsito--mal-olor .imp-objeto--olor{opacity:1;transform:none}
.impulsito--mal-olor .imp-fig{animation:imp-olor-cuerpo 4.8s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--mal-olor .imp-parpado{animation:imp-olor-parpado 4.8s ease-in-out infinite}
.impulsito--mal-olor .obj-onda{animation:imp-olor-onda 2.4s ease-out infinite}
.impulsito--mal-olor .obj-onda--2{--retraso:600ms;animation-delay:var(--retraso)}
.impulsito--mal-olor .obj-onda--3{--retraso:1200ms;animation-delay:var(--retraso)}

/* ============================================================== 73 ENFERMO */
.impulsito--enfermo .imp-e--reposo{opacity:0}
.impulsito--enfermo .imp-e--caida{opacity:1}
.impulsito--enfermo .imp-objeto--termometro{opacity:1;
  animation:imp-enfermo-termo 4.8s ease-in-out infinite}
.impulsito--enfermo .imp-fig{animation:imp-enfermo-cuerpo 4.8s ease-in-out infinite}
.impulsito--enfermo .imp-parpado{transform:translateY(-1px)}
.impulsito--enfermo .imp-mirada{transform:translateY(2px)}

/* ========================================================= 74 CONGESTIONADO */
/* gesto unico: se encoge, estornuda hacia atras y vuelve (2,4 s) */
.impulsito--congestionado .imp-e--reposo{opacity:0}
.impulsito--congestionado .imp-e--corta{opacity:1}
.impulsito--congestionado .imp-objeto--panuelo{opacity:1;
  animation:imp-estornudo-panuelo 2.4s ease-in-out infinite}
.impulsito--congestionado .imp-fig{animation:imp-estornudo-cuerpo 2.4s cubic-bezier(.3,0,.2,1) infinite}
.impulsito--congestionado .imp-estela{animation:imp-estornudo-estela 2.4s cubic-bezier(.3,0,.2,1) infinite}
.impulsito--congestionado .imp-ojo-globo,
.impulsito--congestionado .imp-ojo-brillo{animation:imp-estornudo-ojo 2.4s ease-in-out infinite}
.impulsito--congestionado .imp-ojo-arco{animation:imp-estornudo-arco 2.4s ease-in-out infinite}

/* =============================================================== 75 TIMIDO */
.impulsito--timido .imp-e--reposo{opacity:0}
.impulsito--timido .imp-e--escondida{opacity:1}
.impulsito--timido .imp-fig{animation:imp-timido-cuerpo 4.8s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--timido .imp-mirada{animation:imp-timido-mirada 4.8s ease-in-out infinite}
.impulsito--timido .imp-parpado{transform:translateY(-7px)}

/* ============================================================= 76 PEREZOSO */
/* tumbado: la figura entera gira 90 grados y la estela cuelga hacia abajo */
.impulsito--perezoso .imp-e--reposo{opacity:0}
.impulsito--perezoso .imp-e--pelo{opacity:1}
.impulsito--perezoso .imp-fig{animation:imp-perezoso-cuerpo 4.8s ease-in-out infinite}
.impulsito--perezoso .imp-estela{animation:imp-perezoso-estela 4.8s ease-in-out infinite}
.impulsito--perezoso .imp-parpado{transform:translateY(-9px)}

/* ============================================================= 77 ELEGANTE */
.impulsito--elegante .imp-e--reposo{opacity:0}
.impulsito--elegante .imp-e--pelo{opacity:1}
.impulsito--elegante .imp-objeto--pajarita{opacity:1;transform:none}
.impulsito--elegante .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}
.impulsito--elegante .imp-estela{animation:imp-elegante-estela 4.8s ease-in-out infinite}
.impulsito--elegante .imp-ojo-globo,
.impulsito--elegante .imp-ojo-brillo{opacity:0}
.impulsito--elegante .imp-ojo-arco{opacity:1}

/* =========================================================== 78 INFLUENCER */
.impulsito--influencer .imp-e--reposo{opacity:0}
.impulsito--influencer .imp-e--pelo{opacity:1}
.impulsito--influencer .imp-objeto--lentes-sol{opacity:1;transform:none}
.impulsito--influencer .imp-objeto--telefono{opacity:1;
  animation:imp-influencer-tel 4.8s ease-in-out infinite}
.impulsito--influencer .imp-fig{animation:imp-influencer-cuerpo 4.8s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--influencer .imp-estela{animation:imp-elegante-estela 4.8s ease-in-out infinite}

/* ============================================================ 79 DISENANDO */
.impulsito--disenando .imp-objeto--regla{opacity:1;transform:none}
.impulsito--disenando .imp-mirada{animation:imp-disena-mirada 4.8s ease-in-out infinite}
.impulsito--disenando .imp-estela{animation:imp-disena-estela 1.2s ease-in-out infinite}
.impulsito--disenando .obj-lapiz-tr{animation:imp-disena-lapiz 1.2s ease-in-out infinite}
.impulsito--disenando .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* =========================================================== 80 CALCULANDO */
.impulsito--calculando .imp-objeto--calculadora{opacity:1;transform:none}
.impulsito--calculando .imp-fig{animation:imp-calcula-cuerpo 4.8s ease-in-out infinite}
.impulsito--calculando .imp-mirada{animation:imp-calcula-mirada 4.8s ease-in-out infinite}
.impulsito--calculando .obj-igual{animation:imp-calcula-igual 4.8s ease-in-out infinite}
.impulsito--calculando .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ============================================================== 81 BESANDO */
/* gesto unico: se inclina, cierra los ojos y sube un corazon (2,4 s) */
.impulsito--besando .imp-e--reposo{opacity:0}
.impulsito--besando .imp-e--corta{opacity:1}
.impulsito--besando .imp-objeto--corazon{opacity:1;
  animation:imp-besa-corazon 2.4s cubic-bezier(.3,0,.3,1) infinite}
.impulsito--besando .imp-fig{animation:imp-besa-cuerpo 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--besando .imp-ojo-globo,
.impulsito--besando .imp-ojo-brillo{animation:imp-besa-ojo 2.4s ease-in-out infinite}
.impulsito--besando .imp-ojo-arco{animation:imp-besa-arco 2.4s ease-in-out infinite}

/* ============================================================= 82 COMIENDO */
.impulsito--comiendo .imp-objeto--cubiertos{opacity:1;
  animation:imp-come-cubiertos 2.4s ease-in-out infinite}
.impulsito--comiendo .imp-fig{animation:imp-come-cuerpo 2.4s ease-in-out infinite}
.impulsito--comiendo .imp-estela{animation:imp-ondear 2.4s ease-in-out infinite}
.impulsito--comiendo .imp-mirada{transform:translate(3px,4px)}
.impulsito--comiendo .imp-ojo-globo,
.impulsito--comiendo .imp-ojo-brillo{opacity:0}
.impulsito--comiendo .imp-ojo-arco{opacity:1}

/* ================================================================= 83 LOCO */
.impulsito--loco .imp-e--reposo{opacity:0}
.impulsito--loco .imp-e--rizo{opacity:1}
.impulsito--loco .imp-ojo-globo,
.impulsito--loco .imp-ojo-brillo{opacity:0}
.impulsito--loco .imp-ojo-espiral{opacity:1;animation:imp-loco-ojo 4.8s linear infinite}
.impulsito--loco .imp-fig{animation:imp-loco-cuerpo 1.6s ease-in-out infinite}
.impulsito--loco .imp-estela{animation:imp-loco-estela 1.6s ease-in-out infinite}
.impulsito--loco .imp-parpado{transform:translateY(-16px)}

/* ========================================================== 84 EN LA PLAYA */
.impulsito--en-la-playa .imp-e--reposo{opacity:0}
.impulsito--en-la-playa .imp-e--horizontal{opacity:1}
.impulsito--en-la-playa .imp-objeto--lentes-sol{opacity:1;transform:none}
.impulsito--en-la-playa .imp-objeto--sombrilla{opacity:1;
  animation:imp-playa-sombrilla 4.8s ease-in-out infinite}
.impulsito--en-la-playa .imp-fig{animation:imp-playa-cuerpo 4.8s ease-in-out infinite}
.impulsito--en-la-playa .imp-estela{animation:imp-elegante-estela 4.8s ease-in-out infinite}

/* ======================================================= 85 EN LA MONTANA */
.impulsito--en-la-montana .imp-e--reposo{opacity:0}
.impulsito--en-la-montana .imp-e--erguida{opacity:1}
.impulsito--en-la-montana .imp-objeto--montana,
.impulsito--en-la-montana .imp-objeto--bufanda{opacity:1;transform:none}
.impulsito--en-la-montana .imp-fig{animation:imp-montana-cuerpo 4.8s ease-in-out infinite}
.impulsito--en-la-montana .imp-mirada{animation:imp-montana-mirada 4.8s ease-in-out infinite}
.impulsito--en-la-montana .imp-estela{animation:imp-elegante-estela 4.8s ease-in-out infinite}
.impulsito--en-la-montana .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ============================================================ 86 CORRIENDO */
.impulsito--corriendo .imp-e--reposo{opacity:0}
.impulsito--corriendo .imp-e--larga{opacity:1}
.impulsito--corriendo .imp-objeto--velocidad{opacity:1;transform:none}
.impulsito--corriendo .imp-fig{animation:imp-corre-cuerpo 1.2s ease-in-out infinite}
.impulsito--corriendo .imp-estela{animation:imp-corre-estela 1.2s ease-in-out infinite}
.impulsito--corriendo .imp-mirada{transform:translateX(4px)}
.impulsito--corriendo .obj-raya{animation:imp-corre-raya 1.2s linear infinite}
.impulsito--corriendo .obj-raya--2{--retraso:400ms;animation-delay:var(--retraso)}
.impulsito--corriendo .obj-raya--3{--retraso:800ms;animation-delay:var(--retraso)}

/* ============================================================== 87 NADANDO */
.impulsito--nadando .imp-e--reposo{opacity:0}
.impulsito--nadando .imp-e--horizontal{opacity:1}
.impulsito--nadando .imp-objeto--gafas-nadar{opacity:1;transform:none}
.impulsito--nadando .imp-objeto--gotas{opacity:1;transform:none}
.impulsito--nadando .imp-fig{animation:imp-nada-cuerpo 2.4s ease-in-out infinite}
.impulsito--nadando .imp-estela{animation:imp-nada-estela 2.4s ease-in-out infinite}
.impulsito--nadando .obj-gota{animation:imp-gota-cae 1.2s ease-in infinite}
.impulsito--nadando .obj-gota--2{--retraso:400ms;animation-delay:var(--retraso)}
.impulsito--nadando .obj-gota--3{--retraso:800ms;animation-delay:var(--retraso)}

/* ===================================================== 88 HACIENDO DEPORTE */
.impulsito--haciendo-deporte .imp-objeto--cinta{opacity:1;transform:none}
.impulsito--haciendo-deporte .imp-objeto--sudor{opacity:1;transform:none}
.impulsito--haciendo-deporte .imp-fig{animation:imp-deporte-cuerpo 1.2s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--haciendo-deporte .imp-estela{animation:imp-deporte-estela 1.2s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--haciendo-deporte .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}
.impulsito--haciendo-deporte .obj-gota{animation:imp-gota-cae 2.4s ease-in infinite}
.impulsito--haciendo-deporte .obj-gota--2{--retraso:1200ms;animation-delay:var(--retraso)}

/* ======================================================= 89 CON EL TELEFONO */
.impulsito--con-el-telefono .imp-objeto--telefono{opacity:1;
  animation:imp-tel-toque 4.8s ease-in-out infinite}
.impulsito--con-el-telefono .imp-mirada{animation:imp-tel-mirada 4.8s ease-in-out infinite}
.impulsito--con-el-telefono .imp-estela{animation:imp-tel-estela 4.8s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--con-el-telefono .imp-fig{animation:imp-tel-cuerpo 4.8s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--con-el-telefono .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* --------------------------------------------------------------------------
   Morfeo real de `d` para la tanda 6 (Chrome y Edge): se apaga la estela
   nueva y la de reposo cambia su propia forma.
   -------------------------------------------------------------------------- */
@supports (d: path("M0 0Z")){
  .impulsito .imp-e--pelo{opacity:0!important;animation:none!important}

  @keyframes imp-d-dia{0%,10%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}20%,70%{d:path("M97.02 101.23C67.78 114.25 53.6 125.88 55.83 141.72C53.94 128.26 66.32 113.66 54.33 83.99A32 32 0 1 1 97.02 101.23Z")}82%,100%{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}}

  .impulsito--buenas-noches   .imp-e--reposo{d:path("M100 99.71C72.29 115.71 88.16 124.59 61.22 128.37C84.12 125.16 62.06 111.58 53.24 80.82A32 32 0 1 1 100 99.71Z")}
  .impulsito--calor           .imp-e--reposo{d:path("M103.7 97.22C78.48 116.92 75.97 129.18 75.97 148.38C75.97 132.06 80.06 117.08 59.49 92.57A32 32 0 1 1 103.7 97.22Z")}
  .impulsito--lluvioso        .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--frio            .imp-e--reposo{d:path("M84 104C52 104 8.76 120.93 43.22 85.25C13.93 115.58 39.3 64.92 65.19 46.11A32 32 0 1 1 84 104Z")}
  .impulsito--mal-olor        .imp-e--reposo{d:path("M107.78 93.41C86.37 117.19 91.87 115.06 75.76 130.62C89.46 117.4 69.27 114.79 55.24 86.03A32 32 0 1 1 107.78 93.41Z")}
  .impulsito--enfermo         .imp-e--reposo{d:path("M103.7 97.22C78.48 116.92 75.97 129.18 75.97 148.38C75.97 132.06 80.06 117.08 59.49 92.57A32 32 0 1 1 103.7 97.22Z")}
  .impulsito--congestionado   .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--timido          .imp-e--reposo{d:path("M107.78 93.41C86.37 117.19 91.87 115.06 75.76 130.62C89.46 117.4 69.27 114.79 55.24 86.03A32 32 0 1 1 107.78 93.41Z")}
  .impulsito--perezoso        .imp-e--reposo{d:path("M64.3 46.78C89.52 27.08 66.71 25.34 86.12 11.24C69.62 23.23 81.63 26.81 105.41 48.22A32 32 0 1 1 64.3 46.78Z")}
  .impulsito--elegante        .imp-e--reposo{d:path("M64.3 46.78C89.52 27.08 66.71 25.34 86.12 11.24C69.62 23.23 81.63 26.81 105.41 48.22A32 32 0 1 1 64.3 46.78Z")}
  .impulsito--influencer      .imp-e--reposo{d:path("M64.3 46.78C89.52 27.08 66.71 25.34 86.12 11.24C69.62 23.23 81.63 26.81 105.41 48.22A32 32 0 1 1 64.3 46.78Z")}
  .impulsito--besando         .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--loco            .imp-e--reposo{d:path("M75.72 102.91C44.81 94.63 36.9 134.54 20.2 101.75C34.4 129.62 41.47 87.48 55 58.48A32 32 0 1 1 75.72 102.91Z")}
  .impulsito--en-la-playa     .imp-e--reposo{d:path("M63.43 96.51C38.92 75.94 18.59 78.42 1 77.8C15.95 78.33 38.81 74.37 60.22 50.59A32 32 0 1 1 63.43 96.51Z")}
  .impulsito--en-la-montana   .imp-e--reposo{d:path("M97.02 101.23C67.78 114.25 53.6 125.88 55.83 141.72C53.94 128.26 66.32 113.66 54.33 83.99A32 32 0 1 1 97.02 101.23Z")}
  .impulsito--corriendo       .imp-e--reposo{d:path("M76.8 103.18C45.62 95.98 6.07 128.2 -5.12 134.41C4.39 129.13 48.34 99.86 52.24 68.1A32 32 0 1 1 76.8 103.18Z")}
  .impulsito--nadando         .imp-e--reposo{d:path("M63.43 96.51C38.92 75.94 18.59 78.42 1 77.8C15.95 78.33 38.81 74.37 60.22 50.59A32 32 0 1 1 63.43 96.51Z")}
  .impulsito--buenos-dias     .imp-e--reposo{animation:imp-d-dia 2.4s ease-in-out infinite!important}
}

/* Con `prefers-reduced-motion` no se mueve nada de la tanda 6: los objetos
   que aparecian y desaparecian se quedan puestos y quietos. */
@media (prefers-reduced-motion: reduce){
  .impulsito.impulsito .obj-gota,
  .impulsito.impulsito .obj-onda,
  .impulsito.impulsito .obj-raya,
  .impulsito.impulsito .obj-igual,
  .impulsito.impulsito .obj-lapiz-tr,
  .impulsito.impulsito .imp-ojo-espiral,
  .impulsito.impulsito .imp-objeto--luna,
  .impulsito.impulsito .imp-objeto--sol,
  .impulsito.impulsito .imp-objeto--corazon,
  .impulsito.impulsito .imp-objeto--panuelo,
  .impulsito.impulsito .imp-objeto--termometro,
  .impulsito.impulsito .imp-objeto--sombrilla,
  .impulsito.impulsito .imp-objeto--telefono,
  .impulsito.impulsito .imp-objeto--cubiertos{animation:none!important;transform:none!important}
  .impulsito.impulsito .obj-gota,
  .impulsito.impulsito .obj-igual{opacity:1!important}
  /* perezoso sigue tumbado: lo suyo no es el movimiento, es la postura */
  .impulsito.impulsito--perezoso .imp-fig{transform:translateY(15px) rotate(-90deg)!important}
}

/* ==========================================================================
   TANDA 7 - una pose por cada categoria del marketplace (11 estados, del 90
   al 100). Ninguna estela nueva y ninguna forma de ojo nueva: solo catorce
   objetos y la actitud. Tres objetos se reutilizan tal cual -los lentes de
   `leyendo`, la taza de `cafe` y los auriculares de `bailando`-, porque un
   objeto dibujado dos veces se separa a la primera correccion.
   Ciclos divisores de 4,8 s. Negro, blanco, gris y el verde de Impulsito.
   ========================================================================== */
.impulsito .imp-objeto--sombrero{transform-box:view-box;transform-origin:84px 46px}
.impulsito .imp-objeto--espejo{transform-box:view-box;transform-origin:130px 84px}
.impulsito .imp-objeto--mancuerna{transform-box:view-box;transform-origin:124px 16px}
.impulsito .imp-objeto--pelota{transform-box:view-box;transform-origin:34px 152px}
.impulsito .imp-objeto--volante{transform-box:view-box;transform-origin:84px 138px}
.impulsito .imp-objeto--clip{transform-box:view-box;transform-origin:33px 124px}
.impulsito .obj-agua{transform-box:view-box;transform-origin:center;opacity:0}
.impulsito .obj-pagina{transform-box:view-box;transform-origin:117px 150px}
.impulsito .obj-cable-forma{transition:opacity 360ms ease}
.impulsito .obj-cable--suelto{opacity:0}

/* -------------------------------------------------------------- keyframes */
@keyframes imp-cat-sombrero{0%,24%{transform:translateY(-7px) rotate(-13deg)}
  44%,76%{transform:translateY(0) rotate(0)}94%,100%{transform:translateY(-4px) rotate(-8deg)}}
@keyframes imp-cat-ropa-cuerpo{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(3deg)}}

@keyframes imp-cat-riega-estela{0%,100%{transform:rotate(-3deg)}50%{transform:rotate(7deg)}}
@keyframes imp-cat-riega-cuerpo{0%,100%{transform:rotate(3deg)}50%{transform:rotate(6deg)}}
@keyframes imp-cat-agua{0%{opacity:0;transform:translateY(-6px) scale(.7)}
  18%{opacity:1;transform:translateY(0) scale(1)}
  70%{opacity:1;transform:translateY(14px) scale(1)}
  100%{opacity:0;transform:translateY(22px) scale(.85)}}

@keyframes imp-cat-espejo{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes imp-cat-belleza-cuerpo{0%,100%{transform:rotate(4deg)}50%{transform:rotate(8deg)}}

@keyframes imp-cat-electro-mirada{0%,22%{transform:translate(-5px,4px)}
  46%,74%{transform:translate(-2px,1px)}96%,100%{transform:translate(-5px,4px)}}
@keyframes imp-cat-electro-estela{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}

@keyframes imp-cat-bota{0%,100%{transform:translateY(0)}45%{transform:translateY(-27px)}}
@keyframes imp-cat-juega-estela{0%,100%{transform:rotate(2deg)}45%{transform:rotate(-12deg)}}
@keyframes imp-cat-juega-mirada{0%,100%{transform:translate(-5px,4px)}
  45%{transform:translate(-4px,-2px)}}

@keyframes imp-cat-pesa{0%,100%{transform:translateY(12px)}45%{transform:translateY(1px)}}
@keyframes imp-cat-pesa-estela{0%,100%{transform:rotate(7deg)}45%{transform:rotate(-5deg)}}
@keyframes imp-cat-pesa-cuerpo{0%,100%{transform:scale(1)}
  45%{transform:scale(1.03) translateY(-2px)}}
@keyframes imp-cat-pesa-ojo{0%,26%{opacity:1}38%,58%{opacity:0}70%,100%{opacity:1}}
@keyframes imp-cat-pesa-arco{0%,26%{opacity:0}38%,58%{opacity:1}70%,100%{opacity:0}}

@keyframes imp-cat-lee-mirada{0%,6%{transform:translate(-4px,4px)}
  22%{transform:translate(4px,4px)}30%,46%{transform:translate(-4px,5px)}
  62%{transform:translate(4px,5px)}78%,100%{transform:translate(-4px,4px)}}
@keyframes imp-cat-pagina{0%,64%{transform:scaleX(1)}82%,88%{transform:scaleX(-1)}
  99%,100%{transform:scaleX(1)}}

@keyframes imp-cat-cola{0%,100%{transform:rotate(-10deg)}50%{transform:rotate(10deg)}}
@keyframes imp-cat-mascota-cuerpo{0%,100%{transform:rotate(-5deg) translateY(0)}
  50%{transform:rotate(-5deg) translateY(-3px)}}
@keyframes imp-cat-mascota-mirada{0%,40%{transform:translate(-6px,2px)}
  54%,74%{transform:translate(0,0)}90%,100%{transform:translate(-6px,2px)}}

@keyframes imp-cat-volante{0%,100%{transform:rotate(-15deg)}50%{transform:rotate(15deg)}}
@keyframes imp-cat-conduce-cuerpo{0%,100%{transform:rotate(3deg)}50%{transform:rotate(-3deg)}}
@keyframes imp-cat-conduce-mirada{0%,100%{transform:translateX(-3px)}
  50%{transform:translateX(3px)}}

@keyframes imp-cat-ordena{0%,12%{transform:rotate(0)}24%{transform:rotate(-11deg)}
  36%{transform:rotate(-3deg)}48%{transform:rotate(-10deg)}62%,100%{transform:rotate(0)}}
@keyframes imp-cat-clip{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}

/* ====================================================== 90 ROPA Y ACCESORIOS */
.impulsito--cat-ropa .imp-e--reposo{opacity:0}
.impulsito--cat-ropa .imp-e--corta{opacity:1}
.impulsito--cat-ropa .imp-objeto--percha{opacity:1;transform:none}
.impulsito--cat-ropa .imp-objeto--sombrero{opacity:1;
  animation:imp-cat-sombrero 4.8s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--cat-ropa .imp-fig{animation:imp-cat-ropa-cuerpo 4.8s ease-in-out infinite}
.impulsito--cat-ropa .imp-estela{animation:imp-contento-estela 2.4s ease-in-out infinite}
.impulsito--cat-ropa .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ========================================================= 91 HOGAR Y JARDIN */
.impulsito--cat-hogar .imp-e--reposo{opacity:0}
.impulsito--cat-hogar .imp-e--abierta{opacity:1}
.impulsito--cat-hogar .imp-objeto--maceta{opacity:1;transform:none}
.impulsito--cat-hogar .imp-fig{animation:imp-cat-riega-cuerpo 4.8s ease-in-out infinite}
.impulsito--cat-hogar .imp-estela{animation:imp-cat-riega-estela 2.4s ease-in-out infinite}
.impulsito--cat-hogar .imp-mirada{transform:translate(5px,2px)}
.impulsito--cat-hogar .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}
.impulsito--cat-hogar .obj-agua{animation:imp-cat-agua 2.4s ease-in infinite}
.impulsito--cat-hogar .obj-agua--2{--retraso:1200ms;animation-delay:var(--retraso)}

/* ========================================================= 92 BELLEZA Y SALUD */
.impulsito--cat-belleza .imp-e--reposo{opacity:0}
.impulsito--cat-belleza .imp-e--erguida{opacity:1}
.impulsito--cat-belleza .imp-objeto--espejo{opacity:1;
  animation:imp-cat-espejo 4.8s ease-in-out infinite}
.impulsito--cat-belleza .imp-fig{animation:imp-cat-belleza-cuerpo 4.8s ease-in-out infinite}
.impulsito--cat-belleza .imp-estela{animation:imp-elegante-estela 4.8s ease-in-out infinite}
.impulsito--cat-belleza .imp-mirada{transform:translate(5px,0)}
.impulsito--cat-belleza .imp-ojo--der .imp-parpado{animation:imp-guino 4.8s ease-in-out infinite}

/* ============================================================= 93 ELECTRONICA */
.impulsito--cat-electronica .imp-e--reposo{opacity:0}
.impulsito--cat-electronica .imp-e--rizo{opacity:1}
.impulsito--cat-electronica .imp-objeto--auriculares,
.impulsito--cat-electronica .imp-objeto--cable{opacity:1;transform:none}
.impulsito--cat-electronica .obj-cable--enredado{animation:imp-sale 4.8s ease-in-out infinite}
.impulsito--cat-electronica .obj-cable--suelto{animation:imp-entra 4.8s ease-in-out infinite}
.impulsito--cat-electronica .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}
.impulsito--cat-electronica .imp-estela{animation:imp-cat-electro-estela 2.4s ease-in-out infinite}
.impulsito--cat-electronica .imp-mirada{animation:imp-cat-electro-mirada 4.8s ease-in-out infinite}
.impulsito--cat-electronica .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ==================================================== 94 ALIMENTOS Y BEBIDAS */
.impulsito--cat-alimentos .imp-e--reposo{opacity:0}
.impulsito--cat-alimentos .imp-e--corta{opacity:1}
.impulsito--cat-alimentos .imp-objeto--taza,
.impulsito--cat-alimentos .imp-objeto--pupusa{opacity:1;transform:none}
.impulsito--cat-alimentos .obj-vaho path{animation:imp-vaho 2.6s ease-out infinite}
.impulsito--cat-alimentos .imp-objeto--pupusa .obj-vaho path{--retraso:900ms;
  animation-delay:var(--retraso)}
.impulsito--cat-alimentos .imp-fig{animation:imp-come-cuerpo 2.4s ease-in-out infinite}
.impulsito--cat-alimentos .imp-estela{animation:imp-ondear 2.4s ease-in-out infinite}
.impulsito--cat-alimentos .imp-mirada{transform:translate(-4px,4px)}
.impulsito--cat-alimentos .imp-ojo-globo,
.impulsito--cat-alimentos .imp-ojo-brillo{opacity:0}
.impulsito--cat-alimentos .imp-ojo-arco{opacity:1}

/* ====================================================== 95 JUGUETES Y NINOS */
.impulsito--cat-juguetes .imp-objeto--pelota{opacity:1;
  animation:imp-cat-bota 1.2s cubic-bezier(.35,0,.35,1) infinite}
.impulsito--cat-juguetes .imp-fig{animation:imp-flotar 2.4s ease-in-out infinite}
.impulsito--cat-juguetes .imp-estela{animation:imp-cat-juega-estela 1.2s cubic-bezier(.35,0,.35,1) infinite}
.impulsito--cat-juguetes .imp-mirada{animation:imp-cat-juega-mirada 1.2s cubic-bezier(.35,0,.35,1) infinite}
.impulsito--cat-juguetes .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ===================================================== 96 DEPORTES Y FITNESS */
.impulsito--cat-deportes .imp-e--reposo{opacity:0}
.impulsito--cat-deportes .imp-e--senal{opacity:1}
.impulsito--cat-deportes .imp-objeto--mancuerna{opacity:1;
  animation:imp-cat-pesa 2.4s cubic-bezier(.35,0,.35,1) infinite}
.impulsito--cat-deportes .imp-fig{animation:imp-cat-pesa-cuerpo 2.4s cubic-bezier(.35,0,.35,1) infinite}
.impulsito--cat-deportes .imp-estela{animation:imp-cat-pesa-estela 2.4s cubic-bezier(.35,0,.35,1) infinite}
.impulsito--cat-deportes .imp-ojo-globo,
.impulsito--cat-deportes .imp-ojo-brillo{animation:imp-cat-pesa-ojo 2.4s ease-in-out infinite}
.impulsito--cat-deportes .imp-ojo-arco{animation:imp-cat-pesa-arco 2.4s ease-in-out infinite}

/* ===================================================== 97 LIBROS Y PAPELERIA */
.impulsito--cat-libros .imp-e--reposo{opacity:0}
.impulsito--cat-libros .imp-e--corta{opacity:1}
.impulsito--cat-libros .imp-objeto--lentes,
.impulsito--cat-libros .imp-objeto--libro{opacity:1;transform:none}
.impulsito--cat-libros .obj-pagina{animation:imp-cat-pagina 4.8s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--cat-libros .imp-mirada{animation:imp-cat-lee-mirada 4.8s cubic-bezier(.5,0,.5,1) infinite}
.impulsito--cat-libros .imp-estela{animation:imp-ondear 4.8s ease-in-out infinite}
.impulsito--cat-libros .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ================================================================ 98 MASCOTAS */
.impulsito--cat-mascotas .imp-objeto--hueso,
.impulsito--cat-mascotas .imp-objeto--huella{opacity:1;transform:none}
.impulsito--cat-mascotas .imp-fig{animation:imp-cat-mascota-cuerpo 2.4s ease-in-out infinite}
.impulsito--cat-mascotas .imp-estela{animation:imp-cat-cola 1.2s ease-in-out infinite}
.impulsito--cat-mascotas .imp-mirada{animation:imp-cat-mascota-mirada 4.8s ease-in-out infinite}
.impulsito--cat-mascotas .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ================================================= 99 VEHICULOS Y ACCESORIOS */
.impulsito--cat-vehiculos .imp-e--reposo{opacity:0}
.impulsito--cat-vehiculos .imp-e--corta{opacity:1}
.impulsito--cat-vehiculos .imp-objeto--volante{opacity:1;
  animation:imp-cat-volante 2.4s ease-in-out infinite}
.impulsito--cat-vehiculos .imp-fig{animation:imp-cat-conduce-cuerpo 2.4s ease-in-out infinite}
.impulsito--cat-vehiculos .imp-estela{animation:imp-ondear 2.4s ease-in-out infinite}
.impulsito--cat-vehiculos .imp-mirada{animation:imp-cat-conduce-mirada 2.4s ease-in-out infinite}
.impulsito--cat-vehiculos .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* =================================================== 100 INDUSTRIA Y OFICINA */
.impulsito--cat-oficina .imp-objeto--carpeta{opacity:1;transform:none}
.impulsito--cat-oficina .imp-objeto--clip{opacity:1;
  animation:imp-cat-clip 2.4s ease-in-out infinite}
.impulsito--cat-oficina .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}
.impulsito--cat-oficina .imp-estela{animation:imp-cat-ordena 2.4s cubic-bezier(.35,0,.3,1) infinite}
.impulsito--cat-oficina .imp-mirada{transform:translate(-4px,4px)}
.impulsito--cat-oficina .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* --------------------------------------------------------------------------
   Morfeo real de `d` para la tanda 7 (Chrome y Edge): ninguna estela nueva,
   asi que aqui solo se le da a la de reposo la forma que le toca a cada
   categoria. Las tres que van con la estela de reposo -juguetes, mascotas e
   industria- no necesitan regla.
   -------------------------------------------------------------------------- */
@supports (d: path("M0 0Z")){
  .impulsito--cat-ropa        .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--cat-alimentos   .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--cat-libros      .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--cat-vehiculos   .imp-e--reposo{d:path("M80.66 103.82C48.83 100.48 43.82 95.2 29.96 103.2C41.74 96.4 41.75 88.22 54.77 58.98A32 32 0 1 1 80.66 103.82Z")}
  .impulsito--cat-hogar       .imp-e--reposo{d:path("M112.25 56.98C127.28 85.23 116.78 115.63 141.04 110.47C120.42 114.86 112.48 107.17 80.66 103.82A32 32 0 1 1 112.25 56.98Z")}
  .impulsito--cat-belleza     .imp-e--reposo{d:path("M97.02 101.23C67.78 114.25 53.6 125.88 55.83 141.72C53.94 128.26 66.32 113.66 54.33 83.99A32 32 0 1 1 97.02 101.23Z")}
  .impulsito--cat-electronica .imp-e--reposo{d:path("M75.72 102.91C44.81 94.63 36.9 134.54 20.2 101.75C34.4 129.62 41.47 87.48 55 58.48A32 32 0 1 1 75.72 102.91Z")}
  .impulsito--cat-deportes    .imp-e--reposo{d:path("M78.99 40.39C110.6 35.39 117.65 19.09 128.97 7.78C119.35 17.4 109.31 34.48 115.41 65.89A32 32 0 1 1 78.99 40.39Z")}
}

/* Con `prefers-reduced-motion` la tanda 7 se queda quieta: los objetos que
   entraban y salian se quedan puestos, el agua de la maceta se ve caida y la
   pagina del libro, sin pasar. */
@media (prefers-reduced-motion: reduce){
  .impulsito.impulsito .imp-objeto--sombrero,
  .impulsito.impulsito .imp-objeto--espejo,
  .impulsito.impulsito .imp-objeto--mancuerna,
  .impulsito.impulsito .imp-objeto--pelota,
  .impulsito.impulsito .imp-objeto--volante,
  .impulsito.impulsito .imp-objeto--clip,
  .impulsito.impulsito .obj-agua,
  .impulsito.impulsito .obj-pagina,
  .impulsito.impulsito .obj-cable-forma{animation:none!important;transform:none!important}
  .impulsito.impulsito .obj-agua{opacity:1!important}
}

/* ==========================================================================
   TANDA 8 - la boca (solo en grande), la bufanda enrollada y la estela que
   sujeta. Tres cosas y ningun estado nuevo:
   1. #boca: nueve formas negras bajo los ojos. Se cruzan por opacidad, como
      los ojos (la boca es cara, no estela: no se morfea). Cada estado elige
      la suya con dos variables, --boca-neutra y --boca-<forma>.
      NUNCA se ve en el icono de barra ni en el avatar de 40 px.
   2. La bufanda rodea el cuerpo por debajo de los ojos y le cuelga un
      extremo que ondea; ya no cruza la cara.
   3. La estela «sujeta»: una forma nueva cuya punta se enrosca en el mango
      del objeto. La media luna #estela-punta se dibuja ENCIMA del objeto,
      asi que la punta pasa por detras y por delante: eso es lo que se lee
      como «lo esta agarrando». El objeto viaja con la estela porque los dos
      giran alrededor del centro del cuerpo con los mismos fotogramas.
   ========================================================================== */

/* ------------------------------------------------------------------ la boca */
.impulsito .imp-b{transition:opacity 300ms ease}
.impulsito .imp-b--neutra{opacity:var(--boca-neutra,1)}
.impulsito .imp-b--sonrisa{opacity:var(--boca-sonrisa,0)}
.impulsito .imp-b--abierta{opacity:var(--boca-abierta,0)}
.impulsito .imp-b--asombro{opacity:var(--boca-asombro,0)}
.impulsito .imp-b--triste{opacity:var(--boca-triste,0)}
.impulsito .imp-b--apretada{opacity:var(--boca-apretada,0)}
.impulsito .imp-b--lado{opacity:var(--boca-lado,0)}
.impulsito .imp-b--bostezo{opacity:var(--boca-bostezo,0)}
.impulsito .imp-b--beso{opacity:var(--boca-beso,0)}
/* a 40 y a 24 px la boca es una mancha: se apaga con el resto de los detalles */
.impulsito--pequeno .imp-boca,
.impulsito--pequeno .imp-punta{display:none}

/* ---------------------------------------------- que boca lleva cada estado */
/* sonrisa (37) */
.impulsito--saludando,
.impulsito--comprando,
.impulsito--contento,
.impulsito--pago-liberado,
.impulsito--verificado,
.impulsito--en-camino,
.impulsito--entregado,
.impulsito--senalando,
.impulsito--presentando,
.impulsito--orgulloso,
.impulsito--curioso,
.impulsito--aliviado,
.impulsito--agradecido,
.impulsito--enamorado,
.impulsito--si,
.impulsito--vale,
.impulsito--chocando,
.impulsito--despidiendose,
.impulsito--bailando,
.impulsito--cafe,
.impulsito--dando-vueltas,
.impulsito--rodando,
.impulsito--deslizandose,
.impulsito--graduado,
.impulsito--repartidor,
.impulsito--buenos-dias,
.impulsito--soleado,
.impulsito--elegante,
.impulsito--influencer,
.impulsito--en-la-playa,
.impulsito--en-la-montana,
.impulsito--con-el-telefono,
.impulsito--cat-ropa,
.impulsito--cat-hogar,
.impulsito--cat-alimentos,
.impulsito--cat-mascotas,
.impulsito--cat-vehiculos{--boca-neutra:0;--boca-sonrisa:1}
/* sonrisa abierta (7) */
.impulsito--celebrando,
.impulsito--riendo,
.impulsito--aplaudiendo,
.impulsito--fiesta,
.impulsito--comiendo,
.impulsito--loco,
.impulsito--cat-juguetes{--boca-neutra:0;--boca-abierta:1}
/* asombro (5) */
.impulsito--asombro,
.impulsito--miedo,
.impulsito--llamando,
.impulsito--congestionado,
.impulsito--corriendo{--boca-neutra:0;--boca-asombro:1}
/* triste (6) */
.impulsito--triste,
.impulsito--error,
.impulsito--cansado,
.impulsito--decepcionado,
.impulsito--perdon,
.impulsito--enfermo{--boca-neutra:0;--boca-triste:1}
/* apretada (11) */
.impulsito--trabajando,
.impulsito--enojado,
.impulsito--nervioso,
.impulsito--no,
.impulsito--frio,
.impulsito--mal-olor,
.impulsito--calculando,
.impulsito--nadando,
.impulsito--haciendo-deporte,
.impulsito--cat-electronica,
.impulsito--cat-deportes{--boca-neutra:0;--boca-apretada:1}
/* de lado (6) */
.impulsito--pensando,
.impulsito--duda,
.impulsito--verguenza,
.impulsito--travieso,
.impulsito--sospechando,
.impulsito--cat-belleza{--boca-neutra:0;--boca-lado:1}
/* bostezo (6) */
.impulsito--despertando,
.impulsito--aburrido,
.impulsito--cantando,
.impulsito--estirandose,
.impulsito--buenas-noches,
.impulsito--calor{--boca-neutra:0;--boca-bostezo:1}
/* beso (3) */
.impulsito--durmiendo,
.impulsito--susurrando,
.impulsito--besando{--boca-neutra:0;--boca-beso:1}

/* -------------------------------------------------------------- la bufanda */
.impulsito .obj-bufanda-punta{transform-box:view-box;transform-origin:107px 94px}
@keyframes imp-bufanda{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(7deg)}}
.impulsito--frio .obj-bufanda-punta{animation:imp-bufanda 1.2s ease-in-out infinite}
.impulsito--en-la-montana .obj-bufanda-punta{animation:imp-bufanda 2.4s ease-in-out infinite}

/* ------------------------------------------------- la estela que sujeta */
.impulsito .imp-punta{opacity:0;transform-box:view-box;transform-origin:84px 72px;
  transition:opacity 360ms ease}
.impulsito .imp-e--sujeta{opacity:0}
@keyframes imp-sujeta-estela{
  0%,100%{transform:rotate(calc(var(--giro,0deg) - var(--vaiven,2deg)))}
  50%{transform:rotate(calc(var(--giro,0deg) + var(--vaiven,2deg)))}}
@keyframes imp-sujeta-objeto{
  0%,100%{transform:rotate(calc(var(--giro,0deg) - var(--vaiven,2deg))) translate(var(--dx,0),var(--dy,0)) rotate(var(--ladeo,0deg))}
  50%{transform:rotate(calc(var(--giro,0deg) + var(--vaiven,2deg))) translate(var(--dx,0),var(--dy,0)) rotate(var(--ladeo,0deg))}}

/* la forma nueva se enciende en los once estados que agarran algo */
.impulsito--cat-belleza .imp-e--sujeta,
.impulsito--cantando .imp-e--sujeta,
.impulsito--cafe .imp-e--sujeta,
.impulsito--cat-alimentos .imp-e--sujeta,
.impulsito--con-el-telefono .imp-e--sujeta,
.impulsito--influencer .imp-e--sujeta,
.impulsito--estudiando .imp-e--sujeta,
.impulsito--disenando .imp-e--sujeta,
.impulsito--lluvioso .imp-e--sujeta,
.impulsito--cat-deportes .imp-e--sujeta,
.impulsito--cat-vehiculos .imp-e--sujeta{opacity:1}
.impulsito--cat-belleza .imp-punta,
.impulsito--cantando .imp-punta,
.impulsito--cafe .imp-punta,
.impulsito--cat-alimentos .imp-punta,
.impulsito--con-el-telefono .imp-punta,
.impulsito--influencer .imp-punta,
.impulsito--estudiando .imp-punta,
.impulsito--disenando .imp-punta,
.impulsito--lluvioso .imp-punta,
.impulsito--cat-deportes .imp-punta,
.impulsito--cat-vehiculos .imp-punta{opacity:1}

.impulsito--cat-belleza{--giro:-10.6deg;--ladeo:10.6deg;--dx:3.04px;--dy:-5.88px;--vaiven:2.5deg}
.impulsito--cat-belleza .imp-estela,
.impulsito--cat-belleza .imp-punta{animation:imp-sujeta-estela 4.8s ease-in-out infinite}
.impulsito--cat-belleza .imp-objeto--espejo{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 4.8s ease-in-out infinite}

.impulsito--cantando{--giro:-32.6deg;--ladeo:32.6deg;--dx:12.76px;--dy:-6.44px;--vaiven:3deg}
.impulsito--cantando .imp-estela,
.impulsito--cantando .imp-punta{animation:imp-sujeta-estela 2.4s ease-in-out infinite}
.impulsito--cantando .imp-objeto--micro{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 2.4s ease-in-out infinite}

.impulsito--cafe{--giro:74.4deg;--ladeo:-74.4deg;--dx:-42.14px;--dy:69.61px;--vaiven:2deg}
.impulsito--cafe .imp-estela,
.impulsito--cafe .imp-punta{animation:imp-sujeta-estela 4.5s ease-in-out infinite}
.impulsito--cafe .imp-objeto--taza{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 4.5s ease-in-out infinite}

.impulsito--cat-alimentos{--giro:74.4deg;--ladeo:-74.4deg;--dx:-42.14px;--dy:69.61px;--vaiven:2deg}
.impulsito--cat-alimentos .imp-estela,
.impulsito--cat-alimentos .imp-punta{animation:imp-sujeta-estela 2.4s ease-in-out infinite}
.impulsito--cat-alimentos .imp-objeto--taza{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 2.4s ease-in-out infinite}

.impulsito--con-el-telefono{--giro:19.4deg;--ladeo:-19.4deg;--dx:-6.23px;--dy:-10.63px;--vaiven:2deg}
.impulsito--con-el-telefono .imp-estela,
.impulsito--con-el-telefono .imp-punta{animation:imp-sujeta-estela 4.8s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--con-el-telefono .imp-objeto--telefono{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 4.8s cubic-bezier(.3,0,.25,1) infinite}

.impulsito--influencer{--giro:23.4deg;--ladeo:-35.4deg;--dx:-17.21px;--dy:4.47px;--vaiven:3deg}
.impulsito--influencer .imp-estela,
.impulsito--influencer .imp-punta{animation:imp-sujeta-estela 4.8s cubic-bezier(.4,0,.3,1) infinite}
.impulsito--influencer .imp-objeto--telefono{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 4.8s cubic-bezier(.4,0,.3,1) infinite}

.impulsito--estudiando{--giro:78.8deg;--ladeo:-78.8deg;--dx:0px;--dy:-0.05px;--vaiven:4deg}
.impulsito--estudiando .imp-estela,
.impulsito--estudiando .imp-punta{animation:imp-sujeta-estela 5s ease-in-out infinite}
.impulsito--estudiando .obj-lapiz{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 5s ease-in-out infinite}

.impulsito--disenando{--giro:8.4deg;--ladeo:-8.4deg;--dx:-8.83px;--dy:-7.04px;--vaiven:3.5deg}
.impulsito--disenando .imp-estela,
.impulsito--disenando .imp-punta{animation:imp-sujeta-estela 1.2s ease-in-out infinite}
.impulsito--disenando .obj-lapiz-tr{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 1.2s ease-in-out infinite}

.impulsito--lluvioso{--giro:58.4deg;--ladeo:-58.4deg;--dx:-3.54px;--dy:-2.58px;--vaiven:2deg}
.impulsito--lluvioso .imp-estela,
.impulsito--lluvioso .imp-punta{animation:imp-sujeta-estela 4.8s ease-in-out infinite}
.impulsito--lluvioso .imp-objeto--paraguas{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 4.8s ease-in-out infinite}

.impulsito--cat-deportes{--giro:-95.6deg;--ladeo:95.6deg;--dx:-9.83px;--dy:-9.27px;--vaiven:14deg}
.impulsito--cat-deportes .imp-estela,
.impulsito--cat-deportes .imp-punta{animation:imp-sujeta-estela 2.4s cubic-bezier(.35,0,.35,1) infinite}
.impulsito--cat-deportes .imp-objeto--mancuerna{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 2.4s cubic-bezier(.35,0,.35,1) infinite}

.impulsito--cat-vehiculos{--giro:71.4deg;--ladeo:-71.4deg;--dx:0.36px;--dy:-0.17px;--vaiven:7deg}
.impulsito--cat-vehiculos .imp-estela,
.impulsito--cat-vehiculos .imp-punta{animation:imp-sujeta-estela 2.4s ease-in-out infinite}
.impulsito--cat-vehiculos .imp-objeto--volante{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 2.4s ease-in-out infinite}


/* Los estados que agarran algo no pueden mover el cuerpo mas de lo que se
   mueve el objeto: la punta se dibuja fuera de la figura. Se les cambia el
   vaiven del cuerpo por la flotacion de siempre y el gesto lo lleva la
   estela, que arrastra el objeto. */
.impulsito--cat-belleza .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}
.impulsito--cantando .imp-fig{animation:imp-flotar 2.4s ease-in-out infinite}
.impulsito--con-el-telefono .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}
.impulsito--influencer .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}
.impulsito--lluvioso .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}


/* A 40 y a 24 px no hay objeto que agarrar: la estela vuelve a la de reposo
   y la media luna de la punta no se dibuja. */
.impulsito--pequeno.impulsito--cat-belleza .imp-e--sujeta,
.impulsito--pequeno.impulsito--cantando .imp-e--sujeta,
.impulsito--pequeno.impulsito--cafe .imp-e--sujeta,
.impulsito--pequeno.impulsito--cat-alimentos .imp-e--sujeta,
.impulsito--pequeno.impulsito--con-el-telefono .imp-e--sujeta,
.impulsito--pequeno.impulsito--influencer .imp-e--sujeta,
.impulsito--pequeno.impulsito--estudiando .imp-e--sujeta,
.impulsito--pequeno.impulsito--disenando .imp-e--sujeta,
.impulsito--pequeno.impulsito--lluvioso .imp-e--sujeta,
.impulsito--pequeno.impulsito--cat-deportes .imp-e--sujeta,
.impulsito--pequeno.impulsito--cat-vehiculos .imp-e--sujeta{opacity:0}
.impulsito--pequeno.impulsito--cat-belleza .imp-e--reposo,
.impulsito--pequeno.impulsito--cantando .imp-e--reposo,
.impulsito--pequeno.impulsito--cafe .imp-e--reposo,
.impulsito--pequeno.impulsito--cat-alimentos .imp-e--reposo,
.impulsito--pequeno.impulsito--con-el-telefono .imp-e--reposo,
.impulsito--pequeno.impulsito--influencer .imp-e--reposo,
.impulsito--pequeno.impulsito--estudiando .imp-e--reposo,
.impulsito--pequeno.impulsito--disenando .imp-e--reposo,
.impulsito--pequeno.impulsito--lluvioso .imp-e--reposo,
.impulsito--pequeno.impulsito--cat-deportes .imp-e--reposo,
.impulsito--pequeno.impulsito--cat-vehiculos .imp-e--reposo{opacity:1}

/* lo que estos estados hacian antes y ya no toca: la estela vieja se apaga
   y la pupusa se va al otro lado para dejarle sitio a la taza */
.impulsito--cafe .imp-e--reposo,
.impulsito--con-el-telefono .imp-e--reposo,
.impulsito--estudiando .imp-e--reposo,
.impulsito--disenando .imp-e--reposo,
.impulsito--cat-alimentos .imp-e--corta,
.impulsito--cat-belleza .imp-e--erguida,
.impulsito--cat-deportes .imp-e--senal,
.impulsito--cat-vehiculos .imp-e--corta,
.impulsito--influencer .imp-e--pelo,
.impulsito--lluvioso .imp-e--corta,
.impulsito--cantando .imp-e--reposo{opacity:0}
.impulsito--cat-alimentos .imp-objeto--pupusa{transform-box:view-box;transform-origin:50px 148px;
  transform:translate(58px,6px)}

/* --------------------------------------------------- accesibilidad, tanda 8 */
@media (prefers-reduced-motion: reduce){
  .impulsito.impulsito .obj-bufanda-punta,
  .impulsito.impulsito .imp-punta{animation:none!important}
  .impulsito.impulsito .imp-punta{transform:rotate(var(--giro,0deg))!important}

  .impulsito.impulsito--cat-belleza .imp-objeto--espejo{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--cantando .imp-objeto--micro{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--cafe .imp-objeto--taza{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--cat-alimentos .imp-objeto--taza{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--con-el-telefono .imp-objeto--telefono{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--influencer .imp-objeto--telefono{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--estudiando .obj-lapiz{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--disenando .obj-lapiz-tr{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--lluvioso .imp-objeto--paraguas{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--cat-deportes .imp-objeto--mancuerna{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--cat-vehiculos .imp-objeto--volante{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito .imp-estela{transform:rotate(var(--giro,0deg))!important}
}

/* --------------------------------------------------------------------------
   Morfeo real de `d` para la tanda 8 (Chrome y Edge): se apaga la forma
   nueva y la de reposo toma la forma «sujeta» en los once estados.
   -------------------------------------------------------------------------- */
@supports (d: path("M0 0Z")){
  .impulsito .imp-e--sujeta{opacity:0!important;animation:none!important}
  .impulsito--cat-belleza      .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--cantando         .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--cafe             .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--cat-alimentos    .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--con-el-telefono  .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--influencer       .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--estudiando       .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--disenando        .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--lluvioso         .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--cat-deportes     .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--cat-vehiculos    .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  /* a 40 y a 24 px, la estela de siempre */
  .impulsito--pequeno.impulsito--cat-belleza      .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--cantando         .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--cafe             .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--cat-alimentos    .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--con-el-telefono  .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--influencer       .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--estudiando       .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--disenando        .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--lluvioso         .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--cat-deportes     .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--cat-vehiculos    .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
}


/* ==========================================================================
   TANDA 9 - festividades y temporadas de descuento (familia H, 14 estados)
   EXCEPCION DE COLOR, aprobada por el owner: **solo la prenda o el objeto de
   la fecha** lleva color propio. Impulsito sigue verde; los demas objetos,
   negro, blanco y gris. Cada objeto tiene su variable --color-<objeto>, asi
   que se puede cambiar el rojo de Navidad sin tocar el de San Valentin.
   Ningun estado nuevo mueve el cuerpo mas de lo que ya movia la tanda 8: los
   ocho que sujetan algo (etiqueta, telefono, corazon, flor, globo, lapiz,
   bandera y sobre) solo flotan, y el gesto lo lleva la estela.
   ========================================================================== */

/* ---------------------------------------------- la paleta de la tanda 9 */
.impulsito{
  --fest-rojo:#c8342f;
  --fest-dorado:#c9992b;
  --fest-azul:#2a5aa8;
  --fest-rosa:#d95f8b;
  --fest-amarillo:#e0a92b;
  --fest-verde-billete:#93c3a5;
  /* una variable por objeto */
  --color-gorro-navidad:var(--fest-rojo);
  --color-bola:var(--fest-rojo);
  --color-cono:var(--fest-dorado);
  --color-confeti-1:var(--fest-rojo);
  --color-confeti-2:var(--fest-dorado);
  --color-confeti-3:var(--fest-azul);
  --color-confeti-4:var(--fest-rosa);
  --color-etiqueta:#111827;
  --color-ciber:var(--fest-azul);
  --color-corazon:var(--fest-rojo);
  --color-flor:var(--fest-rosa);
  --color-corbata:var(--fest-azul);
  --color-globo:var(--fest-amarillo);
  --color-mochila:var(--fest-azul);
  --color-cinta-1:var(--fest-rojo);
  --color-cinta-2:var(--fest-dorado);
  --color-cinta-3:var(--fest-azul);
  --color-banda:var(--fest-azul);
  --color-bandera:var(--fest-azul);
  --color-billete:var(--fest-verde-billete);
}

/* ------------------------------------------------- ejes de los objetos */
.impulsito .obj-bola-cuerpo{transform-box:view-box;transform-origin:124px 90px}
.impulsito .obj-papel{transform-box:fill-box;transform-origin:center}
.impulsito .obj-cinta-tira{transform-box:view-box;transform-origin:73px 5px}
.impulsito .obj-bandera-tela{transform-box:view-box;transform-origin:128.7px 12px}
.impulsito .obj-billete{transform-box:view-box;transform-origin:114.5px 20px}
.impulsito .imp-objeto--etiqueta,
.impulsito .imp-objeto--etiqueta-ciber,
.impulsito .imp-objeto--corazon-rojo,
.impulsito .imp-objeto--flor,
.impulsito .imp-objeto--globo,
.impulsito .imp-objeto--bandera,
.impulsito .imp-objeto--sobre{transform-box:view-box;transform-origin:84px 72px}

/* -------------------------------------------------------------- keyframes */
@keyframes imp-fest-bola{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}
@keyframes imp-fest-confeti{0%{opacity:0;transform:translateY(-12px) rotate(0)}
  10%{opacity:1;transform:translateY(0) rotate(20deg)}
  74%{opacity:1}
  100%{opacity:0;transform:translateY(84px) rotate(150deg)}}
@keyframes imp-fest-cinta{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
@keyframes imp-fest-bandera{0%,100%{transform:rotate(-3.5deg)}50%{transform:rotate(3.5deg)}}
@keyframes imp-fest-billete{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}
@keyframes imp-fest-etiqueta{0%,100%{transform:translate(5px,58px) rotate(-3.5deg)}
  50%{transform:translate(5px,58px) rotate(3.5deg)}}
@keyframes imp-fest-susto{0%,10%{transform:translateY(0) scale(1)}
  26%{transform:translateY(-15px) scale(1.04)}42%{transform:translateY(0) scale(1)}
  52%{transform:translateY(-5px) scale(1.02)}62%,100%{transform:translateY(0) scale(1)}}
@keyframes imp-fest-mirada-arriba{0%,100%{transform:translateY(-4px)}
  50%{transform:translateY(-5.5px)}}

/* ============================================================= 100 NAVIDAD */
.impulsito--fest-navidad .imp-objeto--gorro-navidad,
.impulsito--fest-navidad .imp-objeto--bola{opacity:1;transform:none}
.impulsito--fest-navidad .imp-fig{animation:imp-contento-balanceo 2.4s ease-in-out infinite}
.impulsito--fest-navidad .imp-estela{animation:imp-contento-estela 1.2s ease-in-out infinite}
.impulsito--fest-navidad .obj-bola-cuerpo{animation:imp-fest-bola 2.4s ease-in-out infinite}
.impulsito--fest-navidad .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ============================================================ 101 ANO NUEVO */
.impulsito--fest-ano-nuevo .imp-objeto--cono,
.impulsito--fest-ano-nuevo .imp-objeto--confeti{opacity:1;transform:none}
.impulsito--fest-ano-nuevo .imp-fig{animation:imp-celebrar-salto 3.2s cubic-bezier(.25,0,.2,1) infinite}
.impulsito--fest-ano-nuevo .imp-estela{animation:imp-celebrar-estela 3.2s ease-in-out infinite}
.impulsito--fest-ano-nuevo .imp-e--alta{animation:imp-celebrar-alta 3.2s ease-in-out infinite}
.impulsito--fest-ano-nuevo .imp-e--reposo{animation:imp-celebrar-reposo 3.2s ease-in-out infinite}
.impulsito--fest-ano-nuevo .imp-ojo-globo,
.impulsito--fest-ano-nuevo .imp-ojo-brillo{animation:imp-celebrar-ojo 3.2s ease-in-out infinite}
.impulsito--fest-ano-nuevo .imp-ojo-arco{animation:imp-celebrar-arco 3.2s ease-in-out infinite}
.impulsito--fest-ano-nuevo .obj-papel{animation:imp-fest-confeti 3.2s linear infinite}
.impulsito--fest-ano-nuevo .obj-papel--2{--retraso:800ms;animation-delay:var(--retraso)}
.impulsito--fest-ano-nuevo .obj-papel--3{--retraso:1600ms;animation-delay:var(--retraso)}
.impulsito--fest-ano-nuevo .obj-papel--4{--retraso:2400ms;animation-delay:var(--retraso)}

/* ========================================================= 102 BLACK FRIDAY */
/* la etiqueta es negra con el borde y el «%» en blanco: se lee igual sobre la
   tarjeta negra de la campana y sobre fondo claro. No lleva --sobre-oscuro. */
.impulsito--fest-black-friday .imp-objeto--etiqueta{opacity:1}
.impulsito--fest-black-friday .imp-ojo{transform:scale(1.2)}
.impulsito--fest-black-friday .imp-parpado{transform:translateY(-17px)}
.impulsito--fest-black-friday .imp-mirada{transform:translate(3px,-3px)}
.impulsito--fest-black-friday .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}

/* ========================================================= 103 CYBER MONDAY */
.impulsito--fest-cyber-monday .imp-objeto--telefono,
.impulsito--fest-cyber-monday .imp-objeto--etiqueta-ciber{opacity:1}
.impulsito--fest-cyber-monday .imp-objeto--velocidad{opacity:1;transform:none}
.impulsito--fest-cyber-monday .imp-mirada{transform:translateX(4px)}
.impulsito--fest-cyber-monday .imp-fig{animation:imp-flotar 1.2s ease-in-out infinite}
.impulsito--fest-cyber-monday .obj-raya{animation:imp-corre-raya 1.2s linear infinite}
.impulsito--fest-cyber-monday .obj-raya--2{--retraso:400ms;animation-delay:var(--retraso)}
.impulsito--fest-cyber-monday .obj-raya--3{--retraso:800ms;animation-delay:var(--retraso)}

/* ========================================================= 104 SAN VALENTIN */
.impulsito--fest-san-valentin .imp-objeto--corazon-rojo{opacity:1}
.impulsito--fest-san-valentin .imp-ojo-globo,
.impulsito--fest-san-valentin .imp-ojo-brillo{opacity:0}
.impulsito--fest-san-valentin .imp-ojo-corazon{opacity:1;animation:imp-latido 1.2s ease-in-out infinite}
.impulsito--fest-san-valentin .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}

/* ======================================================= 105 DIA DE LA MADRE */
.impulsito--fest-dia-madre .imp-objeto--flor{opacity:1}
.impulsito--fest-dia-madre .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}
.impulsito--fest-dia-madre .imp-parpado{animation:imp-gracias-parpado 4.8s ease-in-out infinite}
.impulsito--fest-dia-madre .imp-mirada{transform:translate(3px,-1px)}

/* ========================================================= 106 DIA DEL PADRE */
.impulsito--fest-dia-padre .imp-e--reposo{opacity:0}
.impulsito--fest-dia-padre .imp-e--erguida{opacity:1}
.impulsito--fest-dia-padre .imp-objeto--corbata{opacity:1;transform:none}
.impulsito--fest-dia-padre .imp-ojo-globo,
.impulsito--fest-dia-padre .imp-ojo-brillo{opacity:0}
.impulsito--fest-dia-padre .imp-ojo-arco{opacity:1}
.impulsito--fest-dia-padre .imp-fig{animation:imp-orgullo-cuerpo 4.8s ease-in-out infinite}
.impulsito--fest-dia-padre .imp-estela{animation:imp-orgullo-estela 4.8s ease-in-out infinite}

/* ========================================================== 107 DIA DEL NINO */
.impulsito--fest-dia-nino .imp-objeto--globo{opacity:1}
.impulsito--fest-dia-nino .imp-ojo-globo,
.impulsito--fest-dia-nino .imp-ojo-brillo{opacity:0}
.impulsito--fest-dia-nino .imp-ojo-risa{opacity:1}
.impulsito--fest-dia-nino .imp-mirada{transform:translateY(-1.5px)}
.impulsito--fest-dia-nino .imp-fig{animation:imp-flotar 1.2s ease-in-out infinite}

/* ====================================================== 108 VUELTA A CLASES */
.impulsito--fest-vuelta-clases .imp-objeto--cuaderno,
.impulsito--fest-vuelta-clases .imp-objeto--mochila{opacity:1;transform:none}
.impulsito--fest-vuelta-clases .imp-mirada{animation:imp-estudiar-mirada 4.8s ease-in-out infinite}
.impulsito--fest-vuelta-clases .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ====================================================== 109 FIESTAS AGOSTINAS */
.impulsito--fest-agostinas .imp-objeto--gorro,
.impulsito--fest-agostinas .imp-objeto--cintas{opacity:1;transform:none}
.impulsito--fest-agostinas .imp-fig{animation:imp-baila-cuerpo 1.6s ease-in-out infinite}
.impulsito--fest-agostinas .imp-estela{animation:imp-baila-estela 1.6s ease-in-out infinite}
.impulsito--fest-agostinas .imp-ojo-globo,
.impulsito--fest-agostinas .imp-ojo-brillo{opacity:0}
.impulsito--fest-agostinas .imp-ojo-arco{opacity:1}
.impulsito--fest-agostinas .obj-cinta-tira{animation:imp-fest-cinta .8s ease-in-out infinite}
.impulsito--fest-agostinas .obj-cinta-tira--2{--retraso:160ms;animation-delay:var(--retraso)}
.impulsito--fest-agostinas .obj-cinta-tira--3{--retraso:320ms;animation-delay:var(--retraso)}

/* ======================================================== 110 INDEPENDENCIA */
.impulsito--fest-independencia .imp-objeto--banda{opacity:1;transform:none}
.impulsito--fest-independencia .imp-objeto--bandera{opacity:1}
.impulsito--fest-independencia .imp-fig{animation:imp-flotar 4.8s ease-in-out infinite}
.impulsito--fest-independencia .imp-mirada{animation:imp-fest-mirada-arriba 4.8s ease-in-out infinite}
.impulsito--fest-independencia .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}
.impulsito--fest-independencia .obj-bandera-tela{animation:imp-fest-bandera 1.2s ease-in-out infinite}

/* =================================================== 111 HALLOWEEN / DIFUNTOS */
/* la sabana es blanca con el contorno gris: se ve sobre claro y sobre oscuro.
   Los dos agujeros y el de la boca estan calados en la misma forma
   (fill-rule evenodd), asi que **nada tapa los ojos**: son ellos los que se
   ven por el hueco. La mirada no se mueve: los agujeros no se mueven. */
.impulsito--fest-halloween .imp-objeto--sabana{opacity:1;transform:none}
.impulsito--fest-halloween .imp-fig{animation:imp-fest-susto 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--fest-halloween .imp-estela{animation:imp-fiesta-estela 2.4s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--fest-halloween .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* =========================================================== 112 AGUINALDO */
.impulsito--fest-aguinaldo .imp-objeto--sobre{opacity:1}
.impulsito--fest-aguinaldo .imp-ojo-globo,
.impulsito--fest-aguinaldo .imp-ojo-brillo{opacity:0}
.impulsito--fest-aguinaldo .imp-ojo-arco{opacity:1}
.impulsito--fest-aguinaldo .imp-mirada{transform:translate(4px,-3px)}
.impulsito--fest-aguinaldo .imp-fig{animation:imp-flotar 2.4s ease-in-out infinite}
.impulsito--fest-aguinaldo .obj-billete{animation:imp-fest-billete 2.4s ease-in-out infinite}

/* ============================================= 113 REBAJAS DE TEMPORADA */
.impulsito--fest-rebajas{--color-etiqueta:var(--fest-rojo)}
.impulsito--fest-rebajas .imp-objeto--etiqueta{opacity:1;
  animation:imp-fest-etiqueta 4.8s ease-in-out infinite}
.impulsito--fest-rebajas .imp-fig{animation:imp-presenta-cuerpo 4.8s ease-in-out infinite}
.impulsito--fest-rebajas .imp-mirada{animation:imp-presenta-mirada 4.8s ease-in-out infinite}
.impulsito--fest-rebajas .imp-estela{animation:imp-presenta-estela 4.8s cubic-bezier(.3,0,.25,1) infinite}
.impulsito--fest-rebajas .imp-e--reposo{animation:imp-presenta-sale 4.8s ease-in-out infinite}
.impulsito--fest-rebajas .imp-e--abierta{animation:imp-presenta-entra 4.8s ease-in-out infinite}
.impulsito--fest-rebajas .imp-parpado{animation:imp-parpadeo 4.8s ease-in-out infinite}

/* ------------------------------------------- que boca lleva cada festividad */
.impulsito--fest-navidad,
.impulsito--fest-dia-madre,
.impulsito--fest-dia-padre,
.impulsito--fest-independencia,
.impulsito--fest-rebajas{--boca-neutra:0;--boca-sonrisa:1}
.impulsito--fest-ano-nuevo,
.impulsito--fest-dia-nino,
.impulsito--fest-agostinas,
.impulsito--fest-halloween,
.impulsito--fest-aguinaldo{--boca-neutra:0;--boca-abierta:1}
.impulsito--fest-black-friday{--boca-neutra:0;--boca-asombro:1}
.impulsito--fest-cyber-monday,
.impulsito--fest-vuelta-clases{--boca-neutra:0;--boca-apretada:1}
.impulsito--fest-san-valentin{--boca-neutra:0;--boca-beso:1}

/* ------------------------------ los ocho que sujetan algo con la estela */
.impulsito--fest-black-friday .imp-e--sujeta,
.impulsito--fest-cyber-monday .imp-e--sujeta,
.impulsito--fest-san-valentin .imp-e--sujeta,
.impulsito--fest-dia-madre .imp-e--sujeta,
.impulsito--fest-dia-nino .imp-e--sujeta,
.impulsito--fest-vuelta-clases .imp-e--sujeta,
.impulsito--fest-independencia .imp-e--sujeta,
.impulsito--fest-aguinaldo .imp-e--sujeta{opacity:1}
.impulsito--fest-black-friday .imp-e--reposo,
.impulsito--fest-cyber-monday .imp-e--reposo,
.impulsito--fest-san-valentin .imp-e--reposo,
.impulsito--fest-dia-madre .imp-e--reposo,
.impulsito--fest-dia-nino .imp-e--reposo,
.impulsito--fest-vuelta-clases .imp-e--reposo,
.impulsito--fest-independencia .imp-e--reposo,
.impulsito--fest-aguinaldo .imp-e--reposo{opacity:0}
.impulsito--fest-black-friday .imp-punta,
.impulsito--fest-cyber-monday .imp-punta,
.impulsito--fest-san-valentin .imp-punta,
.impulsito--fest-dia-madre .imp-punta,
.impulsito--fest-dia-nino .imp-punta,
.impulsito--fest-vuelta-clases .imp-punta,
.impulsito--fest-independencia .imp-punta,
.impulsito--fest-aguinaldo .imp-punta{opacity:1}

/* Cada uno con su giro. Los objetos de la tanda 9 estan dibujados ya en el
   punto donde los agarra la punta, asi que --dx y --dy valen 0; el telefono
   y el lapiz se reutilizan de la tanda 8 y conservan los suyos. */
.impulsito--fest-black-friday{--giro:-80deg;--ladeo:80deg;--dx:0px;--dy:0px;--vaiven:2.5deg}
.impulsito--fest-black-friday .imp-estela,
.impulsito--fest-black-friday .imp-punta{animation:imp-sujeta-estela 4.8s ease-in-out infinite}
.impulsito--fest-black-friday .imp-objeto--etiqueta{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 4.8s ease-in-out infinite}

.impulsito--fest-cyber-monday{--giro:19.4deg;--ladeo:-19.4deg;--dx:-6.23px;--dy:-10.63px;--vaiven:5deg}
.impulsito--fest-cyber-monday .imp-estela,
.impulsito--fest-cyber-monday .imp-punta{animation:imp-sujeta-estela 1.2s ease-in-out infinite}
.impulsito--fest-cyber-monday .imp-objeto--telefono,
.impulsito--fest-cyber-monday .imp-objeto--etiqueta-ciber{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 1.2s ease-in-out infinite}

.impulsito--fest-san-valentin{--giro:-65deg;--ladeo:65deg;--dx:0px;--dy:0px;--vaiven:2.5deg}
.impulsito--fest-san-valentin .imp-estela,
.impulsito--fest-san-valentin .imp-punta{animation:imp-sujeta-estela 4.8s ease-in-out infinite}
.impulsito--fest-san-valentin .imp-objeto--corazon-rojo{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 4.8s ease-in-out infinite}

.impulsito--fest-dia-madre{--giro:-50deg;--ladeo:50deg;--dx:0px;--dy:0px;--vaiven:2deg}
.impulsito--fest-dia-madre .imp-estela,
.impulsito--fest-dia-madre .imp-punta{animation:imp-sujeta-estela 4.8s ease-in-out infinite}
.impulsito--fest-dia-madre .imp-objeto--flor{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 4.8s ease-in-out infinite}

.impulsito--fest-dia-nino{--giro:-60deg;--ladeo:60deg;--dx:0px;--dy:0px;--vaiven:3.5deg}
.impulsito--fest-dia-nino .imp-estela,
.impulsito--fest-dia-nino .imp-punta{animation:imp-sujeta-estela 2.4s ease-in-out infinite}
.impulsito--fest-dia-nino .imp-objeto--globo{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 2.4s ease-in-out infinite}

.impulsito--fest-vuelta-clases{--giro:78.8deg;--ladeo:-78.8deg;--dx:0px;--dy:-0.05px;--vaiven:4deg}
.impulsito--fest-vuelta-clases .imp-estela,
.impulsito--fest-vuelta-clases .imp-punta{animation:imp-sujeta-estela 4.8s ease-in-out infinite}
.impulsito--fest-vuelta-clases .obj-lapiz{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 4.8s ease-in-out infinite}

.impulsito--fest-independencia{--giro:-75deg;--ladeo:75deg;--dx:0px;--dy:0px;--vaiven:2deg}
.impulsito--fest-independencia .imp-estela,
.impulsito--fest-independencia .imp-punta{animation:imp-sujeta-estela 4.8s ease-in-out infinite}
.impulsito--fest-independencia .imp-objeto--bandera{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 4.8s ease-in-out infinite}

.impulsito--fest-aguinaldo{--giro:-85deg;--ladeo:85deg;--dx:0px;--dy:0px;--vaiven:3deg}
.impulsito--fest-aguinaldo .imp-estela,
.impulsito--fest-aguinaldo .imp-punta{animation:imp-sujeta-estela 2.4s ease-in-out infinite}
.impulsito--fest-aguinaldo .imp-objeto--sobre{transform-box:view-box;transform-origin:84px 72px;
  animation:imp-sujeta-objeto 2.4s ease-in-out infinite}

/* a 40 y a 24 px: sin objetos, sin boca, sin punta y con la estela de siempre */
.impulsito--pequeno.impulsito--fest-black-friday .imp-e--sujeta,
.impulsito--pequeno.impulsito--fest-cyber-monday .imp-e--sujeta,
.impulsito--pequeno.impulsito--fest-san-valentin .imp-e--sujeta,
.impulsito--pequeno.impulsito--fest-dia-madre .imp-e--sujeta,
.impulsito--pequeno.impulsito--fest-dia-nino .imp-e--sujeta,
.impulsito--pequeno.impulsito--fest-vuelta-clases .imp-e--sujeta,
.impulsito--pequeno.impulsito--fest-independencia .imp-e--sujeta,
.impulsito--pequeno.impulsito--fest-aguinaldo .imp-e--sujeta{opacity:0}
.impulsito--pequeno.impulsito--fest-black-friday .imp-e--reposo,
.impulsito--pequeno.impulsito--fest-cyber-monday .imp-e--reposo,
.impulsito--pequeno.impulsito--fest-san-valentin .imp-e--reposo,
.impulsito--pequeno.impulsito--fest-dia-madre .imp-e--reposo,
.impulsito--pequeno.impulsito--fest-dia-nino .imp-e--reposo,
.impulsito--pequeno.impulsito--fest-vuelta-clases .imp-e--reposo,
.impulsito--pequeno.impulsito--fest-independencia .imp-e--reposo,
.impulsito--pequeno.impulsito--fest-aguinaldo .imp-e--reposo{opacity:1}

/* --------------------------------------------------- accesibilidad, tanda 9 */
@media (prefers-reduced-motion: reduce){
  .impulsito.impulsito .obj-bola-cuerpo,
  .impulsito.impulsito .obj-papel,
  .impulsito.impulsito .obj-cinta-tira,
  .impulsito.impulsito .obj-bandera-tela,
  .impulsito.impulsito .obj-billete{animation:none!important;transform:none!important}
  .impulsito.impulsito .obj-papel{opacity:1!important}
  /* sin movimiento no hay ojos de corazon (regla de la tanda 4): San Valentin
     recupera los ojos de siempre para no quedarse sin mirada */
  .impulsito.impulsito--fest-san-valentin .imp-ojo-globo,
  .impulsito.impulsito--fest-san-valentin .imp-ojo-brillo{opacity:1!important}
  .impulsito.impulsito--fest-black-friday .imp-objeto--etiqueta,
  .impulsito.impulsito--fest-cyber-monday .imp-objeto--telefono,
  .impulsito.impulsito--fest-cyber-monday .imp-objeto--etiqueta-ciber,
  .impulsito.impulsito--fest-san-valentin .imp-objeto--corazon-rojo,
  .impulsito.impulsito--fest-dia-madre .imp-objeto--flor,
  .impulsito.impulsito--fest-dia-nino .imp-objeto--globo,
  .impulsito.impulsito--fest-vuelta-clases .obj-lapiz,
  .impulsito.impulsito--fest-independencia .imp-objeto--bandera,
  .impulsito.impulsito--fest-aguinaldo .imp-objeto--sobre{animation:none!important;
    transform:rotate(var(--giro)) translate(var(--dx),var(--dy)) rotate(var(--ladeo))!important}
  .impulsito.impulsito--fest-rebajas .imp-objeto--etiqueta{animation:none!important;
    transform:translate(5px,58px)!important}
}

/* --------------------------------------------------------------------------
   Morfeo real de `d` para la tanda 9: los ocho que sujetan toman la forma
   «sujeta» en la estela de reposo, igual que los once de la tanda 8.
   -------------------------------------------------------------------------- */
@supports (d: path("M0 0Z")){
  .impulsito--fest-black-friday  .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--fest-cyber-monday  .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--fest-san-valentin  .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--fest-dia-madre     .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--fest-dia-nino      .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--fest-vuelta-clases .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--fest-independencia .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--fest-aguinaldo     .imp-e--reposo{opacity:1!important;d:path("M115.82 68.66C119.17 100.48 175.13 97.82 133.03 113.14C128.03 84.78 118.15 101.69 86.23 103.92A32 32 0 1 1 115.82 68.66Z")}
  .impulsito--pequeno.impulsito--fest-black-friday  .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--fest-cyber-monday  .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--fest-san-valentin  .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--fest-dia-madre     .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--fest-dia-nino      .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--fest-vuelta-clases .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--fest-independencia .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
  .impulsito--pequeno.impulsito--fest-aguinaldo     .imp-e--reposo{d:path("M84 104C52 104 44.62 112.67 30.49 120.18C42.5 113.79 48.83 100.48 52.18 68.66A32 32 0 1 1 84 104Z")}
}

/* ==========================================================================
   TANDA 10 - la boca viva y la naturalidad del cuerpo. Ningun estado nuevo.
   1. La boca deja de ser una forma fija. Las nueve formas se redibujan como
      UNA sola figura cerrada con el mismo esqueleto de comandos
      (M + seis C + Z: cap izquierdo, borde de arriba en dos, cap derecho,
      borde de abajo en dos), asi que Chrome y Edge interpolan la `d` de una
      a otra igual que en las estelas. Donde no hay morfeo (Firefox hoy)
      quedan las nueve formas cruzandose por opacidad, como en la tanda 8.
   2. Una decima forma, `.imp-b--viva`, es la que se mueve: solo existe
      dentro de @supports y lleva la animacion de cada estado. La lengua
      (`.imp-b-lengua`) es blanca, morfea igual y solo aparece con la boca
      abierta.
   3. La boca NUNCA esta quieta: respira en reposo, se hunde en el suspiro,
      vibra en la tension, mastica, sorbe, bosteza, canta. Nunca aparece en
      el avatar de 40 px ni en la barra de 24: `--pequeno` apaga el grupo.
   4. Naturalidad del cuerpo: aplastar y estirar de un 3-5 % en los saltos
      (el area se conserva: 1,04 x 0,962), un agacharse de anticipacion
      antes de despegar y un rebote de asentamiento al aterrizar; parpadeo
      con `--retraso` y a veces doble; la estela llega 90 ms tarde en los
      movimientos bruscos y los ojos salen 120-180 ms antes que el cuerpo
      en las miradas laterales.
   ========================================================================== */

/* ------------------------------------------- la boca viva (base y respaldo) */
.impulsito .imp-b--viva{opacity:0}
.impulsito .imp-b-lengua{opacity:0}


/* ------------------------------------------------- aplastar, estirar, rematar
   El area se conserva en cada pareja de escalas, que es lo que hace que se lea
   como peso y no como un fallo. Se redefinen los once ciclos con salto que ya
   existian; el resto de los estados no se toca. */
@keyframes imp-saludo-salto{0%{transform:translateY(0) scale(1,1)}
  7%{transform:translateY(3px) scale(1.035,.966)}
  13%{transform:translateY(-9px) scale(.975,1.026)}
  18%{transform:translateY(-14px) scale(1,1)}
  27%{transform:translateY(-5px) scale(.986,1.014)}
  34%{transform:translateY(0) scale(1.04,.962)}
  42%{transform:translateY(-4px) scale(.99,1.01)}
  50%{transform:translateY(0) scale(1.018,.982)}
  58%,100%{transform:translateY(0) scale(1,1)}}
@keyframes imp-celebrar-salto{0%{transform:translateY(0) scale(1,1)}
  6%{transform:translateY(4px) scale(1.045,.957)}
  14%{transform:translateY(-14px) scale(.96,1.042)}
  22%{transform:translateY(-26px) scale(1,1)}
  33%{transform:translateY(-10px) scale(.972,1.029)}
  40%{transform:translateY(0) scale(1.05,.952)}
  50%{transform:translateY(-8px) scale(.986,1.014)}
  60%{transform:translateY(0) scale(1.03,.971)}
  66%{transform:translateY(-2px) scale(.996,1.004)}
  72%{transform:translateY(0) scale(1.012,.988)}
  80%,100%{transform:translateY(0) scale(1,1)}}
@keyframes imp-aplaude-cuerpo{0%{transform:translateY(0) scale(1,1)}
  8%{transform:translateY(3px) scale(1.03,.971)}
  20%{transform:translateY(-11px) scale(.974,1.027)}
  32%{transform:translateY(-2px) scale(1,1)}
  40%{transform:translateY(0) scale(1.035,.966)}
  58%{transform:translateY(-7px) scale(.986,1.014)}
  70%{transform:translateY(0) scale(1.025,.976)}
  78%,100%{transform:translateY(0) scale(1,1)}}
@keyframes imp-vale-cuerpo{0%,4%{transform:translateY(0) scale(1,1)}
  10%{transform:translateY(2.5px) scale(1.025,.976)}
  20%{transform:translateY(-7px) scale(.982,1.018)}
  30%{transform:translateY(-1px) scale(1.015,.985)}
  38%,100%{transform:translateY(0) scale(1,1)}}
@keyframes imp-salto-corto{0%,8%{transform:translateY(0) scale(1,1)}
  14%{transform:translateY(3px) scale(1.03,.971)}
  24%{transform:translateY(-15px) scale(.972,1.029)}
  34%{transform:translateY(-4px) scale(1,1)}
  40%{transform:translateY(0) scale(1.04,.962)}
  48%{transform:translateY(-5px) scale(.99,1.01)}
  56%{transform:translateY(0) scale(1.015,.985)}
  64%,100%{transform:translateY(0) scale(1,1)}}
@keyframes imp-cuenta-cuerpo{0%,4%{transform:translateY(0) scale(1,1)}
  8%{transform:translateY(2.5px) scale(1.028,.973)}
  12%{transform:translateY(-12px) scale(.975,1.026)}
  20%{transform:translateY(0) scale(1.032,.969)}
  24%{transform:translateY(-2px) scale(1,1)}
  30%{transform:translateY(-12px) scale(.975,1.026)}
  38%{transform:translateY(0) scale(1.032,.969)}
  42%{transform:translateY(-2px) scale(1,1)}
  48%{transform:translateY(-12px) scale(.975,1.026)}
  56%{transform:translateY(0) scale(1.032,.969)}
  62%,100%{transform:translateY(0) scale(1,1)}}
@keyframes imp-alivio-cuerpo{0%,8%{transform:translateY(0) scale(1,1)}
  14%{transform:translateY(3px) scale(1.03,.971)}
  24%{transform:translateY(-12px) scale(.975,1.026)}
  36%{transform:translateY(-2px) scale(1,1)}
  46%{transform:translateY(5px) scale(1.03,.971)}
  56%{transform:translateY(1px) scale(.995,1.005)}
  64%,100%{transform:translateY(0) scale(1,1)}}
@keyframes imp-cansado-cuerpo{0%{transform:translateY(0) scale(1,1)}
  36%{transform:translateY(9px) scale(1.022,.978)}
  44%{transform:translateY(-3px) scale(.988,1.012)}
  56%,100%{transform:translateY(0) scale(1,1)}}
@keyframes imp-canta-cuerpo{0%,10%{transform:translateY(0) scale(1,1)}
  18%{transform:translateY(2px) scale(1.02,.98)}
  26%{transform:translateY(-8px) scale(.982,1.018)}
  36%{transform:translateY(-1px) scale(1,1)}
  42%{transform:translateY(0) scale(1.025,.976)}
  58%{transform:translateY(-5px) scale(.99,1.01)}
  72%,100%{transform:translateY(0) scale(1,1)}}
@keyframes imp-si-cuerpo{0%{transform:translateY(0) scale(1,1)}
  10%{transform:translateY(9px) scale(1.022,.978)}
  20%{transform:translateY(0) scale(1,1)}
  30%{transform:translateY(9px) scale(1.022,.978)}
  40%,100%{transform:translateY(0) scale(1,1)}}
@keyframes imp-choca-cuerpo{0%,8%{transform:translate(0,0) scale(1,1)}
  14%{transform:translate(-4px,1px) scale(1.025,.976)}
  24%{transform:translate(25px,-7px) scale(.97,1.031)}
  32%{transform:translate(20px,-3px) scale(1.02,.98)}
  40%{transform:translate(6px,0) scale(1,1)}
  48%,100%{transform:translate(0,0) scale(1,1)}}
@keyframes imp-gracias-cuerpo{0%,4%{transform:translateY(0) rotate(0) scale(1,1)}
  12%{transform:translateY(-3px) rotate(-4deg) scale(.99,1.01)}
  24%,36%{transform:translateY(8px) rotate(17deg) scale(1.02,.98)}
  48%{transform:translateY(-1px) rotate(-2deg) scale(1,1)}
  54%,100%{transform:translateY(0) rotate(0) scale(1,1)}}

/* --------------------------------------------------------- parpadeo variado */
@keyframes imp-parpadeo-doble{0%,70%,100%{transform:translateY(-14px)}
  72.5%,74%{transform:translateY(12px)}77%{transform:translateY(-14px)}
  79.5%,81%{transform:translateY(12px)}}
.impulsito.impulsito .imp-parpado{animation-delay:var(--retraso,0s)}

/* los que parpadean dos veces seguidas */
.impulsito.impulsito--escuchando .imp-parpado,
.impulsito.impulsito--escribiendo .imp-parpado,
.impulsito.impulsito--comprando .imp-parpado,
.impulsito.impulsito--leyendo .imp-parpado,
.impulsito.impulsito--curioso .imp-parpado,
.impulsito.impulsito--timido .imp-parpado,
.impulsito.impulsito--esperando-respuesta .imp-parpado,
.impulsito.impulsito--cat-libros .imp-parpado,
.impulsito.impulsito--cat-oficina .imp-parpado,
.impulsito.impulsito--lluvioso .imp-parpado,
.impulsito.impulsito--disenando .imp-parpado,
.impulsito.impulsito--verificando .imp-parpado{animation-name:imp-parpadeo-doble}
/* y ninguno parpadea a la vez que los de al lado */
.impulsito--reposo{--retraso:-.4s}
.impulsito--escuchando{--retraso:-1.7s}
.impulsito--pensando{--retraso:-2.9s}
.impulsito--escribiendo{--retraso:-.9s}
.impulsito--trabajando{--retraso:-2.2s}
.impulsito--comprando{--retraso:-3.4s}
.impulsito--leyendo{--retraso:-1.2s}
.impulsito--estudiando{--retraso:-2.6s}
.impulsito--pago-tranquilo{--retraso:-.7s}
.impulsito--verificando{--retraso:-3.9s}
.impulsito--empaquetando{--retraso:-1.9s}
.impulsito--en-camino{--retraso:-3.1s}
.impulsito--esperando{--retraso:-.4s}
.impulsito--presentando{--retraso:-1.7s}
.impulsito--despidiendose{--retraso:-2.9s}
.impulsito--esperando-respuesta{--retraso:-.9s}
.impulsito--bailando{--retraso:-2.2s}
.impulsito--deslizandose{--retraso:-3.4s}
.impulsito--repartidor{--retraso:-1.2s}
.impulsito--lluvioso{--retraso:-2.6s}
.impulsito--frio{--retraso:-.7s}
.impulsito--disenando{--retraso:-3.9s}
.impulsito--calculando{--retraso:-1.9s}
.impulsito--en-la-montana{--retraso:-3.1s}
.impulsito--haciendo-deporte{--retraso:-.4s}
.impulsito--con-el-telefono{--retraso:-1.7s}
.impulsito--cat-ropa{--retraso:-2.9s}
.impulsito--cat-hogar{--retraso:-.9s}
.impulsito--cat-electronica{--retraso:-2.2s}
.impulsito--cat-juguetes{--retraso:-3.4s}
.impulsito--cat-libros{--retraso:-1.2s}
.impulsito--cat-mascotas{--retraso:-2.6s}
.impulsito--cat-vehiculos{--retraso:-.7s}
.impulsito--cat-oficina{--retraso:-3.9s}
.impulsito--fest-navidad{--retraso:-1.9s}
.impulsito--fest-vuelta-clases{--retraso:-3.1s}
.impulsito--fest-independencia{--retraso:-.4s}
.impulsito--fest-halloween{--retraso:-1.7s}
.impulsito--fest-rebajas{--retraso:-2.9s}
/* y con cada parpadeo la boca se afloja un instante: el grupo #boca se
   achata un 12 %% con el mismo ciclo y el mismo retraso que el parpado, asi
   que el aflojar cae exactamente cuando el ojo se cierra */
@keyframes imp-b-afloja{0%,92%,100%{transform:scaleY(1)}95.5%,96.5%{transform:scaleY(.88)}}
@keyframes imp-b-afloja-doble{0%,69%,100%{transform:scaleY(1)}
  72.5%,74%{transform:scaleY(.88)}77%{transform:scaleY(1)}79.5%,81%{transform:scaleY(.88)}}
.impulsito .imp-boca{transform-box:view-box;transform-origin:84px 86px}
.impulsito--reposo .imp-boca{animation:imp-b-afloja 4.5s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--escuchando .imp-boca{animation:imp-b-afloja-doble 6.5s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--pensando .imp-boca{animation:imp-b-afloja 6s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--escribiendo .imp-boca{animation:imp-b-afloja-doble 5.5s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--trabajando .imp-boca{animation:imp-b-afloja 5s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--comprando .imp-boca{animation:imp-b-afloja-doble 5.5s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--leyendo .imp-boca{animation:imp-b-afloja-doble 6s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--estudiando .imp-boca{animation:imp-b-afloja 5.5s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--pago-tranquilo .imp-boca{animation:imp-b-afloja 5s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--verificando .imp-boca{animation:imp-b-afloja-doble 4.5s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--empaquetando .imp-boca{animation:imp-b-afloja 5s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--en-camino .imp-boca{animation:imp-b-afloja 5s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--esperando .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--presentando .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--despidiendose .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--esperando-respuesta .imp-boca{animation:imp-b-afloja-doble 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--bailando .imp-boca{animation:imp-b-afloja 4s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--deslizandose .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--repartidor .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--lluvioso .imp-boca{animation:imp-b-afloja-doble 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--frio .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--disenando .imp-boca{animation:imp-b-afloja-doble 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--calculando .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--en-la-montana .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--haciendo-deporte .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--con-el-telefono .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--cat-ropa .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--cat-hogar .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--cat-electronica .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--cat-juguetes .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--cat-libros .imp-boca{animation:imp-b-afloja-doble 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--cat-mascotas .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--cat-vehiculos .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--cat-oficina .imp-boca{animation:imp-b-afloja-doble 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--fest-navidad .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--fest-vuelta-clases .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--fest-independencia .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--fest-halloween .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
.impulsito--fest-rebajas .imp-boca{animation:imp-b-afloja 4.8s ease-in-out infinite;animation-delay:var(--retraso,0s)}
/* la estela remata: llega 90 ms tarde y sigue cuando el cuerpo ya paro */
.impulsito.impulsito--saludando .imp-estela,
.impulsito.impulsito--celebrando .imp-estela,
.impulsito.impulsito--aplaudiendo .imp-estela,
.impulsito.impulsito--vale .imp-estela,
.impulsito.impulsito--chocando .imp-estela,
.impulsito.impulsito--si .imp-estela,
.impulsito.impulsito--no .imp-estela,
.impulsito.impulsito--contando .imp-estela,
.impulsito.impulsito--guardando .imp-estela,
.impulsito.impulsito--enviando .imp-estela,
.impulsito.impulsito--error .imp-estela,
.impulsito.impulsito--despertando .imp-estela,
.impulsito.impulsito--verificado .imp-estela,
.impulsito.impulsito--entregado .imp-estela,
.impulsito.impulsito--riendo .imp-estela,
.impulsito.impulsito--asombro .imp-estela,
.impulsito.impulsito--fest-ano-nuevo .imp-estela,
.impulsito.impulsito--fest-halloween .imp-estela{animation-delay:var(--estela-tarde,.09s)}
/* los ojos salen antes que el cuerpo en las miradas laterales */
.impulsito.impulsito--buscando .imp-mirada{animation-delay:-.12s}
.impulsito.impulsito--comprando .imp-mirada{animation-delay:-.14s}
.impulsito.impulsito--pensando .imp-mirada{animation-delay:-.18s}
.impulsito.impulsito--sospechando .imp-mirada{animation-delay:-.16s}
.impulsito.impulsito--disenando .imp-mirada{animation-delay:-.1s}
.impulsito.impulsito--leyendo .imp-mirada{animation-delay:-.12s}
.impulsito.impulsito--estudiando .imp-mirada{animation-delay:-.14s}
.impulsito.impulsito--cat-belleza .imp-mirada{animation-delay:-.12s}

/* -------------------------------------------------- accesibilidad, tanda 10 */
@media (prefers-reduced-motion: reduce){
  .impulsito.impulsito .imp-b--viva,
  .impulsito.impulsito .imp-boca,
  .impulsito.impulsito .imp-b-lengua{animation:none!important;transform:none!important}
  .impulsito.impulsito .imp-parpado{animation-delay:0s!important}
}

/* --------------------------------------------------------------------------
   Morfeo real de la boca. Las nueve formas de la tanda 8 se apagan y manda
   `.imp-b--viva`, que lleva la forma base del estado y su animacion. La
   lengua solo se enciende con la boca abierta. Con movimiento reducido no
   hay animacion y queda la forma base: la misma cara de siempre, quieta.
   -------------------------------------------------------------------------- */
@supports (d: path("M0 0Z")){
  .impulsito .imp-b--neutra,
  .impulsito .imp-b--sonrisa,
  .impulsito .imp-b--triste,
  .impulsito .imp-b--apretada,
  .impulsito .imp-b--lado,
  .impulsito .imp-b--asombro,
  .impulsito .imp-b--bostezo,
  .impulsito .imp-b--beso,
  .impulsito .imp-b--abierta{opacity:0!important;animation:none!important}
  .impulsito .imp-b--viva{opacity:1!important;transition:d 300ms cubic-bezier(.4,0,.2,1)}
  .impulsito .imp-b-lengua{transition:d 300ms cubic-bezier(.4,0,.2,1)}
  @keyframes imp-b-respira{0%,100%{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z")}50%{d:path("M79.2 83.75C80.8 84.45 82.4 84.8 84 84.8C85.6 84.8 87.2 84.45 88.8 83.75C91.2 83.75 91.2 86.65 88.8 86.65C87.2 87.35 85.6 87.7 84 87.7C82.4 87.7 80.8 87.35 79.2 86.65C76.8 86.65 76.8 83.75 79.2 83.75Z")}}
  @keyframes imp-b-escucha{0%,100%{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z")}45%{d:path("M80.6 82.7C81.73 83.03 82.87 83.2 84 83.2C85.13 83.2 86.27 83.03 87.4 82.7C89.8 82.7 89.8 87.7 87.4 87.7C86.27 88.3 85.13 88.6 84 88.6C82.87 88.6 81.73 88.3 80.6 87.7C78.2 87.7 78.2 82.7 80.6 82.7Z")}}
  @keyframes imp-b-ladea{0%,100%{d:path("M80.2 83.9C81.47 84.2 82.73 84.27 84 84.1C85.27 83.93 86.53 83.53 87.8 82.9C90.2 82.9 90.2 86.5 87.8 86.5C86.53 87.13 85.27 87.53 84 87.7C82.73 87.87 81.47 87.8 80.2 87.5C77.8 87.5 77.8 83.9 80.2 83.9Z")}50%{d:path("M80.2 82.9C81.47 83.53 82.73 83.93 84 84.1C85.27 84.27 86.53 84.2 87.8 83.9C90.2 83.9 90.2 87.5 87.8 87.5C86.53 87.8 85.27 87.87 84 87.7C82.73 87.53 81.47 87.13 80.2 86.5C77.8 86.5 77.8 82.9 80.2 82.9Z")}}
  @keyframes imp-b-esfuerzo{0%,100%{d:path("M79.6 83C81.07 83.33 82.53 83.5 84 83.5C85.47 83.5 86.93 83.33 88.4 83C91.87 83 91.87 87.4 88.4 87.4C86.93 87.73 85.47 87.9 84 87.9C82.53 87.9 81.07 87.73 79.6 87.4C76.13 87.4 76.13 83 79.6 83Z")}45%{d:path("M80.4 82.1C81.6 82.23 82.8 82.3 84 82.3C85.2 82.3 86.4 82.23 87.6 82.1C91.07 82.1 91.07 88.3 87.6 88.3C86.4 88.43 85.2 88.5 84 88.5C82.8 88.5 81.6 88.43 80.4 88.3C76.93 88.3 76.93 82.1 80.4 82.1Z")}}
  @keyframes imp-b-sonrie{0%,100%{d:path("M77.8 81.4C79.87 83.27 81.93 84.2 84 84.2C86.07 84.2 88.13 83.27 90.2 81.4C93 81.4 93 85.6 90.2 85.6C88.13 87.47 86.07 88.4 84 88.4C81.93 88.4 79.87 87.47 77.8 85.6C75 85.6 75 81.4 77.8 81.4Z")}50%{d:path("M76.2 80.6C78.8 83.93 81.4 85.6 84 85.6C86.6 85.6 89.2 83.93 91.8 80.6C94.6 80.6 94.6 85 91.8 85C89.2 88.33 86.6 90 84 90C81.4 90 78.8 88.33 76.2 85C73.4 85 73.4 80.6 76.2 80.6Z")}}
  @keyframes imp-b-rie{0%,100%{d:path("M75.4 82.1C78.27 82.83 81.13 83.2 84 83.2C86.87 83.2 89.73 82.83 92.6 82.1C93.93 82.1 93.93 84.7 92.6 84.7C89.73 85.77 86.87 86.3 84 86.3C81.13 86.3 78.27 85.77 75.4 84.7C74.07 84.7 74.07 82.1 75.4 82.1Z")}45%{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z")}}
  @keyframes imp-b-abre{0%,100%{d:path("M75.4 82.1C78.27 82.83 81.13 83.2 84 83.2C86.87 83.2 89.73 82.83 92.6 82.1C93.93 82.1 93.93 84.7 92.6 84.7C89.73 85.77 86.87 86.3 84 86.3C81.13 86.3 78.27 85.77 75.4 84.7C74.07 84.7 74.07 82.1 75.4 82.1Z")}40%{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 90.33 86.87 93.2 84 93.2C81.13 93.2 78.27 90.33 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z")}62%{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z")}80%{d:path("M75.4 82.1C78.27 82.83 81.13 83.2 84 83.2C86.87 83.2 89.73 82.83 92.6 82.1C93.93 82.1 93.93 84.7 92.6 84.7C89.73 85.77 86.87 86.3 84 86.3C81.13 86.3 78.27 85.77 75.4 84.7C74.07 84.7 74.07 82.1 75.4 82.1Z")}}
  @keyframes imp-b-mastica{0%,100%{d:path("M75.4 82.1C78.27 82.83 81.13 83.2 84 83.2C86.87 83.2 89.73 82.83 92.6 82.1C93.93 82.1 93.93 84.7 92.6 84.7C89.73 85.77 86.87 86.3 84 86.3C81.13 86.3 78.27 85.77 75.4 84.7C74.07 84.7 74.07 82.1 75.4 82.1Z")}50%{d:path("M75.4 82C78.27 82.13 81.13 82.2 84 82.2C86.87 82.2 89.73 82.13 92.6 82C93.93 82 93.93 84.8 92.6 84.8C89.73 88.93 86.87 91 84 91C81.13 91 78.27 88.93 75.4 84.8C74.07 84.8 74.07 82 75.4 82Z")}}
  @keyframes imp-b-bambolea{0%,100%{d:path("M74.2 82.2C77.07 82.33 79.93 82.4 82.8 82.4C85.67 82.4 88.53 82.33 91.4 82.2C92.73 82.2 92.73 84.6 91.4 84.6C88.53 89.53 85.67 92 82.8 92C79.93 92 77.07 89.53 74.2 84.6C72.87 84.6 72.87 82.2 74.2 82.2Z")}50%{d:path("M76.6 82.2C79.47 82.33 82.33 82.4 85.2 82.4C88.07 82.4 90.93 82.33 93.8 82.2C95.13 82.2 95.13 84.6 93.8 84.6C90.93 89.53 88.07 92 85.2 92C82.33 92 79.47 89.53 76.6 84.6C75.27 84.6 75.27 82.2 76.6 82.2Z")}}
  @keyframes imp-b-canta{0%,100%{d:path("M83 80.6C83.33 80.6 83.67 80.6 84 80.6C84.33 80.6 84.67 80.6 85 80.6C89.8 80.6 89.8 91.8 85 91.8C84.67 91.8 84.33 91.8 84 91.8C83.67 91.8 83.33 91.8 83 91.8C78.2 91.8 78.2 80.6 83 80.6Z")}22%{d:path("M82.6 79.4C83.07 79.4 83.53 79.4 84 79.4C84.47 79.4 84.93 79.4 85.4 79.4C92.07 79.4 92.07 95.8 85.4 95.8C84.93 95.8 84.47 95.8 84 95.8C83.53 95.8 83.07 95.8 82.6 95.8C75.93 95.8 75.93 79.4 82.6 79.4Z")}44%{d:path("M83 79.8C83.33 79.8 83.67 79.8 84 79.8C84.33 79.8 84.67 79.8 85 79.8C90.47 79.8 90.47 92.6 85 92.6C84.67 92.6 84.33 92.6 84 92.6C83.67 92.6 83.33 92.6 83 92.6C77.53 92.6 77.53 79.8 83 79.8Z")}64%{d:path("M82.6 81.4C83.07 81.4 83.53 81.4 84 81.4C84.47 81.4 84.93 81.4 85.4 81.4C89.93 81.4 89.93 91.8 85.4 91.8C84.93 91.8 84.47 91.8 84 91.8C83.53 91.8 83.07 91.8 82.6 91.8C78.07 91.8 78.07 81.4 82.6 81.4Z")}84%{d:path("M83 82.8C83.33 82.8 83.67 82.8 84 82.8C84.33 82.8 84.67 82.8 85 82.8C88.07 82.8 88.07 89.6 85 89.6C84.67 89.6 84.33 89.6 84 89.6C83.67 89.6 83.33 89.6 83 89.6C79.93 89.6 79.93 82.8 83 82.8Z")}}
  @keyframes imp-b-hunde{0%,100%{d:path("M77 86.3C79.33 83.83 81.67 82.6 84 82.6C86.33 82.6 88.67 83.83 91 86.3C93.8 86.3 93.8 90.5 91 90.5C88.67 88.03 86.33 86.8 84 86.8C81.67 86.8 79.33 88.03 77 90.5C74.2 90.5 74.2 86.3 77 86.3Z")}45%{d:path("M77 87.1C79.33 83.63 81.67 81.9 84 81.9C86.33 81.9 88.67 83.63 91 87.1C93.8 87.1 93.8 91.3 91 91.3C88.67 87.83 86.33 86.1 84 86.1C81.67 86.1 79.33 87.83 77 91.3C74.2 91.3 74.2 87.1 77 87.1Z")}76%{d:path("M77 85.5C79.33 83.9 81.67 83.1 84 83.1C86.33 83.1 88.67 83.9 91 85.5C93.8 85.5 93.8 89.7 91 89.7C88.67 88.1 86.33 87.3 84 87.3C81.67 87.3 79.33 88.1 77 89.7C74.2 89.7 74.2 85.5 77 85.5Z")}}
  @keyframes imp-b-vibra{0%,100%{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z")}25%{d:path("M79 82.4C80.47 82.53 81.93 82.6 83.4 82.6C84.87 82.6 86.33 82.53 87.8 82.4C91.27 82.4 91.27 88 87.8 88C86.33 88.13 84.87 88.2 83.4 88.2C81.93 88.2 80.47 88.13 79 88C75.53 88 75.53 82.4 79 82.4Z")}50%{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z")}75%{d:path("M80.2 82.8C81.67 82.93 83.13 83 84.6 83C86.07 83 87.53 82.93 89 82.8C92.47 82.8 92.47 87.6 89 87.6C87.53 87.73 86.07 87.8 84.6 87.8C83.13 87.8 81.67 87.73 80.2 87.6C76.73 87.6 76.73 82.8 80.2 82.8Z")}}
  @keyframes imp-b-tuerce{0%,2%{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z")}8%,88%{d:path("M79.6 83.8C81.07 83.2 82.53 82.7 84 82.3C85.47 81.9 86.93 81.6 88.4 81.4C91.87 81.4 91.87 86.6 88.4 86.6C86.93 86.8 85.47 87.1 84 87.5C82.53 87.9 81.07 88.4 79.6 89C76.13 89 76.13 83.8 79.6 83.8Z")}100%{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z")}}
  @keyframes imp-b-encoge{0%,100%{d:path("M83 80.6C83.33 80.6 83.67 80.6 84 80.6C84.33 80.6 84.67 80.6 85 80.6C89.8 80.6 89.8 91.8 85 91.8C84.67 91.8 84.33 91.8 84 91.8C83.67 91.8 83.33 91.8 83 91.8C78.2 91.8 78.2 80.6 83 80.6Z")}50%{d:path("M83 82.8C83.33 82.8 83.67 82.8 84 82.8C84.33 82.8 84.67 82.8 85 82.8C88.07 82.8 88.07 89.6 85 89.6C84.67 89.6 84.33 89.6 84 89.6C83.67 89.6 83.33 89.6 83 89.6C79.93 89.6 79.93 82.8 83 82.8Z")}}
  @keyframes imp-b-o{0%{d:path("M83 82.8C83.33 82.8 83.67 82.8 84 82.8C84.33 82.8 84.67 82.8 85 82.8C88.07 82.8 88.07 89.6 85 89.6C84.67 89.6 84.33 89.6 84 89.6C83.67 89.6 83.33 89.6 83 89.6C79.93 89.6 79.93 82.8 83 82.8Z")}10%{d:path("M83 79.8C83.33 79.8 83.67 79.8 84 79.8C84.33 79.8 84.67 79.8 85 79.8C90.47 79.8 90.47 92.6 85 92.6C84.67 92.6 84.33 92.6 84 92.6C83.67 92.6 83.33 92.6 83 92.6C77.53 92.6 77.53 79.8 83 79.8Z")}55%{d:path("M83 80.6C83.33 80.6 83.67 80.6 84 80.6C84.33 80.6 84.67 80.6 85 80.6C89.8 80.6 89.8 91.8 85 91.8C84.67 91.8 84.33 91.8 84 91.8C83.67 91.8 83.33 91.8 83 91.8C78.2 91.8 78.2 80.6 83 80.6Z")}100%{d:path("M83 82.8C83.33 82.8 83.67 82.8 84 82.8C84.33 82.8 84.67 82.8 85 82.8C88.07 82.8 88.07 89.6 85 89.6C84.67 89.6 84.33 89.6 84 89.6C83.67 89.6 83.33 89.6 83 89.6C79.93 89.6 79.93 82.8 83 82.8Z")}}
  @keyframes imp-b-bosteza{0%,18%{d:path("M79.6 83C81.07 83.33 82.53 83.5 84 83.5C85.47 83.5 86.93 83.33 88.4 83C91.87 83 91.87 87.4 88.4 87.4C86.93 87.73 85.47 87.9 84 87.9C82.53 87.9 81.07 87.73 79.6 87.4C76.13 87.4 76.13 83 79.6 83Z")}34%{d:path("M82.6 81.4C83.07 81.4 83.53 81.4 84 81.4C84.47 81.4 84.93 81.4 85.4 81.4C89.93 81.4 89.93 91.8 85.4 91.8C84.93 91.8 84.47 91.8 84 91.8C83.53 91.8 83.07 91.8 82.6 91.8C78.07 91.8 78.07 81.4 82.6 81.4Z")}44%,58%{d:path("M82.6 79.4C83.07 79.4 83.53 79.4 84 79.4C84.47 79.4 84.93 79.4 85.4 79.4C92.07 79.4 92.07 95.8 85.4 95.8C84.93 95.8 84.47 95.8 84 95.8C83.53 95.8 83.07 95.8 82.6 95.8C75.93 95.8 75.93 79.4 82.6 79.4Z")}72%{d:path("M82.6 82C83.07 82 83.53 82 84 82C84.47 82 84.93 82 85.4 82C89.27 82 89.27 90.4 85.4 90.4C84.93 90.4 84.47 90.4 84 90.4C83.53 90.4 83.07 90.4 82.6 90.4C78.73 90.4 78.73 82 82.6 82Z")}84%,100%{d:path("M79.6 83C81.07 83.33 82.53 83.5 84 83.5C85.47 83.5 86.93 83.33 88.4 83C91.87 83 91.87 87.4 88.4 87.4C86.93 87.73 85.47 87.9 84 87.9C82.53 87.9 81.07 87.73 79.6 87.4C76.13 87.4 76.13 83 79.6 83Z")}}
  @keyframes imp-b-jadea{0%,100%{d:path("M82.6 82C83.07 82 83.53 82 84 82C84.47 82 84.93 82 85.4 82C89.27 82 89.27 90.4 85.4 90.4C84.93 90.4 84.47 90.4 84 90.4C83.53 90.4 83.07 90.4 82.6 90.4C78.73 90.4 78.73 82 82.6 82Z")}50%{d:path("M82.6 81.4C83.07 81.4 83.53 81.4 84 81.4C84.47 81.4 84.93 81.4 85.4 81.4C89.93 81.4 89.93 91.8 85.4 91.8C84.93 91.8 84.47 91.8 84 91.8C83.53 91.8 83.07 91.8 82.6 91.8C78.07 91.8 78.07 81.4 82.6 81.4Z")}}
  @keyframes imp-b-sorbe{0%,28%{d:path("M77.8 81.4C79.87 83.27 81.93 84.2 84 84.2C86.07 84.2 88.13 83.27 90.2 81.4C93 81.4 93 85.6 90.2 85.6C88.13 87.47 86.07 88.4 84 88.4C81.93 88.4 79.87 87.47 77.8 85.6C75 85.6 75 81.4 77.8 81.4Z")}44%,62%{d:path("M83.4 83.1C83.6 83.1 83.8 83.1 84 83.1C84.2 83.1 84.4 83.1 84.6 83.1C87.93 83.1 87.93 88.9 84.6 88.9C84.4 88.9 84.2 88.9 84 88.9C83.8 88.9 83.6 88.9 83.4 88.9C80.07 88.9 80.07 83.1 83.4 83.1Z")}78%,100%{d:path("M77.8 81.4C79.87 83.27 81.93 84.2 84 84.2C86.07 84.2 88.13 83.27 90.2 81.4C93 81.4 93 85.6 90.2 85.6C88.13 87.47 86.07 88.4 84 88.4C81.93 88.4 79.87 87.47 77.8 85.6C75 85.6 75 81.4 77.8 81.4Z")}}
  @keyframes imp-b-besa{0%,12%{d:path("M77.8 81.4C79.87 83.27 81.93 84.2 84 84.2C86.07 84.2 88.13 83.27 90.2 81.4C93 81.4 93 85.6 90.2 85.6C88.13 87.47 86.07 88.4 84 88.4C81.93 88.4 79.87 87.47 77.8 85.6C75 85.6 75 81.4 77.8 81.4Z")}24%,44%{d:path("M83.4 81C83.6 81 83.8 81 84 81C84.2 81 84.4 81 84.6 81C89.93 81 89.93 90.2 84.6 90.2C84.4 90.2 84.2 90.2 84 90.2C83.8 90.2 83.6 90.2 83.4 90.2C78.07 90.2 78.07 81 83.4 81Z")}62%{d:path("M83.4 82.4C83.6 82.4 83.8 82.4 84 82.4C84.2 82.4 84.4 82.4 84.6 82.4C88.2 82.4 88.2 88.8 84.6 88.8C84.4 88.8 84.2 88.8 84 88.8C83.8 88.8 83.6 88.8 83.4 88.8C79.8 88.8 79.8 82.4 83.4 82.4Z")}80%,100%{d:path("M77.8 81.4C79.87 83.27 81.93 84.2 84 84.2C86.07 84.2 88.13 83.27 90.2 81.4C93 81.4 93 85.6 90.2 85.6C88.13 87.47 86.07 88.4 84 88.4C81.93 88.4 79.87 87.47 77.8 85.6C75 85.6 75 81.4 77.8 81.4Z")}}
  @keyframes imp-b-duerme{0%,100%{d:path("M83.4 82.4C83.6 82.4 83.8 82.4 84 82.4C84.2 82.4 84.4 82.4 84.6 82.4C88.2 82.4 88.2 88.8 84.6 88.8C84.4 88.8 84.2 88.8 84 88.8C83.8 88.8 83.6 88.8 83.4 88.8C79.8 88.8 79.8 82.4 83.4 82.4Z")}50%{d:path("M83.4 81C83.6 81 83.8 81 84 81C84.2 81 84.4 81 84.6 81C89.93 81 89.93 90.2 84.6 90.2C84.4 90.2 84.2 90.2 84 90.2C83.8 90.2 83.6 90.2 83.4 90.2C78.07 90.2 78.07 81 83.4 81Z")}}
  @keyframes imp-b-susurra{0%,100%{d:path("M81.2 81.6C81.4 81.6 81.6 81.6 81.8 81.6C82 81.6 82.2 81.6 82.4 81.6C86.93 81.6 86.93 89.6 82.4 89.6C82.2 89.6 82 89.6 81.8 89.6C81.6 89.6 81.4 89.6 81.2 89.6C76.67 89.6 76.67 81.6 81.2 81.6Z")}50%{d:path("M81 81.1C81.27 81.1 81.53 81.1 81.8 81.1C82.07 81.1 82.33 81.1 82.6 81.1C87.67 81.1 87.67 90.1 82.6 90.1C82.33 90.1 82.07 90.1 81.8 90.1C81.53 90.1 81.27 90.1 81 90.1C75.93 90.1 75.93 81.1 81 81.1Z")}}
  @keyframes imp-b-lado-vivo{0%,100%{d:path("M79.4 84.8C81.07 84.7 82.73 84.4 84.4 83.9C86.07 83.4 87.73 82.7 89.4 81.8C92.07 81.8 92.07 85.8 89.4 85.8C87.73 86.7 86.07 87.4 84.4 87.9C82.73 88.4 81.07 88.7 79.4 88.8C76.73 88.8 76.73 84.8 79.4 84.8Z")}50%{d:path("M79.8 84.1C81.33 84.27 82.87 84.23 84.4 84C85.93 83.77 87.47 83.33 89 82.7C91.67 82.7 91.67 86.7 89 86.7C87.47 87.33 85.93 87.77 84.4 88C82.87 88.23 81.33 88.27 79.8 88.1C77.13 88.1 77.13 84.1 79.8 84.1Z")}}
  @keyframes imp-b-apaga{0%,52%{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z")}84%,100%{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z")}}
  @keyframes imp-bl-rie{0%,100%{opacity:0;d:path("M82.8 87.8C83.2 87.67 83.6 87.6 84 87.6C84.4 87.6 84.8 87.67 85.2 87.8C85.47 87.8 85.47 88.2 85.2 88.2C84.8 88.27 84.4 88.3 84 88.3C83.6 88.3 83.2 88.27 82.8 88.2C82.53 88.2 82.53 87.8 82.8 87.8Z")}45%{opacity:1;d:path("M80.2 89C81.47 88.87 82.73 88.8 84 88.8C85.27 88.8 86.53 88.87 87.8 89C88.07 89 88.07 89.4 87.8 89.4C86.53 91 85.27 91.8 84 91.8C82.73 91.8 81.47 91 80.2 89.4C79.93 89.4 79.93 89 80.2 89Z")}}
  @keyframes imp-bl-abre{0%,100%{opacity:0;d:path("M82.8 87.8C83.2 87.67 83.6 87.6 84 87.6C84.4 87.6 84.8 87.67 85.2 87.8C85.47 87.8 85.47 88.2 85.2 88.2C84.8 88.27 84.4 88.3 84 88.3C83.6 88.3 83.2 88.27 82.8 88.2C82.53 88.2 82.53 87.8 82.8 87.8Z")}40%{opacity:1;d:path("M80.2 89C81.47 88.87 82.73 88.8 84 88.8C85.27 88.8 86.53 88.87 87.8 89C88.07 89 88.07 89.4 87.8 89.4C86.53 91 85.27 91.8 84 91.8C82.73 91.8 81.47 91 80.2 89.4C79.93 89.4 79.93 89 80.2 89Z")}62%{opacity:1;d:path("M80.2 89C81.47 88.87 82.73 88.8 84 88.8C85.27 88.8 86.53 88.87 87.8 89C88.07 89 88.07 89.4 87.8 89.4C86.53 91 85.27 91.8 84 91.8C82.73 91.8 81.47 91 80.2 89.4C79.93 89.4 79.93 89 80.2 89Z")}80%{opacity:0;d:path("M82.8 87.8C83.2 87.67 83.6 87.6 84 87.6C84.4 87.6 84.8 87.67 85.2 87.8C85.47 87.8 85.47 88.2 85.2 88.2C84.8 88.27 84.4 88.3 84 88.3C83.6 88.3 83.2 88.27 82.8 88.2C82.53 88.2 82.53 87.8 82.8 87.8Z")}}
  @keyframes imp-bl-mastica{0%,100%{opacity:0;d:path("M82.8 87.8C83.2 87.67 83.6 87.6 84 87.6C84.4 87.6 84.8 87.67 85.2 87.8C85.47 87.8 85.47 88.2 85.2 88.2C84.8 88.27 84.4 88.3 84 88.3C83.6 88.3 83.2 88.27 82.8 88.2C82.53 88.2 82.53 87.8 82.8 87.8Z")}50%{opacity:1;d:path("M81.4 86.8C82.27 86.67 83.13 86.6 84 86.6C84.87 86.6 85.73 86.67 86.6 86.8C86.87 86.8 86.87 87.2 86.6 87.2C85.73 88.07 84.87 88.5 84 88.5C83.13 88.5 82.27 88.07 81.4 87.2C81.13 87.2 81.13 86.8 81.4 86.8Z")}}
  @keyframes imp-bl-bambolea{0%,100%{opacity:1;d:path("M80.2 89C81.47 88.87 82.73 88.8 84 88.8C85.27 88.8 86.53 88.87 87.8 89C88.07 89 88.07 89.4 87.8 89.4C86.53 91 85.27 91.8 84 91.8C82.73 91.8 81.47 91 80.2 89.4C79.93 89.4 79.93 89 80.2 89Z")}50%{opacity:1;d:path("M80.2 89C81.47 88.87 82.73 88.8 84 88.8C85.27 88.8 86.53 88.87 87.8 89C88.07 89 88.07 89.4 87.8 89.4C86.53 91 85.27 91.8 84 91.8C82.73 91.8 81.47 91 80.2 89.4C79.93 89.4 79.93 89 80.2 89Z")}}

  .impulsito--reposo .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 3s ease-in-out infinite}
  .impulsito--saludando .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--escuchando .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-escucha 4.4s ease-in-out infinite}
  .impulsito--pensando .imp-b--viva{d:path("M79.4 84.8C81.07 84.7 82.73 84.4 84.4 83.9C86.07 83.4 87.73 82.7 89.4 81.8C92.07 81.8 92.07 85.8 89.4 85.8C87.73 86.7 86.07 87.4 84.4 87.9C82.73 88.4 81.07 88.7 79.4 88.8C76.73 88.8 76.73 84.8 79.4 84.8Z");animation:imp-b-lado-vivo 5s ease-in-out infinite}
  .impulsito--escribiendo .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 5.5s ease-in-out infinite}
  .impulsito--buscando .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-ladea 2.4s ease-in-out infinite}
  .impulsito--trabajando .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-esfuerzo 1.24s ease-in-out infinite}
  .impulsito--comprando .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.6s ease-in-out infinite}
  .impulsito--celebrando .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-abre 3.2s ease-in-out infinite}
  .impulsito--celebrando .imp-b-lengua{animation:imp-bl-abre 3.2s ease-in-out infinite}
  .impulsito--contento .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2s ease-in-out infinite}
  .impulsito--triste .imp-b--viva{d:path("M77 86.3C79.33 83.83 81.67 82.6 84 82.6C86.33 82.6 88.67 83.83 91 86.3C93.8 86.3 93.8 90.5 91 90.5C88.67 88.03 86.33 86.8 84 86.8C81.67 86.8 79.33 88.03 77 90.5C74.2 90.5 74.2 86.3 77 86.3Z");animation:imp-b-hunde 6s ease-in-out infinite}
  .impulsito--error .imp-b--viva{d:path("M77 86.3C79.33 83.83 81.67 82.6 84 82.6C86.33 82.6 88.67 83.83 91 86.3C93.8 86.3 93.8 90.5 91 90.5C88.67 88.03 86.33 86.8 84 86.8C81.67 86.8 79.33 88.03 77 90.5C74.2 90.5 74.2 86.3 77 86.3Z");animation:imp-b-tuerce 2.8s ease-in-out infinite}
  .impulsito--leyendo .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 6s ease-in-out infinite}
  .impulsito--estudiando .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 5s ease-in-out infinite}
  .impulsito--pago-tranquilo .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 4.5s ease-in-out infinite}
  .impulsito--pago-liberado .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.6s ease-in-out infinite}
  .impulsito--verificando .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 3.6s ease-in-out infinite}
  .impulsito--verificado .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.6s ease-in-out infinite}
  .impulsito--empaquetando .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 3s ease-in-out infinite}
  .impulsito--en-camino .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 3.4s ease-in-out infinite}
  .impulsito--entregado .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.6s ease-in-out infinite}
  .impulsito--esperando .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 2.4s ease-in-out infinite}
  .impulsito--enviando .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 2.4s ease-in-out infinite}
  .impulsito--senalando .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--presentando .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--contando .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 2.4s ease-in-out infinite}
  .impulsito--guardando .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 2.4s ease-in-out infinite}
  .impulsito--durmiendo .imp-b--viva{d:path("M83.4 81.6C83.6 81.6 83.8 81.6 84 81.6C84.2 81.6 84.4 81.6 84.6 81.6C89.13 81.6 89.13 89.6 84.6 89.6C84.4 89.6 84.2 89.6 84 89.6C83.8 89.6 83.6 89.6 83.4 89.6C78.87 89.6 78.87 81.6 83.4 81.6Z");animation:imp-b-duerme 4.8s ease-in-out infinite}
  .impulsito--despertando .imp-b--viva{d:path("M82.6 79.4C83.07 79.4 83.53 79.4 84 79.4C84.47 79.4 84.93 79.4 85.4 79.4C92.07 79.4 92.07 95.8 85.4 95.8C84.93 95.8 84.47 95.8 84 95.8C83.53 95.8 83.07 95.8 82.6 95.8C75.93 95.8 75.93 79.4 82.6 79.4Z");animation:imp-b-bosteza 2.4s ease-in-out infinite}
  .impulsito--duda .imp-b--viva{d:path("M79.4 84.8C81.07 84.7 82.73 84.4 84.4 83.9C86.07 83.4 87.73 82.7 89.4 81.8C92.07 81.8 92.07 85.8 89.4 85.8C87.73 86.7 86.07 87.4 84.4 87.9C82.73 88.4 81.07 88.7 79.4 88.8C76.73 88.8 76.73 84.8 79.4 84.8Z");animation:imp-b-lado-vivo 3.4s ease-in-out infinite}
  .impulsito--asombro .imp-b--viva{d:path("M83 80.6C83.33 80.6 83.67 80.6 84 80.6C84.33 80.6 84.67 80.6 85 80.6C89.8 80.6 89.8 91.8 85 91.8C84.67 91.8 84.33 91.8 84 91.8C83.67 91.8 83.33 91.8 83 91.8C78.2 91.8 78.2 80.6 83 80.6Z");animation:imp-b-o 2.6s ease-out infinite}
  .impulsito--enojado .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 0.38s ease-in-out infinite}
  .impulsito--miedo .imp-b--viva{d:path("M83 80.6C83.33 80.6 83.67 80.6 84 80.6C84.33 80.6 84.67 80.6 85 80.6C89.8 80.6 89.8 91.8 85 91.8C84.67 91.8 84.33 91.8 84 91.8C83.67 91.8 83.33 91.8 83 91.8C78.2 91.8 78.2 80.6 83 80.6Z");animation:imp-b-encoge 0.52s ease-in-out infinite}
  .impulsito--aburrido .imp-b--viva{d:path("M82.6 79.4C83.07 79.4 83.53 79.4 84 79.4C84.47 79.4 84.93 79.4 85.4 79.4C92.07 79.4 92.07 95.8 85.4 95.8C84.93 95.8 84.47 95.8 84 95.8C83.53 95.8 83.07 95.8 82.6 95.8C75.93 95.8 75.93 79.4 82.6 79.4Z");animation:imp-b-bosteza 5.4s ease-in-out infinite}
  .impulsito--cansado .imp-b--viva{d:path("M77 86.3C79.33 83.83 81.67 82.6 84 82.6C86.33 82.6 88.67 83.83 91 86.3C93.8 86.3 93.8 90.5 91 90.5C88.67 88.03 86.33 86.8 84 86.8C81.67 86.8 79.33 88.03 77 90.5C74.2 90.5 74.2 86.3 77 86.3Z");animation:imp-b-hunde 3.4s ease-in-out infinite}
  .impulsito--riendo .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-rie 0.54s ease-in-out infinite}
  .impulsito--riendo .imp-b-lengua{animation:imp-bl-rie 0.54s ease-in-out infinite}
  .impulsito--verguenza .imp-b--viva{d:path("M79.4 84.8C81.07 84.7 82.73 84.4 84.4 83.9C86.07 83.4 87.73 82.7 89.4 81.8C92.07 81.8 92.07 85.8 89.4 85.8C87.73 86.7 86.07 87.4 84.4 87.9C82.73 88.4 81.07 88.7 79.4 88.8C76.73 88.8 76.73 84.8 79.4 84.8Z");animation:imp-b-lado-vivo 4.8s ease-in-out infinite}
  .impulsito--orgulloso .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--curioso .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--nervioso .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 0.4s ease-in-out infinite}
  .impulsito--aliviado .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--agradecido .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--decepcionado .imp-b--viva{d:path("M77 86.3C79.33 83.83 81.67 82.6 84 82.6C86.33 82.6 88.67 83.83 91 86.3C93.8 86.3 93.8 90.5 91 90.5C88.67 88.03 86.33 86.8 84 86.8C81.67 86.8 79.33 88.03 77 90.5C74.2 90.5 74.2 86.3 77 86.3Z");animation:imp-b-hunde 4.8s ease-in-out infinite}
  .impulsito--enamorado .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--travieso .imp-b--viva{d:path("M79.4 84.8C81.07 84.7 82.73 84.4 84.4 83.9C86.07 83.4 87.73 82.7 89.4 81.8C92.07 81.8 92.07 85.8 89.4 85.8C87.73 86.7 86.07 87.4 84.4 87.9C82.73 88.4 81.07 88.7 79.4 88.8C76.73 88.8 76.73 84.8 79.4 84.8Z");animation:imp-b-lado-vivo 2.4s ease-in-out infinite}
  .impulsito--sospechando .imp-b--viva{d:path("M79.4 84.8C81.07 84.7 82.73 84.4 84.4 83.9C86.07 83.4 87.73 82.7 89.4 81.8C92.07 81.8 92.07 85.8 89.4 85.8C87.73 86.7 86.07 87.4 84.4 87.9C82.73 88.4 81.07 88.7 79.4 88.8C76.73 88.8 76.73 84.8 79.4 84.8Z");animation:imp-b-lado-vivo 4.8s ease-in-out infinite}
  .impulsito--si .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--no .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 1.2s ease-in-out infinite}
  .impulsito--vale .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--aplaudiendo .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-abre 1.2s ease-in-out infinite}
  .impulsito--aplaudiendo .imp-b-lengua{animation:imp-bl-abre 1.2s ease-in-out infinite}
  .impulsito--chocando .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--llamando .imp-b--viva{d:path("M83 80.6C83.33 80.6 83.67 80.6 84 80.6C84.33 80.6 84.67 80.6 85 80.6C89.8 80.6 89.8 91.8 85 91.8C84.67 91.8 84.33 91.8 84 91.8C83.67 91.8 83.33 91.8 83 91.8C78.2 91.8 78.2 80.6 83 80.6Z");animation:imp-b-o 1.2s ease-out infinite}
  .impulsito--susurrando .imp-b--viva{d:path("M83.4 81.6C83.6 81.6 83.8 81.6 84 81.6C84.2 81.6 84.4 81.6 84.6 81.6C89.13 81.6 89.13 89.6 84.6 89.6C84.4 89.6 84.2 89.6 84 89.6C83.8 89.6 83.6 89.6 83.4 89.6C78.87 89.6 78.87 81.6 83.4 81.6Z");animation:imp-b-susurra 4.8s ease-in-out infinite}
  .impulsito--despidiendose .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-apaga 4.8s ease-in-out infinite}
  .impulsito--perdon .imp-b--viva{d:path("M77 86.3C79.33 83.83 81.67 82.6 84 82.6C86.33 82.6 88.67 83.83 91 86.3C93.8 86.3 93.8 90.5 91 90.5C88.67 88.03 86.33 86.8 84 86.8C81.67 86.8 79.33 88.03 77 90.5C74.2 90.5 74.2 86.3 77 86.3Z");animation:imp-b-hunde 4.8s ease-in-out infinite}
  .impulsito--esperando-respuesta .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 4.8s ease-in-out infinite}
  .impulsito--bailando .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 1.6s ease-in-out infinite}
  .impulsito--cantando .imp-b--viva{d:path("M82.6 79.4C83.07 79.4 83.53 79.4 84 79.4C84.47 79.4 84.93 79.4 85.4 79.4C92.07 79.4 92.07 95.8 85.4 95.8C84.93 95.8 84.47 95.8 84 95.8C83.53 95.8 83.07 95.8 82.6 95.8C75.93 95.8 75.93 79.4 82.6 79.4Z");animation:imp-b-canta 2.4s ease-in-out infinite}
  .impulsito--cafe .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sorbe 4.5s ease-in-out infinite}
  .impulsito--dando-vueltas .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--estirandose .imp-b--viva{d:path("M82.6 79.4C83.07 79.4 83.53 79.4 84 79.4C84.47 79.4 84.93 79.4 85.4 79.4C92.07 79.4 92.07 95.8 85.4 95.8C84.93 95.8 84.47 95.8 84 95.8C83.53 95.8 83.07 95.8 82.6 95.8C75.93 95.8 75.93 79.4 82.6 79.4Z");animation:imp-b-bosteza 4.8s ease-in-out infinite}
  .impulsito--rodando .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--deslizandose .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--fiesta .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-abre 2.4s ease-in-out infinite}
  .impulsito--fiesta .imp-b-lengua{animation:imp-bl-abre 2.4s ease-in-out infinite}
  .impulsito--graduado .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--repartidor .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--buenas-noches .imp-b--viva{d:path("M82.6 79.4C83.07 79.4 83.53 79.4 84 79.4C84.47 79.4 84.93 79.4 85.4 79.4C92.07 79.4 92.07 95.8 85.4 95.8C84.93 95.8 84.47 95.8 84 95.8C83.53 95.8 83.07 95.8 82.6 95.8C75.93 95.8 75.93 79.4 82.6 79.4Z");animation:imp-b-bosteza 4.8s ease-in-out infinite}
  .impulsito--buenos-dias .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--calor .imp-b--viva{d:path("M82.6 79.4C83.07 79.4 83.53 79.4 84 79.4C84.47 79.4 84.93 79.4 85.4 79.4C92.07 79.4 92.07 95.8 85.4 95.8C84.93 95.8 84.47 95.8 84 95.8C83.53 95.8 83.07 95.8 82.6 95.8C75.93 95.8 75.93 79.4 82.6 79.4Z");animation:imp-b-jadea 1.2s ease-in-out infinite}
  .impulsito--soleado .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--lluvioso .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 4.8s ease-in-out infinite}
  .impulsito--frio .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 0.8s ease-in-out infinite}
  .impulsito--mal-olor .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 1.2s ease-in-out infinite}
  .impulsito--enfermo .imp-b--viva{d:path("M77 86.3C79.33 83.83 81.67 82.6 84 82.6C86.33 82.6 88.67 83.83 91 86.3C93.8 86.3 93.8 90.5 91 90.5C88.67 88.03 86.33 86.8 84 86.8C81.67 86.8 79.33 88.03 77 90.5C74.2 90.5 74.2 86.3 77 86.3Z");animation:imp-b-hunde 4.8s ease-in-out infinite}
  .impulsito--congestionado .imp-b--viva{d:path("M83 80.6C83.33 80.6 83.67 80.6 84 80.6C84.33 80.6 84.67 80.6 85 80.6C89.8 80.6 89.8 91.8 85 91.8C84.67 91.8 84.33 91.8 84 91.8C83.67 91.8 83.33 91.8 83 91.8C78.2 91.8 78.2 80.6 83 80.6Z");animation:imp-b-o 2.4s ease-out infinite}
  .impulsito--timido .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 4.8s ease-in-out infinite}
  .impulsito--perezoso .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 4.8s ease-in-out infinite}
  .impulsito--elegante .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--influencer .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--disenando .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 2.4s ease-in-out infinite}
  .impulsito--calculando .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 2.4s ease-in-out infinite}
  .impulsito--besando .imp-b--viva{d:path("M83.4 81.6C83.6 81.6 83.8 81.6 84 81.6C84.2 81.6 84.4 81.6 84.6 81.6C89.13 81.6 89.13 89.6 84.6 89.6C84.4 89.6 84.2 89.6 84 89.6C83.8 89.6 83.6 89.6 83.4 89.6C78.87 89.6 78.87 81.6 83.4 81.6Z");animation:imp-b-besa 2.4s cubic-bezier(.3,0,.25,1) infinite}
  .impulsito--comiendo .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-mastica 0.6s ease-in-out infinite}
  .impulsito--comiendo .imp-b-lengua{animation:imp-bl-mastica 0.6s ease-in-out infinite}
  .impulsito--loco .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-bambolea 1.6s ease-in-out infinite}
  .impulsito--loco .imp-b-lengua{animation:imp-bl-bambolea 1.6s ease-in-out infinite}
  .impulsito--en-la-playa .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--en-la-montana .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--corriendo .imp-b--viva{d:path("M83 80.6C83.33 80.6 83.67 80.6 84 80.6C84.33 80.6 84.67 80.6 85 80.6C89.8 80.6 89.8 91.8 85 91.8C84.67 91.8 84.33 91.8 84 91.8C83.67 91.8 83.33 91.8 83 91.8C78.2 91.8 78.2 80.6 83 80.6Z");animation:imp-b-o 1.2s ease-out infinite}
  .impulsito--nadando .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 2.4s ease-in-out infinite}
  .impulsito--haciendo-deporte .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 1.2s ease-in-out infinite}
  .impulsito--con-el-telefono .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--cat-ropa .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--cat-hogar .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--cat-belleza .imp-b--viva{d:path("M79.4 84.8C81.07 84.7 82.73 84.4 84.4 83.9C86.07 83.4 87.73 82.7 89.4 81.8C92.07 81.8 92.07 85.8 89.4 85.8C87.73 86.7 86.07 87.4 84.4 87.9C82.73 88.4 81.07 88.7 79.4 88.8C76.73 88.8 76.73 84.8 79.4 84.8Z");animation:imp-b-lado-vivo 4.8s ease-in-out infinite}
  .impulsito--cat-electronica .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 2.4s ease-in-out infinite}
  .impulsito--cat-alimentos .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sorbe 4.8s ease-in-out infinite}
  .impulsito--cat-juguetes .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-abre 1.2s ease-in-out infinite}
  .impulsito--cat-juguetes .imp-b-lengua{animation:imp-bl-abre 1.2s ease-in-out infinite}
  .impulsito--cat-deportes .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 2.4s ease-in-out infinite}
  .impulsito--cat-libros .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 4.8s ease-in-out infinite}
  .impulsito--cat-mascotas .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--cat-vehiculos .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--cat-oficina .imp-b--viva{d:path("M80.2 83.4C81.47 83.87 82.73 84.1 84 84.1C85.27 84.1 86.53 83.87 87.8 83.4C90.2 83.4 90.2 87 87.8 87C86.53 87.47 85.27 87.7 84 87.7C82.73 87.7 81.47 87.47 80.2 87C77.8 87 77.8 83.4 80.2 83.4Z");animation:imp-b-respira 4.8s ease-in-out infinite}
  .impulsito--fest-navidad .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 2.4s ease-in-out infinite}
  .impulsito--fest-ano-nuevo .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-abre 3.2s ease-in-out infinite}
  .impulsito--fest-ano-nuevo .imp-b-lengua{animation:imp-bl-abre 3.2s ease-in-out infinite}
  .impulsito--fest-black-friday .imp-b--viva{d:path("M83 80.6C83.33 80.6 83.67 80.6 84 80.6C84.33 80.6 84.67 80.6 85 80.6C89.8 80.6 89.8 91.8 85 91.8C84.67 91.8 84.33 91.8 84 91.8C83.67 91.8 83.33 91.8 83 91.8C78.2 91.8 78.2 80.6 83 80.6Z");animation:imp-b-o 4.8s ease-out infinite}
  .impulsito--fest-cyber-monday .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 1.2s ease-in-out infinite}
  .impulsito--fest-san-valentin .imp-b--viva{d:path("M83.4 81.6C83.6 81.6 83.8 81.6 84 81.6C84.2 81.6 84.4 81.6 84.6 81.6C89.13 81.6 89.13 89.6 84.6 89.6C84.4 89.6 84.2 89.6 84 89.6C83.8 89.6 83.6 89.6 83.4 89.6C78.87 89.6 78.87 81.6 83.4 81.6Z");animation:imp-b-duerme 1.2s ease-in-out infinite}
  .impulsito--fest-dia-madre .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--fest-dia-padre .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--fest-dia-nino .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-rie 0.6s ease-in-out infinite}
  .impulsito--fest-dia-nino .imp-b-lengua{animation:imp-bl-rie 0.6s ease-in-out infinite}
  .impulsito--fest-vuelta-clases .imp-b--viva{d:path("M79.6 82.6C81.07 82.73 82.53 82.8 84 82.8C85.47 82.8 86.93 82.73 88.4 82.6C91.87 82.6 91.87 87.8 88.4 87.8C86.93 87.93 85.47 88 84 88C82.53 88 81.07 87.93 79.6 87.8C76.13 87.8 76.13 82.6 79.6 82.6Z");animation:imp-b-vibra 2.4s ease-in-out infinite}
  .impulsito--fest-agostinas .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-abre 1.6s ease-in-out infinite}
  .impulsito--fest-agostinas .imp-b-lengua{animation:imp-bl-abre 1.6s ease-in-out infinite}
  .impulsito--fest-independencia .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
  .impulsito--fest-halloween .imp-b--viva{d:path("M83 80.6C83.33 80.6 83.67 80.6 84 80.6C84.33 80.6 84.67 80.6 85 80.6C89.8 80.6 89.8 91.8 85 91.8C84.67 91.8 84.33 91.8 84 91.8C83.67 91.8 83.33 91.8 83 91.8C78.2 91.8 78.2 80.6 83 80.6Z");animation:imp-b-o 2.4s ease-out infinite}
  .impulsito--fest-aguinaldo .imp-b--viva{d:path("M75.4 82.2C78.27 82.33 81.13 82.4 84 82.4C86.87 82.4 89.73 82.33 92.6 82.2C93.93 82.2 93.93 84.6 92.6 84.6C89.73 89.53 86.87 92 84 92C81.13 92 78.27 89.53 75.4 84.6C74.07 84.6 74.07 82.2 75.4 82.2Z");animation:imp-b-abre 2.4s ease-in-out infinite}
  .impulsito--fest-aguinaldo .imp-b-lengua{animation:imp-bl-abre 2.4s ease-in-out infinite}
  .impulsito--fest-rebajas .imp-b--viva{d:path("M77 81.1C79.33 83.57 81.67 84.8 84 84.8C86.33 84.8 88.67 83.57 91 81.1C93.8 81.1 93.8 85.3 91 85.3C88.67 87.77 86.33 89 84 89C81.67 89 79.33 87.77 77 85.3C74.2 85.3 74.2 81.1 77 81.1Z");animation:imp-b-sonrie 4.8s ease-in-out infinite}
}
