main {
    display: flex;
    flex-direction: column;
}

main section {
    display: grid;
    grid-template-columns: 1fr;
    gap: 2rem;

}

@media (min-width: 481px) {

    /* tablette et plus */

}

@media (min-width: 800px) {

    /* tablette et plus */
    main section {
        grid-template-columns: 1fr 1fr;
    }

}

@media (min-width: 1280px) {
    /* desktop */

    /* Hide "menu button" on large screen by default */
    main section {
        grid-template-columns: 1fr 1fr 1fr;
    }
}