div.collection_container { display: flex; flex-wrap: wrap; } div.collection { background-color: #1f1f1f; border: #444 2px solid; margin: 4px; } @media only screen and (min-width: 1000px) { div.collection { width: calc(33.3333% - 8px); } } @media only screen and (min-width: 600px) and (max-width: 999px) { div.collection { width: calc(50% - 8px); } } @media only screen and (max-width: 599px) { div.collection { width: calc(100% - 8px); } } div.collection h1 { margin: 10px; text-align: center; } div.collection div.col-desc { padding: 10px; font-family: sans-serif; /* FIXME: find suitable font */ text-align: justify; } section.cta h2 { color: #1f1f1f; } /* Slide in stuff */ .col-img-container { position: relative; } .col-image { display: block; width: 100%; height: auto; } .col-img-desc { position: absolute; bottom: 0; left: 0; right: 0; background-color: rgba(51, 51, 51, 0.4); overflow: hidden; width: 100%; height: 0; transition: .5s ease; } .col-img-container:hover .col-img-desc { height: 50%; } .col-img-desc div { color: white; font-size: 20px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); text-align: center; }