
/* стрелки всегда поверх */
#carsCarousel .carousel-control-prev,
#carsCarousel .carousel-control-next {
  z-index: 5;
}

/* карточки внутри слайда занимают высоту, красиво скругляются */
#carsCarousel .card {
  border-radius: 1rem;
  overflow: hidden;
  height: 100%;
}

/* на всякий случай отключим перехват кликов маской у карточек */
#carsCarousel .card .mask { pointer-events: none; }
/* Контейнер и стрелки */
.torqon-slider { position: relative; margin-top: 2rem; }
.torqon-slider .slider-prev,
.torqon-slider .slider-next{
  position:absolute; top:50%; transform:translateY(-50%);
  background:transparent; border:0; padding:.5rem; z-index:5;
}
.torqon-slider .slider-prev{ left: .25rem; }
.torqon-slider .slider-next{ right:.25rem; }
.torqon-slider .slider-prev:focus,
.torqon-slider .slider-next:focus{ outline:none; }

/* Вьюпорт/трек */
.torqon-slider .slider-viewport{ overflow:hidden; }
.torqon-slider .slider-track{
  display:flex; will-change: transform;
  transition: transform .6s ease; /* плавный слайд на 1 карточку */
}

/* Карточка-элемент */
.torqon-slider .slide{
  flex: 0 0 calc(100% / var(--per-view, 3));
  padding: 0 .75rem; /* промежуток между карточками */
  box-sizing: border-box;
}
.torqon-slider .slide .card{
  height:100%; border-radius:1rem; overflow:hidden;
}

/* Адаптив: сколько видно карточек за раз */
@media (min-width:1200px){ .torqon-slider{ --per-view: 3; } }
@media (min-width:768px) and (max-width:1199px){ .torqon-slider{ --per-view: 2; } }
@media (max-width:767px){ .torqon-slider{ --per-view: 1; } }


.video-card {
  max-width: 900px;
  border-radius: 1rem;
  overflow: hidden;
  margin: 0 auto;
  position: relative;
  --video-dim: .35; /* затемнение */
}

.promo-video {
  object-fit: cover;
  display: block;
  pointer-events: none;
}

.video-mask {
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.2);
  pointer-events: none;
}

.video-overlay-top,
.video-overlay-bottom {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
  pointer-events: none;
}

/* Заголовок сверху */
.video-overlay-top {
  top: 0;
  padding: 16px;
}
.video-title {
  color: #fff;                     /* белый */
  font-weight: 900;                /* максимально жирный */
  text-shadow: 0 2px 8px rgba(0,0,0,.9); /* для читаемости */
  font-size: clamp(24px, 2vw + 12px, 40px);
}

/* Текст снизу */
.video-overlay-bottom {
  bottom: 0;
  padding: 16px;
  background: linear-gradient(to top, rgba(0,0,0,.25), rgba(0,0,0,0));
}
.video-subtitle {
  color: #fff;
  text-shadow: 0 2px 6px rgba(0,0,0,.8);
  font-size: clamp(14px, 1.2vw + 8px, 18px);
  margin: 0;
}

  .text-justify { text-align: justify; }
