.process-list li { position: relative; overflow: hidden; }

.process-motion {
  position: absolute;
  right: 18px;
  bottom: 18px;
  width: 74px;
  height: 42px;
  opacity: .55;
  pointer-events: none;
}

/* 01 — сканирование аудита */
.motion-scan { overflow: hidden; border: 1px solid rgba(113,184,255,.34); border-radius: 6px; background: repeating-linear-gradient(0deg, transparent 0 9px, rgba(113,184,255,.12) 10px), repeating-linear-gradient(90deg, transparent 0 13px, rgba(113,184,255,.09) 14px); }
.motion-scan::after { content: ""; position: absolute; inset: -10px 0 auto; height: 11px; background: linear-gradient(transparent, rgba(93,225,255,.85), transparent); box-shadow: 0 0 14px rgba(93,225,255,.8); transform: translateY(-20px); }
.is-animated .motion-scan::after { animation: scan 1.9s ease-in-out infinite; }

/* 02 — маршрут стратегии */
.motion-route::before { content: ""; position: absolute; top: 20px; left: 5px; width: 62px; border-top: 2px dashed rgba(113,184,255,.7); transform: rotate(-17deg); transform-origin:left; }
.motion-route i { position:absolute; width:7px; height:7px; border-radius:50%; background:var(--blue-light); box-shadow:0 0 9px var(--blue-light); transform:scale(0); }
.motion-route i:nth-child(1){left:4px;top:28px}.motion-route i:nth-child(2){left:32px;top:20px}.motion-route i:nth-child(3){right:1px;top:5px;background:var(--cyan);box-shadow:0 0 10px var(--cyan)}
.is-animated .motion-route i:nth-child(1){animation:node .25s .1s forwards}.is-animated .motion-route i:nth-child(2){animation:node .25s .38s forwards}.is-animated .motion-route i:nth-child(3){animation:node .25s .65s forwards}

/* 03 — сборка основы */
.motion-blocks { display:flex; align-items:flex-end; gap:4px; }
.motion-blocks i { display:block; width:16px; border:1px solid rgba(124,171,255,.65); border-radius:3px 3px 1px 1px; background:linear-gradient(180deg,rgba(75,125,255,.55),rgba(75,125,255,.08)); transform:scaleY(0); transform-origin:bottom; }
.motion-blocks i:nth-child(1){height:16px}.motion-blocks i:nth-child(2){height:27px}.motion-blocks i:nth-child(3){height:39px}
.is-animated .motion-blocks i:nth-child(1){animation:build .45s .1s forwards}.is-animated .motion-blocks i:nth-child(2){animation:build .45s .28s forwards}.is-animated .motion-blocks i:nth-child(3){animation:build .45s .46s forwards}

/* 04 — рост и метрика */
.motion-growth svg { width:100%; height:100%; overflow:visible; }.motion-growth path { fill:none; stroke:var(--cyan); stroke-width:2; filter:drop-shadow(0 0 5px var(--cyan)); stroke-dasharray:110; stroke-dashoffset:110; }.is-animated .motion-growth path { animation:draw 1.25s .15s ease forwards; }.motion-growth b { position:absolute; right:0; top:-16px; color:var(--cyan); font:700 10px var(--display); opacity:0; }.is-animated .motion-growth b { animation:appear .2s 1.15s forwards; }

.chart path:not(.area) { stroke-dasharray:700; stroke-dashoffset:700; }
.chart.is-animated path:not(.area) { animation:draw 1.5s .1s ease forwards; }

@keyframes scan { 50% { transform: translateY(53px); } 100% { transform: translateY(53px); } }
@keyframes node { to { transform:scale(1); } }
@keyframes build { to { transform:scaleY(1); } }

@media (max-width:620px) { .process-motion { right:12px; bottom:12px; transform:scale(.82); transform-origin:bottom right; } }
