/* Shared course introductions; text comes from localization management. */
.nv-course-intro { max-width:1000px; margin:0 0 32px; color:#344b55; font-size:16px; line-height:1.9; text-align:left; overflow-wrap:anywhere; }
.tutorCourseList h2.tutorCourseListTitle { font-size:22px; font-weight:700; line-height:1.5; margin:30px 0 20px; }
.tutorCourseItem_1 h2.nv-package-title { font:inherit; margin:0; color:inherit; }
.onlineCourseArea .title h3.nv-course-name { margin:0; font-size:20px; font-weight:500; line-height:1.4; }
@media(max-width:768px){.nv-course-intro{font-size:14px;line-height:1.8;margin-bottom:24px}.tutorCourseList h2.tutorCourseListTitle{font-size:19px}.onlineCourseArea .title h3.nv-course-name{font-size:16px}}

.courseItem .nv-course-name .subtitle { display:block; }
/* Mobile navigation has its own flex order; keep the intro below its H1. */
@media(max-width:768px){.TitleWrapper>.nv-course-intro{order:3}}

/* Course titles must grow with translations instead of overlapping metadata or controls. */
.courseItem h3.nv-course-name { font-weight:500; }
.onlineList .onlineItem .onlineCourseArea > .title,
.kidsCoursePage .onlineList .kidsOnlineItem .title {
  display:block;
  height:auto;
  min-height:0;
  margin:10px 0 8px;
  overflow:visible;
  flex-shrink:0;
}
.onlineList .onlineCourseArea h3.nv-course-name {
  font-weight:500;
  overflow-wrap:anywhere;
}
