.media-block {
    display: flex;
    flex-direction: column;
    grid-column: 1/-1;
    width: 100%;
    height: 100%;
    padding-bottom: 1rem;
}

.media-block img {
    margin-bottom: .5rem;
}

.media-block figcaption {
    margin-top: auto;
}

.media-block.media-quarter {
    grid-column: span 2;
}
@media only screen and (min-width: 768px) {
    .media-block.media-half {
        grid-column: span 2;
    }

    .media-block.media-quarter {
        grid-column: span 1;
    }
}
@media only screen and (min-width: 1024px) {
    .media-block.media-half {
        grid-column: span 6;
    }

    .media-block.media-quarter {
        grid-column: span 3;
    }

    .media-block.media-comm.media-half {
        grid-column: span 3;
    }
}