/* Grid Container to allow centering of incomplete rows */
.ccl-profiles-grid {
    justify-content: left;
    column-gap: 30px!important;
}


/* 3 Column Layout Override */
.ccl-profiles-grid.ccl-grid-3-col .ccl-profile-card,
.ccl-profiles-grid.ccl-grid-3-col div {
    flex-basis: calc(33.33% - 20px) !important;
    max-width: calc(33.33% - 20px) !important;
}


@media screen and (max-width: 781px) {

    .ccl-profiles-grid.ccl-grid-3-col .ccl-profile-card,
    .ccl-profiles-grid.ccl-grid-3-col div {
        flex-basis: 100% !important;
        max-width: 100% !important;
    }
}



.ccl-profiles-grid.ccl-grid-5-col .ccl-profile-card,
.ccl-profiles-grid.ccl-grid-5-col div {
    flex-basis: calc(20% - 24px) !important;
    max-width: calc(20% - 24px) !important;
}


@media screen and (max-width: 781px) {
    .ccl-profiles-grid.ccl-grid-5-col .ccl-profile-card,
    .ccl-profiles-grid.ccl-grid-5-col div{
        flex-basis: 100% !important;
        max-width: 100% !important;
    }
}



.is-content-justification-center {
    justify-content: center;
}

/* Ensure columns do not stretch and always respect a 4-column layout */
.ccl-profiles-grid .ccl-profile-card {
    flex-grow: 0 !important;
    flex-basis: calc(25% - 22.5px) !important;
    /* 25% minus the gap (30px total gap distributed) */
    max-width: calc(25% - 22.5px) !important;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

/* Mobile adjustments */
@media screen and (max-width: 781px) {
    .ccl-profiles-grid .ccl-profile-card {
        flex-basis: 100% !important;
        max-width: 100% !important;
    }
}

.ccl-profile-card {
    text-align: center;
    background: transparent;
    padding: 0;
    transition: transform 0.3s ease;
}

.ccl-profile-card:hover {
    transform: translateY(-5px);
}

.ccl-profile-img img {
    width: 100%;
    max-height: 360px;
    max-width: 360px;
    border-radius: 30px;
    margin-bottom: 20px;
    object-fit: cover;
    aspect-ratio: 1/1;
    transition-duration: 0.3s;
}

.ccl-profile-card h3 {
    margin: 0 0 5px 0;
    text-transform: uppercase;
    font-size: 16px;
    font-weight: 500;
}

.ccl-profile-role {
    font-size: 12px;
    font-weight: 600;
    margin: 0 !important;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    color: var(--color-primary) !important;
}
