.cotive-masonry {
    margin: 0 auto;
}

/* Clearfix voor de pre-JS fallback (Masonry positioneert items daarna absoluut). */
.cotive-masonry::after {
    content: "";
    display: block;
    clear: both;
}

.cotive-masonry__sizer,
.cotive-masonry__item {
    width: calc(100% / var(--cm-cols, 4));
}

.cotive-masonry__sizer {
    height: 0;
}

.cotive-masonry__item {
    float: left;
    padding: calc(var(--cm-gap, 10px) / 2);
    box-sizing: border-box;
}

.cotive-masonry__item.is-wide {
    width: calc(200% / var(--cm-cols, 4));
}

.cotive-masonry__link,
.cotive-masonry__img {
    display: block;
    width: 100%;
    height: auto;
}

@media (max-width: 1024px) {
    .cotive-masonry__sizer,
    .cotive-masonry__item {
        width: calc(100% / var(--cm-tablet, 3));
    }

    .cotive-masonry__item.is-wide {
        width: calc(200% / var(--cm-tablet, 3));
    }
}

@media (max-width: 767px) {
    .cotive-masonry__sizer,
    .cotive-masonry__item,
    .cotive-masonry__item.is-wide {
        width: calc(100% / var(--cm-mobile, 1));
    }
}
