body.overflow-hidden {
  overflow: hidden;
}

#side-menu {
  display: none;
  position: fixed;
  min-width: 100%;
  width: 100%;
  max-width: 100%;
  top: 0;
  bottom: 0;
  right: -100%;
  height: 100vh!important;
  z-index: 500;
  background: #fff;
  color: white;
  background-color: var(--bgcolor-footer);
  transition: 0.4s;
  letter-spacing: .2rem;
}

body.side-menu-visible #side-menu {
  transform: translateX(-100%);
}

#side-menu .contents {
  margin-top: 15px;
}

@media (min-width: 300px) {
  #side-menu .nav-link {
    color: white;
    font-size: 22px;
    font-weight: 600;
    padding: 12px 0;
    text-align: center;
    text-transform: uppercase;
    max-width: 100vw;
  }
}

#side-menu .nav-link:hover {
  opacity: .8;
  cursor: pointer!important;
}

#side-menu .close {
  display: block;
  font-size: 40px;
  font-weight: 200!important;
  padding-top: 20px;
  padding-left: 20px;
  color: white;
  font-weight: 200;
}

.side-menu-overlay {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,.4);
  z-index: 100;
  display: none;
}

.navbar-toggler {
  position: absolute;
  top: 50px;
  right: 40px;
}

.navbar-toggler, .navbar-toggler-icon {
  outline: none!important;
  border: none!important;
  color: var(--color-primary)!important;
  box-shadow: none!important;
}

.close {
  background-color: var(--bgcolor-footer);
  border: none;
  margin-top: -20px;
  cursor: pointer;
  color: var(--color-primary);
}

.navbar {
  text-transform: uppercase;
  font-size: .8rem;
}

.last-nav-item {
  margin-right: 0!important;
}

@media (min-width: 1200px) {
  .nav-item {
    margin-right: 1rem;
  }
}

@media (max-width: 991px) {
  a.nav-link {
    font-size: 1.2rem!important;
    border-color: white!important;
  }
}

