
/* wa-guard: подменю */
/* Вложенные уровни меню скрыты по умолчанию: у восстановленных сайтов CSS,
   который их прятал, обычно утрачен, и мега-меню закрывает страницу целиком. */
nav li ul,
header li ul,
.nav li ul,
.navigation li ul,
.menu li ul,
.main-menu li ul,
.site-nav li ul,
.navbar li ul,
.top-menu li ul,
.mega-menu li ul,
#nav li ul,
#menu li ul,
#navigation li ul,
#main-menu li ul,
#site-nav li ul,
.dropdown li ul,
.has-dropdown li ul {
  display: none;
}
nav li,
header li,
.nav li,
.navigation li,
.menu li,
.main-menu li,
.site-nav li,
.navbar li,
.top-menu li,
.mega-menu li,
#nav li,
#menu li,
#navigation li,
#main-menu li,
#site-nav li,
.dropdown li,
.has-dropdown li {
  position: relative;
}
/* Раскрытие по наведению и с клавиатуры. */
nav li:hover > ul,
nav li:focus-within > ul,
header li:hover > ul,
header li:focus-within > ul,
.nav li:hover > ul,
.nav li:focus-within > ul,
.navigation li:hover > ul,
.navigation li:focus-within > ul,
.menu li:hover > ul,
.menu li:focus-within > ul,
.main-menu li:hover > ul,
.main-menu li:focus-within > ul,
.site-nav li:hover > ul,
.site-nav li:focus-within > ul,
.navbar li:hover > ul,
.navbar li:focus-within > ul,
.top-menu li:hover > ul,
.top-menu li:focus-within > ul,
.mega-menu li:hover > ul,
.mega-menu li:focus-within > ul,
#nav li:hover > ul,
#nav li:focus-within > ul,
#menu li:hover > ul,
#menu li:focus-within > ul,
#navigation li:hover > ul,
#navigation li:focus-within > ul,
#main-menu li:hover > ul,
#main-menu li:focus-within > ul,
#site-nav li:hover > ul,
#site-nav li:focus-within > ul,
.dropdown li:hover > ul,
.dropdown li:focus-within > ul,
.has-dropdown li:hover > ul,
.has-dropdown li:focus-within > ul {
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 50;
  min-width: 200px;
  padding: 8px 0;
  margin: 0;
  list-style: none;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 6px;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.14);
}
/* Третий уровень раскрывается вбок, а не поверх второго. */
nav li li:hover > ul,
nav li li:focus-within > ul,
header li li:hover > ul,
header li li:focus-within > ul,
.nav li li:hover > ul,
.nav li li:focus-within > ul,
.navigation li li:hover > ul,
.navigation li li:focus-within > ul,
.menu li li:hover > ul,
.menu li li:focus-within > ul,
.main-menu li li:hover > ul,
.main-menu li li:focus-within > ul,
.site-nav li li:hover > ul,
.site-nav li li:focus-within > ul,
.navbar li li:hover > ul,
.navbar li li:focus-within > ul,
.top-menu li li:hover > ul,
.top-menu li li:focus-within > ul,
.mega-menu li li:hover > ul,
.mega-menu li li:focus-within > ul,
#nav li li:hover > ul,
#nav li li:focus-within > ul,
#menu li li:hover > ul,
#menu li li:focus-within > ul,
#navigation li li:hover > ul,
#navigation li li:focus-within > ul,
#main-menu li li:hover > ul,
#main-menu li li:focus-within > ul,
#site-nav li li:hover > ul,
#site-nav li li:focus-within > ul,
.dropdown li li:hover > ul,
.dropdown li li:focus-within > ul,
.has-dropdown li li:hover > ul,
.has-dropdown li li:focus-within > ul {
  top: 0;
  left: 100%;
}
/* Пункты меню не должны слипаться: это самый заметный дефект восстановления. */
nav li > a,
header li > a,
.nav li > a,
.navigation li > a,
.menu li > a,
.main-menu li > a,
.site-nav li > a,
.navbar li > a,
.top-menu li > a,
.mega-menu li > a,
#nav li > a,
#menu li > a,
#navigation li > a,
#main-menu li > a,
#site-nav li > a,
.dropdown li > a,
.has-dropdown li > a {
  display: inline-block;
  padding: 8px 14px;
  text-decoration: none;
}
nav ul,
header ul,
.nav ul,
.navigation ul,
.menu ul,
.main-menu ul,
.site-nav ul,
.navbar ul,
.top-menu ul,
.mega-menu ul,
#nav ul,
#menu ul,
#navigation ul,
#main-menu ul,
#site-nav ul,
.dropdown ul,
.has-dropdown ul {
  list-style: none;
}
/* Ничто из навигации не должно перекрывать содержимое страницы при загрузке. */
nav ul ul,
header ul ul,
.nav ul ul,
.navigation ul ul,
.menu ul ul,
.main-menu ul ul,
.site-nav ul ul,
.navbar ul ul,
.top-menu ul ul,
.mega-menu ul ul,
#nav ul ul,
#menu ul ul,
#navigation ul ul,
#main-menu ul ul,
#site-nav ul ul,
.dropdown ul ul,
.has-dropdown ul ul {
  max-height: 70vh;
  overflow-y: auto;
}
/* Встройки с жёсткой шириной (YouTube width=1280) рвут экран на любом
   устройстве — боевой случай /blog/ run4peace: вылет 125px на десктопе. */
