/* ========================================
   CONTAINER PRINCIPAL
======================================== */
.tso-swiper {
  width: 100%;
  max-width: 140rem; /* mais largo */
  margin: 0 auto;
  padding: 6rem 2rem;
}

/* Padding responsivo padrão */
@media (max-width: 991px) {
  .tso-swiper {
    padding: 5rem 3rem;
  }
}

@media (max-width: 767px) {
  .tso-swiper {
    padding: 4rem 1rem;
  }
}

/* ========================================
   SLIDES
======================================== */
.tso-swiper .swiper-slide {
  background-position: center;
  background-size: cover;

  width: 500px;   /* mais largo */
  height: 480px;

  border-radius: 14px;
  overflow: hidden;

  transition: transform 0.4s ease;
}

/* Mobile */
@media (max-width: 767px) {
  .tso-swiper .swiper-slide {
    width: 85%;
    height: 420px;
  }
}

/* ========================================
   SOMBRAS 3D (mais suaves)
======================================== */
.tso-swiper.swiper-container-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0,0,0,0.3), transparent);
  border-radius: 14px;
}

.tso-swiper.swiper-container-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0,0,0,0.3), transparent);
  border-radius: 14px;
}

/* ========================================
   PAGINAÇÃO
======================================== */
.tso-swiper .swiper-pagination-bullet {
  background: #696969;
  transition: all 0.4s ease;
  border-radius: 8px;
  opacity: 1;
}

.tso-swiper .swiper-pagination-bullet-active {
  background: #0076c5;
  width: 28px;
}

.tso-swiper-pagination {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 3rem;
}