/* Quiz Mafia Event — покраска поверх словаря Русстана. Сетку не ломаем. */
@import url("/fonts/quizmafia.css");

:root{
  --accent: #FF1F2A;
  --accent-hover: #D40000;
  --accent-soft: rgba(255,31,42,.10);
  --accent-line: rgba(255,31,42,.28);
  --red: #FF1F2A;
  --navy: #111111;
  --media-scrim: 18, 12, 12;
  --font-display: "Oswald", sans-serif;
  /* 2026-09-09: --font-body и --font-mono раньше не были перекрашены — оставались
     Montserrat/JetBrains Mono из russtan-design-code.css (--font-primary и
     --font-heading уже были в порядке: первая ссылается на --font-body, вторая уже
     ссылалась на --font-display). Из-за этого любой элемент словаря, который читает
     var(--font-body)/var(--font-mono) — даже случайно, как .mega__col-head сегодня
     утром — получал чужой шрифт. Ссылаемся на --font-display, а не дублируем
     значение: если он ещё сменится, эти два не разъедутся с ним сами по себе. */
  --font-body: var(--font-display);
  --font-mono: var(--font-display);
}

.h1,.h2,.card__title,.section-head .h2,.s-hero .h1{
  font-family: var(--font-display);
  letter-spacing: .02em;
  text-transform: uppercase;
}

/* Тёмная шапка (2026-09-05, правки Harper по черновику Романа): чёрный
   прямоугольник во всю ширину — как на Русстане/Антикторге (не капсула),
   белое лого, «Игры» — мега на 3 колонки, остальные группы — обычный список.
   Тёмные выпадающие панели, крупнее шрифт пунктов меню. */
/* main.css:1090 — заглушка-пример на голом .nav (position:sticky;z-index:1000)
   случайно ловит наш <nav class="nav qme-nav">, из-за чего мега-меню/дропдауны
   (position:absolute внутри) позиционируются от узкого <nav>, а не от шапки —
   первая колонка мега залипает к границе nav, а не контейнера. Сбрасываем. */
.qme-header .nav{position:static;top:auto;z-index:auto}
/* .nav сам не растягивается на всю высоту шапки (align-items:center у родителя
   .site-header__bar даёт nav только высоту содержимого, ~36px по центру 84px
   шапки) — .has-drop{align-self:stretch} тянется на эти 36px, а не на 84px
   шапки. .nav-drop{top:var(--header-h)} тогда меряет 84px от середины шапки,
   а не от низа — визуально зазор ~15-24px, дропдаун "убегает" при наведении
   мышью вниз (дыра в hover-зоне). Тянем сам nav на всю высоту — тот же приём,
   что уже есть у .has-mega по комментарию в styles.css ("без мёртвой зоны"). */
.qme-header .nav{align-self:stretch}
/* russtan-design-code.css: «.site-header .nav > .nav__link:not(.nav__link--has-mega)
   {display:none}» — правило для русстановской шапки (там плоские ссылки дублируют
   мегаменю), случайно ловит наш общий .nav__link и прячет «Цены»/«Фото и видео»/
   «Контакты». Возвращаем показ для нашей шапки. */
.qme-header .nav > .nav__link:not(.nav__link--has-mega){display:inline-flex}
/* Тот же блок russtan-design-code.css («Палитра: не раздувать шапку» — стенд-
   превью, не боевая шапка) следующей строкой держит
   «.site-header .header-actions .burger{display:flex}» БЕЗ media-запроса —
   бургер поэтому виден всегда, даже на широком десктопе рядом с полным меню,
   хотя обычная @media(max-width:1150px) в styles.css и так уже умеет
   показывать бургер только когда .nav скрыт. Тот же источник, что и пункт
   выше — просто не долистал этот блок файла до конца при первом фиксе.
   Возвращаем «бургер только когда меню скрыто» — обнуляем принудительный
   flex именно на широких экранах, не трогая узкие (там правило нужно). */
@media(min-width:1151px){
  .qme-header .header-actions .burger{display:none}
}

.qme-header{
  position:fixed;top:0;left:0;right:0;width:100%;z-index:40;
  border-radius:0;
  background:#000;
  border:0;
  border-bottom:1px solid rgba(255,255,255,.1);
  box-shadow:0 4px 20px rgba(0,0,0,.25);
}
.qme-header .container{max-width:1400px;padding:0 30px}
@media(max-width:767px){.qme-header .container{padding:0 12px}}

.qme-header .logo__img{height:48px;width:auto}
/* На ширине с бургером 36px было меньше иконок MAX/TG (40px) — логотип
   терялся. Занимаем почти всю высоту шапки, ширину режем по свободной
   полосе слева от иконок, чтобы на 390px не выталкивать бургер.
   2026-09-09 (жалоба «логотип мелковат»): натуральное соотношение
   лого-файла ~4.36:1 (994×228) — на мобильной ширине картинка упирается
   в доступную ШИРИНУ, а не в max-height (реальная высота заметно ниже
   потолка). Донабрали немного ширины из отступов контейнера и зазоров
   в шапке; тап-зоны иконок/бургера (40/44px) не трогали. */
@media(max-width:1150px){
  .qme-header .site-header__bar{gap:6px}
  .qme-header .header-actions{gap:6px}
  .qme-header .logo{flex:1 1 auto;min-width:0}
  .qme-header .logo__img{
    height:auto;
    width:auto;
    max-height:calc(var(--header-h) - 6px);
    max-width:100%;
    object-fit:contain;
    object-position:left center;
  }
}

.qme-nav{gap:13px}
.qme-nav .nav__link,.qme-nav .nav__link--has-mega{
  background:none;border:0;cursor:pointer;
  font:600 14px var(--font-display);letter-spacing:.02em;text-transform:uppercase;color:#fff;
  text-decoration:none;
}
/* «Авторские игры / шоу-форматы»: две заданные строки без «/» и стрелка
   по центру блока. Раньше max-width:150px + white-space:normal рвали
   подпись как «АВТОРСКИЕ ИГРЫ /» + «ШОУ-ФОРМАТЫ» со caret на второй
   строке. Короткие пункты остаются в одну строку. */
