/* V4 PARTNERS ONLY — 10 desktop logos, larger artwork, manual circular scrolling.
   Loaded after home-v4.css. Banner, products, services and site layout are unchanged. */
#partners-track.partner-track {
    --tc-partners-columns: 10;
    --tc-partners-visible: var(--tc-partners-columns);
    gap: 8px !important;
    scroll-behavior: auto !important;
}
/* Prevent the browser from snapping back to an old clone after a seamless rebase. */
#partners-track.partner-track.partners-loop-ready {
    scroll-snap-type: none !important;
    overflow-anchor: none;
}
#partners-track.partner-track > .partner-tile {
    flex: 0 0 calc((100% - (var(--tc-partners-visible) - 1) * 8px) / var(--tc-partners-visible)) !important;
    width: calc((100% - (var(--tc-partners-visible) - 1) * 8px) / var(--tc-partners-visible)) !important;
    height: 96px !important;
    padding: 4px !important;
    scroll-snap-align: start;
    /* Never animate tile width/flex-basis: measurements must update immediately. */
    transition: background-color .15s, border-color .15s;
}
#partners-track.partner-track .partner-tile img {
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 80px !important;
    object-fit: contain !important;
}
#partners-track.partner-track .partner-tile a:focus-visible {
    outline: 2px solid var(--tc-orange, #f0a04e);
    outline-offset: -2px;
}
@media (max-width: 1200px) {
    #partners-track.partner-track { --tc-partners-columns: 8; }
}
@media (max-width: 980px) {
    #partners-track.partner-track { --tc-partners-columns: 5; }
}
@media (max-width: 640px) {
    #partners-track.partner-track { --tc-partners-columns: 3; }
    #partners-track.partner-track > .partner-tile {
        height: 78px !important;
        padding: 3px !important;
    }
    #partners-track.partner-track .partner-tile img { max-height: 66px !important; }
}
@media (max-width: 380px) {
    #partners-track.partner-track { --tc-partners-columns: 2; }
}
