/*
 * Второй слой золотого стандарта: настоящая резинка на широких экранах + визуал.
 * Шаблон 2011 года рисует плашки и уголки растровыми картинками фиксированной ширины
 * (overlays/*.png) — из-за них сайт не тянулся. Здесь они гасятся и заменяются
 * настоящим CSS: цвет, градиент, рамка, скругление. Установлено 17.09.2026.
 */

/* ===== 1. РЕЗИНКА НА ШИРОКИХ ЭКРАНАХ ===== */
.rt-container {
  max-width: 1320px !important;
}

/* фон-баннер шапки (девушка с книгой) — оставляем, но растягиваем по ширине:
   в оригинале он был фиксированной картинкой и обрывался на широком экране */
#rt-page-background {
  background-position: top center !important;
  background-size: 100% auto !important;
  background-repeat: no-repeat !important;
  background-color: #f7f5f1 !important;
}

/* ===== 2. ПЛАШКИ ВМЕСТО КАРТИНОК ===== */

/* тело сайта — одна белая карточка со скруглением, а не три слоя картинок */
.rt-box-bg, .rt-box-bg2, .rt-box-bg3 {
  background-image: none !important;
  background-color: transparent !important;
  width: auto !important;
  margin: 0 !important;
}
.rt-box-bg3 {
  background-color: #ffffff !important;
  border: 1px solid #e8e2d4 !important;
  border-radius: 14px !important;
  overflow: hidden;
}
/* верх/низ коробки рисовались картинками-уголками — они больше не нужны */
.rt-box-top, .rt-box-top2, .rt-box-top3,
.rt-box-bottom, .rt-box-bottom2, .rt-box-bottom3 {
  display: none !important;
}
/* декоративные тени-картинки между секциями заменяем тонкой линией */
.rt-shadowbar {
  background-image: none !important;
  height: 1px !important;
  background: #ece6d9 !important;
  margin: 0 !important;
}

/* меню — сплошная плашка, тянется на любую ширину.
   высоту не фиксируем: кнопки стали выше, старая жёсткая высота их резала */
#rt-navigation {
  background-image: none !important;
  background: linear-gradient(180deg, #b3ce77 0%, #9dbc5f 100%) !important;
  border-radius: 10px 10px 0 0;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}
#rt-navigation .nopill,
#rt-navigation ul.menutop.level1,
#rt-navigation ul.menutop.level1 > li.root {
  height: auto !important;
  line-height: normal !important;
}
#rt-navigation ul.menutop.level1 > li.root {
  background-image: none !important;
  border-right: 1px solid rgba(255,255,255,.35);
}
#rt-navigation ul.menutop.level1 > li.root:last-child {
  border-right: 0;
}
#rt-navigation ul.menutop.level1 > li.root.active,
#rt-navigation ul.menutop.level1 > li.root:hover {
  background: rgba(255,255,255,.25) !important;
}

/* витрина/фичи — убираем растровые оверлеи */
#rt-showcase, #rt-feature, #rt-drawer, #rt-top, #rt-header,
#rt-bottom-surround, #rt-footerbar, #rt-footer {
  background-image: none !important;
}

/* ===== 3. КАРТОЧКИ: рамка + тон, скругление, отступы (без тени — по стандарту) ===== */
#rt-mainbody .rt-block,
#rt-feature .rt-block,
#rt-bottom-surround .rt-block {
  background: #fffdf8;
  border: 1px solid #ece5d6;
  border-radius: 12px;
  padding: 18px 20px;
  margin: 0 0 20px;
}
/* карточки в карточках запрещены стандартом — вложенные блоки без рамки */
.rt-block .rt-block {
  border: 0;
  background: transparent;
  padding: 0;
}

/* ===== 4. ОТСТУПЫ МЕЖДУ СЕКЦИЯМИ ===== */
#rt-showcase, #rt-feature, #rt-mainbody, #rt-bottom-surround {
  padding: 22px 0;
}
#rt-mainbody .component-content {
  padding: 4px 22px 22px;
}

/* ===== 4.5 МЕНЮ И КНОПКИ: капсулы, отступы, отклик на нажатие ===== */

