

.offer{
    grid-template-columns: 1fr;
    grid-auto-rows: 1fr;
    gap: 10px;
    padding: 10px 0px;
}

.offer img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.offer h2{
    position: absolute;
    text-shadow: 3px 3px black;
    bottom: 20px;
    left: 50px;
}

.offer > a{
    overflow:hidden;
    position: relative;
    height: 100%;
}




@media screen and (min-width: 600px) and (max-width:1100px){
    .offer{
        grid-template-columns: 1fr 1fr;
    }
}


/*Desktop only*/
@media screen and (min-width: 1101px){
    .offer{
        grid-template-columns: repeat(4, 1fr);
    }

    .offer > a:first-child{
        grid-area: 1 / 1 / span 2 / span 2;
    }

    .offer > a:last-child{
        grid-area: 2 / 3 / span 1 / span 2;
    }

    .offer a:hover h2{
        opacity: 0;
    }
    
    .offer a:hover div{
        transition: 0.5s ease;
        opacity: 1;
        border: 2px solid white;
        box-shadow: 2px 2px 8px #252525;
        text-shadow: 2px 2px 8px #252525;
        font-size: 1.75em;
    }
    
    .offer a:hover img{
        transition: 0.5s ease;
        opacity: .8;
    }

    .offer div{
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        margin: auto;
        opacity: 0; 
    }
}