/**
 * 卡片微動態 — hover 與進場
 */
@media (prefers-reduced-motion: no-preference) {
  @keyframes peaceCardIn {
    from {
      opacity: 0;
      transform: translateY(18px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }

  .peace-lively-card,
  .ultimate-home .media-card,
  .ultimate-home .cap-card,
  .ultimate-home .field-card,
  .ultimate-home .partner-card,
  .ultimate-home .award-card {
    transition: transform 0.28s ease, box-shadow 0.28s ease, border-color 0.28s ease;
  }

  .peace-card-grid > .peace-lively-card:nth-child(1),
  .peace-card-grid > .media-card:nth-child(1),
  .peace-card-grid > .award-card:nth-child(1) { animation: peaceCardIn 0.55s ease 0.02s backwards; }
  .peace-card-grid > *:nth-child(2) { animation: peaceCardIn 0.55s ease 0.08s backwards; }
  .peace-card-grid > *:nth-child(3) { animation: peaceCardIn 0.55s ease 0.14s backwards; }
  .peace-card-grid > *:nth-child(4) { animation: peaceCardIn 0.55s ease 0.2s backwards; }
  .peace-card-grid > *:nth-child(n+5) { animation: peaceCardIn 0.55s ease 0.26s backwards; }

  .peace-lively-card:hover,
  .ultimate-home .media-card:hover,
  .ultimate-home .cap-card:hover,
  .ultimate-home .field-card:hover,
  .ultimate-home .partner-card:hover,
  .ultimate-home .award-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 22px 44px rgba(31, 38, 59, 0.14);
  }

  .ultimate-home .peace-team-card:hover {
    transform: rotate(0deg) translateY(calc(var(--team-y, 0) - 10px));
    box-shadow: 0 24px 48px rgba(31, 38, 59, 0.16);
    z-index: 2;
  }

  .ultimate-home .about-flow-step:hover {
    transform: translateY(-8px) scale(1.02);
    box-shadow: 0 18px 40px rgba(31, 38, 59, 0.14);
    border-color: rgba(231, 101, 66, 0.35);
    z-index: 2;
  }

  .ultimate-home .cap-card:hover > span {
    transform: scale(1.08) rotate(-4deg);
    transition: transform 0.28s ease;
  }
}

.ultimate-home .cap-card > span {
  transition: transform 0.28s ease;
}
