Good work Charissa,
"It took me longer than I thought."
That happen to me too, a much longer on my first solution. On second one, things got easier/faster.
To my beginner eye your code looks great, well organized, easy to read effective code.
Few minor things got my attention,
In style.css; line 25, do you need 'border: none;' declaration?
I would consider pseudo classes first- and last-of-type to cards border radius declarations, so you can stack more cards later if you need to. And I think code is a little bit more readable this way.
'''
.card:first-of-type {
border-radius: 1rem 0 0 1rem;
}
.card:last-of-type {
border-radius: 0 1rem 1rem 0;
}
'''
I would make sure that the layout looks good in middle screen sizes, like tablets.
Now on 768PX view-port "Learn more" buttons come out of their containers. It might help to just set break-point 768 PX and then make sure that the mobile layout looks good until break-point.
Like mentioned before, good work, in any case, and especially for the first solution.
Best wishes Janne