
/* Reveal */
.reveal {opacity: 0;transform: translateY(40px);transition: .8s;}
.reveal.active {opacity: 1;transform: translateY(0);}

.hero-copy h1 {
  opacity: 0;
  transform: translateY(24px);
  animation: fadeUp 0.9s ease forwards;
}

.hero .header-sub {
  opacity: 0;
  transform: translateY(24px);
  animation: fadeUp 0.9s ease forwards;
  animation-delay: 0.25s;
}

.course-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.course-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 14px 36px rgba(21, 48, 96, 0.14);
}

@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* 首圖背景慢慢放大 */
.hero {
  animation: heroZoom 12s ease-out forwards;
}

@keyframes heroZoom {
  from {
    background-size: 100%;
  }
  to {
    background-size: 106%;
  }
}

/* 首圖文字進場 */
.hero-copy h1 {
  opacity: 0;
  transform: translateY(24px);
  animation: fadeUp 0.9s ease forwards;
}

/* 首圖白色文字框延遲進場 */
.hero .header-sub {
  opacity: 0;
  transform: translateY(24px);
  animation: fadeUp 0.9s ease forwards;
  animation-delay: 0.25s;
}

@keyframes fadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}