auto-fit
is definitely the way to go for those gutters, but it'll still leave you with gaps if the card content varies too much. i used to struggle with that same
messy feeling until i started using
grid-template-rows: masonry
in my experimental builds. are you planning on using a specific minmax value for the card widths?