.container-flex.pb-4 {
  padding-bottom: 0 !important;
}
.hero {
  border-radius: 0;
}
.hero.bg-image-dimmed::before {
  background-color: #00000000 !important;
  background-image: linear-gradient(
    to bottom,
    rgba(0, 0, 0, 0.6) 20%,
    rgba(0, 0, 0, 0) 60%
  ) !important;
}

.sidebar-wrap {
  position: absolute;
  top: 200px;
  left: 0rem;
  max-width: 800px;
  z-index: 2;
}
#sidebar-preview,
#sidebar-content {
  background: #f3e4d2ff;
  border-top-right-radius: 5rem;
  border-bottom-right-radius: 5rem;
}

#sidebar-preview {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: 180px;
}
#sidebar-preview h1,
#sidebar-preview h2,
#sidebar-preview h3,
#sidebar-preview h4,
#sidebar-preview h5,
#sidebar-preview h6,
#sidebar-preview .h1,
#sidebar-preview .h2,
#sidebar-preview .h3,
#sidebar-preview .h4,
#sidebar-preview .h5,
#sidebar-preview .h6 {
  writing-mode: vertical-rl;
  transform: rotate(180deg);
  margin: 0;
}
#sidebar-content {
  position: relative;
  padding-left: 180px;
}
#sidebar-preview.is-hidden {
  visibility: hidden;
}
#sidebar-content.is-hidden {
  visibility: hidden;
}
/* Sidebar toggle buttons */
.show_content,
.hide_content {
  cursor: pointer;
  user-select: none;
  transition: opacity 0.2s ease;
}
.show_content:hover,
.hide_content:hover {
  opacity: 0.7;
}
.show_content:focus,
.hide_content:focus {
  outline: 2px solid #000;
  outline-offset: 2px;
  opacity: 0.7;
}
/* Convert whiteout logos to black */
.logo-invert-black {
  filter: invert(1);
}
.markdown-body > * {
  margin-top: 0.5rem !important;
}
.markdown-body > h1,
.markdown-body > h2,
.markdown-body > h3,
.markdown-body > h4,
.markdown-body > h5,
.markdown-body > h6,
.markdown-body > p {
  margin-top: 1rem !important;
}

/* Make background image blocks clickable and positionable for overlay trigger */
.bg-image {
  position: relative;
}
.image-clickable {
  position: absolute;
  inset: 0;
  z-index: 3;
  background: transparent;
  border: 0;
  cursor: zoom-in;
}

/* Full screen image overlay */
#image-overlay {
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}
#image-overlay.open {
  display: flex;
}
.image-overlay-backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  cursor: pointer;
}
.image-overlay-content {
  position: relative;
  max-width: 92%;
  max-height: 92%;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
}
.image-overlay-img-wrapper {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 90vh;
  max-height: 90vh;
  overflow-y: hidden;
}
.image-overlay-img {
  max-width: 100%;
  max-height: 100%;
  border-radius: 0.5rem;
  box-shadow: 0 8px 30px rgba(0, 0, 0, 0.6);
  object-fit: contain;
}
.image-overlay-close,
.image-overlay-prev,
.image-overlay-next {
  position: absolute;
  background: #f3e4d2ff;
  border: 0;
  padding: 0.75rem 1rem;
  border-radius: 999px;
  cursor: pointer;
  z-index: 3;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
}
.image-overlay-close {
  top: 1rem;
  right: 1rem;
  width: 3rem;
  height: 3rem;
}
.image-overlay-close .material-symbols-outlined {
  color: #000;
}
.image-overlay-prev,
.image-overlay-next {
  top: 50%;
  transform: translateY(-50%);
  width: 3rem;
  height: 3rem;
}
.image-overlay-prev {
  left: 1rem;
}
.image-overlay-next {
  right: 1rem;
}
.image-overlay-prev .material-symbols-outlined,
.image-overlay-next .material-symbols-outlined {
  font-size: 2rem;
  color: #000;
}
