html { scroll-behavior: smooth; }

.course-site-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(250, 246, 252, .97);
  border-bottom: 1px solid #e4d7e9;
  backdrop-filter: blur(14px);
  font-family: Lato, Arial, sans-serif;
}

.course-site-header__inner {
  width: min(1180px, calc(100% - 32px));
  min-height: 72px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  gap: 22px;
}

.course-site-brand {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #170721;
  text-decoration: none;
  font-weight: 900;
  white-space: nowrap;
}

.course-site-brand img {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  object-fit: cover;
}

.course-site-brand small {
  display: block;
  color: #7a6880;
  font-size: .68rem;
  font-weight: 700;
  letter-spacing: .04em;
}

.course-site-nav {
  margin-left: auto;
  display: flex;
  align-items: center;
  gap: 4px;
}

.course-site-nav a {
  padding: 9px 11px;
  border-radius: 999px;
  color: #1a0a24;
  text-decoration: none;
  font-size: .87rem;
  font-weight: 800;
}

.course-site-nav a:hover,
.course-site-nav a[aria-current="page"] {
  background: #eee0f6;
  color: #792bb7;
}

.course-site-credit {
  padding: 7px 11px;
  border-radius: 999px;
  background: #251033;
  color: #fff;
  font-size: .76rem;
  font-weight: 800;
  white-space: nowrap;
}

.mm {
  --emt-286: #792bb7;
  --emt-285: #b044d6;
  --emt-logo: #8b35c8;
  --emt-deep: #210833;
  --emt-sky: #f2e6fa;
  --ink: #1a0a24;
  --ink-2: #5f5268;
  --muted: #74677b;
  --line: #e2d5e8;
  --bg: #fbf8fc;
  --focus: 0 0 0 3px #fff, 0 0 0 6px #b044d6;
  background: linear-gradient(180deg, #f4eafb 0, #fcf9fd 320px);
}

.mm-top { top: 72px; }
.mm-bar { top: 131px; }
.mm-hero {
  background: radial-gradient(circle at 85% 20%, #b044d6 0, transparent 45%),
              linear-gradient(135deg, #210833, #792bb7);
}

.mm-flip,
.mm-scr,
.mm-nc,
.mm-tabpane,
.mm-bin,
.mm-more2,
.mm-h { overflow-wrap: anywhere; }

.mm-more2 { background: #fdfaff; border-color: #cfb3dc; }
.mm-bin:hover,
.mm-bin.is-target { background: #fbf4ff; }
.kx-item[aria-pressed="true"] { box-shadow: 0 6px 14px rgba(121, 43, 183, .25); }
.ia-brand { background: #792bb7 !important; }
.mm-voice button { color: #210833 !important; border-color: #e2d5e8 !important; }
.mm-voice button:hover { background: #f2e6fa !important; border-color: #b88acb !important; }
.mm-voice button:focus-visible { outline-color: rgba(176, 68, 214, .32) !important; }
.mm-foot { color: #74677b; }
.mm-foot img { background: #210833; }
.mm-scr { box-shadow: 0 10px 30px rgba(33, 8, 51, .09); }

@media (max-width: 1040px) {
  .course-site-credit { display: none; }
  .course-site-nav a { padding: 8px 9px; font-size: .82rem; }
}

@media (max-width: 820px) {
  .course-site-header__inner { min-height: 64px; gap: 10px; }
  .course-site-brand span { display: none; }
  .course-site-brand img { width: 42px; height: 42px; }
  .course-site-nav { overflow-x: auto; scrollbar-width: none; }
  .course-site-nav::-webkit-scrollbar { display: none; }
  .course-site-nav a { white-space: nowrap; }
  .mm-top { top: 64px; }
  .mm-bar { top: 119px; }
}

@media (max-width: 560px) {
  .course-site-header__inner { width: min(100% - 18px, 1180px); }
  .course-site-nav a { padding: 7px 8px; font-size: .78rem; }
  .course-site-nav a:not([aria-current="page"]):nth-child(-n+4) { display: none; }
  .mm-scr { padding: 20px 16px; }
  .mm-main { padding-left: 12px; padding-right: 12px; }
  .mm-hero { min-height: 0; }
}
