.services-banner {
  width: 100%;
  overflow: hidden;
  background: var(--primary);
  color: var(--primary-foreground);
  padding-block: 1.1rem;
}
.services-track {
  display: flex;
  width: max-content;
  animation: services-scroll var(--services-duration, 30s) linear infinite;
  will-change: transform;
}
.services-group, .services-sequence, .services-item {
  display: flex;
  flex: 0 0 auto;
  align-items: center;
}
.services-item {
  gap: 2rem;
  padding-right: 2rem;
  white-space: nowrap;
  font-family: 'Manrope', sans-serif;
  font-size: .85rem;
  font-weight: 800;
  line-height: 1.6;
  letter-spacing: .06em;
}
.services-dot { font-size: 1rem; }
@keyframes services-scroll {
  to { transform: translateX(-50%); }
}
@media (prefers-reduced-motion: reduce) {
  .services-track { animation: none; width: 100%; will-change: auto; }
  .services-group { width: 100%; }
  .services-sequence { width: 100%; flex-wrap: wrap; justify-content: center; row-gap: .75rem; }
  .services-item { gap: .75rem; padding-inline: .375rem; font-size: .75rem; }
  .services-group + .services-group, .services-sequence ~ .services-sequence { display: none; }
}
