/* custom property */
:root {
	--accent-color: #800000;  /* could also be coded #800 */
	--gradient-color: #f6bb73;
}

/* reset */
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

/* default styles */
body {
	font-family: Arial, Helvetica, sans-serif;
    font-size: calc(90% + 0.2vw);
	line-height: 1.5;
	width: 80%;
	max-width: 1024px;
	margin: auto;
	border: 2px solid var(--accent-color);
}
a:hover, a:focus{
	font-style: italic;
	color: var(--accent-color);
}
h1, h2, h3, p, ul {
	padding: .25em 0;
}
h1 {
	font-size: 150%;
}
h2 {
	font-size: 130%;
	color: var(--accent-color);
}
h3 {
	font-size: 105%;
}
ul {
	margin-left: 2em;
}

/* the styles for the header */
header {
	border-bottom: 2px solid var(--accent-color);
	line-height: 1.2;
	background-image: linear-gradient(30deg, var(--gradient-color) 0%, white 30%, white 65%, var(--gradient-color) 100%);
	& h2 {
		font-size: 175%;
		padding: .5em 0 0 0;
	}
	& h3 {
		font-size: 130%;
		font-style: italic;
		padding-bottom: 1em;
	}
	& img {
		float: left;
		margin: .75em 1em;
		min-width: 40px;
		max-width: 80px;
	}
}

/* the styles for the main content */
main {
	padding: 0 1em 1em;
	display: flex;
	
	& blockquote {
		font-style: italic;
		padding-left: 1em;
	}
}

/* the styles for the footer */
footer {
	background-color: var(--accent-color);
	& p {
		text-align: center;
		color: white;
		padding: 1em 0;
	}
}

/* CSS class */
.large {
	font-size: 125%;
}

section {
    flex-basis: 75%;
    order: 2;
	padding-right: 12;
	padding-left: 12;
	padding-bottom: 20px;
	& img {
		float: right;
		margin: .5em 0 1em 1em;
		min-width: 100px;
		max-width: 250px;
	}
}
aside {
    flex-basis: 25%;
	& img {
		min-width: 40px;
		max-width: 75px;
	}
}
article {
	border-top: 2px solid var(--accent-color);
	border-bottom: 2px solid var(--accent-color);
	flex-basis: 25%;
	padding-right: .5em;
}