html {
	margin: 0;
	padding: 0;
	overflow-x: clip;
	font-size: clamp(1.2rem, 2.5rem - 2.5svw, 1.4rem);
	scrollbar-gutter: stable;
}

:root {
	--pad: 1rem;
}

body {
	margin: auto;
	padding: 20svh var(--pad) 30svh var(--pad);

	max-width: 21em;

	font-family: 'Georgia', 'Times New Roman', serif;
	line-height: 1.7;
	text-align: justify;
	text-justify: inter-word;
	hyphens: auto;
	overflow-wrap: break-word;
	line-break: loose;

	color: #000;
	background-color: #fff;
}

a {
	color: #000;
}

a:hover {
	color: #fff;
	background-color: #000;
}

ul {
	list-style-type: square;
	color: #151515;
}

@media (prefers-color-scheme: dark) {
	body {
		background-color: #151515;
		color: #fff;
	}

	a {
		color: #fff;
	}

	a:hover {
		color: #151515;
		background-color: #fff;
	}

	ul {
		color: #fff;
	}
}

h1 {
	font-weight: 400;
	font-size: 2.4em;
	line-height: 1;
}

h2 {
	font-style: italic;
	font-weight: 400;
	font-size: 1.8em;
	line-height: 1;
}

h3 {
	font-style: italic;
	font-weight: 400;
	font-size: 1.4em;
	line-height: 1;
}

time {
	font-style: italic;
	font-size: 0.875em;
}

footer {
	font-style: italic;
	font-size: 0.875em;
}

blockquote {
	margin-top: 2em;
	margin-bottom: 2em;
	margin-left: 1em;
	margin-right: 1em;

	line-height: 1.5;
}

blockquote p {
	font-style: italic;
	text-indent: 0;
	margin-right: 1em;
}

blockquote footer {
	font-style: normal;
	text-align: right;
}

figure {
	width: 100svw;
	margin: 0;
	padding: 0;
	margin-block-start: 0;
	margin-block-end: 0;
	margin-inline-start: calc(50% - 50svw);
	margin-inline-end: calc(50% - 50svw);
}

figure img {
	width: 100%;
	max-height: 50svh;
	object-fit: contain;
}

figcaption {
	font-size: 0.875em;
	text-align: center;
}

cite {
	font-style: italic;
}

.no-indent {
	text-indent: 0;
}