/* Tab buttons: 1px top bar = #B49EF9 when inactive; gradient (left→right animation) when active */
.e-con-inner:has(.c-tab-carousel) [data-carousel-tab] {
  position: relative;
}

/* Inactive: solid 1px bar */
.e-con-inner:has(.c-tab-carousel) [data-carousel-tab]::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 1px;
  background: #B49EF9;
}

/* Active: gradient bar animates in from left to right */
.e-con-inner:has(.c-tab-carousel) [data-carousel-tab]::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 0;
  height: 1px;
  background: linear-gradient(270deg, #1BF1B4 0%, #6B39F4 52.88%, #1C104D 100%);
  transition: width 0.35s ease;
}

.e-con-inner:has(.c-tab-carousel) [data-carousel-tab].is-active::after {
  width: 100%;
}

[data-carousel-tab]:not(.is-active) {
  color: #B49EF9;
}

@media (min-width: 768px) {
  .c-tab-carousel .swiper-pagination {
    display: none;
  }
}