.navmenu-vertical {
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  width: 96px;
  z-index: 999;
  display: flex;
  align-items: center;
}

.navmenu-vertical ul {
  list-style: none;
  padding: 0;
  margin: 0 auto;
}

.navmenu-vertical a,
.navmenu-vertical a:focus {
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--nav-color);
  width: 58px;
  height: 58px;
  margin-bottom: 14px;
  border-radius: var(--radius-full);
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: none;
  transition: var(--transition-medium);
}

.navmenu-vertical a i,
.navmenu-vertical a:focus i {
  font-size: 22px;
  transition: var(--transition-fast);
}

.navmenu-vertical a:hover:not(.active) {
  color: var(--heading-color);
  border-color: rgba(15, 23, 42, 0.16);
}

.navmenu-vertical a.active {
  background: var(--accent-color) !important;
  color: var(--contrast-color) !important;
  box-shadow: none !important;
  transform: none !important;
}

@media (max-width: 992px) {
  .navmenu-vertical {
    width: 100%;
    height: 78px;
    bottom: 0;
    top: auto;
    padding: 10px 16px;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(14px);
    box-shadow: 0 -8px 24px rgba(15, 23, 42, 0.08);
  }

  .navmenu-vertical ul {
    display: flex;
    width: 100%;
    justify-content: space-between;
  }

  .navmenu-vertical a,
  .navmenu-vertical a:focus {
    width: 48px;
    height: 48px;
    margin-bottom: 0;
    background: rgba(15, 23, 42, 0.03);
    box-shadow: none;
  }

  .navmenu-vertical a.active {
    box-shadow: none !important;
  }
}
