/* Partner Brands Block Styles */
.opsim-partner-brands-container {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    position: relative;
    max-width: 100vw;
    padding: 40px 0;
    box-sizing: border-box;
    
    /* Set partners variables to ensure same logo sizes and item heights as front page */
    --partners-height-desktop: 120px;
    --partners-height-mobile: 90px;
    --partners-logo-size-desktop: 90px;
    --partners-logo-size-mobile: 70px;
}

.opsim-partner-brands-container .partners-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    column-gap: 15px;
    row-gap: 20px; /* Slightly more vertical spacing on full page */
    align-items: center;
    justify-content: center;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
    box-sizing: border-box;
}

@media (max-width: 1023px) {
    .opsim-partner-brands-container .partners-grid {
        grid-template-columns: repeat(3, 1fr);
        column-gap: 10px;
        row-gap: 15px;
    }
}

@media (max-width: 767px) {
    .opsim-partner-brands-container .partners-grid {
        grid-template-columns: repeat(2, 1fr);
        column-gap: 8px;
        row-gap: 12px;
    }
}

.opsim-brands-placeholder {
    padding: 40px;
    text-align: center;
    background: var(--opsim-bg-secondary, #F9FAFB);
    border: 1px dashed var(--opsim-border, rgba(0,0,0,0.1));
    border-radius: var(--opsim-radius-md, 8px);
    color: var(--opsim-text-secondary, #4B5563);
    font-family: var(--opsim-font-primary, sans-serif);
    font-size: 1rem;
    max-width: 1400px;
    margin: 0 auto;
}
