@charset "UTF-8";

:root {
	--tanzaku-background: #c4c4c4;
	--tanzaku-card: #d9d9d9;
	--tanzaku-text: #000;
	--tanzaku-link: #3f3f3f;
	--tanzaku-gap: 5px;
	--tanzaku-card-min: 320px;
	--tanzaku-card-padding: 15px;
}

* { box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
	margin: 0;
	padding: 0;
	background: var(--tanzaku-background);
	color: var(--tanzaku-text);
	font-family: Georgia, Baskerville, Palatino, "Times New Roman", serif;
	font-size: 13px;
	line-height: 1.5;
}

a { color: var(--tanzaku-link); text-decoration: none; }
a:hover, a:focus { color: #000; text-decoration: underline; }
a:focus-visible { outline: 2px solid currentColor; outline-offset: 3px; }

.site-container { width: 100%; margin: 0 auto; }

.site-header {
	margin: 50px 16px 55px;
}

.site-branding { margin: 0 0 1.5rem; }
.site-title {
	margin: 0;
	font-size: 32px;
	font-weight: 400;
	line-height: 1.2;
}
.site-title a { color: #000; }
.site-description { margin: 2px 0 0; font-size: 13px; }

.primary-navigation { margin: 1rem 0; }
.primary-navigation .menu,
.primary-navigation ul {
	display: flex;
	flex-wrap: wrap;
	gap: 4px 12px;
	margin: 0;
	padding: 0;
	list-style: none;
}
.primary-navigation .sub-menu { display: none; }

.widget-area {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 2px 10px;
}
.widget { min-width: 0; }
.header-widgets .widget { margin: 0; }
.widget-title {
	margin: 0 0 .35rem;
	font-size: 13px;
	font-weight: 400;
}
.widget ul { margin: 0; padding: 0; list-style: none; }
.widget li { display: inline; margin-right: 7px; }
.widget select { max-width: 100%; }
.widget a { white-space: normal; }

.site-main { width: 100%; }
.archive-heading { margin: 0 16px 18px; }
.archive-heading h1,
.section-title {
	margin: 0 0 12px;
	font-size: 18px;
	font-weight: 400;
}
.archive-description { max-width: 900px; }

.masonry-grid {
	position: relative;
	width: 100%;
	margin: 0;
	padding: 0;
	min-height: 1px;
	visibility: visible;
}
.masonry-grid.is-positioning { visibility: hidden; }

.grid-item,
.single-item {
	display: block;
	overflow-wrap: anywhere;
	margin: 0;
	padding: var(--tanzaku-card-padding) var(--tanzaku-card-padding) 30px;
	border: 0;
	background: var(--tanzaku-card);
}
.grid-item {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	transform: translate3d(0, 0, 0);
	transition: transform 480ms cubic-bezier(.22, .61, .36, 1);
	will-change: transform;
}
.grid-item h2.post-title,
.single-item h1.post-title,
.single-item h2.post-title {
	margin: 0 0 14px;
	padding: 0;
	border: 0;
	font-size: 14px;
	font-weight: 400;
	line-height: 1.4;
}
.grid-item .post-title a { color: #222; }
.post-body { font-size: 13px; line-height: 1.5; }
.post-body p { margin: 0 0 1em; }
.post-body p:last-child { margin-bottom: 0; }
.post-body img,
.post-body picture,
.post-body figure,
.post-body video,
.post-body iframe { max-width: 100%; height: auto; }
.grid-item .post-body img,
.grid-item .post-body picture,
.grid-item .post-body figure { display: none !important; }

.post-meta,
.comment-meta {
	margin: 1.15em 0 0;
	font-size: 12px;
	line-height: 1.4;
}
.post-meta a { text-decoration: underline; }

.single-item {
	position: relative;
	margin: 0 5px 5px 0;
	padding: 15px 15px 30px;
}
.single-item .post-body { font-size: 14px; }
.single-item .post-title { font-size: 20px; }
.single-item .post-body img,
.single-item .post-body picture,
.single-item .post-body figure { display: none !important; }

.more-posts { margin-top: 28px; }
.more-posts .section-title { margin: 0 16px 12px; }
.page-links { margin-top: 1.5em; }

.navigation,
.pagination {
	clear: both;
	margin: 24px 16px;
}
.pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px 14px;
}
.pagination .page-numbers { padding: 3px 6px; }
.pagination .current { background: var(--tanzaku-card); }

.comments-area { margin-top: 5px; }
.comment-title { margin: 0 0 12px; font-size: 16px; font-weight: 400; }
.comment-list { margin: 0; padding-left: 22px; }
.comment-list li { margin: 12px 0; }
.comment-list .children { padding-left: 22px; }
.comment-content p { margin: .5em 0; }
.comment-form label { display: block; }
.comment-form input[type="text"],
.comment-form input[type="email"],
.comment-form input[type="url"],
.comment-form textarea,
.search-form input[type="search"] {
	max-width: 100%;
	padding: 5px 7px;
	border: 1px solid #999;
	border-radius: 0;
	background: #fff;
	color: #000;
	font: inherit;
}
.comment-form textarea { width: min(100%, 600px); }
button, input[type="submit"] {
	padding: 5px 9px;
	border: 1px solid #888;
	border-radius: 0;
	background: #eee;
	color: #000;
	font: inherit;
	cursor: pointer;
}

.footer-widgets { margin: 28px 16px 0; }
.site-footer { clear: both; padding: 30px 0 0; }
.site-footer p { margin: 0; padding: 10px 16px; }

.aligncenter { display: block; margin-right: auto; margin-left: auto; }
.alignleft { float: left; margin: 0 10px 2px 0; }
.alignright { float: right; margin: 0 0 2px 10px; }
blockquote, pre {
	margin: 1em 0;
	padding: 10px;
	border-left: 5px solid #e9e9e9;
	background: #f9f9f9;
	color: #666;
}
pre { overflow: auto; }
table { max-width: 100%; border-collapse: collapse; }
th, td { padding: 3px 5px; background: #d9d9d9; }
hr { border: 0; border-top: 1px solid #aaa; }

@media (max-width: 680px) {
	.site-header { margin: 28px 12px 32px; }
	.site-title { font-size: 27px; }
	:root { --tanzaku-card-min: 280px; }
	.grid-item { padding: 13px 13px 24px; }
	.single-item { margin-right: 0; }
	.footer-widgets { margin-right: 12px; margin-left: 12px; }
	.site-footer p { padding-right: 12px; padding-left: 12px; }
}

@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	.grid-item { transition: none; }
}
