.poseidon-brand-logos {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 40px 64px;
    padding: 40px 0;
    border-top: 1px solid var(--poseidon-border, rgba(0,0,0,.08));
    border-bottom: 1px solid var(--poseidon-border, rgba(0,0,0,.08));
}
.poseidon-brand-logos__item {
    display: inline-flex;    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: opacity .25s, filter .25s;
}
.poseidon-brand-logos__logo {
    max-width: 140px;
    height: auto;
    object-fit: contain;
}
.poseidon-brand-logos--grayscale .poseidon-brand-logos__logo {
    filter: grayscale(1);
    opacity: .65;
}
.poseidon-brand-logos--grayscale .poseidon-brand-logos__item:hover .poseidon-brand-logos__logo {
    filter: grayscale(0);
    opacity: 1;
}
.poseidon-brand-logos__name {
    font-size: 14px;
    font-weight: 500;
    color: var(--poseidon-text, #111);
    letter-spacing: .12em;
    text-transform: uppercase;
}

@media (max-width: 640px) {
    .poseidon-brand-logos { gap: 28px 36px; }
}

/* ── Editor ── */
.poseidon-brand-logos__preview {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 24px 40px;
    padding: 20px;
    border-radius: 12px;
    border: 1px dashed var(--poseidon-border, rgba(0,0,0,.12));
    background: var(--poseidon-bg, #f9fafb);
}
.poseidon-brand-logos__preview-item {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 80px;
    min-height: 48px;
}
.poseidon-brand-logos__preview-empty {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 18px;
    border-radius: 8px;
    border: 1px dashed #d1d5db;
    color: var(--poseidon-text-muted, #6b7280);
    font-size: 12px;
}
.poseidon-brand-logos__editor-item {
    padding: 12px;
    border: 1px solid #e5e7eb;
    border-radius: 8px;
    margin-bottom: 12px;
    background: #fafafa;
}
.poseidon-brand-logos--full {
    padding-left: clamp(24px, 5vw, 96px);
    padding-right: clamp(24px, 5vw, 96px);
}
.poseidon-brand-logos--wide {
    padding-left: clamp(24px, 4vw, 64px);
    padding-right: clamp(24px, 4vw, 64px);
}

/* ── Estado vacío (sin marcas cargadas) ── */
.poseidon-brand-logos--empty {
    justify-content: center;
    background: var(--poseidon-bg, #f9fafb);
}
.poseidon-brand-logos__empty-label {
    font-size: 13px;
    color: var(--poseidon-text-muted, #6b7280);
}