iframe, embed, object {
  max-width: 100%;
}
/* Мобильная страховка: у шаблонов до эпохи media-правил картинки и таблицы
   рвут узкий экран, а фикс-ширины уводят вёрстку за край. */
@media (max-width: 600px) {
  img, video, iframe { max-width: 100%; height: auto; }
  table { display: block; width: 100%; max-width: 100%; overflow-x: auto; }
  pre { white-space: pre-wrap; word-break: break-word; }
}

/* wa-guard: раскладка меню */
nav > ul,
:not(li) > ul[id*="menu"],
:not(li) > ul[class*="menu"]:not([class*="sub"]),
div[class*="menu"] > ul,
div[class*="nav"] > ul {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  list-style: none;
  margin: 0;
  padding: 0;
}
nav > ul > li,
:not(li) > ul[id*="menu"] > li,
:not(li) > ul[class*="menu"]:not([class*="sub"]) > li,
div[class*="menu"] > ul > li,
div[class*="nav"] > ul > li {
  list-style: none;
  margin: 0;
  width: auto;
  position: relative;
}
nav > ul > li > a,
:not(li) > ul[id*="menu"] > li > a,
:not(li) > ul[class*="menu"]:not([class*="sub"]) > li > a,
div[class*="menu"] > ul > li > a,
div[class*="nav"] > ul > li > a {
  display: inline-block;
  padding: 8px 14px;
  text-decoration: none;
  white-space: nowrap;
}
/* Капшены мёртвого RevSlider: без плагина это белые заголовки-призраки
   прямо в body (боевой случай /join-the-relay/ run4peace). На вычищенных
   «начисто» страницах плагин заведомо мёртв — прячем целиком. */
.tp-caption, .tp-banner, .tp-banner-container, .rev_slider_wrapper, .tp-bannertimer {
  display: none !important;
}
/* Инлайновый белый текст рассчитан на тёмный фон или фото, которых больше
   нет, — на светлой теме это невидимые строки. Перебиваем атрибутом; контент
   Фабрики внутри .wa-embed не трогаем — там свои инлайновые переменные. */
[style*="color: #fff"]:not(.wa-embed *),
[style*="color:#fff"]:not(.wa-embed *),
[style*="color: #FFF"]:not(.wa-embed *),
[style*="color:#FFF"]:not(.wa-embed *),
[style*="color: rgb(255, 255, 255)"]:not(.wa-embed *),
[style*="color: white"]:not(.wa-embed *),
[style*="color:white"]:not(.wa-embed *) {
  color: #333 !important;
}
/* Подменю у WP-шаблонов зовутся fusion-dropdown-menu и т.п. — токенные
   селекторы предохранителя (.dropdown, .menu) в них не попадают. */
nav > ul li ul,
:not(li) > ul[id*="menu"] li ul,
:not(li) > ul[class*="menu"]:not([class*="sub"]) li ul,
div[class*="menu"] > ul li ul,
div[class*="nav"] > ul li ul {
  display: none;
}
nav > ul li:hover > ul,
nav > ul li:focus-within > ul,
:not(li) > ul[id*="menu"] li:hover > ul,
:not(li) > ul[id*="menu"] li:focus-within > ul,
:not(li) > ul[class*="menu"]:not([class*="sub"]) li:hover > ul,
:not(li) > ul[class*="menu"]:not([class*="sub"]) li:focus-within > ul,
div[class*="menu"] > ul li:hover > ul,
div[class*="menu"] > ul li:focus-within > ul,
div[class*="nav"] > ul li:hover > ul,
div[class*="nav"] > ul li:focus-within > ul {
  display: block;
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 50;
  min-width: 200px;
  padding: 8px 0;
  margin: 0;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.12);
  border-radius: 6px;
  box-shadow: 0 10px 28px rgba(0, 0, 0, 0.14);
}
