/* The cards keep their reading order when a page ends with a partial row. */
@media (min-width: 921px) {
    #catalog .cards { grid-template-columns: repeat(6, minmax(0, 1fr)); }
    #catalog .cards > .story { grid-column: span 2; }

    /* Finish with a pair, or two pairs when one card would be left alone. */
    #catalog .story:nth-child(3n + 1):nth-last-child(2),
    #catalog .story:nth-child(3n + 1):nth-last-child(2) ~ .story,
    #catalog .story:nth-child(3n + 1):nth-last-child(4),
    #catalog .story:nth-child(3n + 1):nth-last-child(4) ~ .story { grid-column: span 3; }
}
@media (min-width: 600px) and (max-width: 920px) {
    #catalog .cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    #catalog .story:last-child:nth-child(odd) {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 18px;
        align-items: center;
    }
}
@media (min-width: 921px) {
    #catalog .cards > .story:only-child {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: 1fr 2fr;
        gap: 18px;
        align-items: center;
    }
}
@media (max-width: 599px) {
    #catalog .cards { grid-template-columns: minmax(0, 1fr); }
}
#catalog .cards > p { grid-column: 1 / -1; }
