.brands-section {
  padding: 78px 0 42px;
  background: var(--white);
  overflow: hidden;
}


.brands-marquee {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding: 18px 0 44px;
}

.brands-marquee::before,
.brands-marquee::after {
  content: "";
  position: absolute;
  top: 0;
  z-index: 2;
  width: 120px;
  height: 100%;
  pointer-events: none;
}

.brands-marquee::before {
  left: 0;
  background: linear-gradient(90deg, var(--white), transparent);
}

.brands-marquee::after {
  right: 0;
  background: linear-gradient(270deg, var(--white), transparent);
}

.brands-track {
  display: flex;
  width: max-content;
  gap: 18px;
  animation: marquee 42s linear infinite;
}

.brands-marquee:hover .brands-track {
  animation-play-state: paused;
}

.brand-item {
  display: grid;
  place-items: center;
  width: 180px;
  height: 92px;
  padding: 18px;
  border-radius: 22px;
  background: #f8fbff;
  border: 1px solid rgba(15, 23, 42, 0.08);
  box-shadow: 0 14px 34px rgba(10, 41, 77, 0.08);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.brand-item:hover {
  transform: translateY(-3px);
  box-shadow: 0 18px 42px rgba(10, 41, 77, 0.12);
}

.brand-item img {
  max-width: 135px;
  max-height: 50px;
  object-fit: contain;
  filter: saturate(0.95);
}

@keyframes marquee {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}


.brand-item strong { color: var(--dark); font-size: 1rem; text-align: center; }
