/* ===================== SKY MENU (Helix 2.x) — clean rewrite ===================== */
:root{
  --sky-bg-1: #e8f3ff;
  --sky-bg-2: #cfe6ff;
  --sky-pill: #e1efff;
  --sky-text: #0b4ea2;
  --sky-text-strong: #063a7d;
  --sky-ring: rgba(11,78,162,.18);
  --sky-border: #cfe2ff;
  --sky-drop-bg: rgba(255,255,255,.92);
  --sky-drop-bd: #d7e7ff;
}

/* БАЗА: контейнер меню и список */
.sp-megamenu-wrapper[role="navigation"]{
  background: linear-gradient(180deg, var(--sky-bg-1), var(--sky-bg-2));
  backdrop-filter: saturate(1.1) blur(3px);
  border-radius: 14px;
  padding: .5rem .75rem;
  box-shadow: 0 8px 22px rgba(8,45,91,.18);
  position: relative;         /* даём собственный стек */
  z-index: 100000;            /* выше слайдеров и героев */
  overflow: visible !important;
}

.sp-megamenu-parent{
  display: flex;              /* на всякий, если классы Bootstrap скрыты */
  gap: .25rem;
  position: relative;
  z-index: 1;
}

/* Пункты верхнего уровня */
.sp-megamenu-parent > li{
  position: relative;         /* опора для абсолютных дропдаунов */
  margin: 0 .15rem;
}

/* Ссылки-«пилюли» */
.sp-megamenu-parent > li > a{
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .6rem .95rem;
  border-radius: 999px;
  font-weight: 600;
  line-height: 1;
  color: var(--sky-text);
  text-decoration: none;
  background: transparent;
  box-shadow: inset 0 0 0 1px transparent;
  transition: background-color .15s ease, box-shadow .15s ease, color .15s ease;
  /* Без transform — чтобы не рвался hover-мостик с дропдауном */
}

.sp-megamenu-parent > li > a .fas,
.sp-megamenu-parent > li > a .fa-solid{ font-size: .95em; opacity:.9; }

/* Hover/Focus/Active */
.sp-megamenu-parent > li > a:hover,
.sp-megamenu-parent > li > a:focus-visible{
  color: var(--sky-text-strong);
  background: var(--sky-pill);
  box-shadow: 0 6px 14px var(--sky-ring), inset 0 0 0 1px var(--sky-border);
  outline: none;
}

.sp-megamenu-parent > li.current-item > a,
.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li > a[aria-current="page"]{
  color: var(--sky-text-strong);
  background: linear-gradient(180deg, #e6f0ff, #d6e8ff);
  box-shadow: 0 8px 18px var(--sky-ring), inset 0 0 0 1px #c3ddff;
}

/* Каретка у пунктов с подменю */
.sp-megamenu-parent > li.sp-has-child > a::after{
  content: "▾";
  font-size: .8em;
  margin-left: .35rem;
  opacity: .85;
}

/* ===================== ДРОПДАУНЫ (уровень 1 и 2) ===================== */
.sp-megamenu-wrapper .sp-dropdown{
  position: absolute;
  top: 100%;                 /* без щели */
  left: 0;
  margin-top: 8px !important;/* видимый «воздух» без разрыва ховера */
  display: block;            /* всегда в потоке, но скрываем через visibility */
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-4px);
  transition: opacity .16s ease, transform .16s ease, visibility .16s step-end;
  min-width: 220px;
  background: var(--sky-drop-bg);
  border: 1px solid var(--sky-drop-bd);
  border-radius: 14px;
  box-shadow: 0 12px 30px rgba(8,45,91,.20);
  overflow: hidden;
  z-index: 100001;           /* поверх самого меню */
}

.sp-megamenu-wrapper .sp-dropdown.sp-dropdown-main.sp-menu-right{
  right: 0; left: auto;
}

/* Вложенные подменю открываются сбоку */
.sp-dropdown.sp-dropdown-sub{
  top: -6px;
  left: 100%;
  margin-top: 0 !important;
}
.sp-dropdown.sp-dropdown-sub.sp-menu-right{
  left: auto; right: 100%;
}

/* Показ дропдаунов: hover/focus и класс от JS */
.sp-megamenu-parent > li:hover > .sp-dropdown,
.sp-megamenu-parent > li:focus-within > .sp-dropdown,
.sp-megamenu-parent > li.is-open > .sp-dropdown{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0);
  transition: opacity .16s ease, transform .16s ease, visibility 0s;
}

/* Контент дропдаунов */
.sp-dropdown .sp-dropdown-inner{ padding: .4rem; }

.sp-dropdown-items > li > a{
  display: flex;
  align-items: center;
  gap: .45rem;
  padding: .55rem .7rem;
  border-radius: 10px;
  color: #0d3570;
  text-decoration: none;
  font-weight: 500;
  transition: background-color .14s ease, color .14s ease, transform .14s ease;
}

