/* 特色款・卡片疊放：每個區塊是一張圓角大卡片、往上壓住前一張的邊，顏色一張一張輪替；往下捲時卡片從下面滑上來疊好。 */
.s-deck { --bg: #ecebf3; --bg2: #e2e0ec; --fg: #1b1a24; --muted: #62607a; --line: #dddbe8; --accent: #4f46e5; --on-accent: #fff; --card: #fff;
  --radius: 28px; --radius-btn: 14px; --shadow: 0 -10px 30px rgba(30, 25, 70, .12); --head-weight: 800; --h1: clamp(2.4rem, 7vw, 4.4rem); }
.deck-hero { display: grid; gap: 24px; padding-block: clamp(28px, 5vw, 56px) clamp(60px, 8vw, 100px); align-items: center; }
.deck-hero .hero-txt { padding: 0; }
.deck-hero .hero-img { aspect-ratio: 16 / 10; overflow: hidden; border-radius: var(--radius); box-shadow: 0 20px 40px rgba(30, 25, 70, .2); }
@media (min-width: 900px) { .deck-hero { grid-template-columns: 1fr 1fr; } .deck-hero .hero-img { order: 2; transform: rotate(2deg); } }
.s-deck .hero-en { color: var(--accent); font-weight: 800; }
.deck-main { padding-bottom: 60px; }
.deck-main .sec { position: relative; width: min(1120px, 100% - 20px); margin: -40px auto 0; border-radius: var(--radius); background: var(--card);
  box-shadow: var(--shadow); padding-block: clamp(44px, 7vw, 80px); }
.deck-main .sec:nth-child(4n+1) { background: #fff; }
.deck-main .sec:nth-child(4n+2) { background: #e8e6ff; }
.deck-main .sec:nth-child(4n+3) { background: #fff4e0; }
.deck-main .sec:nth-child(4n) { background: #e1f5ee; }
.deck-main .sec:first-child { margin-top: 0; }
.deck-main .sec .wrap { width: calc(100% - clamp(32px, 8vw, 120px)); }
.deck-main .sec-h { display: flex; align-items: center; gap: 14px; }
.deck-main .sec-h::before { content: counter(deck, decimal-leading-zero); counter-increment: deck; font-size: .55em; color: var(--accent); border: 2px solid var(--accent);
  border-radius: 999px; padding: 2px 12px; font-weight: 800; }
.deck-main { counter-reset: deck; }
@supports (animation-timeline: view()) {
  @media (prefers-reduced-motion: no-preference) {
    .deck-main .sec { animation: deckin linear both; animation-timeline: view(); animation-range: entry 0% entry 60%; }
  }
}
@keyframes deckin { from { transform: translateY(80px) scale(.96); opacity: .4; } }
.s-deck .price-tb th, .s-deck .price-tb td { border-color: rgba(30, 25, 70, .1); }
.s-deck .price-tb td { color: var(--accent); }
.s-deck .pic { border-radius: 18px; }
.s-deck .card, .s-deck .person { border: 0; border-radius: 18px; box-shadow: 0 6px 16px rgba(30, 25, 70, .08); }
.s-deck .day { border-color: rgba(30, 25, 70, .1); }
.s-deck .day i { background: #fff; border: 0; border-radius: 999px; }
.s-deck .btn { box-shadow: 0 8px 18px rgba(79, 70, 229, .3); }
.s-deck .btn-2 { box-shadow: none; }
.s-deck .foot { background: #1b1a24; color: #b5b3c8; border: 0; margin-top: 0; }
.s-deck .foot-name { color: #fff; }
