/* Partner Logos — tf-pl */

.tf-pl-section {
    background: #fff;
    border-radius: 12px;
    padding: 20px 28px;
    margin: 24px 0;
    overflow: hidden;
}

.tf-pl-inner {
    display: flex;
    align-items: center;
    gap: 32px;
}

.tf-pl-heading {
    flex: 0 0 30%;
    color: rgba(64, 64, 64, 1);
    font-size: 16px;
    text-align: justify;
    margin: 0;
    padding-right: 16px;
}

/* Track */
.tf-pl-track-wrap {
    flex: 1;
    overflow: hidden;
    mask-image: linear-gradient(to right, transparent 0%, #000 5%, #000 95%, transparent 100%);
    -webkit-mask-image: linear-gradient(to right, transparent 0%, #000 5%, #000 95%, transparent 100%);
}

.tf-pl-track {
    display: flex;
    align-items: center;
    gap: 12px;
    width: max-content;
    animation: tf-pl-scroll var(--dur, 40s) linear infinite;
}

.tf-pl-pause .tf-pl-track:hover {
    animation-play-state: paused;
}

.tf-pl-item {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
}

.tf-pl-item a {
    display: flex;
    align-items: center;
}

.tf-pl-item img {
    height: 82px;
    width: auto;
    max-width: 100%;
    object-fit: contain;
    opacity: 0.85;
    transition: opacity .2s;
}

.tf-pl-item:hover img {
    opacity: 1;
}

@keyframes tf-pl-scroll {
    from { transform: translateX(0); }
    to   { transform: translateX(calc(-50% - 26px)); }
}

/* Mobile */
@media (max-width: 767px) {
    .tf-pl-inner {
        flex-direction: column;
        align-items: flex-start;
        gap: 14px;
    }
    .tf-pl-heading {
        flex: none;
        border-right: none;
        padding-right: 0;
        padding-bottom: 22px;
        width: 100%;
    }
	.tf-pl-section {
    width: 90%;
    margin: auto;
}
	.tf-pl-track {
    gap: 0px;
}
    .tf-pl-item img { height: 82px; }
}