.sp-dropdown-items > li > a:hover,
.sp-dropdown-items > li > a:focus-visible{
  background: linear-gradient(180deg, #f2f7ff, #e9f2ff);
  color: var(--sky-text-strong);
  box-shadow: inset 0 0 0 1px #d6e7ff;
  outline: none;
  transform: translateX(2px);
}

.sp-dropdown-items > li.active > a{
  background: #e9f2ff;
  color: var(--sky-text-strong);
  box-shadow: inset 0 0 0 1px #cfe2ff;
}

/* ===================== СЛОИ НА ГЛАВНОЙ (прозрачная шапка/слайдеры) ===================== */
.home .sp-megamenu-wrapper[role="navigation"],
.itemid-101 .sp-megamenu-wrapper[role="navigation"]{
  position: relative !important;
  z-index: 100000 !important;
  overflow: visible !important;
}

/* Частые «виновники» снизу — не выше меню и не обрезают */
.home .sppb-slider-wrapper,
.home .sp-pagebuilder,
.home .sp-pagebuilder .page-content,
.itemid-101 .sppb-slider-wrapper,
.itemid-101 .sp-pagebuilder{
  z-index: 1 !important;
  overflow: visible !important;
}

/* ===================== Доступность и мелочи ===================== */
.sp-megamenu-parent > li > a:focus-visible,
.sp-dropdown-items > li > a:focus-visible{
  box-shadow: 0 0 0 3px rgba(99,164,255,.45);
}

@media (max-width: 1200px){
  .sp-megamenu-parent > li > a{ padding: .55rem .8rem; }
}

/* Тёмная тема (опционально через .dark на <html>/<body>) */
.dark .sp-megamenu-wrapper[role="navigation"]{
  background: linear-gradient(180deg, #0b1b33, #0b223f);
  box-shadow: 0 10px 26px rgba(0,0,0,.35);
}
.dark .sp-megamenu-parent > li > a{ color: #d7e6ff; }
.dark .sp-megamenu-parent > li > a:hover,
.dark .sp-megamenu-parent > li.active > a{
  color: #fff;
  background: #17345f;
  box-shadow: 0 10px 22px rgba(23,52,95,.45), inset 0 0 0 1px rgba(255,255,255,.07);
}
.dark .sp-dropdown{ background: rgba(16,28,50,.94); border-color: rgba(255,255,255,.08); }
.dark .sp-dropdown-items > li > a{ color: #b9cff7; }
.dark .sp-dropdown-items > li > a:hover{
  background: rgba(34,62,110,.6);
  color: #fff;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.07);
}
/* === FIX: убираем щель и добавляем hover-мостик === */

/* 1) дропдауны вплотную к ссылке — без margin-разрыва */
.sp-megamenu-wrapper .sp-dropdown{
  top: 100% !important;
  margin-top: 0 !important;
  /* визуальный «воздух» делаем анимацией, а не физическим отступом */
  transform: translateY(8px);
}
.sp-megamenu-parent > li:hover > .sp-dropdown,
.sp-megamenu-parent > li:focus-within > .sp-dropdown,
.sp-megamenu-parent > li.is-open > .sp-dropdown{
  transform: translateY(12px); /* лёгкое «падение» при показе */
}

/* 2) «мостик» — прозрачная полоска, которая принадлежит li и держит hover */
.sp-megamenu-parent > li{
  position: relative;
}
.sp-megamenu-parent > li::after{
  content:"";
  position:absolute;
  left:0; right:0;
  top:100%;
  height: 12px;          /* ширина мостика */
  /* прозрачный, но участвует в hover, чтобы не было разрыва */
}

/* 3) для вложенных подменю — небольшой мостик сбоку */
.sp-dropdown.sp-dropdown-sub::before{
  content:"";
  position:absolute;
  top:0; bottom:0;
  left:-10px; width:10px;  /* зона, через которую можно переехать мышью */
}
.sp-dropdown.sp-dropdown-sub.sp-menu-right::before{
  left:auto; right:-10px;
}


/* Базовые настройки для любых FA5-иконок в верхнем меню */
.sp-megamenu-parent > li > a .fa,
.sp-megamenu-parent > li > a .fas,
.sp-megamenu-parent > li > a .far,
.sp-megamenu-parent > li > a .fal,
.sp-megamenu-parent > li > a .fad{
  display:inline-block;
  transition:
    transform .18s ease,
    filter .18s ease,
    opacity .18s ease,
    color .18s ease;
  transform-origin: 50% 55%;
  will-change: transform, filter;
}

/* Триггеры: hover, focus, активный и открытый пункт */
.sp-megamenu-parent > li:hover > a .fa,
.sp-megamenu-parent > li:hover > a .fas,
.sp-megamenu-parent > li:hover > a .far,
.sp-megamenu-parent > li:hover > a .fal,
.sp-megamenu-parent > li:hover > a .fad,
.sp-megamenu-parent > li:focus-within > a .fa,
.sp-megamenu-parent > li.active > a .fa,
.sp-megamenu-parent > li.is-open > a .fa,
.sp-megamenu-parent > li:focus-within > a .fas,
.sp-megamenu-parent > li.active > a .fas,
.sp-megamenu-parent > li.is-open > a .fas,
.sp-megamenu-parent > li:focus-within > a .far,
.sp-megamenu-parent > li.active > a .far,
.sp-megamenu-parent > li.is-open > a .far,
.sp-megamenu-parent > li:focus-within > a .fal,
.sp-megamenu-parent > li.active > a .fal,
.sp-megamenu-parent > li.is-open > a .fal,
.sp-megamenu-parent > li:focus-within > a .fad,
.sp-megamenu-parent > li.active > a .fad,
.sp-megamenu-parent > li.is-open > a .fad{
  transform: translateY(-1px) scale(1.08);
  filter: drop-shadow(0 6px 10px rgba(11,78,162,.18));
}

/* Если у вас FA5 Pro Duotone (fad) — лёгкий переход оттенков */
.sp-megamenu-parent > li > a .fad{
  --fa-primary-color:#0b4ea2;
  --fa-secondary-color:#9cc9ff;
  --fa-primary-opacity:1;
  --fa-secondary-opacity:.9;
}
.sp-megamenu-parent > li:hover > a .fad,
.sp-megamenu-parent > li.active > a .fad,
.sp-megamenu-parent > li.is-open > a .fad{
  --fa-primary-color:#063a7d;
  --fa-secondary-color:#b7d9ff;
}

/* Уважение предпочитающих уменьшенную анимацию */
@media (prefers-reduced-motion: reduce){
  .sp-megamenu-parent > li > a .fa,
  .sp-megamenu-parent > li > a .fas,
  .sp-megamenu-parent > li > a .far,
  .sp-megamenu-parent > li > a .fal,
  .sp-megamenu-parent > li > a .fad{
    transition:none;
  }
}
.sp-megamenu-parent > li.menu-tight > a{
  padding: .48rem .7rem !important;
  letter-spacing: -.1px;

}

/* ===== DROPDOWNS HARD-RESET (no double carets) ===== */

/* Скрываем любые встроенные каретки/chevrons, чтобы не было дублей */
.sp-megamenu-parent > li.sp-has-child .menu-toggler,
.sp-megamenu-parent > li.sp-has-child .caret,
.sp-megamenu-parent > li.sp-has-child i[class*="fa-angle"],
.sp-megamenu-parent > li.sp-has-child i[class*="fa-chevron"],
.sp-dropdown .sp-dropdown-items > li.sp-has-child .menu-toggler,
.sp-dropdown .sp-dropdown-items > li.sp-has-child .caret,
.sp-dropdown .sp-dropdown-items > li.sp-has-child i[class*="fa-angle"],
.sp-dropdown .sp-dropdown-items > li.sp-has-child i[class*="fa-chevron"]{
  display:none !important;
}

/* Параметры стрелок */
:root{
  --caret-size: 8px;
  --caret-thick: 2px;
  --caret-color: rgba(11,78,162,.85);
  --caret-color-hover: rgba(6,58,125,.95);
}

/* 0) Базовая сетка дропа — выравниваем внутренности */
.sp-dropdown .sp-dropdown-inner{ padding: .35rem !important; }
.sp-dropdown .sp-dropdown-items{ margin:0 !important; padding:0 !important; list-style:none !important; }

/* 1) Каждая строка дропдауна — блок на всю ширину */
.sp-dropdown .sp-dropdown-items > li{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  position:relative;
}

/* 2) Ссылка = вся строка (кликается вся ширина) */
.sp-dropdown .sp-dropdown-items > li > a,
.sp-dropdown .sp-dropdown-items > li > span > a{
  display:flex !important;
  align-items:center !important;
  gap:.55rem !important;
  width:100% !important;
  box-sizing:border-box !important;
  padding:.58rem .9rem !important;
  border-radius:10px !important;
  text-decoration:none !important;
  line-height:1.28 !important;
  white-space:normal !important;
  background:transparent !important;
  color:var(--sky-text,#0b4ea2) !important;
  box-shadow:inset 0 0 0 1px transparent !important;
  transition:background-color .16s ease, box-shadow .16s ease, color .16s ease, transform .16s ease !important;
  cursor:pointer !important;
}

/* 3) Ховер/фокус/активный — заливка на всю ширину */
.sp-dropdown .sp-dropdown-items > li > a:hover,
.sp-dropdown .sp-dropdown-items > li > a:focus-visible,
.sp-dropdown .sp-dropdown-items > li.active > a,
.sp-dropdown .sp-dropdown-items > li > a[aria-current="page"]{
  background:linear-gradient(180deg,#f2f7ff,#e9f2ff) !important;
  color:var(--sky-text-strong,#063a7d) !important;
  box-shadow:inset 0 0 0 1px var(--sky-border,#cfe2ff) !important;
  transform:translateX(2px) !important;
  outline:none !important;
}

/* 4) Подменю второго уровня — компактнее */
.sp-dropdown.sp-dropdown-sub .sp-dropdown-items > li > a{
  padding:.52rem .78rem !important;
  border-radius:8px !important;
}

/* 5) Иконки (если есть) */
.sp-dropdown .sp-dropdown-items > li > a .fa,
.sp-dropdown .sp-dropdown-items > li > a .fas,
.sp-dropdown .sp-dropdown-items > li > a .far,
.sp-dropdown .sp-dropdown-items > li > a .fal,
.sp-dropdown .sp-dropdown-items > li > a .fad{
  font-size:1em !important;
  opacity:.95 !important;
}

/* 6) ЕДИНСТВЕННЫЕ стрелки для пунктов с подменю в дропдауне */
.sp-dropdown .sp-dropdown-items > li.sp-has-child > a{
  position:relative !important;
  padding-right: calc(.9rem + var(--caret-size) + .3rem) !important;
}
.sp-dropdown .sp-dropdown-items > li.sp-has-child > a::after{
  content:"" !important;
  position:absolute;
  right:.9rem;
  top:50%;
  width:var(--caret-size);
  height:var(--caret-size);
  border-right:var(--caret-thick) solid var(--caret-color);
  border-top:var(--caret-thick) solid var(--caret-color);
  transform:translateY(-50%) rotate(45deg); /* стрелка вправо */
  opacity:.9;
  pointer-events:none;
  transition:transform .16s ease, border-color .16s ease, opacity .16s ease;
}
.sp-dropdown .sp-dropdown-items > li.sp-has-child > a:hover::after,
.sp-dropdown .sp-dropdown-items > li.sp-has-child > a:focus-visible::after{
  border-color:var(--caret-color-hover);
  transform:translateY(-50%) rotate(45deg) translateX(2px);
  opacity:1;
}

/* Если суб-меню открывается влево (.sp-menu-right) — рисуем стрелку влево */
.sp-dropdown.sp-dropdown-sub.sp-menu-right .sp-dropdown-items > li.sp-has-child > a{
  padding-left: calc(.9rem + var(--caret-size) + .3rem) !important;
  padding-right:.78rem !important;
}
.sp-dropdown.sp-dropdown-sub.sp-menu-right .sp-dropdown-items > li.sp-has-child > a::after{
  right:auto; left:.9rem;
  border-right:0; border-top:0;
  border-left:var(--caret-thick) solid var(--caret-color);
  border-bottom:var(--caret-thick) solid var(--caret-color);
  transform:translateY(-50%) rotate(45deg); /* стрелка влево */
}

/* 7) «Мостики» для диагонального перехода между уровнями */
.sp-dropdown.sp-dropdown-sub::before{
  content:"";
  position:absolute;
  top:0; bottom:0; left:-10px; width:10px;
}
.sp-dropdown.sp-dropdown-sub.sp-menu-right::before{
  left:auto; right:-10px;
}

/* ===== Верхний уровень — одна стрелка, без дублей ===== */
.sp-megamenu-parent > li.sp-has-child > a{
  position:relative !important;
  padding-right: calc(1rem + var(--caret-size) + .6rem) !important;
}
.sp-megamenu-parent > li.sp-has-child > a::after{
  content:"" !important;
  position:absolute;
  right: .9rem;
  top:50%;
  width:var(--caret-size);
  height:var(--caret-size);
  border-right:var(--caret-thick) solid var(--caret-color);
  border-bottom:var(--caret-thick) solid var(--caret-color);
  transform:translateY(-60%) rotate(45deg); /* «вниз» как V */
  transition:transform .18s ease, border-color .18s ease, opacity .18s ease;
  opacity:.9;
  pointer-events:none;
}
.sp-megamenu-parent > li.sp-has-child:hover > a::after,
.sp-megamenu-parent > li.sp-has-child.is-open > a::after{
  border-color:var(--caret-color-hover);
  transform:translateY(-60%) rotate(225deg); /* раскрыто */
  opacity:1;
}

/* Контрастный focus для клавиатуры */
.sp-dropdown .sp-dropdown-items > li > a:focus-visible{
  box-shadow: inset 0 0 0 2px rgba(99,164,255,.55) !important;
  transform: translateX(2px) !important;
}

/* === Sky Search (как раньше) === */
.sky-search{ position:relative; z-index:100002; margin:.5rem 0 .75rem; }
.sky-search__form{
  display:flex; align-items:center; gap:.25rem; padding:.25rem; border-radius:999px;
  background:linear-gradient(180deg,var(--sky-bg-1,#e8f3ff),var(--sky-bg-2,#cfe6ff));
  box-shadow:0 8px 22px rgba(8,45,91,.18); backdrop-filter:saturate(1.1) blur(3px);
}
.sky-search__form input[type="search"]{
  flex:1 1 auto; min-width:0; border:none; border-radius:999px; padding:.7rem 1rem;
  font-size:1rem; color:#0d3570; background:#ffffffcc; box-shadow:inset 0 0 0 1px #e5efff; outline:none;
}
.sky-search__form input::placeholder{ color:#6b8cba; opacity:.9; }
.sky-search__btn{
  display:inline-flex; align-items:center; gap:.5rem; border:0; border-radius:999px; padding:.58rem 1rem;
  background:linear-gradient(180deg,#2f72d6,#1e5cc0); color:#fff; font-weight:600;
  box-shadow:0 8px 18px rgba(11,78,162,.25), inset 0 0 0 1px rgba(255,255,255,.15); cursor:pointer;
  transition:transform .14s ease, box-shadow .14s ease, background .14s ease;
}
.sky-search__btn:hover{ transform:translateY(-1px); box-shadow:0 10px 22px rgba(11,78,162,.3), inset 0 0 0 1px rgba(255,255,255,.25); }
.sky-search__form:focus-within{ box-shadow:0 8px 22px rgba(8,45,91,.18), 0 0 0 3px rgba(99,164,255,.45); }
.sky-search__form:focus-within input{ background:#fff; box-shadow:inset 0 0 0 1px var(--sky-border,#cfe2ff); }
@media (max-width:576px){ .sky-search__btn span{display:none} .sky-search__btn{padding:.58rem .7rem} }
.sr-only{ position:absolute!important; width:1px!important; height:1px!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; }

/* === Подсказки (автодополнение) === */
.sky-suggest{
  position:absolute; left:0; right:0; top:100%; margin-top:.5rem; z-index:100003;
  background:#fff; border:1px solid #d7e7ff; border-radius:14px; box-shadow:0 12px 30px rgba(8,45,91,.20);
  padding:.35rem; max-height:60vh; overflow:auto;
}
.sky-suggest[hidden]{ display:none; }
.sky-suggest__item{
  display:flex; align-items:center; gap:.55rem; padding:.58rem .9rem; border-radius:10px;
  color:#0b4ea2; text-decoration:none; box-shadow:inset 0 0 0 1px transparent; transition:background-color .16s, box-shadow .16s, color .16s, transform .16s;
}
.sky-suggest__item:hover,
.sky-suggest__item[aria-selected="true"]{
  background:linear-gradient(180deg,#f2f7ff,#e9f2ff); color:#063a7d; box-shadow:inset 0 0 0 1px #cfe2ff; transform:translateX(2px);
}
.sky-suggest__empty{
  padding:.6rem .9rem; color:#5a789f; opacity:.9;
}

/* Подсветка совпадений в подсказках */
.sky-suggest mark.sky-hl{
  background: #e6f0ff;
  color: #063a7d;
  padding: 0 .05em;
  border-radius: 3px;
  box-shadow: inset 0 0 0 1px #cfe2ff;
}

/* ===== Topbar (темно-голубой, без свечений/подчеркиваний) ===== */
#sp-top-bar{
  background: linear-gradient(180deg, #1b4d9b, #163e84); /* темно-голубой */
  border-bottom: 1px solid rgba(156,201,255,.22);
  box-shadow: 0 6px 18px rgba(0,0,0,.18);
  color: #e6eeff;
  z-index: 1001;
}
#sp-top-bar .container,
#sp-top-bar .container-inner{ padding-top:.40rem; padding-bottom:.40rem; }

/* Ровные ряды: слева служебные, справа соцсети */
#sp-top-bar .tb-links,
#sp-top-bar .tb-social{
  display:flex; align-items:center; gap:.7rem;
  margin:0; padding:0; list-style:none;
  white-space:nowrap;                 /* держим в одну строку */
}
#sp-top-bar .tb-social{ justify-content:flex-end; }
#sp-top-bar .tb-links > li,
#sp-top-bar .tb-social > li{ margin:0; }

/* Ссылки: аккуратные «пилюли», без подчеркиваний и свечений */
#sp-top-bar .tb-links > li > a,
#sp-top-bar .tb-social > li > a{
  display:inline-flex; align-items:center; gap:.48rem;
  padding:.38rem .66rem;
  border-radius:999px;
  text-decoration:none !important;
  background:transparent;
  border:1px solid transparent;
  color:#e6eeff;
  line-height:1.15;
  transition: background-color .14s ease, border-color .14s ease, color .14s ease;
}
#sp-top-bar .tb-links > li > a:hover,
#sp-top-bar .tb-links > li > a:focus-visible,
#sp-top-bar .tb-social > li > a:hover,
#sp-top-bar .tb-social > li > a:focus-visible{
  background: rgba(255,255,255,.12);   /* мягкая заливка */
  border-color: rgba(207,226,255,.35); /* тонкий контур */
  color:#ffffff;
  outline:none;
  text-decoration:none !important;
}

/* FA5 Pro/Brands: строгая фиксация семейств ТОЛЬКО внутри тулбара */
#sp-top-bar .fas{ font-family:"Font Awesome 5 Pro" !important; font-weight:900 !important; }
#sp-top-bar .far{ font-family:"Font Awesome 5 Pro" !important; font-weight:400 !important; }
#sp-top-bar .fal{ font-family:"Font Awesome 5 Pro" !important; font-weight:300 !important; }
#sp-top-bar .fad{ font-family:"Font Awesome 5 Duotone" !important; font-weight:900 !important; }
#sp-top-bar .fab{ font-family:"Font Awesome 5 Brands" !important; font-weight:400 !important; }

/* Иконки: без обводок/тени/свечения, только смена оттенка на hover */
#sp-top-bar [class*="fa-"]{
  font-size:1rem; line-height:1; display:inline-block;
  filter:none !important; text-shadow:none !important; box-shadow:none !important; -webkit-text-stroke:0 !important;
  margin-top:1px; /* легкая вертикальная подгонка */
}

/* Duotone (служебные) — цвета под тёмно-голубой фон */
#sp-top-bar .tb-links .fad{
  --fa-primary-color:#e6eeff;
  --fa-secondary-color:#8fbcff;
  --fa-primary-opacity:1;
  --fa-secondary-opacity:.8;
}
#sp-top-bar .tb-links > li > a:hover .fad,
#sp-top-bar .tb-links > li > a:focus-visible .fad{
  --fa-secondary-opacity:.95; /* без glow, лишь насыщение */
}

/* Соцсети (Brands) — берут цвет текста ссылки, без доп. эффектов */
#sp-top-bar .tb-social .fab{}

/* Фокус для клавиатуры — аккуратное кольцо на всю ссылку */
#sp-top-bar .tb-links > li > a:focus-visible,
#sp-top-bar .tb-social > li > a:focus-visible{
  box-shadow: 0 0 0 3px rgba(99,164,255,.35);
}

/* Мобилки: при нехватке ширины — центр и перенос */
@media (max-width: 991.98px){
  #sp-top-bar .text-lg-right, #sp-top-bar .text-lg-left{ text-align:center !important; }
  #sp-top-bar .tb-links, #sp-top-bar .tb-social{
    justify-content:center; flex-wrap:wrap; white-space:normal;
  }
}

/* === Fonts === */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;600;700&family=Merriweather:wght@300;400&display=swap');

/* === 1) Сжимаем зазор между лого и названием (без ломки сетки) === */
#sp-header .row{ align-items:center; --bs-gutter-x:.45rem; } /* меньше стандартного */
#sp-header #sp-logo .sp-column{ padding-right:.2rem; }
#sp-header #sp-position1 .sp-column{ padding-left:.2rem; }
/* на всякий случай убираем возможный отступ у блока лого */
#sp-header #sp-logo .logo{ margin-right:.1rem; }

/* === 2) Логотип — как было, крупный === */
#sp-header #sp-logo .logo a img.logo-image{ max-height:96px; height:auto; width:auto; }
#sp-header #sp-logo .logo a img.logo-image-phone{ max-height:80px; }

/* === 3) Правая часть: [Название | Контакты] — структура прежняя === */
#sp-header #sp-position1 .sp-module.sky-header .sky-headerinfo{
  display:grid;
  grid-template-columns: 1fr auto;   /* название тянется, контакты — по содержимому */
  column-gap:.5rem;                  /* ближе друг к другу */
  align-items:center;
  padding:.6rem 0;
  color:#0b4ea2;
}

/* критично: позволяем ЛЕВОМУ блоку ужиматься внутри grid */
#sp-header #sp-position1 .sky-headerinfo__name{ min-width:0; }

/* Подзаголовок */
#sp-header #sp-position1 .sky-overline{
  font-family:'Merriweather', serif;
  font-size:.95rem; line-height:1.25;
  opacity:.8; margin-bottom:.18rem;
  white-space:nowrap;
}

/* === 4) НАЗВАНИЕ — всегда ОДНА строка, подстраивает размер === */
#sp-header #sp-position1 .sky-title{
  font-family:'Inter', sans-serif;
  font-weight:700;
  /* авто-подстройка: на широких — крупнее, на узких — сжимается */
  font-size: clamp(1.00rem, 0.68vw + 0.88rem, 1.34rem);
  line-height:1.22;
  letter-spacing:-0.015em;          /* лёгкая ужимка, не портит чтение */
  word-spacing:0;                   /* без лишних межсловных дыр */
  color:#062f6b;
  white-space:nowrap;               /* не переносим */
  overflow:hidden;                  /* не вылезает за блок */
  text-overflow:clip;               /* без многоточия */
}

/* === 5) КОНТАКТЫ — как в прошлом коде (2×2, с разделителем), слегка компактнее === */
#sp-header #sp-position1 .sky-headerinfo__contacts{
  display:grid;
  grid-template-columns:max-content max-content;
  grid-template-areas:
    "addr  phone"
    "mail  a11y";
  gap:.26rem .8rem;
  align-items:center;
  justify-items:start;
  padding-left:.6rem;               /* тонкий зазор от названия */
  border-left:1px solid #d8e6ff;    /* разделитель */
  font-family:'Inter', sans-serif;
  font-weight:600;
  font-size:.9rem;                  /* чуть меньше кегль, как просили */
}
#sp-header #sp-position1 .sky-headerinfo__contacts .hi-link:nth-child(1){ grid-area:addr; }
#sp-header #sp-position1 .sky-headerinfo__contacts .hi-link:nth-child(2){ grid-area:phone; }
#sp-header #sp-position1 .sky-headerinfo__contacts .hi-link:nth-child(3){ grid-area:mail; }
#sp-header #sp-position1 .sky-headerinfo__contacts .hi-link:nth-child(4){ grid-area:a11y; }

/* длинный e-mail можно переносить внутри слова, если уж совсем тесно */
#sp-header #sp-position1 .sky-headerinfo__contacts .hi-link[href^="mailto"] span{
  overflow-wrap:anywhere;
}

/* Ссылки и ховеры — те же, аккуратные */
#sp-header #sp-position1 .hi-link{
  display:inline-flex; align-items:center; gap:.42rem;
  padding:.04rem 0; color:#0b4ea2; background:none; border:none;
  text-decoration:none; white-space:nowrap;
  transition:color .14s ease, text-decoration-color .14s ease, transform .12s ease;
}
#sp-header #sp-position1 .hi-link:hover,
#sp-header #sp-position1 .hi-link:focus-visible{
  color:#063a7d; text-decoration:underline; outline:none;
}
#sp-header #sp-position1 .hi-link i{ transition:transform .12s ease; }
#sp-header #sp-position1 .hi-link:hover i,
#sp-header #sp-position1 .hi-link:focus-visible i{ transform:translateY(-1px); }

