
#partner-container {
    position: relative; 
    align-content: flex-start;
}
#partner-container > article {
    box-sizing: border-box;
    transition: none !important; 
    will-change: transform, opacity;
    transform-origin: center center;
    backface-visibility: hidden;
    transform: translateZ(0);
}

#filter-controls {
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 4em;
}

.categories-wrapper {
    padding-top: 2em;
    justify-content: center;
}
@media (max-width: 768px) {
    .filter-row {
        width: 100vw;
        max-width: 100vw;
        margin-left: calc(50% - 50vw);
        margin-right: calc(50% - 50vw);
    }
    .categories-wrapper {
        padding-left: max(25px, env(safe-area-inset-left));
        padding-right: max(25px, env(safe-area-inset-right));
        padding-bottom: 1.5em;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        justify-content: flex-start;
        mask-image: linear-gradient(to right, transparent, #ffffff 10%, #ffffff 90%, transparent);
        -webkit-mask-image: linear-gradient(to right, transparent, #ffffff 10%, #ffffff 90%, transparent);
    }
    .categories-wrapper::-webkit-scrollbar-track {
        margin-left: 25px;
        margin-right: 25px;
    }
    @supports (-webkit-overflow-scrolling: touch) {
        #filter-controls {
            margin-bottom: 2.5em;
        }
    }
}

#no-results {
    width: 100%;
    text-align: center;
    padding: 2em 1em;
}


/* Search with sort overlay */
.search-input {
    display: flex;
    align-items: center;
    gap: 1em;
    padding-right: 5px !important;
}
.search-input > div:first-child {
    display: flex;
    align-items: center;
    flex-grow: 1;    
}
.search-input input[type="text"] {
    width: 100%;
    font-size: inherit;
    border: none !important;
}


/* Sort */
.filter-toggle {
    white-space: nowrap;
    -webkit-tap-highlight-color: transparent;
    padding: 10px 10px 10px 17px;
}
.filter-toggle:focus-visible {
    border-radius: 32px;
    outline-offset: 0;
}
@media (max-width: 575px) {
    .filter-toggle > span {
        display: none;
    }
}
.sort-tooltip .sort-option {
    text-decoration: none;
    color: var(--nv-dark-bg);
}
.sort-tooltip .sort-option:not(.active) {
    cursor: pointer;
}
.sort-tooltip .sort-option.active,
.sort-tooltip .sort-option:hover {
    color: var(--custom-4);
}
.sort-tooltip > div:first-of-type {
    border-bottom: 1px solid var(--custom-2);
    padding-bottom: 15px;
    margin-bottom: 15px;
}
.sort-tooltip > div > .sort-option:first-of-type {
    margin-bottom: 7px;
}

