/* Row 容器：桌機橫向排列 */
.promo-card-row {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  align-items: stretch;
  margin: 16px auto;
  max-width: 1280px; /* 可視需要調整容器寬度 */
}
/* === Staggered entrance (IntersectionObserver) === */
.promo-card-row .promo-card {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity .6s ease, transform .6s ease;
}

.promo-card-row .promo-card.is-visible {
  opacity: 1;
  transform: translateY(0);
}


.promo-card {
  display: flex;
  align-items: center;
  background: #fef9f5;
  border-radius: 12px;
  padding: 20px;
  max-width: 800px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.1);
  margin: 0 auto;
  margin-bottom: 10px;
}


.promo-card-row .promo-card {
  flex: 1 1 calc(25% - 20px);      
  max-width: calc(25% - 20px);
  margin: 0;                          
  height: auto;
  flex-direction: column;
}

/* 內容區 */
.promo-info {
  flex: 1;
}
.badge {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 8px;
}
.badge span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #B13B28;
  color: #FFF;
  font-weight: 400;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  margin-right: 4px;
  font-size: 24px;
}
.badge .highlight {
  background: #FFD84E;
  color: #B13B28;
}
.title {
  margin: 0;
  font-size: 20px;
  font-weight: 600;
  color: #984141;
}
.cta {
  margin: 8px 0;
  font-size: 16px;
  color: #B13B28;
}
.cta p {
  margin: 0;
  font-size: 16px;
  color: #2e2e2e;
  font-weight: 500;
}
.description {
  margin: 0;
  font-size: 14px;
  color: #555;
  line-height: 1.5;
}
.promo-image img {
  max-width: 200px;
  width: 100%;
  height: auto;
  margin-top: 40px;
  border-radius: 50%;
  display: block;
  box-shadow: 0 8px 20px rgba(255,216,78,0.45), 0 0 40px rgba(177,59,40,0.12);
  animation: promo-bounce 8s ease-in-out infinite;
  transform-origin: center bottom;
}

/* Staggered delays so they bounce one-by-one in order (1→2→3→4) */
.promo-card-row .promo-card:nth-child(1) .promo-image img { animation-delay: 0s; }
.promo-card-row .promo-card:nth-child(2) .promo-image img { animation-delay: 2s; }
.promo-card-row .promo-card:nth-child(3) .promo-image img { animation-delay: 4s; }
.promo-card-row .promo-card:nth-child(4) .promo-image img { animation-delay: 6s; }

@keyframes promo-bounce {
  0%, 15% { transform: translateY(0) scale(1); filter: drop-shadow(0 8px 20px rgba(255,216,78,0.45)); }
  7%      { transform: translateY(-12px) scale(1.03); filter: drop-shadow(0 12px 26px rgba(255,216,78,0.65)); }
  100%    { transform: translateY(0) scale(1); filter: drop-shadow(0 8px 20px rgba(255,216,78,0.45)); }
}

/* Optional: reduce motion */
@media (prefers-reduced-motion: reduce) {
  .promo-image img { animation: none; }
}

@keyframes promo-glow {
  0% {
    box-shadow: 0 8px 20px rgba(255,216,78,0.45), 0 0 40px rgba(177,59,40,0.12);
  }
  50% {
    box-shadow: 0 12px 30px rgba(255,216,78,0.75), 0 0 60px rgba(177,59,40,0.25);
  }
  100% {
    box-shadow: 0 8px 20px rgba(255,216,78,0.45), 0 0 40px rgba(136, 44, 30, 0.12);
  }
}
/* 平板：兩欄 */
@media (max-width: 1024px) {
  .promo-card-row .promo-card {
    flex: 1 1 calc(50% - 20px);
    max-width: calc(50% - 20px);
  }
}

/* 手機：直排，卡片改為縱向排列 */
@media (max-width: 600px) {
  .promo-card-row {
    flex-direction: column;
    max-width: 540px;
  }
  .promo-card-row .promo-card {
    flex: 1 1 100%;
    max-width: 100%;
  }

  .promo-card {
    flex-direction: column;
    text-align: center;
  }
  .promo-info {
    padding-right: 0;
    margin-bottom: 16px;
  }
  .promo-image {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: -20px;
  }
  .promo-image img {
    max-width: 80%;

  }
  .badge span {
    display: inline-flex;
    width: 38px;
    height: 38px;
    margin-right: 4px;
    font-size: 24px;
  }
}

/* ===== 酒瓶圖 ===== */
.grand-prize-bottles{
  display:flex;
  justify-content:center;
  align-items:flex-end;
  gap:46px;
  margin:28px 0 12px;
  padding-bottom: 22px;
}
.grand-prize-bottles img{
  height:360px;
  width:auto;
  display:block;
  filter: drop-shadow(0 6px 12px rgba(0,0,0,.18));
  transition: transform .2s ease;
}
.grand-prize-bottles img:hover{
  transform: translateY(-4px) scale(1.02);
}
@media (max-width: 768px){
  .grand-prize-bottles{ gap:32px; padding-left: 20px;}
  .grand-prize-bottles img{ height:260px; }
  #card2 .grand-prize-bottles img{ height:280px;gap: 10px;}
}
@media (max-width: 480px){
  /* .grand-prize-bottles{ gap:3px; } */
  .grand-prize-bottles img{ height:240px; }

    #card2 .grand-prize-bottles img{ height:210px;gap: 2px;}
/* ===== 酒瓶圖結束 ===== */  