/* No hidden initial CSS states: the document remains readable without JS/CDNs. */
.motion-hero-image { position: absolute; inset: 0; z-index: -2; overflow: clip; }
.motion-hero-image .hero__photo { z-index: auto; }
.motion-image { overflow: clip; }
.motion-ok .selo__ring, .motion-ok .faixa__track { animation: none; }
/* Negative margins preserve line metrics; padding protects accents and descenders (ç, g, p). */
.js [data-split] div[style*="clip"] {
  padding: .08em .09em .28em;
  margin: -.08em -.09em -.28em;
}
.nota__valor { font-variant-numeric: tabular-nums; }
.manifesto__text .motion-word { display: inline-block; }
/* Mobile steps line draws with scroll through a CSS variable. */
.motion-ok .passos__lista::before { transform: scaleY(var(--line, 1)); }
@media (hover: none), (pointer: coarse), (prefers-reduced-motion: reduce) {
  .btn:hover .ico--btn, .link:hover .ico--btn { transform: none; }
}
@media (prefers-reduced-motion: reduce) {
  .selo__ring, .faixa__track { animation: none !important; }
  .btn, .ico--btn { transition: none !important; }
}
