/* ==========================================================================
   SUCCESS PARTNERS — Archive & homepage grid
   ========================================================================== */

.sp-section--archive {
    padding: var(--space-10) 0 var(--space-16);
}

.sp-section--grid .sp-grid {
    display: grid;
    grid-template-columns: repeat(var(--sp-columns, 5), minmax(0, 1fr));
    gap: var(--space-5);
}

.sp-section--grid .sp-marquee-item {
    width: 100%;
    max-width: none;
    padding: 0.85rem 0.75rem 0.95rem;
}

.sp-section--grid .sp-marquee-item__logo-wrap {
    aspect-ratio: 16 / 11;
    min-height: 130px;
    padding: 0.75rem;
}

.sp-section--grid .sp-marquee-item__logo {
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    filter: none;
}

.sp-section--grid .sp-marquee-item__badge {
    margin-bottom: 0.35rem;
    font-size: 0.75rem;
    padding: 0.25rem 0.85rem;
}

.sp-section--grid .sp-marquee-item__name {
    display: block;
    font-size: 0.875rem;
    margin-top: 0.4rem;
}

.success-partners-archive-page .empty-state {
    text-align: center;
    padding: var(--space-12) var(--space-4);
    color: var(--text-secondary);
}

.success-partners-archive-page .empty-state h3 {
    margin: 0 0 var(--space-3);
    color: var(--color-heading);
}

@media (max-width: 1200px) {
    .sp-section--grid .sp-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 992px) {
    .sp-section--grid .sp-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .sp-section--grid .sp-marquee-item__logo-wrap {
        min-height: 110px;
    }
}

@media (max-width: 640px) {
    .sp-section--grid .sp-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: var(--space-3);
    }

    .sp-section--archive {
        padding: var(--space-8) 0 var(--space-10);
    }

    .sp-section--grid .sp-marquee-item__logo-wrap {
        min-height: 96px;
        padding: 0.55rem;
    }
}
