/* Responsive cho trang Khóa học */
@media (max-width: 1024px) {
  .course-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px;
  }
  .course-grid.cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .course-logo {
    width: 120px;
  }
  .course-logo i {
    font-size: 36px;
  }
  .course-desc {
    font-size: 0.925rem;
    -webkit-line-clamp: unset;
    min-height: 0;
  }
}

@media (max-width: 640px) {
  .hero-section {
    padding: 40px 0 20px;
    border-radius: 24px;
  }
  .course-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .course-grid.cols-2 {
    grid-template-columns: 1fr;
  }
  .course-logo {
    width: 108px;
  }
  .course-logo i {
    font-size: 34px;
  }
  .course-info {
    padding: 16px;
  }
  .course-desc {
    font-size: 0.9rem;
    -webkit-line-clamp: unset;
    min-height: 0;
  }

  /* Nhỏ hơn trên mobile */
  .hero-title {
    font-size: clamp(20px, 6.2vw, 24px);
    line-height: 1.25;
    letter-spacing: 0.2px;
  }
  .group-title {
    font-size: clamp(18px, 5vw, 20px);
  }
  .course-title {
    font-size: 14px;
    min-height: calc(1.3em * 2); /* giữ baseline 2 dòng */
  }
  .course-subtitle {
    font-size: 0.85rem;
    min-height: calc(1.35em * 2); /* giữ baseline 2 dòng */
  }
}

/* Tối ưu hơn cho màn rất nhỏ */
@media (max-width: 480px) {
  .hero-title {
    font-size: 1.25rem;
  }
  .group-title {
    font-size: 28px;
  }
  .course-title {
    font-size: 16px;
    min-height: calc(1.3em * 2);
  }
  .course-subtitle {
    font-size: 0.82rem;
    min-height: calc(1.35em * 2);
  }
}
