body {
    padding: 0 10px;
}

.two-col {
    display: flex;
    flex-direction: row;
    gap: 2rem;
}

.two-col > * {
    flex: 1;
}

.grid-3x3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    justify-items: center;
}

@media screen and (max-width: 1100px) {
    .two-col {
        flex-direction: column;
    }

    .grid-3x3 {
        grid-template-columns: 1fr;
    }
}

/* larger than mobile */
@media screen and (min-width: 500px) {
    body {
        padding: 0 30px;
    }
}

/* on mobile */
@media screen and (max-width: 500px) {
    body {
        max-width: 100vw;
    }
}
