.sidebar {
  position: fixed;
  top: var(--height-header);
  left: 0;
  right: 0;
  background-color: var(--color-primary-dark-transparent);
  z-index: 100;
  opacity: 0.0;
  transition: all 0.2s ease-in-out;
}
.sidebar.active {
  bottom: 0;
  opacity: 1.0;
  transition: all 0.2s ease-in-out;
}

.sidebar .sidebar__menu {
  position: fixed;
  width: 60rem;
  height: 100%;
  top: var(--height-header);
  right: -100%;
  background-color: var(--color-white);
  padding: 1rem 0 0 5rem;
  transition: right 0.5s ease-in;
  box-sizing: border-box;
  -webkit-transition-timing-function: cubic-bezier(0.405, 0.850, 0.660, 1); /* older webkit */
  -webkit-transition-timing-function: cubic-bezier(0.37, 1.18, 0.75, 1.15); 
  -moz-transition-timing-function: cubic-bezier(0.37, 1.18, 0.75, 1.15); 
  -o-transition-timing-function: cubic-bezier(0.37, 1.18, 0.75, 1.15); 
  transition-timing-function: cubic-bezier(0.37, 1.18, 0.75, 1.15); /* custom */
}
.sidebar.active .sidebar__menu {
  right: -12rem;
  transition: right 0.5s ease-in;
  -webkit-transition-timing-function: cubic-bezier(0.405, 0.850, 0.660, 1); /* older webkit */
  -webkit-transition-timing-function: cubic-bezier(0.37, 1.18, 0.75, 1.15); 
  -moz-transition-timing-function: cubic-bezier(0.37, 1.18, 0.75, 1.15); 
  -o-transition-timing-function: cubic-bezier(0.37, 1.18, 0.75, 1.15); 
  transition-timing-function: cubic-bezier(0.37, 1.18, 0.75, 1.15); /* custom */
}


.sidebar__menu ul {
  padding: 0;
}

.sidebar__menu ul a li {
  border-bottom: 2px solid var(--color-primary-light-transparent);
  min-height: 4rem;
  font-family: var(--header-font);
  list-style-type: none;
  padding-left: 3rem;
  font-size: var(--text-larger);
  color: var(--color-primary);
  text-decoration: none;
  margin-bottom: 1.5rem;
  padding-bottom: 0.5rem;
  font-weight: 600;
}

.breakpoint-mobile-only .sidebar__menu ul a li { 
  font-size: 2rem;
}
.sidebar__menu ul a:hover,
.sidebar__menu ul a:active,
.sidebar__menu ul a:hover li, 
.sidebar__menu ul a:active li {
  color: var(--color-primary-light);
  text-decoration: none;
}
  .sidebar__menu ul a li.description img {
    height: 17px;
  }
  .sidebar__menu ul a li.description span {
    display: block;
    font-size: var(--text-body);
    color: var(--color-primary-light);
    margin-left: 2.8rem;
  }

.sidebar__menu img {
  margin-top: -4px;
  margin-right: 10px;
  height: 15px;
}

.breakpoint-mobile-only .sidebar,
.breakpoint-tablet-portrait .sidebar {
  top: 83px;
}
  .breakpoint-mobile-only .sidebar {
    right: -2rem;
  }

.breakpoint-mobile-only .sidebar .sidebar__menu,
.breakpoint-tablet-portrait .sidebar .sidebar__menu {
  width: 100%;
  padding-left: 0;
  padding-top: 5rem;
}
    .breakpoint-mobile-only .sidebar.active .sidebar__menu {
      right: -2rem;
    }
    .path-frontpage  .sidebar .sidebar__menu {
        top: 10.3rem;
    }

.breakpoint-mobile-only .sidebar .sidebar__menu ul a li.description span,
.breakpoint-tablet-portrait .sidebar .sidebar__menu ul a li.description span {
  font-size: var(--text-small);
}