body
{
	font-family: 'Open Sans', -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	margin: 0;
	color: #333333;
}

input
{
	font-family: 'Open Sans', -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

main
{
	display: flex;
	margin: 2em 0em 1em 0em;
	padding-left: 1em;
	padding-right: 1em;
}

header
{
	display: flex;
	align-items: center;
	justify-content: space-between;
	background-color: black;
}

footer
{
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 1em;
	background-color: black;
	color: #fafafa;
}

footer a
{
	color: #fafafa;
}

nav
{
	margin-right: 2em;
}

aside
{
	flex: 2;
}

section
{
	flex: 3;
}

a
{
	color: #333333;
}

a.silent
{
	text-decoration: none;
}

img
{
	width: 100%;
}

figure
{
	margin-left: 0;
	margin-right: 0;
}

figcaption
{
	display: flex;
	justify-content: center;
	font-size: 0.85em;
}

.menu-link
{
	margin-left: 1.5em;
	color: #fafafa;
	text-decoration: none;
	text-transform: uppercase;
}

.section-title
{
	margin-top: 1em;
	display: flex;
	justify-content: center;
}

.coin
{
	display: flex;
	flex-direction: column;
	align-items: center;
	box-shadow: 0 1px 3px #0000001f, 0 1px 2px #0000003d;
	margin: 1em;
	background-color: #ececec;
	padding: 1em;
	transition: all 0.3s cubic-bezier(.25,.8,.25,1);
}

.coin:hover
{
	background-color: #f7f7f7;
	box-shadow: 0 14px 28px #00000040, 0 10px 10px #00000038;
}

.coin-icon
{
	width: 80px;
	height: 80px;
	padding: 1em;
}

.coin-label
{
	text-decoration: none;
}

.tech
{
	display: flex;
	flex-direction: column;
	align-items: center;
	box-shadow: 0 1px 3px #0000001f, 0 1px 2px #0000003d;
	margin: 1em;
	background-color: #ececec;
	padding: 1em;
	transition: all 0.3s cubic-bezier(.25,.8,.25,1);
}

.tech:hover
{
	background-color: #f7f7f7;
	box-shadow: 0 14px 28px #00000040, 0 10px 10px #00000038;
}

.tech-icon
{
	width: 80px;
	height: 80px;
	padding: 1em;
}

.tech-label
{
	text-decoration: none;
}

.source-link
{
	color: #666666;
	font-size: 0.75em;
	font-style: italic;
}

.follow-link
{
	list-style: none;
	margin: 0.5em;
}

.follow-icon
{
	width: 1.2em;
	margin-right: 0.33em;
}

#brand
{
	margin-left: 1.5em;
	height: 4em;
	display: flex;
	align-items: center;
}

#brand-logo
{
	height: 2em;
	width: 2em;
	background-color: #fafafa;
	border-radius: 50%;
}

#brand-name
{
	margin-left: 0.5em;
	color: #fafafa;
	font-size: 1.5em;
	text-decoration: none;
	font-weight: normal;
}

#title
{
	font-size: 3em;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
}

#menu
{
	list-style: none;
	padding-left: 0px;
	display: flex;
}

#subscribe-block
{
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 3em;
	background: #ececec;
	border-top: 1px solid black;
}

#subscribe-message
{
	margin-top: 1em;
	color: #fafafa;
	text-decoration: none;
	font-weight: normal;
}

#follow-message
{
	color: #fafafa;
	text-decoration: none;
	font-weight: normal;
}

#follow-links
{
	display: flex;
	padding-left: 0;
}

#subscribe-email
{
	padding: 4px;
	font-size: 1em;
	border: 1px solid black;
}

#subscribe-button
{
	padding: 4px;
	font-size: 1em;
	background-color: white;
	border: 1px solid black;
}

#coin-list
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

#tech-list
{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

#timeline-list > li
{
	margin-top: 0.25em;
}

#twitter
{
	display: flex;
	justify-content: center;
	margin-top: 3em;
	margin-bottom: 3em;
	font-size: 0.8em;
}

@media all and (max-width: 1399px)
{
	main
	{
		margin-top: 2em;
	}

	aside
	{
		flex: 1;
	}

	section
	{
		flex: 3;
	}
}

@media all and (max-width: 1023px)
{
	main
	{
		margin-top: 1em;
	}
}

@media all and (max-width: 767px)
{
	main
	{
		margin-top: 0em;
	}

	aside
	{
		flex: 0;
	}

	section
	{
		flex: 1;
	}

	#brand-name
	{
		display: none;
	}

	.menu-link
	{
		margin-left: 1em;
		color: #fafafa;
		text-decoration: none;
		text-transform: uppercase;
	}

	.coin
	{
		padding: 0;
	}

	.tech
	{
		padding: 0;
	}
}
