.navbar-toggler-icon {
  background-image: none!important;
  background-color: var(--bs-gray-800);
  height: 3px;
  width: 25px;
  margin: 10px 0;
  position: relative;
  transition: all 0.35s ease-out;
  transform-origin: center;
}

.navbar-toggler-icon::before {
  display: block;
  background-color: var(--bs-gray-800);
  height: 3px;
  content: "";
  position: relative;
  top: -7px;
  transition: all 0.15s ease-out;
  transform-origin: center;
}

.navbar-toggler-icon::after {
  display: block;
  background-color: var(--bs-gray-800);
  height: 3px;
  content: "";
  position: relative;
  top: 4px;
  transition: all 0.35s ease-out;
  transform-origin: center;
}

.navbar-dark .navbar-toggler-icon, .navbar-dark .navbar-toggler-icon::before, .navbar-dark .navbar-toggler-icon::after {
  background-color: var(--bs-gray-100);
}

.navbar-toggler:not(.collapsed) .navbar-toggler-icon {
  transform: rotate(45deg);
}

.navbar-toggler:not(.collapsed) .navbar-toggler-icon::before {
  opacity: 0;
}

.navbar-toggler:not(.collapsed) .navbar-toggler-icon::after {
  transform: rotate(-90deg) translateX(7px);
}

.navbar-collapse {
  --navbar-height: 56px;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  transition: all 320ms ease-in-out;
}

/* Mobile / Tablet */

@media (max-width: 1199.98px) {
  .navbar-collapse {
    height: calc(100vh - var(--navbar-height));
  }
}

/* Desktop */

@media (min-width: 1200px) {
  .navbar-expand-xl .navbar-collapse {
    display: flex !important;
    height: auto;
    flex-direction: row;
    justify-content: flex-end;
  }
}

@media (min-width: 1200px) {
  .navbar-expand-xl .navbar-nav {
    flex-direction: row;
    align-items: center;
  }
}

@media (min-width: 1200px) {
  .navbar-expand-xl .navbar-toggler {
    display: none;
  }
}

.collapsing {
  transition-property: height, visibility;
  transition-duration: 0s;
}

.navbar-toggler, .navbar-toggler:active, .navbar-toggler:focus {
  box-shadow: none;
  border: none;
  outline: none;
}