/* главное меню: первая буква заглавная, читаемый размер, воздух */
#rt-navigation ul.menutop.level1 > li.root > a .menu-title,
#rt-navigation ul.menutop.level1 > li.root > a span,
#rt-navigation ul.menutop.level1 > li.root > a {
  text-transform: none;
}
#rt-navigation ul.menutop.level1 > li.root > a .menu-title::first-letter,
#rt-navigation ul.menutop.level1 > li.root > a span::first-letter {
  text-transform: uppercase;
}
#rt-navigation ul.menutop.level1 > li.root > a {
  padding: 11px 12px !important;
  font-size: 14px;
  white-space: nowrap;
  /* прямоугольник со скруглением, а не капсула: круглая заливка активного пункта
     выпирала из плашки меню белым овалом */
  border-radius: 10px;
  margin: 6px 2px;
  transition: background-color 150ms cubic-bezier(0.23, 1, 0.32, 1),
              transform 120ms cubic-bezier(0.23, 1, 0.32, 1);
}
@media (hover: hover) and (pointer: fine) {
  #rt-navigation ul.menutop.level1 > li.root > a:hover {
    background: rgba(255,255,255,.35);
  }
}
#rt-navigation ul.menutop.level1 > li.root > a:active {
  transform: scale(0.97);
}
#rt-navigation ul.menutop.level1 > li.root.active > a {
  background: #ffffff;
  color: #8b2a1f;
  font-weight: 600;
}
/* декоративные номера 01–06 приглушаем, чтобы не спорили с текстом */
#rt-navigation ul.menutop.level1 .item-number,
#rt-navigation ul.menutop.level1 .menu-number {
  opacity: .45;
  font-size: 13px;
  margin-right: 6px;
}

/* служебные ссылки в шапке (версия для слабовидящих, контакты и т.д.) — капсулы.
   ВАЖНО: только пункты меню (li > a). Названия учреждения и логотип лежат в span —
   их капсулой оборачивать нельзя, это не кнопки. */
/* у старого шаблона этим пунктам задана жёсткая ширина в пикселях — снимаем,
   иначе капсулы раздуваются и не сжимаются на узких экранах */
#rt-drawer ul, #rt-top ul.menutop, #rt-header ul.menutop {
  display: flex !important;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  width: auto !important;
  padding: 0;
  margin: 0;
  list-style: none;
}
#rt-drawer li, #rt-top li.root, #rt-header li.root {
  width: auto !important;
  height: auto !important;
  line-height: normal !important;
  float: none !important;
  margin: 0 !important;
  background-image: none !important;
}
/* старый шаблон задаёт этим ссылкам фиксированную высоту 54px — снимаем,
   иначе капсула получается вдвое выше текста */
#rt-drawer li > a, #rt-top li > a, #rt-header li > a,
#rt-drawer li > a span, #rt-top li > a span, #rt-header li > a span {
  height: auto !important;
  line-height: 1.25 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  background-image: none !important;
}
#rt-drawer li > a, #rt-top li > a, #rt-header li > a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px !important;
  font-size: 12.5px;
  white-space: nowrap;
  border-radius: 8px;
  border: 1px solid #e0d6bd;
  background: rgba(255,255,255,.75);
  text-decoration: none;
  line-height: 1.25;
  transition: background-color 150ms cubic-bezier(0.23, 1, 0.32, 1),
              border-color 150ms cubic-bezier(0.23, 1, 0.32, 1),
              transform 120ms cubic-bezier(0.23, 1, 0.32, 1);
}
/* старый шаблон принудительно переводит подписи кнопок в нижний регистр —
   снимаем, иначе заглавная буква, выставленная скриптом, не видна */
#rt-drawer li > a, #rt-top li > a, #rt-header li > a,
#rt-drawer li > a span, #rt-top li > a span, #rt-header li > a span,
#rt-navigation ul.menutop li > a, #rt-navigation ul.menutop li > a span {
  text-transform: none !important;
}
@media (hover: hover) and (pointer: fine) {
  #rt-drawer li > a:hover, #rt-top li > a:hover, #rt-header li > a:hover {
    background: #ffffff;
    border-color: #b5860f;
  }
}
#rt-drawer li > a:active, #rt-top li > a:active, #rt-header li > a:active {
  transform: scale(0.97);
}
/* разделители-палки между служебными ссылками больше не нужны */
#rt-drawer .custom span[style*="border"], #rt-top .custom span[style*="border"] {
  border: 0 !important;
}

