.content {
	display: flex;
	flex-wrap: wrap;
	margin: var(--unit) calc(-1 * var(--unit)) 0;
}

.content--404 {
	margin-top: calc(var(--unit) * 2);
}

.content > .content_title,
.content > .content_subtitle {
	margin: 0 auto;
	padding: 0 var(--unit);
	text-align: center;
}

.content > .content_title,
.content > .content_subtitle {
	width: 100%;
	font-size: 2rem;
}

.content > .content_title {
	text-transform: uppercase;
}

.content > .content_title > *,
.content > .content_subtitle > * {
	display: block;
	margin: 0 auto;
	/* padding: 0 var(--unit); */
}

.content_left,
.content_right {
	display: flex;
	flex-direction: column;
	width: 25%;
	padding: var(--unit) var(--unit) 0;
}

.content_left--hide {
	display: none;
}

.content_left-top {
	flex: 1;
}

.content_right-top {
	flex: 1;
}

.content_left-bottom,
.content_right-bottom {
	display: flex;
}

.content_left-top > :first-child,
.content_right-top > :first-child {
	position: sticky;
	/* margin + (header + search)) */
	top: calc(var(--two-units) + var(--header-opened));
	border-top: 1px solid currentColor;
}

.content_left-top > :first-child:empty,
.content_right-top > :first-child:empty {
	border-top: none;
}

.content_full {
	width: 100%;
	padding: var(--unit) var(--unit) 0;
	font-size: 1.5rem;
}

.content_center {
	width: 50%;
	padding: var(--unit) var(--unit) 0;
	font-size: 1.5rem;
}

.content_center--fill {
	width: 75%;
}

.content_left--hide+.content_center--fill {
	width: 100%;
}

.content_full a,
.content_center a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 3px;
}

.content_full > *,
.content_center > * {
	max-width: 700px;
	margin: 0 auto;
}

.content_center--fill > * {
	max-width: none;
}

.content_full > *:not(:last-child),
.content_center > *:not(:last-child) {
	margin-bottom: var(--two-units);
}

.content_full > h2,
.content_center > h2 {
	font-size: 2rem;
	text-align: center;
	text-transform: uppercase;
}

.content_full > :first-child:not(.audio):not(.detail):not(.empty):not(.gallery):not(.video):not(.lister):not(.library_links),
.content_center > :first-child:not(.audio):not(.detail):not(.empty):not(.gallery):not(.video):not(.lister):not(.library_links) {
	margin-top: -0.15em;
}

.content_details--no-border {
	border-top: 0 !important;
}

.content_detail {
	padding: var(--half-unit) 0;
	border-bottom: 1px solid currentColor;
}

.content_detail:empty {
	display: none;
}

.content_detail a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 2px;
}

.content_detail > :last-child {
	margin-bottom: -1px;
}

.empty::before {
	content: "\00a0";
}

/* Images */

.gallery_images {
	display: flex;
	align-items: flex-start;
	overflow-x: auto;
	overflow-y: hidden;
	scroll-behavior: smooth;
	scroll-snap-type: x mandatory;
	position: relative;
	/* background: white; */
}

.gallery_images > a {
	width: 100%;
	height: 100%;
	position:absolute;
	top: 0;
	left: 0;
}

/* hack for # nav */
.gallery_images > picture {
	box-sizing: content-box;
	width: 100%;
	scroll-snap-align: center;
	margin-top: calc(var(--two-units) * -1);
	padding-top: var(--two-units);
}

.gallery_images > picture:not(:first-child) {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	position: absolute;
	top: 0;
}

.gallery_images > picture:first-child > img {
	width: 100%;
}

.image > picture,
.image > picture > img {
	width: 100%;
}

.gallery_footer,
.image_description {
	padding-top: var(--half-unit);
	color: rgb(140, 140, 140);
	font-size: 0.75rem;
}

.gallery_description p,
.image_description p {
	display: inline-block;
}

/* Video */

.video {
	position: relative;
}

.video::before {
	content: "";
	display: block;
}

.video--square::before {
	padding-top: 100%;
}

.video--landscape::before {
	padding-top: 56.25%;
}

.video--landscape-4-3::before {
	padding-top: 75%;
}

.video--portrait::before {
	padding-top: 177.777%;
}

