#pk_flex_content .flex_layout.project_kaarten .flex_layout_wrapper{
    background-color: var(--white);
    padding-inline: 0;
    padding-block-end: 0rem;
}
.flex_layout.project_kaarten .section_heading{
    margin-inline: 3rem;
    grid-row: 1/2;
}

.flex_layout.project_kaarten .filter{
    position: sticky;
    top: 150px;
    z-index: 2;
    margin-right: 3rem;
    grid-row: 1/2;
    grid-column: 4/-1;
    margin-block: 2.5rem;

    display: flex;
    justify-content: end;
    align-items: center;
    gap: 1rem;
}

.flex_layout.project_kaarten .filter button{
    --border-color: var(--mahogany);
    --background: transparent;
    --color: var(--mahogany);

    padding: .75rem 1.5rem;
    border-radius: 3rem;
    background-color: var(--background);
    border: 1px solid var(--border-color);
    color: var(--color);
    line-height: 1.5;

    transition: background-color 300ms ease-in-out,
    color 300ms ease-in-out,
    border-color 300ms ease-in-out;

}

.flex_layout.project_kaarten .filter button.active,
.flex_layout.project_kaarten .filter button:is(:hover,:active,:focus) {
    --border-color: var(--chili);
    --background: var(--chili);
    --color: var(--white);
}

.flex_layout.project_kaarten .stacking_card:nth-child(3n+1){
    background-color: var(--white);
}
.flex_layout.project_kaarten .stacking_card:nth-child(3n+2){
    background-color: var(--ivory);
}
.flex_layout.project_kaarten .stacking_card:nth-child(3n+3){
    background-color: var(--sandstone);
}

/* .flex_layout.project_kaarten .stacking_card:nth-child(n+2){
    position: sticky;
    top: 0;
} */

.flex_layout.project_kaarten .card_container{
    grid-column: 1 / -1;

    display: grid;
    grid-template-columns: 1fr;
}
.flex_layout.project_kaarten .stacking_card{
    position: sticky; top: 80px;
    padding: 6rem;

    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem;
}

.flex_layout.project_kaarten .stacking_card h3{
    font-size: var(--heading-2);
    grid-column: 1/-1;
}

.flex_layout.project_kaarten .stacking_card .image{
    position: relative;
}

.flex_layout.project_kaarten .stacking_card .image .tag{
    position: absolute;
    z-index: 2;
    top: 1.5rem; left: 1.5rem;
}

.flex_layout.project_kaarten .stacking_card .image .swiper{
    width: 100%; height: 100%;
    min-width: 0;
    aspect-ratio: 648/417;
    border-radius: 1rem;
    overflow: clip;
}

.flex_layout.project_kaarten .stacking_card .image .swiper::before{
    content: '';
    position: absolute;
    inset: 0;
    background-image: linear-gradient(black, transparent);
    opacity: .2;
    z-index: 2;
    pointer-events: none;
}

.flex_layout.project_kaarten .stacking_card .swiper-pagination{
    position: static;
    margin-top: 1rem;
    width: 100%;
    left: 0; right: 0;
    display: flex;
    gap: .5rem;
}

.flex_layout.project_kaarten .stacking_card .swiper-pagination span{
    flex-grow: 1;
    border-radius: 0;
    background-color: var(--mahogany-translucent);
    height: 2px;
    transition: opacity 300ms ease-in-out;
}

.flex_layout.project_kaarten .stacking_card .image img{
    object-fit: cover;
    object-position: center;
    width: 100%; height: 100%;
}

.flex_layout.project_kaarten .stacking_card .content{
    place-self: center;
    padding: 2.5rem;
}

.flex_layout.project_kaarten .stacking_card .content a.pk_button{
    margin-top: 1rem;
}


@media only screen and (max-width: 1024px){
    .flex_layout.project_kaarten .section_heading{
        margin-inline: 1.25rem;
    }

    .flex_layout.project_kaarten .stacking_card{
        grid-template-columns: minmax(0,1fr);
        padding: 1.25rem;
        padding-block: 2rem;
        position: static;
    }

    .flex_layout.project_kaarten .stacking_card .content{
        padding: 1.5rem 0;
    }
}