/* иконка «версия для слабовидящих»: старая растровая картинка-глаз крупная и мутная —
   прячем её и рисуем аккуратный SVG-глаз в цвет акцента */
#rt-drawer li > a img, #rt-top li > a img, #rt-header li > a img {
  display: none !important;
}
#rt-drawer li > a:has(img)::before,
#rt-top li > a:has(img)::before,
#rt-header li > a:has(img)::before {
  content: "";
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23b5860f" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M1.5 12S5.5 5 12 5s10.5 7 10.5 7-4 7-10.5 7S1.5 12 1.5 12z"/><circle cx="12" cy="12" r="3.2"/></svg>') center / contain no-repeat;
}

/* ===== СЛАЙДЕР: рамка, скругление, аккуратные точки ===== */
/* Растягиваем ТОЧЕЧНО: только саму раму и основную картинку. Служебные слои
   анимации (.nivo-slice, .nivo-box) и подписи не трогаем — в прошлый раз широкое
   правило на всех потомков схлопнуло слайды в пустоту. */
.slider-wrapper, .nivoSlider {
  border-radius: 12px;
  margin: 0 auto !important;
  float: none !important;
  width: 100% !important;
}
/* высоту рамы задаёт JS по исходной картинке; после растяжения картинка стала выше,
   поэтому высоту отпускаем — иначе слайд вылезает, а точки наезжают на него */
.nivoSlider, .slider-wrapper {
  height: auto !important;
}
.nivoSlider > img,
.nivoSlider .nivo-main-image {
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
}
/* ВАЖНО: .nivo-slice/.nivo-box НЕЛЬЗЯ гасить — именно они показывают сам кадр,
   а не только анимацию (проверено 17.09.2026: слайдер исчезал целиком).
   Артефакт «квадратика» в углу убираем обрезкой по раме. */
.nivoSlider {
  overflow: hidden !important;
}
.nivo-controlNav {
  display: flex !important;
  flex-wrap: wrap;
  justify-content: center !important;
  align-items: center;
  gap: 8px;
  padding: 14px 0 4px !important;
  margin: 0 auto !important;
  width: 100% !important;
  left: 0 !important;
  right: 0 !important;
  position: static !important;
  text-align: center;
}
.nivo-controlNav a {
  display: block !important;
  width: 9px !important;
  height: 9px !important;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 50%;
  background: #d8cdb4 !important;
  text-indent: -9999px;
  overflow: hidden;
  transition: background-color 150ms cubic-bezier(0.23, 1, 0.32, 1),
              transform 120ms cubic-bezier(0.23, 1, 0.32, 1);
}
.nivo-controlNav a.active {
  background: #b5860f !important;
  transform: scale(1.25);
}
/* кнопка «Подробнее» на слайде — в общий стиль кнопок */
.nivo-caption a, .slider-wrapper .readon {
  border-radius: 8px !important;
  padding: 9px 18px !important;
  background: #b5860f !important;
  color: #fff !important;
  text-decoration: none;
}

/* поле поиска и кнопки форм — тоже капсулы, размер 16px чтобы iOS не зумил */
input[type="text"], input[type="search"], input[type="email"], input[type="password"],
.inputbox, #mod-search-searchword {
  border-radius: 999px !important;
  border: 1px solid #ddd3bb !important;
  padding: 9px 16px !important;
  font-size: 16px !important;
  background: #fff !important;
  min-height: 40px;
  box-sizing: border-box;
}
/* кнопки баннера (стрелки и точки) сюда не попадают — у них свой размер в banner.css */
button:not([class*="bir-banner"]), input[type="submit"], .button, .readon, a.readon {
  border-radius: 999px !important;
  padding: 10px 22px !important;
  border: 0;
  background: #b5860f;
  color: #fff !important;
  font-size: 15px;
  cursor: pointer;
  min-height: 44px;
  transition: background-color 150ms cubic-bezier(0.23, 1, 0.32, 1),
              transform 120ms cubic-bezier(0.23, 1, 0.32, 1);
}
@media (hover: hover) and (pointer: fine) {
  button:not([class*="bir-banner"]):hover, input[type="submit"]:hover, .button:hover, .readon:hover, a.readon:hover {
    background: #9c7209;
  }
}
button:not([class*="bir-banner"]):active, input[type="submit"]:active, .button:active, .readon:active, a.readon:active {
  transform: scale(0.97);
}
:focus-visible {
  outline: 3px solid #b5860f;
  outline-offset: 2px;
}

