/* Polimento de movimento (autoria do pipeline, sobrepoe o motor do design).
   Filosofia: reveals nitidos e rapidos (sem blur em texto), movimento continuo
   so onde e cinema de verdade (a foto dentro do M), zero pin fragil. */

:root, body {
  --mzRb: 0px !important;   /* blur dos reveals: NUNCA embacar texto */
  --mzRy: 18px !important;  /* deslocamento curto = entrada firme */
  --mzRd: .55s !important;  /* rapido; lento parece site pesado */
}

/* garantia absoluta: o elemento revelado jamais embaca (important vence
   ate valor vindo de keyframe, por especificacao CSS) */
[data-reveal] {
  filter: none !important;
  animation-duration: .55s !important;
}

/* a foto dentro da mascara do M ganha vida: camera lenta continua (Ken Burns) */
img[src*="cidade-ia-laranja"] {
  animation: mzpKb 36s ease-in-out infinite alternate;
  transform-origin: 62% 38%;
  will-change: transform;
}
@keyframes mzpKb {
  from { transform: scale(1.03); }
  to { transform: scale(1.11) translate3d(-1.4%, -1.6%, 0); }
}

/* garantia extra contra o pin: nada de sticky no hero */
[data-heropin] { position: relative !important; }

@media (prefers-reduced-motion: reduce) {
  img[src*="cidade-ia-laranja"] { animation: none; }
}
