/* CN1 — Chapter Network Foundation public partner rail.
   The chapter domain itself remains private/admin-only until a later public-network phase. */
.cn1-partners {
    padding-block: clamp(40px, 5vw, 72px);
}

.cn1-partners-shell {
    display: grid;
    grid-template-columns: minmax(0, .9fr) minmax(320px, 1.1fr);
    gap: clamp(28px, 5vw, 72px);
    align-items: center;
    padding: clamp(22px, 3vw, 36px);
    border: 1px solid rgba(95, 163, 158, .22);
    border-radius: 24px;
    background:
        linear-gradient(135deg, rgba(18, 54, 60, .58), rgba(6, 25, 28, .76)),
        radial-gradient(circle at 88% 20%, rgba(217, 160, 86, .08), transparent 42%);
}

.cn1-partners-copy h2 {
    max-width: 620px;
    margin: 10px 0 12px;
}

.cn1-partners-copy p {
    max-width: 660px;
    margin: 0;
    color: var(--muted, #a8bab6);
}

.cn1-partners-rail {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: stretch;
    gap: 14px;
}

.cn1-partner-logo {
    width: min(100%, 360px);
    min-height: 126px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 12px;
    padding: 22px 24px;
    border-radius: 18px;
    border: 1px solid rgba(241, 230, 212, .24);
    background: #fff;
    text-decoration: none;
    transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease;
}

.cn1-partner-logo img {
    display: block;
    width: auto;
    max-width: min(100%, 300px);
    max-height: 58px;
    object-fit: contain;
}

.cn1-partner-logo span {
    color: #397778;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
}

.cn1-partner-logo:hover,
.cn1-partner-logo:focus-visible {
    transform: translateY(-2px);
    border-color: rgba(217, 160, 86, .62);
    box-shadow: 0 18px 54px rgba(0, 0, 0, .18);
}

@media (max-width: 960px) {
    .cn1-partners-shell {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 430px) {
    .cn1-partners {
        padding-block: 42px;
    }

    .cn1-partners-shell {
        padding: 18px;
        border-radius: 20px;
    }

    .cn1-partner-logo {
        min-height: 108px;
        padding: 18px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .cn1-partner-logo {
        transition: none;
    }
}
