/* Motion changes only paint; icon layout, shape and functional rotations stay intact. */
.motion-icon { transform-origin: center; }
svg.motion-icon { transform-box: view-box; overflow: visible; }
svg.motion-icon[data-motion-parts] > use { visibility: hidden; }
.motion-icon-parts { pointer-events: none; }
.motion-icon-parts > *, svg.motion-icon > :is(path, rect, circle, line, polygon, polyline) {
  transform-box: fill-box;
  transform-origin: center;
}
.motion-glyph { display: inline-block; }
.motion-icon[data-motion-kind="ring"] { transform-origin: 50% 20%; }
.menu-toggle > span { transition: transform 420ms cubic-bezier(.22,1,.36,1); }
.menu-toggle[aria-expanded="true"] > span:first-child { transform: translateY(3.5px) rotate(45deg); }
.menu-toggle[aria-expanded="true"] > span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
@media (prefers-reduced-motion: reduce) {
  .motion-icon, .motion-icon-parts > * { animation: none !important; transition: none !important; }
}