.qme-nav .nav__link--has-mega{
  display:inline-flex;
  align-items:center;
  gap:6px;
  max-width:none;
  white-space:normal;
  text-align:left;
  line-height:1.15;
}
.qme-nav .nav__link-text{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.qme-nav .nav__link-line{white-space:nowrap}
/* a:hover движка (vendors_base Bootstrap) даёт text-decoration:underline с более высоким
   приоритетом, чем базовый .nav__link{text-decoration:none} — обгоняем явным :hover-правилом. */
.qme-nav .nav__link:hover,.qme-nav .nav__link.is-active{color:var(--accent);text-decoration:none}
.qme-nav .nav__caret{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E")}
.qme-drop{min-width:280px;padding:8px}
.qme-drop .mega__link{padding:10px 12px}

/* «Игры» — широкая мега-панель в 3 равные колонки (без промо-карточки —
   та колонка используется другими сайтами движка, тут просто 3 группы) */
.qme-mega-3col{grid-template-columns:repeat(3,1fr)}
/* 2026-09-09 (аудит «шрифты по всему сайту»): .mega__col-head в общем
   styles.css задан на var(--font-mono) — русстановский приём (заголовки
   колонок мега-меню моноширинным шрифтом), у нас --font-mono нигде не
   переопределён, поэтому колонки «Игры» («Хиты»/«Квизы»/«Другие форматы»)
   рендерились JetBrains Mono — на сайте без единого другого моно-элемента
   это читалось как сломанный шрифт. Красим под свой язык, как и остальной
   мега-блок ниже. */
.qme-header .mega__col-head{font-family:var(--font-display)}
/* .mega__inner в styles.css не имеет горизонтальных паддингов (там мега всегда
   внутри позиционируется от <nav>, а не во всю ширину шапки) — после сброса
   .nav{position:sticky} мега теперь во всю ширину шапки и колонки липнут к
   краю окна. Выравниваем по тому же контейнеру, что и сама шапка. */
.qme-header .mega__inner{max-width:1400px;margin:0 auto;padding-left:30px;padding-right:30px}
@media(max-width:767px){.qme-header .mega__inner{padding-left:16px;padding-right:16px}}

/* Тёмные выпадающие панели (обычный дропдаун и мега «Игры») в тон шапке.
   Оригинал (Bitrix) везде рисует кнопки/карточки с rounded-0 — острые углы,
   без скруглений. .nav-drop тянет border-radius:var(--radius-md) из общего
   styles.css (русстановский стиль, там скругления — часть языка). Обнуляем
   для нашей шапки, чтобы не выбиваться из общей квадратной стилистики сайта. */
.qme-header .nav-drop,.qme-header .mega{
  /* Прозрачнее — просьба владельца 12.09.2026. Было .98, стало .82;
     размытие подложки держит текст читаемым поверх контента страницы. */
  background:rgba(14,14,16,.82);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  border-color:rgba(255,255,255,.12);
  border-radius:0;
  /* standalone .mega/.nav-drop transition'ит visibility 250ms; пока панель
     hidden, first.focus() после ArrowDown молча не срабатывает. */
  transition:opacity .25s var(--ease-out,ease),transform .3s var(--ease-premium,ease);
}
.qme-header .mega__link,.qme-header .nav-drop .mega__link{border-radius:0}
/* Узкий дропдаун (ШОУ/УСЛУГИ/КОРПОРАТИВЫ): панель сама выровнена по левому краю
   пункта меню (.has-drop), но у неё padding:10px + у .mega__link padding-left:12px
   — текст внутри панели визуально уезжает на ~20px правее слова-триггера сверху.
   Сдвигаем панель на ту же величину влево, чтобы текст совпал с триггером. */
.qme-header .nav-drop{left:-20px}
.qme-header .mega__link{color:#fff;font:500 15px var(--font-display);letter-spacing:.02em;text-transform:uppercase;text-decoration:none}
.qme-header .mega__link:hover,.qme-header .mega__link:focus-visible,.qme-header .mega__link.is-active{
  background:rgba(255,255,255,.08);color:var(--accent);text-decoration:none;
}
/* Клавиатура: открытие через is-open (Enter/Space/ArrowDown в qme-nav.js).
   :focus-within нельзя — Escape с фокусом на триггере снова открыл бы панель. */
.qme-header .has-drop.is-open .nav-drop,
.qme-header .has-mega.is-open .mega{
  opacity:1;visibility:visible;transform:translateY(0);
}
.qme-header .has-drop.is-open .nav__caret,
.qme-header .has-mega.is-open .nav__caret{
  transform:rotate(180deg);opacity:1;
}
.qme-header .nav__link:focus-visible{
  outline:2px solid #fff;
  outline-offset:4px;
}
.qme-header .mega__link:focus-visible{
  outline:2px solid #fff;
  outline-offset:2px;
}

.qme-actions{gap:10px}
.qme-phone{
  font:700 16px var(--font-display);
  color:#fff;text-decoration:none;white-space:nowrap;
}
.qme-phone:hover{color:var(--accent);text-decoration:none}

.qme-header .header-social{width:40px;height:40px}
.qme-header .burger{background:transparent;border-color:rgba(255,255,255,.25)}
.qme-header .burger span{background:#fff}

.landing-main{padding-top:var(--header-h)}
.page .page__content{padding-top:var(--header-h)}

/* main.css:.overlay{z-index:100} — тот же общий класс, что у модалок движка
   (#modalOverlay), совпадает по z-index с .drawer{z-index:100} из styles.css.
   При равном z-index побеждает порядок в DOM/стекинг-контекст, а не то, что
   нам надо визуально — дровер оказывался под затемнением. Даём дроверу явный
   запас, чтобы больше никогда не зависеть от того, кто во что уткнётся. */
#mobileDrawer{z-index:1000}

/* Мобильный дровер: группы аккордеоном */
.qme-drawer{
  --text:#fff;
  --text-muted:rgba(255,255,255,.7);
  --border:rgba(255,255,255,.16);
  --border-2:rgba(255,255,255,.3);
  background:#0a0a0a;
  color:#fff;
}
.qme-drawer details{border-bottom:1px solid var(--border)}
.qme-drawer summary{
  list-style:none;cursor:pointer;font:700 16px var(--font-display);
  text-transform:uppercase;letter-spacing:.04em;padding:14px 0;
}
.qme-drawer summary::-webkit-details-marker{display:none}
.qme-drawer details a{
  display:block;padding:10px 0 10px 8px;color:var(--text);text-decoration:none;
  font:500 15px var(--font-display);text-transform:uppercase;letter-spacing:.02em;
}
.qme-drawer details a:hover,.qme-drawer details a.is-active{color:var(--accent)}
.qme-drawer__links a{
  display:block;padding:14px 0;font:700 16px var(--font-display);
  text-transform:uppercase;text-decoration:none;color:var(--text);
  border-bottom:1px solid var(--border);
}

.qme-footer{grid-template-columns:1.5fr repeat(4,minmax(0,1fr)) minmax(160px,.85fr)}
@media(max-width:1150px){
  .qme-phone{display:none}
}
@media(max-width:1023px){
  .qme-footer{grid-template-columns:1fr 1fr}
}
@media(max-width:639px){
  .qme-footer{grid-template-columns:1fr}
}

/* Подвал (2026-09-07): раньше .footer- и .qme-footer ехали на голых классах
   словаря движка без единой своей покраски — отсюда мелкий логотип,
   невыделенный телефон и незаметная ссылка на политику. Палитра/шрифты —
   те же переменные, что и в остальном qme-*: --accent, Oswald для акцентов. */
.site-footer{background:#0a0a0a;border-top:1px solid rgba(255,255,255,.08)}
.site-footer .container{padding-top:56px}
.footer-col--brand{padding-right:24px}
.qme-footer__logo{display:inline-block;margin-bottom:18px;max-width:100%}
.qme-footer__logo .logo__img{width:100%;max-width:230px;height:auto}
.qme-footer__blurb{font-size:15px;line-height:1.6;max-width:320px;margin:0 0 20px;color:rgba(255,255,255,.6)}
.footer-socials{display:flex;gap:10px;margin-bottom:22px}
.footer-social{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.06);color:#fff;transition:background .15s linear,color .15s linear}
.footer-social:hover{background:var(--accent)}
.qme-footer__qr{display:flex;gap:14px}
.qme-footer__qr-item{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none}
.qme-footer__qr-item img{width:72px;height:72px;border-radius:8px;background:#fff;padding:4px;display:block}
.qme-footer__qr-item span{font:600 11px var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.55)}
.qme-footer__qr-item:hover span{color:var(--accent)}

.footer-col h4{font:700 14px var(--font-display);letter-spacing:.05em;text-transform:uppercase;color:#fff;margin:0 0 16px}
.footer-links{display:flex;flex-direction:column;gap:10px}
.footer-links a{font-size:14px;line-height:1.4;color:rgba(255,255,255,.65);text-decoration:none;transition:color .15s linear}
.footer-links a:hover{color:var(--accent)}

.qme-footer .footer-phone{display:inline-block;font:700 24px var(--font-display);letter-spacing:.01em;color:#fff;text-decoration:none;margin-bottom:12px;transition:color .15s linear}
.qme-footer .footer-phone:hover{color:var(--accent)}
.footer-address{display:flex;align-items:flex-start;gap:8px;font-size:14px;line-height:1.5;color:rgba(255,255,255,.6);margin:0 0 10px}
.footer-address svg{flex:0 0 auto;margin-top:2px;color:var(--accent)}
.qme-footer__regions{margin:0 0 16px}
.qme-footer__regions a{font-size:13px;color:rgba(255,255,255,.55);text-decoration:underline;text-underline-offset:2px}
.qme-footer__regions a:hover{color:var(--accent)}

.qme-footer__legal{margin-top:44px;padding:22px 0;border-top:1px solid rgba(255,255,255,.08)}
.qme-footer__legal p{margin:0;font-family:"Oswald",sans-serif;font-size:12px;line-height:1.7;text-align:center;color:rgba(255,255,255,.35)}

.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;padding:20px 0 32px;font-size:13px;color:rgba(255,255,255,.45)}
.qme-footer__bottom-links a{color:rgba(255,255,255,.45);text-decoration:underline;text-underline-offset:2px}
.qme-footer__bottom-links a:hover{color:var(--accent)}

@media(max-width:639px){
  .footer-col--brand{padding-right:0}
  .qme-footer__qr{justify-content:center}
  .footer-socials{justify-content:center}
  .footer-col{text-align:center}
  .footer-address{justify-content:center}
  .footer-bottom{justify-content:center;text-align:center}
}

/* Фото в наборах — кадр на ширину карточки, не иконка 52px */
.s-cards__item .card__ic:has(.ph--img){
  width:100%;
  height:auto;
  aspect-ratio:4/3;
  border-radius:var(--radius-md);
  overflow:hidden;
  background:var(--cream);
  color:inherit;
}
.s-cards__item .card__ic:has(.ph--img) .ph--img{
  width:100%;
  height:100%;
  display:block;
  background-size:cover !important;
  background-position:center;
  border:0;
}
.s-cards__item:hover .card__ic:has(.ph--img),
.s-cards__item:focus-within .card__ic:has(.ph--img){
  transform:none;
  background:var(--cream);
  color:inherit;
}

/* Цена как акцент. «Читать далее» на коротких карточках не показываем. */
.s-cards__item .badge{font:700 18px var(--font-display);letter-spacing:.02em}
.s-cards__item .spoiler__toggle{display:none}
.s-cards__item .spoiler__body{
  -webkit-line-clamp:unset;
  display:block;
  overflow:visible;
}

.blokbaza-intro-wrap,.stand-toc,.stand-head,.blokbaza-slot > .container:has(.stand-head){display:none}
.blokbaza-slot{display:contents}

/* Осиротевшая последняя строка карточных рядов (2026-09-05): у Bitrix-блоков
   ширина колонки на md и на lg подбиралась отдельно и невпопад — 16 логотипов
   клиентов по 3 в ряд на md дают одинокую 1 внизу, ряды ведущих/тарифов режутся
   2+1 вместо 3. Сама сетка/раскладка блока не трогаем (правило проекта) —
   только центрируем то, что не долетело до полного ряда. Не влияет на полностью
   заполненные ряды: justify-content там нечего перераспределять. :has(> :nth-child(3))
   ограничивает эффект рядами от 3 карточек — не трогает намеренно
   асимметричные 1-2-колоночные блоки (текст+фото и т.п.). */
.landing-block-inner.row:has(> :nth-child(3)),
.landing-block-inner-container.row:has(> :nth-child(3)){justify-content:center}

/* Тарифные карточки (2026-09-05, по правке Harper).
   1) В паре (Премиум/Детская) разная высота, а даже когда высоту сравняли —
      кнопка всё равно не на одном уровне: колонка растянута (align-items:stretch
      у Bootstrap-строки по умолчанию), но <article> внутри не подхватывает
      высоту родителя, а плюс к этому кнопка просто идёт следом за текстом,
      а не прибита к низу. Растягиваем article, делаем сам блок карточки
      flex-колонкой на всю высоту и прибиваем кнопку вниз margin-top:auto —
      теперь кнопки на одном уровне независимо от длины списка условий. */
.landing-block-card{display:flex}
.landing-block-card > article{width:100%}
.block-11-three-cols-fix-tariffs .landing-block-card-container{
  display:flex;flex-direction:column;height:100%;
}
.block-11-three-cols-fix-tariffs .landing-block-node-price-container{
  margin-top:auto !important;
}

/* 2) На узких экранах тройка тарифов (col-lg-4) не вмещается по ширине
   красиво — на десктопе (992px+, ~380px на карточку) всё нормально, трогаем
   только то, что ниже. Разворачиваем карточку в горизонтальную полосу.
   Раньше здесь стоял flex-wrap + order — в реальном окне (не ровно 768, а,
   например, ~990px) título+цена+кнопка не всегда помещались в одну строку,
   и кнопка с margin-left:auto, перенесённая на пустую вторую строку одна,
   зависала непонятно где. Grid с именованными областями не зависит от того,
   уместилось ли всё в одну строку — кнопка всегда в своей ячейке. */
@media (max-width: 991px){
  .block-11-three-cols-fix-tariffs .landing-block-card[class*="col-lg-4"]{
    flex:0 0 100%;max-width:100%;
  }
  .block-11-three-cols-fix-tariffs .landing-block-card[class*="col-lg-4"] .landing-block-card-container{
    display:grid;
    grid-template-columns:auto auto 1fr;
    grid-template-areas:"title price ." "button button button" "list list list";
    align-items:center;
    column-gap:16px;
    row-gap:10px;
    text-align:left;
    padding:16px 20px;
  }
  .block-11-three-cols-fix-tariffs .landing-block-card[class*="col-lg-4"] .landing-block-node-title{
    grid-area:title;margin:0 !important;
  }
  .block-11-three-cols-fix-tariffs .landing-block-card[class*="col-lg-4"] .landing-block-card-container > hr{
    display:none;
  }
  .block-11-three-cols-fix-tariffs .landing-block-card[class*="col-lg-4"] .g-color-primary{
    grid-area:price;margin:0 !important;display:flex;align-items:baseline;gap:8px;
  }
  .block-11-three-cols-fix-tariffs .landing-block-card[class*="col-lg-4"] .landing-block-node-price-text:empty{
    display:none;
  }
  .block-11-three-cols-fix-tariffs .landing-block-card[class*="col-lg-4"] .landing-block-node-price-list{
    grid-area:list;
    margin:0 !important;
    display:flex;
    flex-wrap:wrap;
    gap:6px 18px;
  }
  .block-11-three-cols-fix-tariffs .landing-block-card[class*="col-lg-4"] .landing-block-node-price-list-item{
    border:0 !important;padding:0 !important;flex:0 0 auto;
  }
  .block-11-three-cols-fix-tariffs .landing-block-card[class*="col-lg-4"] .landing-block-node-price-container{
    grid-area:button;margin:0 !important;justify-self:start;
  }
}
@media (max-width: 480px){
  /* Слишком узко даже для "заголовок + цена" в одной строке — цена рвётся
     на две строки в сжатой колонке (то же, что было раньше с кнопкой).
     Ниже 480px title и price тоже переезжают каждый на свою строку. */
  .block-11-three-cols-fix-tariffs .landing-block-card[class*="col-lg-4"] .landing-block-card-container{
    grid-template-columns:1fr;
    grid-template-areas:"title" "price" "button" "list";
    justify-items:start;
  }
}

/* ==================== QME polish 2026-09-08 — grok-1 (шапка/дровер/FAB) ====================
   Дописано интегратором в конец файла: селекторы специфичнее и идут позже
   правил выше (строки ~20-179), футер (grok-3) ниже не задевают. */

/* QME polish grok-1 — только шапка / .qme-nav / .qme-drawer / .fab / #backToTop.
   Футер (.qme-footer, .site-footer) сюда не входит — зона grok-3.
   Куда вклеить: см. OUTPUT/README.md. */

/* Длинный пункт: две nowrap-строки, caret вертикально по центру блока,
   не после последнего слова. max-width больше не режем — ширина = длинная
   строка + стрелка, короткие пункты не раздуваются. */
.qme-header .qme-nav .nav__link--has-mega{
  display:inline-flex;
  align-items:center;
  gap:6px;
  max-width:none;
  width:auto;
  white-space:normal;
  text-align:left;
  line-height:1.15;
  justify-content:unset;
  flex:0 0 auto;
}
.qme-header .qme-nav .has-mega,
.qme-header .qme-nav .has-drop{
  flex:0 0 auto;
}
.qme-header .qme-nav .nav__link-text{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.qme-header .qme-nav .nav__link-line{white-space:nowrap}
.qme-header .qme-nav .nav__caret{
  display:block;
  margin-left:0;
  flex:0 0 auto;
  align-self:center;
}

/* п.4. Крестик дровера в своей полосе над списком, не position:absolute
   поверх первого summary. Стрелка только у <details> групп. */
.qme-drawer__head{
  display:flex;
  /* 11.09.2026, п.14: слева логотип, справа крестик (был один крестик
     по правому краю). */
  justify-content:space-between;
  gap:12px;
  align-items:center;
  min-height:44px;
  margin:0 0 4px;
}
.qme-drawer .drawer__close{
  position:static;
  flex:0 0 auto;
  background:transparent;
  color:#fff;
}
.qme-drawer summary{
  list-style:none;
  cursor:pointer;
  font:700 16px var(--font-display);
  text-transform:uppercase;
  letter-spacing:.04em;
  padding:14px 0;
  display:flex;
  align-items:center;
  gap:6px;
}
.qme-drawer summary .nav__link-text{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
}
.qme-drawer summary .nav__link-line{white-space:nowrap}
.qme-drawer summary::-webkit-details-marker{display:none}
.qme-drawer summary .nav__caret{
  display:inline-block;
  width:11px;
  height:11px;
  margin-left:6px;
  vertical-align:-0.05em;
  flex:0 0 auto;
  background:center/11px 11px no-repeat url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 4.5 6 7.5 9 4.5'/%3E%3C/svg%3E");
  transform-origin:50% 50%;
  transition:transform .28s cubic-bezier(.34,1.56,.64,1);
  opacity:.75;
}
.qme-drawer details[open] > summary .nav__caret{
  transform:rotate(180deg);
  opacity:1;
}

/* п.11. FAB QME: Telegram / MAX / телефон + backToTop на одной оси right.
   Не переписываем styles.css / mods.css — только перекрываем для страниц
   с .qme-header. russtan .fab__btn{display:inline-flex} держал .fab__toggle
   видимым на десктопе (четвёртая «чат»-кнопка). */
/* 2026-09-08 (правка владельца): вернули стрелку «наверх» слева от стопки
   соцсетей/телефона (было так до правки grok-1) — не под стопкой. row-reverse
   кладёт первый DOM-элемент (.fab, стопка) у правого края (right:8px), второй
   (#backToTop) — слева от него; align-items:flex-end держит оба на одной
   нижней линии вместо общего bottom на каждом по отдельности. */
body:has(.qme-header) .qme-float{
  --qme-fab-size:50px;
  --qme-fab-gap:12px;
  position:fixed;
  right:8px;
  bottom:24px;
  z-index:1090;
  display:flex;
  flex-direction:row-reverse;
  align-items:flex-end;
  gap:var(--qme-fab-gap);
  pointer-events:none;
}
body:has(.qme-header) .qme-float .fab,
body:has(.qme-header) .qme-float .fab__btn,
body:has(.qme-header) .qme-float .fab__item,
body:has(.qme-header) .qme-float .back-to-top.is-visible{
  pointer-events:auto;
}
body:has(.qme-header) .qme-float .fab{
  position:relative;
  right:auto;
  bottom:auto;
  z-index:auto;
  display:flex;
  flex-direction:column-reverse;
  align-items:center;
  gap:var(--qme-fab-gap);
}
body:has(.qme-header) .qme-float .fab__btn,
body:has(.qme-header) .qme-float .back-to-top{
  width:var(--qme-fab-size);
  height:var(--qme-fab-size);
  box-sizing:border-box;
  border-radius:50%;
}
body:has(.qme-header) .qme-float .fab__btn svg,
body:has(.qme-header) .qme-float .back-to-top svg{
  width:22px;
  height:22px;
}
body:has(.qme-header) .qme-float .fab__btn--max svg{
  width:22px;
  height:22px;
}
body:has(.qme-header) .qme-float .fab__btn--phone,
body:has(.qme-header) .qme-float .fab__toggle{
  background:#FF1F2A;
  color:#fff;
}
body:has(.qme-header) .qme-float .fab__btn--phone::after{
  border-color:#FF1F2A;
}
body:has(.qme-header) .qme-float .fab__btn--tg{background:#229ED9}
body:has(.qme-header) .qme-float .fab__btn--max{
  background:linear-gradient(135deg,#44ccff 0%,#5533ee 66%,#9933dd 100%);
  overflow:hidden;
}
body:has(.qme-header) .qme-float .fab__toggle{display:none}
body:has(.qme-header) .qme-float .back-to-top,
body:has(.qme-header) .qme-float #backToTop.back-to-top{
  position:static;
  right:auto;
  bottom:auto;
  width:var(--qme-fab-size);
  height:var(--qme-fab-size);
  background:#111;
  color:#fff;
  transform:none;
}
body:has(.qme-header) .qme-float .back-to-top.is-visible,
body:has(.qme-header) .qme-float .back-to-top:hover,
body:has(.qme-header) .qme-float .back-to-top:focus-visible{
  transform:none;
}
body:has(.qme-header) .qme-float .back-to-top:not(.is-visible){
  position:absolute;
  width:0;
  height:0;
  overflow:hidden;
  border:0;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
body:has(.qme-header) .qme-float .back-to-top.is-visible.fab-open{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
}
body.cookie-consent-open:has(.qme-header) .qme-float{
  bottom:calc(24px + var(--cookie-consent-h,0px));
}
@media(max-width:767px){
  body:has(.qme-header) .qme-float{
    --qme-fab-gap:10px;
    bottom:16px;
  }
  body:has(.qme-header) .qme-float .fab__toggle{display:flex}
  body:has(.qme-header) .qme-float .fab > .fab__item,
  body:has(.qme-header) .qme-float .fab > .fab__btn:not(.fab__toggle){display:none}
  body:has(.qme-header) .qme-float .fab.is-open > .fab__item{display:flex}
  body:has(.qme-header) .qme-float .fab.is-open > .fab__btn:not(.fab__toggle){display:flex}
  body:has(.qme-header) .qme-float .fab.is-open .fab__toggle .fab__ic-open{display:none}
  body:has(.qme-header) .qme-float .fab.is-open .fab__toggle .fab__ic-close{display:block}
  body.cookie-consent-open:has(.qme-header) .qme-float{
    bottom:calc(16px + var(--cookie-consent-h,0px));
  }
}

/* ==================== QME polish 2026-09-08 — grok-3 (футер) ====================
   Дописано интегратором в конец файла, после блока grok-1. Специфичнее
   старого footer-блока (строки ~181-238 выше) через .site-footer — бьёт его
   по каскаду без удаления. */

/* QME polish grok-3: только подвал. Специфичность с .site-footer бьёт
   словарь .footer-grid на 4/2 колонки старого блока выше. */

.site-footer{
  background:#0a0a0a;
  border-top:1px solid rgba(255,255,255,.08);
}
.site-footer .container{padding-top:56px}

.site-footer .qme-footer,
.site-footer .footer-grid.qme-footer{
  display:grid;
  grid-template-columns:minmax(220px,1.05fr) minmax(0,3.2fr) minmax(210px,.95fr);
  grid-template-areas:"brand nav contacts";
  gap:32px 24px;
  align-items:start;
  padding-bottom:40px;
  border-bottom:1px solid rgba(255,255,255,.12);
}
.site-footer .footer-col--brand{grid-area:brand;padding-right:12px;min-width:0}
.site-footer .qme-footer__nav{grid-area:nav;min-width:0}
.site-footer .footer-col--contacts{grid-area:contacts;min-width:0}

.site-footer .qme-footer__nav{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1.7fr);
  gap:28px 20px;
}
.site-footer .qme-footer__nav-stack{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:28px 20px;
  min-width:0;
}

.site-footer .qme-footer__logo{display:inline-block;margin-bottom:18px;max-width:100%}
.site-footer .qme-footer__logo .logo__img{width:100%;max-width:230px;height:auto}
.site-footer .qme-footer__blurb{
  font-size:15px;line-height:1.6;max-width:320px;margin:0 0 20px;
  color:rgba(255,255,255,.6);
}

.site-footer .footer-socials{
  display:flex;align-items:center;gap:10px;margin:0 0 22px;margin-top:0;
}
.site-footer .footer-socials .footer-social{
  width:40px;height:40px;border-radius:10px;
  display:inline-flex;align-items:center;justify-content:center;
  margin:0;flex:0 0 auto;
  background:rgba(255,255,255,.06);color:#fff;
  transition:background .15s linear,color .15s linear,transform .15s linear;
}
.site-footer .footer-socials .footer-social:hover,
.site-footer .footer-socials .footer-social:focus-visible{
  background:var(--accent);color:#fff;transform:none;filter:none;
}

.site-footer .qme-footer__qr{display:flex;flex-wrap:wrap;gap:16px}
.site-footer .footer-col a.qme-footer__qr-item{
  display:flex;flex-direction:column;align-items:center;gap:8px;
  margin:0;padding:0;max-width:100%;
  text-decoration:none;color:inherit;background:transparent;
}
.site-footer .footer-col a.qme-footer__qr-item:hover,
.site-footer .footer-col a.qme-footer__qr-item:focus-visible{
  color:inherit;transform:none;
}
.site-footer .qme-footer__qr-item img{
  display:block;width:160px;height:160px;
  padding:8px;box-sizing:border-box;
  background:#fff;border-radius:0;
}
.site-footer .qme-footer__qr-item span{
  font:600 11px var(--font-display);letter-spacing:.04em;
  text-transform:uppercase;color:rgba(255,255,255,.55);
}
.site-footer .qme-footer__qr-item:hover span{color:var(--accent)}

.site-footer .footer-col h4{
  font:700 14px var(--font-display);letter-spacing:.05em;
  text-transform:uppercase;color:#fff;margin:0 0 16px;
  overflow-wrap:break-word;
}
.site-footer .footer-links{display:flex;flex-direction:column;gap:10px}
.site-footer .footer-links a{
  font-size:14px;line-height:1.4;color:rgba(255,255,255,.65);
  text-decoration:none;margin:0;
  transition:color .15s linear;
}
.site-footer .footer-links a:hover,
.site-footer .footer-links a:focus-visible{
  color:var(--accent);transform:none;
}

.site-footer .qme-footer .footer-phone{
  display:inline-block;font:700 24px var(--font-display);
  letter-spacing:.01em;color:#fff;text-decoration:none;
  margin:0 0 12px;transition:color .15s linear;
}
.site-footer .qme-footer .footer-phone:hover,
.site-footer .qme-footer .footer-phone:focus-visible{
  color:var(--accent);transform:none;
}
.site-footer .footer-address{
  display:flex;align-items:flex-start;gap:8px;
  font-size:14px;line-height:1.5;color:rgba(255,255,255,.6);margin:0 0 10px;
}
.site-footer .footer-address svg{flex:0 0 auto;margin-top:2px;color:var(--accent)}
.site-footer .qme-footer__regions{margin:0 0 16px}
.site-footer .qme-footer__regions a{
  display:inline;font-size:13px;color:rgba(255,255,255,.55);
  text-decoration:underline;text-underline-offset:2px;margin:0;
}
.site-footer .qme-footer__regions a:hover,
.site-footer .qme-footer__regions a:focus-visible{
  color:var(--accent);transform:none;
}

.site-footer .footer-col a.qme-footer__tg{
  display:inline-flex;align-items:center;justify-content:center;
  margin:4px 0 0;padding:10px 16px;max-width:100%;
  background:#FF1F2A;color:#fff;
  border:0;border-radius:0;
  font:600 13px/1.15 var(--font-display);
  letter-spacing:.04em;text-transform:uppercase;
  text-decoration:none;white-space:normal;
  background-image:none;
}
.site-footer .footer-col a.qme-footer__tg:hover,
.site-footer .footer-col a.qme-footer__tg:focus-visible{
  background:#D40000;color:#fff;transform:none;
  background-image:none;
}

.site-footer .qme-footer__legal{
  margin-top:44px;padding:22px 0;
  border-top:1px solid rgba(255,255,255,.08);
}
.site-footer .qme-footer__legal p{
  margin:0;font-family:"Oswald",sans-serif;font-size:12px;line-height:1.7;
  text-align:center;color:rgba(255,255,255,.35);
}

.site-footer .footer-bottom{
  display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;
  gap:10px 24px;padding:20px 0 32px;font-size:13px;color:rgba(255,255,255,.45);
}
.site-footer .qme-footer__bottom-links a{
  color:rgba(255,255,255,.45);text-decoration:underline;text-underline-offset:2px;
}
.site-footer .qme-footer__bottom-links a:hover,
.site-footer .qme-footer__bottom-links a:focus-visible{
  color:var(--accent);
}

@media(max-width:1199px){
  .site-footer .qme-footer,
  .site-footer .footer-grid.qme-footer{
    grid-template-columns:minmax(200px,.9fr) minmax(0,1.8fr);
    grid-template-areas:
      "brand nav"
      "contacts nav";
    gap:28px 20px;
  }
  .site-footer .footer-col--brand{padding-right:0}
  .site-footer .qme-footer__nav{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .site-footer .qme-footer__nav-stack{
    grid-template-columns:1fr;
    gap:28px;
  }
}

@media(max-width:879px){
  .site-footer .qme-footer,
  .site-footer .footer-grid.qme-footer{
    grid-template-columns:1fr;
    grid-template-areas:
      "brand"
      "nav"
      "contacts";
  }
}

@media(max-width:639px){
  .site-footer .qme-footer,
  .site-footer .footer-grid.qme-footer{
    grid-template-columns:1fr;
    grid-template-areas:
      "brand"
      "nav"
      "contacts";
    gap:32px;
  }
  .site-footer .qme-footer__nav,
  .site-footer .qme-footer__nav-stack{
    grid-template-columns:1fr;
  }
  .site-footer .footer-col--brand{padding-right:0}
  .site-footer .qme-footer__qr{justify-content:center}
  .site-footer .footer-socials{justify-content:center}
  .site-footer .footer-col{text-align:center}
  .site-footer .footer-links{
    align-items:center;
  }
  .site-footer .footer-links a{
    display:flex;
    width:100%;
    justify-content:center;
    text-align:center;
    align-self:stretch;
  }
  .site-footer .qme-footer__nav .footer-col,
  .site-footer .footer-col--contacts{
    border-top:1px solid var(--accent);
    padding-top:24px;
  }
  .site-footer .footer-address{justify-content:center}
  .site-footer .footer-bottom{justify-content:center;text-align:center}
  .site-footer .qme-footer__blurb{max-width:none}
  .site-footer .qme-footer__qr-item img{width:144px;height:144px}
  .site-footer .footer-col a.qme-footer__tg{width:100%}
}

/* 2026-09-08 Codex не дожал каскад движка: .drawer и .drawer a из styles.css
   / russtan-design-code (белый фон, navy-текст, inline-flex) перебивают
   короткие правила .qme-drawer выше. Селекторы ниже специфичнее. */
aside.drawer.qme-drawer{
  --text:#fff;
  --text-muted:rgba(255,255,255,.72);
  --text-dim:rgba(255,255,255,.55);
  --border:rgba(255,255,255,.16);
  --border-2:rgba(255,255,255,.32);
  background:#0a0a0a;
  color:#fff;
  border-left:1px solid rgba(255,255,255,.12);
}
aside.drawer.qme-drawer summary,
aside.drawer.qme-drawer details a,
aside.drawer.qme-drawer .qme-drawer__links a{
  color:#fff;
}
aside.drawer.qme-drawer details a,
aside.drawer.qme-drawer .qme-drawer__links a{
  display:block;
  text-transform:uppercase;
  letter-spacing:.02em;
}
aside.drawer.qme-drawer summary{
  display:flex;
  align-items:center;
  gap:6px;
}
aside.drawer.qme-drawer details a:hover,
aside.drawer.qme-drawer details a:focus-visible,
aside.drawer.qme-drawer details a.is-active,
aside.drawer.qme-drawer .qme-drawer__links a:hover,
aside.drawer.qme-drawer .qme-drawer__links a:focus-visible{
  color:var(--accent,#ff1f2a);
}
aside.drawer.qme-drawer .drawer__close{
  background:transparent;
  color:#fff;
  border-color:rgba(255,255,255,.32);
}
aside.drawer.qme-drawer .drawer__contacts a{
  color:var(--accent,#ff1f2a);
  display:inline-flex;
}

/* ==========================================================================
   Футер: "Присоединяйтесь к нам!" и заголовок группы QR — 10.09.2026.
   В оригинале это две отдельные секции на КАЖДОЙ странице (блоки 18 и 19
   главной): CTA с мессенджерами между реквизитами и копирайтом, и подпись
   над QR-кодами. У нас QR стояли без своего текста, а блока join не было
   вовсе. Восстановлено по решению владельца, текст дословно из оригинала.
   Радиусов не задаём — их всё равно обнуляет qme-square.css.
   ========================================================================== */
.qme-footer__social-title{margin:18px 0 4px;font:600 13px/1.3 var(--font-display),"Oswald",sans-serif;letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.72)}
.qme-footer__social-note{margin:0 0 12px;font-family:"Oswald",sans-serif;font-size:12px;line-height:1.6;color:rgba(255,255,255,.45)}


@media (max-width:575.98px){
}

/* Мегаменю «Игры»: четвёртая колонка справа — контакты, слоган и QR-коды.
   Просьба владельца 11.09.2026. Панель показывается только на десктопе
   (nav скрыт до 1150px), поэтому мобильных правил нет — в дровере контакты
   уже есть. Разметка: site-header.blade.php, блок .qme-mega-contact. */
.qme-header .qme-mega-3col{grid-template-columns:repeat(3,1fr) minmax(250px,300px)}
:is(.qme-header,.site-footer) .qme-mega-contact{
  border-left:1px solid rgba(255,255,255,.12);
  padding-left:30px;
  gap:0;
}
:is(.qme-header,.site-footer) .qme-mega-contact__phone{
  display:inline-block;align-self:flex-start;
  font:700 22px var(--font-display);letter-spacing:.01em;
  color:#fff;text-decoration:none;
  margin:0 0 6px;
}
:is(.qme-header,.site-footer) .qme-mega-contact__phone:hover,:is(.qme-header,.site-footer) .qme-mega-contact__phone:focus-visible{color:var(--accent);text-decoration:none}
:is(.qme-header,.site-footer) .qme-mega-contact__meta{
  display:flex;flex-direction:column;gap:2px;
  margin:0 0 12px;
  font:400 13px/1.5 var(--font-body);
  color:rgba(255,255,255,.6);
}
:is(.qme-header,.site-footer) .qme-mega-contact__meta span{display:flex;align-items:center;gap:6px}
:is(.qme-header,.site-footer) .qme-mega-contact__meta .icon{flex:0 0 auto;color:var(--accent)}
:is(.qme-header,.site-footer) .qme-mega-contact__text{
  margin:0 0 14px;
  font:400 14px/1.5 var(--font-body);
  color:rgba(255,255,255,.85);
}
:is(.qme-header,.site-footer) .qme-mega-contact__text strong{color:#fff;font-weight:600}
:is(.qme-header,.site-footer) .qme-mega-contact__btns{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}
:is(.qme-header,.site-footer) .qme-mega-contact__btn{
  display:inline-flex;align-items:center;justify-content:center;gap:6px;
  min-height:38px;padding:0 14px;
  font:600 13px var(--font-display);letter-spacing:.04em;text-transform:uppercase;
  color:#fff;text-decoration:none;
  border:1px solid rgba(255,255,255,.35);border-radius:0;background:transparent;
  transition:background .15s linear,border-color .15s linear,color .15s linear;
}
:is(.qme-header,.site-footer) .qme-mega-contact__btn:hover,:is(.qme-header,.site-footer) .qme-mega-contact__btn:focus-visible{
  background:var(--accent);border-color:var(--accent);color:#fff;text-decoration:none;
}
:is(.qme-header,.site-footer) .qme-mega-contact__qr{display:flex;gap:14px}
:is(.qme-header,.site-footer) .qme-mega-contact__qr-item{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;background:transparent}
:is(.qme-header,.site-footer) .qme-mega-contact__qr-item img{display:block;width:96px;height:96px;padding:5px;box-sizing:border-box;background:#fff;border-radius:0}
:is(.qme-header,.site-footer) .qme-mega-contact__qr-item span{font:600 11px var(--font-display);letter-spacing:.04em;text-transform:uppercase;color:rgba(255,255,255,.55)}
:is(.qme-header,.site-footer) .qme-mega-contact__qr-item:hover span,:is(.qme-header,.site-footer) .qme-mega-contact__qr-item:focus-visible span{color:var(--accent)}
:is(.qme-header,.site-footer) .qme-mega-contact__note{margin:8px 0 0;font:400 12px/1.4 var(--font-body);color:rgba(255,255,255,.45)}
@media(max-width:1279px){
  .qme-header .qme-mega-3col{grid-template-columns:repeat(3,1fr) minmax(220px,260px)}
  .qme-header .qme-mega-contact{padding-left:20px}
}

/* ---------------------------------------------------------------------------
   Футер — переделка 11.09.2026 по разметке владельца (site-footer.blade.php).
   Сверху три колонки одной высоты: бренд | центр (слоган, факты, кнопки) |
   контакты + QR как в мегаменю (классы .qme-mega-contact__*, их стили выше
   расширены на футер через :is(.qme-header,.site-footer)). Контактная колонка
   собрана в две подколонки (телефон/адрес/кнопки | QR), чтобы по высоте
   совпасть с брендом. Ниже белая линия, навигация на всю ширину в 4 группы,
   реквизиты без верхнего отступа, копирайт. Старая сетка .qme-footer с
   grid-areas больше не используется. --------------------------------------- */
.site-footer .container{padding-top:48px}
.site-footer .qme-footer2__top{
  display:grid;
  grid-template-columns:minmax(230px,.95fr) minmax(250px,1fr) minmax(330px,1.3fr);
  gap:32px 40px;align-items:stretch;
}
.site-footer .qme-footer2__brand{display:flex;flex-direction:column;padding-right:0}
.site-footer .qme-footer2__brand .qme-footer__blurb{margin-bottom:16px}
.site-footer .qme-footer2__brand .footer-socials{margin-top:auto;margin-bottom:0}
.site-footer .qme-footer2__mid{
  display:flex;flex-direction:column;
  padding:0 28px;
  border-left:1px solid rgba(255,255,255,.1);border-right:1px solid rgba(255,255,255,.1);
}
.site-footer .qme-footer2__tagline{
  margin:0 0 8px;font:700 26px/1.15 var(--font-display);
  text-transform:uppercase;color:#fff;
}
.site-footer .qme-footer2__tagline em{font-style:normal;color:var(--accent)}
.site-footer .qme-footer2__lead{margin:0 0 18px;font:400 14px/1.55 var(--font-display);color:rgba(255,255,255,.6)}
.site-footer .qme-footer2__facts{
  list-style:none;margin:0 0 18px;padding:0;
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;
}
.site-footer .qme-footer2__facts li{display:flex;flex-direction:column;gap:3px;min-width:0}
.site-footer .qme-footer2__facts strong{font:700 24px/1 var(--font-display);color:var(--accent);white-space:nowrap}
.site-footer .qme-footer2__facts span{font:400 12px/1.3 var(--font-display);color:rgba(255,255,255,.55)}
.site-footer .qme-footer2__actions{margin-top:auto;display:flex;flex-wrap:wrap;gap:8px}
.site-footer a.qme-footer2__btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:38px;padding:0 16px;margin:0;
  background:var(--accent);color:#fff;
  font:600 13px var(--font-display);letter-spacing:.04em;text-transform:uppercase;
  text-decoration:none;border:1px solid var(--accent);border-radius:0;background-image:none;
  transition:background .15s linear,border-color .15s linear,color .15s linear;
}
.site-footer a.qme-footer2__btn:hover,.site-footer a.qme-footer2__btn:focus-visible{
  background:#d40000;border-color:#d40000;color:#fff;text-decoration:none;transform:none;
}
.site-footer a.qme-footer2__btn--ghost{background:transparent;border-color:rgba(255,255,255,.35)}
.site-footer a.qme-footer2__btn--ghost:hover,.site-footer a.qme-footer2__btn--ghost:focus-visible{
  background:var(--accent);border-color:var(--accent);
}
.site-footer .qme-footer2__contact{display:flex;flex-direction:column;border-left:0;padding-left:0}
.site-footer .qme-footer2__h{
  font:700 14px var(--font-display);letter-spacing:.05em;text-transform:uppercase;
  color:#fff;margin:0 0 14px;
}
.site-footer .qme-footer2__contact-grid{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px 24px;align-items:start;flex:1;
}
.site-footer .qme-footer2__contact .qme-mega-contact__phone{margin:0 0 6px}
.site-footer .qme-footer2__contact .qme-mega-contact__meta{margin:0 0 8px}
.site-footer .qme-footer2__contact .qme-footer__regions{margin:0 0 12px}
.site-footer .qme-footer2__contact .qme-mega-contact__btns{margin:0}
.site-footer .qme-footer2__contact .qme-mega-contact__qr{gap:12px}
.site-footer .qme-footer2__contact .qme-mega-contact__note{margin:6px 0 0;max-width:220px}
.site-footer .qme-footer2__rule{margin:36px 0 32px;border-top:1px solid rgba(255,255,255,.55)}
.site-footer .qme-footer2__nav{
  display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px 32px;
  margin-bottom:32px;
}
.site-footer .qme-footer2__nav .footer-col{min-width:0}
.site-footer .qme-footer__legal{margin-top:0;padding:22px 0;border-top:1px solid rgba(255,255,255,.08)}

@media(max-width:1199px){
  .site-footer .qme-footer2__top{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
  .site-footer .qme-footer2__contact{grid-column:1/-1}
  .site-footer .qme-footer2__mid{padding:0 0 0 28px;border-right:0}
}
@media(max-width:879px){
  .site-footer .qme-footer2__nav{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:639px){
  .site-footer .qme-footer2__top{grid-template-columns:1fr;gap:28px}
  .site-footer .qme-footer2__mid{padding:24px 0 0;border:0;border-top:1px solid rgba(255,255,255,.1)}
  .site-footer .qme-footer2__contact{padding-top:24px;border-top:1px solid rgba(255,255,255,.1);align-items:center;text-align:center}
  .site-footer .qme-footer2__contact-grid{grid-template-columns:1fr;justify-items:center}
  .site-footer .qme-footer2__contact .qme-mega-contact__meta span{justify-content:center}
  .site-footer .qme-footer2__contact .qme-mega-contact__btns{justify-content:center}
  .site-footer .qme-footer2__contact .qme-mega-contact__phone{align-self:center}
  .site-footer .qme-footer2__actions{justify-content:center}
  .site-footer .qme-footer2__facts{text-align:center}
  .site-footer .qme-footer2__facts li{align-items:center}
  .site-footer .qme-footer2__nav{grid-template-columns:1fr;gap:24px}
  .site-footer .qme-footer2__rule{margin:28px 0 24px}
}

/* Футер, доводка 11.09: старые правила .footer-col--brand{grid-area:brand} и
   .footer-col--contacts{grid-area:contacts} от прежней сетки .qme-footer
   создавали в новой сетке неявные дорожки — бренд уезжал в лишнюю колонку,
   контакты сжимались до 100px. Снимаем именованные области, колонки задаём
   явно. */
.site-footer .qme-footer2__top > *{grid-area:auto;min-width:0}
.site-footer .qme-footer2__top > .qme-footer2__brand{grid-column:1;grid-row:1}
.site-footer .qme-footer2__top > .qme-footer2__mid{grid-column:2;grid-row:1}
.site-footer .qme-footer2__top > .qme-footer2__contact{grid-column:3;grid-row:1}
@media(max-width:1199px){
  .site-footer .qme-footer2__top > .qme-footer2__contact{grid-column:1/-1;grid-row:2}
}
@media(max-width:639px){
  .site-footer .qme-footer2__top > .qme-footer2__brand{grid-column:1;grid-row:1}
  .site-footer .qme-footer2__top > .qme-footer2__mid{grid-column:1;grid-row:2}
  .site-footer .qme-footer2__top > .qme-footer2__contact{grid-column:1;grid-row:3}
}

/* Футер: QR крупнее (просьба владельца 11.09) — 120px вместо 96 в мегаменю. */
.site-footer .qme-footer2__contact .qme-mega-contact__qr-item img{width:120px;height:120px;padding:6px}

/* Футер: шрифты крупнее (просьба владельца 11.09): подводка 16px, подписи
   фактов 14px, адрес/регионы 15px, ссылка регионов 15px, подсказка к QR 14px. */
.site-footer .qme-footer2__lead{font-size:16px;line-height:1.55}
.site-footer .qme-footer2__facts strong{font-size:28px}
.site-footer .qme-footer2__facts span{font-size:14px;line-height:1.35}
.site-footer .qme-footer2__contact .qme-mega-contact__meta{font-size:15px;line-height:1.55;gap:4px}
.site-footer .qme-footer2__contact .qme-footer__regions a{font-size:15px}
.site-footer .qme-footer2__contact .qme-mega-contact__note{font-size:14px;line-height:1.45;max-width:260px}
.site-footer .qme-footer__blurb{font-size:16px}
.site-footer .footer-links a{font-size:15px}

/* Блок «Мы поможем, звоните!» (chatgpt1 help): колонка с логотипом имела
   margin-left 8.33% от bootstrap-смещения, из-за чего логотип стоял правее
   центра текста (замечание владельца 11.09, /standup). Снимаем смещение,
   логотип по центру. */
@media (min-width: 768px) {
  .qm-aishow .qm-aishow-help-media, .qm-comedyshow .qm-comedyshow-help-media,
  .qm-fokusniki .qm-fokusniki-help-media, .qm-muzukaliti .qm-muzukaliti-help-media,
  .qm-nazad90 .qm-nazad90-help-media, .qm-standup .qm-standup-help-media { margin-left: 0; }
}

/* ==========================================================================
   Мобильный дровер: где мы сейчас — красным.
   Правка владельца 11.09.2026: «отображение текущего пункта меню на мобилках
   красным текстом — и основной раздел, и подраздел». Раньше подсветка была
   только в десктопной шапке, в дровере — ничего.
   Красный тот же, что у заголовков и ссылок сайта (#ff1f2a), а не
   `var(--accent)`: accent в общем движке — синий Русстана (#0059F2), на
   публичных страницах QME его быть не должно (см. QME-WORKING-RULES, п.7).
   Селекторы повторяют специфичность правил цвета дровера выше по файлу
   (`aside.drawer.qme-drawer …`), иначе белый их перебивает.
   ========================================================================== */
aside.drawer.qme-drawer summary.is-active,
aside.drawer.qme-drawer summary.is-active .nav__link-line,
aside.drawer.qme-drawer details a.is-active,
aside.drawer.qme-drawer .qme-drawer__links a.is-active {
  color: #ff1f2a;
}
aside.drawer.qme-drawer details a.is-active {
  font-weight: 700;
}


/* ==========================================================================
   Шапка и мобильное меню — правка владельца 11.09.2026, п. 14.
   Скриншот /quiz-bitva-polov: в дровере сверху был только крестик, режима
   работы не было нигде. В оригинале (resources/orig-site/home.html, блок
   шапки b833) мобильное меню открывается логотипом. Владелец попросил
   логотип сверху, режим работы — внизу дровера и в шапке ПК.
   Правила ниже идут в конце файла намеренно: .drawer a из styles.css
   (display:block, padding:14px 0, border-bottom) и display:inline-flex из
   russtan-design-code.css специфичнее короткого .qme-drawer__logo — та же
   ловушка, что описана выше в блоке «Codex не дожал каскад движка».
   ========================================================================== */

/* Режим работы над телефоном в шапке ПК. Колонка не шире телефона, поэтому
   ряд логотип/меню/телефон/MAX/TG/бургер не разъезжается. */
.qme-header .qme-contact-col{
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  justify-content:center;
  gap:1px;
  flex:0 0 auto;
  line-height:1.15;
}
.qme-header .qme-hours{
  font:600 12px var(--font-display);
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(255,255,255,.62);
  white-space:nowrap;
}
/* Ниже 1150px вместо ряда работает бургер: .qme-phone тут уже скрыт выше по
   файлу, прячем и всю колонку — иначе от неё останется висеть режим работы,
   а он в этом диапазоне живёт в дровере. */
@media(max-width:1150px){
  .qme-header .qme-contact-col{display:none}
}

/* Логотип первым элементом дровера. Сбрасываем всё, что .drawer a навесил на
   ссылку: блочную типографику, отбивку, нижнюю границу и сдвиг при hover. */
aside.drawer.qme-drawer .qme-drawer__logo{
  display:block;
  flex:0 0 auto;
  min-width:0;
  max-width:calc(100% - 56px);
  padding:0;
  border:0;
  transform:none;
}
aside.drawer.qme-drawer .qme-drawer__logo:hover,
aside.drawer.qme-drawer .qme-drawer__logo:focus-visible{
  transform:none;
  border:0;
}
aside.drawer.qme-drawer .qme-drawer__logo img{
  display:block;
  height:40px;
  width:auto;
  max-width:100%;
  object-fit:contain;
  object-position:left center;
}

/* Режим работы последним элементом дровера. */
aside.drawer.qme-drawer .qme-drawer__hours{
  margin:14px 0 0;
  /* Справа внизу поверх дровера висит fab-виджет (.qme-float, z-index 1090
     против 1000 у дровера). Сейчас «Пн-Вс: 07.00-23.00» до него не достаёт
     (139px запаса на 430px), но значение задаётся из /admin — оставляем
     полосу под кнопку, чтобы длинная строка не ушла под неё. */
  padding:0 64px 0 0;
  display:flex;
  flex-direction:column;
  gap:3px;
  font:600 12px var(--font-display);
  letter-spacing:.06em;
  text-transform:uppercase;
  color:rgba(255,255,255,.55);
}
aside.drawer.qme-drawer .qme-drawer__hours span{
  font:700 16px var(--font-display);
  letter-spacing:.02em;
  color:#fff;
}

/* ==========================================================================
   Канон текстового блока QME — поток 2 волны 4, 11.09.2026
   (правки владельца п. 3, 4, 8, 10, 15, 18, 22, 23, 25, 27, 30, 36)

   Сайт переезжал шестью пакетами, и у каждого был свой текстовый партиал со
   своим CSS: один и тот же по смыслу блок шёл 18px/1.6 (gamepage, claude1),
   18px/1.5 (unique, cursor2), без правил вовсе (cursor1) или с размерами
   оригинала (chatgpt1). Ни один, кроме chatgpt1, не совпадал с оригиналом.

   Шкала публичного сайта (14.09.2026): не копия Bitrix 1:1.
   H1 32 / 42 (≥576) — потолок 42, без 50. На планшете H1 не остаётся 32,
   когда H2 уже 33. H2 23 / 33 — секции и карточки. FAQ 18 / 26.
   Текст 17 / 20 / 23. UI 14. Мета 13. Брейкпоинты: <576 / ≥576 / ≥992.

   Красная метка у заголовка карточки — .u-heading-v2-* оригинала, цвет
   hsla(0,100%,33%):
   - lg: u-heading-v2-4--bottom -> блочная черта 5rem (70px), border-top 10px,
     отступ сверху 2.14286rem (30px), прижата влево. Не во всю ширину.
   - md: u-heading-v2-13-2--left -> border-left 5px + padding-left 10px
   - xs: u-heading-v2-9--1 -> уголки 2px слева сверху и справа снизу
   ========================================================================== */
:root{
  --qm-h1:32px;
  --qm-h2:23px;
  --qm-faq:18px;
  --qm-copy-size:17px;
  --qm-copy-lh:1.6;
  --qm-copy-gap:14px;
  --qm-ui:14px;
  --qm-meta:13px;
  --qm-copy-h2:var(--qm-h2);
  --qm-card-h:var(--qm-h2);
  --qm-rule:hsl(0, 100%, 33%);
  --qm-rule-w:70px;
}
@media (min-width:576px){
  :root{
    --qm-h1:42px;
    --qm-h2:33px;
    --qm-faq:26px;
    --qm-copy-size:20px;
  }
}
@media (min-width:992px){
  :root{--qm-copy-size:23px}
}

/* Тип 1 — основной текстовый блок: абзацы и списки. */
.qm-copy{
  font-size:var(--qm-copy-size);
  line-height:var(--qm-copy-lh);
  text-align:left;
}
.qm-copy p,
.qm-copy ul,
.qm-copy ol{margin:0 0 var(--qm-copy-gap)}
.qm-copy > :last-child{margin-bottom:0}
.qm-copy ul,
.qm-copy ol{padding-left:28px}
.qm-copy li{margin:0 0 6px}
.qm-copy li:last-child{margin-bottom:0}
.qm-copy a{color:inherit}

/* Тип 2 — выделенный абзац: по центру, полужирный. В оригинале это
   g-font-weight-700 + text-center у того же блока текста. */
.qm-copy--lead,
.qm-copy .qm-copy__p--lead{text-align:center;font-weight:700}

/* Выключка по формату (п.8 /online-quiz: в оригинале текст выключен
   по левому и правому краю). */
.qm-copy--justify,
.qm-copy .qm-copy__p--justify{text-align:justify;text-align-last:left}

/* Тип 3 — заголовок текстовой секции на серой полосе. */
.qm-copy__h2{
  margin:0;
  font:700 var(--qm-copy-h2) "Oswald",sans-serif;
  line-height:1.4;
  text-align:center;
}

/* Заголовок карточки с красной меткой (п.3 /quiz, п.18 /what_a_show,
   п.36 /korporativ-23-fevralya). База — метка слева, как просил владелец. */
.qm-card-head{
  margin:0 0 20px;
  padding:0 0 0 10px;
  border-left:5px solid var(--qm-rule);
  border-bottom:0;
  font:400 var(--qm-card-h) "Oswald",sans-serif;
  line-height:1.3;
  text-align:left;
  text-transform:none;
  color:#fff;
}
.qm-card-head::after{content:none}
@media (min-width:992px){
  .qm-card-head{padding-left:0;border-left:0}
  .qm-card-head::after{
    content:"";
    display:block;
    width:var(--qm-rule-w);
    margin:30px auto 0 0;
    border-top:10px solid var(--qm-rule);
  }
}

/* Выравнивание абзаца — как в оригинале, где оно стоит инлайном у каждого <p>
   (`<p style="text-align: right">`), а не у блока целиком. */
.qm-copy .qm-copy__p--left{text-align:left}
.qm-copy .qm-copy__p--right{text-align:right}
.qm-copy .qm-copy__p--center{text-align:center}

/* п.25 (/karaoke) — список, где маркер уже стоит в самом тексте (✅, 🔥, 👰, 🥂).
   В оригинале это вообще не список: строки <span> через <br> внутри одного <p>,
   поэтому ни точки-маркера, ни отступа слева там нет, а у нас получалось два
   маркера в строке и лишние 28px слева. */
.qm-copy ul.qm-copy__list--marked{list-style:none;padding-left:0}
.qm-copy ul.qm-copy__list--marked > li{margin:0 0 var(--qm-copy-gap)}

/* ==========================================================================
   Правки владельца 12.09.2026 (wave5).
   ========================================================================== */

/* п.58 — красная рамка у выпадающих панелей шапки.
   «В хедере для меню выпадающего сделать красную рамку» (скриншот
   /comedy-quiz-show, открыт список АВТОРСКИЕ ИГРЫ / ШОУ-ФОРМАТЫ).
   Раньше панели брали border-color:rgba(255,255,255,.12) — на чёрном фоне
   границы фактически не было видно. Красим обе панели одинаково: узкий
   дропдаун (.nav-drop / .qme-drop) и мегаменю (.mega), цвет — акцент сайта,
   новый оттенок не заводим. Специфичность (0,3,0) перебивает правило выше. */
.qme-header .nav-drop,
.qme-header .mega {
  /* Рамка без верхней грани: панель раскрывается вплотную под шапкой, и
     верхняя грань читалась как сплошная красная линия под хедером —
     владелец, 12.09.2026. Линию под шапкой рисует .qme-header::after. */
  border: 1px solid var(--accent, #ff1f2a);
  border-top: 0;
}

/* Разделитель под шапкой — тонкий красный градиент. Зеркален разделителю
   футера (.qme-footer2__rule): у футера цвет набирается слева направо, здесь —
   справа налево, и полоса вдвое тоньше (1px против 2px). Правка владельца
   12.09.2026: «не красный [сплошной], градиент как у футера, только тоньше и
   отзеркаленный по цвету». */
/* position шапке здесь НЕ задаём: она уже position:fixed
   (qme-header-standalone.css, строка 37), и правило `position: relative`
   отсюда перебивало фиксацию — шапка уезжала со страницей. Фиксированный
   элемент сам по себе является containing block для ::after. */
.qme-header::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -3px;
  height: 3px;
  /* Цвет — как у разделителя над футером (.site-footer::before):
     от белого к красному. Зеркальность сохранена: там красное справа,
     здесь — слева. Правка владельца 12.09.2026. */
  background: linear-gradient(90deg, var(--accent, #ff1f2a), var(--accent, #ff1f2a), #fff);
  /* Выше выпадающих панелей (у .mega и .nav-drop z-index 79): они
     раскрываются вплотную под шапкой и перекрывали полосу. Правка владельца
     12.09.2026. */
  z-index: 80;
  pointer-events: none;
}

/* Разделитель в футере — красный градиент вместо белой полупрозрачной черты
   (правка владельца 12.09.2026: «а это красной»). */
.site-footer .qme-footer2__rule {
  border-top: 0;
  height: 2px;
  /* Тот же переход белое→красное, зеркально шапке: здесь красное справа. */
  background: linear-gradient(90deg, #fff, var(--accent, #ff1f2a), var(--accent, #ff1f2a));
}

/* п.45 — ссылки футера в две колонки на телефоне.
   «В футере сделать 2 колонки» (скриншот /quiz, 430px): группа «ИГРЫ» — это
   14 пунктов в одну колонку, футер уезжал на несколько экранов. Группы
   оставляем друг под другом, чтобы заголовки работали разделителями, а
   ссылки внутри группы кладём в две колонки — высота падает вдвое.
   Правило идёт после блока @media(max-width:639px) выше, который ставил
   .footer-links в один столбец с align-items:center. */
@media (max-width: 639px) {
  .site-footer .footer-links {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 16px;
    align-items: start;
  }
  .site-footer .footer-links a {
    display: block;
    width: auto;
    text-align: center;
  }
}

/* ==========================================================================
   Выпадающие панели шапки: раскрытие, закрытие и переключение.
   Переписано 12.09.2026 по замечанию владельца: «навожу на Игры, потом на
   другой пункт и резко убираю мышку — подраздел Игр не успел отключиться,
   второй не успел включиться», «плавности вообще нет, слишком быстро и
   непонятно, что за анимация».

   Причина была не в кривых, а в том, что наведением управлял CSS :hover:
   у него нет ни намерения, ни памяти о том, что меню уже раскрыто. Логику
   забрал qme-nav.js (задержка на открытие, пауза на закрытие, мгновенное
   переключение между пунктами). Здесь — только внешний вид трёх состояний.

   Три разных движения, а не одно на все случаи:

   - ОТКРЫТИЕ — медленное и заметное: панель разворачивается от шапки
     (scaleY от 0.94 с точкой отсчёта сверху) и съезжает на 14px вниз за
     0.42s по экспоненциальной кривой, содержимое догоняет каскадом. Такое
     движение успевает прочитаться глазом и объясняет, откуда взялась панель.
   - ЗАКРЫТИЕ — вдвое быстрее и с ускорением к концу (ease-in 0.22s): панель
     уходит с дороги, а не «тает».
   - ПЕРЕКЛЮЧЕНИЕ между пунктами (шапка получает is-switching) — ни разворота,
     ни каскада: короткий кроссфейд 0.16s на месте. Полная анимация при
     каждом переходе по меню и создавала ощущение, что ничего не успевает.
   ========================================================================== */

/* Наведением управляет JS: пока на шапке класс qme-nav-js, :hover панели не
   открывает. Специфичность (0,4,0) перебивает `.has-mega:hover .mega` из
   styles.css. Без JS класса нет — меню работает на чистом :hover, как раньше. */
.qme-header.qme-nav-js .has-mega:not(.is-open) .mega,
.qme-header.qme-nav-js .has-drop:not(.is-open) .nav-drop {
  opacity: 0;
  visibility: hidden;
  transform: translateY(-14px) scaleY(.94);
}

/* Закрытое состояние и кривая закрытия */
.qme-header .nav-drop,
.qme-header .mega {
  transform: translateY(-14px) scaleY(.94);
  transform-origin: top center;
  transition:
    opacity .22s cubic-bezier(.4, 0, 1, 1),
    transform .22s cubic-bezier(.4, 0, 1, 1),
    visibility .22s;
}

/* Открытие */
.qme-header .has-drop.is-open .nav-drop,
.qme-header .has-mega.is-open .mega {
  opacity: 1;
  visibility: visible;
  transform: translateY(0) scaleY(1);
  transition:
    opacity .34s var(--ease-out, ease),
    transform .42s var(--ease-premium, ease),
    visibility 0s;
}

/* Каскад содержимого. У колонок мегаменю — сдвиг и прозрачность; у пунктов
   узкого списка только прозрачность: их transform занят сдвигом вправо на
   :hover (qme-header-standalone.css), вторая анимация того же свойства
   сбивала бы наведение. */
.qme-header .mega__col {
  opacity: 0;
  transform: translateY(-12px);
  transition: opacity .2s cubic-bezier(.4, 0, 1, 1), transform .2s cubic-bezier(.4, 0, 1, 1);
}
.qme-header .nav-drop .mega__link {
  opacity: 0;
  transition: opacity .2s cubic-bezier(.4, 0, 1, 1);
}
.qme-header .has-mega.is-open .mega .mega__col,
.qme-header .has-drop.is-open .nav-drop .mega__link {
  opacity: 1;
  transform: translateY(0);
  transition-duration: .42s;
  transition-timing-function: var(--ease-premium, ease);
}
.qme-header .has-mega.is-open .mega .mega__col:nth-child(1) { transition-delay: .09s; }
.qme-header .has-mega.is-open .mega .mega__col:nth-child(2) { transition-delay: .145s; }
.qme-header .has-mega.is-open .mega .mega__col:nth-child(3) { transition-delay: .20s; }
.qme-header .has-mega.is-open .mega .mega__col:nth-child(4) { transition-delay: .255s; }
.qme-header .has-drop.is-open .nav-drop .mega__link:nth-child(1) { transition-delay: .07s; }
.qme-header .has-drop.is-open .nav-drop .mega__link:nth-child(2) { transition-delay: .11s; }
.qme-header .has-drop.is-open .nav-drop .mega__link:nth-child(3) { transition-delay: .15s; }
.qme-header .has-drop.is-open .nav-drop .mega__link:nth-child(4) { transition-delay: .19s; }
.qme-header .has-drop.is-open .nav-drop .mega__link:nth-child(n+5) { transition-delay: .23s; }

/* Переключение между пунктами: кроссфейд на месте, без разворота и каскада.
   `!important` здесь по делу — надо перебить и открытие, и закрытие разом,
   а они живут в правилах с той же специфичностью. */
.qme-header.is-switching .nav-drop,
.qme-header.is-switching .mega {
  transform: translateY(0) scaleY(1) !important;
  transition: opacity .16s linear, visibility 0s !important;
}
.qme-header.is-switching .mega__col,
.qme-header.is-switching .nav-drop .mega__link {
  transform: none !important;
  transition: opacity .16s linear !important;
  transition-delay: 0s !important;
}

/* Стрелка у пункта разворачивается той же кривой и за то же время, что панель */
.qme-header .nav__caret {
  transition: transform .42s var(--ease-premium, ease), opacity .2s var(--ease-out, ease);
}
.qme-header.is-switching .nav__caret {
  transition: transform .16s linear, opacity .16s linear;
}

@media (prefers-reduced-motion: reduce) {
  .qme-header .nav-drop,
  .qme-header .mega,
  .qme-header .has-drop.is-open .nav-drop,
  .qme-header .has-mega.is-open .mega,
  .qme-header.qme-nav-js .has-mega:not(.is-open) .mega,
  .qme-header.qme-nav-js .has-drop:not(.is-open) .nav-drop {
    transform: none;
    transition: opacity .12s linear, visibility .12s;
  }
  .qme-header .mega__col,
  .qme-header .nav-drop .mega__link,
  .qme-header .has-mega.is-open .mega .mega__col,
  .qme-header .has-drop.is-open .nav-drop .mega__link {
    opacity: 1;
    transform: none;
    transition: none;
    transition-delay: 0s !important;
  }
}
