/* ── Співпраця ──────────────────────────────────────────────────────────── */
.partner { padding-top: var(--space-7); }

.partner__list { border-bottom: 1px solid var(--color-border-strong); }

.partner-row {
    display: grid;
    grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
    gap: var(--space-9);
    align-items: start;
    padding: var(--space-7) 0;
    border-top: 1px solid var(--color-border-strong);
}

.partner-row__head { display: flex; align-items: flex-start; gap: var(--space-5); }

.partner-row__num {
    flex-shrink: 0;
    min-width: 2ch;
    font-variant-numeric: tabular-nums;
    font-size: var(--fs-sm);
    font-weight: var(--fw-medium);
    letter-spacing: var(--ls-caps);
    line-height: 2.2;
    color: var(--color-accent-soft);
}

.partner-row__title {
    font-size: var(--fs-h3);
    font-weight: var(--fw-regular);
    line-height: 1.25;
    letter-spacing: var(--ls-heading);
    color: var(--color-heading);
    text-wrap: balance;
}

.partner-row__text { font-size: var(--fs-lg); line-height: 1.6; }

/* ── Звернення ──────────────────────────────────────────────────────────── */
.partner-cta__inner {
    display: grid;
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
    gap: var(--space-9);
    align-items: center;
}

.partner-cta__body { display: grid; justify-items: start; gap: var(--space-5); }
.partner-cta__text { max-width: 58ch; font-size: var(--fs-lg); }

.partner-cta__contacts { padding: var(--space-7); background: var(--color-bg); border-radius: var(--radius); }

/* ── Клієнти ────────────────────────────────────────────────────────────── */
.clients__grid {
    display: grid;
    grid-template-columns: repeat(8, minmax(0, 1fr));
    gap: var(--space-3);
}

.clients__item {
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 4 / 3;
    padding: var(--space-3);
    background: var(--color-bg);
    border: 1px solid var(--color-border);
    border-radius: var(--radius);
    transition: border-color var(--transition);
}
.clients__item:hover { border-color: var(--color-border-strong); }

.clients__logo {
    display: block;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    filter: grayscale(1);
    opacity: .75;
    transition: filter var(--transition), opacity var(--transition);
}
.clients__item:hover .clients__logo { filter: none; opacity: 1; }

/* ── Адаптив ────────────────────────────────────────────────────────────── */
@media (max-width: 1023px) {
    .partner-row { grid-template-columns: minmax(0, 1fr); gap: var(--space-4); }
    .partner-cta__inner { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); }
    .clients__grid { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}

@media (max-width: 767px) {
    .partner { padding-top: var(--space-5); }
    .partner-row { padding: var(--space-5) 0; }
    .partner-row__text { font-size: var(--fs-base); }
    .partner-cta__text { font-size: var(--fs-base); }
    .partner-cta__contacts { padding: var(--space-5); }
    .clients__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: var(--space-2); }
}

@media (max-width: 479px) {
    .clients__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
