@charset "UTF-8";

html, body { height: 100%; }

body {
  font-family: "Merriweather", Georgia, serif;
  font-weight: 300;
  font-size: 1rem;
  line-height: 1.5;
  text-align: left;
  color: #212529;
  background: #333 url('/img/leather.jpg') 0 0 repeat;
  transition: all 0.3s ease;
}

.page-wrapper {
	min-height: calc(100vh);
	background: #f9f9f9 url('/img/paper-fibers.jpg') 0 0 repeat;
}

@media (max-width: 575.98px) {
  .page-wrapper {
    width: 100%;
  }
}

@media (min-width: 576px) {
  .page-wrapper {
  	width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 2rem;
  }
}

.page-wrapper > footer {
	padding-top: 3rem;
	padding-bottom: 2rem;
}

.page-wrapper > footer > .container-fluid {
	position: relative;
	width: 100%;
}

.page-wrapper > footer > .container-fluid:before {
	display: inline-block;
	margin: 0 auto;
	width: calc(100% - 2rem);
	max-width: 100%;
	height: 1px;
	position: absolute;
	top: -2rem;
  content: "";
  border-top: 0.125rem dotted rgba(0,0,0, 0.35);
}

.page-wrapper > footer p {
	text-align: center;
	color: #777;
}

.container, .container-fluid {
	transition: all .3s ease-in-out;
}

.site-header {
	width: 100%;
	position: relative;
	height: 9rem;
	padding-top: 3rem;
	padding-bottom: 3rem;
}

hr.scotted {
	position: absolute;
	bottom: -0.98rem;
	left: 0;
	width: 100%;
	background-color: transparent;
  border: 0;
  opacity: 1;
  border-top: 2px dotted rgba(0,0,0, 0.85);
}

.quill {
	position: absolute;
	top: -6.3rem;
	right: -2.75rem;
	z-index: 998;
	transition: all 0.3s ease-in-out;
}

@media (max-width: 577.98px) {
	.quill { display: none; }
}

.navbar-sl {
	margin-bottom: 2rem;
	padding: 0.125rem 0;
	border-bottom: 2px solid rgba(0,0,0, 0.85);
}

.navbar-sl > .nav-inner {
	width: 100%;
	border-top: 1px solid rgba(0,0,0, 0.85);
	border-bottom: 1px solid rgba(0,0,0, 0.85);
}

.navbar-sl .navbar-brand {
  color: rgba(0,0,0, 0.9);
}

.navbar-sl .navbar-brand:hover, .navbar-sl .navbar-brand:focus {
  color: rgba(0,0,0, 0.9);
}

.navbar-sl .navbar-nav .nav-link {
	font-weight: 400;
  color: rgba(0,0,0, 0.85);
}

.navbar-sl .navbar-nav .nav-link:hover, .navbar-sl .navbar-nav .nav-link:focus {
  color: rgba(0,0,0, 0.55);
  background-color: rgba(0,0,0, 0.08);
}

.navbar-sl .navbar-nav .nav-link.disabled {
  color: rgba(0,0,0, 0.3);
}

.navbar-sl .navbar-nav .show > .nav-link,
.navbar-sl .navbar-nav .nav-link.active {
  color: rgba(0,0,0, 0.9);
}

.navbar-sl .navbar-toggler {
  color: rgba(0,0,0, 0.55);
  border-color: rgba(0,0,0, 0);
  border-radius: 0;
}

.navbar-sl .navbar-toggler:hover {
  text-decoration: none;
  background-color: rgba(0,0,0, 0.08);
  box-shadow: none;
}

.navbar-sl .navbar-toggler:focus {
  text-decoration: none;
  outline: 0;
  background-color: rgba(0,0,0, 0.08);
  box-shadow: none;
}

.navbar-sl .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280,0,0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-sl .navbar-text {
  color: rgba(0,0,0, 0.55);
}

.navbar-sl .navbar-text a,
.navbar-sl .navbar-text a:hover,
.navbar-sl .navbar-text a:focus {
  color: rgba(0,0,0, 0.9);
}

@media (max-width: 768px) {
  .navbar-expand-md.navbar-sl .nav-link {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  .navbar-expand-md.navbar-sl .navbar-nav {
  	margin-bottom: 0 !important; 	
  }
}

h1, h2, h3 {
	font-family: "Playfair Display", "Merriweather", Georgia, serif;
	font-weight: 700;
}

.site-header h1 {
	font-style: italic;
	z-index: 999;
}

.site-header h1 > a {
	text-decoration: none;
	color: #212529;
}

.primary-col, .sidebar {
	padding-bottom: 1rem;
}

@media (min-width: 992px) {
	.primary-col {
  	border-right: 0.0625rem solid rgba(0,0,0, 0.85);
	}
}

@media (max-width: 991.98px) {
	.primary-col:after {
		display: inline-block;
		margin: 1rem auto 0.75rem;
		width: 100%;
		height: 1px;
	  content: "";
  	border-bottom: 0.0625rem solid rgba(0,0,0, 0.67);
	}
}

b, strong {
  font-weight: 700;
}