/* Правки вёрстки страниц услуг: блоки, которые до инициализации свайперов
   идут без отступов и слипаются. Файл подключается только на /service/*. */

/* ── 1. Чипы стека в блоке кейсов ─────────────────────────────────────────
   После гидратации часть чипов теряет класс created-systems__item--tag:
   в DOM остаётся <div> с правильной начинкой (__icon/__name/__tooltip), но
   без оформления. Такой чип печатается блоком 16 px без внутренних отступов
   и слипается с соседней ссылкой «Подробнее» (замер: 6 таких чипов на
   /service/hosting и /service/it-komanda-v-arendu, высота 28 px вместо 26,
   зазор до ссылки 8 px без плашки).
   Возвращаем чипу оформление по содержимому — правило срабатывает только на
   тех div, внутри которых лежит название технологии.
   ⚠️ Это лечение симптома: класс теряется в ssr_page.php/гидратации. */
#__nuxt .created-systems__item--tags > div:has(> .created-systems__item--tag__name){
    display:flex; align-items:center; justify-content:flex-start;
    position:relative; height:26px; gap:5px;
    padding:0 10px; border:1px solid #dcdcdc; border-radius:50px;
    font-family:"Gilroy SemiBold", Gilroy, sans-serif; font-size:12px; font-weight:600;
    line-height:1;
}
#__nuxt .created-systems__item--tags > div:has(> .created-systems__item--tag__name)
    > .created-systems__item--tag__icon{ display:flex; flex:0 0 auto; }
#__nuxt .created-systems__item--tags > div:has(> .created-systems__item--tag__name)
    > .created-systems__item--tag__name{ font-size:12px; line-height:1; white-space:nowrap; }

/* ── 2. Ленты swiper до инициализации ────────────────────────────────────
   Swiper поднимается не мгновенно (замер: до 4 с после загрузки), а расстояние
   между слайдами он задаёт инлайновым margin-right. Пока его нет, слайды идут
   вплотную: на /service/hosting зазор в «Работаем с технологиями» был 0 px,
   и заголовки слайдов читались как «Cистемы управления сайтамиФреймворки».
   Правило действует ТОЛЬКО до инициализации: как только swiper ставит
   .swiper-initialized, селектор перестаёт совпадать, а инлайновый стиль
   в любом случае сильнее.
   ⚠️ .services__tabs--menu здесь не трогаем — её отступ уже задан в brand.css,
   иначе получилось бы 72 px. .swiper-fade пропускаем: там слайды лежат
   стопкой и margin ломает раскладку. */
#__nuxt .swiper:not(.swiper-initialized):not(.swiper-fade) > .swiper-wrapper > .swiper-slide{
    margin-right:24px;
}
/* точные значения по лентам — те же, что ставит сам swiper (spaceBetween).
   Селекторы намеренно длиннее общего правила выше, иначе оно их перебьёт. */
#__nuxt .swiper.cms-block__swiper:not(.swiper-initialized):not(.swiper-fade) > .swiper-wrapper > .swiper-slide{ margin-right:36px; }
#__nuxt .swiper.types__swiper:not(.swiper-initialized):not(.swiper-fade) > .swiper-wrapper > .swiper-slide{ margin-right:30px; }
#__nuxt .our-services__swiper .swiper:not(.swiper-initialized):not(.swiper-fade) > .swiper-wrapper > .swiper-slide,
#__nuxt .all-clients-logos .swiper:not(.swiper-initialized):not(.swiper-fade) > .swiper-wrapper > .swiper-slide{ margin-right:30px; }
#__nuxt .swiper.service-target__swiper--swiper:not(.swiper-initialized):not(.swiper-fade) > .swiper-wrapper > .swiper-slide{ margin-right:16px; }
#__nuxt .swiper.price-section__swiper:not(.swiper-initialized):not(.swiper-fade) > .swiper-wrapper > .swiper-slide{ margin-right:20px; }
/* меню вкладок: 36 px уже стоят в brand.css, повторяем здесь только затем,
   чтобы общее правило на 24 px его не перебило по специфичности */
#__nuxt .services__tabs--menu .swiper:not(.swiper-initialized):not(.swiper-fade) > .swiper-wrapper > .swiper-slide{ margin-right:36px; }

/* ── 3. Карточка списка: жирный зачин уезжал в отдельную колонку ─────────
   В билде у списков текстового блока стоит `.info-block__text ul li{display:flex}`
   (под свою вёрстку с маркером-флексом). Наши стили текста делают у <li> маркер
   через ::before и ждут обычный блок, поэтому <b> в начале пункта становился
   отдельной флекс-колонкой: «Скорость и Core Web Vitals.» печаталось узким
   столбцом слева, а описание — вторым столбцом (9 пунктов из 13 на
   /service/prodvijenie-web-sajtov). Возвращаем блочную раскладку —
   правило `ul > li > b:first-child{display:block}` из ssr_page.php после этого
   работает как задумано. */
#content_of_infoblock ul > li,
.w2-extra ul > li{ display:block; }

/* ── 4. Таблицы в тексте услуги ──────────────────────────────────────────
   У таблиц в тексте нет ни отступов в ячейках, ни границ, ни полей вокруг:
   заголовки колонок читались как «МетрикаЧто показывает», строки лепились
   друг к другу, а сама таблица упиралась в соседние абзацы. */
#content_of_infoblock table,
.w2-extra table{
    width:100%; border-collapse:collapse;
    margin:18px 0 26px; font-size:16px; line-height:1.5;
}
#content_of_infoblock table th, #content_of_infoblock table td,
.w2-extra table th, .w2-extra table td{
    padding:12px 16px; border:1px solid #e2e7ef;
    text-align:left; vertical-align:top;
}
#content_of_infoblock table th,
.w2-extra table th{ background:#f7f9fc; color:#131727; font-weight:600; }
#content_of_infoblock table tr:nth-child(2n) td,
.w2-extra table tr:nth-child(2n) td{ background:#fbfcfe; }

@media (max-width: 900px){
    /* узкая таблица не должна распирать страницу — прокручиваем её саму */
    #content_of_infoblock table,
    .w2-extra table{ display:block; overflow-x:auto; width:100%; }
    #content_of_infoblock table th, #content_of_infoblock table td,
    .w2-extra table th, .w2-extra table td{ padding:10px 12px; }
}