/* Иконки — без свечений */
#sp-header #sp-position1 .fal{ font-family:"Font Awesome 5 Pro"; font-weight:300; }
#sp-header #sp-position1 [class*="fa-"]{
  font-size:1rem; line-height:1; display:inline-block;
  filter:none!important; text-shadow:none!important; -webkit-text-stroke:0!important;
}

/* ——— Адаптив ——— */
@media (min-width:1400px){
  /* можно чуть увеличить верхнюю границу размера заголовка на очень широких экранах */
  #sp-header #sp-position1 .sky-title{ font-size: clamp(1.04rem, 0.62vw + 0.98rem, 1.4rem); }
}
@media (max-width:1199.98px){
  /* на планшете — название сверху, контакты ниже; разделитель убираем */
  #sp-header #sp-position1 .sp-module.sky-header .sky-headerinfo{
    grid-template-columns:1fr; row-gap:.5rem;
  }
  #sp-header #sp-position1 .sky-title{ white-space:normal; overflow:visible; }
  #sp-header #sp-position1 .sky-headerinfo__contacts{
    border-left:none; padding-left:0;
  }
}
@media (max-width:767.98px){
  #sp-header #sp-position1 .sky-headerinfo__contacts{
    grid-template-columns:1fr;
    grid-template-areas:
      "addr"
      "phone"
      "mail"
      "a11y";
    gap:.22rem 0;
  }
}

/* ===== Sidebar — Clean Rail with strong header ===== */
@import url('https://fonts.googleapis.com/css2?family=Golos+Text:wght@600;700&display=swap');

:root{
  --aside-ink:#0b4ea2;
  --aside-ink-strong:#063a7d;
  --aside-muted:#5b84c7;

  --aside-surface:#ffffff;
  --aside-surface-tint:#f8fbff;

  --aside-border:#dbe8ff;
  --aside-border-strong:#c1d6ff;

  /* Шапка */
  --aside-header-bg:#0f56b3;           /* тёмно-голубой фон заголовка */
  --aside-header-border:#0a4aa0;       /* рамка шапки */
  --aside-header-text:#ffffff;          /* белый текст */
}

/* ==== ШАПКА МОДУЛЯ (в сайдбаре) ==== */
#sp-left  .sp-module .sp-module-title,
#sp-right .sp-module .sp-module-title{
  display:block;
  margin:0;                              /* объединяем с блоком списка */
  padding:.72rem 1rem .72rem 1.2rem;     /* слева запас под акцент */
  background:var(--aside-header-bg);
  color:var(--aside-header-text);
  border:1px solid var(--aside-header-border);
  border-radius:12px 12px 0 0;           /* общая карточка с нижним блоком */
  font-family:'Golos Text', system-ui, -apple-system, Segoe UI, Roboto, 'PT Sans', sans-serif;
  font-weight:700;
  font-size:1rem;
  line-height:1.2;
  text-transform:uppercase;
  letter-spacing:.06em;
  position:relative;
}

/* Левая вертикальная метка в шапке */
#sp-left  .sp-module .sp-module-title::before,
#sp-right .sp-module .sp-module-title::before{
  content:"";
  position:absolute; left:10px; top:18%; bottom:18%;
  width:4px; border-radius:4px;
  background:rgba(255,255,255,.9);
}

/* ==== СПИСОК — единая «карточка» с шапкой ==== */
#sp-left  .sp-module .sp-module-content > ul.menu,
#sp-right .sp-module .sp-module-content > ul.menu{
  list-style:none;
  margin:0;
  padding:8px;
  background:var(--aside-surface-tint);
  border:1px solid var(--aside-border-strong);
  border-top:none;                        /* стык со шапкой без двойной линии */
  border-radius:0 0 12px 12px;            /* низ общей карточки */
  box-shadow:0 2px 10px rgba(17,41,95,.08);
}

/* Элемент списка */
#sp-left  .sp-module .sp-module-content > ul.menu > li,
#sp-right .sp-module .sp-module-content > ul.menu > li{
  margin:.25rem 0;
}

/* Ссылка = весь ряд, аккуратный rail слева */
#sp-left  .sp-module .sp-module-content > ul.menu > li > a,
#sp-right .sp-module .sp-module-content > ul.menu > li > a{
  position:relative;
  display:flex; align-items:center; gap:.55rem;
  width:100%;
  padding:.56rem .72rem .56rem 1rem;    /* место под левый акцент */
  border-radius:10px;
  color:var(--aside-ink);
  text-decoration:none;
  line-height:1.28;
  background:transparent;
  box-shadow:inset 0 0 0 1px transparent;
  transition:background-color .16s ease, box-shadow .16s ease, color .16s ease, transform .14s ease;
  white-space:normal;                    /* длинные заголовки переносятся */
}

/* Левый акцент строки (тонкий, строгий) */
#sp-left  .sp-module .sp-module-content > ul.menu > li > a::before,
#sp-right .sp-module .sp-module-content > ul.menu > li > a::before{
  content:"";
  position:absolute; left:6px; top:10%; bottom:10%;
  width:3px; border-radius:3px;
  background:var(--aside-ink-strong);
  opacity:0; transform:scaleY(.6);
  transition:opacity .16s ease, transform .16s ease, top .16s ease, bottom .16s ease;
}

/* Ненавязчивая стрелка справа (можно убрать) */
#sp-left  .sp-module .sp-module-content > ul.menu > li > a::after,
#sp-right .sp-module .sp-module-content > ul.menu > li > a::after{
  content:"›";
  margin-left:auto;
  opacity:.45; color:var(--aside-muted);
  transform:translateX(0);
  transition:transform .16s ease, opacity .16s ease, color .16s ease;
}

/* Hover / Active / Focus */
#sp-left  .sp-module .sp-module-content > ul.menu > li > a:hover,
#sp-right .sp-module .sp-module-content > ul.menu > li > a:hover,
#sp-left  .sp-module .sp-module-content > ul.menu > li > a:focus-visible,
#sp-right .sp-module .sp-module-content > ul.menu > li > a:focus-visible,
#sp-left  .sp-module .sp-module-content > ul.menu > li.active > a,
#sp-right .sp-module .sp-module-content > ul.menu > li.active > a,
#sp-left  .sp-module .sp-module-content > ul.menu > li.current > a,
#sp-right .sp-module .sp-module-content > ul.menu > li.current > a{
  background:#fff;
  color:var(--aside-ink-strong);
  box-shadow:inset 0 0 0 1px var(--aside-border-strong);
  transform:translateX(2px);
  outline:none;
}
#sp-left  .sp-module .sp-module-content > ul.menu > li > a:hover::before,
#sp-right .sp-module .sp-module-content > ul.menu > li > a:hover::before,
#sp-left  .sp-module .sp-module-content > ul.menu > li.active > a::before,
#sp-right .sp-module .sp-module-content > ul.menu > li.active > a::before,
#sp-left  .sp-module .sp-module-content > ul.menu > li.current > a::before,
#sp-right .sp-module .sp-module-content > ul.menu > li.current > a::before{
  opacity:1; transform:scaleY(1); top:8%; bottom:8%;
}
#sp-left  .sp-module .sp-module-content > ul.menu > li > a:hover::after,
#sp-right .sp-module .sp-module-content > ul.menu > li > a:hover::after{
  transform:translateX(2px); opacity:.85; color:var(--aside-ink-strong);
}

/* Доступность */
#sp-left  .sp-module .sp-module-content > ul.menu > li > a:focus-visible,
#sp-right .sp-module .sp-module-content > ul.menu > li > a:focus-visible{
  outline:2px solid rgba(99,164,255,.55);
  outline-offset:2px; border-radius:10px;
}

/* Мобила — слегка компактнее */
@media (max-width:575.98px){
  #sp-left  .sp-module .sp-module-title,
  #sp-right .sp-module .sp-module-title{
    padding:.6rem .8rem .6rem 1rem;
    font-size:.95rem;
  }
  #sp-left  .sp-module .sp-module-content > ul.menu > li > a,
  #sp-right .sp-module .sp-module-content > ul.menu > li > a{
    padding:.5rem .6rem .5rem .85rem; border-radius:8px;
  }
}

/* ===== SKY Breadcrumbs — Tab Underline ===== */
:root{
  --bc-ink:#0b4ea2;
  --bc-ink-strong:#063a7d;
  --bc-muted:#5b84c7;
  --bc-underline:#2f6fd1; /* цвет индикатора */
}

/* Контейнер и список: убираем bootstrap-отступы/fon */
.mod-breadcrumbs__wrapper{ background:transparent; border:0; padding:0; color:var(--bc-ink); }
.mod-breadcrumbs__wrapper .mod-breadcrumbs.breadcrumb{
  display:flex; align-items:flex-end; gap:.6rem;
  flex-wrap:wrap; margin:0; padding:0 !important;
  background:transparent; border:0;
}

/* Убрать левый «локатор» */
.mod-breadcrumbs__wrapper .mod-breadcrumbs__divider{ display:none !important; }

/* Элемент пути */
.mod-breadcrumbs__wrapper .mod-breadcrumbs__item{
  position:relative; display:flex; align-items:flex-end; max-width:100%;
}

/* Между пунктами — аккуратная точка (⋅) как разделитель */
.mod-breadcrumbs__wrapper .mod-breadcrumbs__item + .mod-breadcrumbs__item{ padding-left:.65rem; }
.mod-breadcrumbs__wrapper .mod-breadcrumbs__item + .mod-breadcrumbs__item::before{
  content:"·"; position:absolute; left:.2rem; bottom:.45rem;
  color:var(--bc-muted); opacity:.7; line-height:1;
}

/* Ссылки — «табы» с нижним индикатором */
.mod-breadcrumbs__wrapper .mod-breadcrumbs__item > a.pathway{
  position:relative; display:inline-flex; align-items:center; max-width:100%;
  color:var(--bc-ink); text-decoration:none; line-height:1.2;
  padding:.35rem .12rem .42rem;
  font-weight:600; letter-spacing:.02em;
  border-bottom:2px solid transparent;
  transition: color .15s ease, border-color .15s ease, transform .12s ease;
  white-space:nowrap;
}
.mod-breadcrumbs__wrapper .mod-breadcrumbs__item > a.pathway:hover,
.mod-breadcrumbs__wrapper .mod-breadcrumbs__item > a.pathway:focus-visible{
  color:var(--bc-ink-strong);
  border-bottom-color:var(--bc-underline);
  outline:none;
}

/* Текущая страница — активный «таб» */
.mod-breadcrumbs__wrapper .mod-breadcrumbs__item.active > span{
  display:inline-flex; align-items:center; white-space:nowrap;
  padding:.35rem .12rem .42rem;
  color:var(--bc-ink-strong);
  font-weight:700;
  border-bottom:2px solid var(--bc-underline);
}

/* Сброс chevron/slash, которые могут подмешивать темы */
.mod-breadcrumbs__wrapper .mod-breadcrumbs__item + .mod-breadcrumbs__item::marker,
.mod-breadcrumbs__wrapper .mod-breadcrumbs__item + .mod-breadcrumbs__item::after,
.mod-breadcrumbs__wrapper .mod-breadcrumbs__item + .mod-breadcrumbs__item::before:not(:where([content="·"])){
  /* гарантия, что лишних сепараторов не будет */
}

/* Доступность */
.mod-breadcrumbs__wrapper a:focus-visible{
  outline:2px solid rgba(99,164,255,.55);
  outline-offset:2px;
  border-radius:4px;
}

/* Мобила: горизонтальный скролл, без переносов */
@media (max-width:575.98px){
  .mod-breadcrumbs__wrapper .mod-breadcrumbs.breadcrumb{
    flex-wrap:nowrap; overflow:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch;
  }
  .mod-breadcrumbs__wrapper .mod-breadcrumbs.breadcrumb::-webkit-scrollbar{ display:none; }
}

/* Скрыть крошки на главной */
.home .mod-breadcrumbs__wrapper{ display:none !important; }
/* Запасной вариант по Itemid (подставь свой id главной, если нужно): */
/* body.itemid-101 .mod-breadcrumbs__wrapper{ display:none !important; } */

/* ==== HEADER: ближе к логотипу + адаптивная типографика (Grid) ==== */

/* Поджимаем горизонтальные “желоба” и колонку логотипа */
#sp-header .row{ --bs-gutter-x:10px !important; }
@media (min-width:992px){
  #sp-logo{ flex:0 0 12.5% !important; max-width:12.5% !important; }
  #sp-position1{ flex:0 0 87.5% !important; max-width:87.5% !important; }
}
@media (min-width:1200px){
  #sp-logo{ flex-basis:11% !important; max-width:11% !important; }
  #sp-position1{ flex-basis:89% !important; max-width:89% !important; }
}

/* Адаптивность HEADER: Устойчивая сетка: слева название, справа контакты */
#sp-header .sky-headerinfo{
  display: grid;
  grid-template-columns: minmax(0,1fr) auto; /* левая колонка сжимается первая */
  column-gap: 20px;
  row-gap: 6px;
  align-items: center;
  width: 100%;
}

/* Название школы */
#sp-header .sky-headerinfo__name{ min-width:0; }
#sp-header .sky-headerinfo__name .sky-overline{
  margin: 0 0 .25rem;
  font-size: .92rem;
}
#sp-header .sky-headerinfo__name .sky-title{
  margin: 0;
  font-weight: 800;
  letter-spacing: .01em;
  line-height: 1.15;

  /* плавная адаптация к ширине окна (без обрезания) */
  font-size: clamp(22px, 1.1vw + 1rem, 32px);
  text-wrap: balance;   /* красиво распределяет 1–2 строки */
  hyphens: auto;        /* корректные переносы по-русски */
  white-space: normal;  /* разрешаем перенос вместо “обрезания” */
}

