:root {
	font-family: 'Noto Serif', Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;
	font-size: 16px;
}

::selection {
    background: #f09f47;
    color: #fff;
    text-shadow: none;
}

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

body {
	width: 100%;
	max-width: 100%;
	background-image: url('../images/wave.webp');
	background-size: cover;
	background-color: #256d4e;
	background-position: center left;
	background-attachment: fixed;
}

a {
	cursor: pointer;
	text-decoration: none;
}

div#glass {
	width: 100%;
	max-width: 100%;
	min-height: 100vh;
	background: rgba(255, 255, 255, 0.1);
	backdrop-filter: blur(3px);
	display: flex;
	justify-content: center;
}

div#container {
	max-width: 1024px;
	width: 100%;
}

header#header {
	display: flex;
	justify-content: space-between;
	padding: 2rem 4rem;
	font-family: 'Ubuntu', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
	background-color: #0a202b;
	color: #fff4e1;

	nav {
		display: flex;
		align-items: center;
		gap: 1rem;
	}

	a {
		color: #fff4e1;
		text-decoration: none;
		cursor: pointer;

		&:hover, &.active {
			color: #65be97;
		}
	}
}

div#hero {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 500px;
	color: #fff4e1;
	font-size: 3rem;
	text-shadow: 0px 1px 10px rgba(0, 0, 0, 0.5);
	text-align: center;
}

footer {
	background-color: #226146;
	color: #4cb88a;
	padding: 2rem 4rem;

	a {
		color: #7cddb4;
		text-decoration: none;
		cursor: pointer;

		&:hover {
			text-decoration: underline;
		}
	}
}

main {
	background-color: #f9f6f0;
	color: #595143;

	h1, h2, h3, h4 {
		color: #3ea377;
		font-family: 'Ubuntu', 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
	}
}

div.home-feature, div.book-feature {
	padding: 2rem 4rem;

	&:nth-child(even) {
		background-color: #f1ede5;
	}

	h2 {
		font-size: 2.5rem;
		margin-bottom: 0.25rem;

		a {
			color: inherit;
			&:hover {
				text-decoration: underline;
			}
		}
	}

	h3 {
		font-size: 2rem;
		margin-bottom: 0.25rem;

		a {
			color: inherit;
			&:hover {
				text-decoration: underline;
			}
		}
	}

	p {
		margin-bottom: 1rem;
	}

	div.links {
		a {
			display: inline-block;
			margin: 0 5px 5px 0;
			padding: 5px 8px;
			color: #746a5b;
			font-size: 13px;
			border-radius: 3px;
			background: #d4cfc6;
			&:hover {
				color: white;
				background-color: #a39989;
			}
		}
	}
}

div.book-feature {
	&:nth-child(even) {
		background-color: #f1ede5;
	}
	&:nth-child(odd) {
		background-color: #f9f6f0;
	}
}

div.blog-feature {
	padding: 2rem 4rem;

	&:nth-child(even) {
		background-color: #f1ede5;
	}

	h2 {
		font-size: 2.5rem;
		margin-bottom: 0.25rem;

		a {
			color: inherit;
			&:hover {
				text-decoration: underline;
			}
		}
	}

	p {
		margin-bottom: 1rem;
	}

	div.meta {
		font-style: italic;
		color: #746a5b;
		font-size: 14px;
	}
}

div.content {
	padding: 2rem 4rem;

	h1 {
		font-size: 2.5rem;
		margin-bottom: 1rem;
	}

	h2 {
		font-size: 2rem;
		margin-top: 2rem;
		margin-bottom: 0.75rem;
		padding-top: 2rem;
		border-top: 1px solid rgba(0, 0, 0, 0.1);
	}

	h3 {
		font-size: 1.5rem;
		margin-top: 1.5rem;
		margin-bottom: 0.5rem;
	}

	p {
		margin-bottom: 1rem;
		line-height: 1.6;
	}

	ul, ol {
		margin-left: 2rem;
		margin-bottom: 1rem;

		li {
			margin-bottom: 0.5rem;
			line-height: 1.6;
		}
	}

	code {
		background-color: #e8e4dc;
		padding: 2px 6px;
		border-radius: 3px;
		font-family: 'Courier New', monospace;
		font-size: 0.9em;
	}

	pre {
		background-color: #e8e4dc;
		padding: 1rem;
		border-radius: 5px;
		overflow-x: auto;
		margin-bottom: 1rem;

		code {
			background: none;
			padding: 0;
		}
	}

	a {
		color: #256d4e;
		text-decoration: underline;

		&:hover {
			color: #1a4d36;
		}
	}

	table {
		width: 100%;
		border-collapse: collapse;
		margin-bottom: 1rem;
	}

	th, td {
		padding: 0.5rem;
		border: 1px solid #d4cfc6;
		text-align: left;
	}

	tr:nth-child(even) {
		background-color: #f1ede5;
	}

	th {
		background-color: #e8e4dc;
	}
}

nav.breadcrumbs {
	margin-bottom: 1rem;
	background-color: #f9f6f0;
	color: #746a5b;
	font-size: 0.9rem;

	a {
		color: #256d4e;
		text-decoration: none;

		&:hover {
			text-decoration: underline;
		}
	}

	span {
		color: #a39989;
	}
}

div.page-navigation {
	display: flex;
	justify-content: space-between;
	margin-top: 1rem;
	padding: 2rem 4rem;
	background-color: #f1ede5;
	border-top: 1px solid #d4cfc6;

	div.prev, div.next {
		flex: 1;
	}

	div.next {
		text-align: right;
	}

	a {
		color: #256d4e;
		text-decoration: none;
		font-weight: 500;

		&:hover {
			color: #1a4d36;
			text-decoration: underline;
		}
	}
}

ul.page-list {
	list-style: none;
	margin: 1rem 0;
	padding: 0;

	li {
		margin-bottom: 0.75rem;
		padding: 0.5rem 0;
		border-bottom: 1px solid #e8e4dc;

		&:last-child {
			border-bottom: none;
		}

		a {
			color: #256d4e;
			text-decoration: none;
			font-size: 1.1rem;

			&:hover {
				color: #1a4d36;
				text-decoration: underline;
			}
		}
	}
}

.blog-post header {
	margin-bottom: 1rem;
	
	h1 {
		margin-bottom: 0;
	}
}

article.blog-post-preview {
	& > h2 {
		margin-top: 0;
		padding-top: 0;

		& > a {
			text-decoration: none;
		}
	}
}