/* Hero stats mobile centering override */
@media (max-width: 1024px) {
  .hero-content .hero-stats .stat-item {
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
  }
  .hero-content .hero-stats .stat-number {
    margin-bottom: 0.25rem !important;
  }
  .hero-content .hero-stats .stat-label {
    margin-left: 0 !important;
    margin-top: 0.35rem !important;
    text-align: center !important;
  }
}

@media (max-width: 480px) {
  .hero-content .hero-stats {
    width: 100% !important;
    max-width: 520px !important;
    margin: 1rem auto !important;
  }
}

/* Mobile center alignment fixes for Portfolio (강사 소개) and Orchestration playlist header */
@media (max-width: 768px) {
  /* Portfolio - 강사 소개 카드 전체 중앙 정렬 */
  .portfolio-section .profile-card {
    justify-items: center !important;
    text-align: center !important;
  }
  .portfolio-section .profile-info,
  .portfolio-section .profile-info h3,
  .portfolio-section .experience-item h4,
  .portfolio-section .experience-item p {
    text-align: center !important;
  }
  .portfolio-section .copyright-stats {
    justify-content: center !important;
  }
  .portfolio-section .stat-badge {
    justify-content: center !important;
    text-align: center !important;
  }
  .portfolio-section .youtube-channel {
    text-align: center !important;
  }
  .portfolio-section .youtube-link {
    margin: 0 auto !important;
    display: inline-flex !important;
  }

  /* Gallery - 오케스트레이션 헤더 텍스트 중앙 정렬 강화 */
  .gallery-section .playlist-header,
  .gallery-section .playlist-info,
  .gallery-section .playlist-info h3,
  .gallery-section .playlist-desc,
  .gallery-section .playlist-detail {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

/* Application > Pricing summary: 모바일에서 가격 텍스트 줄바꿈 방지 */
@media (max-width: 768px) {
  .pricing-summary-price {
    gap: 0.6rem !important;
  }
  .pricing-summary-price .price-label,
  .pricing-summary-price .price-value {
    white-space: nowrap !important;
    word-break: keep-all !important;
    overflow-wrap: normal !important;
    hyphens: none !important;
  }
}

@media (max-width: 768px) {
  /* 그리드 강제 1열 + 넘침 방지 */
  .application-section .pricing-summary {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 1.2rem !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }
  .application-section .pricing-summary-card {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    margin: 0 auto !important;
  }
}

@media (max-width: 480px) {
  .pricing-summary-price {
    padding: 0.9rem !important;
    gap: 0.5rem !important;
  }
  .pricing-summary-price .price-value {
    font-size: 1.6rem !important; /* 박스가 너무 좁은 폰에서 크기 자동 조정 */
  }
}
