html {
	scroll-behavior: smooth;
}
body {
	font-family: Verdana, Helvetica, Geneva, "Lucida sans", sans-serif;
	font-size: 18px;
	margin: 0;
	color: #cccccc;
	background-color: #202020;
}
hr {
	border-top: 1px solid #363636; 
	border-bottom: 0; 
}
a {
	text-decoration: none;
	color: #ffdd55;
}
/* -----------------
 * side nav (mobile)
 * ----------------- */
#side-nav {
	position: fixed;
	top: 0;
	display: none;
	font-size: 20px;
	width: 200px;
	height: 100vh;
	overflow-y: auto;
	background-color: #161618;
	border-right: 2px solid #000000;
	z-index: 2;
}
#side-nav1 {
	margin-top: 60px;
	border-top: 1px solid #000000;
}
.side-item {
	padding: 10px 20px;
	line-height: 30px;
	color: #aaaaaa;
	border-bottom: 1px solid #000000;
}
.side-item:hover {
	background-color: #262628;
}
/* -------------
 *  header
 * ------------- */
header {
	position: fixed;
	top: 0;
	width: 100%;
	height: 85px;
	color: #ddddee;
	background-color: #000005;
	z-index: 1;
}
#hd1 {
	position: relative;			/* refference for #m-nav-btn */
}
#hd1, #nv1, .sc1, #ft1 {
	max-width: 1400px;
	margin: 0 auto;
	padding: 0 20px;
}
#logo-header {
	margin-top: 23px;
	height: 25px;
}
#title {
	font-family: Baskerville, Cambria, Didot, Garamond;
	margin-top: 20px;
}
/* ---------------------
 *  menu button (mobile)
 * --------------------- */
#m-nav-btn {
	display: none;
	position: absolute;			/* relative to #hd1 */
	top: 32px;
	right: 30px;
	width: 33px;
}
#m-nav-btn:active {
	top: 34px;
	right: 29px;
}
.m-nav-btn-elem {
	height: 3px;
	margin-bottom: 7px;
	background-color: #dddddd;
}
/* -------------
 *  nav
 * ------------- */
nav {
	position: fixed;
	top: 53px;
	width: 100%;
	height: 32px;
	background-color: #000005;
	z-index: 1;
}
#nv2 {
	display: inline-block;
	float: right;
}
.navitem {
	display: inline-block;
	padding: 0 10px 0 10px;
	line-height: 32px; 
	color: #dddddf;
	border-radius: 3px;
}
.navitem:hover {
	background-color: #444448;
	color: #ffffff;
}
.nav-highlight {
	background-color: #222226;
}
/* -------------
 *  section
 * ------------- */
section {
	min-height: calc(100vh - 150px);
}
/* -------------
 *  footer
 * ------------- */
footer {
	height: 65px;
	background-color: #000000;
}
#ft1 {
	padding-top: 20px;
	text-align: center;
}
.ft-item {
	display: inline-block;
	color: #666669;
	padding: 0 10px;
	border-radius: 3px;
}
.ft-item:hover {
	color: #aaaaac;
	background-color: #444448;
}
.ft-space {
	display: inline-block;
	color: #99999a;
	padding: 0 10px;
}

/* ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 *
 *   media
 *
 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
@media screen and (min-width: 1001px){
	#side-nav {
		visibility: hidden;
	}
}
@media screen and (max-width: 1000px){
	#m-nav-btn {
		display: block;
	}
	nav {
		display: none;
	}
	#logo-header {
		margin-top: 30px;
	}
}
