.patrocinadores { background: var(--color-bg-light); padding-top: var(--space-4); }
.participantes { background: var(--color-bg-light); }

.patrocinadores__banner,
.participantes__banner {
  background: var(--color-bg-light);
  padding-block: var(--space-3);
  text-align: center;
}
.patrocinadores__banner-img { height: 2.75rem; width: auto; aspect-ratio: 578 / 46; margin-inline: auto; }
.participantes__banner-img { height: 2.75rem; width: auto; aspect-ratio: 490 / 46; margin-inline: auto; }

.nivel { margin-top: 0; margin-bottom: var(--space-6); text-align: center; }
.nivel__badge-img { height: 12rem; width: auto; aspect-ratio: 802 / 355; margin: 0 auto var(--space-3); }
.nivel__badge-img1 { height: 10rem; width: auto; aspect-ratio: 802 / 355; margin: 0 auto var(--space-3); }
.logo-row { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--space-3); }
.logo-tile { width: 160px; height: 90px; object-fit: contain; padding: var(--space-2); }

.carousel__logo-img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  transform: scale(var(--logo-scale, 1));
  transition: transform 0.3s ease;
}

.carousel { display: flex; align-items: center; gap: var(--space-2); padding-block: var(--space-6); }
.carousel__track {
  display: flex;
  gap: var(--space-3);
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  scroll-behavior: smooth;
  flex: 1;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.carousel__track::-webkit-scrollbar { display: none; }
.carousel__item {
  flex: 0 0 160px;
  scroll-snap-align: start;
  overflow: hidden;
}
.carousel__item:hover .carousel__logo-img {
  transform: scale(calc(var(--logo-scale, 1) * 1.08));
}
.carousel__btn {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 2px solid var(--color-blue-600);
  background: var(--color-bg-light);
  color: var(--color-blue-600);
  display: flex;
  align-items: center;
  justify-content: center;
}
.carousel__btn:hover { background: var(--color-blue-600); color: var(--color-text-light); }

@media (max-width: 599.98px) {
  .carousel__btn { display: none; }
}

@media (prefers-reduced-motion: reduce) {
  .carousel__track {
    scroll-behavior: auto;
  }
}
