/* Team slider with SplideJS */
.team-slider {
  margin: 0 -20px;
  position: relative;
  /*min-height: 600px;*/
  overflow: hidden;

  /* Motion */
  --ts-ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  --ts-dur: 1000ms;

  /* Mobile defaults */
  --ts-gap: 4px;
  --ts-inactive-w: 180px;
  --ts-inactive-h: 225px;
  --ts-active-w: 250px;
  --ts-active-h: 350px;
}

/* Desktop: */
@media (min-width: 768px) {
  .team-slider {
    min-height: 600px;
    margin: 0;
    --ts-gap: 8px;
    --ts-inactive-w: 240px;
    --ts-inactive-h: 350px;
    --ts-active-w: 360px;
    --ts-active-h: 510px;
  }
}

/* =========================
   Splide Gallery
========================= */
.team-slider__gallery {
  position: relative;
  height: auto;
  z-index: 20;
  overflow: hidden;
  width: 100%;
  padding: 0;
  touch-action: pan-y;
}

@media (min-width: 768px) {
  .team-slider__gallery {
    height: auto;
    padding-right: 10px;
  }
}

.team-slider__splide {
  height: 100%;
  width: 100%;
  padding-left: 20px;
}

@media (min-width: 768px) {
  .team-slider__splide {
    padding-left: 0;
  }
}

.team-slider__splide .splide__track {
  height: 100%;
  position: relative;
  overflow: visible;
}

.team-slider__splide .splide__list {
  height: auto;
  display: flex;
  align-items: flex-start;
  transition: opacity .9s ease-in-out;
  opacity: 1;
}

.team-slider__splide .splide__list.is-filtering {
  opacity: 0;
  transition: opacity .3s ease-out;
}

.team-slider__splide .splide__slide {
  flex-shrink: 0;
  z-index: 1;
  width: var(--ts-inactive-w);
  height: auto;
  min-width: var(--ts-inactive-w);
  min-height: var(--ts-inactive-h);
  display: flex;
  flex-direction: column;
  cursor: pointer;
  overflow: visible;
}

.team-slider__splide .splide__slide.is-active {
  width: var(--ts-active-w) !important;
  height: auto;
  min-width: var(--ts-active-w) !important;
  min-height: var(--ts-active-h) !important;
  z-index: 3;
}

.team-slider__slide-content {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: 100%;
  
}

.team-slider__slide-image {
  width: 100%;
 /*height: 225px;*/
  object-fit: cover;
  object-position: center top;
  display: block;
  flex-shrink: 0;
  transition: opacity var(--ts-dur) var(--ts-ease),
              height var(--ts-dur) var(--ts-ease);
  -webkit-user-drag: none;
  user-select: none;
}

.team-slider__splide .splide__slide.is-active .team-slider__slide-image {
  transform: scale(1);
  /*height: 350px;*/
  height: auto;
}

@media (min-width: 768px) {
  .team-slider__slide-image {
    /*height: 350px;*/
    height: auto;
  }
  
  .team-slider__splide .splide__slide.is-active .team-slider__slide-image {
    /*height: 510px;*/
    height: auto;
  }
}

.team-slider__splide .splide__slide:hover .team-slider__slide-image {
  /*transform: scale(0.95);*/
  opacity: .9;
}

.team-slider__slide-info {
  padding: 10px 0;
  display: flex;
  flex-direction: column;
  flex: 1;
  min-height: 0;
}

.team-slider__slide-name {
  font-size: 14px;
  line-height: 1.3;
  text-transform: uppercase;
  color: var(--color-black, #000);
  margin-bottom: 4px;
}

.team-slider__slide-position {
  font-size: 14px;
  line-height: 1.2;
  color: var(--color-dark-grey, #666);
  margin-bottom: 10px;
}

.team-slider__slide-quote {
  font-size: 14px;
  line-height: 1.3;
  color: var(--color-black, #000);
  border-top: 1px solid var(--color-black, #000);
  padding-top: 10px;
  margin-top: auto;
  opacity: 0;
  transition: opacity .3s cubic-bezier(0.075, 0.82, 0.165, 1);
  
}

.team-slider__splide .splide__slide.is-active .team-slider__slide-quote {
  opacity: 1;
  transition: opacity var(--ts-dur) var(--ts-ease);
}

@media (min-width: 768px) {
  .team-slider__slide-name,
  .team-slider__slide-position,
  .team-slider__slide-quote {
    font-size: 14px;
  }
}

/* Кнопки навигации */
.team-slider-controls {
  position: absolute;
  right: 0;
  top: -40px;
}

.team-slider-controls .btn-prev,
.team-slider-controls .btn-next {
  user-select: none;
  transition: opacity 0.3s ease;
  cursor: pointer;
}

.team-slider-controls .btn-prev.is-disabled,
.team-slider-controls .btn-next.is-disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
  .team-slider {
    --ts-dur: 0ms;
  }
  .team-slider__slide-image {
    transition: none !important;
  }
  .team-slider__splide .splide__slide {
    transition: none !important;
  }
}

/* Скрываем элементы управления Splide, если они не нужны */
.team-slider__splide .splide__arrows,
.team-slider__splide .splide__pagination {
  display: none;
}
