.navbar {
  background-color: var(--navbar-bg-color);
  opacity: 0.95;
}

.navbar-toggler {
  width: 35px;
  height: 25px;
  position: relative;
  transition: .5s ease-in-out;
  margin: 0.8rem 0.5rem 0.8rem 0.8rem;
}

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

.navbar-toggler span {
  margin: 0;
  padding: 0;
}

.toggler-icon {
  display: block;
  position: absolute;
  height: 3px;
  width: 100%;
  background: whitesmoke;
  border-radius: 1px;
  opacity: 1;
  left: 0;
  transform: rotate(0deg);
  transition: .25s ease-in-out;
}

.middle-bar {
  margin-top: 0;
}

/* When collapsed navbar is clicked. */
.navbar-toggler .top-bar {
  margin-top: 0;
  transform: rotate(135deg);
}

.navbar-toggler .middle-bar {
  opacity: 0;
  filter: alpha(opacity=0);
}

.navbar-toggler .bottom-bar {
  margin-top: 0;
  transform: rotate(-135deg);
}

.navbar-toggler.collapsed .top-bar {
  margin-top: -20px;
  transform: rotate(0deg);
}

.navbar-toggler.collapsed .middle-bar {
  opacity: 1;
  filter: alpha(opacity=100);
}

.navbar-toggler.collapsed .bottom-bar {
  margin-top: 20px;
  transform: rotate(0deg);
}



.nav-icon {
  width: 40px;
  opacity: 1;
}

.nav-item {
  position: relative;
  margin: 0 15px 0 15px;
  padding: 10px 0px 15px 0px;
}

.nav-link {
  font-size: 1.2rem;
  text-transform: uppercase;
  text-decoration: none;
  color: var(--navbar-fg-color);
  opacity: 1;
  padding: 0 !important;
}

.nav-link:hover, .nav-link:active {
  color: var(--navbar-fg-sel-color) !important;
}

.nav-link-active {
  color: var(--navbar-fg-sel-color) !important;
}

@media (min-width: 768px) {
  /* Navbar items must be centered despite the width of the logo */
  .navbar-brand {
    position: absolute;
  }

  .nav-item::after {
    position: absolute;
    bottom: 6px;
    left: 0;
    right: 0;
    margin: 0 auto;
    content: "";
    background-color: var(--navbar-fg-sel-color);
    width: 0%;
    height: 4px;
    transition: all .5s;
    border-radius: 4px;
  }

  .nav-item:hover::after {
    width: 100%;
  }

  .nav-item-active::after {
    width: 100%;
  }
}