/* ===== 4.7 НОВОСТИ — НАСТОЯЩИЕ КАРТОЧКИ =====
   старый шаблон вытягивал заголовки отрицательными отступами (margin:-15px) и рисовал
   плашки картинками — отсюда «съехавший» вид. Обнуляем и собираем нормальную карточку. */
.rt-article {
  background: #fffdf8;
  border: 1px solid #ece5d6;
  border-radius: 12px;
  padding: 16px 18px !important;
  margin: 0 12px 20px 0 !important;
  overflow: hidden;
}
.rt-article-bg {
  background-image: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
.rt-article .module-title-surround,
.rt-article .module-title {
  background-image: none !important;
  padding: 0 !important;
  margin: 0 0 10px !important;
  border: 0 !important;
}
.rt-article h2.title, .rt-article .title {
  font-size: 17px;
  line-height: 1.35;
  margin: 0 0 8px !important;
  text-shadow: none !important;
}
.rt-article h2.title a, .rt-article .title a {
  color: #8b2a1f;
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  .rt-article h2.title a:hover, .rt-article .title a:hover { text-decoration: underline; }
}
/* дата и просмотры — мелким тоном, выровнены влево (а не вразнобой справа) */
.rt-article .rt-articleinfo, .rt-article .createdate, .rt-article .article-info,
.rt-article .rt-article-icons {
  font-size: 12.5px;
  color: #8a8175;
  text-align: left !important;
  margin: 0 0 10px !important;
  float: none !important;
}
.rt-article img {
  border-radius: 8px;
  max-width: 100%;
  height: auto;
  margin: 0 0 12px;
}
/* «Подробнее» — кнопка в общем стиле */
.rt-article a.readon, .rt-article .readon, .item a.readon {
  display: inline-block;
  border-radius: 8px !important;
  background: #b5860f !important;
  color: #fff !important;
  padding: 8px 16px !important;
  font-size: 13.5px;
  text-decoration: none;
  min-height: 0 !important;
}
/* ряд новостей — настоящая сетка в равные колонки на всю ширину.
   старый шаблон держал колонкам фиксированную ширину, из-за чего карточки
   получались узкими с большими дырами между ними */
.items-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
  width: auto !important;
}
.items-row.cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.items-row.cols-1 { grid-template-columns: minmax(0, 1fr); }
.items-row > .item,
.items-row > [class*="column-"] {
  width: auto !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: block !important;
  min-width: 0;
}
.items-row > .item > *, .items-row > [class*="column-"] > * {
  width: 100%;
}
/* технический разделитель строк не должен занимать ячейку сетки */
.items-row > .row-separator,
.items-row > .clear,
.items-row > br {
  display: none !important;
}
/* карточки в ряду: на всю ширину колонки и одинаковой высоты.
   колонка — flex-контейнер, поэтому одного width:100% мало: без flex-растяжения
   карточка сжимается по содержимому (была 197px в колонке 374px) */
.items-row .rt-article,
.items-row .rt-article-bg,
.items-row .item > div {
  margin: 0 !important;
  flex: 1 1 100% !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
}
/* «Подробнее» прижимаем к низу карточки, чтобы кнопки шли по одной линии */
.items-row .rt-article .readon-wrap,
.items-row .rt-article p:last-child {
  margin-top: auto;
}

@media (max-width: 980px) {
  .items-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
  .items-row { grid-template-columns: minmax(0, 1fr); gap: 14px; }
}

/* постраничная навигация внизу списка — кнопки, а не голые цифры.
   у «В начало / Назад / Вперёд / В конец» старый шаблон рисовал свою рамку-подложку
   картинкой — она проступала позади кнопки вторым контуром, гасим */
