/* mnav.css: мобильное меню (гамбургер). Действует только если mnav.js поставил html.mnav-on и только на ширине <=700px.
   Без JS и на десктопе сайт выглядит как раньше. Существующие CSS не изменены. */
.navtoggle { display: none; }
@media (max-width: 700px) {
  html.mnav-on body .top .navtoggle {
    display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; order: 1; margin-left: auto;
    width: 46px; height: 46px; padding: 0; border: 1px solid var(--bd, #dbe3f0); border-radius: 12px;
    background: #fff; color: var(--tx, #0f172a); cursor: pointer; -webkit-tap-highlight-color: transparent;
  }
  html.mnav-on body .top .navtoggle:focus-visible { outline: 3px solid rgba(37, 99, 235, .45); outline-offset: 2px; }
  html.mnav-on .navtoggle .bars { position: relative; display: block; width: 22px; height: 2px; border-radius: 2px; background: currentColor; transition: background .15s; }
  html.mnav-on .navtoggle .bars:before, html.mnav-on .navtoggle .bars:after {
    content: ""; position: absolute; left: 0; display: block; width: 22px; height: 2px; border-radius: 2px; background: currentColor; transition: transform .2s, top .2s;
  }
  html.mnav-on .navtoggle .bars:before { top: -7px; }
  html.mnav-on .navtoggle .bars:after { top: 7px; }
  html.mnav-on .top.nav-open .navtoggle .bars { background: transparent; }
  html.mnav-on .top.nav-open .navtoggle .bars:before { top: 0; transform: rotate(45deg); }
  html.mnav-on .top.nav-open .navtoggle .bars:after { top: 0; transform: rotate(-45deg); }

  /* меню закрыто: прячем основную навигацию (в style.min.css у неё display:flex!important) */
  html.mnav-on body .top nav { display: none !important; }
  /* меню открыто: вертикальный список под строкой с логотипом, кнопки шапки ниже */
  html.mnav-on body .top.nav-open nav {
    display: flex !important; flex-direction: column; align-items: stretch; flex: 0 0 100%; order: 2;
    gap: 2px; width: 100%; margin: 6px 0 4px; padding: 6px 0 8px; border-top: 1px solid var(--bd, #dbe3f0);
  }
  html.mnav-on body .top.nav-open .right, html.mnav-on body .top.nav-open .right.has-auth { order: 3; }
  html.mnav-on body .top nav > a, html.mnav-on body .top .dd > button {
    width: 100%; min-height: 48px; box-sizing: border-box; justify-content: flex-start; text-align: left; white-space: normal; padding: 12px 14px;
  }
  /* «Послуги»: раскрывается по тапу внутри списка, а не всплывает поверх страницы */
  html.mnav-on body .top .dd { position: static; }
  html.mnav-on body .top .menu {
    position: static; display: none; width: auto; min-width: 0; max-width: none; margin: 2px 0 4px 10px; padding: 4px 0 4px 8px;
    border: 0; border-left: 3px solid var(--vi, #7c4dff); border-radius: 0; box-shadow: none; background: transparent;
  }
  html.mnav-on body .top .menu:before { display: none; }
  html.mnav-on body .top .dd:hover .menu, html.mnav-on body .top .dd:focus-within .menu { display: none; }
  html.mnav-on body .top .dd.open .menu { display: block; }
  html.mnav-on body .top .menu a { padding: 11px 12px; font-size: 16px; }
}