.video--portrait-3-4::before {
	padding-top: 133.333%;
}

.video > iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/* Audio */

.audio > audio,
.audio > iframe {
	display: block;
	width: 100%;
}

.audio_description {
	padding-top: var(--half-unit);
	color: rgb(140, 140, 140);
	font-size: 1rem;
}

/* Accordion */

.detail {
	border-bottom: 1px solid currentColor;
	font-size: 1rem;
}

.detail + .detail {
	margin-top: calc(-1 * var(--two-units) - 1px);
}

.detail > summary {
	/* display: flex;
	justify-content: space-between; */
	padding: var(--half-unit) 0;
	margin-bottom: -1px;
	position: relative;
	border-top: 1px solid currentColor;
	list-style-type: none;
	text-transform: uppercase;
	cursor: pointer;
	user-select: none;
}

.detail > summary::-webkit-details-marker {
	display: none;
}

.detail > summary::after {
	content: "\2198";
	float: right;
}

.detail[open] > summary::after {
	content: "\2197";
}

.detail > summary:focus {
	outline: 0;
}

.gallery-text {
	display: flex;
	align-items: flex-start;
	margin-top: var(--half-unit);
	padding-bottom: var(--half-unit);
}

.gallery-text > *:first-child {
	width: 50%;
}

.gallery-text > :first-child {
	padding-right: var(--half-unit);
}

.gallery-text > :last-child {
	padding-left: var(--half-unit);
}

.detail > p:first-child {
	padding-top: var(--half-unit);
}

.detail > p:last-child {
	padding-bottom: var(--half-unit);
}

.detail > summary+p {
	margin-top: var(--half-unit);
}

/* Quote */

.quote_content {
	font-size: 2rem;
	font-style: italic;
	text-align: center;
}

.quote_content::before {
  content: open-quote;
}

.quote_content::after {
  content: close-quote;
}

.quote_author {
	padding-top: var(--half-unit);
	color: rgb(140, 140, 140);
	font-size: 1rem;
	text-align: center;
}

.quote_author::before {
  content: "— ";
}

.logos_title {
	margin: var(--half-unit) 0;
	text-transform: uppercase;
}

.logos {
	display: flex;
	flex-wrap: wrap;
	margin: var(--half-unit) calc(-1 * var(--half-unit)) 0;
}

.logos_title + .logos {
	margin-top: var(--unit);
}

.logos > * {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 25%;
	margin-bottom: var(--unit);
	padding: 0 var(--half-unit);
}

.logos img {
	max-width: 100%;
}

@media (max-width: 1279px) {
	.content_left {
		width: 33.333%;
	}

	.content_center,
	.content_center--fill {
		width: 66.666%;
	}

	.content_right {
		display: none;
	}
}

@media (max-width: 1023px) {
	.content {
		margin: var(--half-unit) calc(-1 * var(--half-unit)) 0;
	}

	.content_left,
	.content_full,
	.content_center,
	.content_right {
		padding: var(--half-unit) var(--half-unit) 0;
	}

	/* .content_left,
	.content_center,
	.content_center--fill {
		width: 50%;
	} */

	.content > .content_title,
	.content > .content_subtitle {
		padding: 0 var(--half-unit);
	}

	.content_left-top > :first-child,
	.content_right-top > :first-child {
		top: calc(var(--unit) + var(--header-opened));
	}

	.detail + .gallery {
		margin-top: calc(-1 * var(--unit) - 1px);
	}

	.gallery_images > picture {
		margin-top: calc(-1 * var(--unit) - var(--header-opened));
		padding-top: calc(var(--unit) + var(--header-opened));
	}
}

@media (max-width: 768px) {
	.content_left,
	.content_center,
	.content_right {
		width: 100%;
	}

	.content_center > * {
		max-width: none;
	}

	.content_left + .content_center {
		padding-top: var(--two-units);
	}

	.content_right {
		display: block;
		flex-direction: row;
	}

	.content_left-bottom,
	.content_right-top {
		display: none;
	}

	.logo {
		width: 33.333%;
	}
}

@media (max-width: 600px) {
	.content_left--hide {
		display: flex;
	}
}

@media (max-width: 480px) {
	.logo {
		width: 50%;
	}
}