/* Prevent image stretching as it's resized */ .card-img-top { object-fit: cover; } /* Make all cards in row the same height */ .row { display: flex; flex-wrap: wrap; } .row > div[class*='col-'] { display: flex; } /* Hover effects */ .card { transition: -webkit-transform 0.3s ease; } .card:hover { transform: scale(1.01, 1.01); } /* Responsive design for image heights */ @media (min-width: 576px) { .card-img-top { height: 50vw; } } @media (min-width: 768px) { .card-img-top { height: 30vw; } } @media (min-width: 992px) { .card-img-top { height: 20vw; } } @media (min-width: 1200px) { .card-img-top { height: 20vw; } }