.reviews-static__grid.swiper {
  overflow: hidden; /* чтобы было аккуратно */
  display: block; /* не flex */
}
.menu-backdrop {
  position: fixed;
  inset: 0;
  background: #0b1220;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.32s ease, visibility 0s linear 0.32s;
  z-index: 1000; /* ниже меню и бургера */
}

/* Когда меню открыто — фон появляется и кликается */
body.menu-open .menu-backdrop {
  height: 100vh;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* На всякий — чтобы бургер был поверх всего */
.burger {
  position: relative;
  z-index: 1021;
}

@media (max-width: 1000px) {
  /* Базово скрыто мобильное меню */
  .nav {
    display: none;
  }

  /* Запрещаем прокрутку фона при открытии */
  body.menu-open {
    overflow: hidden;
  }

  /* Поверх оверлея, прозрачный фон — чтобы читался общий #0b1220 */
  body.menu-open .nav {
    display: flex;
    position: fixed;
    inset: 0;
    padding: 88px 24px 28px; /* запас под шапку */
    background: transparent;
    flex-direction: column;
    gap: 18px;
    align-items: flex-start;
    z-index: 1001; /* над оверлеем, под бургером */
    opacity: 1;
    transform: translateY(0);
  }

  /* Анимации появления контейнера меню */
  .nav {
    will-change: opacity, transform;
    opacity: 0;
    transform: translateY(10px);
    transition: opacity 0.28s ease, transform 0.28s ease;
  }
  body.menu-open .nav {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 0.36s ease, transform 0.36s ease;
  }

  /* Стили пунктов меню */
  body.menu-open .nav > li {
    list-style: none;
  }
  body.menu-open .nav a {
    color: var(--main-white, #ffffff);
    font-size: 18px;
    line-height: 1.5;
    text-decoration: none;
  }

  /* Стэггер-анимация пунктов (плавное «всплытие» по очереди) */
  @keyframes menuItemIn {
    from {
      opacity: 0;
      transform: translateY(8px);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  .nav > li {
    opacity: 0;
    transform: translateY(8px);
  }
  body.menu-open .nav > li {
    animation: menuItemIn 0.36s ease forwards;
  }
  body.menu-open .nav > li:nth-child(1) {
    animation-delay: 0.06s;
  }
  body.menu-open .nav > li:nth-child(2) {
    animation-delay: 0.1s;
  }
  body.menu-open .nav > li:nth-child(3) {
    animation-delay: 0.14s;
  }
  body.menu-open .nav > li:nth-child(4) {
    animation-delay: 0.18s;
  }
  body.menu-open .nav > li:nth-child(5) {
    animation-delay: 0.22s;
  }
  body.menu-open .nav > li:nth-child(6) {
    animation-delay: 0.26s;
  }
  body.menu-open .nav > li:nth-child(7) {
    animation-delay: 0.3s;
  }
  body.menu-open .nav > li:nth-child(8) {
    animation-delay: 0.34s;
  }

  /* Тап по пустому месту меню тоже должен работать (кликаем по .menu-backdrop) */
}

/* Уважение к пользователям, отключившим анимации */
@media (prefers-reduced-motion: reduce) {
  .menu-backdrop,
  .nav,
  .nav > li {
    transition: none !important;
    animation: none !important;
  }
}
@media (max-width: 1000px) {
  .metric__list {
    gap: 26px;
  }
  .container {
    margin: 60px auto;
  }
  .container__gray {
    padding: 60px 15px;
  }
  main h2 {
    margin-bottom: 60px;
  }
  .steps__wrapper,
  .plans__grid {
    justify-content: center;
  }
  .hero__description p {
    max-width: 90%;
  }
  .reviews-static__grid {
    gap: 15px;
  }
  .contact-suite__grid {
    grid-template-columns: 1fr;
  }
  .contact-help__grid {
    gap: 50px;
  }
  body.menu-open {
    overflow: hidden;
  }

  body.menu-open .nav {
    display: flex;
    position: fixed;
    inset: 0;
    /* top:0; right:0; bottom:0; left:0 */
    padding: 80px 20px 24px; /* 80px — запас под шапку */
    background: rgba(0, 16, 29, 0.98);
    flex-direction: column;
    gap: 20px;
    align-items: flex-start;
    z-index: 1012; /* ниже бургера (1001 в common.css) */
  }

  body.menu-open .nav > li {
    list-style: none;
  }

  body.menu-open .nav a {
    color: var(--main-white);
    font-size: 18px;
    line-height: 1.4;
    text-decoration: none;
  }
}
@media (max-width: 850px) and (min-width: 800px) {
  .review-card {
    min-height: 324px;
  }
}
@media (max-width: 850px) {
  .plans__grid {
    align-items: center;
  }
}
@media (min-width: 800px) {
  .swiper-wrapper {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
  }
  .swiper-slide {
    width: auto !important;
  }
}
@media (max-width: 800px) {
  .security__visual {
    max-width: 50%;
  }
  .body__btn {
    font-size: 13px;
    padding: 7px 10px;
  }
  .plans__grid {
    align-items: center;
    gap: 64px;
  }
  .mission__grid {
    grid-template-columns: 1fr 1fr;
  }
  .history__column {
    gap: 218px;
  }
  .history__timeline-wrapper {
    gap: 26px;
  }
  .contact-help__grid {
    grid-template-columns: 1fr;
  }
  .calculator__form {
    width: 100%;
  }
  .calculator__result {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 700px) {
  .hero__content {
    flex-direction: column;
    align-items: flex-start;
    gap: 15px;
    margin: 70px auto 0;
  }
  .hero__title {
    text-align: left;
    align-items: start;
    width: 100%;
    margin: 0;
    font-size: 23px;
  }
  .hero__divider {
    width: 70%;
    height: 3px;
  }
  .hero__description,
  .hero__description p {
    width: 100%;
    margin-left: 0;
  }
  .container {
    margin: 40px auto;
  }
  .calculator__duration-options {
    display: grid;
    gap: 10px;
    grid-template-columns: 1fr 1fr;
  }
  .footer__top {
    flex-wrap: wrap;
    gap: 50px;
  }
  .history__column {
    gap: 173px;
  }
  .vision-contacts__row {
    display: flex;
    flex-direction: column-reverse;
  }
}
@media (max-width: 600px) {
  .metric__list {
    grid-template-columns: 1fr 1fr;
  }
  .calculator__form {
    width: 100%;
  }
  .calculator__duration-btn {
    min-width: 101px;
  }
  .calculator__duration-options {
    display: flex;
    flex-wrap: wrap;
  }
  .calculator__result {
    width: 100%;
  }
  .calculator__container {
    gap: 20px;
  }
  .security__content {
    flex-direction: column;
  }
  .security__features {
    width: 100%;
  }
  .security__visual {
    max-width: 100%;
  }
  .nav {
    display: none;
  }
  .burger {
    display: block;
  }
  .header__controls .btn--accent {
    display: none;
  }
  .hero__content {
    margin: 35px auto 0;
  }
  .hero {
    min-height: 509px;
  }
  .hero__background {
    height: 509px;
  }
  .hero__note {
    margin: 30px auto 21px;
  }
  .history__column {
    gap: 103px;
  }
  .team-pro__grid {
    flex-direction: column;
  }
  main h2 {
    margin-bottom: 32px;
  }
}
@media (max-width: 600px) {
  .hero__highlight--large {
    font-size: 31px;
  }
}
