#partners-container {
    background-color: var(--alice-blue-2);
    margin-top: 5rem;
}

#partners-container .contents-wrapper {
    display: grid;
    gap: 2.5rem 2rem;
    grid-template-columns: 0.45fr 0.55fr;
    padding: 1rem 0 6rem;
}

#partners-container .inner-content {
    overflow: hidden;
}

#partners-container .primary-btn {
    margin-top: 1.5rem;
}

#partners-container .primary-btn:not(.animate) {
    animation: faded-slide-left-in 1s both 0.2s;
}

#partner-logo-wrappers {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin: 2rem 0 0 2rem;
}

#partner-logo-wrappers .partner-logo-section {
    overflow: hidden;
    transition: background-color 0.2s ease-in-out;
}

#partner-logo-wrappers .partner-logo-section:hover {
    background-color: var(--bleu-de-france-a10);
}

#partner-logo-wrappers .partner-logo-section:nth-of-type(3n-1) {
    border-left: 1px solid var(--columbia-blue);
    border-right: 1px solid var(--columbia-blue);
}

#partner-logo-wrappers .partner-logo-section:nth-of-type(6n-2),
#partner-logo-wrappers .partner-logo-section:nth-of-type(6n-1),
#partner-logo-wrappers .partner-logo-section:nth-of-type(6n) {
    border-top: 1px solid var(--columbia-blue);
    border-bottom: 1px solid var(--columbia-blue);
}

#partner-logo-wrappers .partner-logo-section:nth-last-of-type(3),
#partner-logo-wrappers .partner-logo-section:nth-last-of-type(2),
#partner-logo-wrappers .partner-logo-section:nth-last-of-type(1) {
    border-bottom: none;
}

#partner-logo-wrappers .partner-logo-section .partner-logo {
    width: 120px;
    max-width: 150px;
}

#partner-logo-wrappers .partner-logo-section .partner-link {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    padding: 2rem 1.5rem;
}

#partner-logo-wrappers .partner-logo-section .partner-link:not(.animate) {
    animation: faded-slide-up 1s both 0.2s;
}

footer {
    margin-top: 0;
}

@media (max-width: 1080px) {
    #partners-container .contents-wrapper {
        grid-template-columns: 1fr;
    }

    #partner-logo-wrappers {
        margin: 0;
    }

    @media (min-width: 501px) {
        #partner-logo-wrappers {
            margin: 0 2rem;
        }
    }
}

@media (max-width: 800px) {
    #partners-container {
        margin-top: 4rem;
    }

    #partner-logo-wrappers .partner-logo-section .partner-logo {
        width: 80px;
    }

    @media (min-width: 401px) {
        #partner-logo-wrappers .partner-logo-section .partner-logo {
            width: 100px;
        }
    }
}

@media (max-width: 550px) {
    #partners-container {
        margin-top: 2rem;
    }

    #partner-logo-wrappers {
        grid-template-columns: 1fr;
    }

    #partner-logo-wrappers .partner-logo-section:nth-of-type(n) {
        border: none;
    }

    #partner-logo-wrappers .partner-logo-section:nth-of-type(2n) {
        border-top: 1px solid var(--columbia-blue);
        border-bottom: 1px solid var(--columbia-blue);
    }

    #partner-logo-wrappers .partner-logo-section:nth-last-of-type(1) {
        border-bottom: none;
    }

    @media (min-width: 241px) {
        #partner-logo-wrappers {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        #partner-logo-wrappers .partner-logo-section:nth-of-type(n) {
            border: none;
        }

        #partner-logo-wrappers .partner-logo-section:nth-of-type(3n-2) {
            border-right: 1px solid var(--columbia-blue);
        }

        #partner-logo-wrappers .partner-logo-section:nth-of-type(3n) {
            grid-column: 1/3;
            border-top: 1px solid var(--columbia-blue);
            border-bottom: 1px solid var(--columbia-blue);
        }

        #partner-logo-wrappers .partner-logo-section:nth-last-of-type(1) {
            border-bottom: none;
        }
    }
}