body {
  color: #111111;
}

a {
  color: #0033A0;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

a:hover {
  color: #002D72;
}

.navbar,
.navbar a,
.navbar .navbar-brand,
.navbar .nav-link,
.navbar .dropdown-toggle {
  color: #ffffff !important;
}

.dropdown-menu a {
  color: #111111 !important;
}

.sidebar nav[role="doc-toc"] ul > li > a.active,
.sidebar nav[role="doc-toc"] ul > li > ul > li > a.active {
  color: #0033A0 !important;
  border-left-color: #0033A0 !important;
}

:focus-visible {
  outline: 3px solid #009CDE;
  outline-offset: 2px;
}

details.image-source {
  display: inline-block;
  max-width: 100%;
  margin-top: 0.25rem;
}

details.image-source > summary {
  display: inline-block !important;
  padding: 0 !important;
  margin: 0 !important;
  border: none !important;
  background: transparent !important;
  box-shadow: none !important;
  font-size: 0.8rem !important;
  color: #2b2b2b !important;
  max-width: 100% !important;
  cursor: pointer;
}

details.image-source > *:not(summary) {
  font-size: 0.8rem !important;
  margin-top: 0.4rem !important;
}

.figure-row {
  display: flex;
  gap: 24px;
  justify-content: center;
  align-items: flex-start;
  flex-wrap: wrap;
}

.figure-row .course-figure {
  width: 280px;
  max-width: 100%;
}

.course-figure img {
  width: 100% !important;
  height: 320px !important;
  object-fit: cover !important;
  display: block !important;
}

.figure-row.size-sm .course-figure {
  width: 200px;
}

.figure-row.size-sm .course-figure img {
  height: 220px !important;
}

.figure-row.size-md .course-figure {
  width: 280px;
}

.figure-row.size-md .course-figure img {
  height: 320px !important;
}

.figure-row.size-lg .course-figure {
  width: 320px;
}

.figure-row.size-lg .course-figure img {
  height: 380px !important;
}

.course-figure:has(img.full-img) {
  width: 100% !important;
  max-width: 500px !important;
}

.course-figure img.full-img {
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  display: block !important;
}
