/* ==========================================================
   KOKO Enterprise
   Portfolio
   ========================================================== */

/*--------------------------------------------------------------
# Portfolio Section
--------------------------------------------------------------*/

.brands-section{

    padding:140px 0;

}

/*--------------------------------------------------------------
# Portfolio Grid
--------------------------------------------------------------*/

.brands-grid{

    display:grid;

    grid-template-columns:repeat(auto-fit,minmax(340px,1fr));

    gap:3rem;

    align-items:stretch;

}

/*--------------------------------------------------------------
# Brand Card
--------------------------------------------------------------*/

.brand-card{

    display:flex;

    flex-direction:column;

    height:100%;

    background:#ffffff;

    border:1px solid var(--color-border);

    border-radius:18px;

    overflow:hidden;

    transition:
        transform .35s ease,
        box-shadow .35s ease,
        border-color .35s ease;

}

/*--------------------------------------------------------------
# Hover
--------------------------------------------------------------*/

.brand-card:hover{

    transform:translateY(-6px);

    border-color:rgba(0,0,0,.08);

    box-shadow:
        0 20px 50px rgba(0,0,0,.08);

}

/*--------------------------------------------------------------
# Link
--------------------------------------------------------------*/

.brand-link{

    display:flex;

    flex-direction:column;

    flex:1;

    color:inherit;

    text-decoration:none;

}

/*--------------------------------------------------------------
# Image
--------------------------------------------------------------*/

.brand-image{

    position:relative;

    overflow:hidden;

    aspect-ratio:16/10;

    background:#f7f7f7;

}

.brand-image img{

    display:block;

    width:100%;

    height:100%;

    object-fit:cover;

    transition:
        transform .8s ease;

}

.brand-card:hover .brand-image img{

    transform:scale(1.04);

}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/

.brand-content{

    display:flex;

    flex-direction:column;

    flex:1;

    padding:2.25rem;

}

/*--------------------------------------------------------------
# Title
--------------------------------------------------------------*/

.brand-title{

    margin:0 0 1rem;

    font-family:var(--font-heading);

    font-size:1.6rem;

    font-weight:600;

    line-height:1.3;

    color:var(--color-primary);

}

/*--------------------------------------------------------------
# Excerpt
--------------------------------------------------------------*/

.brand-excerpt{

    flex:1;

    margin:0;

    color:var(--color-text-light);

    line-height:1.85;

}

/*--------------------------------------------------------------
# Read More
--------------------------------------------------------------*/

.brand-more{

    display:inline-flex;

    align-items:center;

    gap:.6rem;

    margin-top:2rem;

    color:var(--color-accent);

    font-weight:600;

    transition:
        gap .3s ease,
        color .3s ease;

}

.brand-card:hover .brand-more{

    gap:1rem;

}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/

.brand-link:focus-visible{

    outline:2px solid var(--color-accent);

    outline-offset:5px;

    border-radius:6px;

}

/*--------------------------------------------------------------
# Responsive
--------------------------------------------------------------*/

@media (max-width:992px){

    .brands-section{

        padding:110px 0;

    }

}

@media (max-width:768px){

    .brands-grid{

        grid-template-columns:1fr;

        gap:2rem;

    }

    .brand-content{

        padding:2rem;

    }

}

@media (max-width:576px){

    .brands-section{

        padding:80px 0;

    }

    .brand-title{

        font-size:1.4rem;

    }

}