/* RESET */

html, body, div, span, h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dt, dd, img, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, a, article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    margin: 0;
    padding: 0;
    border: 0;
}
 
* {
    box-sizing: border-box;
}


/* LAYOUT */

nav, main, aside, footer {
    padding: 1em;
}

figure {
    margin-bottom: 1em;
}


/* TYPOGRAPHY */

body {
    font-family: Merriweather, serif;
    color: #444;
    line-height: 1.5;
}

h1, h2, h3, nav, footer, figcaption {
    font-family: Oswald, "Helvetica Neue", sans-serif;
    text-transform: uppercase;
    font-weight: bold;
}

h1 {
    font-size: 4rem;
    text-align: center;
}

h2 {
    font-size: 1.5rem;
    margin-bottom: 1em;
}

nav {
    font-size: 1.25rem;
}

p {
    margin-bottom: 1.5em;
}

aside {
    text-align: center;
}


/* COLOUR SCHEME & BORDERS */

header, footer {
    background-color: #1f1712;
    color: #b0ab9b;
}

nav, aside {
    background-color: #c4c4c4;
}

nav a {
    color: #1f1712;
}

footer a {
    color: #b0ab9b;
}

.selected, a:hover {
    color: #f00;
}


/* NAVIGATION */

nav ul, footer ul {
    list-style-type: none;
}

nav li {
    padding: 0.5em 2em 0.5em 0;
}

footer li {
    margin: 0 1em;
}

nav a, footer a {
    text-decoration: none;
}


/* RESPONSIVENESS */

img {
    width: 100%;
}
@media screen and (min-width: 62em) {
	body{
	display:grid;
	gird-template-columns: 1fr 20rem 40rem 1fr;
	grid-template-areas: ". header header ."
				". nav aside ."
				". nav main ."
				". footer footer .";
	}
header{
	grid-area: header;
}
nav{
	grid-area:nav;
}
main{
	grid-area:main;
}
aside{
	grid-area: aside;
}
footer{
	grid-area: footer;
}
aside{
	display: flex;
	gap: 2rem;
}
aside > div{
	flex-basis: 0;
	flex-grow: 1;
}
}

@media screen and (min-width: 82em) {
	body{
		grid-template-columns: 1fr 20rem 40rem 20rem 1fr;
		grid-template-areas: ". header header header ."
				". nav main aside ."
				". footer footer footer .";
	}
	aside{
		flex-direction: column;
	}

}