/* Контакты справа */
#sp-header .sky-headerinfo__contacts{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 14px 18px; /* межпунктовый интервал (верт x гориз) */
  line-height: 1.25;

  /* тоже чуть “жидко” по ширине окна */
  font-size: clamp(.95rem, .2vw + .9rem, 1.06rem);
}
#sp-header .sky-headerinfo__contacts .hi-link{
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  padding: .25rem .35rem;
  border-radius: 8px;
  text-decoration: none;
}
#sp-header .sky-headerinfo__contacts .hi-link i{ font-size: 1rem; }

/* Чуть плотнее на переходных ширинах */
@media (max-width:1199.98px){
  #sp-header .sky-headerinfo{ column-gap: 16px; }
}

/* Если окно совсем узкое для десктопа — переносим контакты под название */
@media (max-width:1100px){
  #sp-header .sky-headerinfo{
    grid-template-columns: 1fr;
    align-items: flex-start;
  }
  #sp-header .sky-headerinfo__contacts{ margin-top: 4px; }
}

/* Подстраховка от визуальных артефактов */
#sp-header .logo .logo-image{ height: 100px; } /* логотип как был */

:root{
  --hdr-ink:#0b4ea2;
  --hdr-ink-strong:#063a7d;
}

/* ===== HEADER contacts: ghost-pill hover (строго и чисто) ===== */
:root{
  --hdr-ink:#0b4ea2;
  --hdr-ink-strong:#063a7d;
  --hdr-pill-br:#cfe2ff;     /* цвет обводки при hover */
  --hdr-pill-bg:#f3f8ff;     /* мягкая заливка при hover */
}

#sp-header .sky-headerinfo__contacts .hi-link{
  position:relative;
  display:inline-flex; align-items:center; gap:.38rem;
  padding:.28rem .54rem;
  border-radius:10px;
  color:var(--hdr-ink);
  background:transparent;
  border:1px solid transparent;         /* ← нет рамки в базе */
  text-decoration:none !important;
  transition:
    color .16s ease,
    background-color .16s ease,
    border-color .16s ease,
    transform .12s ease;
}

#sp-header .sky-headerinfo__contacts .hi-link i{
  font-size:1rem;
  color:var(--hdr-ink);
  opacity:.9;
  transition: transform .16s ease, color .16s ease, opacity .16s ease;
}

/* hover: только тонкий контур + лёгкая заливка */
#sp-header .sky-headerinfo__contacts .hi-link:hover{
  color:var(--hdr-ink-strong);
  background:var(--hdr-pill-bg);
  border-color:var(--hdr-pill-br);
  transform:translateY(-1px);
}
#sp-header .sky-headerinfo__contacts .hi-link:hover i{
  transform:translateX(2px);
  color:var(--hdr-ink-strong);
  opacity:1;
}

/* active: без «прыжков» */
#sp-header .sky-headerinfo__contacts .hi-link:active{
  transform:translateY(0);
}

/* доступность */
#sp-header .sky-headerinfo__contacts .hi-link:focus-visible{
  outline:2px solid rgba(99,164,255,.55);
  outline-offset:2px;
  border-radius:10px;
}

/* Скрыть кнопку открытия панели DJ-Accessibility везде */
.djacc.djacc-container .djacc__openbtn,
.djacc__openbtn,
.djacc__openbtn--default{
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;

}

/* ==========================================================================
   ФИКС ВЕРХНЕГО МЕНЮ: «ГЛАВНАЯ» И СТАНДАРТИЗАЦИЯ «БЕЗОПАСНОСТЬ»
   ========================================================================== */

/* 1. Блокируем выпадающее меню, мостик и стрелку у пункта «Главная» */
.sp-megamenu-parent > li:first-child .sp-dropdown,
.sp-megamenu-parent > li.item-101 .sp-dropdown,
.sp-megamenu-parent > li:first-child::after,
.sp-megamenu-parent > li.item-101::after,
.sp-megamenu-parent > li:first-child > a::after,
.sp-megamenu-parent > li.item-101 > a::after {
  display: none !important;
  content: none !important;
}

.sp-megamenu-parent > li:first-child > a,
.sp-megamenu-parent > li.item-101 > a {
  padding-right: .95rem !important;
}

/* 2. Полное удаление лишних псевдоэлементов/овалов слева от «Безопасность» */
.sp-megamenu-parent > li:last-child > a::before,
.sp-megamenu-parent > li:last-child > a::after {
  display: none !important;
  content: none !important;
}

/* 3. Обычное состояние «Безопасность» — прозрачное, без постоянной капсулы */
.sp-megamenu-parent > li:last-child > a {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: .6rem .95rem !important;
  border-radius: 999px !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  text-decoration: none !important;
  color: var(--sky-text, #0b4ea2) !important;
  background: transparent !important;
  border: none !important;
  box-shadow: inset 0 0 0 1px transparent !important;
  transition: background-color .15s ease, box-shadow .15s ease, color .15s ease !important;
}

/* 4. Появление капсулы ТОЛЬКО при наведении курсора (Hover / Focus) */
.sp-megamenu-parent > li:last-child > a:hover,
.sp-megamenu-parent > li:last-child > a:focus-visible,
.sp-megamenu-parent > li:last-child:hover > a {
  color: var(--sky-text-strong, #063a7d) !important;
  background: var(--sky-pill, #e1efff) !important;
  box-shadow: 0 6px 14px var(--sky-ring, rgba(11,78,162,.18)), inset 0 0 0 1px var(--sky-border, #cfe2ff) !important;
  outline: none !important;
}

/* 5. Активная капсула ТОЛЬКО когда пользователь находится внутри раздела */
.sp-megamenu-parent > li:last-child.active > a,
.sp-megamenu-parent > li:last-child.current-item > a,
.sp-megamenu-parent > li:last-child > a[aria-current="page"] {
  color: var(--sky-text-strong, #063a7d) !important;
  background: linear-gradient(180deg, #e6f0ff, #d6e8ff) !important;
  box-shadow: 0 8px 18px var(--sky-ring, rgba(11,78,162,.18)), inset 0 0 0 1px #c3ddff !important;
}

/* ==========================================================================
   БОКОВОЙ АККОРДЕОН (ЧИСТЫЙ СТИЛЬ С МЯГКОЙ ПОДЛОЖКОЙ)
   ========================================================================== */

/* 1. Карточка меню */
#sp-left .sp-module .sp-module-content > ul.menu {
  background: #ffffff !important;
  border: 1px solid #d8e5f8 !important;
  border-top: none !important;
  border-radius: 0 0 12px 12px !important;
  padding: 4px 0 !important;
  box-shadow: 0 4px 16px rgba(11, 78, 162, 0.06) !important;
}

/* 2. Разделы верхнего уровня */
#sp-left .sp-module .sp-module-content > ul.menu > li {
  margin: 0 !important;
  border-bottom: 1px solid #edf2f9 !important;
}
#sp-left .sp-module .sp-module-content > ul.menu > li:last-child {
  border-bottom: none !important;
}

/* Ссылки разделов */
#sp-left .sp-module .sp-module-content > ul.menu > li > a,
#sp-left .sp-module .sp-module-content > ul.menu > li > span {
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  padding: .68rem 2.2rem .68rem .95rem !important;
  font-size: .92rem !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
  color: #1e3a68 !important;
  text-decoration: none !important;
  background: transparent !important;
  border-left: 3px solid transparent !important;
  transition: all .16s ease !important;
}

/* Ховер на раздел */
#sp-left .sp-module .sp-module-content > ul.menu > li > a:hover,
#sp-left .sp-module .sp-module-content > ul.menu > li > span:hover {
  background: #f4f8fe !important;
  color: #0b4ea2 !important;
  border-left-color: #90b8f8 !important;
}

/* Раскрытый родительский раздел */
#sp-left .sp-module .sp-module-content > ul.menu > li.menu-parent.is-open > a,
#sp-left .sp-module .sp-module-content > ul.menu > li.menu-parent.is-open > span {
  background: #eef5ff !important;
  color: #0b4ea2 !important;
  font-weight: 700 !important;
  border-left-color: #0b4ea2 !important;
}

/* 3. Тонкая аккуратная стрелочка справа */
#sp-left .sp-module .sp-module-content > ul.menu > li.menu-parent > a::after,
#sp-left .sp-module .sp-module-content > ul.menu > li.menu-parent > span::after {
  content: "" !important;
  position: absolute !important;
  right: 14px !important;
  top: 50% !important;
  width: 7px !important;
  height: 7px !important;
  border-right: 2px solid #627d98 !important;
  border-bottom: 2px solid #627d98 !important;
  border-radius: 1px !important;
  transform: translateY(-70%) rotate(45deg) !important;
  transition: transform .22s ease, border-color .16s ease !important;
  background: none !important;
}

#sp-left .sp-module .sp-module-content > ul.menu > li.menu-parent.is-open > a::after,
#sp-left .sp-module .sp-module-content > ul.menu > li.menu-parent.is-open > span::after {
  transform: translateY(-30%) rotate(-135deg) !important;
  border-color: #0b4ea2 !important;
}

/* 4. Выпадающий блок (контейнер подпунктов) */
#sp-left .sp-module .sp-module-content > ul.menu > li > ul {
  display: block !important;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  background: #f7faff !important; /* Мягкая фоновая плашка внутри раскрытия */
  border-top: 1px solid #e5effd !important;
  transition: max-height .28s cubic-bezier(.4, 0, .2, 1), opacity .2s ease !important;
}

#sp-left .sp-module .sp-module-content > ul.menu > li.is-open > ul {
  opacity: 1 !important;
  padding: 6px 0 !important;
}

/* 5. Дочерние страницы */
#sp-left .sp-module .sp-module-content > ul.menu > li > ul > li {
  margin: 0 !important;
  border: none !important;
}

#sp-left .sp-module .sp-module-content > ul.menu > li > ul > li > a {
  position: relative !important;
  display: block !important;
  padding: .44rem 1rem .44rem 1.6rem !important;
  font-size: .86rem !important;
  line-height: 1.3 !important;
  font-weight: 500 !important;
  color: #486581 !important;
  text-decoration: none !important;
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  transform: none !important;
  transition: all .14s ease !important;
}

/* Точка перед названием подраздела */
#sp-left .sp-module .sp-module-content > ul.menu > li > ul > li > a::before {
  content: "·" !important;
  position: absolute !important;
  left: 12px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  font-size: 1.2rem !important;
  color: #9fb3c8 !important;
  line-height: 1 !important;
}

#sp-left .sp-module .sp-module-content > ul.menu > li > ul > li > a:hover {
  color: #0b4ea2 !important;
  background: #eaf2ff !important;
  transform: translateX(3px) !important;
}

/* Активный открытый подраздел */
#sp-left .sp-module .sp-module-content > ul.menu > li > ul > li.active > a,
#sp-left .sp-module .sp-module-content > ul.menu > li > ul > li.current > a {
  color: #0b4ea2 !important;
  font-weight: 700 !important;
  background: #e1efff !important;
}
#sp-left .sp-module .sp-module-content > ul.menu > li > ul > li.active > a::before,
#sp-left .sp-module .sp-module-content > ul.menu > li > ul > li.current > a::before {
  color: #0b4ea2 !important;
  font-weight: 900 !important;
}

/* ==========================================================================
   ОЧИСТКА СТРЕЛОК В БОКОВОМ МЕНЮ
   ========================================================================== */

/* 1. Полностью глушим старые стрелки «›» у ВСЕХ обычных ссылок */
#sp-left .sp-module .sp-module-content > ul.menu > li > a::after,
#sp-right .sp-module .sp-module-content > ul.menu > li > a::after,
#sp-left .sp-module .sp-module-content > ul.menu > li > span::after,
#sp-right .sp-module .sp-module-content > ul.menu > li > span::after {
  display: none !important;
  content: none !important;
}

/* 2. Показываем шеврон ТОЛЬКО у родительских пунктов, где РЕАЛЬНО есть вложенные страницы */
#sp-left .sp-module .sp-module-content > ul.menu > li.menu-parent > a::after,
#sp-left .sp-module .sp-module-content > ul.menu > li.menu-parent > span::after {
  display: block !important;
  content: "" !important;
  position: absolute !important;
  right: 14px !important;
  top: 50% !important;
  width: 7px !important;
  height: 7px !important;
  border-right: 2px solid #627d98 !important;
  border-bottom: 2px solid #627d98 !important;
  border-radius: 1px !important;
  transform: translateY(-70%) rotate(45deg) !important; /* стрелка вниз ▾ */
  transition: transform .22s ease, border-color .16s ease !important;
}

/* Поворот шеврона при раскрытии папки ▴ */
#sp-left .sp-module .sp-module-content > ul.menu > li.menu-parent.is-open > a::after,
#sp-left .sp-module .sp-module-content > ul.menu > li.menu-parent.is-open > span::after {
  transform: translateY(-30%) rotate(-135deg) !important;
  border-color: #0b4ea2 !important;
}

/* Явный курсор-указатель для всех пунктов бокового меню любого уровня */
#sp-left .sp-module .sp-module-content > ul.menu li a,
#sp-left .sp-module .sp-module-content > ul.menu li span,
#sp-left .sp-module .sp-module-content > ul.menu > li > ul > li > a {
  cursor: pointer !important;
}

/* ==========================================================================
   СТИЛИЗАЦИЯ И ФИКС ВЕРХНЕГО ТУЛБАРА (TOPBAR)
   ========================================================================== */
#sp-top-bar {
  background: #0b4ea2;
  color: #ffffff;
  font-size: 13px;
  position: relative;
  z-index: 1050;
}

#sp-top-bar .container,
#sp-top-bar .container-inner,
#sp-top-bar .sp-column {
  overflow: visible !important;
}

/* Списки */
.tb-links, .tb-social {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1.25rem;
}
.tb-social {
  justify-content: flex-end;
}

/* Ссылки */
.tb-link {
  color: rgba(255, 255, 255, 0.9) !important;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 0;
  font-weight: 500;
  transition: color .18s ease;
}
.tb-link:hover {
  color: #ffffff !important;
  text-shadow: 0 0 8px rgba(255,255,255,0.4);
}

.tb-arrow {
  font-size: 9px;
  margin-left: 2px;
  transition: transform .2s ease;
}

/* Дропдаун контейнер */
.tb-dropdown {
  position: relative;
}

