/* KDB_SPONSOR_MARQUEE_V3
   Self-contained strip with normalized logo height, equal visual gaps and
   enough repeated cycles to cover the viewport throughout the animation. */
html body.kdb-design-system-v1.kdb-public-page .partner-bar--marquee {
    overflow: hidden;
}

html body.kdb-design-system-v1.kdb-public-page .partner-bar--marquee > header {
    position: relative;
    z-index: 4;
}

html body.kdb-design-system-v1.kdb-public-page .partner-marquee {
    --kdb-sponsor-layout-width: 1320px;
    --kdb-sponsor-tile-width: var(--kdb-sponsor-layout-width);
    --kdb-sponsor-marquee-height: 88px;
    --kdb-sponsor-marquee-duration: 20s;
    position: relative;
    overflow: hidden;
    width: 100%;
    height: var(--kdb-sponsor-marquee-height);
    background: #d9e9eb;
}

html body.kdb-design-system-v1.kdb-public-page .partner-marquee__track[data-kdb-sponsor-marquee-track] {
    display: flex;
    width: max-content;
    min-width: max-content;
    height: 100%;
    flex-flow: row nowrap;
    transform: translate3d(0, 0, 0);
    animation: none;
    visibility: hidden;
}

html body.kdb-design-system-v1.kdb-public-page .partner-marquee__track[data-kdb-sponsor-marquee-track].is-ready {
    visibility: visible;
    animation: kdb-sponsor-marquee-v2 var(--kdb-sponsor-marquee-duration) linear infinite;
    will-change: transform;
}

html body.kdb-design-system-v1.kdb-public-page .partner-marquee__group {
    position: relative;
    display: flex;
    width: var(--kdb-sponsor-tile-width);
    min-width: var(--kdb-sponsor-tile-width);
    height: 100%;
    flex: 0 0 var(--kdb-sponsor-tile-width);
    flex-flow: row nowrap;
}

html body.kdb-design-system-v1.kdb-public-page .partner-marquee__sponsor-strip {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: fill;
    pointer-events: none;
    user-select: none;
}

html body.kdb-design-system-v1.kdb-public-page .partner-marquee__sponsor-hit {
    position: absolute;
    top: 0;
    bottom: 0;
    left: var(--kdb-sponsor-left);
    z-index: 2;
    display: block;
    width: var(--kdb-sponsor-width);
    height: 100%;
    text-decoration: none;
}

html body.kdb-design-system-v1.kdb-public-page .partner-marquee__sponsor-hit:focus-visible {
    outline: 2px solid rgba(3, 35, 49, .55);
    outline-offset: -2px;
}

html body.kdb-design-system-v1.kdb-public-page .partner-marquee__sponsor-hit:hover {
    background: rgba(255, 255, 255, .035);
}

@keyframes kdb-sponsor-marquee-v2 {
    from { transform: translate3d(0, 0, 0); }
    to { transform: translate3d(calc(-1 * var(--kdb-sponsor-tile-width)), 0, 0); }
}

@media (max-width: 820px) {
    html body.kdb-design-system-v1.kdb-public-page .partner-marquee {
        --kdb-sponsor-tile-width: calc(var(--kdb-sponsor-layout-width) * .8181818);
        --kdb-sponsor-marquee-height: 72px;
        --kdb-sponsor-marquee-duration: 16s;
    }
}

@media (max-width: 520px) {
    html body.kdb-design-system-v1.kdb-public-page .partner-marquee {
        --kdb-sponsor-marquee-duration: 14s;
    }
}
