body {
    width: min(800px, 90%);
    margin: 0 auto;
}

@media (min-width: 640px) {
    body {
        background-color: #eaf6ff;
    }
}

h1 {
    font-size: 2rem;
}

@media (max-width: 499px) {
    h1 {
        font-size: 1.5rem;
    }
}

@media (min-width: 640px) {
    h1 {
        font-size: 2.5rem;
    }
}

#fixed-size-grid-items ul {
    list-style: none;
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
}

#fixed-size-grid-items li {
    margin: 10px;
}

#fixed-size-grid-items aside {
    width: 170px;
    font-size: 0.8rem;
}

#stretchable-grid-items ul {
    list-style: none;
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
    margin: 1rem -10px;
}

#stretchable-grid-items li {
    width: 100%;
    padding: 10px;
    box-sizing: border-box;
}

@media (min-width: 480px) {
    #stretchable-grid-items li {
        width: 50%;
    }
}

@media (min-width: 640px) {
    #stretchable-grid-items li {
        width: 25%;
    }
}

#stretchable-grid-items aside {
    margin: 10px;
}