.text-loop-container {
  width: 100%;
  height: 70px;
  overflow: hidden;
  background: #6C4193;
  color: #ffffff;
  font-weight: 700;
  font-size: 1.6rem;
  white-space: nowrap;
  box-sizing: border-box;
  padding: 20px 0;
  position: relative;
  display: flex;
  align-items: center;
  opacity: 0;
  transition: opacity 0.6s ease;
  will-change: opacity;
}
.text-loop-container.visible {
  opacity: 1;
}


.text-loop {
  display: inline-block;
  white-space: nowrap;
  will-change: transform;
  animation: scroll-left 300s linear infinite;
}

.text-loop span {
  display: inline-block;
  margin-right: 2rem;
  opacity: 0;
  animation: fadeInOut 6s ease-in-out infinite;
}

@keyframes scroll-left {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-50%);
  }
}

@keyframes fadeInOut {
  0% { opacity: 0; }
  10% { opacity: 1; }
  90% { opacity: 1; }
  100% { opacity: 0; }
}