/* Выпадающее меню */
.tb-dropdown-menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 320px;
  max-width: 380px;
  max-height: 75vh;
  overflow-y: auto;
  background: #ffffff;
  border-radius: 10px;
  padding: 6px 0;
  margin: 0;
  list-style: none;
  box-shadow: 0 10px 30px rgba(7, 34, 73, 0.25);
  border: 1px solid #dce7f6;
  z-index: 1060;
}

/* Бесшовный невидимый мостик */
.tb-dropdown-menu::before {
  content: "";
  position: absolute;
  top: -10px;
  left: 0;
  right: 0;
  height: 10px;
}

/* Ховер на десктопе */
@media (hover: hover) {
  .tb-dropdown:hover .tb-dropdown-menu {
    display: block;
    animation: tbFadeIn .18s ease-out forwards;
  }
  .tb-dropdown:hover .tb-arrow {
    transform: rotate(180deg);
  }
}

@keyframes tbFadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to { opacity: 1; transform: translateY(0); }
}

/* Пункты выпадающего списка */
.tb-dropdown-menu li {
  margin: 0;
}
.tb-dropdown-menu .dropdown-item {
  display: block;
  padding: 8px 14px;
  color: #163e84 !important;
  font-size: 13px;
  line-height: 1.35;
  text-decoration: none !important;
  white-space: normal;
  transition: background .15s ease, color .15s ease;
}
.tb-dropdown-menu .dropdown-item:hover {
  background: #f0f6ff !important;
  color: #0b4ea2 !important;
}

/* Фикс отображения иконки VK */
.tb-vk i {
  font-size: 15px;
}

/* ==========================================================================
   ФИКС ИКОНОК В ВЕРХНЕМ ТУЛБАРЕ
   ========================================================================== */

/* 1. Основные иконки (Solid) */
#sp-top-bar .fas,
#sp-top-bar .fa-info-circle,
#sp-top-bar .fa-address-book,
#sp-top-bar .fa-sitemap,
#sp-top-bar .fa-chevron-down {
  font-family: "Font Awesome 5 Free", "Font Awesome 6 Free", "FontAwesome" !important;
  font-weight: 900 !important;
  font-style: normal !important;
  display: inline-block !important;
  line-height: 1 !important;
  margin-right: 4px;
}

/* 2. Иконка ВКонтакте (Brands) */
#sp-top-bar .fab,
#sp-top-bar .fa-vk,
#sp-top-bar [class*="fa-vk"] {
  font-family: "Font Awesome 5 Brands", "Font Awesome 6 Brands", "FontAwesome" !important;
  font-weight: 400 !important;
  font-style: normal !important;
  display: inline-block !important;
  line-height: 1 !important;
  margin-right: 4px;
}

/* ==========================================================================
   ФИКС ПЕРЕКРЫТИЯ МЕНЮ ПОИСКОМ И ШАПКОЙ (Z-INDEX)
   ========================================================================== */

/* 1. Поднимаем секцию верхнего тулбара над всей шапкой */
#sp-top-bar,
section#sp-top-bar,
.sp-top-bar {
  position: relative !important;
  z-index: 99999 !important;
}

/* 2. Гарантируем плотный белый фон и приоритет самому выпадающему списку */
#sp-top-bar .dropdown-menu,
#sp-top-bar .tb-dropdown-menu,
#sp-top-bar .tb-drop-menu {
  background-color: #ffffff !important;
  z-index: 100000 !important;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.25) !important;
}

/* 3. Устанавливаем корректный уровень для блока с логотипом, поиском и меню */
#sp-header,
section#sp-header,
#sp-search,
.search {
  position: relative !important;
  z-index: 100 !important;
}

/* ==========================================================================
   1. ЖЕСТКИЙ ФИКС СЛОЕВ (ТУЛБАР ВСЕГДА ВЫШЕ ПОИСКА И ШАПКИ)
   ========================================================================== */
#sp-top-bar-wrapper,
#sp-top-bar,
section#sp-top-bar {
  position: relative !important;
  z-index: 999999 !important;
  overflow: visible !important;
}

#sp-top-bar .tb-drop-menu,
#sp-top-bar .dropdown-menu {
  position: absolute !important;
  z-index: 1000000 !important;
  background-color: #ffffff !important;
  opacity: 1 !important;
  box-shadow: 0 14px 35px rgba(11, 78, 162, 0.22) !important;
}

/* Снижаем уровень наложения секции шапки и поиска */
#sp-header-wrapper,
#sp-header,
section#sp-header,
#sp-section-1 {
  position: relative !important;
  z-index: 10 !important;
}

/* ==========================================================================
   2. СОВРЕМЕННЫЙ ДИЗАЙН СТРОКИ ПОИСКА (SKY-SEARCH)
   ========================================================================== */
.sky-search {
  position: relative;
  width: 100%;
  max-width: 680px;
  margin: 12px auto;
}

.sky-search__form {
  position: relative;
  display: flex;
  align-items: stretch;
  background: #ffffff;
  border: 1.5px solid #c9daf3;
  border-radius: 50px;
  padding: 3px;
  box-shadow: 0 4px 14px rgba(11, 78, 162, 0.05);
  transition: all .2s ease;
}

/* Подсветка формы при фокусе */
.sky-search__form:focus-within {
  border-color: #0b4ea2;
  box-shadow: 0 4px 18px rgba(11, 78, 162, 0.16);
}

/* Поле ввода */
#site-search-input {
  flex: 1;
  border: none !important;
  background: transparent !important;
  padding: .55rem 1.25rem !important;
  font-size: .95rem !important;
  color: #1e3a68 !important;
  outline: none !important;
  box-shadow: none !important;
}

#site-search-input::placeholder {
  color: #8fa5c2;
  font-weight: 400;
}

/* Кнопка «Поиск» */
.sky-search__btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: linear-gradient(135deg, #0b4ea2 0%, #1565c0 100%) !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 40px !important;
  padding: .5rem 1.35rem !important;
  font-size: .9rem !important;
  font-weight: 600 !important;
  cursor: pointer !important;
  transition: transform .15s ease, box-shadow .15s ease, filter .15s ease !important;
}

.sky-search__btn:hover {
  filter: brightness(1.08);
  box-shadow: 0 4px 12px rgba(11, 78, 162, 0.35) !important;
  transform: translateY(-1px);
}

.sky-search__btn:active {
  transform: translateY(1px);
}

.sky-search__btn i {
  font-size: 13px;
}

/* ==========================================================================
   3. ВЫПАДАЮЩИЕ ПОДСКАЗКИ ПОИСКА (#sky-suggest)
   ========================================================================== */
.sky-suggest {
  position: absolute;
  top: calc(100% + 6px);
  left: 0;
  right: 0;
  background: #ffffff;
  border: 1px solid #d8e5f8;
  border-radius: 14px;
  box-shadow: 0 12px 30px rgba(11, 78, 162, 0.14);
  padding: 8px 0;
  z-index: 50;
  max-height: 320px;
  overflow-y: auto;
}

.sky-suggest:empty,
.sky-suggest[hidden] {
  display: none !important;
}

/* ==========================================================================
   ГЛАВНОЕ НАВИГАЦИОННОЕ МЕНЮ (МЯГКИЙ КАПСУЛЬНЫЙ ДИЗАЙН)
   ========================================================================== */

/* 1. Контейнер меню */
.sp-megamenu-wrapper {
  position: relative;
  display: flex;
  justify-content: center;
  margin: 6px 0 14px;
}

.sp-megamenu-parent {
  display: inline-flex !important;
  align-items: center;
  flex-wrap: wrap;
  gap: 6px 8px; /* Расстояние между капсулами */
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

/* 2. Пункты первого уровня (Капсулы) */
.sp-megamenu-parent > li {
  position: relative;
  margin: 0 !important;
  padding: 0 !important;
}

.sp-megamenu-parent > li > a,
.sp-megamenu-parent > li > span {
  display: inline-flex !important;
  align-items: center;
  gap: 6px;
  padding: .5rem .95rem !important;
  font-size: .92rem !important;
  font-weight: 500 !important;
  color: #1e3a68 !important;
  text-decoration: none !important;
  border-radius: 30px !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  transition: all .18s cubic-bezier(.4, 0, .2, 1) !important;
  line-height: 1.2 !important;
}

/* Наведение на капсулу */
.sp-megamenu-parent > li:hover > a,
.sp-megamenu-parent > li:hover > span,
.sp-megamenu-parent > li.is-open > a {
  color: #0b4ea2 !important;
  background: #f0f6ff !important;
  border-color: #d0e2fb !important;
  transform: translateY(-1px);
}

/* Активная вкладка (текущий раздел) */
.sp-megamenu-parent > li.active > a,
.sp-megamenu-parent > li.current-item > a {
  color: #ffffff !important;
  background: linear-gradient(135deg, #0b4ea2 0%, #1565c0 100%) !important;
  font-weight: 600 !important;
  box-shadow: 0 4px 12px rgba(11, 78, 162, 0.28) !important;
  border-color: transparent !important;
}

/* Стрелочка у пунктов с подменю */
.sp-megamenu-parent > li.sp-has-child > a::after {
  content: "" !important;
  display: inline-block;
  width: 5px;
  height: 5px;
  margin-left: 3px;
  border-right: 1.5px solid currentColor;
  border-bottom: 1.5px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
  transition: transform .2s ease;
}

.sp-megamenu-parent > li.is-open > a::after,
.sp-megamenu-parent > li:hover > a::after {
  transform: translateY(1px) rotate(-135deg);
}

/* 3. Выпадающие окна (Dropdown Mega Menu) */
.sp-dropdown {
  border-radius: 16px !important;
  box-shadow: 0 14px 35px rgba(11, 78, 162, 0.16) !important;
  border: 1px solid #d8e5f8 !important;
  background: #ffffff !important;
  padding: 8px !important;
  margin-top: 8px !important;
}

.sp-dropdown .sp-dropdown-inner {
  padding: 0 !important;
  background: transparent !important;
}

/* Ссылки внутри выпадающего списка */
.sp-dropdown-items > li > a {
  display: flex !important;
  align-items: center;
  padding: .55rem .95rem !important;
  font-size: .88rem !important;
  font-weight: 500 !important;
  color: #33537a !important;
  border-radius: 10px !important;
  text-decoration: none !important;
  transition: all .15s ease !important;
  white-space: normal !important;
}

/* Ховер во вложенном списке */
.sp-dropdown-items > li > a:hover {
  background: #f0f6ff !important;
  color: #0b4ea2 !important;
  transform: translateX(3px) !important;
}

/* Активный подпункт */
.sp-dropdown-items > li.active > a {
  background: #e1efff !important;
  color: #0b4ea2 !important;
  font-weight: 700 !important;
}

/* ==========================================================================
   1. УСТРАНЕНИЕ ДВОЙНОЙ РАМКИ В ВЫПАДАЮЩЕМ МЕНЮ
   ========================================================================== */

/* Сбрасываем внутренние рамки, тени и фоны Helix */
.sp-dropdown .sp-dropdown-inner,
.sp-dropdown .sp-dropdown-items,
.sp-dropdown-inner,
.sp-dropdown-items {
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
  padding: 0 !important;
  margin: 0 !important;
  outline: none !important;
}

/* Оставляем единую чистую рамку только на внешнем окне */
.sp-dropdown {
  border: 1px solid #d8e5f8 !important;
  border-radius: 14px !important;
  box-shadow: 0 12px 30px rgba(11, 78, 162, 0.14) !important;
  background: #ffffff !important;
  padding: 6px !important;
  overflow: hidden !important;
}

/* ==========================================================================
   2. ПРИВЕДЕНИЕ ПУНКТА «БЕЗОПАСНОСТЬ» К ОБЩЕМУ КАПСУЛЬНОМУ СТИЛЮ
   ========================================================================== */

/* Сброс нестандартного цвета/фона у пункта Безопасность */
.sp-megamenu-parent > li > a[href*="bezopasnost"],
.sp-megamenu-parent > li > a[href*="security"],
.sp-megamenu-parent > li[class*="security"] > a,
.sp-megamenu-parent > li[class*="danger"] > a {
  color: #1e3a68 !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  box-shadow: none !important;
  font-weight: 500 !important;
}

/* Ховер для Безопасности как у остальных пунктов */
.sp-megamenu-parent > li > a[href*="bezopasnost"]:hover,
.sp-megamenu-parent > li > a[href*="security"]:hover,
.sp-megamenu-parent > li[class*="security"]:hover > a {
  color: #0b4ea2 !important;
  background: #f0f6ff !important;
  border-color: #d0e2fb !important;
}

/* Активное состояние Безопасности */
.sp-megamenu-parent > li.active > a[href*="bezopasnost"],
.sp-megamenu-parent > li.active > a[href*="security"] {
  color: #ffffff !important;
  background: linear-gradient(135deg, #0b4ea2 0%, #1565c0 100%) !important;
  box-shadow: 0 4px 12px rgba(11, 78, 162, 0.28) !important;
  border-color: transparent !important;
}

/* ==========================================================================
   КОМПАКТНЫЙ И ТОЧНЫЙ БЛОК ШАПКИ (БЕЗ СЖАТИЯ И ПЕРЕКРЫТИЙ)
   ========================================================================== */

.sky-headerinfo {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
  padding: 6px 0;
  width: 100%;
}

/* 1. Название школы */
.sky-headerinfo__name {
  flex: 1 1 auto;
}

.sky-overline {
  font-size: 0.74rem;
  font-weight: 500;
  color: #557295;
  line-height: 1.2;
  margin-bottom: 2px;
}

.sky-title {
  font-size: 1.25rem;
  font-weight: 800;
  line-height: 1.2;
  color: #0b3b75;
  margin: 0;
  white-space: nowrap;
}

/* 2. Сетка контактов: четкое деление 2х2 с запретом переноса строк */
.sky-headerinfo__contacts {
  display: grid;
  grid-template-columns: max-content max-content;
  grid-gap: 5px 18px;
  align-items: center;
  flex: 0 0 auto;
}

/* Ссылки контактов */
.hi-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.82rem;
  font-weight: 500;
  color: #2b4c7e !important;
  text-decoration: none !important;
  line-height: 1;
  white-space: nowrap; /* Запрещаем сплющивание текста */
  transition: color 0.15s ease;
}

.hi-link i {
  font-size: 0.85rem;
  color: #0b4ea2;
  width: 14px;
  text-align: center;
}

.hi-link:hover {
  color: #063a7d !important;
}

.hi-phone {
  font-weight: 700;
  color: #0b3b75 !important;
}

/* 3. Кнопка «Параметры доступности» */
.hi-a11y {
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  padding: 4px 10px !important;
  background: #edf4ff !important;
  border: 1px solid #bfd7f8 !important;
  border-radius: 20px !important;
  color: #0b4ea2 !important;
  font-weight: 600 !important;
  font-size: 0.78rem !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  box-shadow: none !important;
  transition: all 0.18s ease !important;
}

.hi-a11y i {
  color: #0b4ea2 !important;
  font-size: 0.85rem !important;
}

.hi-a11y:hover {
  background: #0b4ea2 !important;
  border-color: #0b4ea2 !important;
  color: #ffffff !important;
  transform: translateY(-1px);
  box-shadow: 0 3px 8px rgba(11, 78, 162, 0.22) !important;
}

.hi-a11y:hover i {
  color: #ffffff !important;
}

/* 4. Адаптивность для мобильных экранов */
@media (max-width: 991px) {
  .sky-headerinfo {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75rem;
  }
  .sky-title {
    white-space: normal;
  }
  .sky-headerinfo__contacts {
    grid-template-columns: 1fr;
    grid-gap: 6px;
    width: 100%;
  }
}

/* Выравнивание текста в кнопках панели доступности */
.djacc-container button,
.djacc-popup button {
  font-size: 12px !important;
  letter-spacing: -0.2px !important;
  line-height: 1.2 !important;
}

/* ==========================================================================
   СОВРЕМЕННЫЙ ПОДВАЛ САЙТА (FOOTER)
   ========================================================================== */
#sp-footer {
  background: linear-gradient(180deg, #07254a 0%, #04172f 100%) !important;
  color: #c0d3eb !important;
  padding: 40px 0 20px !important;
  font-size: 13.5px;
  line-height: 1.5;
}

.sky-footer-wrapper .sf-title {
  color: #ffffff;
  font-size: 1.2rem;
  font-weight: 800;
  margin-bottom: 8px;
}

.sky-footer-wrapper .sf-desc {
  color: #8faecf;
  font-size: 0.82rem;
  line-height: 1.4;
  margin-bottom: 14px;
}

.sky-footer-wrapper .sf-heading {
  color: #ffffff;
  font-size: 0.98rem;
  font-weight: 700;
  margin-bottom: 16px;
  position: relative;
  padding-bottom: 6px;
}

.sky-footer-wrapper .sf-heading::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 28px;
  height: 2px;
  background: #1565c0;
  border-radius: 2px;
}

/* Списки */
.sf-contacts, .sf-links {
  list-style: none;
  padding: 0;
  margin: 0;
}

.sf-contacts li, .sf-links li {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 10px;
}

.sf-contacts i {
  color: #4da1ff;
  font-size: 14px;
  margin-top: 3px;
  flex-shrink: 0;
}

.sf-links a, .sf-contacts a {
  color: #c0d3eb !important;
  text-decoration: none !important;
  transition: all .16s ease;
}

.sf-links i {
  font-size: 10px;
  color: #3b82f6;
  margin-top: 5px;
}

.sf-links a:hover, .sf-contacts a:hover {
  color: #ffffff !important;
  padding-left: 3px;
}

/* Карточки горячих линий */
.sf-card {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 10px;
  padding: 10px 14px;
}

.sf-card-title {
  font-size: 0.78rem;
  color: #8faecf;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 6px;
}

.sf-card-title i {
  color: #38bdf8;
}

.sf-card-phone a {
  font-size: 1.05rem;
  font-weight: 700;
  color: #ffffff !important;
  text-decoration: none !important;
}

.sf-card-sub {
  font-size: 0.72rem;
  color: #6482a6;
}

/* Нижняя панель */
.sf-bottom {
  margin-top: 32px;
  padding-top: 18px;
  border-top: 1px solid rgba(255, 255, 255, 0.08);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
}

.sf-copy {
  font-size: 0.8rem;
  color: #718ea8;
}

.sf-vk-btn {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: rgba(255, 255, 255, 0.07);
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: 20px;
  padding: 5px 14px;
  font-size: 0.8rem;
  text-decoration: none !important;
  transition: all .16s ease;
}

.sf-vk-btn:hover {
  background: #0077ff;
  border-color: #0077ff;
}

/* Отключение старого черного спана Helix */
.sp-copyright {
  display: none !important;
}

/* ==========================================================================
   ФИНАЛЬНАЯ АДАПТИВНОСТЬ: ШАПКА, МЕНЮ И ПАНЕЛЬ DJ-ACCESSIBILITY
   ========================================================================== */

/* 1. Меню-капсула: компактные отступы и защита от переноса */
.sky-pill-menu .nav,
#sp-menu .sp-megamenu-parent {
  display: flex !important;
  flex-wrap: nowrap !important;
  white-space: nowrap !important;
}

