/* splide-core.min.css: .splide { visibility:hidden } до init — только для real Splide в «Статьи» */
.splide:not(.blog-section__splide) {
  visibility: visible;
}

/* Фиксы Swiper для слайдеров услуг/кейсов (пока SCSS не пересобран в style.min). */

.service-section__splide,
.case-section__splide {
  position: relative;
  overflow: visible;
}

.service-section__splide > .splide__track.swiper,
.case-section__splide > .splide__track.swiper {
  display: block !important;
  overflow: hidden;
  width: 100%;
  flex-direction: unset !important;
  grid-gap: 0 !important;
}

.service-section__splide .swiper-slide.service-card,
.service-section__splide .service-section__item.swiper-slide {
  width: auto;
  max-width: none;
  height: auto;
  display: flex;
  box-sizing: border-box;
  justify-content: flex-start;
}

.service-section__splide .service-section__splide-list.swiper-wrapper {
  align-items: stretch;
}

.service-section__splide .service-card__wrapper {
  flex: 1 1 auto;
}

.case-section__splide .swiper-slide.case-card,
.case-section__splide .case-section__item.swiper-slide {
  width: 100%;
  max-width: none;
  height: auto;
  box-sizing: border-box;
  flex-shrink: 0;
}

.team__splide {
  position: relative;
  overflow: visible;
}

.team__splide > .splide__track.swiper {
  display: block !important;
  overflow: hidden;
  width: 100%;
  flex-direction: unset !important;
  grid-gap: 0 !important;
}

.team__splide .swiper-slide.team__item {
  width: auto;
  max-width: none;
  height: auto;
  box-sizing: border-box;
  flex-shrink: 0;
}

.certificates__splide {
  position: relative;
  overflow: visible;
}

.certificates__splide > .splide__track.swiper {
  display: block !important;
  overflow: hidden;
  width: 100%;
  flex-direction: unset !important;
  grid-gap: 0 !important;
}

.certificates__splide .swiper-slide.certificates__list-item {
  width: auto;
  max-width: none;
  height: auto;
  box-sizing: border-box;
  flex-shrink: 0;
}

.partners__splide {
  position: relative;
  overflow: visible;
}

.partners__splide > .splide__track.swiper {
  display: block !important;
  overflow: hidden;
  width: 100%;
  flex-direction: unset !important;
  grid-gap: 0 !important;
}

.partners__splide .swiper-slide.partners__list-item {
  width: auto;
  max-width: none;
  height: auto;
  box-sizing: border-box;
  flex-shrink: 0;
}

.author__splide,
.author__speeches {
  position: relative;
  overflow: visible;
}

.author__splide > .splide__track.swiper,
.author__speeches > .splide__track.swiper {
  display: block !important;
  overflow: hidden;
  width: 100%;
  flex-direction: unset !important;
  grid-gap: 0 !important;
}

.author__splide .swiper-slide,
.author__speeches .swiper-slide {
  height: auto;
  box-sizing: border-box;
}

/* Desktop: карусель выключена (как Tolstenko) — обычный ряд, не width:100% от Swiper */
@media (min-width: 992px) {
  .author__splide > .splide__track.swiper,
  .author__speeches > .splide__track.swiper {
    overflow: visible;
  }

  .author__splide .author__list.swiper-wrapper,
  .author__speeches .author__speeches-list.swiper-wrapper {
    transform: none !important;
    gap: inherit;
  }

  .author__splide .swiper-slide.author__list-item {
    width: auto !important;
    flex: 1 1 0;
    max-width: none;
  }

  .author__speeches .swiper-slide.author__speech {
    width: auto !important;
    flex: 0 1 auto;
  }
}

/* Пагинация автора — под треком на mobile, не absolute как у стрелочных splide */
.author .splide__bottom {
  position: static;
  transform: none;
  width: auto;
  pointer-events: all;
}

.author .splide__bottom .splide__pagination {
  pointer-events: all;
}

/* FAQ: свёрнутый ответ — font-size:0, иначе strong/em держат высоту при line-height:0 */
.faq__item:not(.active) .redactor p {
  line-height: 0;
  font-size: 0;
  opacity: 0;
  margin: 0;
}
.faq__item:not(.active) .redactor p *,
.faq__item:not(.active) .redactor li,
.faq__item:not(.active) .redactor li * {
  line-height: 0;
  font-size: 0;
  margin: 0;
  padding: 0;
}
.faq__item:not(.active) .redactor ul,
.faq__item:not(.active) .redactor ol {
  font-size: 0;
}

/* TOC статьи/акции: h2 нумерация + вложенные h3 с акцентной линией (пока SCSS не пересобран). */
/* .single-blog__toc,
.single-actions__toc {
  display: flex;
  flex-direction: column;
  grid-gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: toc;
}
.single-blog__toc > .single-blog__toc-item,
.single-actions__toc > .single-actions__toc-item {
  counter-increment: toc;
}
.single-blog__toc > .single-blog__toc-item > .single-blog__toc-link::before,
.single-actions__toc > .single-actions__toc-item > .single-actions__toc-link::before {
  content: counter(toc) ". ";
}
.single-blog__toc-sub,
.single-actions__toc-sub {
  display: flex;
  flex-direction: column;
  grid-gap: 12px;
  margin: 12px 0 0;
  padding: 0 0 0 16px;
  list-style: none;
  border-left: 2px solid var(--brand-accent-yellow-color);
}
.single-blog__toc-sub .single-blog__toc-item--h3,
.single-actions__toc-sub .single-actions__toc-item--h3 {
  display: flex;
  align-items: flex-start;
  grid-gap: 10px;
  padding-left: 0;
}
.single-blog__toc-sub .single-blog__toc-item--h3::before,
.single-actions__toc-sub .single-actions__toc-item--h3::before {
  content: "";
  flex-shrink: 0;
  width: 5px;
  height: 5px;
  margin-top: 0.45em;
  border-radius: 50%;
  background-color: var(--brand-accent-yellow-color);
}
.single-blog__toc-link,
.single-actions__toc-link {
  color: var(--gray-50-color);
  text-decoration: none;
}
@media (any-hover: hover) {
  .single-blog__toc-link,
  .single-actions__toc-link {
    transition: color 0.2s linear;
  }
  .single-blog__toc-link:hover,
  .single-actions__toc-link:hover {
    color: var(--white-color);
  }
} */

.blog-section__filter.filter--slider .filter__form.swiper .swiper-wrapper {
  width: max-content;
  height: auto;
  max-width: none;
}
.blog-section__filter.filter--slider .swiper-slide {
  width: fit-content;
  height: auto;
  max-width: none;
}