body{
	background: #f3efe7;
	margin: 0;
	padding: 0 0 2em;
	font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
	color: #333;
	font-size: small;
	text-align: center;
}
a:link, a:visited{ color: #2f6f6f; }
#header-wrap{ background: #f3efe7; text-align: left; }
#header{
	width: 782px;
	box-sizing: border-box;
	margin: 0 auto;
	background: #7a4468;
	border: 1px solid #4c273f;
	color: #fff;
	padding: 38px 14px 40px;
}
h1.title{ margin: 0; font-size: 210%; font-weight: 700; }
h1.title a{ color: #fff; text-decoration: none; }
#nav{ width: 782px; box-sizing: border-box; margin: 0 auto; background: #4c273f; border: 1px solid #34192b; border-top: 0; text-align: left; }
.menu{ list-style: none; margin: 0; padding: 0; }
.menu li{ position: relative; }
.menu > li{ display: inline-block; }
.menu a{ display: block; padding: .5em 1em; color: #f3efe7; text-decoration: none; white-space: nowrap; }
.menu > li + li{ border-left: 1px solid #6a3c5a; }
.menu > li > a:hover, .menu > li:focus-within > a{ background: #7a4468; }
.menu ul{ display: none; position: absolute; top: 100%; left: 0; margin: 0; padding: 0; list-style: none; min-width: 170px; background: #4c273f; border: 1px solid #34192b; z-index: 50; }
.menu li:hover > ul, .menu li:focus-within > ul{ display: block; }
.menu ul ul{ top: 0; left: 100%; }
.menu ul li + li{ border-top: 1px solid #6a3c5a; }
.menu ul a:hover{ background: #7a4468; }
.menu .has-children > a::after{ content: " \25BE"; color: #c9a7bd; }
.menu ul .has-children > a::after{ content: " \25B8"; }
#content-wrap{
	width: 780px;
	margin: 0 auto;
	background: #fff;
	border: 1px solid #d8d2c4;
	border-top: 0;
	padding-bottom: 15px;
	text-align: left;
}
#tagline{ padding: .6em 14px; border-bottom: 1px solid #eee; color: #666; font-style: italic; }
#main-col{ float: left; width: 490px; margin-left: 14px; overflow: hidden; }
#side-col{ float: right; width: 250px; margin-right: 14px; overflow: visible; }
.clear{ clear: both; }
.date-header{ margin: 1.5em 0 .5em; color: #999; font-weight: normal; font-size: 100%; }
.post{ margin: 0 0 1.5em; padding-bottom: 1.5em; border-bottom: 1px dotted #ddd; }
.post-title{ margin: 0 0 .4em; font-size: 125%; }
.post-title a{ text-decoration: none; color: #333; }
.post-body{ line-height: 1.5; }
.thumb{ margin: 0 0 .7em; }
.thumb img{ display: block; width: 320px; max-width: 100%; height: 200px; object-fit: cover; border: 1px solid #ccc; padding: 4px; background: #fff; }
.post-body img{ max-width: 100%; height: auto; padding: 4px; border: 1px solid #ccc; }
.post-meta{ color: #999; font-size: 87%; }
.post-terms{ margin: .4em 0 0; color: #999; font-size: 87%; }
.post-terms a{ color: #2f6f6f; }
.author-card{ margin: 0 0 1.5em; padding-bottom: 1.5em; border-bottom: 1px dotted #ddd; overflow: hidden; }
.author-avatar{ float: left; width: 160px; height: 160px; margin: 0 1em .5em 0; }
.author-avatar img{ display: block; width: 160px; height: 160px; box-sizing: border-box; object-fit: cover; border: 1px solid #ccc; padding: 4px; background: #fff; }
.author-name{ margin: 0 0 .2em; }
.author-site{ margin: 0 0 .4em; }
.author-desc{ margin: 0; line-height: 1.5; }
.side-widget{ margin-bottom: 1.2em; }
.side-widget h2{ margin: 1.2em 0 .5em; padding: 4px 8px; background: #e7dcc3; font-size: 100%; }
.side-widget ul{ margin: 0; padding: 0 5px; list-style: none; }
.side-widget li{ line-height: 1.6; }
.side-widget .widget-text{ padding: 0 5px; line-height: 1.5; }
#post-search, #arch-select{ width: 100%; box-sizing: border-box; padding: .4em; font-size: 1em; border: 1px solid #7a4468; background: #fff; }
.arch-list{ margin: 0; padding: 0 5px; list-style: none; }
.arch-list ul{ margin: .2em 0 .2em 1em; padding: 0; list-style: none; }
.arch-list li{ line-height: 1.5; }
.pager{ overflow: hidden; margin: 1em 0; }
.pager-prev{ float: left; }
.pager-next{ float: right; }
.search-wrap{ position: relative; }
.search-drop{
	position: absolute; top: 100%; left: 0; right: 0; z-index: 10;
	background: #fff; border: 1px solid #7a4468; border-top: 0;
	max-height: 16em; overflow: auto;
}
.search-drop a{
	display: block;
	padding: .5em .6em;
	line-height: 1.4;
	text-decoration: none;
	color: #333;
	border-bottom: 1px solid #eee;
}
.search-drop a:last-child{ border-bottom: 0; }
.search-drop a:hover{ background: #f3efe7; }
.search-drop a:visited{ color: #333; }
.search-drop .no-hit{ display: block; padding: .5em .6em; color: #999; }
#footer{ width: 782px; margin: 0 auto; padding: 1em 0; color: #666; font-size: 85%; }
