.brands-hero {
    position: relative;
}

.brands-hero-media img {
    width: 100%;
    display: block;
}

.brands-section {
    padding: 2rem 0 4rem;
    background: #fff;
}

.brands-list {
    width: min(100%, 860px);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.25rem;
}

.brand-card {
    position: relative;
    display: block;
    text-decoration: none;
    border-radius: 22px;
    overflow: hidden;
    transition: transform 0.25s ease, box-shadow 0.25s ease;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.brand-card img {
    width: 100%;
    display: block;
}

.brand-card-cta {
    position: absolute;
    left: 50%;
    bottom: 6.5%;
    width: 68%;
    transform: translateX(-50%);
    z-index: 1;
}

.brand-card-cta img {
    width: 100%;
    display: block;
}

.brand-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 36px rgba(0, 0, 0, 0.14);
}

@media (min-width: 768px) {
    .brands-section {
        padding: 3rem 0 5rem;
    }

    .brands-list {
        grid-template-columns: repeat(2, minmax(280px, 1fr));
        gap: 2rem;
    }
}
