.awards-carousel {
    --awards-visible: 6;
    --awards-gap: 40px;
    --awards-speed: 56s;
    --awards-fade: 7%;
    position: relative;
    width: 100vw;
    max-width: none;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    overflow: hidden;
    -webkit-mask-image: linear-gradient(
        to right,
        transparent 0%,
        #000 var(--awards-fade),
        #000 calc(100% - var(--awards-fade)),
        transparent 100%
    );
    mask-image: linear-gradient(
        to right,
        transparent 0%,
        #000 var(--awards-fade),
        #000 calc(100% - var(--awards-fade)),
        transparent 100%
    );
}

.awards-carousel__track {
    display: flex;
    width: 100%;
    align-items: center;
    animation: awards-scroll var(--awards-speed) linear infinite;
    will-change: transform;
}

.awards-carousel__group {
    display: flex;
    align-items: center;
    flex: 0 0 calc(100% * var(--awards-count) / var(--awards-visible));
    list-style: none;
    margin: 0;
    padding: 0;
}

.awards-carousel__item {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 calc(100% / var(--awards-count));
    min-width: 0;
    padding: 10px calc(var(--awards-gap) / 2);
    box-sizing: border-box;
}

.awards-carousel__item picture {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
}

.awards-carousel__item img {
    display: block;
    width: 100%;
    height: auto;
    max-width: min(100%, var(--logo-width));
    max-height: 100px;
    object-fit: contain;
}

@keyframes awards-scroll {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(
            calc(-100% * var(--awards-count) / var(--awards-visible))
        );
    }
}


@media (hover: hover) {
    .awards-carousel:hover .awards-carousel__track {
        animation-play-state: paused;
    }
}


@media (max-width: 1023px) {
    .awards-carousel {
        --awards-visible: 3;
        --awards-gap: 30px;
        --awards-fade: 8%;
    }

    .awards-carousel__item img {
        max-height: 90px;
    }
}

@media (max-width: 639px) {
    .awards-carousel {
        --awards-visible: 2;
        --awards-gap: 20px;
        --awards-fade: 10%;
    }

    .awards-carousel__item img {
        max-height: 75px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .awards-carousel__track {
        animation: none;
    }

    .awards-carousel {
        overflow-x: auto;
        -webkit-mask-image: none;
        mask-image: none;
    }
}
