.team_members {
    background: var(--alt-grey);
    overflow: visible;

    & h3, & h2 {
        margin: 0 0 44px;
        text-align: center;
        font-weight: 300;
        font-size: 40px;
        color: var(--black);
    }

    & .team_members_slider_wrapper {
        position: relative;
    }

    & .team_members_slider {
        margin: 0 -14px;
    }

    & .team_members_slider .slick-slide {
        padding: 0 14px;
        height: auto;
    }

    & .slick-track {
        margin-bottom: 2rem;
    }

    & .team_member_card {
        background: var(--white);
        border-radius: 18px;
        overflow: hidden;
        box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
        display: grid;
        grid-template-columns: 1fr auto;
        height: 100%;

        &:hover,
        &:focus-within {
            border-color: var(--red);
        }
    }

    & .team_member_image {
        grid-column: 1 / -1;
        background: #dcdcdc;
        & img {
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }
    }

    & .team_member_body {
        padding: 18px;
        min-height: 87px;
        align-self: center;
    }

    & .team_member_name {
        margin: 0 0 4px;
        font-size: 20px;
        line-height: 112%;
        color: #210300;
        font-weight: 500;
    }

    & .team_member_role {
        margin: 0;
        font-size: 11px;
        letter-spacing: 1px;
        text-transform: uppercase;
        color: var(--red);
    }

    & .team_member_link {
        align-self: center;
        padding-right: 18px;
        display: inline-flex;
        align-items: center;
        justify-content: center;

        & svg {
            transition: transform 0.2s ease;
        }
    }

    & .team_member_card:hover .team_member_link svg,
    & .team_member_card:focus-within .team_member_link svg {
        transform: rotate(45deg);
    }

}

@media (max-width: 991px) {
    .team_members {
        padding: 64px 0;

        & h2 {
            font-size: 40px !important;
            margin-bottom: 36px;
        }

    }
}

@media (max-width: 640px) {
    .team_members {
        padding: 56px 0;

        & h2 {
            font-size: 30px;
            margin-bottom: 28px;
        }

        & .team_member_body {
            padding: 16px;
        }
    }
}
