/*! modern-normalize v2.0.0 | MIT License | https://github.com/sindresorhus/modern-normalize */

/*
Document
========
*/

/**
Use a better box model (opinionated).
*/

*,
::before,
::after {
	box-sizing: border-box;
}

html {
	/* Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3) */
	/*
	font-family:
		system-ui,
		'Segoe UI',
		Roboto,
		Helvetica,
		Arial,
		sans-serif,
		'Apple Color Emoji',
		'Segoe UI Emoji';
	*/
	line-height: 1.5; /* 1. Correct the line height in all browsers. */
	/* NOTE adjusted for WCAG */
	-webkit-text-size-adjust: 100%; /* 2. Prevent adjustments of font size after orientation changes in iOS. */
	/* TODO upstream remove -moz-tab-size */
	tab-size: 4; /* 3 */
}

/*
Sections
========
*/

body {
	margin: 0; /* Remove the margin in all browsers. */
}

/*
Grouping content
================
*/

/**
1. Add the correct height in Firefox.
2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
*/

hr {
	height: 0; /* 1 */
	color: inherit; /* 2 */
}

/*
Text-level semantics
====================
*/

/**
Add the correct text decoration in Chrome, Edge, and Safari.
*/

abbr[title] {
	text-decoration: underline dotted;
}

/**
Add the correct font weight in Edge and Safari.
*/

b,
strong {
	font-weight: bolder;
}

/**
1. Improve consistency of default fonts in all browsers. (https://github.com/sindresorhus/modern-normalize/issues/3)
2. Correct the odd 'em' font sizing in all browsers.
*/

code,
kbd,
samp,
pre {
	/*
	font-family:
		ui-monospace,
		SFMono-Regular,
		Consolas,
		'Liberation Mono',
		Menlo,
		monospace; /* 1 */
	font-family: monospace;
	font-size: 1em; /* 2 */
}

/**
Add the correct font size in all browsers.
*/

small {
	font-size: 80%;
}

/**
Prevent 'sub' and 'sup' elements from affecting the line height in all browsers.
*/

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/*
Tabular data
============
*/

/**
1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
2. Correct table border color inheritance in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
*/

table {
	text-indent: 0; /* 1 */
	border-color: inherit; /* 2 */
}

/*
Forms
=====
*/

/**
1. Change the font styles in all browsers.
2. Remove the margin in Firefox and Safari.
*/

button,
input,
optgroup,
select,
textarea {
	font-family: inherit; /* 1 */
	font-size: 100%; /* 1 */
	line-height: 1.15; /* 1 */
	margin: 0; /* 2 */
}

/**
Remove the inheritance of text transform in Edge and Firefox.
*/

button,
select {
	text-transform: none;
}

/**
Correct the inability to style clickable types in iOS and Safari.
*/

button,
[type='button'],
[type='reset'],
[type='submit'] {
	-webkit-appearance: button;
}

/**
Remove the inner border and padding in Firefox.
*/

::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
Restore the focus styles unset by the previous rule.
*/

:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
Remove the additional ':invalid' styles in Firefox.
See: https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737
*/

:-moz-ui-invalid {
	box-shadow: none;
}

/**
Remove the padding so developers are not caught out when they zero out 'fieldset' elements in all browsers.
*/

legend {
	padding: 0;
}

/**
Add the correct vertical alignment in Chrome and Firefox.
*/

progress {
	vertical-align: baseline;
}

/**
Correct the cursor style of increment and decrement buttons in Safari.
*/

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
	height: auto;
}

/**
1. Correct the odd appearance in Chrome and Safari.
2. Correct the outline style in Safari.
*/

[type='search'] {
	-webkit-appearance: textfield; /* 1 */
	outline-offset: -2px; /* 2 */
}

/**
Remove the inner padding in Chrome and Safari on macOS.
*/

::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
1. Correct the inability to style clickable types in iOS and Safari.
2. Change font properties to 'inherit' in Safari.
*/

::-webkit-file-upload-button {
	-webkit-appearance: button; /* 1 */
	font: inherit; /* 2 */
}

/*
Interactive
===========
*/

/*
Add the correct display in Chrome and Safari.
*/

summary {
	display: list-item;
}
/**
 * personal stylesheet
 */

html, body, div, object, iframe, blockquote, form, fieldset, legend, label, table, header, footer, nav, section, figure {
	margin: 0;
	padding: 0;
}

/**
 * generated by https://wakamaifondue.com
 * minified w/ no feature settings b/c we don't need them right now
 */
@font-face {
	font-family: "Source Sans 3 VF";
	src: url("/static/SourceSans3.052-VF-Upright.otf.woff2") format("woff2-variations");
	font-weight: 200 900;
	font-style: normal;
}

@font-face {
	font-family: "Source Sans 3 VF";
	src: url("/static/SourceSans3.052-VF-Italic.otf.woff2") format("woff2-variations");
	font-weight: 200 900;
	font-style: italic;
}

body {
	margin: 0 auto;
	font-family: "Source Sans 3 VF", system-ui, sans-serif;
	background: #000;
	color: #ccc;
}

dt {
	font-weight: 500;
}

dd {
	margin-left: 2em;
	margin-bottom: 0.5em;
}

a {
	color: #d73;
}

ul {
	padding-left: 1.25em;
}

pre {
	line-height: normal;
}

@media (pointer: coarse) {
	.list-pad-coarse-ptr li {
		margin-top: 0.25em;
		margin-bottom: 0.25em;
	}
}

.bi {
	display: inline-block;
	vertical-align: -.125em;
}

.content {
	width: calc(100% - 1.5em);
	max-width: 50em;
	margin: 1em auto;
}

.content-wide {
	width: calc(100% - 1.5em);
	margin: 1em auto;
}

footer p {
	text-align: center;
}

del {
	opacity: 69%;
}

blockquote {
	border-left: 3px solid #ef9f3e;
	margin: 1rem 0;
	padding: 0.4rem 0 0.4rem calc(1.5rem - 3px);

	*:first-child {
		margin-top: 0;
	}

	*:last-child {
		margin-bottom: 0;
	}
}

/* summary styles cribbed from seirdy */

summary {
	padding: 0.25em 0.375em;
	border: 1px solid currentcolor;
}

summary:focus {
	outline: 2px solid currentcolor;
}

/* PhotoSwipe-specific */

.gallery-row {
	display: flex;
	flex-flow: row wrap;
	line-height: 0;
	justify-content: center;
}

.gallery .thumb {
	margin: 4px;
}

.gallery-row.large .thumb img {
	height: clamp(64px, round(down, calc(min(100vh, 100vw) / 2.5), 4px), 400px);
}
.gallery-row .thumb img {
	height: clamp(64px, round(down, calc(min(100vh, 100vw) / 4), 4px), 256px);
}
.gallery-row.small .thumb img {
	height: clamp(40px, round(down, calc(min(100vh, 100vw) / 6), 4px), 160px);
}

.gallery .thumb img:hover {
	box-shadow: 0 0 3px 3px #f93;
}
