:root { color-scheme: light dark; }

@media (prefers-color-scheme: dark) {
	:root {
		--background-color: #313231;
		--primary-text: #E9F0F7;
		--secondary-text: #E9F0F7;
		--blockquote-bg: #6D6E6A;
	}
}

@media (prefers-color-scheme: light) {
	:root {
		--background-color: #fff;
		--primary-text: ##444;
		--secondary-text: black;
		--blockquote-bg: #f6fafb;
	}
}

@font-face {
	font-family: 'Sabon LT Std';
	src: url('font/SabonLTStd-Bold.woff2') format('woff2'),
		url('font/SabonLTStd-Bold.woff') format('woff');
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Sabon LT Std';
	src: url('font/SabonLTStd-BoldItalic.woff2') format('woff2'),
		url('font/SabonLTStd-BoldItalic.woff') format('woff');
	font-weight: bold;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Sabon LT Std';
	src: url('font/SabonLTStd-Italic.woff2') format('woff2'),
		url('font/SabonLTStd-Italic.woff') format('woff');
	font-weight: normal;
	font-style: italic;
	font-display: swap;
}

@font-face {
	font-family: 'Sabon LT Std';
	src: url('font/SabonLTStd-Roman.woff2') format('woff2'),
		url('font/SabonLTStd-Roman.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

body {
	margin:0 auto; padding:0;
	background: var(--background-color) url(/images/website-background.png) no-repeat;
	color: var(--primary-text);
	font: 100%/150% 'Sabon LT Std','Georgia','Times New Roman',serif;
	letter-spacing: .025em;
	text-align:center;
}

a:link, a:visited {
	color: var(--primary-text);
	font-weight:bold;
}

a:hover { color:silver; border-bottom:none; }

blockquote {
	border-left: 1px dashed black;
	padding: .25em 0 .25em 2em;
	font-style: italic;
	background-color: var(--blockquote-bg);
}


header {
	font-size: 400%;
	line-height: 345%;
	font-weight: bold;
}

header a:link, header a:visited {
	text-decoration: none;
}

nav {
	margin: 0 0 3em 0;
	grid-column: 1 / 3;
}

nav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 0; margin: 0;
	position: relative;
	line-height: 3em;
}

nav li {
	list-style: none;
}

nav li a {
	padding: .75em 2em; margin: 0.5em;
	background-color: rgba(120, 161, 233, 0.12);
	border-radius: .6em;
	width: 5em;
}

nav li a:link {
	text-decoration: none;
}

article.content section a:link, article.micropost section a:link {
	text-decoration: none;
	color: var(--secondary-text);
}

article.content ul {
	list-style: circle;
	padding-left: 3em;
}

article.content ul li {
	padding-bottom: .5em;
}

li a:hover, article.content section a:hover, article.micropost section a:hover, section.footer div.links a:hover {
	background-color: rgba(120, 161, 233, 0.4) !important;
	color: var(--primary-text) !important;
}

article.content section a:hover, article.micropost section a:hover {
	border-radius: .1em;
}

section.footer {
	margin: 8em;
	font-size: 75%;
}

article.content section {
	padding-top: 1em; margin: auto;
	text-align: left;
	font-size: 113%;
	padding-bottom: 4em;
	overflow: hidden;
	max-width: 40em;
}

article.content section.related {
	padding: 0;
}

article.content section p:nth-child(n+4) {
	text-indent: 1.25em;
}

article.content section p:nth-child(3):first-letter {
	color: rgb(122, 143, 180);
	float: left;
	font-size: 360%;
	font-weight: bold;
	line-height: .8em;
	padding-top: .2em;
	padding-right: .15em;
	padding-left: .15em;
	background-color: rgba(120, 161, 233, .1);
	border-radius: .12em;
	margin-right: .2em;
}

div.related-header {
	text-transform: uppercase;
	font-size: 73%;
	margin-top: 2em;
	font-weight: bold;
	border-bottom: 1px dashed rgba(120, 161, 233, 0.4);
	margin-bottom: 1.25em;
	line-height: .9em;
}

article.micropost section {
	padding-top: 1em; margin: auto;
	text-align: left;
	font-size: 80%;
	padding-bottom: 4em;
	overflow: hidden;
}

article.micropost h1 {
	font-size: 110%;
}

article.micropost section p:nth-child(n+4) {
	text-indent: 1.25em;
}

article.micropost section p:nth-child(3):first-letter {
	color: rgb(122, 143, 180);
	float: left;
	font-size: 360%;
	font-weight: bold;
	line-height: .8em;
	padding-top: .2em;
	padding-right: .15em;
	padding-left: .15em;
	background-color: rgba(120, 161, 233, .1);
	border-radius: .12em;
	margin-right: .2em;
}

section ul {
	margin: 0; padding: 0;
	text-align: left;
}

section.archive ul.item-list {
	margin: 2em 0 0 2em;
}

section.archive ul.item-list li {
	padding-top: 2em;
}

h1 {
	font-size: 180%;
	line-height: 1.3em;
	margin-bottom: 0.1em;
}

div.post-date {
	font-size: 73%;
	text-transform: uppercase;
	margin-bottom: 2em;
}

h2 {
	font-size: 130%;
	margin-top: 2.5em;
	border-top: 1px solid lightgrey;
	border-bottom: 1px solid lightgrey;
	line-height: 2.5em;
	padding-left: .5em;
}

section ul.tag-list, section.archive ul.all-tags {
	display: flex;
	flex-wrap: wrap;
	margin-top: .7em;
}

ul.tag-list li a, section.footer div.links a, .FotomotoBar li a {
	padding: .4em .5em !important;
	background-color: rgba(120, 161, 233, 0.12);
	border-radius: .35em;
	font-size: 83%;
	text-align: center;
	margin-right: .5em !important;
	text-decoration: none;
}

section ul.tag-list li, section.archive li, ul.pinboard-list li {
	list-style: none;
	margin-bottom: .4em;
	padding-top: 0 !important;
}

section.archive ul.all-tags {
	justify-content: space-between;
}

section.archive ul.all-tags li a {
	padding: .5em;
	background-color: rgba(120, 161, 233, 0.12);
	border-radius: .4em;
	font-size: 83%;
	text-align: center;
	margin-right: .3em;
}

section.archive ul.all-tags li {
	margin-top: .1em;
}

ul.pinboard-list, ul.tag-list {
	padding-left: 0 !important;
}

ul.pinboard-list li {
	font-size: .75em;
}

ul.pinboard-list span.date {
	font-size: .5em;
	padding-right: 1em;
}

article pre {
	background-color: rgba(120, 161, 233, .1);
	border-left: 1em solid rgb(122, 143, 180);
	padding: 2em;
	border-radius: .6em;
	overflow: scroll;
	clear: both;
	margin: 1em 0;
}

article img {
	display: block;
	margin: 0 auto;
	border: 10px solid rgba(120, 161, 233, 0.2);
	border-radius: 1em;
	max-width: 80%;
	max-height: 35em;
}

figcaption {
	max-width: 50%;
	text-transform: uppercase;
	font-size: 80%;
	text-align: center;
	margin: auto;
	padding: 3em 0;
	line-height: 2em;
}

div.content {
	display: block;
	justify-content: center;
}

section.blog {
	max-width: 50em;
	margin: auto;
	padding: 0 1.25em;
}

section.micro {
	margin: 8em 1.25em;
}

/* Index page image gallery */

.index-gallery .column img {
	margin-top: 3px;
	vertical-align: middle;
	border-radius: 15px;
	border: 2px solid rgba(255,255,255,.25);
	object-fit: contain;
	max-height: 250px;
}

.index-gallery .column img:hover {
	border: 2px solid rgb(120, 161, 233);
}

.index-gallery .column {
	padding: 0 4px;
	margin: 0 auto;
	display: inline-block;
}

/* Image Gallery */

.gallery {
	display: flex;
	flex-wrap: wrap;
	padding: 0 4px;
	margin: auto;
	width: 80%;
}

/* Create four equal columns that sits next to each other */
.gallery .column {
	flex: 20%;
	max-width: 25%;
	padding: 0 4px;
	margin: 0 auto;
}

.gallery .column img {
	margin-top: 3px;
	vertical-align: middle;
	width: 100%;
	max-width: none;
	max-height: none;
	border-radius: 15px;
	border: 2px solid rgba(255,255,255,.25);
}

.gallery .column img:hover {
	border: 2px solid rgb(120, 161, 233);
}

/* Responsive layout - makes a two column-layout instead of four columns */
@media screen and (max-width: 800px) {
	.gallery .column, .index-gallery .column {
		flex: 50%;
		max-width: 48%;
	}
}

/* Responsive layout - makes the two columns stack on top of each other instead of next to each other */
@media screen and (max-width: 600px) {
	.gallery .column, .index-gallery .column {
		flex: 100%;
		max-width: 100%;
	}
}

div.content-wrapper div.banner {
	max-width: 40em;
	border-radius: 5px;
	padding: 20px;
	font-style: italic;
	margin: auto;
}

div.content-wrapper div.banner-info {
	background-color: rgba(120, 161, 233, .1);
}

div.content-wrapper div.banner-warning {
	background-color: rgba(233, 161, 120, .1);
}
