body {
	background: #333333;
	font-size: 1.6em;
	font-family: sans-serif;
	margin: 0;
	padding: 0;
}

canvas#matrix {
	display: block;
	position: fixed;
	left: 0;
	top: 0;
	z-index: -1;
}

div.container {
	position: relative;
	max-width: 100rem;
	margin: 0 auto;
	min-height: 100vh;
	border-bottom: 1px solid black;
	}

header {
	min-height: 120px;
	padding: 0 80px;
	border-radius: 0 0 200px 200px;
	background: url('images/header_bg.gif') #050d1a;
	zbackground: #050d1a;
	color: #DDD;
	border: 2px solid #ffe08a;
	border-top: 0;
	ztext-align: right;	
	font-family: "Comic Sans MS", "Chalkboard SE", "Comic Neue", sans-serif; /* Yes, I actually do like Comic Sans. */
	ztext-shadow: 4px 4px #050d1a;
	zfont-family: Arial;
}

header h1 {
	margin: 8px 0 0 5px;
	padding: 0 0;
		
	float: right;
	font-size: 2.4em;
	font-weight: 900;
}

header ul {
	margin: 0;
	padding: 60px 0 0 0;
	list-style: none;
	font-variant: small-caps;
	}

header ul li {
	display: inline;
	margin: 20px;
	zpadding: 20px;
	}

header a {
	color: #DDD;
	text-decoration: none;
}

header a:hover, header a.selected:hover {
	color: #ffe08a;
	border-top: 1px dotted grey;
	border-bottom: 1px dotted grey;
}

header a.selected {
	border-top: 1px dotted #ffe08a;
	border-bottom: 1px dotted #ffe08a;
}

footer {
	background: #ffe08a;
	color: #333333;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	border-radius: 200px 200px 0 0;
	text-align: center;
	}

footer h1 {
	margin: 8px;
	margin-bottom: 0;
	font-size: 60%;
	font-family: "Comic Sans MS", "Chalkboard SE", "Comic Neue", sans-serif;
	font-variant: small-caps;
}

footer a {
	font-size: 60%;
	text-decoration: none;
}

main {
	margin: 80px;
	border-bottom: 1px solid #333333;
		color: #DDD;
	line-height: 150%;
}

main h1, main h2 {
	font-weight: 900;
	text-shadow: 3px 3px #050d1a;
}

main a {
	color: #ffe08a;
}

.spacing li + li {
  margin-top: 1em;
}

dd + dt {
	  margin-top: 1em;
}

main img {
	border-radius: 8px;
}

main figure {
    margin: 30px;
    }

main figure.left {
	float: left;
	clear: left;
}

main figure.right {
	float: right;
	clear: right;
}


main figcaption {
    text-align: center;
    font-style: italic;
    font-size: 0.6em;
    line-height: 1em;
}

iframe.video {
    width: 560px;
    height: 315px;
    display: block;
    margin: 0 auto;
}

@media screen and (max-width: 600px) {
	main figure.left {
		float: unset;
		margin: 0;
	}
	main figure.right {
		float: unset;
		margin: 0;		
	}
	main figure img {
		max-width: 100%;
	}
	main figcaption {
		text-align: left;
	}	
	iframe.video {
        width: 100%;
        height: unset;
    }
}

hr {
	border: 1px dashed #484848;
}

@media screen and (max-width: 100rem) {

	body {
		font-size: 1.5em;
	}


	div.container {
		width: 100%;
	}

	header {
		min-height: unset;
		border-left: 0;
		border-right: 0;
		border-radius: 0;
		padding: 0 30px 10px 30px;
	}

	header ul {
		padding: 50px 0 0 0;
	}

	header ul li {
		margin: 10px;
	}

	main {
		margin: 40px;
		margin-bottom: 80px;
	}

	footer {
		border-radius: 0;
	}
}

@media screen and (max-width: 55rem) {
	body {
		font-size: 1.2em;
	}

	header h1 {
		float: none;
		margin: 0;
	}

	header ul {
		padding: 10px 0 0 0;
		display: flex;
		max-width: 350px;
		flex-flow: row wrap;
		justify-content: space-between;
	}

	header ul li {
		margin: 0 0 10px 0;
		padding: 0;
	}
	main {
		margin: 20px;
		margin-bottom: 80px;
	}
}

@media screen and (max-width: 350px) {
	header {
		padding: 0 10px;
		font-size: .8em;
	}
}


div.project-list {
    display: flex;
    flex-flow: row wrap;
    margin: 0;
    padding: 0;
    width: 100%;
}

div.project {
    flex-basis: 50%;
    margin: 0;
    display: flex;
    flex-flow: row nowrap;
}

div.project-detail {
    zborder: 1px solid green;
    margin: 4px;
    padding: 4px;
}

div.project-detail:last-child {
    padding-right: 40px;
    zborder: 1px solid red;
}

div.project a {
	color: unset;
	text-decoration: none;
}

div.project:hover a {
	color: #ffe08a;
}

div.project img {
    width: 200px;
    height: 200px;
    zborder: 1px solid black;
}

div.project h2 {
    margin: 0;
	font-weight: unset;
	text-shadow: none;
}

div.disabled h2 {
	color: grey;
}

div.disabled p {
	color: grey;
}

div.disabled img {
	filter: grayscale(1);
	opacity: .5;
}

@media screen and (max-width: 80rem) {
    div.project {
        flex-basis: 100%;
    }  
	div.project-detail:last-child {
    	padding-right: 0;
	}
}

@media screen and (max-width: 50rem) {
    div.project {
        min-height: 100px;
    }

    div.project img {
        width: 100px;
        height: 100px;
    }   
}

.pi {
	position: absolute;
	right: 0;
	bottom: 0;
	margin: 5px 30px;
}
.pi img {
	height: 20px;
	opacity: 0;
}
footer:hover .pi img {
	opacity: 0.2;
}
@media screen and (max-width: 100rem) {
	.pi {
		margin: 5px;
		bottom: 0;
	}
}

