:root {
	--color-white: #FFFFFF;
	--color-gray: #444444;
	--color-elements: #50314C;
	--color-background: #F9F3EA;
	--color-hover: #9C7E50;
	--color-light: #7A7A7A;
	--color-code: #F0F0F0;
	--max-width: 960px;
	--bold-weight: 900;
}

body {
	margin: 0px;
	background-color: var(--color-background);
	color: var(--color-gray);
	font-family: "Raleway";
}

h1 {
	font-size: 36px;
}

#menu-wrapper {
	max-width: var(--max-width);
	margin: 0px auto 0px auto;
	padding: 0px 1px 0px 1px;
}

#menu-buttons {
	z-index: 2;
	-webkit-backface-visibility: hidden;
	position: fixed;
	top: 0px;
	width: var(--max-width);
	background-color: var(--color-elements);
}

.menu-button {
	float: left;
	background-color: var(--color-elements);
	border: none;
	outline: none;
	font-size: 24px;
	color: var(--color-white);
	text-align: center;
	padding: 8px 24px 8px 24px;
}

.menu-button:hover {
	background-color: var(--color-hover);
}

.menu-button-current {
	background-color: var(--color-white);
	color: inherit;
	pointer-events: none;
}

#wrapper {
	z-index: 1;
	max-width: var(--max-width);
	margin: 0px auto 32px auto;
	padding-top: 37px;
	background-color: var(--color-white);
	border: 1px solid var(--color-elements);
	border-top: none;
	border-radius: 0px 0px 16px 16px;
}

#header {
	text-align: center;
	margin: 32px 0px 48px 0px;
}

#header h1 {
	font-weight: lighter;
	margin: 0px;
	padding-bottom: 6px;
}

#header h2 {
	border-top: 1px solid var(--color-gray);
	margin: 0px auto 0px auto;
	width: 40%;
	font-size: 16px;
	padding-top: 6px;
}

#content {
	padding-left: 7%;
	padding-right: 7%;
}

#content h1 {
	font-weight: lighter;
	border-top: 2px solid var(--color-gray);
	padding-top: 16px;
	margin: 0px auto 0px auto;
}

#content h1 a {
	text-decoration: none;
	color: inherit;
}

#content h2 {
	font-size: 18px;
	padding-top: 16px;
}

#content p {
	text-align: justify;
}

#content p a {
	color: var(--color-elements);
	font-weight: var(--bold-weight);
	text-decoration: inherit;
}

#content a:hover {
	color: var(--color-hover);
}

#content .prettyprint {
	width: 100% !important;
	max-height: 400px !important;
	overflow: auto !important;
	background-color: var(--color-code) !important;
	border: none !important;
	padding: 1px 4px 1px 4px !important;
}

#content figure table tr td {
	background-color: var(--color-code);
	padding: 5px;
}

#content code {
	background-color: var(--color-code);
	padding: 0px 4px 0px 4px;
}

#content figure {
	float: right;
	padding: 16px;
	margin: auto 0px auto 0px;
	clear: right;
	max-width: 100%;
	display: table;
}

#content figure img {
	border: 1px solid var(--color-gray);
	max-width: 100%;
}

#content figure figcaption {
	display: table-caption;
	caption-side: bottom;
	font-style: italic;
	margin-bottom: 8px;
	max-width: 100%;
	text-align: center;
}

#content ul {
	list-style-type: dot;
}

#content ul li {
	padding: 4px 0px 4px 0px;
}

#content ol li {
	padding: 4px 0px 4px 0px;
}

.list-skip {
	list-style-type:none;
}

.full-width {
	width: 100%;
	max-width: 100%;
	clear: both;
	display: inline-block;
}

.full-width canvas {
	border: 1px solid var(--color-gray);
	background-color: var(--color-background);
	background-size: cover;
	max-width: 100%;
}

.round-button {
	padding: 4px 16px 4px 16px;
	color: var(--color-white);
	border-radius: 16px;
	background-color: var(--color-elements);
	border: 0;
	font: inherit;
}

.round-button:hover {
	cursor: pointer;
	background-color: var(--color-hover);
}

#tags {
	width: 100%;
	display: inline-block;
}

.post-tag {
	margin: 4px 2px 4px 2px;
	float: right;
	font-size: 14px;
}

.post-tag::before {
	content: "#";
}

.post-link-preview {
	float: right;
	display: block;
	max-width: 100%;
	padding: 8px 0px 0px 8px;
}

.post-link-preview img {
	max-width: 100%;
}

.date {
	margin-left: 16px;
	font-size: 12px;
	color: var(--color-light);
}

#references {
	width: 100%;
	display: inline-block;
}

.post-reference {
	display: block;
	color: var(--color-elements);
	font-weight: var(--bold-weight);
	margin-bottom: 12px;
}

.post-reference:hover {
	color: var(--color-hover);
}

.post-reference-left::before {
	content: "<";
	margin-right: 5px;
}

.post-reference-left {
	float: left;
}

.post-reference-right::after {
	content: ">";
	margin-left: 5px;
}

.post-reference-right {
	text-align: right;
	float: right;
}

#footer {
	font-size: 11px;
	text-align: right;
	color: var(--color-light);
	padding: 8px 16px 8px 16px;
}

#icons {
	margin: 0px auto 0px auto;
	height: 0px;
	width: 200px;
	text-align: center;
}

.icon {
	display: inline-block;
	cursor: pointer;
	position: relative;
	top: -16px;
	background-size: 64px 32px;
	width: 32px;
	height: 32px;
	margin: 0px 1px 0px 1px;
}

.icon:hover {
	background-position: 32px 0px;
}

#icon-mail {
	background-image: url("../img/ico_mail.svg");
}

#icon-github {
	background-image: url("../img/ico_github.svg");
}

#icon-linkedin {
	background-image: url("../img/ico_linkedin.svg");
}

#icon-twitter {
	background-image: url("../img/ico_twitter.svg");
}

#load-more {
	margin: 8px auto 8px auto;
	text-align: center;
}

#load-more .round-button {
	display: inline-block;
}

#contact-form {
	padding-top: 8px;
	margin: 0px auto 0px auto;
	text-align: center;
}

#contact-form input {
	display: block;
	margin: 8px 0px 8px 0px;
	width: 100%;
}

#contact-form textarea {
	font: inherit;
	display: block;
	margin: 8px 0px 8px 0px;
	width: 100%;
	height: 240px;
	resize: none;
}