body { margin: 0; padding: 0; width: 100%; height: 100vh; } .tiles { padding: 6vh 16vw; display: flex; flex-wrap: wrap; flex-direction: row; justify-content: center; position: relative; } .tile { margin: 15px; cursor: pointer; overflow: hidden; min-width: 120px; min-height: 120px; width: 18vw; height: 18vw; } .tile img { width: 100%; height: 100%; object-fit: cover; transition: transform 500ms ease; } .tile img:hover { transform: scale(1.1); } @media only screen and (max-width: 420px) { .tiles { padding: 6vh 4vw; } .tile { margin: 5px; width: 44vw; height: 44vw; } }