@charset "utf-8";

/****************************************/
/* reset                                */
/****************************************/

*, *::before, *::after
{
	box-sizing: border-box;
	margin: 0;
	outline: none;
	padding: 0;
	user-select: none;
	-webkit-tap-highlight-color: transparent;
}

/****************************************/
/* body                                 */
/****************************************/

body
{
	background-color: #f9fafb;
	font-family: Arial;
	font-size: 1.2em;
}

a
{
	color: #337ab7;
	font-weight: bold;
}

/****************************************/
/* header                               */
/****************************************/

header
{
	align-items: center;
	background-image: url("/public/images/header.jpg");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: cover;
	color: white;
	display: flex;
	flex-direction: column;
	height: 570px;
	justify-content: center;
	letter-spacing: 2px;
	padding: 0 32px 0 32px;
	text-align: center;
	text-shadow: 0 -1px 4px rgba(100,100,100,0.5);
	text-transform: uppercase;margin-bottom: 0.2em;
}

@media (max-width: 768px)
{
	header
	{
		padding: 0 16px 0 16px;
	}
}

header nav
{
	height: 50px;
	left: 0;
	position: fixed;
	text-align: left;
	top: 0;
	width: 100%;
}

header nav img
{
	margin: 1px 0 0 11px;
}

header.Pinned nav
{
	background-color: #8f9da4;
	box-shadow: 0 0 4px rgba(100,100,100,0.5);
	transition: background-color 0.2s ease-in-out 0s;
}

header h1
{
	border-bottom: 2px solid white;
	font-size: 40px;
	line-height: 50px;
	max-width: 1200px;
	padding-bottom: 8px;
	margin-bottom: -60px;
	width: 100%;
}

header.Pinned h1
{
	border: none;
	font-size: 24px;
	font-weight: normal;
	left: 211px;
	line-height: 50px;
	margin: 0;
	max-width: none;
	padding: 0 32px 8px 0;
	position: fixed;
	text-align: right;
	top: 0;
	width: calc(100% - 211px);
}

@media (max-width: 768px)
{
	header.Pinned h1
	{
		padding-right: 16px;
	}
}

@media (max-width: 500px)
{
	header.Pinned h1
	{
		display: none;
	}
}

header h2
{
	font-size: 24px;
	max-width: 1200px;
	padding-top: 96px;
}

/****************************************/
/* main                                 */
/****************************************/

main
{
	background-color: white;
	border-radius: 8px;
	box-shadow: 0 0 4px rgba(100,100,100,0.5);
	margin: -128px auto 0 auto;
	max-width: 1264px;
	padding: 32px;
	width: 100%;
}

@media (max-width: 1264px)
{
	main
	{
		border-radius: 0;
	}
}

@media (max-width: 768px)
{
	main
	{
		margin: -96px auto 0 auto;
		max-width: 1232px;
		padding: 16px;
	}
}

main h3
{
	border-bottom: 2px solid #8f9da4;
	color: #44464d;
	font-size: 1.2em;
	font-style: italic;
	margin-bottom: 1em;
}

main p
{
	line-height: 1.4em;
	margin-bottom: 1em;
	text-align: justify;
}

main p.Preamble
{
	color: #44464d;
	font-weight: bold;
}

main p:last-child
{
	margin-bottom: 0;
}

main figure
{
	margin: 1.5em auto;
}

main figure.Photo,
main figure.Video
{
	max-width: 800px;
}

main iframe
{
	aspect-ratio: 1332/749;
	border: none;
	width: 100%;
}

main img
{
	max-width: 100%;
}

main figcaption
{
	color: #44464d;
	font-size: 0.9em;
	font-style: italic;
	margin-top: 0.5em;
	padding: 0 16px;
	text-align: justify;
}

details
{
	margin-bottom: 0.5em;
}

details:last-of-type
{
	margin-bottom: 1em;
}

summary
{
	background-color: #8f9da4;
	border-radius: 8px;
	color: white;
	cursor: pointer;
	font-weight: bold;
	padding: 8px 16px;
	text-shadow: 0 -1px 4px rgba(100,100,100,0.5);
}

article
{
	margin: 1em 0 1.5em 0;
}

/****************************************/
/* footer                               */
/****************************************/

footer
{
	color: #44464d;
	font-style: italic;
	padding: 16px 32px 48px 32px;
	text-align: center;
}

@media (max-width: 768px)
{
	footer
	{
		padding: 16px 16px 48px 16px;
	}
}

/****************************************/
