:root{
  /* base (как на hero) */
  --scrollBarFonColor: #e8e3d3;              /* мягкий беж */
  --textColor: #0b0b0c;                      /* почти чёрный */
  --borderColor: rgba(11,11,12,.14);         /* тонкая рамка */
  --accent: #0b0b0c;                         /* акцент = чёрный (кнопка) */

  /* extras for this block */
  --mutedText: rgba(11,11,12,.58);
  --chipBg: rgba(255,255,255,.65);
  --chipBgHover: #0b0b0c;
  --chipRadius: 999px;
  --maxWidthSwiper: 1200px;
}

/* ===== TOC WRAP ===== */
.toc{
  background: transparent;
}

/* если у тебя есть общий контейнер — оставь, но добавим “воздух” */
.toc.wrapper{
  width: min(var(--maxWidthSwiper), 92vw);
  margin: 0 auto;
  padding: 10px 0;
}

/* Swiper padding как в “чистых” секциях */
#toc .swiper{
  padding: 18px 0 14px !important;
  padding-top: 0 !important;
  overflow: visible; /* чтобы тени на ховере не обрезались */
}

.toc .swiper-slide{
  width: fit-content;
}



/* ===== CHIPS ===== */
.toc a{
  display: inline-flex;
  align-items: center;
  gap: 10px;

  text-decoration: none;
  font-weight: 600;
  font-size: 16px;
  line-height: 1;

  color: var(--textColor);
  background: var(--chipBg);

  border: 1px solid var(--borderColor);
  border-radius: var(--chipRadius);
  padding: 12px 18px;

  /* “премиум” эффект как у кнопки */
  box-shadow:
    0 10px 26px rgba(11,11,12,.06),
    inset 0 1px 0 rgba(255,255,255,.75);

  transition:
    transform .18s ease,
    background .18s ease,
    color .18s ease,
    border-color .18s ease,
    box-shadow .18s ease;
}

/* hover/focus — чёрная “кнопка” */
.toc a:hover,
.toc a:focus{
  color: #ffffff;
  background: var(--chipBgHover);
  border-color: rgba(11,11,12,.22);
  transform: translateY(-1px);
  box-shadow:
    0 18px 36px rgba(11,11,12,.12),
    inset 0 1px 0 rgba(255,255,255,.10);
  outline: none;
}

/* active — лёгкое “нажатие” */
.toc a:active{
  transform: translateY(0px) scale(.99);
  box-shadow:
    0 12px 24px rgba(11,11,12,.10),
    inset 0 1px 0 rgba(255,255,255,.08);
}

/* ===== WRAPPER SPACE ===== */
.toc .swiper-wrapper{
  padding-top: 10px;
  padding-bottom: 22px;
  justify-content: flex-start;
}

/* ===== SCROLLBAR (минимал, в тон) ===== */
.toc-swiper{
  max-width: var(--maxWidthSwiper);
  padding-left: 0;
}

.toc-swiper .swiper-scrollbar{
  background: rgba(11,11,12,.08);
  height: 4px;
  border-radius: 999px;
}

.toc-swiper .swiper-scrollbar-drag{
  background: rgba(11,11,12,.30);
  border-radius: 999px;
}

/* full width scrollbar */
.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal{
  left: 0 !important;
  right: 0 !important;
  width: 100% !important;
}

/* ===== MOBILE ===== */
@media (max-width: 750px){
  .toc.wrapper{
    width: 92vw;
    padding: 8px 0;
  }

  #toc .swiper{
    padding: 14px 0 12px !important;
  }

  .toc h2{
    text-align: left;
  }

  .swiper-horizontal > .swiper-scrollbar,
  .swiper-scrollbar.swiper-scrollbar-horizontal{
    width: 92% !important;
    margin: 0 auto;
  }

  .toc a{
    font-size: 15px;
    padding: 11px 16px;
  }
}
