/* --- Course menu: CSS-only sticky & mobile-friendly --- */
.course-menu.hidden-xs,
.course-menu.hidden-sm { display:block !important; } /* override old Bootstrap hides */

.course-menu{
  position: sticky;
  top: 0;
  z-index: 1000;
  background: #fff;
  border-bottom: 1px solid #e5e7eb;
}
.course-menu .course-menu-link ul{
  display: flex;
  gap: .5rem;
  overflow-x: auto;
  white-space: nowrap;
  margin: 0;
  padding: 0;
  list-style: none;
}
.course-menu .course-menu-link a{
  display: inline-block;
  padding: .5rem .75rem;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  text-decoration: none;
  font-weight: 600;
}

/* Two-column buttons on phones, no horizontal scroll */
@media (max-width: 767px){
  .course-menu .course-menu-link ul{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .5rem;
    overflow: visible;
    white-space: normal;
  }
  .course-menu .course-menu-link a{
    display: block;
    text-align: center;
  }
}

/* Anchor offset so headings aren't hidden by sticky bar */
[id]{ scroll-margin-top: 80px; }