#content {
    position: relative;
    padding: 40px;
    max-width: 1400px;
    margin: 0 auto;
}

#content .grid {
    position: relative;
    background: rgba(255, 255, 200, 0.5);
}

#content .item {
    position: relative;
    display: inline-block;
    background: rgba(200, 255, 255, 0.5);
    box-shadow: 0 0 0 3px #000;
}

#content .item .div {
    position: relative;
    overflow: hidden;
    background: #930;
}

#content .item img {
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;      
}

.grid {
    display:grid;
    gap:20px;
/*    max-width:1400px;
    margin:0 auto;*/
}

#content .item > div {
    padding-bottom:75%;
}

@media (max-width:800px) {
    .grid {
        grid-template-columns: 1fr;
    }
    
}

@media (min-width:800px) and (max-width:1400px) {
    .grid {
        grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    }
}

@media (min-width:1400px) {
    .grid {
        grid-template-columns: 1fr 1fr 1fr 1fr;
    }
    
}