.totumo-clientes-carousel,
.totumo-clientes-carousel * {
  box-sizing: border-box;
}

.totumo-clientes-carousel {
  --totumo-clientes-bg: #080808;
  --totumo-clientes-line: rgba(255, 255, 255, 0.1);
  --totumo-clientes-item-width: 11.111vw;
  position: relative;
  left: 50%;
  width: 100vw;
  max-width: 100vw;
  margin-right: -50vw;
  margin-left: -50vw;
  background: var(--totumo-clientes-bg);
  color: #fff;
  border-top: 1px solid var(--totumo-clientes-line);
  border-bottom: 1px solid var(--totumo-clientes-line);
  overflow: hidden;
  overflow-anchor: none;
  contain: layout paint;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace;
}

.totumo-clientes-carousel__heading {
  min-height: 62px;
  padding: 0 4vw;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  border-bottom: 1px solid var(--totumo-clientes-line);
  font-size: 10px;
  line-height: 1.4;
  text-transform: uppercase;
  letter-spacing: 0.13em;
}

.totumo-clientes-carousel__title {
  display: flex;
  align-items: center;
  gap: 15px;
  white-space: nowrap;
}

.totumo-clientes-carousel__title img {
  display: block;
  width: 96px;
  height: auto;
  object-fit: contain;
}

.totumo-clientes-carousel__description {
  color: #777;
  text-align: right;
}

.totumo-clientes-carousel__viewport {
  width: 100%;
  overflow: hidden;
}

.totumo-clientes-carousel__track {
  display: flex;
  width: max-content;
  transform: translate3d(0, 0, 0);
  animation: totumo-clientes-marquee var(--totumo-clientes-duration, 64s) linear infinite;
  will-change: transform;
}

.totumo-clientes-carousel__group {
  display: flex;
  flex: none;
}

.totumo-clientes-carousel__item {
  flex: 0 0 var(--totumo-clientes-item-width);
  width: var(--totumo-clientes-item-width);
  height: 122px;
  padding: 24px clamp(12px, 1.45vw, 28px);
  display: grid;
  place-items: center;
  border-right: 1px solid rgba(255, 255, 255, 0.07);
}

.totumo-clientes-carousel__item img {
  display: block;
  width: auto;
  height: auto;
  max-width: min(150px, 78%);
  max-height: 60px;
  object-fit: contain;
  image-rendering: auto;
  opacity: 0.94;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.totumo-clientes-carousel__item:hover img {
  opacity: 1;
  transform: scale(1.045);
}

@keyframes totumo-clientes-marquee {
  to {
    transform: translate3d(-50%, 0, 0);
  }
}

@media (max-width: 1024px) {
  .totumo-clientes-carousel {
    --totumo-clientes-item-width: 20vw;
  }

  .totumo-clientes-carousel__item {
    height: 120px;
    padding: 24px 2.8vw;
  }

  .totumo-clientes-carousel__item img {
    max-width: min(150px, 72%);
    max-height: 62px;
  }
}

@media (max-width: 700px) {
  .totumo-clientes-carousel__heading {
    min-height: 58px;
    padding: 10px 20px;
  }

  .totumo-clientes-carousel__description {
    display: none;
  }

  .totumo-clientes-carousel__title {
    gap: 10px;
    white-space: normal;
  }

  .totumo-clientes-carousel__title img {
    width: 78px;
    flex: none;
  }

  .totumo-clientes-carousel__item {
    height: 94px;
    padding: 20px 2.5vw;
  }

  .totumo-clientes-carousel__item img {
    max-width: min(100px, 74%);
    max-height: 46px;
  }
}
