/* =========================================
   ADAPTACCESSOIRES — PARTENAIRES
   ========================================= */

.aa-partners {
    position: relative;

    background: var(--aa-white);

    overflow: hidden;
}


/* =========================================
   HEADER
   ========================================= */

.aa-partners__header {
    max-width: 760px;

    margin-inline: auto;
}


/* =========================================
   GRID
   ========================================= */

.aa-partners__grid {
    display: grid;

    grid-template-columns: repeat(2, minmax(0, 1fr));

    gap: 24px;

    max-width: 900px;

    margin: 0 auto;
}


/* =========================================
   PARTNER CARD
   ========================================= */

.aa-partner-card {
    position: relative;

    display: flex;

    align-items: center;
    justify-content: center;

    min-height: 190px;

    padding: 35px;

    overflow: hidden;

    border: 1px solid var(--aa-border);

    border-radius: var(--aa-radius-lg);

    background: var(--aa-background);

    box-shadow: var(--aa-shadow-sm);

    transition:
        transform var(--aa-transition),
        box-shadow var(--aa-transition),
        border-color var(--aa-transition);
}


.aa-partner-card:hover {
    transform: translateY(-6px);

    border-color: rgba(37, 150, 190, 0.35);

    box-shadow: var(--aa-shadow-md);
}


/* =========================================
   DECORATIVE ELEMENT
   ========================================= */

.aa-partner-card::before {
    content: "";

    position: absolute;

    top: -80px;
    right: -80px;

    width: 180px;
    height: 180px;

    border: 1px solid rgba(37, 150, 190, 0.12);

    border-radius: 50%;

    transition:
        transform var(--aa-transition);
}


.aa-partner-card:hover::before {
    transform: scale(1.25);
}


/* =========================================
   ORANGE ACCENT
   ========================================= */

.aa-partner-card::after {
    content: "";

    position: absolute;

    left: 50%;
    bottom: 0;

    width: 0;
    height: 3px;

    transform: translateX(-50%);

    border-radius: var(--aa-radius-pill);

    background: var(--aa-secondary);

    transition:
        width var(--aa-transition);
}


.aa-partner-card:hover::after {
    width: 60px;
}


/* =========================================
   LOGO
   ========================================= */

.aa-partner-card__logo {
    position: relative;

    z-index: 2;

    display: flex;

    align-items: center;
    justify-content: center;

    width: 100%;
    height: 110px;
}


.aa-partner-card__logo img {
    display: block;

    max-width: 80%;
    max-height: 90px;

    width: auto;
    height: auto;

    object-fit: contain;

    filter: grayscale(100%);

    opacity: 0.72;

    transition:
        filter var(--aa-transition),
        opacity var(--aa-transition),
        transform var(--aa-transition);
}


.aa-partner-card:hover .aa-partner-card__logo img {
    filter: grayscale(0);

    opacity: 1;

    transform: scale(1.05);
}


/* =========================================
   TABLET
   ========================================= */

@media (max-width: 767px) {

    .aa-partners__grid {
        grid-template-columns: 1fr;

        gap: 16px;

        max-width: 600px;
    }

    .aa-partner-card {
        min-height: 160px;

        padding: 28px;
    }

    .aa-partner-card__logo {
        height: 90px;
    }

    .aa-partner-card__logo img {
        max-height: 75px;
    }
}


/* =========================================
   REDUCED MOTION
   ========================================= */

@media (prefers-reduced-motion: reduce) {

    .aa-partner-card,
    .aa-partner-card::before,
    .aa-partner-card::after,
    .aa-partner-card__logo img {
        transition: none;
    }
}
