footer {
    padding: 12rem 1rem 1rem;
    row-gap: 2rem;
}

#footer-contact {grid-column: 1/2;}
#footer-pages {grid-column: 2/-1;}
#footer-design {grid-column: 1/-1;}
#footer-copy {grid-column: 1/-1;}

@media only screen and (min-width: 768px) {
    footer {row-gap: 2px;}
    #footer-contact li:not(:last-of-type) {margin-right: 1rem;}
    
    #footer-contact {grid-column: 1/3; grid-row: 1;}
    #footer-pages {grid-column: 3/-1; grid-row: 1;}
    #footer-design {grid-column: 1/3; grid-row: 2;}
    #footer-copy {grid-column: 1/-1; grid-row: 3; margin-top: 1rem;}
}

@media only screen and (min-width: 1024px) {
    #footer-contact {grid-column: 1/4; align-self: flex-end;}
    #footer-pages {grid-column: -2/-1; align-self: flex-end; justify-items: end;}
    #footer-design {grid-column: -4/-2; grid-row: 1; align-self: flex-end;}
    #footer-copy {
        grid-column: 4/-4;
        grid-row: 1;
        margin-top: 0;
    }
}

@media (hover: hover) {
    footer a:hover {text-decoration: underline;}
}