/* ── MOVIMENTO · versão 4 ───────────────────────────────────────
   Um comportamento por tela. Logotipo parado, respira só no hover.
   No máximo três pontos respirando. Pausa no rodapé.
   Nada além dos pontos se move.
   ───────────────────────────────────────────────────────────── */
:root{
  --ease:cubic-bezier(.45,.05,.55,.95); /* @kind other */
  --breathe-1:7s; /* @kind other */
  --breathe-2:8s; /* @kind other */
  --breathe-3:5.5s; /* @kind other */
}

@keyframes breathe{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes breathe-b{0%,100%{transform:translateY(0)}50%{transform:translateY(-6px)}}
@keyframes breathe-e{0%,100%{transform:translateY(0)}50%{transform:translateY(-.06em)}}
@keyframes hop{0%,100%{transform:translateY(0)}40%{transform:translateY(-5px)}70%{transform:translateY(1px)}}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}

/* ══ Os seis comportamentos · lote 31 ══ */
/* A mente que abre: um ponto se abre em muitos e volta maior por dentro. 4,2s, uma vez. */
@keyframes ap-mente-c{0%{transform:scale(1)}28%,70%{transform:scale(.55)}100%{transform:scale(1.6)}}
@keyframes ap-mente-s{0%{opacity:0;transform:rotate(var(--a)) translateX(0)}12%{opacity:1}38%,62%{opacity:1;transform:rotate(var(--a)) translateX(var(--r,46px))}90%{opacity:1;transform:rotate(var(--a)) translateX(0)}100%{opacity:0;transform:rotate(var(--a)) translateX(0)}}
/* A divisão: um ponto vira dois, como célula. 5s. O novo é verde. */
@keyframes ap-div-a{0%,18%{transform:translateX(0)}55%,88%{transform:translateX(-15px)}100%{transform:translateX(0)}}
@keyframes ap-div-b{0%,18%{transform:translateX(0) scale(.3);opacity:0}24%{opacity:1}55%,88%{transform:translateX(15px) scale(1);opacity:1}100%{transform:translateX(0) scale(.3);opacity:0}}
/* A órbita: o agente gira em volta da pessoa. Linear, de 6,5s a 9,5s. */
@keyframes ap-orb{from{transform:rotate(0deg) translateX(32px)}to{transform:rotate(360deg) translateX(32px)}}
/* A travessia: atravessa e cresce de 0,8 a 1,9 vez. 11s. */
@keyframes ap-trav{0%{left:0;transform:scale(.8)}100%{left:100%;transform:scale(1.9)}}
/* O enxame: pontos dispersos se reúnem. 7s. */
@keyframes ap-enx{0%,8%{transform:translate(var(--x0),var(--y0))}92%,100%{transform:translate(var(--x1),var(--y1))}}
