body {
    margin-left: auto; 
    margin-right: auto;
    width: 90%;
    max-width: 800px; 
}

@media (max-width: 500px) {
    h1 {
        font-size: 1.5rem;
    }
}

@media (min-width: 640px) {
    html {
        background-color: #eaf6ff;
    }

    h1 {
        font-size: 2.5rem;
    }
}

ul {
    padding: 0;
    list-style-type: none;
    display: flex;
    flex-wrap: wrap;
}

aside {
    margin: 10px;
    font-size: 0.8rem;
}

#fixed-size-grid-items aside {
    width: 170px;
}

#stretchable-grid-items ul {
    margin: 1rem -10px;
}

#stretchable-grid-items li {
    width: 100%;
}

@media (min-width: 480px) {
    #stretchable-grid-items li {
        width: 50%;
    }
}

@media (min-width: 640px) {
    #stretchable-grid-items li {
        width: 25%;
    }
}