/* =====================================================================================================
   Section: partners — styles for the block between "BEGIN SECTION: partners" and "END SECTION: partners" in index.html.
   ===================================================================================================== */

.section--partners {
    /* Logo heights at 1440px, tuned per logo so the three have a similar visual weight
       (a long one-line wordmark needs less height than a two-line lock-up). */
    --partners-logo-h: clamp(2.5rem, 2rem + 1.4vw, 3.5rem);     /* 40 → 56px */
    --partners-gap-x: clamp(2.5rem, 1rem + 6vw, 7rem);
    --partners-gap-y: clamp(2rem, 1.5rem + 2vw, 3rem);

    padding-block: var(--section-space);
}

/* Title: resource 37, sized by .section-title (css/base.css) like the other section titles. */

.partners__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: var(--partners-gap-y) var(--partners-gap-x);
    margin-top: clamp(2.5rem, 2rem + 2.5vw, 4.5rem);
}

.partners__link {
    display: block;
    border-radius: var(--radius-sm);
    transition: filter 0.4s var(--ease-out), transform 0.4s var(--ease-out);
}

/* The logo files are already in the palette grey (--text); hover/focus darkens them slightly and lifts them. */
.partners__link:hover,
.partners__link:focus-visible {
    filter: brightness(0.8);
    transform: translateY(-2px);
}

.partners__logo {
    width: auto;
    height: var(--partners-logo-h);
    max-width: min(78vw, 20rem);
    object-fit: contain;
}

.partners__item--rednodelabs .partners__logo { height: calc(var(--partners-logo-h) * 0.58); }   /* ~32px */

@media (prefers-reduced-motion: reduce) {
    .partners__link { transition: none; }
    .partners__link:hover,
    .partners__link:focus-visible { transform: none; }
}
