/* =========================================================
   polish.css — 純動畫增強，文字 0 變動
   - A 案例卡 hover 漸層 overlay
   - B CTA 按鈕 hover 光暈
   - C Logo hover 微旋轉 + 文字漸層掃過
   - E Footer 粒子背景 canvas 樣式
   ========================================================= */

/* ===== A · 案例卡 hover overlay ===== */
@media (hover: hover) {
  .case-card {
    box-shadow: 0 1px 0 transparent;
    transition: transform .35s cubic-bezier(.2,.8,.2,1),
                box-shadow .35s ease;
  }
  .case-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 38px rgba(15, 26, 38, .18);
  }
  .case-img { position: relative; }
  .case-img::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,
      transparent 50%,
      rgba(15, 26, 38, .55) 100%);
    opacity: 0;
    transition: opacity .4s ease;
    pointer-events: none;
    z-index: 1;
  }
  .case-card:hover .case-img::after { opacity: 1; }
}

/* ===== B · CTA 按鈕 hover 光暈 ===== */
@media (hover: hover) {
  .btn-hero-main:hover,
  .btn-cta-white:hover,
  .footer-cta-btn:hover {
    box-shadow:
      0 10px 24px rgba(200, 146, 74, .35),
      0 0 0 4px rgba(200, 146, 74, .12);
  }
  .all-btn:hover {
    box-shadow:
      0 10px 24px rgba(15, 26, 38, .25),
      0 0 0 4px rgba(15, 26, 38, .08);
  }
  .btn-hero-ghost:hover,
  .btn-cta-ghost:hover {
    box-shadow: 0 0 0 4px rgba(255, 255, 255, .08);
  }
  /* 補上原本的 transition 也覆蓋 box-shadow */
  .btn-hero-main, .btn-cta-white, .all-btn,
  .footer-cta-btn, .btn-hero-ghost, .btn-cta-ghost {
    transition: background .2s, transform .15s, box-shadow .3s ease;
  }
}

/* ===== C · Logo header hover ===== */
@media (hover: hover) {
  .nav-logo {
    cursor: pointer;
    transition: transform .35s cubic-bezier(.2,1.4,.4,1);
  }
  .nav-logo:hover {
    transform: translateY(-1px);
  }
  .nav-logo-cn {
    background: linear-gradient(120deg, #fff 0%, #fff 50%, var(--copper) 50%, var(--copper) 100%);
    background-size: 200% 100%;
    background-position: 0% 0%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    transition: background-position .5s cubic-bezier(.6,0,.2,1);
  }
  .nav-logo:hover .nav-logo-cn {
    background-position: -100% 0%;
  }
  .nav-logo-en {
    transition: color .35s, letter-spacing .35s;
  }
  .nav-logo:hover .nav-logo-en {
    color: var(--copper);
    letter-spacing: .18em;
  }
}

/* ===== E · Footer 粒子 canvas ===== */
.footer-particles {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
  opacity: .55;
}
/* footer 內所有實質內容必須在粒子之上 */
footer > *:not(.footer-particles) {
  position: relative;
  z-index: 1;
}

/* ===== Reduced motion 全部關閉 ===== */
@media (prefers-reduced-motion: reduce) {
  .case-img::after,
  .nav-logo-cn,
  .nav-logo-en,
  .footer-particles {
    animation: none !important;
    transition: none !important;
  }
  .footer-particles { display: none; }
}
