body {
	background-color: #001931;
	line-height: 140%;
	padding: 0;
	margin: 0;
	font-family: verdana;
}

h1 {
	text-align: center;
	line-height: 140%
}

sup {
	font-size: 0.6em;
}

hr {
	border: none;
	border-top: 2px dotted #0067c6;
	color: #0067c6; /*needed for ::after below*/
	overflow: visible;
	text-align: center;
	height: 0;
	margin: 3em 0;
}

hr::after {
	background: #c0d9f1; /*needs to match background of parent element*/
	content: "L . I .";
	font-style: italic;
	font-weight: bold;
	font-family: serif;
	padding: 0 0.25em;
	position: relative;
	top: calc(2px - 1em); /*border thickness minus font size*/
}

a, a:link {
	text-decoration: none;
	color: #0067c6;
}

a:hover, a:active {
	text-decoration: underline;
	color: #c60067;
}

a:visited {
	color: #6700c6;
}

.links-head {
	text-align: center;
	list-style-type: none;
	padding: 0.5em 0;
	margin: 0;
}

.links-head li {
	display: inline-block;
	padding: 0.5em 0;
}
.links-head a li:hover {
	text-decoration: underline;
}

.links-head li:before {
	content: "[ ";
}

.links-head li:after {
	content: " ]";
}

.links-contents li {
	list-style-type: none;
	margin: 0.25em 0;
}

.links-icons {	
	width: 88px;
	margin: 0 0 0 calc(50% - 44px);
	padding: 0 0 0.5em 0;
}

.links-icons li {
	list-style-type: none;
	margin-bottom: 0.5em;
}

.links-icons img {
	width: 88px;
	height: 31px;
	display: block;
}

.links-icons a:hover {
	filter: brightness(120%);
}

.pixel-art {
	image-rendering: crisp-edges; /*pixel art*/
}

#avatar {
	border: #c60067 1px solid;
	border-radius: 1em;
	width: 40%;
	margin: 0 0.5em 0 0;
	float: left;
}

#left {
	width: 17.5em; /*280px @ default 16px*/
	left: 1em;
	position: absolute;
	display: inline-block;
}	

#right {
	width: 17.5em;
	right: 1em;
	position: absolute;
	display: inline-block;
}

#left h1, #right h1 {
	font-size: 1.25em;
}

#left p, #right p, #left li, #right li {
	font-size: 0.75rem;
}

#middle {
	width: calc(100% - 39em);
	margin-left: 19.5em;
	position: absolute;
	display: inline-block;
}

.box {
	margin-bottom: 1em;
	padding: 0 1em;
	background-color: #c0d9f1;
	border: 1px solid #0067c6;
	border-radius: 1.5em;
}

.box img {
	max-width: 100%;
	height: auto;
}

#header {
	margin-bottom: 1em;
	padding: 0.5em 1em 0;
	background-color: #c0d9f1;
	border-color: #0067c6;
	border-style: solid;
	border-width: 0 1px 1px;
	border-radius: 0 0 1.5em 1.5em;
}

@media(max-width: 79em) { /*1264px @ 16px font*/
	.box {
		position: relative;
		margin: 1em 0;
	}
	
	#left {
		left: 0;
	}

	#left, #middle {
		width: 90%;
		margin: 0 5%;
		position: relative;
	}
	
	#right {
		right: 0;
		width: 100%;
		margin: 0;
		position: relative;
	}

	#right .box {
		margin-bottom: 0;
		padding: 0.5em 1em 0;
		border-width: 1px 1px 0;
		border-radius: 1.5em 1.5em 0 0;
	}

	#avatar {
		max-width: calc(5.4rem - 3px);
	}
	.links-icons {
		text-align: center;
		list-style-type: none;
		padding: 0;
		margin: 0;
		width: 100%;
		font-size: 0;
	}
	
	.links-icons li {
		display: inline-block;
		padding: 0;
		margin: 0.5em 0.25em;
		line-height: 100%;
	}
	
	.links-icons a {
		background-color: #ff0000;
		line-height: 100%;
	}
}

@media(max-width: 450px), (max-width: 39em) {
	
	#left, #middle {
		width: 100%;
		margin: 0;
	}
	
	.links-contents li {
		margin: 1.25em 0;
	}
}