/* Carousel Announcement Styles */

#abstractMarqueeWrapper {
    width: 50%;
    cursor: pointer;
    padding: 25px;
    text-align: center;
    overflow: hidden;
    position: relative;
}

#abstractMarquee {
    font-size: 18px;
    line-height: 1.5;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

#abstractMarquee img {
    height: 28px;
    vertical-align: middle;
    margin-right: 10px;
    flex-shrink: 0;
}

#abstractMarquee strong {
    color: #fff;
    font-size: 19px;
    margin-right: 10px;
    flex-shrink: 0;
}

.announcement-scroll-container {
    overflow: hidden;
    flex: 1 1 auto;
    white-space: nowrap;
    position: relative;
    max-width: calc(100% - 200px);
    min-width: 0;
}

.announcement-scroll-content {
    display: inline-block;
    white-space: nowrap;
    animation: scroll-left 40s linear infinite;
    color: #fdd779;
    font-size: 18px;
    will-change: transform;
    position: relative;
}

.announcement-scroll-content:hover {
    animation-play-state: paused;
}

.announcement-item {
    display: inline-block;
    margin-right: 30px;
    color: #fdd779;
    font-size: 18px;
    white-space: nowrap;
}

.separator {
    display: inline-block;
    margin: 0 20px;
    color: #fdd779;
    font-size: 18px;
}

.announcement-item a {
    color: #ffd966;
    text-decoration: underline;
}

.announcement-item a:hover {
    color: #fff;
}

@keyframes scroll-left {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}