@media (max-width: 1280px) {
  #sp-menu .sp-megamenu-parent > li > a,
  .sky-pill-menu .nav > li > a {
    padding: 6px 8px !important;
    font-size: 12px !important;
  }
}

/* 2. Поиск и шапка: гибкая адаптация на экранах до 1100px */
@media (max-width: 1100px) {
  .sp-module #site-search,
  .sky-search-wrapper {
    max-width: 100% !important;
    margin: 8px auto 0 !important;
  }
  
  .header-contacts-block {
    font-size: 12px !important;
  }
}

/* 3. Окно панели доступности: четкая фиксация и отсечение наложений */
#djacc,
.djacc-container,
.djacc-popup {
  z-index: 99999 !important;
  box-shadow: -8px 0 24px rgba(0, 0, 0, 0.18) !important;
}

/* На узких и разделенных экранах делаем панель модальной шторкой */
@media (max-width: 900px) {
  #djacc,
  .djacc-container,
  .djacc-popup {
    width: 100% !important;
    max-width: 360px !important;
    right: 0 !important;
    top: 0 !important;
    height: 100vh !important;
    border-radius: 0 !important;
    overflow-y: auto !important;
  }
}

/* ==========================================================================
   1. ЖЕСТКИЙ ПРИОРИТЕТ ПАНЕЛИ ДОСТУПНОСТИ (ПЕРЕКРЫТИЕ ПОИСКА И МЕНЮ)
   ========================================================================== */
/* Поднимаем панель DJ-Accessibility на абсолютный верхний слой сайта */
#djacc,
.djacc,
.djacc-container,
.djacc__panel,
.djacc-popup,
.djacc-panel {
  position: fixed !important;
  z-index: 2147483647 !important; /* Максимальный z-index в браузерах */
  background: #ffffff !important;
  box-shadow: -10px 0 35px rgba(6, 36, 75, 0.28) !important;
  opacity: 1 !important;
}

/* Принудительно глушим просвечивание элементов под панелью */
.djacc-container *,
.djacc-popup * {
  box-sizing: border-box !important;
}

/* ==========================================================================
   2. ФИКС «КРАКОЗЯБР» И ИКОНОК В ГЛАВНОМ МЕНЮ
   ========================================================================== */
/* Четкая отрисовка любых иконок внутри капсул меню */
.sp-megamenu-parent > li > a i,
.sp-megamenu-parent > li > a .fa,
.sp-megamenu-parent > li > a .fas,
.sp-megamenu-parent > li > a .far {
  font-family: "Font Awesome 5 Free", "Font Awesome 6 Free", "FontAwesome" !important;
  font-weight: 900 !important;
  font-style: normal !important;
  display: inline-block !important;
  margin-right: 6px !important;
  line-height: 1 !important;
  vertical-align: -1px;
}

/* ==========================================================================
   3. АДАПТИВНОСТЬ КАПСУЛ МЕНЮ ПРИ СЖАТИИ (992px – 1300px)
   ========================================================================== */
.sp-megamenu-wrapper {
  width: 100% !important;
  overflow: visible !important;
}

.sp-megamenu-parent {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: nowrap !important; /* Запрещаем ломаться на 2 строки */
  gap: 4px !important;
  width: 100% !important;
}

/* Компактный динамический размер для промежуточных экранов */
@media (max-width: 1320px) and (min-width: 992px) {
  .sp-megamenu-parent > li > a,
  .sp-megamenu-parent > li > span {
    padding: 0.45rem 0.6rem !important;
    font-size: 0.82rem !important;
    letter-spacing: -0.25px !important;
    white-space: nowrap !important;
  }
  
  /* Делаем поисковую строку чуть компактнее, чтобы не давила на шапку */
  .sky-search {
    max-width: 540px !important;
    margin: 8px auto !important;
  }
  #site-search-input {
    padding: 0.45rem 1rem !important;
    font-size: 0.88rem !important;
  }
  .sky-search__btn {
    padding: 0.45rem 1.1rem !important;
    font-size: 0.85rem !important;
  }
}

/* ==========================================================================
   ФИКС НАЛОЖЕНИЯ СТРЕЛОЧЕК (ШЕВРОНОВ) В ГЛАВНОМ МЕНЮ
   ========================================================================== */
/* 1. Выстраиваем ссылку как flex-контейнер */
.sp-megamenu-parent > li > a,
.sp-megamenu-parent > li > span {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
}

/* 2. Глушим любые стрелки у пунктов БЕЗ выпадающего списка */
.sp-megamenu-parent > li:not(.sp-has-child) > a::after,
.sp-megamenu-parent > li:not(.sp-has-child) > a::before,
.sp-megamenu-parent > li:first-child > a::after,
.sp-megamenu-parent > li:last-child > a::after {
  display: none !important;
  content: none !important;
}

/* 3. Глушим встроенные иконки-стрелки Helix (чтобы не двоились) */
.sp-megamenu-parent > li > a .sp-menu-arrow,
.sp-megamenu-parent > li > a .fa-angle-down,
.sp-megamenu-parent > li > a .fa-chevron-down {
  display: none !important;
}

/* 4. Аккуратный шеврон ТОЛЬКО для пунктов с подменю (sp-has-child) */
.sp-megamenu-parent > li.sp-has-child > a::after {
  content: "" !important;
  display: inline-block !important;
  position: static !important;        /* Отменяем absolute, шеврон встает строго ПОСЛЕ слова */
  width: 5px !important;
  height: 5px !important;
  margin-left: 5px !important;        /* Отступ от текста */
  margin-top: -3px !important;
  border-right: 1.5px solid currentColor !important;
  border-bottom: 1.5px solid currentColor !important;
  border-top: none !important;
  border-left: none !important;
  background: transparent !important;
  transform: rotate(45deg) !important; /* Наклон вниз ▾ */
  transition: transform 0.2s ease !important;
  flex-shrink: 0 !important;
}

/* 5. Плавный поворот шеврона вверх при наведении / открытии */
.sp-megamenu-parent > li.sp-has-child:hover > a::after,
.sp-megamenu-parent > li.sp-has-child.is-open > a::after {
  transform: rotate(-135deg) translateY(-1px) !important; /* Наклон вверх ▴ */
}

/* ==========================================================================
   БЕЗОПАСНАЯ АДАПТИВНОСТЬ И ФИКС DJ-ACCESSIBILITY (БЕЗ БЕЛЫХ ЭКРАНОВ)
   ========================================================================== */

/* 1. Полный сброс для контейнера в ЗАКРЫТОМ состоянии */
.djacc,
.djacc-container,
#djacc,
div[class*="djacc"]:not(.djacc--open):not(.is-open):not(.djacc--opened) {
  background: transparent !important;
  box-shadow: none !important;
  border: none !important;
}

/* 2. Гарантированное скрытие закрытой панели */
.djacc:not(.djacc--open):not(.is-open):not(.djacc--opened) .djacc__panel,
.djacc:not(.djacc--open):not(.is-open):not(.djacc--opened) .djacc-panel,
.djacc:not(.djacc--open):not(.is-open):not(.djacc--opened) .djacc-popup,
.djacc-container:not(.djacc--open):not(.is-open):not(.djacc--opened) .djacc__panel {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

/* 3. Стили ОТКРЫТОЙ панели на мониторах и ноутбуках (> 768px) */
@media (min-width: 769px) {
  .djacc.djacc--open .djacc__panel,
  .djacc.is-open .djacc__panel,
  .djacc--opened .djacc__panel,
  .djacc-container.djacc--open .djacc__panel,
  .djacc-container.is-open .djacc__panel,
  #djacc.is-open,
  #djacc.djacc--open {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    position: fixed !important;
    top: 20px !important;
    right: 20px !important;
    width: 360px !important;
    max-width: calc(100vw - 40px) !important;
    max-height: calc(100vh - 40px) !important;
    background: #ffffff !important;
    border-radius: 16px !important;
    box-shadow: 0 12px 40px rgba(6, 36, 75, 0.28) !important;
    padding: 16px !important;
    overflow-y: auto !important;
    z-index: 2147483647 !important;
  }
}

/* 4. Стили ОТКРЫТОЙ панели на смартфонах (до 768px) */
@media (max-width: 768px) {
  .djacc.djacc--open .djacc__panel,
  .djacc.is-open .djacc__panel,
  .djacc--opened .djacc__panel,
  .djacc-container.djacc--open .djacc__panel,
  .djacc-container.is-open .djacc__panel,
  #djacc.is-open,
  #djacc.djacc--open {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    pointer-events: auto !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    background: #ffffff !important;
    border-radius: 0 !important;
    padding: 20px 14px 30px !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch;
    z-index: 2147483647 !important;
  }
}

/* 5. Аккуратные кнопки и элементы внутри панели */
.djacc__panel button,
.djacc-container button {
  min-height: 38px !important;
  font-size: 12px !important;
  box-sizing: border-box !important;
}

/* ==========================================================================
   ОБРАЩЕНИЕ: «ДОРОГИЕ ДРУЗЬЯ!»
   ========================================================================== */
.sky-welcome-card {
  background: #ffffff;
  border: 1px solid #dce7f6;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(11, 78, 162, 0.06);
  margin: 10px 0 24px;
}

/* Фото здания */
.sky-welcome-media {
  width: 100%;
  max-height: 420px;
  overflow: hidden;
}

.sky-welcome-img {
  width: 100% !important;
  height: auto !important;
  max-height: 420px !important;
  object-fit: cover !important;
  display: block;
}

/* Контентная область */
.sky-welcome-content {
  padding: 24px 28px 24px;
}

/* Главный заголовок обращения */
.sky-welcome-title {
  font-size: 1.45rem;
  font-weight: 800;
  color: #0b3b75;
  margin: 0 0 14px;
  line-height: 1.25;
}

/* Текст */
.sky-welcome-text p {
  font-size: 0.95rem;
  line-height: 1.65;
  color: #334e68;
  margin-bottom: 14px;
}

/* Девиз / Цитата */
.sky-welcome-quote {
  background: #f4f8fe;
  border-left: 4px solid #0b4ea2;
  border-radius: 0 12px 12px 0;
  padding: 12px 18px;
  margin: 16px 0;
}

.sky-quote-text {
  font-size: 1.05rem;
  font-weight: 700;
  font-style: italic;
  color: #0b4ea2;
  line-height: 1.35;
}