ul:has(> li[class*="pagination-"]) > li,
ul:has(> li[class*="pagination-"]) > li > span,
ul:has(> li[class*="pagination-"]) > li > a {
  background-image: none !important;
  box-shadow: none !important;
}
ul:has(> li[class*="pagination-"]) > li {
  border: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
ul:has(> li[class*="pagination-"]) > li > a,
ul:has(> li[class*="pagination-"]) > li > span.pagenav {
  display: inline-block;
  min-width: 34px;
  text-align: center;
  padding: 7px 10px;
  border: 1px solid #e3dac6;
  border-radius: 8px;
  background: #fff;
  text-decoration: none;
  font-size: 13.5px;
  transition: background-color 150ms cubic-bezier(0.23, 1, 0.32, 1),
              border-color 150ms cubic-bezier(0.23, 1, 0.32, 1),
              transform 120ms cubic-bezier(0.23, 1, 0.32, 1);
}
@media (hover: hover) and (pointer: fine) {
  ul:has(> li[class*="pagination-"]) > li > a:hover {
    border-color: #b5860f;
    background: #fdfaf2;
  }
}
ul:has(> li[class*="pagination-"]) > li > a:active { transform: scale(0.97); }

/* ===== 4.9 ПЛИТКИ БЫСТРЫХ РАЗДЕЛОВ (Афиша, Каталоги, Клубы…) =====
   были разной высоты, подписи в разное число строк, значки разного масштаба */
/* ряд плиток — одинаковая высота у всех, а не по содержимому каждой */
#rt-feature {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
}
#rt-feature > [class*="rt-grid-"] {
  display: flex;
}
#rt-feature > [class*="rt-grid-"] > * {
  width: 100%;
  display: flex;
}
#rt-feature .rt-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  text-align: center;
  width: 100%;
  min-height: 190px;
  padding: 22px 14px !important;
  transition: transform 150ms cubic-bezier(0.23, 1, 0.32, 1),
              border-color 150ms cubic-bezier(0.23, 1, 0.32, 1);
}
@media (hover: hover) and (pointer: fine) {
  #rt-feature .rt-block:hover {
    transform: translateY(-2px);
    border-color: #d8c79c;
  }
}
#rt-feature .rt-block img {
  width: 58px;
  height: 58px;
  object-fit: contain;
  margin: 0 0 14px;
}
#rt-feature .rt-block a {
  font-size: 13px;
  line-height: 1.35;
  text-decoration: none;
  color: #6b6152;
  letter-spacing: .01em;
}
@media (hover: hover) and (pointer: fine) {
  #rt-feature .rt-block a:hover { color: #8b2a1f; }
}

/* ===== 4.10 БОКОВОЕ МЕНЮ «Читай — город!» =====
   было серой коробкой со стрелками-картинками из 2011 года */
#rt-maintop .rt-block, #rt-mainbottom .rt-block, .rt-sidebar .rt-block {
  background: #fffdf8 !important;
  border: 1px solid #ece5d6 !important;
  border-radius: 12px !important;
  padding: 0 !important;
  overflow: hidden;
}
/* заголовок блока — плашка в цвет бренда, без растровой картинки */
#rt-maintop .module-title, #rt-mainbottom .module-title,
.rt-sidebar .module-title, #rt-maintop .module-title-surround {
  background-image: none !important;
  background: #f6efdd !important;
  border-bottom: 1px solid #ece5d6 !important;
  margin: 0 !important;
  padding: 14px 18px !important;
  border-radius: 12px 12px 0 0;
}
#rt-maintop .module-title h2, #rt-maintop .module-title .title,
#rt-mainbottom .module-title h2, .rt-sidebar .module-title h2 {
  font-size: 15px !important;
  color: #8b2a1f !important;
  margin: 0 !important;
  text-shadow: none !important;
}
/* пункты — список без картинок-стрелок, с аккуратными разделителями */
#rt-maintop ul.menu, #rt-mainbottom ul.menu, .rt-sidebar ul.menu, #rt-mainbody ul.menu {
  margin: 0 !important;
  padding: 6px 0 !important;
  list-style: none !important;
}
#rt-maintop ul.menu li, #rt-mainbottom ul.menu li,
.rt-sidebar ul.menu li, #rt-mainbody ul.menu li,
#rt-maintop ul.menu li span, #rt-mainbody ul.menu li span {
  background-image: none !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
