:root {
	--header-width: 200px
}

html {
	height: 100%;
}

body {
	display: flex;
	flex-direction: column;
	margin: 0;
	height: 100%;
}

header {
	position: fixed;
	height: 100%;
	width: var(--header-width);
	border-bottom-style: solid;
	padding: 10px;
	box-sizing: border-box;
}

img#nav-pp {
	border-style: solid;
	border-radius: 75px;
	width: 150px;
	display: block;
	margin-left: auto;
  	margin-right: auto;
}

#nav {
	height: inherit;
}

#nav-title {
	text-align: center;
	font-size: 2em;
}

button.theme {
	padding: 8px;
	border-style: solid;
	border-radius: 10px;
	margin: auto;
}

ul.nav-links {
	list-style-type: none;
}

ul.nav-links > li {
	font-size: 1.2em;
	margin: 10px;
}

#nav-tail {
	width: 100%;
	height: 100%;
}

#nav-tail-links {
	max-width: max-content;
	margin-left: auto;
	margin-right: auto;
	padding: 10px;
	border-style: solid;
	border-radius: 40px;
}

#nav-tail-links li {
	margin: 5px;
}

#nav-tail-links a {
	text-decoration: none;
}

#theme-button {
	margin-left: auto;
	margin-right: auto;
}

#intro {
	border-style: solid;
	border-radius: 50px;
	padding: 10px;
	margin-top: 30px;
	margin-bottom: 30px;
	margin-left: auto;
	margin-right: auto;
	max-width: 70%;
}

#content {
	margin-left: var(--header-width);
	padding: 5px;
}

#intro {
	padding: 15px;
	text-align: center;
}

#projects {
	display: grid;
	grid-template-columns: auto auto;
}

.project-post {
	position: relative;
	padding: 5px;
	margin: 3px;
	border-style: solid;
	border-width: 3px;
	border-radius: 15px;
}

#main-content {
	padding: 20px;
	margin: 3px;
	border-style: solid;
	border-width: 3px;
	border-radius: 15px;
}

#main-content > img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 30px;
	margin-bottom: 30px;
	border-style: solid;
	border-width: 3px;
	border-radius: 20px;
	max-width: 100%;
}

h2.project-title {
	margin-left: 10px;
	font-weight: bold;
}

a.project-title {
	text-decoration: none;
}

a.video-link {
	font-size: 1.3em;
	text-decoration: none;
	position: absolute;
	right: 5%;
	top: 10%;
}

.video-icon {
	height:1em;
}

.project-description {
	display: grid;
	grid-template-columns: auto auto;
}

img#project-image {
	width: 150px;
	height: 150px;
	margin-right: 10px;
	margin-left: 10px;
	border-style: solid;
	border-radius: 15px;
}

.project-description > p {
	margin: 10px;
}

ul.project-tags {
	list-style-type: none;
	margin: 5px;
	padding: 3px;
	text-align: right;
}

ul.project-tags > li {
	display: inline;
	padding: 3px;
	border-style: solid;
	border-width: 2px;
	border-radius: 7px;
}

#main-content > h2 {
	margin-left: auto;
	margin-right: auto;
	margin-top: 60px;
	margin-bottom: 60px;
	max-width: max-content;
}

#main-content > .paragraph-with-figure {
	display: grid;
	grid-template-columns: auto auto;
}

#main-content > .paragraph-with-figure > * {
	margin-top: auto;
	margin-bottom: auto;
}

#main-content > .paragraph-with-figure > .first {
	margin-right: 10px;
}

#main-content > .paragraph-with-figure > .second {
	margin-left: 10px;
}

#main-content > .three-columns {
	display: grid;
	grid-template-columns: auto auto auto;
}

#main-content > .three-columns > * {
	margin-top: auto;
	margin-bottom: auto;
}

#main-content > .three-columns > .first {
	margin-right: 10px;
}

#main-content > .three-columns > .second {
	margin-right: 10px;
	margin-left: 10px;
}

#main-content > .three-columns > .third {
	margin-left: 10px;
}

.slider {
	width: 100%;
}

.slider::-moz-range-thumb {
	height: 50px;
	width: 50px;
}

#main-content #figure {
	padding: 20px;
	max-width: 10rem;
	border-style: solid;
	border-width: 2px;
	border-radius: 7px;
}

g text {
	text-anchor: middle;
	font-size: 3em;
}

g text#smaller {
	font-size: 2em;
}

em.blue {
	color: grey;
}
em.red {
	color: red;
}
em.green {
	color: green;
}

footer {
	margin-left: var(--header-width);
	border-top-style: solid;
	margin-top: auto;
	text-align: center;
	padding: 10px;
	box-sizing: border-box;
	width: calc(100% - var(--header-width));
	bottom: 0;
}
