/* Small motion illustrations inside the original home cards. Shared layout, copy,
   typography, navigation, hero, film, console, and sections remain unchanged. */
.home-motion-elements #offers .hm-element {
  position: relative;
  width: 100%;
  height: 126px;
  flex: 0 0 126px;
  overflow: hidden;
  pointer-events: none;
}
.hm-globe { position: absolute; width: 180px; height: 180px; max-width: none; top: -23px; left: calc(50% - 90px); }
.hm-element-network svg { width: 100%; height: 100%; }
.hm-track { stroke: var(--a12); stroke-width: 1; }
.hm-beam { stroke: var(--sys); stroke-width: 1.5; stroke-dasharray: 18 190; animation: hm-travel 4s linear infinite; animation-play-state: paused; }
.hm-node { position: absolute; display: grid; place-items: center; transform: translate(-50%,-50%); width: 43px; height: 29px; background: var(--bg-card); color: var(--muted); border: 1px solid var(--a10); border-radius: var(--r-sm); font: 8px var(--mono); }
.hm-node-a { left: 12.5%; top: 23%; }.hm-node-b { left: 12.5%; top: 77%; }
.hm-node-c { left: 87.5%; top: 23%; }.hm-node-d { left: 87.5%; top: 77%; }
.hm-node-hub { left: 50%; top: 50%; width: 42px; height: 42px; border-color: var(--heat-20); box-shadow: 0 3px 12px var(--a6); }
.hm-sheet { position: absolute; top: 15px; left: calc(50% - 35px); width: 70px; height: 94px; border: 1px solid var(--a10); border-radius: var(--r-sm); background: var(--bg-card); padding: 13px; transition: transform .5s cubic-bezier(.2,.8,.2,1); box-shadow: 0 3px 10px var(--a4); }
.hm-sheet i { display: block; height: 3px; background: var(--a8); border-radius: 2px; margin-top: 8px; }
.hm-sheet i:last-child { width: 65%; }.hm-sheet img { margin-bottom: 13px; }
.hm-sheet-back { transform: translateX(38px) rotate(13deg); border-color: var(--studio-soft); }
.hm-sheet-middle { transform: translateX(-38px) rotate(-13deg); border-color: var(--geo-soft); }
.home-motion-elements .xcard:is(:hover,:focus-within) .hm-beam { animation-play-state: running; }
.home-motion-elements .xcard:is(:hover,:focus-within) .hm-sheet-back { transform: translateX(49px) rotate(18deg); }
.home-motion-elements .xcard:is(:hover,:focus-within) .hm-sheet-middle { transform: translateX(-49px) rotate(-18deg); }
.home-motion-elements .xcard:is(:hover,:focus-within) .hm-sheet-front { transform: translateY(-4px); }
@keyframes hm-travel { to { stroke-dashoffset: -416; } }
@media (prefers-reduced-motion: reduce) { .home-motion-elements .hm-element * { animation: none !important; transition: none !important; } }
