.events { display: grid; width: 60%; grid-auto-rows: 14vw; grid-template-columns: repeat(auto-fit, 14vw); grid-gap: 1em; margin-left: auto; margin-right: 0; background-color: #ccc; } .event { position: relative; background-color: #fff; display: flex; align-items: center; justify-content: center; } .event img { position: absolute; object-position: center; object-fit: cover; height: 100%; width: 100%; transition: 0.5s; } .event:hover img { filter: grayscale(0.8) brightness(0.4); } .event p { z-index: 1; opacity: 0; font-weight: bold; color: white; transition: 0.5s; } .event:hover p { opacity: 1; }