.s4-infinite-banner-text {
    position: relative;
    overflow: hidden;
    width: 100%;
}

.s4-infinite-banner-text .s4-infinite-banner-text__track {
    display: flex;
    width: max-content;
    animation: s4-infinite-banner-scroll 20s linear infinite;
    will-change: transform;
    gap: 30px;
}

.s4-infinite-banner-text .s4-infinite-banner-text__group {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: 30px;
    white-space: nowrap;
    color: #fff;
}

.s4-infinite-banner-text .s4-infinite-banner-text__item,
.s4-infinite-banner-text .s4-infinite-banner-text__separator {
    font-family: "melindaevania", sans-serif;
    font-size: 3.5rem;
    text-transform: uppercase;
    line-height: 1;
}

.s4-infinite-banner-text:hover .s4-infinite-banner-text__track {
    animation-play-state: paused;
}

@keyframes s4-infinite-banner-scroll {
    from {
        transform: translate3d(-50%, 0, 0);
    }
    to {
        transform: translate3d(0, 0, 0);
    }
}

@media (prefers-reduced-motion: reduce) {
    .s4-infinite-banner-text .s4-infinite-banner-text__track {
        animation: none;
        transform: none;
    }
}

@media screen and (max-width: 991px) { 
    .s4-infinite-banner-text .s4-infinite-banner-text__item,
    .s4-infinite-banner-text .s4-infinite-banner-text__separator {
        font-size: 2.5rem;
    }
}

@media screen and (max-width: 575px) { 
    .s4-infinite-banner-text .s4-infinite-banner-text__group {
        gap: 20px;
    }
    .s4-infinite-banner-text .s4-infinite-banner-text__item,
    .s4-infinite-banner-text .s4-infinite-banner-text__separator {
        font-size: 1.8rem;
    }
}