/* Verified snippets from chise's Motion Zukan MCP. See ../_assets/gallery-refresh-20261005/motion-sources.md. */

/* MCP 1-4 */
.mp-heading .mp-heading-inner.mp-on-1-4 {
  transform: translateY(110%);
  opacity: 0;
  transition: transform var(--mp-dur-l) var(--mp-ease), opacity var(--mp-dur-l) var(--mp-ease);
  will-change: transform, opacity;
}
.mp-heading .mp-heading-inner.mp-on-1-4.mp-in-1-4 {
  transform: translateY(0);
  opacity: 1;
}

/* MCP 5-23 */
[data-mp="cards"] .mp-card.mp-on-5-23 {
  opacity: 0;
  transform: translateY(var(--mp-dist));
  transition: opacity var(--mp-dur-m) var(--mp-ease), transform var(--mp-dur-m) var(--mp-ease);
}
[data-mp="cards"] .mp-card.mp-on-5-23.mp-in {
  opacity: 1;
  transform: translateY(0);
}

/* MCP 8-5 */
[data-mp="cta"] .mp-cta-btn {
  transition: transform var(--mp-dur-m) cubic-bezier(0.34, 1.56, 0.64, 1);
}
@media (hover: hover) {
  [data-mp="cta"] .mp-cta-btn:hover {
    transform: scale(1.06);
  }
}
[data-mp="cta"] .mp-cta-btn:active {
  transform: scale(0.9);
  transition-duration: var(--mp-dur-s);
}

/* MCP 3-25 */
[data-mp="image"] .mp-image-frame { overflow: hidden; }
[data-mp="image"] .mp-image-frame .mp-image-art {
  transform: scale(1);
  transition: transform var(--mp-dur-m) var(--mp-ease), opacity var(--mp-dur-l) var(--mp-ease);
  will-change: transform;
}
[data-mp="image"] .mp-image-frame.mp-on-3-25 .mp-image-art { opacity: 0; }
[data-mp="image"] .mp-image-frame.mp-on-3-25.mp-in .mp-image-art { opacity: 1; }
@media (hover: hover) {
  [data-mp="image"] .mp-image-frame:hover .mp-image-art { transform: scale(1.06); }
}

/* Original showcase composition, separate from unchanged MCP snippets. */
@keyframes showcase-float { 0%,100% { translate:0 0 } 50% { translate:0 -9px } }
.showcase-slot.slot-0 { animation:showcase-float 6s var(--mp-ease) 2s infinite }
.showcase.is-resting .showcase-slot,.showcase:hover .showcase-slot,.showcase:focus-within .showcase-slot{animation-play-state:paused}
html.motion-paused .mp-card{transform:none!important}
@media(prefers-reduced-motion:reduce){.mp-card,.mp-heading-inner,.mp-image-art{opacity:1!important;transform:none!important}}

