.dc-gmo-client-marquee,
.dc-gmo-client-marquee * {
    box-sizing: border-box;
}

.dc-gmo-client-marquee {
    --dc-client-marquee-duration: 34s;
    --dc-client-marquee-gap: 56px;
    --dc-client-marquee-fade: 8%;
    width: 100%;
    overflow: hidden;
    padding: 40px 0;
    border-top: 1px solid #e4e6eb;
    border-bottom: 1px solid #e4e6eb;
    border-left: 0;
    border-right: 0;
    background: #f5f6f8;
}

.dc-gmo-client-marquee__container {
    width: 100%;
    max-width: 1200px;
    margin-inline: auto;
    padding-inline: 24px;
}

.dc-gmo-client-marquee__eyebrow {
    margin: 0 0 22px;
    padding: 0;
    color: #6b7480;
    font-size: 13px;
    line-height: 1.4;
    font-weight: 700;
    letter-spacing: 2.4px;
    text-align: center;
    text-transform: uppercase;
}

.dc-gmo-client-marquee__viewport {
    width: 100%;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 var(--dc-client-marquee-fade), #000 calc(100% - var(--dc-client-marquee-fade)), transparent);
    mask-image: linear-gradient(90deg, transparent, #000 var(--dc-client-marquee-fade), #000 calc(100% - var(--dc-client-marquee-fade)), transparent);
}

.dc-gmo-client-marquee--no-fade .dc-gmo-client-marquee__viewport {
    -webkit-mask-image: none;
    mask-image: none;
}

.dc-gmo-client-marquee__track {
    display: flex;
    flex-wrap: nowrap;
    width: max-content;
    will-change: transform;
    animation: dc-gmo-client-marquee-scroll var(--dc-client-marquee-duration) linear infinite;
}

.dc-gmo-client-marquee--right .dc-gmo-client-marquee__track {
    animation-direction: reverse;
}

.dc-gmo-client-marquee--pause .dc-gmo-client-marquee__viewport:hover .dc-gmo-client-marquee__track,
.dc-gmo-client-marquee--pause .dc-gmo-client-marquee__viewport:focus-within .dc-gmo-client-marquee__track {
    animation-play-state: paused;
}

.dc-gmo-client-marquee__group {
    display: flex;
    flex: 0 0 auto;
    flex-wrap: nowrap;
    align-items: center;
    gap: var(--dc-client-marquee-gap);
    padding-right: var(--dc-client-marquee-gap);
}

.dc-gmo-client-marquee__item {
    display: flex;
    flex: 0 0 auto;
    min-height: 30px;
    align-items: center;
    justify-content: center;
    opacity: .75;
    white-space: nowrap;
}

.dc-gmo-client-marquee__item-link,
.dc-gmo-client-marquee__item-link:visited {
    display: inline-flex;
    align-items: center;
    color: inherit;
    text-decoration: none;
}

.dc-gmo-client-marquee__item-link:focus-visible {
    outline: 2px solid #c8a04e;
    outline-offset: 4px;
    border-radius: 3px;
}

.dc-gmo-client-marquee__item-inner {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.dc-gmo-client-marquee__text {
    color: #9aa4b2;
    font-size: 20px;
    line-height: 1.3;
    font-weight: 800;
    letter-spacing: .6px;
    text-transform: uppercase;
    transition: color .2s ease;
}

.dc-gmo-client-marquee__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #9aa4b2;
    transition: color .2s ease;
}

.dc-gmo-client-marquee__icon i {
    font-size: 18px;
}

.dc-gmo-client-marquee__icon svg {
    width: 18px;
    height: 18px;
    fill: currentColor;
}

.dc-gmo-client-marquee__logo {
    display: block;
    width: auto;
    height: 32px;
    max-width: 170px;
    object-fit: contain;
}

.dc-gmo-client-marquee-logo-filter--gray .dc-gmo-client-marquee__logo {
    filter: grayscale(1);
}

.dc-gmo-client-marquee-logo-filter--gray-soft .dc-gmo-client-marquee__logo {
    filter: grayscale(1);
    opacity: .7;
}

@keyframes dc-gmo-client-marquee-scroll {
    from { transform: translate3d(0, 0, 0); }
    to   { transform: translate3d(-50%, 0, 0); }
}

@media (max-width: 767px) {
    .dc-gmo-client-marquee {
        padding: 30px 0;
        --dc-client-marquee-gap: 32px;
    }

    .dc-gmo-client-marquee__container {
        padding-inline: 16px;
    }

    .dc-gmo-client-marquee__eyebrow {
        font-size: 12px;
        letter-spacing: 1.8px;
    }

    .dc-gmo-client-marquee__text {
        font-size: 17px;
    }

    .dc-gmo-client-marquee--mobile-wrap .dc-gmo-client-marquee__viewport {
        overflow: visible;
        -webkit-mask-image: none;
        mask-image: none;
    }

    .dc-gmo-client-marquee--mobile-wrap .dc-gmo-client-marquee__track {
        display: block;
        width: 100%;
        animation: none;
        transform: none;
    }

    .dc-gmo-client-marquee--mobile-wrap .dc-gmo-client-marquee__group:first-child {
        display: flex;
        width: 100%;
        flex-wrap: wrap;
        justify-content: center;
        gap: 20px 32px;
        padding-right: 0;
    }

    .dc-gmo-client-marquee--mobile-wrap .dc-gmo-client-marquee__group--clone {
        display: none;
    }

    .dc-gmo-client-marquee--mobile-scroll .dc-gmo-client-marquee__viewport {
        overflow-x: auto;
        overscroll-behavior-inline: contain;
        scroll-snap-type: x proximity;
        scrollbar-width: none;
        -webkit-mask-image: none;
        mask-image: none;
    }

    .dc-gmo-client-marquee--mobile-scroll .dc-gmo-client-marquee__viewport::-webkit-scrollbar {
        display: none;
    }

    .dc-gmo-client-marquee--mobile-scroll .dc-gmo-client-marquee__track {
        animation: none;
        transform: none;
    }

    .dc-gmo-client-marquee--mobile-scroll .dc-gmo-client-marquee__group:first-child {
        padding-right: 0;
    }

    .dc-gmo-client-marquee--mobile-scroll .dc-gmo-client-marquee__group--clone {
        display: none;
    }

    .dc-gmo-client-marquee--mobile-scroll .dc-gmo-client-marquee__item {
        scroll-snap-align: start;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dc-gmo-client-marquee__viewport {
        overflow-x: auto;
        -webkit-mask-image: none;
        mask-image: none;
        scrollbar-width: none;
    }

    .dc-gmo-client-marquee__viewport::-webkit-scrollbar {
        display: none;
    }

    .dc-gmo-client-marquee__track {
        animation: none !important;
        transform: none !important;
    }

    .dc-gmo-client-marquee__group--clone {
        display: none;
    }
}
