/* Отдельный неподвижный слой закрывает белый просвет справа при открытии меню. */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: 900;
  background: rgba(11, 20, 38, 0.16);
  -webkit-backdrop-filter: blur(6px);
  backdrop-filter: blur(6px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  will-change: opacity;
  transition: opacity 460ms cubic-bezier(.22, .72, .22, 1), visibility 0s linear 460ms;
}

body.menu-open::before {
  opacity: 1;
  visibility: visible;
  transition: opacity 460ms cubic-bezier(.22, .72, .22, 1), visibility 0s;
}

body.menu-open #site-menu {
  z-index: 1000 !important;
}

body.menu-open .panel-scrim {
  background: transparent !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

@media (prefers-reduced-motion: reduce) {
  body::before,
  body.menu-open::before {
    transition-duration: .01ms !important;
  }
}

/* Preserve the scrolled page behind the drawer and a viewport-wide exit target. */
body.menu-open { height: auto !important; overflow: visible !important; }
.menu-dismiss { display: none; }
body.menu-open .menu-dismiss {
  display: block; position: fixed; top: 0; right: 0; bottom: 0; left: var(--menu-width); z-index: 950;
  padding: 0; border: 0; border-radius: 0; background: transparent;
  cursor: pointer; touch-action: manipulation;
}
.menu-head { position: relative; }
.drawer-close {
  position: absolute; top: 12px; right: 12px; width: 40px; height: 40px;
  display: grid; place-items: center; font-size: 30px; line-height: 1;
  border-radius: 50%; background: #f7f9fb; color: #1b2334;
}

@media(max-width:740px){body.menu-open .menu-dismiss{left:var(--mobile-menu-width)}}
