@charset "utf-8";

/* Study, learn, copy, steal... make the web a better place! */


/* Settings
/* ================================================================ */

:root {
	--text-size: 18px;
	--text-color: #614a50;
	--text-margin: 24px;
	--base-padding: 24px;
}

@media only screen and (min-width: 600px) {
	:root {
		--text-size: 20px;
	}
}

@media only screen and (min-width: 1200px) {
	:root {
		--text-size: 18px;
		--base-padding: 48px;
	}
}

@media only screen and (min-width: 1800px) {
	:root {
		--text-size: 20px;
	}
}




/* Baseline
// ================================================================ */

* {
	box-sizing: border-box;
}

html {
	font-family: courier, monospace;
	font-size: var(--text-size);
	line-height: 1.375;
	color: var(--text-color);
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

body {
	background: #f5f3f4 url('../img/signature-transparent.png') no-repeat scroll bottom var(--base-padding) right var(--base-padding);
	background-size: 16px;
	padding-bottom: 64px;
	margin: 0;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
	border-width: 0;
}

figure {
	margin: 0 0 var(--text-margin) 0;
}

@media only screen and (min-width: 1200px) {
	body {
		padding-bottom: 0;
	}
}




/* Typography
// ================================================================ */

h1, h2, p, ul, ol, dl, hr {
	margin-top: 0;
	margin-bottom: var(--text-margin);
}

ul ul, ul ol, ol ol, ol ul {
	margin-bottom: 0;
}

h1, h2 {
	font-size: var(--text-size);
	text-transform: uppercase;
	font-weight: normal;
	font-weight: bold;
}

h2 {
	font-weight: normal;
}

.separated li {
	margin-bottom:  var(--text-margin);
}

a:link, a:visited {
	color: var(--text-color);
	text-decoration: none;
	border-bottom: 1px solid var(--text-color);
}

a:hover, a:focus, a:active {
	color: var(--text-color);
	text-decoration: none;
	border-bottom: 2px solid var(--text-color);
}




/* Navigation
// ================================================================ */

.navigation {
	list-style-type: '/';
	list-style-position: inside;
	padding: 0;
	margin: 0;
}

.navigation__item {
	margin: 0;
}

.navigation__item--active a:link,
.navigation__item--active a:visited,
.navigation__item--active a:hover,
.navigation__item--active a:focus,
.navigation__item--active a:active {
	border-bottom: 2px solid var(--text-color);
}




/* Structure
// ================================================================ */

.hero {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 50vh;
	background: transparent url('../img/background.jpg') no-repeat center;
	background-size: cover;
}

.logo {
	background-color: #fff;
	width: calc(90px + (var(--base-padding) * 2));
	padding: var(--base-padding);
	margin: 0;
}

.logo a {
	border-width: 0;
}

.content {
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 50vh;
	padding: var(--base-padding);
}

.container {
	width: 100%;
	max-width: 25em;
}

@media only screen and (min-width: 1200px) {
	.layout {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
	}

	.hero {
		position: fixed;
		width: 50vw;
		height: 100vh;
	}

	.content {
		grid-column: 2 / -1;
		min-height: 100vh;
	}
}

@media only screen and (min-width: 1800px) {
	.container {
		max-width: 35em;
	}
}




/* Components
// ================================================================ */

.embed {
	margin-bottom: var(--text-margin);
}
