/* CSS Reset */
body, header, nav, main, footer, h1, div, img, ul, figure, figcaption, section, article, aside {
margin: 0;
padding: 0;
border: 0;
}
/* Style rules for body and images */
body {
background-color: #000;
}
img {
max-width: 100%;
display: block;
}
/* Style rule for box sizing applies to all elements */
* {
box-sizing: border-box;
}
/* Style rules for mobile viewport */
/* Style rule for header */
header {
top: 0;
background-color: #000;
height: 190px;
}
header img {
margin: 0 auto;
}
/* Style rules for navigation area */
nav {
padding: 1%;
margin-bottom: 1%;
}
nav ul {
list-style-type: none;
text-align: center;
}
nav li {
font-size: 1.5em;
font-family: 'Francois One', sans-serif;
border-top: 1px solid #fff;
}
nav li:first-child {
border-top: none;
}
nav li a {
display: block;
color: #fff;
padding: 0.5em 1em;
text-decoration: none;
}
/* Show mobile class, hide tablet-desktop class */
.mobile {
display: block;
}
.tablet-desktop {
display: none;
}
/* Style rules for main content */
main {
background-color: #fff;
padding: 2%;
font-size: 1.15em;
font-family: 'Roboto Slab', serif;
}
.mobile h3 {
text-shadow: 5px 5px 8px #ccc;
}
article {
padding: 2%;
}
article h3 {
text-align: center;
}
article img {
margin: 0 auto;
}
article ul {
margin-left: 10%;
}
article:nth-of-type(2) {
background-color: rgba(204, 204, 204, 0.3);
}
.round {
border-radius: 8px;
}
/* Style rules for footer content */
footer p {
font-size: 0.75em;
text-align: center;
color: #fff;
padding: 0 1em;
}
/* Media Query for Tablet Viewport */
@media screen and (min-width: 630px), print {
/* Tablet Viewport: Show tablet-desktop class, hide mobile class */
.tablet-desktop {
display: block;
}
.mobile {
display: none;
}
/* Tablet Viewport: Style rule for header */
header {
padding-bottom: 2%;
}
/* Tablet Viewport: Style rules for nav area */
nav li {
border-top: none;
display: inline-block;
border-right: 1px solid #fff;
}
nav li:last-child {
border-right: none;
}
nav li a {
padding: 0.1em 0.75em;
}
/* Tablet Viewport: Style rules for main content area */
main ul {
margin: 0 0 4% 10%;
}
.grid {
display: grid;
grid-template-columns: auto auto auto;
grid-gap: 20px;
}
aside {
text-align: center;
font-size: 1.25em;
font-style: italic;
font-weight: bold;
padding: 2%;
background-color: rgba(204, 204, 204, 0.5);
box-shadow: 5px 5px 8px #000;
text-shadow: 5px 5px 5px #b3b3b3;
border-radius: 0 15px;
}
.grid-item4 {
grid-column: 1 / span 3;
}

}
/* Media Query for Desktop Viewport */
@media screen and (min-width: 1015px), print {
/* Desktop Viewport: Style rule for header */
header {
width: 25%;
float: left;
padding-bottom: 0;
}
/* Desktop Viewport: Style rules for nav area */
nav {
float: right;
width: 70%;
margin: 4em 1em 0 0;
}
nav ul {
text-align: right;
}
nav li {
border: none;
}
nav li a {
padding: 0.5em 1em;
}
nav li a:hover {
color: #000;
background-color: #fff;
}
/* Desktop Viewport: Style Rules for main content */
main {
clear: left;
}
main h1 {
font-size: 1.8em;
}
article h3 {
font-size: 1.75em;
}

}
/* Media Query for Large Desktop Viewports */
@media screen and (min-width: 1921px) {
#container {
width: 1920px;
margin: 0 auto;
}
}
/* Media Query for Print */
@media print {
body {
background-color: #fff;
color: #000;
}

}