/* заголовок группы внутри меню — это не ссылка, у него своя старая стрелка-картинка */
#rt-maintop ul.menu li > span.separator,
#rt-maintop ul.menu li > .item-title,
#rt-mainbody ul.menu li > span.separator {
  display: block;
  position: relative;
  padding: 10px 16px 6px 30px !important;
  font-size: 13px;
  color: #9a9186;
  text-transform: none;
}
#rt-maintop ul.menu li > span.separator::before,
#rt-mainbody ul.menu li > span.separator::before {
  content: "";
  position: absolute;
  left: 13px; top: 50%;
  width: 6px; height: 6px; margin-top: -2px;
  border-radius: 50%;
  background: #e0d6bd;
}
#rt-maintop ul.menu li > a, #rt-mainbottom ul.menu li > a,
.rt-sidebar ul.menu li > a, #rt-mainbody ul.menu li > a {
  display: block;
  position: relative;
  background-image: none !important;
  padding: 10px 16px 10px 30px !important;
  font-size: 13.5px;
  line-height: 1.4;
  color: #5c5449;
  text-decoration: none;
  border-radius: 8px;
  margin: 1px 6px;
  transition: background-color 150ms cubic-bezier(0.23, 1, 0.32, 1),
              color 150ms cubic-bezier(0.23, 1, 0.32, 1);
}
/* своя метка вместо растровой стрелки */
#rt-maintop ul.menu li > a::before, #rt-mainbottom ul.menu li > a::before,
.rt-sidebar ul.menu li > a::before, #rt-mainbody ul.menu li > a::before {
  content: "";
  position: absolute;
  left: 13px;
  top: 50%;
  width: 6px;
  height: 6px;
  margin-top: -3px;
  border-radius: 50%;
  background: #cbb27a;
  transition: background-color 150ms cubic-bezier(0.23, 1, 0.32, 1),
              transform 150ms cubic-bezier(0.23, 1, 0.32, 1);
}
@media (hover: hover) and (pointer: fine) {
  #rt-maintop ul.menu li > a:hover, #rt-mainbottom ul.menu li > a:hover,
  .rt-sidebar ul.menu li > a:hover, #rt-mainbody ul.menu li > a:hover {
    background: #f7f1e2;
    color: #8b2a1f;
  }
  #rt-maintop ul.menu li > a:hover::before, #rt-mainbody ul.menu li > a:hover::before {
    background: #b5860f;
    transform: scale(1.3);
  }
}
#rt-maintop ul.menu li > a:active, #rt-mainbody ul.menu li > a:active { transform: scale(0.99); }
/* вложенные пункты — со сдвигом, но той же логикой */
#rt-maintop ul.menu li ul, #rt-mainbody ul.menu li ul {
  margin: 0 0 4px !important;
  padding: 0 !important;
}
#rt-maintop ul.menu li ul li > a, #rt-mainbody ul.menu li ul li > a {
  padding-left: 44px !important;
  font-size: 13px;
}
#rt-maintop ul.menu li ul li > a::before, #rt-mainbody ul.menu li ul li > a::before {
  left: 28px;
  width: 5px; height: 5px; margin-top: -2.5px;
}

/* ===== 4.8 ОТСТУПЫ СВЕРХУ У НИЖНИХ СЕКЦИЙ ===== */
#rt-bottom-surround, #rt-footerbar {
  margin-top: 24px;
}
#rt-bottom-surround .rt-block {
  margin-top: 0;
}

/* ===== 5. ТИПОГРАФИКА ===== */
body {
  font-size: 16px;
  line-height: 1.55;
}
#rt-mainbody p, #rt-mainbody li {
  line-height: 1.6;
}

