/* CS bundles only: approved shared course style, no global changes. */
.fc-cs-program .fc-course-hero h1 small { display:block; font-size:.66em; margin-top:8px; color:#D2D7E3; }
.fc-cs-program .fc-cs-courses { list-style:none; padding:0; margin:0; }
.fc-cs-program .fc-cs-courses > li { display:grid; grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:36px; align-items:center; padding:32px 0; border-top:1px solid var(--line); }
.fc-cs-program .fc-cs-course-cover { border-radius:12px; border:1px solid var(--line); overflow:hidden; }
.fc-cs-program .fc-cs-course-cover img { width:100%; aspect-ratio:16/9; object-fit:contain; background:var(--paper); }
.fc-cs-program .fc-cs-courses h3 a { color:var(--ink); }
.fc-cs-program .fc-cs-courses .font-md { margin:12px 0; }
.fc-cs-program .fc-cs-courses .fc-detail-text-link { display:inline-block; margin-top:14px; }
.fc-cs-program .fc-cs-language { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; padding:28px; border:1px solid var(--line); border-radius:12px; margin-top:24px; }
.fc-cs-program .fc-cs-language h3 { font-size:21px; margin-bottom:8px; }
.fc-cs-program .fc-cs-curriculum-jump { display:flex; gap:16px; flex-wrap:wrap; justify-content:center; padding:12px 0 24px; }
.fc-cs-program .fc-cs-curriculum-jump a { color:#1243A6; padding:8px 14px; border:1px solid var(--line); border-radius:8px; }
.fc-cs-program .fc-cs-curriculum-title { border-bottom:1px solid var(--line); padding:32px 0 24px; }
.fc-cs-program .fc-cs-curriculum-title .font-sm { margin-top:10px; }
.fc-cs-program .fc-curriculum + .fc-curriculum { margin-top:48px; }
.fc-cs-program .fc-curriculum { scroll-margin-top:130px; }
.fc-cs-program h4.fc-cur-heading { margin:0; color:var(--ink); }
.fc-cs-program .fc-course-video-play { left:auto; right:12px; bottom:12px; transform:none; }
@media (max-width:768px) {
    .fc-cs-program .fc-cs-courses > li { grid-template-columns:minmax(0,1fr); gap:22px; }
    .fc-cs-program .fc-cs-course-cover { max-width:540px; width:100%; margin-inline:auto; }
    .fc-cs-program .fc-cs-language { padding:22px; }
}
@media (max-width:480px) {
    .fc-cs-program .fc-cs-language .fc-detail-button { width:100%; }
}
