/*
 * Marquee Ticker Strip
 * Pure CSS animation — no JS required for the scroll.
 * Version: 1.0.0
 */

.bp-ticker {
    background-color: var(--bp-gold);
    overflow: hidden;
    white-space: nowrap;
    height: 36px;
    display: flex;
    align-items: center;
    position: relative;
    z-index: calc(var(--bp-z-nav) + 1);
}

.bp-ticker__inner {
    overflow: hidden;
    flex: 1;
}

.bp-ticker__track {
    display: inline-flex;
    align-items: center;
    animation: bp-ticker-scroll 40s linear infinite;
    will-change: transform;
}

/* Pause on hover for accessibility */
.bp-ticker:hover .bp-ticker__track {
    animation-play-state: paused;
}

@keyframes bp-ticker-scroll {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-33.333%); } /* One third = 1 of the 3 dupes */
}

.bp-ticker__item {
    display: inline-flex;
    align-items: center;
    padding-inline: var(--bp-space-4);
    font-family: var(--bp-font-body);
    font-size: var(--bp-text-xs);
    font-weight: 700;
    letter-spacing: var(--bp-tracking-wider);
    text-transform: uppercase;
    color: var(--bp-black);
    white-space: nowrap;
}

.bp-ticker__link {
    color: var(--bp-black);
    text-decoration: none;
    transition: opacity var(--bp-transition-fast);
}

.bp-ticker__link:hover {
    opacity: 0.7;
}

.bp-ticker__sep {
    margin-inline: var(--bp-space-3);
    opacity: 0.5;
    font-size: 10px;
}

/* Respect prefers-reduced-motion */
@media (prefers-reduced-motion: reduce) {
    .bp-ticker__track {
        animation: none;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
}

/* Body offset for ticker + nav combined */
body.has-ticker {
    padding-top: calc(var(--bp-nav-height) + 36px);
}

.bp-nav.has-ticker {
    top: 36px;
}
