/* Import Partials */
@import "general/constants.css";
@import "general/defaults.css";
@import "patterns/site-header.css";
@import "patterns/site-navigation.css";
@import "patterns/page-header.css";
@import "patterns/site-footer.css";
@import "patterns/list_accordions.css";
@import "patterns/container_iframe.css";
@import "patterns/table_icons.css";
@import "patterns/list_releases.css";
@import "patterns/time_calendar.css";
/* Import Custom Element and Web Component CSS */
@import "custom-elements/screenreader-only.css";
/* Import external library CSS */
@import "lib/prism-syntax-highlight.css";

html {
	block-size: 100%;
}

body {
	display: flex;
	flex-direction: column;
	justify-content: stretch;
	block-size: 100%;
}

body > header {
	flex-grow: 0;
	flex-shrink: 0;
	padding-block: calc(var(--spacing-container-inner) * 2);
	padding-inline: var(--spacing-container-inner);
}

body > header a {
	display: block;
	padding-block-start: 70px;
	background-image: url(../img/logo_vanilla.svg#with-tagline-animated-inverted);
	background-repeat: no-repeat;
	background-position: 50% 0;
	background-size: 200px 70px;
	text-decoration: none;
	font-weight: 400;
	font-size: 2rem;
	text-align: center;
	color: rgb(204,196,189);
}

@media (min-width: 640px) {
	body > header a {
		min-block-size: 70px;
		padding-block-start: 0;
		padding-inline-start: 220px;
		background-position: 0 50%;
		line-height: 70px;
		text-align: start;
	}
}

body > nav {
	flex-grow: 0;
	flex-shrink: 0;
	padding-inline: var(--spacing-container-inner);
}

body > :is(main, footer) {
	padding: var(--spacing-container-inner);
}

main {
	flex-grow: 1;
}

main > header {
	padding-block-start: 2rem;
	padding-block-end: 2rem;
}

article {
	padding-block: 4rem;
}

article > section + section {
	margin-block-start: 4rem;
}

body > footer {
	flex-grow: 0;
	flex-shrink: 0;
}

code {
	font-size: 1rem;
	color: #a33;
	padding: 0.25rem 0.25rem;
	background-color: #fafafa;
	border-radius: 0.125rem;
}