.sky-quote-author {
  font-size: 0.8rem;
  color: #627d98;
  margin-top: 4px;
}

/* Подпись директора */
.sky-welcome-footer {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid #edf2f9;
}

.sky-author {
  display: inline-flex;
  align-items: center;
  gap: 12px;
}

.sky-author-icon {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #eaf2ff;
  border: 1px solid #c9defc;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #0b4ea2;
  font-size: 16px;
  flex-shrink: 0;
}

.sky-author-name {
  font-size: 0.95rem;
  font-weight: 700;
  color: #0b3b75;
  line-height: 1.25;
}

.sky-author-role {
  font-size: 0.82rem;
  color: #627d98;
  margin-top: 2px;
}

/* Нижний баннер */
.sky-content-banner {
  margin: 24px auto 16px;
  text-align: center;
}

.sky-content-banner img {
  max-width: 100% !important;
  height: auto !important;
  border-radius: 14px !important;
  border: 1px solid #dce7f6 !important;
  box-shadow: 0 8px 24px rgba(11, 78, 162, 0.08) !important;
  display: inline-block;
}

/* Адаптивность */
@media (max-width: 768px) {
  .sky-welcome-content {
    padding: 18px 16px 20px;
  }
  .sky-welcome-title {
    font-size: 1.28rem;
  }
  .sky-quote-text {
    font-size: 0.95rem;
  }
  .sky-welcome-text p {
    font-size: 0.9rem;
  }
}

/* ==========================================================================
   ИНТЕРАКТИВНЫЙ БЛОК НОКО (BUS.GOV.RU)
   ========================================================================== */
.sky-noko-widget {
  background: linear-gradient(135deg, #ffffff 0%, #f7faff 100%);
  border: 1.5px solid #d4e3f8;
  border-radius: 18px;
  padding: 22px 26px 18px;
  margin: 20px 0 28px;
  box-shadow: 0 10px 30px rgba(11, 78, 162, 0.07);
  position: relative;
  overflow: hidden;
}

/* Декоративная подсветка в углу */
.sky-noko-widget::before {
  content: "";
  position: absolute;
  top: -40px;
  right: -40px;
  width: 140px;
  height: 140px;
  background: radial-gradient(circle, rgba(21, 101, 192, 0.08) 0%, transparent 70%);
  pointer-events: none;
}

/* 1. Верхняя строка: бейдж и золотые звёзды */
.sky-noko-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 16px;
}

.sky-noko-badge {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  background: #eaf2ff;
  color: #0b4ea2;
  font-size: 0.78rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.4px;
  padding: 4px 12px;
  border-radius: 20px;
  border: 1px solid #c9defc;
}

.sky-noko-stars {
  display: flex;
  gap: 3px;
  color: #f59e0b; /* Золотой цвет */
  font-size: 1rem;
}

/* 2. Основная область: текст + QR */
.sky-noko-body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.sky-noko-info {
  flex: 1 1 auto;
}

.sky-noko-title {
  font-size: 1.18rem;
  font-weight: 800;
  color: #0b3b75;
  line-height: 1.3;
  margin: 0 0 10px;
}

.sky-noko-desc {
  font-size: 0.9rem;
  line-height: 1.55;
  color: #486581;
  margin-bottom: 16px;
}

.sky-noko-desc strong {
  color: #0b4ea2;
}

/* Кнопки действий */
.sky-noko-actions {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
}

.sky-noko-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #0b4ea2 0%, #1565c0 100%) !important;
  color: #ffffff !important;
  text-decoration: none !important;
  font-weight: 700;
  font-size: 0.88rem;
  padding: 9px 18px;
  border-radius: 30px;
  box-shadow: 0 4px 14px rgba(11, 78, 162, 0.25);
  transition: all 0.18s ease;
}

.sky-noko-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px rgba(11, 78, 162, 0.35);
  filter: brightness(1.06);
}

.sky-noko-link {
  font-size: 0.82rem;
  color: #0b4ea2 !important;
  font-weight: 600;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

.sky-noko-link:hover {
  color: #063a7d !important;
}

/* 3. Блок QR-кода */
.sky-noko-qr {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}

.sky-qr-frame {
  background: #ffffff;
  padding: 8px;
  border-radius: 12px;
  border: 1px solid #d4e3f8;
  box-shadow: 0 4px 14px rgba(11, 78, 162, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
}

.sky-qr-frame img {
  display: block;
  border-radius: 6px;
}

.sky-qr-label {
  font-size: 0.72rem;
  color: #627d98;
  font-weight: 500;
  display: flex;
  align-items: center;
  gap: 4px;
}

/* 4. Нижняя сервисная плашка */
.sky-noko-footer {
  margin-top: 18px;
  padding-top: 12px;
  border-top: 1px solid #e7f0fa;
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.78rem;
  color: #829ab1;
}

.sky-noko-tag {
  font-weight: 700;
  color: #0b4ea2;
  background: #eef5ff;
  padding: 2px 8px;
  border-radius: 6px;
  font-size: 0.72rem;
}

/* Адаптивность для мобильных экранов */
@media (max-width: 768px) {
  .sky-noko-widget {
    padding: 18px 16px;
  }
  
  .sky-noko-body {
    flex-direction: column;
    align-items: stretch;
    gap: 18px;
  }
  
  .sky-noko-qr {
    display: none; /* На телефонах QR не нужен, пользователь сразу жмет кнопку */
  }
  
  .sky-noko-actions {
    flex-direction: column;
    align-items: stretch;
  }
  
  .sky-noko-btn {
    justify-content: center;
  }
}

/* ==========================================================================
   ФИКС КАСКАДНОГО ВЛОЖЕННОГО МЕНЮ 3-ГО УРОВНЯ (HELIX ULTIMATE)
   ========================================================================== */

/* 1. Снятие обрезки у родительских контейнеров */
.sp-megamenu-parent .sp-dropdown,
.sp-megamenu-parent .sp-dropdown-inner {
  overflow: visible !important;
}

/* 2. Удержание видимости основного выпадающего меню 1-го уровня */
.sp-megamenu-parent > li.sp-has-child:hover > .sp-dropdown,
.sp-megamenu-parent > li.sp-has-child.is-open > .sp-dropdown {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* 3. Фиксация родительского пункта подменю */
.sp-megamenu-parent .sp-dropdown-items > li.sp-has-child {
  position: relative !important;
}

/* 4. Позиционирование выпадающего блока 3-го уровня */
.sp-megamenu-parent .sp-dropdown-items > li.sp-has-child > .sp-dropdown-sub {
  position: absolute !important;
  top: 0 !important;
  left: 100% !important;
  margin-left: -6px !important; /* Нахлест исключает зазор между блоками */
  right: auto !important;
  display: none !important;
  min-width: 270px !important;
  background-color: #ffffff !important;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.18) !important;
  border-radius: 4px !important;
  padding: 6px 0 !important;
  z-index: 999999 !important;

  /* Главный фикс: разрешаем мыши взаимодействовать с блоком */
  pointer-events: auto !important;
}

/* 5. Отключение блокирующих псевдоэлементов */
.sp-megamenu-parent .sp-dropdown-items > li.sp-has-child > .sp-dropdown-sub::before {
  display: none !important;
}

/* 6. Отображение блока 3-го уровня при наведении или наличии класса активности */
.sp-megamenu-parent .sp-dropdown-items > li.sp-has-child:hover > .sp-dropdown-sub,
.sp-megamenu-parent .sp-dropdown-items > li.sp-has-child.is-open > .sp-dropdown-sub {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

/* 7. Ссылки внутри выпадающего меню 3-го уровня и их отклик на ховер */
.sp-megamenu-parent .sp-dropdown-sub ul.sp-dropdown-items > li > a {
  display: block !important;
  padding: 9px 18px !important;
  color: #333333 !important;
  font-size: 14px !important;
  line-height: 1.4 !important;
  text-decoration: none !important;
  cursor: pointer !important;
  pointer-events: auto !important;
  position: relative !important;
  z-index: 2 !important;
  transition: background-color 0.15s ease, color 0.15s ease !important;
}

/* Четкая подсветка пункта при наведении мыши */
.sp-megamenu-parent .sp-dropdown-sub ul.sp-dropdown-items > li > a:hover {
  background-color: #eaf2fd !important;
  color: #0b5ed7 !important;
}

/* ==========================================================================
   МОНОЛИТНЫЕ КАРТОЧКИ-КАРУСЕЛЬ НАД ФУТЕРОМ (СТИЛЬ ОНФ)
   ========================================================================== */

#sp-bottom {
  background: #f8fafc !important;
  border-top: 1px solid #e2e8f0 !important;
  padding: 40px 0 50px 0 !important;
}

.onf-carousel-section {
  max-width: 1240px;
  margin: 0 auto;
  padding: 0 15px;
  box-sizing: border-box;
}

/* 1. Верхняя панель со стрелками */
.onf-carousel-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 24px;
}

.onf-carousel-heading {
  font-size: 21px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  text-transform: uppercase !important;
  letter-spacing: 0.04em !important;
  margin: 0 !important;
}

.onf-carousel-nav {
  display: flex;
  gap: 10px;
}

.onf-nav-btn {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid #cbd5e1;
  background: #ffffff;
  color: #475569;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 15px;
  transition: all 0.2s ease;
  outline: none;
}

.onf-nav-btn:hover {
  background: #0b5ed7;
  border-color: #0b5ed7;
  color: #ffffff;
  box-shadow: 0 4px 12px rgba(11, 94, 215, 0.25);
}

/* 2. Горизонтальный трек карусели */
.onf-carousel-track {
  display: flex !important;
  gap: 20px !important;
  overflow-x: auto !important;
  scroll-behavior: smooth !important;
  scroll-snap-type: x mandatory !important;
  padding: 6px 4px 22px 4px !important;
  margin-bottom: -10px !important;
  scrollbar-width: none !important;
}

.onf-carousel-track::-webkit-scrollbar {
  display: none !important;
}

/* 3. Корпус монолитной карточки (280px) */
.onf-card {
  flex: 0 0 280px !important;
  min-width: 280px !important;
  scroll-snap-align: start !important;
  display: flex !important;
  flex-direction: column !important;
  background: #ffffff !important;
  border-radius: 18px !important;
  border: 1px solid #e2e8f0 !important;
  overflow: hidden !important;
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.05) !important;
  text-decoration: none !important;
  color: inherit !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease !important;
  box-sizing: border-box !important;
}

.onf-card:hover {
  transform: translateY(-6px) !important;
  box-shadow: 0 16px 32px rgba(0, 0, 0, 0.12) !important;
  border-color: #cbd5e1 !important;
}

/* 4. Верхняя медиа-часть: Edge-to-Edge без внутренних полей */
.onf-card-media {
  height: 175px !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: relative !important;
  background: #0f172a;
}

.onf-card-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
  transition: transform 0.35s ease !important;
}

.onf-card:hover .onf-card-media img {
  transform: scale(1.04);
}

/* 5. Цветовые подложки */
.onf-media--rezonans {
  background: #ffffff !important;
  border-bottom: 1px solid #e2e8f0 !important;
}

