.grid {
    position: absolute;
    display: grid;
    gap: 3.5rem;
    grid-template-columns: repeat(4, 20rem);
    grid-template-rows: 18rem 18rem;
    justify-self: center;
    justify-content: center;
    margin-top: 5rem;
}

.grid-item {
    background-color: #a2cceb;
    padding: 1rem;
    border-radius: .4rem;
    box-shadow: 1rem 1rem 0rem #011622;
}

.grid-item:hover {
    transform: scale(1.01);
}

#div-content {
    height: 40rem;
    position: relative;
    background-color: #073a59;
    z-index: 2;
    padding-bottom: 10rem;
}

@media screen and (max-width: 1280px) {
    .grid {
        grid-template-columns: repeat(3, 20rem);
        grid-template-rows: repeat(3, 18rem);
        gap: 2.5rem;
    }

    #div-content {
        height: 64rem;
    }
}

@media screen and (max-width: 1024px) {
    .grid {
        grid-template-columns: repeat(2, 20rem);
        grid-template-rows: repeat(4, 18rem);
    }

    .grid-item {
        box-shadow: 0.6rem 0.6rem 0rem #011622;
    }

    #div-content {
        height: 84rem;
    }
}

@media screen and (max-width: 768px) {
    .grid {
        position: relative;
        grid-template-columns: minmax(0, 90%);
        grid-template-rows: auto;
        gap: 1.5rem;
        margin-top: 0rem;
        padding: 0 1rem;
    }

    .grid-item {
        min-height: 8rem;
        box-shadow: 0.45rem 0.45rem 0rem #011622;
    }

    #div-content {
        height: auto;
        min-height: 30rem;
        padding-bottom: 5rem;
    }
}

@media screen and (max-width: 480px) {
    .grid {
        margin-top: 0rem;
        gap: 1rem;
    }

    .grid-item {
        box-shadow: 0.3rem 0.3rem 0rem #011622;
    }

    #div-content {
        padding-bottom: 0rem;
    }
}
