:root, [data-bs-theme=light] {
  --bs-success: #198754;
  --bs-success-rgb: 25,135,84;
  --bs-success-text-emphasis: #0A3622;
  --bs-success-bg-subtle: #D1E7DD;
  --bs-success-border-subtle: #A3CFBB;
}

html {
  scroll-behavior: smooth;
}

.menu-toggle {
  position: fixed !important;
  z-index: 2147483647 !important;
}

.scroll-to-top {
  position: fixed;
  right: 1rem;
  bottom: calc(1rem + env(safe-area-inset-bottom));
  display: none;
  width: 2.75rem;
  height: 2.75rem;
  line-height: 2.75rem;
  text-align: center;
  color: #fff;
  background: rgba(33, 37, 41, 0.72);
  z-index: 2147483645;
  touch-action: manipulation;
}

.scroll-to-top:hover,
.scroll-to-top:focus {
  color: #fff;
  background: rgba(33, 37, 41, 0.9);
}

#sidebar-wrapper {
  position: fixed !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
  width: 250px !important;
  height: 100vh !important;
  overflow-y: auto;
  background: #1d809f !important;
  transform: translateX(100%) !important;
  z-index: 2147483646 !important;
}

#sidebar-wrapper.active {
  right: 0 !important;
  transform: translateX(0) !important;
  z-index: 2147483646 !important;
}

#sidebar-wrapper .container,
#sidebar-nav {
  position: relative;
  z-index: 1 !important;
}

.masthead,
#download {
  z-index: 0;
}

.masthead .container,
.masthead-feather,
#download .content-section-heading,
#download .download-content,
.download-feather {
  z-index: 1 !important;
}

.masthead {
  position: relative;
  overflow: hidden;
  justify-content: center;
  align-items: center;
}

.masthead-feather {
  position: absolute;
  top: auto !important;
  bottom: calc(50% - 8rem) !important;
  left: 50%;
  width: clamp(260px, 54vw, 600px);
  height: auto;
  z-index: 3;
  transform: translateX(calc(-100% - 2rem));
  pointer-events: none;
}

.masthead .container {
  position: relative;
  z-index: 2;
  flex: 0 0 auto;
}

.download-feather {
  position: absolute;
  top: 0.25rem;
  left: 50%;
  width: clamp(220px, 34vw, 420px);
  height: auto;
  z-index: 3;
  transform: translate(calc(-100% - 2rem), 0);
  pointer-events: none;
}

#download .content-section-heading {
  position: relative;
  z-index: 2;
}

#download .download-content {
  position: relative;
}

.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #157347;
  --bs-btn-hover-border-color: #146C43;
  --bs-btn-focus-shadow-rgb: 221,237,229;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #146C43;
  --bs-btn-active-border-color: #13653F;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #198754;
  --bs-btn-disabled-border-color: #198754;
}

.btn-outline-success {
  --bs-btn-color: #198754;
  --bs-btn-border-color: #198754;
  --bs-btn-focus-shadow-rgb: 25,135,84;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #198754;
  --bs-btn-hover-border-color: #198754;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #198754;
  --bs-btn-active-border-color: #198754;
  --bs-btn-disabled-color: #198754;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #198754;
}

.portfolio-item .caption {
  background-color: rgba(29, 128, 159, 0.28);
  transition: background-color 0.25s ease-out;
}

.portfolio-item {
  cursor: pointer;
}

.portfolio-item .caption .caption-content {
  transition: color 0.25s ease-out;
}

@media (min-width: 992px) {
  .portfolio-item img,
  .portfolio-item:hover img {
    clip-path: inset(0);
  }

  .portfolio-item:hover .caption {
    background-color: rgba(29, 128, 159, 0);
    clip-path: inset(0);
  }

  .portfolio-item:hover .caption .caption-content {
    color: #212529;
  }
}
