/* Interactive layers are registered to the original 1122 × 1402 KBM artwork. */
.merch-motion-art{position:relative;display:block;isolation:isolate;overflow:visible}
.merch-motion-art:not(.merch-art){aspect-ratio:1122 / 1402}
.merch-motion-art>.merch-motion-fallback{display:block;width:100%;height:100%;max-width:none;object-fit:contain;filter:none;transform:none}
.merch-motion-art>.merch-motion-scene{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;pointer-events:none;opacity:0}
.merch-motion-art.is-ready>.merch-motion-scene{opacity:1}
.merch-motion-art.is-ready>.merch-motion-fallback{opacity:0}
.world-merch-card .merch-motion-art{transition:none}
.world-merch-card:hover .merch-motion-art{transform:none}
.hero-art>.merch-motion-art{width:min(100%,570px);filter:drop-shadow(0 40px 60px #000b);transform:translate(2%,3%) rotate(4deg)}
.art-detail>.merch-motion-art{width:min(72%,440px);flex:none;filter:drop-shadow(0 12px 15px #0005)}
.art-detail[data-merch-trigger]{padding-block:60px}
[data-merch-trigger]:focus-visible{outline:2px solid #d0f970;outline-offset:5px}
[data-merch-trigger][role="button"]{cursor:pointer;touch-action:pan-y}
.merch-motion-piece{transform-box:view-box;transform-origin:561px 701px}
.merch-motion-needle{transform-box:view-box;transform-origin:635px 700px;transform:rotate(120deg)}
.merch-motion-steam{opacity:0;transform-box:view-box;transform-origin:0 0}
.merch-motion-art.is-pressurized .merch-motion-steam{animation:kbm-vent 1.65s ease-out infinite;animation-delay:var(--steam-delay)}
.merch-motion-heat{opacity:0;transition:opacity .45s ease}
.merch-motion-art.is-pressurized .merch-motion-heat{opacity:.5}
@keyframes kbm-vent{
  0%{opacity:0;transform:translate(0,0) scale(.25)}
  13%{opacity:.8}
  55%{opacity:.4}
  100%{opacity:0;transform:translate(var(--steam-x),var(--steam-y)) scale(2.2)}
}
@media(max-width:740px){.hero-art>.merch-motion-art{width:min(76%,350px);transform:translate(0,-1%) rotate(3deg)}}
@media(prefers-reduced-motion:reduce){
  .merch-motion-art.is-ready>.merch-motion-fallback{opacity:1}
  .merch-motion-art>.merch-motion-scene{display:none}
  .merch-motion-art *{animation:none!important;transition:none!important}
  .world-merch-card:hover .merch-motion-art{transform:none}
}