/* ===== 6. МОБИЛЬНОЕ: на телефоне карточки без лишних полей ===== */
@media (max-width: 760px) {
  /* баннер-фон при узком экране сжимается в тонкую полоску и мешает —
     заменяем мягким тоном, текст шапки выравниваем по центру */
  #rt-page-background {
    background-image: none !important;
    background: linear-gradient(180deg, #f3ecd9 0%, #faf7f0 180px, #f7f5f1 100%) !important;
  }
  #rt-top, #rt-header { text-align: center; }
  #rt-top .custom, #rt-header .custom { text-align: center; }
  #rt-drawer ul, #rt-top ul.menutop, #rt-header ul.menutop {
    justify-content: center;
  }
  /* поиск на всю ширину — удобнее пальцем */
  #rt-header .search, .search input[type="text"], #mod-search-searchword {
    width: 100% !important;
    max-width: 320px;
  }
}

@media (max-width: 640px) {
  #rt-mainbody .rt-block,
  #rt-feature .rt-block,
  #rt-bottom-surround .rt-block {
    padding: 14px 14px;
    margin-bottom: 14px;
  }
  #rt-mainbody .component-content { padding: 4px 12px 14px; }
  .rt-box-bg3 { border-radius: 10px !important; }
  #rt-showcase, #rt-feature, #rt-mainbody, #rt-bottom-surround { padding: 14px 0; }
}

/* ===== 6. МЕНЮ РАЗДЕЛА (roknavmenu над содержимым страницы) =====
   Старый шаблон выкладывал эти пункты табличной сеткой с рамками и вешал на
   каждую ссылку растровую галочку icons/tick_32.png — 32 пикселя чужеродной
   картинки на пункт. Убираем картинки и собираем обычный ряд капсул. */
#rt-maintop ul.menutop,
#rt-mainbody ul.menutop {
  display: flex !important;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 6px !important;
  padding: 0 !important;
  list-style: none;
  background: none !important;
  border: 0 !important;
  height: auto !important;
}
#rt-maintop ul.menutop > li,
#rt-maintop ul.menutop > li.root,
#rt-mainbody ul.menutop > li {
  display: block !important;
  float: none !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  line-height: normal !important;
  list-style: none;
}
#rt-maintop ul.menutop > li > a,
#rt-mainbody ul.menutop > li > a {
  display: inline-flex !important;
  align-items: center;
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  padding: 9px 16px !important;
  margin: 0 !important;
  border: 1px solid #e3dac4 !important;
  border-radius: 999px !important;
  background: #fffdf8 !important;
  background-image: none !important;
  color: #5b4a2f !important;
  font-size: 14px !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
  text-transform: none !important;
  transition: background-color 160ms cubic-bezier(0.23, 1, 0.32, 1),
              border-color 160ms cubic-bezier(0.23, 1, 0.32, 1),
              transform 120ms cubic-bezier(0.23, 1, 0.32, 1);
}
/* растровые галочки и прочие иконки шаблона в этих пунктах не нужны */
#rt-maintop ul.menutop img[src*="/icons/"],
#rt-mainbody ul.menutop img[src*="/icons/"],
#rt-maintop ul.menutop a.image img,
#rt-mainbody ul.menutop a.image img {
  display: none !important;
}
#rt-maintop ul.menutop > li > a > span,
#rt-mainbody ul.menutop > li > a > span {
  display: inline !important;
  height: auto !important;
  padding: 0 !important;
  margin: 0 !important;
  background: none !important;
  line-height: inherit !important;
}
@media (hover: hover) and (pointer: fine) {
  #rt-maintop ul.menutop > li > a:hover,
  #rt-mainbody ul.menutop > li > a:hover {
    background: #f7f1e2 !important;
    border-color: #d8c79c !important;
  }
}
#rt-maintop ul.menutop > li > a:active,
#rt-mainbody ul.menutop > li > a:active { transform: scale(0.97); }
#rt-maintop ul.menutop > li.active > a,
#rt-mainbody ul.menutop > li.active > a {
  background: #b5860f !important;
  border-color: #b5860f !important;
  color: #ffffff !important;
}
@media (max-width: 640px) {
  #rt-maintop ul.menutop > li > a,
  #rt-mainbody ul.menutop > li > a { padding: 8px 13px !important; font-size: 13.5px !important; }
}
