DIV.marquee
{
    OVERFLOW: hidden;
    WIDTH: 100%;
}

DIV.marquee:hover DIV.marquee-slide
{
    ANIMATION-PLAY-STATE: paused;
    -MOZ-ANIMATION-PLAY-STATE: paused;
    -WEBKIT-ANIMATION-PLAY-STATE: paused;
}

DIV.marquee-slide
{
    DISPLAY: inline-flex;
    MIN-WIDTH: 200%;
    ANIMATION: marquee 20s linear infinite;
    -MOZ-ANIMATION: marquee 20s linear infinite;
    -WEBKIT-ANIMATION: marquee 20s linear infinite;
}

DIV.marquee-strip
{
    DISPLAY: flex;
}

DIV.marquee-frame
{
    MIN-WIDTH: 350px;
}

@keyframes marquee
{
    from {         TRANSFORM: translateX(   0);
              -MOZ-TRANSFORM: translateX(   0);
           -WEBKIT-TRANSFORM: translateX(   0); }
    to   {         TRANSFORM: translateX(-50%);
              -MOZ-TRANSFORM: translateX(-50%);
           -WEBKIT-TRANSFORM: translateX(-50%); }
}

A.marquee-link
{
    BORDER: none;
    BOTTOM: 0;
    LEFT: 0;
    OVERFLOW: hidden;
    PADDING-LEFT: 100%;
    POSITION: absolute;
    TOP: 0;
    WIDTH: 0;
    Z-INDEX: 550;
}