@charset "UTF-8";
:root{
	--sansserif: 'Finlandica', -apple-system, BlinkMacSystemFont, 'avenir next', avenir, segoe ui, Ubuntu, roboto, noto, sans-serif;
	--serif: 'Newsreader', Georgia, Cambria, "Times New Roman", Times, serif;
	--mono: 'M PLUS Code Latin', 'Courier New', Courier, monospace;
	--std-text-color-HSL-fragment: 240 9% 6%
	--std-text-color: hsl(var(--std-text-color-HSL-fragment));
	--std-bgr-color-HSL-fragment: 0, 0%, 95%;
	--std-bgr-color: hsl(var(--std-bgr-color-HSL-fragment));
	--weak-color-HSL-fragment: 0 0% 66%;
	--weak-color: hsl(var(--weak-color-HSL-fragment));
	--weak-color-half: hsl(var(--weak-color-HSL-fragment) / .5);
	--weak-color-quarter: hsl(var(--weak-color-HSL-fragment) / .25);
	--accent-color-HSL-fragment: 328 100% 25%;
	--accent-color: hsl(var(--accent-color-HSL-fragment));
	--alt-accent-color-HSL-fragment: 314 34% 23%;
	--alt-accent-color: hsl(var(--alt-accent-color-HSL-fragment));
	--line-height: 1.5;
	--hi-light-1-color-HSL-fragment: 89 98% 60%;
	--hi-light-1-color: hsl(var(--hi-light-1-color-HSL-fragment));
	--hi-light-2-color-HSL-fragment: 56 100% 62%;
	--hi-light-2-color: hsl(var(--hi-light-2-color-HSL-fragment));
	--hi-light-3-color-HSL-fragment: 24 100% 80%;
	--hi-light-3-color: hsl(var(--hi-light-3-color-HSL-fragment));
}

body{
	background-color: var(--std-bgr-color, whitesmoke);
	font-family: var(--sansserif);
	line-height: var(--line-height);
	color: var(--std-text-color, black);
	margin: 0;
	padding: 0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
body > header{
	background-color: var(--weak-color-quarter, silver);
	padding: 1rem;
	border-bottom: 1px solid var(--weak-color-half, gray);
}
body > header > hgroup > h1{
	font-size: 1.5rem;
	font-weight: 400;
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
}
hgroup > p{
	font-size: 1.3em;
	font-weight: 500;
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
	color: var(--accent-color, MediumVioletRed);
}
article{
	padding-left: max(2em, 5vw);
	padding-right: max(2em, 5vw);
	max-width: 1920px;
	margin: 0 auto;
}
article h1{
	font-size: 2em;
	font-weight: 400;
	font-family: var(--serif);
	margin-bottom: .5em;
}
section.disclaimer{
	font-size: .8em;
	font-style: italic;
	padding: 1em;
	background-color: var(--accent-color, MediumVioletRed);
	color: var(--std-bgr-color, whitesmoke);
	margin-bottom: 5em;
}
section.disclaimer > h2{
	margin-top: 0;
	margin-bottom: 0;
	font-style: normal;
	font-weight: 400;
}
section.disclaimer h3{
	font-family: var(--sansserif);
	font-size: 1.2em;
	font-weight: 400;
	margin-top: .5em;
	margin-bottom: 0;
	font-style: normal;
}
section.disclaimer > p{
	margin-top: 0;
	margin-bottom: 1em;
}
section.disclaimer > p:last-child{
	margin-bottom: 0;
}
section.disclaimer > p > a{
	color: var(--std-bgr-color, whitesmoke);
}
section.disclaimer ul{
	margin: 0;
	padding: 0;
}
section.disclaimer ul li{
	list-style-type: none;
	margin-left: 3ch;
	display: inline-block;
}
section.disclaimer ul li a{
	color: currentColor;
}
section.content{
	display: flex;
	column-gap: 3ch;
}
section.content div{
	font-family: var(--serif);
	font-size: 1.2em;
	columns: auto 38ch;
	column-gap: 4ch;
}
section.content div p:first-child{
	margin-top: 0;
}
section.content address{
	font-size: 1.5em;
	font-weight: 400;
	font-style: normal;
	margin-top: 0;
	margin-bottom: .5em;
	padding-left: 2ch;
	border-left: 1px solid var(--weak-color-half, gray);
	position: relative;
}
section.content address span{
	white-space: nowrap;
	display: block;
}
section.content address span.title{
	position: relative;
	top: -.25em;
	font-variant: small-caps;
	margin-bottom: .5em;
	letter-spacing: .02em;
	border-bottom: 1px solid var(--alt-accent-color, RebeccaPurple);
}
pre{
	font-family: var(--mono);
	font-size: 1.5em;
	border: 1px dotted var(--weak-color-half, gray);
}
pre h4{
	font-family: var(--sansserif);
	background-color: var(--weak-color-quarter);
	padding-left: 1em;
	font-size: .8em;
	font-weight: 400;
	margin-top: 0;
	margin-bottom: 0;
	font-style: normal;
}
pre code{
	font-style: normal;
	padding: 1.5em;
	display: block;
}
div.code{
	display: flex;
	justify-content: center;
	column-gap: 3ch;
}
.hi1{
	color: var(--hi-light-1-color, yellow);
}
.hi2{
	color: var(--hi-light-2-color, orange);
}
.hi3{
	color: var(--hi-light-3-color, lightgreen);
	font-weight: 600;
}
