@keyframes asideWidth {
  from {
    width: 0px;
    opacity: 0;
  }

  70% {
    opacity: 1;
  }

  to {
    width: 400px;
  }
}

@keyframes asideCloseMob {
  from {
    width: 300px;
  }
  to {
    width: 0;
  }
}
@keyframes asideWidthMob {
  from {
    width: 0px;
    opacity: 0;
  }

  70% {
    opacity: 1;
  }

  to {
    width: 300px;
  }
}

@keyframes asideClose {
  from {
    width: 400px;
  }
  to {
    width: 0;
  }
}

.asideMenu {
  text-wrap: nowrap;
  position: fixed;
  z-index: 1000 !important;
  top: 0;
  left: 0;
  height: 100vh;
  background-color: #ffffff;

  animation-name: asideWidth;
  animation-duration: 0.4s;
  animation-fill-mode: both;
}

.asideMenu.close {
  animation-name: asideClose;
  animation-duration: 0.4s;
  animation-fill-mode: both;
  will-change: width !important; /* Будет изменяться только ширина */
  opacity: 1 !important; /* Убедимся, что при закрытии нет изменений в прозрачности */
}

.aside-container {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.aside-container {
  display: flex;
}

.overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.7); /* Черный фон с прозрачностью */
  z-index: 950; /* Чтобы перекрывал содержимое страницы */
  animation: fadeIn 0.4s ease-in-out;
}

.overlay.close {
  animation: fadeOut 0.4s ease-in-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

#superfish-menyu-v-asayde li a {
  padding-left: 0px;
}

#superfish-menyu-v-asayde > li > a {
  padding-left: 0px;
  width: 150px;
  font-size: 16px;
  color: #000000;
}

#superfish-menyu-v-asayde li {
  max-width: 50%;
  position: relative;
}

#superfish-menyu-v-asayde li a {
  text-decoration: none !important;
}

/* вложенное меню само */
#superfish-menyu-v-asayde li > ul {
  background-color: whitesmoke;
  width: 200px !important;
  border-radius: 2px;
  position: static !important;
  padding-left: 20px;
      outline: 1px solid #04A1E9;
}

#superfish-menyu-v-asayde li ul li ul {
  background-color: whitesmoke;
  width: 120px !important;
  border-radius: 2px;
  left: -60%;
  z-index: 100;
  border-right: 1px solid black;
  border-left: 1px solid black;
}

#superfish-menyu-v-asayde li ul li ul li {
  /* border-left: 1px solid rgba(0, 0, 0, 0.521); */
}

#superfish-menyu-v-asayde li ul .sf-sub-indicator {
}
/* для ли во вложенном меню  */
#superfish-menyu-v-asayde li ul li {
  width: 150px;
  max-width: 150px;
  /* border-bottom: 1px solid black; */
}

#superfish-menyu-v-asayde li ul li:hover {
  background-color: rgb(241, 240, 240);
}

#superfish-menyu-v-asayde li ul li:first-child:hover {
  border-top-left-radius: 2px;
  border-top-right-radius: 2px;
}

#superfish-menyu-v-asayde li ul li:last-child:hover {
  border-bottom-left-radius: 2px;
  border-bottom-right-radius: 2px;
}

#superfish-menyu-v-asayde li ul li:last-child {
  border-bottom: none;
}

/* для а во вложенном меню */
#superfish-menyu-v-asayde li ul li a {
  padding-left: 0px;
  width: 150px;
  font-size: 16px;
  color: #000000;
  width: 100%;
  padding-right: 0px;
}

#superfish-menyu-v-asayde li ul li a:hover {
  color: blue !important;
  opacity: 0.5;
}

#superfish-menyu-v-asayde > li {
  color: #fff;
  text-decoration: none;
  position: relative;
  display: inline-block;
  font-size: 40px;
  height: 100%;
}

#superfish-menyu-v-asayde > li:after {
  content: "";
  display: block;
  position: absolute;
}
#superfish-menyu-v-asayde > li:before {
  content: "";
  display: block;
  position: absolute;
}

#superfish-menyu-v-asayde > li:after {
  transform-origin: right;
  transform: scaleX(0);
  bottom: 0;
  height: 2px;
  width: 100px;
  background-color: #04A1E9;
  transition: transform 0.6s cubic-bezier(0.55, 0, 0.1, 1);
}

#superfish-menyu-v-asayde > li.menuparent::after {
  display: none;
}

#superfish-menyu-v-asayde > li:hover:after {
  transform: scaleX(1);
  transform-origin: left;
  transition: transform 0.6s cubic-bezier(0.55, 0, 0.1, 1);
}

#superfish-menyu-v-asayde {
  display: flex;
  flex-direction: column;
}

/* Когда меню активно, показываем его */
#superfish-menyu-v-asayde.active {
  display: block;
}

/* Убираем эффекты наведения */
#superfish-menyu-v-asayde li:hover {
  background-color: transparent; /* или выбери свой цвет */
}

#superfish-menyu-v-asayde li ul li:hover {
  background-color: transparent;
}

/* Можно также скрыть подменю по умолчанию */
#superfish-menyu-v-asayde li > ul {
  display: none;
  left: 120%;
}

.menu-opened #superfish-menyu-v-asayde li.menuparent a:hover > ul {
  display: none !important;
}

#superfish-menyu-v-asayde li a.menuparent::after {
  content: url("/sites/all/themes/vesta_theme/icons/arrowMenu.svg") !important;
  position: relative;
  top: -3px;
  left: 10px;
}

.aside_tel {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: 15px;
  font-family: "Manrope";
  color: #ffffff;
  font-weight: 500;
}

.aside_tel span {
  color: #04A1E9;
}

.aside_tel a {
  text-decoration: none !important;
  color: #000000 !important;
}

.aside_tel a:hover {
  text-decoration: underline !important;
  opacity: 1 !important;
}

.aside_mail {
  display: flex;
  flex-direction: column;
  gap: 10px;
  font-size: 15px;
  font-family: "Manrope";
  color: #ffffff;
  font-weight: 500;
}

.aside_mail span {
  color: #04A1E9;
}

.aside_mail a {
  text-decoration: none !important;
  color: #000000 !important;
}

.aside_mail a:hover {
  text-decoration: underline !important;
}

@media (max-width: 400px) {
  .asideMenu {
    animation-name: asideWidthMob;
    animation-duration: 0.4s;
    animation-fill-mode: both;
  }

  .asideMenu.close {
    animation-name: asideCloseMob;
    animation-duration: 0.4s;
    animation-fill-mode: both;
    will-change: width !important; /* Будет изменяться только ширина */
    opacity: 1 !important; /* Убедимся, что при закрытии нет изменений в прозрачности */
  }

  .aside__logo .logo {
    padding-top: 11px;
  }
}
@media (max-width: 991px) {
  .aside__logo .logo {
    font-size: clamp(1.125rem, 0.989rem + 0.68vw, 1.5rem);
    padding-top: 14px;
    font-family: "inter";
    color: #000000 !important;
    width: 100%;
    border-bottom: 2px solid #04A1E9;
    text-wrap: nowrap;
  }

  .aside__logo .logo:hover {
    opacity: 0.7 !important;
  }
}
