body {
    display: grid;
    margin: 50px;
    /* A 2x2 grid: */
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 3rem 1fr;
    grid-auto-flow: column;
    /* Center the grid: */
    justify-content: center;
    align-items: center;
    column-gap: 30px;
}

.title {
    font-size: larger;
    font-weight: bold;
    text-align: center;
}

.map {
    min-height: 800px;
    border: 1px solid black;
}

/* For mobile, use one column: */
@media (max-width: 900px) {
    body {
        grid-template-columns: 1fr;
        grid-template-rows: 3rem 1fr 3rem 1fr;
        margin: 10px;
        margin-right: 25px;
    }

    .map {
        min-height: 80dvh;
    }
}
