/* =========================================
   PARTNER LOGOS SECTION
========================================= */

.partner-logos {
    padding: 5rem 2rem;

    /* white page background */
    background: #ffffff;
}

/* =========================================
   MAIN CARD CONTAINER
========================================= */

.partner-logos__grid {
    max-width: 1400px;

    margin: 0 auto;

    display: grid;

    grid-template-columns: repeat(5, 1fr);

    gap: 2rem;

    padding: 3rem;

    /* white card */
    background: #ffffff;

    /* subtle grey outline */
    border: 1px solid #e5e5e5;

    border-radius: 24px;

    /* soft depth */
    box-shadow:
        0 10px 30px rgba(0, 0, 0, 0.04);

    align-items: center;
}

/* =========================================
   LOGO ITEM
========================================= */

.partner-logo {
    height: 140px;

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 1rem;

    text-decoration: none;
}

/* =========================================
   LOGO IMAGE
========================================= */

.partner-logo img {
    width: auto !important;

    height: 70px !important;

    max-width: 100% !important;

    object-fit: contain !important;

    transition:
        transform 0.2s ease,
        opacity 0.2s ease;

    opacity: 0.9;
}

.partner-logo:hover img {
    transform: scale(1.03);

    opacity: 1;
}

/* =========================================
   RESPONSIVE
========================================= */

@media (max-width: 1200px) {

    .partner-logos__grid {
        grid-template-columns: repeat(4, 1fr);
    }
}

@media (max-width: 900px) {

    .partner-logos__grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 600px) {

    .partner-logos__grid {
        grid-template-columns: repeat(2, 1fr);

        padding: 2rem;
    }
}

@media (max-width: 420px) {

    .partner-logos__grid {
        grid-template-columns: 1fr;
    }
}