.onf-media--red {
  background: linear-gradient(135deg, #dc2626, #b91c1c) !important;
}

.onf-media--darkblue {
  background: linear-gradient(135deg, #1e3a8a, #0f172a) !important;
}

.onf-media-content {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  width: 100% !important;
  height: 100% !important;
  padding: 14px 10px !important;
  box-sizing: border-box !important;
}

/* Верхние подзаголовки плашек */
.onf-badge {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  color: rgba(255, 255, 255, 0.85) !important;
  margin-bottom: 8px !important;
  text-transform: uppercase !important;
}

.onf-badge-rez {
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: 0.12em !important;
  color: #64748b !important;
  margin-bottom: 8px !important;
  text-transform: uppercase !important;
}

/* Главный заголовок газеты: строго в одну строку */
.onf-title-rez {
  font-family: "Arial Black", "Arial", sans-serif !important;
  font-size: 21px !important;
  font-weight: 900 !important;
  color: #000000 !important;
  letter-spacing: 0.5px !important;
  white-space: nowrap !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
}

/* Главные заголовки цветных плашек */
.onf-headline {
  font-family: "Arial Black", "Impact", -apple-system, BlinkMacSystemFont, sans-serif !important;
  font-size: 24px !important;
  font-weight: 900 !important;
  color: #ffffff !important;
  line-height: 1.15 !important;
  letter-spacing: 0.03em !important;
  text-transform: uppercase !important;
  text-shadow: 0 2px 4px rgba(0, 0, 0, 0.2) !important;
}

/* ЭПОС.ШКОЛА: строго в одну строку без переноса */
.onf-headline--epos {
  font-size: 22px !important;
  white-space: nowrap !important;
  letter-spacing: 0.04em !important;
  line-height: 1 !important;
}

/* 6. Нижняя часть карточки (текстовый подвал) */
.onf-card-footer {
  padding: 18px 20px 22px 20px !important;
  display: flex !important;
  flex-direction: column !important;
  flex-grow: 1 !important;
  background: #ffffff !important;
}

.onf-title-text {
  font-size: 17px !important;
  font-weight: 800 !important;
  color: #0f172a !important;
  line-height: 1.3 !important;
  margin: 0 0 6px 0 !important;
  transition: color 0.2s ease !important;
}

.onf-card:hover .onf-title-text {
  color: #0b5ed7 !important;
}

.onf-desc-text {
  font-size: 13.5px !important;
  color: #475569 !important;
  line-height: 1.45 !important;
  margin: 0 !important;
}

/* ==========================================================================
   ПОЛНЫЙ КОМПЛЕКСНЫЙ CSS ДЛЯ МОБИЛЬНОГО МЕНЮ HELIX ULTIMATE
   (Шторка, крестик, стрелки-шевроны, поиск, аккордеон и фикс перекрытия)
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. БАЗОВАЯ ЗАЩИТА ЭКРАНА И ФИКС ПЕРЕКРЫТИЯ ПЛАГИНОМ ДОСТУПНОСТИ
   -------------------------------------------------------------------------- */
html, body {
    overflow-x: hidden !important;
}

/* Запрещаем невидимым слоям DJ-Accessibility блокировать клики */
#djacc,
section.djacc,
.djacc_container,
.djacc_popup,
.djacc--sticky {
    pointer-events: none !important;
}

/* Но кнопки самого виджета доступности в углу оставляем рабочими */
section.djacc .djacc__openbtn,
section.djacc .djacc_btn,
section.djacc .djacc__panel,
section.djacc button,
section.djacc a {
    pointer-events: auto !important;
}

/* --------------------------------------------------------------------------
   2. ГЕОМЕТРИЯ ШТОРКИ И КНОПКА-ГАМБУРГЕР В ШАПКЕ
   -------------------------------------------------------------------------- */
/* Когда меню закрыто: бургер в шапке доступен для клика */
#offcanvas-toggler,
.burger-icon,
.offcanvas-toggler {
    position: relative !important;
    z-index: 100 !important;
    cursor: pointer !important;
    pointer-events: auto !important;
}

/* Когда меню открыто: скрываем бургер в шапке, чтобы он не просвечивал сквозь шторку */
body.offcanvas-active #sp-header #offcanvas-toggler,
body.offcanvas-active #sp-header .burger-icon,
body.offcanvas-active #sp-header .offcanvas-toggler {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

/* Затемняющая фоновая подложка */
.offcanvas-overlay {
    z-index: 99990 !important;
    cursor: pointer !important;
}

/* Сама шторка мобильного меню: анимация и плавный сдвиг */
.offcanvas-menu {
    width: 320px !important;
    max-width: 85vw !important;
    background: #ffffff !important;
    box-shadow: 4px 0 25px rgba(0, 0, 0, 0.15) !important;
    display: flex !important;
    flex-direction: column !important;
    z-index: 999999 !important;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Надежное скрытие за экран в закрытом состоянии */
body:not(.offcanvas-active) .offcanvas-menu {
    transform: translateX(-105%) !important;
    left: -105% !important;
    visibility: hidden !important;
    pointer-events: none !important;
    box-shadow: none !important;
}

/* Открытое состояние */
body.offcanvas-active .offcanvas-menu {
    transform: translateX(0) !important;
    left: 0 !important;
    visibility: visible !important;
    pointer-events: auto !important;
}

/* Контейнер с прокруткой внутри шторки */
.offcanvas-inner {
    padding: 0 16px 35px 16px !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
}

/* --------------------------------------------------------------------------
   3. ШАПКА ШТОРКИ И ЕДИНСТВЕННЫЙ КРЕСТИК ЗАКРЫТИЯ СПРАВА
   -------------------------------------------------------------------------- */
.offcanvas-menu > .d-flex.justify-content-between {
    padding: 16px 16px 14px 16px !important;
    border-bottom: 1px solid #f1f5f9 !important;
    margin-bottom: 12px !important;
    position: relative !important;
}

/* Заголовок «Меню сайта» слева */
.offcanvas-menu > .d-flex.justify-content-between::before {
    content: "Меню сайта";
    font-size: 16px;
    font-weight: 700;
    color: #0f172a;
    line-height: 34px;
}

/* Уничтожаем любые полоски и левые дубликаты иконок внутри ссылки закрытия */
.offcanvas-menu .close-offcanvas .burger-icon,
.offcanvas-menu .close-offcanvas span {
    display: none !important;
}

/* Единственная правая круглая кнопка закрытия */
.offcanvas-menu .close-offcanvas,
.offcanvas-menu a.close-offcanvas {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    position: absolute !important;
    top: 14px !important;
    right: 14px !important;
    left: auto !important;
    width: 34px !important;
    height: 34px !important;
    border-radius: 50% !important;
    background: #f1f5f9 !important;
    border: 1px solid #e2e8f0 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
    text-decoration: none !important;
    cursor: pointer !important;
    pointer-events: auto !important;
    z-index: 100000 !important;
    padding: 0 !important;
    margin: 0 !important;
    transition: background-color 0.2s ease, transform 0.15s ease !important;
}

/* Четкий векторный крестик ✕ внутри кнопки */
.offcanvas-menu .close-offcanvas::after {
    content: "✕" !important;
    font-family: Arial, sans-serif !important;
    font-size: 15px !important;
    font-weight: 700 !important;
    color: #475569 !important;
    line-height: 1 !important;
}

.offcanvas-menu .close-offcanvas:hover {
    background: #e2e8f0 !important;
    color: #0f172a !important;
}

/* --------------------------------------------------------------------------
   4. СТРОКА ПОИСКА ВНУТРИ ШТОРКИ
   -------------------------------------------------------------------------- */
.offcanvas-menu .header-modules {
    margin-bottom: 16px !important;
}

.offcanvas-menu .js-finder-search-query {
    height: 42px !important;
    border-radius: 10px !important;
    border: 1px solid #cbd5e1 !important;
    background: #f8fafc !important;
    padding: 0 14px !important;
    font-size: 14px !important;
    box-shadow: none !important;
    transition: all 0.2s ease !important;
}

.offcanvas-menu .js-finder-search-query:focus {
    background: #ffffff !important;
    border-color: #0b5ed7 !important;
    box-shadow: 0 0 0 3px rgba(11, 94, 215, 0.12) !important;
}

/* --------------------------------------------------------------------------
   5. ПУНКТЫ МЕНЮ И ТАЧ-ЗОНЫ
   -------------------------------------------------------------------------- */
.offcanvas-menu ul.menu {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.offcanvas-menu ul.menu > li {
    border-bottom: 1px solid #f1f5f9 !important;
}

.offcanvas-menu ul.menu li a,
.offcanvas-menu ul.menu li .menu-separator {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    min-height: 46px !important;
    padding: 10px 4px !important;
    color: #1e293b !important;
    font-size: 14.5px !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: color 0.15s ease !important;
}

.offcanvas-menu ul.menu li a:hover {
    color: #0b5ed7 !important;
}

/* --------------------------------------------------------------------------
   6. ЧИСТЫЕ СТРЕЛКИ-ШЕВРОНЫ (БЕЗ РАМОК, ФОНА И КВАДРАТНЫХ КНОПОК)
   -------------------------------------------------------------------------- */
/* Невидимая тач-зона для удобного нажатия пальцем */
.offcanvas-menu .menu-toggler {
    width: 36px !important;
    height: 36px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: transparent !important; /* Полностью прозрачный фон */
    border: none !important;            /* Никаких рамок */
    border-radius: 0 !important;
    box-shadow: none !important;
    flex-shrink: 0 !important;
    margin-left: auto !important;
    padding: 0 !important;
    cursor: pointer !important;
}

/* Сам шеврон: тонкий, четкий угол без лишних коробок */
.offcanvas-menu .menu-toggler::after {
    content: "" !important;
    display: inline-block !important;
    width: 8px !important;
    height: 8px !important;
    border-right: 2px solid #64748b !important;
    border-bottom: 2px solid #64748b !important;
    transform: rotate(-45deg) !important; /* Смотрит вправо > */
    transition: transform 0.25s ease, border-color 0.2s ease !important;
}

/* Стрелка при наведении курсора */
.offcanvas-menu .menu-toggler:hover::after {
    border-color: #0b5ed7 !important;
}

/* Открытое состояние: плавный поворот вниз и синий цвет */
.offcanvas-menu li.menu-parent.menu-parent-open > a > .menu-toggler,
.offcanvas-menu li.menu-parent[aria-expanded="true"] > a > .menu-toggler,
.offcanvas-menu li.menu-parent.menu-parent-open > .menu-separator > .menu-toggler,
.offcanvas-menu li.menu-parent[aria-expanded="true"] > .menu-separator > .menu-toggler {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.offcanvas-menu li.menu-parent.menu-parent-open > a > .menu-toggler::after,
.offcanvas-menu li.menu-parent[aria-expanded="true"] > a > .menu-toggler::after,
.offcanvas-menu li.menu-parent.menu-parent-open > .menu-separator > .menu-toggler::after,
.offcanvas-menu li.menu-parent[aria-expanded="true"] > .menu-separator > .menu-toggler::after {
    transform: rotate(45deg) !important; /* Смотрит вниз ˅ */
    border-color: #0b5ed7 !important;
}

/* --------------------------------------------------------------------------
   7. ВЛОЖЕННЫЕ ПОДМЕНЮ (УРОВНИ 2 И 3)
   -------------------------------------------------------------------------- */
.offcanvas-menu ul.mod-menu__sub,
.offcanvas-menu ul.menu-child {
    display: none; /* Управляется скриптом двустороннего аккордеона */
    padding-left: 14px !important;
    border-left: 2px solid #e2e8f0 !important;
    margin: 4px 0 10px 8px !important;
}

.offcanvas-menu li.menu-parent.menu-parent-open > ul.mod-menu__sub,
.offcanvas-menu li.menu-parent[aria-expanded="true"] > ul.mod-menu__sub,
.offcanvas-menu li.menu-parent.menu-parent-open > ul.menu-child,
.offcanvas-menu li.menu-parent[aria-expanded="true"] > ul.menu-child {
    display: block !important;
}

.offcanvas-menu ul.mod-menu__sub a {
    font-size: 13.5px !important;
    font-weight: 400 !important;
    color: #475569 !important;
    min-height: 40px !important;
}

/* --------------------------------------------------------------------------
   8. РАЗДЕЛИТЕЛЬ ДЛЯ ВТОРОГО МОДУЛЯ («ИНФОРМАЦИЯ»)
   -------------------------------------------------------------------------- */
.offcanvas-menu .sp-module.info-accordion {
    margin-top: 22px !important;
    padding-top: 18px !important;
    border-top: 1px solid #e2e8f0 !important;
}

.offcanvas-menu .sp-module.info-accordion::before {
    content: "РАЗДЕЛЫ И СЕРВИСЫ";
    display: block;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: #94a3b8;
    margin-bottom: 8px;
    padding-left: 4px;
}

/* --------------------------------------------------------------------------
   9. ЦВЕТОВЫЕ АКЦЕНТЫ
   -------------------------------------------------------------------------- */
/* Оранжевый акцент на питании (требование мониторинга) */
.offcanvas-menu a[href*="food"],
.offcanvas-menu a[href*="pitanie"] {
    color: #d97706 !important;
    font-weight: 600 !important;
}

/* Активный пункт текущей страницы */
.offcanvas-menu li.current > a {
    color: #0b5ed7 !important;
    font-weight: 700 !important;
}

/* ========================================================
   ТОЧНАЯ РАЗМЕТКА БАННЕРА ГОСУСЛУГ (ПОЛНАЯ ШИРИНА)
   ======================================================== */

#sp-banner-gosuslugi {
    margin: 25px 0 20px 0 !important;
    padding: 0 !important;
}

/* 1. Общий контейнер: синий градиент и скругление */
#sp-banner-gosuslugi #js-show-iframe-wrapper {
    background: linear-gradient(138.4deg, #38bafe 26.49%, #2d73bc 79.45%) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 18px rgba(13, 76, 211, 0.12) !important;
    width: 100% !important;
}

/* 2. Десктопная версия (от 768px): Текст слева, Дети справа */
@media (min-width: 768px) {
    #sp-banner-gosuslugi .bf-29 {
        display: grid !important;
        grid-template-columns: 1fr 380px !important; /* Левая колонка — контент, правая — иллюстрация */
        min-height: 220px !important;
        width: 100% !important;
    }

    /* Левая часть: текст и кнопка */
    #sp-banner-gosuslugi .bf-29__content {
        grid-column: 1 !important;
        grid-row: 1 !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        align-items: flex-start !important;
        padding: 30px 40px !important;
        background: transparent !important;
    }

    #sp-banner-gosuslugi .bf-29__text {
        font-size: 20px !important;
        font-weight: 700 !important;
        line-height: 1.35 !important;
        color: #ffffff !important;
        text-align: left !important;
        margin: 0 0 20px 0 !important;
        max-width: 520px !important;
    }

    #sp-banner-gosuslugi .bf-29__btn-wrap {
        width: auto !important;
    }

    #sp-banner-gosuslugi .pos-banner-btn_2 {
        display: inline-flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 230px !important;
        min-height: 48px !important;
        background: #ffffff !important;
        color: #0b1f33 !important;
        font-size: 16px !important;
        font-weight: 600 !important;
        border-radius: 8px !important;
        border: none !important;
        box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1) !important;
        cursor: pointer !important;
    }

    #sp-banner-gosuslugi .pos-banner-btn_2:hover {
        background: #f1f5f9 !important;
    }

    /* Правая часть: белая плашка с детьми и логотипом */
    #sp-banner-gosuslugi .bf-29__decor {
        grid-column: 2 !important;
        grid-row: 1 !important;
        display: block !important;
        position: relative !important;
        background-color: #ffffff !important;
        background-image: url("https://pos.gosuslugi.ru/bin/banner-fluid/25/banner-fluid-bg-25-1.svg") !important;
        background-repeat: no-repeat !important;
        background-position: center bottom !important;
        background-size: 270px auto !important;
        min-height: 220px !important;
        width: 100% !important;
    }

    #sp-banner-gosuslugi .bf-29__logo-wrap {
        position: absolute !important;
        top: 14px !important;
        right: 18px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
        padding: 0 !important;
    }

    #sp-banner-gosuslugi .bf-29__logo {
        width: 125px !important;
        height: auto !important;
    }

    #sp-banner-gosuslugi .bf-29__slogan {
        font-size: 13.5px !important;
        font-weight: 700 !important;
        color: #005ca9 !important;
        margin-top: 2px !important;
    }
}

/* 3. Мобильная адаптация (до 767px) */
@media (max-width: 767px) {
    #sp-banner-gosuslugi .bf-29 {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
    }

    #sp-banner-gosuslugi .bf-29__decor {
        display: block !important;
        height: 150px !important;
        background-color: #ffffff !important;
        background-image: url("https://pos.gosuslugi.ru/bin/banner-fluid/25/banner-fluid-bg-25-1.svg") !important;
        background-position: center bottom !important;
        background-size: contain !important;
        background-repeat: no-repeat !important;
        position: relative !important;
    }

    #sp-banner-gosuslugi .bf-29__logo-wrap {
        position: absolute !important;
        top: 10px !important;
        right: 14px !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: flex-end !important;
    }

    #sp-banner-gosuslugi .bf-29__logo {
        width: 110px !important;
    }

    #sp-banner-gosuslugi .bf-29__slogan {
        font-size: 12px !important;
        color: #005ca9 !important;
        font-weight: 700 !important;
    }

    #sp-banner-gosuslugi .bf-29__content {
        padding: 20px 16px !important;
        text-align: center !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    #sp-banner-gosuslugi .bf-29__text {
        color: #ffffff !important;
        font-size: 15px !important;
        font-weight: 700 !important;
        margin-bottom: 14px !important;
        text-align: center !important;
    }

    #sp-banner-gosuslugi .bf-29__btn-wrap {
        width: 100% !important;
    }

    #sp-banner-gosuslugi .pos-banner-btn_2 {
        width: 100% !important;
        min-height: 44px !important;
        background: #ffffff !important;
        color: #0b1f33 !important;
        font-size: 15px !important;
        font-weight: 600 !important;
        border-radius: 8px !important;
        border: none !important;
    }
}

/* Чистый нейтральный фон страницы без лишних картинок */
body.site.helix-ultimate {
    background-image: none !important;
    background-color: #f1f5f9 !important;
}