/* =========================================
   MARQUEE — Bandeau défilant
========================================= */

.marquee {
    position: absolute;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 50px;

    background: var(--accent);
    overflow: hidden;

    display: flex;
    align-items: center;

    z-index: 4000;
}

.marquee.is-sticky {
    position: fixed;
    top: var(--topbar-height);
    height: 40px;
}

.marquee__track {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    width: max-content;
    min-width: max-content;
    white-space: nowrap;
    will-change: transform;
    animation: marqueeMove var(--marquee-duration, 26s) linear infinite;
}

.marquee__item {
    text-decoration: none;
    color: #000;

    font-family: "MarqueeFont", sans-serif;
    font-style: italic;
    font-weight: 900;
    text-transform: uppercase;

    font-size: 1.6rem;
    letter-spacing: 0.8px;

    margin-right: 80px;

    transition: opacity .2s ease;
}

.marquee__item:hover {
    opacity: 0.7;
}

.marquee__item.is-disabled {
    opacity: 0.45;
    cursor: default;
}

.marquee__item.is-disabled:hover {
    opacity: 0.45;
}

@keyframes marqueeMove {
    0%   { transform: translate3d(0, 0, 0); }
    100% { transform: translate3d(-50%, 0, 0); }
}

@media (max-width: 699px) {
    .marquee__item {
        margin-right: 40px;
    }
}

@media (min-width: 700px) {
    .marquee {
        height: 60px;
    }

    .marquee.is-sticky {
        height: 50px;
    }

    .marquee__item {
        font-size: 1.6rem;
        margin-right: 100px;
    }
}

@media (min-width: 1024px) {
    .marquee {
        height: 65px;
    }

    .marquee.is-sticky {
        height: 55px;
    }

    .marquee__item {
        font-size: 1.8rem;
        margin-right: 120px;
    }
}


@media (prefers-reduced-motion: reduce) {
    .marquee__track {
        animation-duration: 80s;
    }
}
