/* ---------------------------------------------------------------------------------------------

	Theme Name: Bonniers Konsthall
	Text Domain: bonniers-konsthall
	Version: 1.0.25
	Description: WordPress-tema för Bonniers Konsthall.
	Author: Divide & Conquer
	Author URI: https://divideconquer.se


/* ---------------------------------------------------------------------------------------------


	Terms of Content

	0.	CSS Reset
	1.	Document Setup
	2.  Element Base
	3.	Helper Classes
	X.	Site Header
	X.  Sub Page
	X.  Template: Front Page
	X.  Template: Visit Us
	X.  Template: Contact Us
	X.  Template: FAQ
	X.  Template: Become a Member
	X.	[Post Type]: Archive
	X.	[Post Type]: Single
	X.	Entry Content
	X.	Comments
	X.	Site Pagination
	X.	Site Footer
	X.	Media Queries


/* --------------------------------------------------------------------------------------------- */


/* --------------------------------------------------------------------------------------------- */
/*	0. CSS Reset
/* --------------------------------------------------------------------------------------------- */


html, body {
	border: none;
	margin: 0;
	padding: 0;
}

h1, h2, h3, h4, h5, h6, p, blockquote, address, big, cite, code, em, font, img, small, strike, sub, sup, li, ol, ul, fieldset, form, label, legend, button, table, caption, tr, th, td {
	border: none;
	font-size: inherit;
	line-height: inherit;
	margin: 0;
	padding: 0;
	text-align: inherit;
}

blockquote:before,
blockquote:after {
	content: "";
}


/* --------------------------------------------------------------------------------------------- */
/*	1. Document Setup
/* --------------------------------------------------------------------------------------------- */


html {
	font-size: 62.5%; /* 1rem = 10px */
}

body {
	background: #858789;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
	box-sizing: border-box;
	color: #000;
	font-family: 'benton-sans-compressed', Impact, -apple-system, Helvetica, sans-serif; 
	font-size: 1.9rem; 
	text-align: left;
}

.site-wrapper {
	background: #fff;
	overflow: auto;
	position: relative;
	z-index: 1;
}

*,
*:before,
*:after {
		-webkit-box-sizing: inherit;
		-moz-box-sizing: inherit;
	box-sizing: inherit;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	word-break: break-word;
}

::selection {
	background: #2D3741;
	color: #fff;
}


/* Clearing ---------------------------------- */


.clear:after,
.group:after,
.entry-content:after {
	clear: both;
	content: "";
	display: block;
}


/* Base Transitions ------------------------------- */

a,
path {
	transition: all .1s linear;
}


/* Screen Reader Text ------------------------ */


.screen-reader-text {
	clip: rect( .1rem, .1rem, .1rem, .1rem );
	height: .1rem;
	overflow: hidden;
	position: absolute !important;
		left: -999999rem;
	width: .1rem;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: .3rem;
	box-shadow: 0 0 .2rem .2rem rgba( 0, 0, 0, 0.6 );
	clip: auto !important;
	display: block;
	font-size: 1.4rem;
	font-weight: 700;
	height: auto;
	left: .5rem;
	line-height: normal;
	padding: 1.5rem 2.3rem 1.4rem 2.3rem;
	text-decoration: none;
	top: .5rem;
	width: auto;
	z-index: 100000;
}


/* Accessibility Settings ---------------------------------- */


@media ( prefers-reduced-motion: reduce ) {
	* {
		animation-duration: 0s !important;
		transition-duration: 0s !important;
	}
}


/* --------------------------------------------------------------------------------------------- */
/*	2. Element Base
/* --------------------------------------------------------------------------------------------- */


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

h1, h2, h3, h4, h5, h6 {
	hanging-punctuation: first;
	line-height: 1;
	text-transform: uppercase;
}

p {
	line-height: 1.3;
	margin: 0 0 1.25em 0;
}

em,
i,
q,
dfn {
	font-style: italic;
}

b,
strong {
	font-weight: 700;
}

del {
	color: #858789;
}	

ins {
	text-decoration: underline;
}

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

sup { top: -0.5em; }
sub { bottom: -0.25em; }

abbr,
acronym {
	cursor: help;
}

address {
	font-family: 'benton-modern', Georgia, serif;
	line-height: 1.3;
	margin: 0 0 2rem 0;
}

hr {
	border: none;
	border-top: .1rem solid #000;
	margin: 2em 0;
}

a {
	color: inherit;
	text-decoration: underline;
}


/* Lists ------------------------------------- */


ul,
ol {
	margin: 0 0 2rem 3rem;
}

ul { list-style: disc; }
ul ul { list-style: circle; }
ul ul ul { list-style: square; }

ol { list-style: decimal; }
ol ol { list-style: lower-alpha; }
ol ol ol { list-style: lower-roman; }

li {
	margin: 1rem 0;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 2rem;
}

.reset-list-style,
.reset-list-style ul,
.reset-list-style ol {
	list-style: none;
	margin: 0;
}

.reset-list-style li {
	margin: 0;
}

dt {
	font-weight: 700;
}

dd + dt {
	margin-top: 1.5rem;
}


/* Quotes ------------------------------------ */


blockquote {
	margin: 0;
	padding: 0 0 0 3rem;
}

cite {
	font-style: normal;
}


/* Code -------------------------------------- */


pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	background: #F0F1F2;
	border-radius: .2rem;
	color: #000;
	font-family: monospace;
	font-size: 1em;
	padding: .4rem .6rem;
}


/* Media ------------------------------------- */


figure {
	margin: 0;
}

svg {
	display: block;
	max-width: 100%;
}

img,
embed,
iframe,
object {
	display: block;
	height: auto;
	max-width: 100%;
}

div.wp-caption {
	display: block;
	margin-bottom: 3rem;
}

figcaption,
.wp-caption-text,
.wp-block-image figcaption {
	color: #858789;
	display: block;
	font-size: 1.4rem;
	margin-top: .5em;
}


/* GALLERIES */

.gallery {
	display: flex;
	flex-wrap: wrap;
	margin: 3em 0 3em -.8em;
	width: calc( 100% + 1.6em );
}

.gallery-item {
	margin: .8em 0;
	padding: 0 .8em;
}

.gallery-item img,
.gallery-item {
	display: block;
	width: 100%;
}

.gallery-caption {
	display: block;
	margin-top: .8em;
}


/* Fieldset ---------------------------------- */

fieldset {
	border: .1rem solid #ddd;
	padding: 2rem;
}

fieldset legend {
	font-family: 'benton-sans-compressed', Impact, -apple-system, Helvetica, sans-serif; 
	font-size: 1.8rem;
	padding: 0 1rem;
	text-transform: uppercase;
}


/* Inputs ------------------------------------ */

input,
select,
textarea,
button,
.button,
.faux-button,
.wp-block-button__link {
	font-family: 'benton-modern', -apple-system, Helvetica, sans-serif;
}

label {
	display: block;
	font-family: 'benton-modern', Georgia, serif;
	font-size: 1.6rem;
	margin: 0 0 .5rem 0;
}

label.inline {
	display: inline;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="week"],
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="color"],
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	background: transparent;
	border: .1rem solid #ddd;
	border-radius: 0;
	box-shadow: none;
	color: inherit;
	display: block;
	font-size: 1.6rem;
	margin: 0;
	max-width: 100%;
	outline: none;
	padding: 1.6rem 1.8rem;
	width: 100%;
}

textarea {
	height: 12rem;
	line-height: 1.5;
	width: 100%;
}

select {
	background: url( ./assets/images/icons/arrows/chevron-down-black.svg ) no-repeat;
	background-position: calc( 100% - 1.8rem ) center;
}

input::-webkit-input-placeholder { color: #83868C; }
input:-ms-input-placeholder { color: #83868C !important; /* Req by IE11 */ }
input::-moz-placeholder { color: #83868C; }

input[type="search"]::-webkit-search-decoration,
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-results-button,
input[type="search"]::-webkit-search-results-decoration {
	display: none;
}

button,
.button,
.faux-button,
.wp-block-button__link,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	background-color: #000;
	border: none;
	border-radius: 0;
	color: #fff;
	cursor: pointer;
	display: inline-block;
	font-size: 1.6rem;
	font-weight: 400;
	margin: 0;
	padding: 1.6rem 2.4rem;
	text-align: center;
	text-decoration: none;
	transition: background-color .15s linear;
}

button:focus {
	outline: none;
}

button:disabled,
.button.disabled,
.faux-button.disabled,
.wp-block-button__link.disabled,
input[type="button"]:disabled,
input[type="reset"]:disabled,
input[type="submit"]:disabled {
	background: #858789;
	pointer-events: none;
}

button:hover,
.button:hover,
.faux-button:hover,
.wp-block-button__link:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
button:focus,
.button:focus,
.faux-button:focus,
input[type="button"]:focus,
input[type="reset"]:focus,
input[type="submit"]:focus {
	background-color: #333;
}

.button-has-icon {
	align-items: center;
	display: flex;
	justify-content: center;
}

.button-has-icon span + span {
	margin-left: 1rem;
}


/* Tables ------------------------------------ */


table {
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;
	font-family: 'benton-modern', Georgia, serif;
	font-size: inherit;
	margin-bottom: 3rem;
	max-width: 100%;
	overflow: hidden;
	table-layout: fixed;
	width: 100%;
}

th,
td {
	line-height: 1.3;
	margin: 0;
	overflow: visible;
	padding: 0;
}

caption {
	border-bottom: .1rem solid #ddd;
	font-weight: 700;
	padding: 0;
	text-align: center;
}

thead {
	vertical-align: bottom;
	white-space: nowrap;
}

th {
	font-style: italic;
	font-weight: 400;
}

/* Animations ------------------------------- */

@keyframes spin {
    0% 		{ transform: rotate( 0deg ); }
    100% 	{ transform: rotate( 360deg ); }
}

@keyframes fadeInUp {
	0% {
		opacity: 0;
		transform: translateY( 5rem );
	}
	100% {
		opacity: 1;
		transform: translateY( 0 );
	}
}


/* --------------------------------------------------------------------------------------------- */
/*	3. Helper Classes
/* --------------------------------------------------------------------------------------------- */


/* Layout ------------------------------- */


.display-block { display: block; }
.display-flex { display: flex; }
.display-inline { display: inline; }

.no-margin { margin: 0; }
.no-padding { padding: 0; }

.screen-height {
	min-height: 100vh;
}

.screen-width {
	position: relative;
		left: calc( 50% - 50vw );
	width: 100vw;
}

.center-vertically {
	align-items: center;
	display: flex;
	justify-content: center;
}

.no-scrollbars::-webkit-scrollbar { display: none; }


/* Sections ------------------------------- */

section {
	padding: 4rem 0;
	width: 100%;	
}

.section-inner {
	margin: 0 auto;
	max-width: 168rem;
	width: calc( 100% - 4rem );
}

.section-inner.max-percentage {
	width: 100%;
}

.section-inner.thin { max-width: 58rem; } /* Should match the entry-content width (and $content_width variable) */
.section-inner.small { max-width: 73rem; }
.section-inner.medium { max-width: 104rem; }

.section-inner.no-margin { margin: 0; }


/* Padding Helpers ------------------------------- */

.mpad-all-0 { padding: 0; }
.mpad-u-0, .mpad-v-0 { padding-top: 0; }
.mpad-d-0, .mpad-v-0 { padding-bottom: 0; }
.mpad-l-0, .mpad-h-0 { padding-left: 0; }
.mpad-r-0, .mpad-h-0 { padding-right: 0; }

.mpad-all-5 { padding: .5rem; }
.mpad-u-5, .mpad-v-5 { padding-top: .5rem; }
.mpad-d-5, .mpad-v-5 { padding-bottom: .5rem; }
.mpad-l-5, .mpad-h-5 { padding-left: .5rem; }
.mpad-r-5, .mpad-h-5 { padding-right: .5rem; }

.mpad-all-10 { padding: 1rem; }
.mpad-u-10, .mpad-v-10 { padding-top: 1rem; }
.mpad-d-10, .mpad-v-10 { padding-bottom: 1rem; }
.mpad-l-10, .mpad-h-10 { padding-left: 1rem; }
.mpad-r-10, .mpad-h-10 { padding-right: 1rem; }

.mpad-all-15 { padding: 1.5rem; }
.mpad-u-15, .mpad-v-15 { padding-top: 1.5rem; }
.mpad-d-15, .mpad-v-15 { padding-bottom: 1.5rem; }
.mpad-l-15, .mpad-h-15 { padding-left: 1.5rem; }
.mpad-r-15, .mpad-h-15 { padding-right: 1.5rem; }

.mpad-all-20 { padding: 2rem; }
.mpad-u-20, .mpad-v-20 { padding-top: 2rem; }
.mpad-d-20, .mpad-v-20 { padding-bottom: 2rem; }
.mpad-l-20, .mpad-h-20 { padding-left: 2rem; }
.mpad-r-20, .mpad-h-20 { padding-right: 2rem; }

.mpad-all-25 { padding: 2.5rem; }
.mpad-u-25, .mpad-v-25 { padding-top: 2.5rem; }
.mpad-d-25, .mpad-v-25 { padding-bottom: 2.5rem; }
.mpad-l-25, .mpad-h-25 { padding-left: 2.5rem; }
.mpad-r-25, .mpad-h-25 { padding-right: 2.5rem; }

.mpad-all-30 { padding: 3rem; }
.mpad-u-30, .mpad-v-30 { padding-top: 3rem; }
.mpad-d-30, .mpad-v-30 { padding-bottom: 3rem; }
.mpad-l-30, .mpad-h-30 { padding-left: 3rem; }
.mpad-r-30, .mpad-h-30 { padding-right: 3rem; }

.mpad-all-40 { padding: 4rem; }
.mpad-u-40, .mpad-v-40 { padding-top: 4rem; }
.mpad-d-40, .mpad-v-40 { padding-bottom: 4rem; }
.mpad-l-40, .mpad-h-40 { padding-left: 4rem; }
.mpad-r-40, .mpad-h-40 { padding-right: 4rem; }

.mpad-all-50 { padding: 5rem; }
.mpad-u-50, .mpad-v-50 { padding-top: 5rem; }
.mpad-d-50, .mpad-v-50 { padding-bottom: 5rem; }
.mpad-l-50, .mpad-h-50 { padding-left: 5rem; }
.mpad-r-50, .mpad-h-50 { padding-right: 5rem; }

.mpad-all-60 { padding: 6rem; }
.mpad-u-60, .mpad-v-60 { padding-top: 6rem; }
.mpad-d-60, .mpad-v-60 { padding-bottom: 6rem; }
.mpad-l-60, .mpad-h-60 { padding-left: 6rem; }
.mpad-r-60, .mpad-h-60 { padding-right: 6rem; }

.mpad-all-80 { padding: 8rem; }
.mpad-u-80, .mpad-v-80 { padding-top: 8rem; }
.mpad-d-80, .mpad-v-80 { padding-bottom: 8rem; }
.mpad-l-80, .mpad-h-80 { padding-left: 8rem; }
.mpad-r-80, .mpad-h-80 { padding-right: 8rem; }


/* Toggles ------------------------------- */

.toggle {
	background: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	color: inherit;
	cursor: pointer;
	font-family: inherit;
	padding: 0;
	position: relative;
		-webkit-touch-callout: none;
		-webkit-user-select: none;
		-khtml-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
	text-align: inherit;
	user-select: none;
}

.toggle:hover,
.toggle:focus {
	background: none;
}

.cover-toggle {
	opacity: 0;
	position: fixed;
		bottom: 0;
		left: -99999rem;
		right: 99999rem;
		top: 0;
	transition: opacity .4s linear, left 0s .4s, right 0s .4s;
	z-index: 9;
}

.cover-toggle.active {
	left: 0;
	opacity: 1;
	right: 0;
	transition: opacity .4s linear;
}

.cover-toggle.short-transition { transition: opacity .2s linear, left 0s .2s, right 0s .2s; }
.cover-toggle.short-transition.active { transition: opacity .2s linear; }


/* Grid Structure ------------------------------- */

.grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.grid .grid {
	margin-left: 0;
	width: 100%;
}

.grid .grid:last-child {
	margin-bottom: 0;
}

.grid {
	margin: 0 0 -3rem -2rem;
}

.grid + .grid { margin-top: 3rem; }

.grid-align-baseline { align-items: baseline; }
.grid-align-bottom { align-items: flex-end; }
.grid-align-top { align-items: flex-start; }

.grid .grid-item {
	margin: 0 0 3rem 2rem;
	width: calc( 100% - 2rem );
}

.grid.mcols-2 > .grid-item { width: calc( 50% - 2rem ); }

.grid.no-hgutter > .grid-item { width: 100%; }
.grid.mcols-2.no-hgutter > .grid-item { width: 50%; }

.grid.no-vgutter,
.grid.no-vgutter .grid-item {
	margin-bottom: 0;
}

.grid.no-hgutter,
.grid.no-hgutter .grid-item {
	margin-left: 0;
}

.grid.match-gutter { margin-bottom: -2rem; }
.grid.match-gutter + .grid.match-gutter { margin-top: 2rem; }
.grid.match-gutter .grid-item { margin-bottom: 2rem; }

.grid-item.order-1 { order: 1; }
.grid-item.order-2 { order: 2; }


/* Hiding and showing ------------------------------- */

.hide-mobile { display: none; }
.show-mobile { display: initial; }

.no-js .show-no-js { display: inherit ! important; }
.no-js .hide-no-js { display: none !important; }


/* Typography ------------------------------- */

.font-compressed { 
	font-family: 'benton-sans-compressed', Impact, -apple-system, Helvetica, sans-serif; 
	text-transform: uppercase;
}

.font-serif { font-family: 'benton-modern', Georgia, serif; }

.font-size-xl { font-size: 1.25em; }
.font-size-xs { font-size: 0.8em; }

.style-italic { font-style: italic; }

.weight-black { font-weight: 900; }
.weight-bold { font-weight: 700; }
.weight-semibold { font-weight: 600; }
.weight-medium { font-weight: 500; }
.weight-regular { font-weight: 400; }
.weight-light { font-weight: 300; }
.weight-thin { font-weight: 200; }
.weight-hairline { font-weight: 100; }

.text-align-inherit { text-align: inherit; }
.text-align-left { text-align: left; }
.text-align-center { text-align: center; }
.text-align-right { text-align: right; }

.lspacing-incr-5 { letter-spacing: 0.10em; }
.lspacing-incr-4 { letter-spacing: 0.08em; }
.lspacing-incr-3 { letter-spacing: 0.06em; }
.lspacing-incr-2 { letter-spacing: 0.04em; }
.lspacing-incr-1 { letter-spacing: 0.02em; }

.lspacing-decr-1 { letter-spacing: -.01em; }
.lspacing-decr-2 { letter-spacing: -.02em; }
.lspacing-decr-3 { letter-spacing: -.04em; }
.lspacing-decr-4 { letter-spacing: -.06em; }
.lspacing-decr-5 { letter-spacing: -.08em; }

.line-height-single { line-height: 1; }
.line-height-title { line-height: 1.25; }
.line-height-paragraph { line-height: 1.5; }

.text-decoration-none { text-decoration: none; }
.text-decoration-underline,
.text-decoration-hover-underline:hover { text-decoration: underline; }

.text-shadow-light { text-shadow: 0 .1rem 0 rgba( 0, 0, 0, 0.1 ), 0 0 1rem rgba( 0, 0, 0, 0.1 ); }
.text-shadow-medium { text-shadow: 0 .1rem 0 rgba( 0, 0, 0, 0.25 ), 0 0 1rem rgba( 0, 0, 0, 0.25 ); }
.text-shadow-dark { text-shadow: 0 .1rem 0 rgba( 0, 0, 0, 0.5 ), 0 0 1rem rgba( 0, 0, 0, 0.5 ); }

.lining-numerals {
	font-feature-settings: "lnum";
	font-variant-numeric: lining-nums;
}

.slashed-zero {
	font-feature-settings: "zero";
	font-variant-numeric: slashed-zero;
}

.smallcaps {
	font-variant-caps: small-caps;
	text-transform: lowercase;
}

.uppercase {
	text-transform: uppercase;
}

.no-select {
		-webkit-touch-callout: none;
		-webkit-user-select: none;
		-khtml-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
	user-select: none;
}

.phone-number a { text-decoration: none; }
.phone-number a:hover { text-decoration: underline; }


/* Text sizes ------------------------------------- */

.mfs-inherit { font-size: inherit; }

.mfs-10 { font-size: 1.0rem; }
.mfs-11 { font-size: 1.1rem; }
.mfs-12 { font-size: 1.2rem; }
.mfs-13 { font-size: 1.3rem; }
.mfs-14 { font-size: 1.4rem; }
.mfs-15 { font-size: 1.5rem; }
.mfs-16 { font-size: 1.6rem; }
.mfs-17 { font-size: 1.7rem; }
.mfs-18 { font-size: 1.8rem; }
.mfs-19 { font-size: 1.9rem; }
.mfs-20 { font-size: 2.0rem; }
.mfs-21 { font-size: 2.1rem; }
.mfs-22 { font-size: 2.2rem; }
.mfs-24 { font-size: 2.4rem; }
.mfs-25 { font-size: 2.5rem; }
.mfs-28 { font-size: 2.8rem; }
.mfs-30 { font-size: 3.0rem; }
.mfs-32 { font-size: 3.2rem; }
.mfs-34 { font-size: 3.4rem; }
.mfs-36 { font-size: 3.6rem; }
.mfs-40 { font-size: 4.0rem; }
.mfs-48 { font-size: 4.8rem; }
.mfs-64 { font-size: 6.4rem; }


/* Text Columns ------------------------------- */

.text-cols-m-2 { columns: 2 2rem; }

.wide-column-gap { column-gap: 4rem; }


/* Position ------------------------------- */

.position-static { position: static; }
.position-relative { position: relative; }

.position-cover {
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		top: 0;
}

.z-level-1 { z-index: 9; }
.z-level-2 { z-index: 99; }
.z-level-3 { z-index: 999; }
.z-level-4 { z-index: 9999; }
.z-level-5 { z-index: 99999; }


/* Overflow ------------------------------- */

.overflow-hidden { overflow: hidden; }
.overflow-auto { overflow: auto; }


/* Cursors -------------------------------- */

.cursor-default { cursor: default; }
.cursor-pointer { cursor: pointer; }
.cursor-zoom-in { cursor: zoom-in; }


/* Height & Width ------------------------- */

.width-full { width: 100%; }
.width-screen { width: 100vw; }
.width-auto { width: auto; }

.height-full { height: 100%; }
.height-screen { height: 100vh; }
.height-auto { height: auto; }


/* Colors ------------------------------- */

/* TEXT COLOR */

.color-white,
.color-white-hover:hover { color: #FFF; }
.color-light-gray,
.color-light-gray-hover:hover { color: #F2F2F2; }

.color-gray,
.color-gray-hover:hover { color: #CCC; }
.color-dark-gray,
.color-dark-gray-hover:hover { color: #858789; }
.color-black,
.color-black-hover:hover { color: #000; }

.color-inherit { color: inherit; }


/* BACKGROUND COLOR */

.bg-none { background: none; }
.bg-current-color { background-color: currentColor; }

.bg-white,
.bg-white-hover:hover { background: #FFF; }
.bg-light-gray,
.bg-light-gray-hover:hover { background: #F2F2F2; }

.bg-gray,
.bg-gray-hover:hover { background: #CCC; }
.bg-dark-gray,
.bg-dark-gray-hover:hover { background: #858789; }
.bg-black,
.bg-black-hover:hover { background: #000; }


/* BORDER COLOR */

.border-color-current-color {
	border-color: currentColor;
}


/* FILL COLOR */

.fill-children-dark-gray,
.fill-children-dark-gray * {
	fill: #858789;
}

.fill-children-current-color,
.fill-children-current-color * {
	fill: currentColor;
}


/* Accent Color ------------------------------ 

Note: These are set with inline style if an accent color is set.

.color-accent, .color-accent-hover:hover
.bg-accent, .bg-accent-hover:hover
.border-color-accent, .border-color-accent-hover:hover
.fill-children-accent, .fill-children-accent *

.color-accent-text, .color-accent-text-hover:hover
.bg-accent-text, .bg-accent-text-hover:hover
.border-color-accent-text, .border-color-accent-text-hover:hover
.fill-children-accent-text, .fill-children-accent-text *


/* Pseudo Background ------------------------- */

.pseudo-background:before,
.pseudo-gradient:before {
	content: "";
	display: block;
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		top: 0;
}

.pseudo-background:before { background-color: rgba( 0, 0, 0, 0.25 ); }
.pseudo-background.medium:before,
.pseudo-background.medium-hover:hover:before { background-color: rgba( 0, 0, 0, 0.50 ); }
.pseudo-background.strong:before,
.pseudo-background.strong-hover:hover:before { background-color: rgba( 0, 0, 0, 0.75 ); }

.pseudo-gradient:before { background: linear-gradient( -180deg, rgba( 0, 0, 0, 0 ) 0%, rgba( 0, 0, 0, 0.25 ) 100% ); }
.pseudo-gradient.medium:before { background: linear-gradient( -180deg, rgba( 0, 0, 0, 0 ) 0%, rgba( 0, 0, 0, 0.50 ) 100% ); }
.pseudo-gradient.strong:before { background: linear-gradient( -180deg, rgba( 0, 0, 0, 0 ) 0%, rgba( 0, 0, 0, 0.75 ) 100% ); }

.pseudo-gradient.invert-gradient:before {
	transform: rotate( 180deg )
}


/* Image Classes ------------------------------- */

.faux-image,
.bg-image {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}

.bg-contain {
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.bg-attachment-fixed {
	background-attachment: fixed;
}

.bg-position-left-top { background-position: left top; }
.bg-position-left-center { background-position: left center; }
.bg-position-left-bottom { background-position: left bottom; }
.bg-position-right-top { background-position: right top; }
.bg-position-center-top { background-position: center top; }
.bg-position-center-center { background-position: center center; }
.bg-position-center-bottom { background-position: center bottom; }
.bg-position-right-center { background-position: right center; }
.bg-position-right-bottom { background-position: right bottom; }

.faux-image {
	background-color: #f2f2f2;
}

a.faux-image {
	display: block;
}

.faux-image:after {
	content: "";
	display: block;
	padding-top: 75%;
	width: 100%;
}

.faux-image.half:after { padding-top: 50%; }
.faux-image.television:after { padding-top: 56.25%; }
.faux-image.three-quarters:after { padding-top: 75%; }
.faux-image.four-fifths:after { padding-top: 80%; }
.faux-image.square:after { padding-top: 100%; }


/* Video Classes ------------------------------- */

.video-cover-wrapper {
	height: 100%;
	overflow: hidden;
	position: absolute;
		bottom: 0;
		top: 0;
	width: 100%;
}

.video-cover {
	height: 100%;
	object-fit: cover;
	width: 100%;
}

.play-video {
	align-items: center;
	background: none !important;
	cursor: pointer;
	display: flex;
	justify-content: center;
	z-index: 1;
}

.play-video svg {
	height: 8rem;
	transition: transform .15s linear;
	width: 8rem;
}

.play-video:hover svg {
	transform: scale( 1.1 );
}

.play-video.playing {
	display: none;
}


/* Disable Shadows ------------------------------- */

.disable-shadows * { text-shadow: none; }
.disable-shadows .pseudo-gradient:before,
.disable-shadows .pseudo-gradient:after {
	background: none;
}


/* Social Links ------------------------------- */

.social-links {
	display: flex;
}

.social-link {
	align-items: center;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	height: 3.2rem;
	width: 3.2rem;
}

.social-link + .social-link {
	margin-left: .5rem;
}

.social-link-facebook svg { width: .8rem; height: 1.6rem; }
.social-link-instagram svg { width: 1.6rem; height: 1.6rem; }
.social-link-twitter svg { width: 1.6rem; height: 1.3rem; }
.social-link-vimeo svg { width: 1.6rem; height: 1.4rem; }


/* Arrows and slash separators ----------------------------- */

.has-horizontal-arrow,
.has-vertical-arrow,
.has-slash-separator {
	align-items: center;
	display: inline-flex;
	white-space: nowrap;
}

.has-vertical-arrow,
.has-slash-separator {
	align-items: flex-start;
}

img.horizontal-arrow,
img.vertical-arrow,
img.slash-separator,
svg.horizontal-arrow,
svg.vertical-arrow,
svg.slash-separator {
	display: inline;
	flex-shrink: 0;
	width: auto;
}

img.horizontal-arrow,
svg.horizontal-arrow {
	height: .6em; /* Out of uppercase character height */
	margin: 0 .3em; /* 1/2 of height */
	transform: translateY( -7.5% );
}

svg.horizontal-arrow {
	width: 1.619593538em; /* Out of height */
}

img.vertical-arrow,
svg.vertical-arrow {
	height: .8em; /* Out of uppercase character height */
	margin: 0 .3725em; /* 1/2 of height */
	transform: translateY( 5% );
}

img.slash-separator,
svg.slash-separator {
	height: .745em; /* Out of uppercase character height */
	margin: 0 .3725em; /* 1/2 of height */
}

img.no-left-margin,
svg.no-left-margin { margin-left: 0; }
img.no-right-margin,
svg.no-right-margin { margin-right: 0; }
img.no-margin,
svg.no-margin { margin: 0; }


/* Cover Modal ------------------------------- */

.cover-modal {
	background: rgba( 255, 255, 255, 0.95 );
	opacity: 0;
	overflow: auto;
	position: fixed;
		bottom: 0;
		left: -9999rem;
		right: 9999rem;
		top: 0;
	transition: opacity .25s ease-in, left 0s .25s, right 0s .25s;
	z-index: 9999;
}

.cover-modal.active {
	left: 0;
	right: 0;
	opacity: 1;
	transition: opacity .25s ease-out;
}

.cover-modal-inner { 
	max-height: 100%;
	overflow: auto;
}

.cover-modal.vertically-centered .cover-modal-inner {
	position: absolute;
		left: 50%;
		top: 50%;
	transform: translateX( -50% ) translateY( -50% );
}

/* GRAY MODAL BOX */

.modal-box.section-inner {
	max-width: 50rem;
}

.modal-box .close-modal {
	padding: 3rem;
	position: absolute;
		top: .4rem;
		right: 0;
}

.modal-box .close-modal svg {
	height: 2rem;
	width: 2rem;
}


/* Article Tools ----------------------------- */

.article-tools-buttons,
.article-tools-buttons > * {
	display: flex;
	align-items: center;
	line-height: 1;
}

.article-tools-buttons {
	flex-wrap: wrap;
	margin: -1rem 0 0 -2.5rem;
}

.article-tools-buttons > * {
	margin: 1rem 0 0 2.5rem;
}

.article-tools-buttons .icon {
	margin-right: 1rem;
	transform: translateY( -.1rem );
}


/* Share Links ------------------------------- */

.share-links li + li {
	margin-top: 2rem;
	padding-top: 2rem;
	position: relative;
}

.share-links li + li:before {
	background: currentColor;
	content: "";
	display: block;
	height: .1rem;
	opacity: .25;
	position: absolute;
		left: 0;
		right: 0;
		top: 0;
}

.share-links a {
	align-items: center;
	display: flex;
	justify-content: flex-start;
	text-decoration: none;
}

.share-links a:hover {
	text-decoration: underline;
}

.share-icon {
	align-items: center;
	display: flex;
	height: 5rem;
	justify-content: center;
	margin-right: 2rem;
	width: 5rem;
}

.share-link-facebook svg { height: 2.4rem; width: auto; }
.share-link-twitter svg { width: 2.4rem; height: auto; }
.share-link-email svg { width: 2.4rem; height: auto; }


/* Search Form ------------------------------- */

.search-form {
	align-items: stretch;
	display: flex;
}

.search-form label {
	margin: 0;
}

.search-form .search-submit {
	margin-left: 1rem;
}


/* Breadcrumbs ------------------------------- */

.breadcrumbs-wrapper {
	margin: 1.5rem auto;
	overflow: hidden;
	position: relative;
}

.breadcrumbs-inner-wrapper {
	-ms-overflow-style: none;
	overflow: scroll;
	padding: .5rem 0 .3rem;
}

.breadcrumbs-wrapper:after {
	background-image: linear-gradient( -90deg, #fff 0%, rgba( 255, 255, 255, 0 ) 100% );
	content: "";
	display: block;
	pointer-events: none;
	position: absolute;
		bottom: 0;
		right: 0;
		top: 0;
	width: 4rem;
}

.breadcrumbs {
	align-items: center;
	display: flex;
	line-height: 1;
	white-space: nowrap;
	width: auto;
}

.breadcrumbs li,
.breadcrumbs .sep {
	align-items: inherit;
	display: inherit;
	flex-shrink: 0;
	line-height: inherit;
}

.breadcrumbs li:last-child {
	padding-right: 3rem;
}

.breadcrumbs a { text-decoration: none; }
.breadcrumbs a:hover { text-decoration: underline; }


/* SL Info ----------------------------- */

.sl-info,
.sl-info div {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.sl-info svg,
.sl-info img {
	display: block;
	height: 3rem;
	margin-right: 1rem;
	width: 3rem;
}

.show-on-sl-text {
	display: none;
}


/* Accordion ------------------------------------- */

.accordion {
	position: relative;
}

.accordion-item {
	border-top: .1rem solid #ccc;
}

.accordion-item:last-child {
	border-bottom: .1rem solid #ccc;
}

.accordion-button {
	align-items: center;
	display: flex;
	justify-content: space-between;
	line-height: 1;
	padding: 1.9rem 0 1.6rem;
	width: 100%;
}

.accordion-button .accordion-button-arrow {
	flex-shrink: 0;
	margin-left: 2rem;
	transition: transform .2s linear;
}

.accordion-button .accordion-button-arrow img {
	margin: 0;
}

.accordion-button.active .accordion-button-arrow {
	transform: rotate( 180deg );
}

.accordion-content-wrapper {
	display: none;
	padding: 1rem 0 3rem;
}

@media ( max-width: 699px ) {
	.accordion.full-width-mobile {
		left: calc( 50% - 50vw );
		width: 100vw;
	}
	
	.accordion.full-width-mobile .accordion-button,
	.accordion.full-width-mobile .accordion-content {
		padding-left: 2rem;
		padding-right: 2rem;
	}
}


/* Taxonomy Filter ------------------------------- */

.filter-toggle {
	align-items: center;
	border-bottom: .1rem solid #ddd;
	border-top: .1rem solid #ddd;
	display: flex;
	justify-content: space-between;
	padding: 1.4rem 2rem 1.5rem 2rem;
	width: 100%;
}

.filter-toggle-text {
	overflow: hidden;
	padding-top: .3rem;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.filter-current-term .slash-separator {
	margin-left: -.1rem;
	transform: translateY( -.1rem );
}

.filter-toggle.active .vertical-arrow {
	transform: rotate( 180deg );
}

.filter-container {
	position: relative;
		left: calc( 50% - 50vw );
	width: 100vw;
}

.filter-list {
	background: #F2F2F2;
	padding: 1rem 0;
}

.filter-container a {
	color: #858789;
	display: block;
	font-size: 2.4rem;
	padding: .5rem 2rem;
	text-decoration: none;
	text-transform: uppercase;
}

.filter-container a:hover,
.filter-container a.current-filter {
	color: #000;
}


/* Preview Section ------------------------------- */

.preview-section-wrapper header a {
	display: none;
}

.preview-section-wrapper.will-be-spotted .preview-grid-item {
	opacity: 0;
	transform: translateY( 5% );
	transition: opacity .3s linear, transform .3s ease-out;
}

.preview-section-wrapper.will-be-spotted .preview-grid-item:nth-child(1) { transition-delay: 0.1s }
.preview-section-wrapper.will-be-spotted .preview-grid-item:nth-child(2) { transition-delay: 0.2s }
.preview-section-wrapper.will-be-spotted .preview-grid-item:nth-child(3) { transition-delay: 0.3s }
.preview-section-wrapper.will-be-spotted .preview-grid-item:nth-child(4) { transition-delay: 0.4s }

.preview-section-wrapper.spotted .preview-grid-item {
	opacity: 1;
	transform: translateY( 0 );
}


/* Loading Indicator ------------------------------- */

.bkh-loader {
	animation: spin 1.4s linear infinite;
    border: .5rem solid #E1E1E6;
	border-radius: 50%;
    border-top: .5rem solid #858789;
    height: 5rem;
	margin: auto;
    width: 5rem;
}

.bkh-loader.small {
	border-width: .4rem;
	height: 3.2rem;
	width: 3.2rem;
}


/* Barba.js ------------------------------- */

.barba-cover {
	opacity: 0;
	position: fixed;
		bottom: 0;
		left: -9999rem;
		right: 9999rem;
		top: 0;
	transition: opacity .2s ease-out;
	z-index: 999999999;
}

.barba-cover-inner {
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		top: 0;
}

.barba-animate-out .barba-cover {
	left: 0;
	right: 0;
	opacity: 1;
}

.barba-animate-in .barba-cover {
	left: -9999rem;
	right: 9999rem;
	opacity: 0;
	transition: opacity .2s linear, left 0s .2s, right 0s .2s;
}


/* Tooltips ------------------------------- */

.has-tooltip {
	position: relative;
}

.tooltip {
	background: #000;
	color: #fff;
	display: block;
	font-family: 'benton-sans-compressed', -apple-system, Helvetica, sans-serif;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.35;
	padding: .8rem 1.1rem .7rem;
	opacity: 0;
	position: absolute;
		left: -9999rem;
	transition: opacity .15s ease-in, margin .15s ease-in, left 0s .15s, right 0s .15s;
	text-transform: uppercase;
	white-space: nowrap;
	z-index: 9999;
}

.tooltip.thin { width: 14rem; white-space: normal; }
.tooltip.regular { width: 18rem; white-space: normal; }
.tooltip.wide { width: 26rem; white-space: normal; }

.tooltip.thin p,
.tooltip.regular p,
.tooltip.wide p {
	white-space: normal;
}

.tooltip:before {
	background: inherit;
	content: "";
	display: block;
	height: 1rem;
	position: absolute;
	transform: rotate( 45deg );
	width: 1rem;
}

.tooltip p {
	font-size: inherit;
	line-height: inherit;
	text-align: inherit;
	white-space: nowrap;
}

.tooltip p:last-child {
	margin: 0;
}

/* ORIGIN VARIATIONS */

.tooltip.origin-top,
.tooltip.origin-top-right,
.tooltip.origin-bottom {
	transform: translateX( -50% );
}

.has-tooltip:hover .tooltip.origin-top,
.has-tooltip:hover .tooltip.origin-bottom {
	left: 50%;
}

.tooltip.origin-top:before,
.tooltip.origin-bottom:before {
	left: calc( 50% - .5rem );
}

.tooltip.origin-top { bottom: calc( 100% + 1.5rem ); }
.tooltip.origin-top:before { bottom: -.5rem; }

.tooltip.origin-bottom { top: calc( 100% + 1.5rem ); }
.tooltip.origin-bottom:before { top: -.5rem; }

.tooltip.origin-left,
.tooltip.origin-right {
	top: 50%;
	transform: translateY( -50% );
}

.tooltip.origin-left { left: auto; right: 9999rem; }
.has-tooltip:hover .tooltip.origin-left { right: calc( 100% + 1.5rem ); }

.has-tooltip:hover .tooltip.origin-right { left: calc( 100% + 1.5rem ); }

/* HOVER EFFECT */

.tooltip.origin-top { margin-bottom: .3rem; }
.tooltip.origin-right { margin-left: .3rem; }
.tooltip.origin-bottom { margin-top: .3rem; }
.tooltip.origin-left { margin-right: .3rem; }

.has-tooltip:hover .tooltip {
	margin: 0;
	opacity: 1;
	transition: opacity .15s ease-in, margin .15s ease-in;
}


/* Newsletter Modal -------------------------- */

#newsletter-modal input[type="text"],
#newsletter-modal input[type="email"] {
	border-color: currentColor;
	color: currentColor;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Previews
/* --------------------------------------------------------------------------------------------- */


/* Preview Grid ------------------------------- */

.preview-grid-wrapper {
	position: relative;
		left: calc( 50% - 50vw );
	width: 100vw;
}

.preview-grid,
.preview-grid-item {
	display: flex;
}

.preview-grid {
	flex-wrap: wrap;
	margin: -.3rem 0 0 -.3rem;
}

.preview-grid-item {
	flex-wrap: wrap;
	margin: .3rem 0 0 .3rem;
	width: calc( 50% - .3rem );
}

.preview-grid .preview,
.preview-grid .preview .preview-inner,
.preview-grid .preview .preview-content-wrapper {
	width: 100%;
}


/* Default Preview ------------------------------- */

.preview {
	width: 100%;
}

.preview .preview-media {
	transition: transform .2s ease-out;
}

.preview:hover .preview-media {
	transform: scale( 1.05 );
}

.preview .preview-inner:before {
	content: "";
	display: block;
	padding-top: 138%;
	width: 100%;
}

.preview,
.preview .preview-inner,
.preview .preview-content-wrapper {
	display: flex;
	width: 100%;
}

.preview .preview-content-wrapper {
	flex-direction: column;
	justify-content: space-between;
}

.preview.post-type-product .preview-subtitle del {
	color: #fff;
	opacity: .5;
}

.preview.post-type-product .preview-subtitle img {
	margin-left: .2rem;
	transform: translateY( -.1rem );
}

.preview.post-type-product .preview-subtitle .membership-price {
	display: block;
}


/* Preview With Text Inside ------------------ */

.preview-text-inside .preview-header {
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
	z-index: 1;
}

.preview-text-inside .preview-header.pseudo-gradient > * {
	position: relative;
}

/* Preview With Text Outside ----------------- */

.preview-text-outside:hover .preview-title {
	text-decoration: underline;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Site Header
/* --------------------------------------------------------------------------------------------- */


#site-header,
.header-standin {
	height: 10rem;
}

#site-header {
	align-items: center;
	display: flex;
}

.header-inner {
	align-items: center;
	display: flex;
	justify-content: space-between;
	position: relative;
}

body.showing-mobile-menu .header-inner {
	color: #fff;
}

.header-logo svg {
	height: 6rem;
	width: 14.4rem;
}


/* Sticky Header ------------------------------------ */

#site-header {
	z-index: 999;
	transition: box-shadow .15s linear;
}

#site-header.is-stuck,
.showing-mobile-menu #site-header {
	position: fixed;
		left: 0;
		right: 0;
		top: 0;
	transition: height .15s linear, transform .15s linear, box-shadow .15s linear;
}

#site-header.is-stuck:not(.reset-height) {
	height: 9rem;
}

body:not(.showing-mobile-menu) #site-header.is-stuck {
	box-shadow: 0 0 1rem rgba( 0, 0, 0, 0.15 );
}

.header-standin {
	display: none;
}

#site-header.is-stuck + .header-standin {
	display: block;
}

/* STICKY SHELF WRAPPERS */

#site-header.is-stuck .shelf-wrapper {
	top: calc( 100% + 1.9rem );
}

body.scrolling-down #site-header.is-stuck .shelf-wrapper {
	display: none;
}


/* Logo Deconstructed ------------------------------- */

.logo-deconstructed {
	display: none;
}

.logo-deconstructed div {
	position: absolute;
}

.logo-deconstructed svg {
	height: 100%;
	width: 100%;
}


/* Main Menu ------------------------------- */

.main-menu {
	display: flex;
	flex-wrap: wrap;
	margin: -1.5rem 0 0 -2.5rem;
}

.main-menu > li {
	line-height: .8;
	margin: 1.5rem 0 0 2.5rem;
	white-space: nowrap;
}

.main-menu a {
	position: relative;
	text-decoration: none;
}

.main-menu > li > a {
	font-size: 3.2rem;
	text-transform: uppercase;
}

.main-menu > li > a:after {
	border-bottom: .15rem solid transparent;
	content: "";
	display: block;
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
	transition: border-color .15s linear;
}

.main-menu > li.current-menu-item > a:after {
	border-bottom-color: #000;
}


/* Navigation Toggle ------------------------------- */

.nav-toggle {
	cursor: pointer;
	position: relative;
}

.nav-toggle:not(.active) .hide { display: none; }
.nav-toggle.active .show { display: none; }

.nav-toggle .bars {
	height: 1.8rem;
	position: absolute;
		right: calc( 50% - 1.3rem );
		top: calc( 50% - .9rem );
	width: 2.6rem;
}

.nav-toggle .bar {
	background: #000000;
	display: block;
	height: .2rem;
	position: absolute;
		right: 0;
		top: calc( 50% - .1rem );
	transition: transform 0.2s ease-in, opacity 0s ease-out 0.2s, margin 0.2s ease-out 0.2s;
	width: 2.6rem;
}

.nav-toggle .bar:nth-child(1) { margin-top: -.8rem; }
.nav-toggle .bar:nth-child(3) { margin-top: 0.8rem; }

.nav-toggle.active .bar {
	margin-top: -.1rem;
	transition: margin 0.2s ease-in, opacity 0s ease-in 0.2s, transform 0.2s ease-out 0.25s;
}

.nav-toggle.active .bar:nth-child(1) { transform: rotate( 45deg ); }
.nav-toggle.active .bar:nth-child(2) { opacity: 0; }
.nav-toggle.active .bar:nth-child(3) { transform: rotate( -45deg ); }


/* --------------------------------------------------------------------------------------------- */
/*	X. Header Search
/* --------------------------------------------------------------------------------------------- */


.header-search {
	opacity: 0;
	position: fixed;
		bottom: 0;
		left: 0;
		right: 0;
		top: 0;
	transition: opacity .15s linear;
}

.header-search.active {
	opacity: 1;
	transition: opacity .15s .2s linear;
	z-index: 999999;
}

.site-wrapper {
	position: relative;
	transition: transform .25s ease-out;
	z-index: 2;
}

body.showing-search .site-wrapper {
	pointer-events: none;
	transform: translateY( 12rem ) scale( .9 );
	transition-timing-function: ease-out;
	transition-duration: .25s;
	z-index: 99999;
}

body.constrain-site-wrapper .site-wrapper {
	height: 100vh;
	overflow: hidden;
}

/* HEADER SEARCH FORM */

.header-search .search-untoggle {
	position: absolute;
		right: 2rem;
		top: 2rem;
}

.header-search .search-cover-untoggle {
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		top: calc( 7.5vh + 12rem );
	width: 100%;
}

.header-search-form {
	position: relative;
}

.header-search-form:after {
	background: currentColor;
	content: "";
	display: block;
	height: .1rem;
	opacity: .25;
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
}

.header-search .search-field,
.header-search .search-submit {
	font-size: inherit;
}

.header-search .search-field {
	background: none;
	border: none;
	box-shadow: none;
	color: inherit;
	font-family: inherit;
	padding: 0 5rem .5rem 0;
	position: relative;
	text-transform: uppercase;
	width: 100%;
}

.header-search .search-field::-webkit-input-placeholder { color: currentColor; }
.header-search .search-field:-ms-input-placeholder { color: currentColor !important; /* Req by IE11 */ }
.header-search .search-field::-moz-placeholder { color: currentColor; }

.header-search .search-field::-ms-clear {
	display: none;
}

.header-search .search-submit {
	align-items: center;
	background: none;
	color: inherit;
	display: flex;
	opacity: 0.5;
	padding: 0;
	position: absolute;
		bottom: 0;
		right: 0;
		top: 0;
	transition: opacity .15s linear;
}

.header-search .search-submit:hover,
.header-search .search-submit:focus {
	opacity: 1;
}

.header-search .search-submit img {
	flex-shrink: 0;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Menu Shelves
/* --------------------------------------------------------------------------------------------- */


.shelf-wrapper {
	display: none;
	position: absolute;
		left: -9999rem;
		top: calc( 100% + 5rem );
	transform: translateX( -50% );
	z-index: 9999;
	width: 100vw;
}

.shelf-wrapper.active-shelf {
	left: 50%;
	transform: translateX( -50% );
}

.shelf-wrapper:before {
	box-shadow: 0 0 2rem 0 rgba( 0, 0, 0, 0.5 );
	content: "";
	display: block;
	height: 1rem;
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
}

.shelf {
	background: #fff;
	overflow: hidden;
	position: relative;
}

.shelf a {
	text-decoration: none;
}

.shelf-menu.two-cols {
	column-count: 2;
}

/* Shelf Loading ---------------------------- */

.shelf-loading {
	background: #fff;
	display: flex;
	height: 10rem;
	padding-bottom: 4rem;
	position: relative;
}

.shelf-loading .loader {
	margin: auto;
}

.shelf-wrapper.loaded .shelf-loading {
	display: none;
}

/* Shelf Grid ------------------------------- */

.shelf-grid {
	display: flex;
	margin-left: -2rem;
}

.shelf-column {
	margin-left: 2rem;
}

.shelf-col-1 { width: calc( 20% - 2rem ); }
.shelf-col-2 { width: calc( 40% - 2rem ); }
.shelf-col-3 { width: calc( 60% - 2rem ); }
.shelf-col-4 { width: calc( 80% - 2rem ); }
.shelf-col-5 { width: calc( 100% - 2rem ); }

.shelf-first-col {
	min-width: 21.4rem;
}


/* Shelf Link List ------------------------------- */

.shelf-link-list-column {
	line-height: 1;	
}

.shelf-link-list-column h3 {
	margin-bottom: 1rem;
}

.shelf-link-list-column ul {
	margin-top: -1rem;
}

.shelf-link-list-column li {
	padding-top: 1rem;
}

.shelf-link-list-column a:hover {
	text-decoration: underline;
}


/* Shelf Previews ------------------------------- */

.shelf .preview .preview-inner {
	max-height: 35rem;
}

.shelf .preview .preview-header {
	padding: 2.2rem 2.2rem 3rem;
}

.shelf .preview .preview-footer {
	padding: 3rem 2.2rem 2.2rem;
}

.shelf .preview .preview-title,
.shelf .preview .preview-subtitle {
	font-size: 2.4rem;
}


/* Shelf: Visit ------------------------------- */

#shelf-visit .map-wrapper iframe {
	height: 35rem;
	max-height: 35rem;
	width: 100%;
}

.shelf-visit-contact-details p a {
	text-decoration: underline;
}

.shelf-visit-contact-details p a:hover {
	color: #858789;
}


/* Shelf: Store ------------------------------- */

#shelf-store .preview.has-background-image .preview-inner {
	background-color: #fff;
}


/* Shelf: About ------------------------------- */

.shelf-about-us-content {
	display: flex;
	justify-content: space-between;
}

.shelf-about-us-content .faux-image,
.shelf-about-us-content .content-inner {
	width: calc( 50% - 1.25rem );
}

.shelf-about-us-content .content-inner {
	margin-left: 2.5rem;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Mobile Menu
/* --------------------------------------------------------------------------------------------- */


/* Mobile Menu Toggles ------------------------------- */


.header-mobile-toggles {
	align-items: center;
	margin: 0 -1rem 0 2rem;
	display: flex;
}

.header-mobile-toggles .toggle {
	height: 4.8rem;
	margin-left: 1rem;
	width: 4.8rem;
}

.header-mobile-toggles .search-toggle {
	align-items: center;
	display: flex;
	justify-content: center;
}

/* Active Mobile Menu Toggles ------------------------------- */

.showing-mobile-menu #site-header {
	background: #858789;
	z-index: 999;
}

.showing-mobile-menu .nav-toggle .bar { background: currentColor; }
.showing-mobile-menu .site-title path,
.showing-mobile-menu .search-toggle g { fill: currentColor; }

.mobile-menu-wrapper.active {
	left: 0;
}

/* Mobile Menu ------------------------------- */

.mobile-menu-wrapper {
	border-color: rgba( 255, 255, 255, 0.25 );
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	overflow: auto;
	padding: 10rem 0 0;
	position: fixed;
		bottom: 0;
		left: -9999rem;
		top: 0;
	width: 100%;
	z-index: 998;
}

.mobile-menu {
	border-color: inherit;
	border-style: solid;
	border-width: .1rem 0 0 0;
	font-size: 2.4rem;
	text-transform: uppercase;
}

.mobile-menu li {
	line-height: 1;
	position: relative;
}

.mobile-menu a {
	display: block;
	padding: 1.9rem 2rem 1.6rem;
	text-decoration: none;
}

.mobile-menu li.current-menu-item > a,
.mobile-menu li.current-menu-item > .ancestor-wrapper > a {
	text-decoration: underline;
}

.mobile-menu li.current-menu-ancestor.current-menu-item > a,
.mobile-menu li.current-menu-ancestor.current-menu-item > .ancestor-wrapper > a {
	text-decoration: none;
}

.mobile-menu > li {
	border-color: inherit;
	border-style: solid;
	border-width: 0 0 .1rem 0;
}

.mobile-menu .ancestor-wrapper {
	position: relative;
}

.mobile-menu > li > .ancestor-wrapper:after {
	background: currentColor;
	content: "";
	opacity: 0.25;
	position: absolute;
		bottom: 1rem;
		right: 6rem;
		top: 1rem;
	width: .1rem;
}

body.has-accent-text-color .mobile-menu > li > .ancestor-wrapper:after {
	opacity: 1;
}

.mobile-menu .sub-menu-toggle {
	align-items: center;
	display: flex;
	justify-content: center;
	position: absolute;
		right: 0;
		bottom: 0;
		top: 0;
	width: 6rem;
}

.mobile-menu .sub-menu-toggle svg {
	height: 2rem;
	transition: transform .25s linear;
	width: 1.6rem;
}

.mobile-menu .sub-menu-toggle.active svg {
	transform: rotate( 180deg );
}

.mobile-menu > li:not(.current-menu-ancestor) > ul {
	display: none;
}

.mobile-menu .sub-menu {
	background: #fff;
	border-color: #ddd;
	color: #000;
	padding: 0 2rem;
	position: relative;
}

body.has-accent-text-color .mobile-menu .sub-menu:before {
	content: "";
	display: block;
	opacity: 1;
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		top: 0;
}

.mobile-menu .sub-menu .sub-menu {
	display: block;
	padding: 0 0 0 2rem;
}

.mobile-menu .sub-menu a {
	padding-left: 0;
	padding-right: 0;
}

.mobile-menu .sub-menu li {
	border-color: inherit;
	border-style: solid;
	border-width: .1rem 0 0 0;
}

.mobile-menu > li > .sub-menu > li:first-child {
	border-top: none;
}


/* Mobile Menu Footer ------------------------------- */

.mobile-menu-footer .section-inner {
	align-items: center;
	display: flex;
	justify-content: space-between;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Sub Page
/* --------------------------------------------------------------------------------------------- */


/* Hero Header ------------------------------------ */

.hero-header-outer-wrapper {
	display: flex;
}

.hero-header-wrapper {
	width: 100%;
}

.hero-header-wrapper.has-media {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.hero-header-wrapper .image-sizer {
	display: none;
}

.hero-header-wrapper.has-media.automatic-aspect-ratio {
	height: 66.6vw;
	max-height: 100vh !important;
	min-height: calc( 100vh - 10rem );
}

/* ORIGINAL ASPECT RATIO */

.hero-header-wrapper.original-aspect-ratio .image-sizer {
	display: block;
	width: 100%;
}

.hero-header-wrapper.original-aspect-ratio .hero-header {
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
}


/* Side Menu ------------------------------------- */

.side-menu {
	width: 100%;
}

.side-menu.no-child-pages {
	display: none;
}

/* SIDE MENU TOGGLE */ 

.side-menu-toggle {
	border-bottom: .1rem solid #ccc;
	border-top: .1rem solid #ccc;
	line-height: 1;
	padding: 1.5rem 0;
	width: 100%;
}

.side-menu-toggle-inner {
	align-items: baseline;
	display: flex;
	justify-content: space-between;	
}

.side-menu-toggle img {
	transition: transform .15s linear;
}

.side-menu-toggle.active img {
	transform: rotate( 180deg );
}

/* SIDE MENU LIST */ 

.side-menu-title img {
	margin-left: .3rem;
}

.side-menu-list {
	overflow: hidden;
}

.side-menu-list li {
	position: relative;
}

.side-menu-list .ancestor-wrapper {
	align-items: stretch;
	display: flex;
	justify-content: stretch;
}

.side-menu-list li.current-menu-item > a:before,
.side-menu-list li.current-menu-item > .ancestor-wrapper > a:before,
.side-menu-list li.current_page_item > a:before,
.side-menu-list li.current_page_item > .ancestor-wrapper > a:before {
	background: url( ./assets/images/icons/arrows/arrow-side-menu-current-item.svg ) no-repeat center;
	background-size: 100%;
	content: "";
	display: block;
	height: 1.5rem;
	position: absolute;
		top: calc( 50% - .7rem );
		left: -2.3rem;
	width: 3.7rem;
}

.side-menu-list a {
	display: block;
	padding: .4em 2rem;
	position: relative;
	text-decoration: none;
	width: 100%;
}

.side-menu-list .menu-item-has-children > .ancestor-wrapper > a {
	padding-right: 0;
}

.side-menu-list a:hover {
	text-decoration: underline;
}

.side-menu-list .sub-menu-toggle {
	align-items: center;
	display: flex;
	justify-content: center;
	flex: 7rem 0 0;
}

.side-menu-list .sub-menu-toggle svg {
	transition: transform .15s linear;
}

.side-menu-list .sub-menu-toggle.active svg {
	transform: rotate( 180deg );
}

.side-menu-list ul {
	background: rgba( 0, 0, 0, 0.05 );
	font-size: 1.8rem;
	margin: .5rem 0 1.5rem;
	padding: .5em 0;
}

.js .side-menu.post-type-page .side-menu-list > li:not(.current-menu-ancestor) > ul {
	display: none;
}

.side-menu-list ul ul { padding-left: 2rem; }
.side-menu-list ul ul ul { padding-left: 4rem; }


/* Intro Text ------------------------------------ */

.intro-text p {
	line-height: 1.4;
}

.intro-text p:last-child {
	margin-bottom: 0;
}

.intro-text + .entry-content-wrapper {
	margin-top: 3rem;
}


/* Become Member Section ------------------------- */

.become-member-section .grid {
	position: relative;
		left: -2rem;
	width: calc( 100vw - 2rem );
}

.become-member-section .grid-item {
	align-items: stretch;
	display: flex;
	justify-content: stretch;
}

.become-member-section-content {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.become-member-section-text {
	max-width: 47.4rem;
}


/* Related Content ------------------------- */

.related-grid .preview-title { font-size: 3.2rem; }
.related-grid .preview-subtitle { font-size: 2.4rem; }

.related-grid .preview-inner:before {
	padding-top: 75%;
}

.related-grid.count-4 .grid-item:nth-child(4) {
	display: none;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Template: Front Page
/* --------------------------------------------------------------------------------------------- */


/* Front Opening Hours ------------------------- */
/* Front Big Grid ------------------------------ */

.front-big-exhibit-wrapper {
	overflow: hidden;
	position: relative;
		left: calc( 50% - 50vw );
	width: 100vw;
}

.front-big-exhibit-wrapper .preview-text-inside .faux-image {
	max-height: 70rem;
	min-height: 37.5rem;
	height: 60vh;
}

/* Front Events -------------------------------- */
/* Front About --------------------------------- */

.images-canvas-section {
	overflow: hidden;
}

.images-canvas {
	margin: 0 auto;
	max-height: 79.5rem;
	max-width: 168rem;
	position: relative;
	width: 100%;
}

.images-canvas:before {
	content: "";
	display: block;
	width: 100%;
	padding-top: 109.6%;
}

.front-about-us-title {
	padding-right: 5rem;
}

.front-about-us-text {
	max-width: 60.5rem;
	width: 100%;
}

.canimg {
	background-color: #f2f2f2;
	display: block;
	position: absolute;
}

.canimg.will-be-spotted {
	opacity: 0;
	transform: translateY( 10% ) scale( .95 );
	transition: opacity .45s .1s ease-out, transform .45s .1s ease-out;
}

.canimg.spotted {
	opacity: 1;
	transform: scale( 1 ) translateY( 0 );
}

.canimg.ver:after { padding-top: 133%; }
.canimg.hor:after { padding-top: 75%; }

.canimg.ver.s { width: 21vw; max-width: 15rem; }
.canimg.ver.m { width: 28vw; max-width: 22.5rem; }

.canimg.hor.s { width: 28vw; max-width: 20rem; }
.canimg.hor.m { width: 42.6vw; max-width: 30rem; }
.canimg.hor.l { width: 56vw; max-width: 36rem; }
.canimg.hor.xl { width: 56vw; max-width: 48rem; }

@media ( max-width: 699px ) {

	.canimg:nth-child(7) ~ .canimg {
		display: none !important;
	}

	/* CANIMG POSITIONING */
	#canimg-1 { bottom: 0; left: 10%; z-index: 1; }
	#canimg-2 { bottom: 17.2%; left: 29%; }
	#canimg-3 { top: -18.7%; left: 86%; z-index: 1; }
	#canimg-4 { bottom: 46.4%; left: 0; z-index: 1; }
	#canimg-5 { top: 0; left: 12%; }
	#canimg-6 { bottom: 32.8%; left: 94%; }
	#canimg-7 { bottom: 60%; right: 0; }

}


/* Front Visit --------------------------------- */

.front-visit-image-wrapper {
	position: relative;
		left: calc( 50% - 50vw );
	width: 100vw;
}

.accordion-media > * {
	opacity: 0;
	pointer-events: none;
	transition: opacity .25s linear;
}

.accordion-media iframe {
	height: 100% !important;
	width: 100% !important;
}

.accordion-media .default-media,
body.show-accordion-media-prices .prices-media,
body.show-accordion-media-find-us .find-us-media,
body.show-accordion-media-opening-hours .opening-hours-media { 
	opacity: 1; 
	pointer-events: all;
}


/* Front Newsletter ---------------------------- */

.newsletter-promo {
	min-height: 40rem;
	left: calc( 50% - 50vw );
	width: 100vw;
}

/* Front Pages --------------------------------- */

.front-page-link-content {
	max-width: 45rem;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Template: Visit Us
/* --------------------------------------------------------------------------------------------- */


.visit-us-content .map-wrapper iframe {
	max-height: 50rem;
	min-height: 33.5rem;
}


/* Opening Hours and Admission ---------------------------- */

.opening-hours-admission-grid table {
	max-width: 37rem;
}

.opening-hours-note p {
	margin-right: 2.4rem;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Template: Contact Us
/* --------------------------------------------------------------------------------------------- */

.contact-email-link {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.staff-member {
	border-top: .1rem solid #000;
	padding-top: 1rem;
}

.staff-member + .staff-member {
	margin-top: 3rem;
}

.staff-member p {
	margin: 0;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Template: FAQ
/* --------------------------------------------------------------------------------------------- */


/* --------------------------------------------------------------------------------------------- */
/*	X. Template: Become a Member
/* --------------------------------------------------------------------------------------------- */


/* Membership Groups ------------------------------- */

.memberships-inner-container {
	border: .1rem solid #ddd;
	border-left: none;
	border-right: none;
}

/* MEMBERSHIP TAB TOGGLES */

.membership-tab-toggles {
	border-bottom: .1rem solid #ddd;
	display: flex;
	justify-content: stretch;
}

.membership-tab-toggle {
	padding: 2.5rem 0;
	position: relative;
	width: 100%;
}

.membership-tab-toggle + .membership-tab-toggle:before {
	background: #ddd;
	content: "";
	display: block;
	position: absolute;
		bottom: 20%;
		top: 20%;
	transition: opacity .15s linear;
	width: .1rem;
}

.membership-tab-toggle.active {
	background: #000;
	color: #fff;
}

.membership-tab-toggle.active:before,
.membership-tab-toggle.active + .membership-tab-toggle:before {
	opacity: 0;
}

.membership-tab-toggle:after {
	content: "";
	display: block;
	border: 1rem solid transparent;
	border-top-color: #000;
	opacity: 0;
	pointer-events: none;
	position: absolute;
		left: calc( 50% - 1rem );
		top: 100%;
	transition: opacity .15s linear;
}

.membership-tab-toggle.active:after {
	opacity: 1;
}

.membership-tab-toggle .group-price-span {
	font-weight: 400;
}

/* MEMBERSHIP TABS */

.membership-tab {
	display: none;
}

.membership-tab.active {
	display: block;
}

.membership-items li {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.membership-items li + li {
	border-top: .1rem solid #ddd;
	margin-top: 2rem;
	padding-top: 2rem;
}

.membership-item .faux-button {
	margin-left: 1rem;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Template: Online Exhibition
/* --------------------------------------------------------------------------------------------- */

/* Header ----------------------------------------- */

.mini-menu {
	justify-content: end;
}

/* Content ---------------------------------------- */

.bonnier_exhibition-template-template-online-exhibit .entry-content .alignfull {
	left: 0;
}

.bonnier_exhibition-template-template-online-exhibit .entry-content .alignfull {
	max-width: 100%;
	width: 100%;
}

.bonnier_exhibition-template-template-online-exhibit .wp-block-column {
	margin-bottom: 1.25em;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Event: Archive
/* --------------------------------------------------------------------------------------------- */


/* Event Archive Header ------------------------------- */

.event-archive-title img.slash-separator {
	margin-left: .041em;
}


/* Event Pagination ------------------------------- */

/* EVENT PAGINATION TOP */

.event-pagination-top {
	display: none;
	flex-direction: column;
	position: absolute;
		top: 50%;
		right: 0rem;
	transform: translateY( -50% );
}

.event-pagination-top .event-pagination-next {
	margin: .3rem 0 0 3.8em;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Event: Single
/* --------------------------------------------------------------------------------------------- */


/* Admission Prices ------------------------------- */

.admission-prices-title img {
	margin-left: .3rem;
}

.admission-prices-table {
	table-layout: auto;
}

.admission-prices-table tr + tr {
	border-top: .1rem solid #ccc;
}

.admission-prices table td {
	line-height: 1;
	padding: 2rem 0;
}

.admission-prices-table .admission-price-value {
	text-align: right;
}

.purchase-admission-button {
	padding: 1.8rem 2.4rem;
}

.purchase-admission-button .button-icon {
	transform: translateY( -.1rem );
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Exhibit: Archive
/* --------------------------------------------------------------------------------------------- */


/* Exhibits Nav ------------------------------- */

.exhibits-nav {
	align-items: baseline;
	display: flex;
	white-space: nowrap;
}

.exhibits-nav a {
	text-decoration: none;
}

.exhibits-nav a.active {
	border-bottom: .15rem solid currentColor;
	color: #000;
}

.exhibits-nav a:hover {
	color: #000;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Exhibit: Single
/* --------------------------------------------------------------------------------------------- */


/* Overlay Gallery --------------------------- */

.overlay-gallery .show-when-active {
	display: none;
}

.overlay-gallery.active .show-when-active { 
	animation: fadeInUp .4s forwards;
	display: block; 
	opacity: 1;
	transform: translateY( 0 );
}

.overlay-gallery.active .hide-when-active { 
	display: none; 
}


/* Exhibit Related --------------------------- */

.single-bonnier_exhibition .related-content-title {
	font-size: 4rem;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Entry Content
/* --------------------------------------------------------------------------------------------- */


.entry-content {
	font-family: 'benton-modern', Georgia, serif;
	line-height: 1.3;
}

.entry-content > *:first-child { margin-top: 0; }
.entry-content > *:last-child { margin-bottom: 0; }

.entry-content a:hover {
	opacity: .5;
}

.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	font-family: 'benton-sans-compressed', Impact, -apple-system, Helvetica, sans-serif; 
	font-feature-settings: "lnum";
	font-variant-numeric: lining-nums;
	font-weight: 600;
	line-height: 1;
	margin: 4rem 0 2rem;
	text-transform: uppercase;
}

.entry-content h1 { font-size: 3.6rem; }
.entry-content h2 { font-size: 3.2rem; }
.entry-content h3 { font-size: 2.8rem; }
.entry-content h4 { font-size: 2.4rem; }
.entry-content h5 { font-size: 2.2rem; }
.entry-content h6 { font-size: 2rem; }

.entry-content ul ul,
.entry-content ol ol,
.entry-content ul ol,
.entry-content ol ul {
	margin-bottom: 1rem;
}

.entry-content li {
	margin: .5rem 0;
}

.entry-content pre {
	border-radius: .4rem;
	line-height: 1.5;
	margin: 2rem 0;
	padding: 1.5rem;
}

.entry-content blockquote {
	border-left: .1rem solid #000;
	font-style: italic;
	margin: 1.5em 0;
	padding-left: 2rem;
}

.entry-content blockquote cite {
	font-size: .85em;
	letter-spacing: 0.025em;
	text-transform: uppercase;
}


/* Entry Content Media ------------------------- */

.entry-content .aligncenter,
.entry-content .alignnone,
.entry-content .alignwide,
.entry-content .alignfull {
	margin: 3rem auto;
	max-width: 100%;
	width: 100%;
}

.entry-content .alignleft,
.entry-content .alignright {
	margin-bottom: 2rem;
	max-width: 50%;
}

.entry-content .alignleft {
	float: left;
	margin-right: 2rem;
}

.entry-content .alignright {
	float: right;
	margin-left: 3rem;
}

.entry-content .alignwide {
	width: calc( 100vw - 4rem );
}

.entry-content .alignfull,
.entry-content .alignnone {
	max-width: 100vw;
	position: relative;
		left: -2rem;
	width: 100vw;
}

.alignfull figcaption,
.alignfull .wp-caption-text,
.alignnone figcaption,
.alignnone .wp-caption-text {
	padding: 0 2rem;
}

.entry-content img {
	display: block;
	width: 100%;
}

.entry-content .wp-caption-text {
	text-align: left;
}


/* Entry Content Table -------------------------- */

.entry-content tbody td,
.entry-content tbody th {
	padding: 1.5rem .5rem 1.5rem 0;
}

.entry-content tbody tr + tr td,
.entry-content tbody tr + tr th {
	border-top: .1rem solid #000;
}


/* Entry Content Inputs ------------------------- */

.entry-content .button:hover,
.entry-content .faux-button:hover,
.entry-content .wp-block-button__link:hover {
	opacity: 1;
}

/* Entry Content Newsletter Form ------------------------- */

.entry-content .newsletter-form {
	background: #f2f2f2;
	max-width: 54rem;
	padding: 2rem;
}

.entry-content .newsletter-form input[type="text"],
.entry-content .newsletter-form input[type="email"] {
	background: #fff;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Block Editor
/* --------------------------------------------------------------------------------------------- */


/* Pull Quote ------------------------- */

blockquote.wp-block-pullquote {
	border: none;
	padding: 0;
}

blockquote.wp-block-pullquote p {
	font-size: 1.25em;
	line-height: inherit;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Flexible Sections
/* --------------------------------------------------------------------------------------------- */


.flexible-sections .flexible-section-wrapper:last-child {
	padding-bottom: 0;
}


/* SECTION: Artists --------------------------------------- */

.section-artists-list li {
	padding: .3rem 0;
}

/* SECTION: Media ----------------------------------------- */

/* SECTION: Quote ----------------------------------------- */

/* SECTION: Slideshow ------------------------------------- */

.flickity {
	opacity: 0;
}

.flickity-wrapper {
	overflow: hidden;
	position: relative;
}

.flickity,
.flickity * {
	outline: none;
}

.image-slideshow .slide {
	max-width: 79.6rem;
	min-width: 40%;
	padding: 0 .5rem;
	transition: opacity .4s linear, transform .4s linear;
	width: calc( 100% - 5rem );
}

.image-slideshow .slide:not(.is-selected) {
	cursor: w-resize;
	transform-origin: center right;
}

.image-slideshow .slide.is-selected a {
	cursor: zoom-in;
}

.image-slideshow .last-slide-selected .slide:first-child,
.image-slideshow .slide.is-selected ~ .slide {
	transform-origin: center left;
	cursor: e-resize;
}

.image-slideshow .first-slide-selected .slide:last-child {
	transform-origin: center right;
	cursor: w-resize;
}

.slide:not(.is-selected):after {
	content: "";
	display: block;
	position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
		top: 0;
}

.image-slideshow .slide.is-selected {
	z-index: 999;
}

.image-slideshow .slide .wp-caption-text {
	transition: opacity .25s linear;
}

.image-slideshow .slide:not(.is-selected) .wp-caption-text {
	opacity: 0;
}

.slide-image-link {
	display: block;
	width: 100%;
}

.slide-image-link img {
	width: 100%;
}

.flickity-navigation {
	color: #000;
}

.flickity-navigation > div {
	align-items: center;
	background: #fff;
	border-radius: 50%;
	cursor: pointer;
	display: flex;
	height: 5rem;
	justify-content: center;
	position: absolute;
		top: calc( 50% - 2.5rem );
	width: 5rem;
}

.flickity-navigation .flickity-prev { left: -2.5rem; padding-left: 2.25rem; }
.flickity-navigation .flickity-next { right: -2.5rem; padding-right: 2.25rem; }


/* SECTION: Text ------------------------------------------ */

.flexible-section-text .align-content-left { margin-left: 0; }
.flexible-section-text .align-content-right { margin-right: 0; }

.flexible-section-text .entry-content .alignnone,
.flexible-section-text .entry-content .aligncenter,
.flexible-section-text .entry-content .alignwide,
.flexible-section-text .entry-content .alignfull {
	max-width: 100%;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Site Pagination
/* --------------------------------------------------------------------------------------------- */


/* --------------------------------------------------------------------------------------------- */
/*	X. Site Pagination
/* --------------------------------------------------------------------------------------------- */


/* Load More ---------------------------- */

.no-js .pagination-wrapper { 
	display: block !important;
}

.pagination-wrapper.pagination-type-button.loaded-last-page,
.pagination-wrapper.pagination-type-scroll.loaded-last-page { 
	display: none; 
}

#pagination {
	height: 4.8rem;
	position: relative;
	text-align: center;
}

#load-more,
#pagination .out-of-posts,
#pagination .loading-icon,
#pagination .out-of-posts {
	position: absolute;
		left: 50%;
		top: 50%;
	transform: translateX( -50% ) translatey( -50% );
	transition: background-color .15s linear, color .2s linear, opacity .2s linear, transform .2s ease-out;
}

#load-more {
	white-space: nowrap;
}

#pagination:not(.last-page) .out-of-posts,
#pagination.loading #load-more,
#pagination.last-page #load-more,
#pagination:not(.loading) .loading-icon {
	left: -9999rem;
	opacity: 0;
	transform: translateX( -50% ) translateY( -50% ) scale( 0.5 );
	transition: opacity .2s linear, transform .2s ease-out, left 0s .2s, right 0s .2s;
}

#pagination:not(.pagination-type-button) #load-more {
	display: none;
}

html.js body:not(.pagination-type-links) .link-pagination {
	display: none;
}

.no-js #load-more,
.no-js #pagination .loading-icon {
	display: none;
}

#pagination .out-of-posts {
	margin: 0;
	text-align: center;
	width: 100%;
}

/* LINK PAGINATION */

.link-pagination {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.link-pagination.only-next {
	justify-content: flex-end;
}

.link-pagination a {
	text-decoration: none;
}


/* Pagination Links ---------------------------- */

.pagination-links {
	display: flex;
	justify-content: space-between;
}

.pagination-links > a,
.pagination-links > span {
	display: flex;
	flex-wrap: wrap;
}

.pagination-links span.pagination-prev,
.pagination-links span.pagination-next {
	opacity: .25;
}

.pagination-links .pagination-text {
	margin-top: 1rem;
	order: 1;
	width: 100%;
}

.pagination-links .pagination-next {
	justify-content: flex-end;
	text-align: right;
}


/* -------------------------------------------------------------------------------- */
/*	X.	Media Overlay
/* -------------------------------------------------------------------------------- */


#media-overlay {
	background: #fff;
	display: flex;
	overflow: hidden;
}

.media-overlay-inner {
	display: flex;
	flex-direction: column;
	justify-content: stretch;
	width: 100%;
}


/* Media Overlay Header ---------------------------- */

.media-overlay-header,
.media-overlay-nav {
	display: flex;
	justify-content: space-between;
}

.media-overlay-header {
	flex-shrink: 0;
	min-height: 7rem;
}

.media-overlay-header .toggle {
	align-items: center;
	display: flex;
	justify-content: center;
	padding: 2.5rem;
}

.media-overlay-header svg {
	height: 2rem;
	width: 2rem;
}

.media-overlay-nav button {
	font-size: inherit;
}

.media-overlay-title {
	display: none;
}

.media-overlay-nav .toggle {
	display: flex;
	transition: transform .15s linear;
}

.media-overlay-nav .toggle.previous:hover { transform: translateX( -2.5% ); }
.media-overlay-nav .toggle.next:hover { transform: translateX( 2.5% ); }


/* Media Overlay Content ---------------------------- */


.media-overlay-content {
	flex-grow: 1;
	margin: 0 auto;
	width: 100%;
}

.media-overlay-content,
.media-overlay-footer {
	opacity: 0;
	transition: opacity .15s linear;
}

#media-overlay.loaded .media-overlay-content,
#media-overlay.loaded .media-overlay-footer { 
	opacity: 1; 
}


/* Media Overlay Footer ---------------------------- */

.media-overlay-footer {
	align-items: center;
	display: flex;
	flex-shrink: 0;
	justify-content: center;
	min-height: 7rem;
	padding: 2.5rem 2rem;
}

@media ( orientation: landscape ) and ( max-height: 450px ) {

	.media-overlay-footer {
		display: none;
	}

}


/* --------------------------------------------------------------------------------------------- */
/*	X. Site Footer
/* --------------------------------------------------------------------------------------------- */


.footer-first-row {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.footer-logo {
	margin-right: 1rem;
}

.footer-logo svg {
	height: 6rem;
	width: 14.5rem;
}

/* Footer Contact ------------------------- */

.copyright {
	flex-shrink: 0;
}

.footer-contact-details {
	max-width: 52.4rem;
	width: 100%;
}

.footer-phone a {
	text-decoration: none;
}

.footer-inner p.copyright {
    margin-bottom: 0;
}

.publishing-image {
    height: 6rem;
    position: absolute;
        right: 0;
        top: calc(-3rem + -3rem);
    width: 6rem;
}

/* Footer Menu ------------------------- */

.footer-menu {
	display: none;
	margin: -2rem 0 0 -4rem;
}

.footer-menu li {
	margin: 2rem 0 0 4rem;
	text-transform: uppercase;
}

.footer-menu a {
	text-decoration: none;
}


/* --------------------------------------------------------------------------------------------- */
/*	X. Media Queries
/* --------------------------------------------------------------------------------------------- */


@media ( min-width: 550px ) {


	/* Element Base ------------------------------- */

	/* BUTTONS */

	button,
	.button,
	.faux-button,
	.wp-block-button__link,
	input[type="button"],
	input[type="reset"],
	input[type="submit"] {
		font-size: 1.7rem;
	}


	/* Event Pagination ------------------------------- */

	/* EVENT PAGINATION TOP */

	.event-pagination-top {
		display: flex;
	}


}


@media ( min-width: 700px ) {


	/* Element Base ------------------------- */

	figcaption,
	.wp-caption-text,
	.wp-block-image figcaption {
		font-size: 1.6rem;
	}

	/* VANILLA GALLERIES */

	.gallery-columns-2 .gallery-item { max-width: 50%; }
	.gallery-columns-3 .gallery-item { max-width: 33.33%; }
	.gallery-columns-4 .gallery-item { max-width: 25%; }
	.gallery-columns-5 .gallery-item { max-width: 20%; }
	.gallery-columns-6 .gallery-item { max-width: 16.66%; }
	.gallery-columns-7 .gallery-item { max-width: 14.28%; }
	.gallery-columns-8 .gallery-item { max-width: 12.5%; }
	.gallery-columns-9 .gallery-item { max-width: 11.11%; }

	/* FIELDSET */

	fieldset {
		padding: 3rem;
	}

	fieldset legend {
		padding: 0 1.5rem;
	}

	/* INPUTS */

	label {
		font-size: 1.8rem;
	}


	/* Helper Classes ------------------------- */

	/* SECTIONS */

	section {
		padding: 8rem 0;
	}

	.section-inner {
		width: calc( 100% - 8rem );
	}

	/* PADDING HELPERS */

	.tpad-all-0 { padding: 0; }
	.tpad-u-0, .tpad-v-0 { padding-top: 0; }
	.tpad-d-0, .tpad-v-0 { padding-bottom: 0; }
	.tpad-l-0, .tpad-h-0 { padding-left: 0; }
	.tpad-r-0, .tpad-h-0 { padding-right: 0; }

	.tpad-all-10 { padding: 1rem; }
	.tpad-u-10, .tpad-v-10 { padding-top: 1rem; }
	.tpad-d-10, .tpad-v-10 { padding-bottom: 1rem; }
	.tpad-l-10, .tpad-h-10 { padding-left: 1rem; }
	.tpad-r-10, .tpad-h-10 { padding-right: 1rem; }

	.tpad-all-20 { padding: 2rem; }
	.tpad-u-20, .tpad-v-20 { padding-top: 2rem; }
	.tpad-d-20, .tpad-v-20 { padding-bottom: 2rem; }
	.tpad-l-20, .tpad-h-20 { padding-left: 2rem; }
	.tpad-r-20, .tpad-h-20 { padding-right: 2rem; }

	.tpad-all-25 { padding: 2.5rem; }
	.tpad-u-25, .tpad-v-25 { padding-top: 2.5rem; }
	.tpad-d-25, .tpad-v-25 { padding-bottom: 2.5rem; }
	.tpad-l-25, .tpad-h-25 { padding-left: 2.5rem; }
	.tpad-r-25, .tpad-h-25 { padding-right: 2.5rem; }

	.tpad-all-30 { padding: 3rem; }
	.tpad-u-30, .tpad-v-30 { padding-top: 3rem; }
	.tpad-d-30, .tpad-v-30 { padding-bottom: 3rem; }
	.tpad-l-30, .tpad-h-30 { padding-left: 3rem; }
	.tpad-r-30, .tpad-h-30 { padding-right: 3rem; }

	.tpad-all-35 { padding: 3.5rem; }
	.tpad-u-35, .tpad-v-35 { padding-top: 3.5rem; }
	.tpad-d-35, .tpad-v-35 { padding-bottom: 3.5rem; }
	.tpad-l-35, .tpad-h-35 { padding-left: 3.5rem; }
	.tpad-r-35, .tpad-h-35 { padding-right: 3.5rem; }

	.tpad-all-40 { padding: 4rem; }
	.tpad-u-40, .tpad-v-40 { padding-top: 4rem; }
	.tpad-d-40, .tpad-v-40 { padding-bottom: 4rem; }
	.tpad-l-40, .tpad-h-40 { padding-left: 4rem; }
	.tpad-r-40, .tpad-h-40 { padding-right: 4rem; }

	.tpad-all-45 { padding: 4.5rem; }
	.tpad-u-45, .tpad-v-45 { padding-top: 4.5rem; }
	.tpad-d-45, .tpad-v-45 { padding-bottom: 4.5rem; }
	.tpad-l-45, .tpad-h-45 { padding-left: 4.5rem; }
	.tpad-r-45, .tpad-h-40 { padding-right: 4.5rem; }

	.tpad-all-50 { padding: 5rem; }
	.tpad-u-50, .tpad-v-50 { padding-top: 5rem; }
	.tpad-d-50, .tpad-v-50 { padding-bottom: 5rem; }
	.tpad-l-50, .tpad-h-50 { padding-left: 5rem; }
    .tpad-r-50, .tpad-h-50 { padding-right: 5rem; }
    
    .tpad-all-55 { padding: 5.5rem; }
	.tpad-u-55, .tpad-v-55 { padding-top: 5.5rem; }
	.tpad-d-55, .tpad-v-55 { padding-bottom: 5.5rem; }
	.tpad-l-55, .tpad-h-55 { padding-left: 5.5rem; }
	.tpad-r-55, .tpad-h-55 { padding-right: 5.5rem; }

	.tpad-all-60 { padding: 6rem; }
	.tpad-u-60, .tpad-v-60 { padding-top: 6rem; }
	.tpad-d-60, .tpad-v-60 { padding-bottom: 6rem; }
	.tpad-l-60, .tpad-h-60 { padding-left: 6rem; }
	.tpad-r-60, .tpad-h-60 { padding-right: 6rem; }

	.tpad-all-80 { padding: 8rem; }
	.tpad-u-80, .tpad-v-80 { padding-top: 8rem; }
	.tpad-d-80, .tpad-v-80 { padding-bottom: 8rem; }
	.tpad-l-80, .tpad-h-80 { padding-left: 8rem; }
	.tpad-r-80, .tpad-h-80 { padding-right: 8rem; }

	.tpad-all-100 { padding: 10rem; }
	.tpad-u-100, .tpad-v-100 { padding-top: 10rem; }
	.tpad-d-100, .tpad-v-100 { padding-bottom: 10rem; }
	.tpad-l-100, .tpad-h-100 { padding-left: 10rem; }
	.tpad-r-100, .tpad-h-100 { padding-right: 10rem; }

	/* HIDING AND SHOWING */

	.hide-tablet { display: none; }
	.show-tablet { display: initial; }

	/* TEXT SIZES */

	.tfs-inherit { font-size: inherit; }

    .tfs-12 { font-size: 1.2rem; }
	.tfs-14 { font-size: 1.4rem; }
	.tfs-15 { font-size: 1.5rem; }
	.tfs-16 { font-size: 1.6rem; }
	.tfs-17 { font-size: 1.7rem; }
	.tfs-18 { font-size: 1.8rem; }
	.tfs-19 { font-size: 1.9rem; }
	.tfs-20 { font-size: 2.0rem; }
	.tfs-21 { font-size: 2.1rem; }
	.tfs-22 { font-size: 2.2rem; }
	.tfs-23 { font-size: 2.3rem; }
	.tfs-24 { font-size: 2.4rem; }
	.tfs-26 { font-size: 2.6rem; }
	.tfs-28 { font-size: 2.8rem; }
	.tfs-32 { font-size: 3.2rem; }
	.tfs-36 { font-size: 3.6rem; }
	.tfs-40 { font-size: 4.0rem; }
	.tfs-48 { font-size: 4.8rem; }
	.tfs-56 { font-size: 5.6rem; }
	.tfs-64 { font-size: 6.4rem; }
	.tfs-96 { font-size: 9.6rem; }

	/* TEXT COLUMNS */

	.text-cols-t-2 { columns: 2 4rem; }
	.text-cols-t-3 { columns: 3 4rem; }

	.wide-column-gap { column-gap: 8rem; }

	/* GRID STRUCTURE */

	.grid.tcols-2 > .grid-item {
		width: calc( 50% - 2rem );
	}

	.grid.tcols-2.no-hgutter > .grid-item { width: 50%; }

	/* PREVIEW SECTION */

	@media ( max-width: 999px ) {
		.preview-section-wrapper.preview-count-4 .preview-grid-item:nth-child(4) {
			display: none;
		}
	}

	/* ACCORDION */

	@media ( max-width: 999px ) {
		.accordion.full-width-tablet {
			left: calc( 50% - 50vw );
			width: 100vw;
		}
		
		.accordion.full-width-tablet .accordion-button,
		.accordion.full-width-tablet .accordion-content {
			padding-left: 4rem;
			padding-right: 4rem;
		}
	}

	/* FILTER TOGGLE */

	.filter-toggle,
	.filter-container a {
		padding-left: 4rem;
		padding-right: 4rem;
	}

	/* SL INFO */

	.show-on-sl-text {
		display: flex;
		width: 50%;
	}

	/* NEWSLETTER MODAL */

	.modal-box .close-modal {
		right: 1rem;
		top: 1.2rem;
	}

	/* SOCIAL LINKS */

	.social-link {
		height: 3.5rem;
		width: 3.5rem;
	}

	.social-link-facebook svg { width: .9rem; height: 1.7rem; }
	.social-link-instagram svg { width: 1.7rem; height: 1.7rem; }
	.social-link-twitter svg { width: 1.9rem; height: 1.5rem; }

	.social-link + .social-link {
		margin-left: 1rem;
	}

	/* SHARE MODAL */

	#share-modal .modal-title span { display: inline; }


	/* Header Search ---------------------------- */

	body.showing-search .site-wrapper {
		transform: translateY( 20rem ) scale( .95 );
	}

	.header-search .search-field {
		padding-right: 11rem;
	}

	.header-search .search-untoggle {
		right: 4rem;
		top: 4rem;
	}

	.header-search .search-cover-untoggle {
		top: calc( 7.5vh + 16rem );
	}

	/* Previews ---------------------------- */

	/* PREVIEW GRID */

	.preview-grid {
		margin: -.5rem 0 0 -.5rem;
	}
	
	.preview-grid-item {
		margin: .5rem 0 0 .5rem;
		width: calc( 33.33% - .5rem );
	}

	/* Site Header ------------------------- */

	#site-header,
	.header-standin {
		height: 14rem;
	}

	#site-header.is-stuck:not(.reset-height) {
		height: 10rem;
	}

	.header-mobile-toggles .toggle {
		margin-left: 2rem;
	}
	

	/* Mobile Menu ------------------------- */

	.mobile-menu-wrapper {
		padding-top: 14rem;
	}

	.mobile-menu a,
	.mobile-menu .sub-menu {
		padding-left: 4rem;
	}

	.mobile-menu .sub-menu a {
		padding-left: 0;
		padding-right: 0;
	}

	.mobile-menu .sub-menu .sub-menu {
		padding-right: 0;
	}

	/* Sub Page ------------------------------------------ */

	.intro-text + .entry-content-wrapper {
		margin-top: 4rem;
	}

	/* SIDE MENU */ 

	.side-menu-list a {
		padding-left: 4rem;
		padding-right: 4rem;
	}

	.side-menu-list li.current-menu-item > a:before,
	.side-menu-list li.current-menu-item > .ancestor-wrapper > a:before,
	.side-menu-list li.current_page_item > a:before,
	.side-menu-list li.current_page_item > .ancestor-wrapper > a:before {	
		left: -.6rem;
	}

	.side-menu-list .sub-menu-toggle {
		flex: 11.4rem 0 0;
	}

	.side-menu-list ul {
		font-size: 2.1rem;
	}

	/* BECOME MEMBER SECTION */

	.become-member-section .grid {
		left: auto;
		width: 100%;
	}

	/* RELATED CONTENT */

	.related-grid.count-4 .grid-item:nth-child(4) {
		display: block;
    }
    
    /* FOOTER */
    
    .publishing-image {
        height: 9rem;
        position: absolute;
            right: 0;
            top: calc(-4rem + -4.5rem);
        width: 9rem;
    }

	/* Template: Front Page ------------------------------ */

	/* FRONT ABOUT */

	@media ( max-width: 1199px ) {

		.images-canvas {
			max-height: 50rem;
		}

		.canimg:nth-child(11) ~ .canimg {
			display: none !important;
		}

		.canimg.ver.s { width: 10.5vw; max-width: 11.25rem; }
		.canimg.ver.m { width: 14vw; max-width: 16.875rem; }

		.canimg.hor.s { width: 14vw; max-width: 15rem; }
		.canimg.hor.m { width: 21.8vw; max-width: 22.5rem; }
		.canimg.hor.l { width: 28vw; max-width: 27rem; }
		.canimg.hor.xl { width: 28vw; max-width: 36rem; }
	
		/* CANIMG POSITIONING */
		#canimg-1 { bottom: 0; left: 22.3%; z-index: 1; }
		#canimg-2 { bottom: 2rem; right: 1.8%; }
		#canimg-3 { top: 0; left: 40.8%; }
		#canimg-4 { top: 34rem; left: 4%; z-index: 1; }
		#canimg-5 { top: 14rem; left: 6%; }
		#canimg-6 { top: 2rem; left: 15.4%; }
		#canimg-7 { top: 23.5rem; left: 25%; }
		#canimg-8 { bottom: 3rem; left: 50%; }
		#canimg-9 { bottom: 100%; right: 9.3%; }
		#canimg-10 { top: 13rem; left: 67%; }
		#canimg-11 { top: 3rem; right: 2%; }
	
	}

	/* FRONT NEWSLETTER */

	.newsletter-promo {
		left: auto;
		min-height: 60rem;
		width: 100%;
	}


	/* Template: Visit Us -------------------------------- */
	/* Template: Contact Us ------------------------------ */

	.staff-member {
		display: flex;
		justify-content: space-between;
	}

	.staff-member p {
		width: calc( 50% - 1rem );
	}

	/* Template: FAQ ------------------------------------- */
	/* Template: Become a Member ------------------------- */

	.memberships-container {
		left: 0;
		width: 100%;
	}

	.memberships-inner-container {
		border: .1rem solid #ddd;
	}

	.membership-tab-toggle .group-price-span {
		display: block;
	}

	.membership-items li + li {
		margin-top: 3rem;
		padding-top: 3rem;
	}

	.membership-item .faux-button .hide-mobile {
		display: block;
	}

	.membership-tab-toggle .group-price-span {
		display: block;
	}


	/* Template: Online Exhibit -------------------------- */

	.bonnier_exhibition-template-template-online-exhibit .entry-content .alignfull {
		max-width: calc(100vw - 8rem);
		width: calc(100vw - 8rem);
	}

	.bonnier_exhibition-template-template-online-exhibit .wp-block-column {
		margin-bottom: 0;
	}


	/* Exhibit: Single ----------------------- */

	.single-bonnier_exhibition .related-content-title {
		font-size: 4.8rem;
	}

	/* Event: Archive ------------------------ */

	/* EVENT PAGINATION TOP */

	.event-pagination-top .event-pagination-next {
		margin-top: .7rem;
	}


	/* Flexible Sections --------------------------------------- */
	
	/* SECTION: SLIDESHOW */

	.image-slideshow .slide {
		padding: 0 1rem;
		width: calc( 100% - 6rem );
	}


	/* Entry Content ----------------------------------------- */

	.entry-content .aligncenter,
	.entry-content .alignnone,
	.entry-content .alignwide,
	.entry-content .alignfull {
		margin-bottom: 5rem;
		margin-top: 5rem;
	}

	.entry-content .alignwide {
		width: calc( 100vw - 8rem );
	}

	.entry-content .alignnone,
	.entry-content .alignfull,
	.entry-content .alignnone {
		left: -4rem;
	}

	.alignfull figcaption,
	.alignfull .wp-caption-text,
	.alignnone figcaption,
	.alignnone .wp-caption-text {
		padding: 0 4rem;
	}

	/* NEWSLETTER FORM */

	.entry-content .newsletter-form {
		padding: 3rem;
	}


	/* Site Pagination --------------------------------------- */

	/* PAGINATION LINKS */

	.pagination-links > a,
	.pagination-links > span {
		flex-wrap: nowrap;
	}

	.pagination-links .pagination-text {
		margin: 0;
		order: inherit;
	}


	/* Site Footer ------------------------------------------- */

	.footer-second-row {
		align-items: flex-end;
		display: flex;
		justify-content: space-between;
	}

    .footer-second-row .copyright,
    .footer-second-row .divide-conquer-link {
		margin-left: 4rem;
	}

	.footer-email .hide-mobile {
		display: inline;
	}


}


@media ( min-width: 1000px ) {


	.site-wrapper {
		padding-top: .5rem;
	}


	/* Helper Classes ------------------------------- */

	/* PADDING HELPERS */

	.tlpad-all-0 { padding: 0; }
	.tlpad-u-0, .tlpad-v-0 { padding-top: 0; }
	.tlpad-d-0, .tlpad-v-0 { padding-bottom: 0; }
	.tlpad-l-0, .tlpad-h-0 { padding-left: 0; }
	.tlpad-r-0, .tlpad-h-0 { padding-right: 0; }

	.tlpad-all-10 { padding: 1rem; }
	.tlpad-u-10, .tlpad-v-10 { padding-top: 1rem; }
	.tlpad-d-10, .tlpad-v-10 { padding-bottom: 1rem; }
	.tlpad-l-10, .tlpad-h-10 { padding-left: 1rem; }
	.tlpad-r-10, .tlpad-h-10 { padding-right: 1rem; }

	.tlpad-all-20 { padding: 2rem; }
	.tlpad-u-20, .tlpad-v-20 { padding-top: 2rem; }
	.tlpad-d-20, .tlpad-v-20 { padding-bottom: 2rem; }
	.tlpad-l-20, .tlpad-h-20 { padding-left: 2rem; }
	.tlpad-r-20, .tlpad-h-20 { padding-right: 2rem; }

	.tlpad-all-30 { padding: 3rem; }
	.tlpad-u-30, .tlpad-v-30 { padding-top: 3rem; }
	.tlpad-d-30, .tlpad-v-30 { padding-bottom: 3rem; }
	.tlpad-l-30, .tlpad-h-30 { padding-left: 3rem; }
	.tlpad-r-30, .tlpad-h-30 { padding-right: 3rem; }

	.tlpad-all-40 { padding: 4rem; }
	.tlpad-u-40, .tlpad-v-40 { padding-top: 4rem; }
	.tlpad-d-40, .tlpad-v-40 { padding-bottom: 4rem; }
	.tlpad-l-40, .tlpad-h-40 { padding-left: 4rem; }
	.tlpad-r-40, .tlpad-h-40 { padding-right: 4rem; }

	.tlpad-all-50 { padding: 5rem; }
	.tlpad-u-50, .tlpad-v-50 { padding-top: 5rem; }
	.tlpad-d-50, .tlpad-v-50 { padding-bottom: 5rem; }
	.tlpad-l-50, .tlpad-h-50 { padding-left: 5rem; }
	.tlpad-r-50, .tlpad-h-50 { padding-right: 5rem; }

	.tlpad-all-60 { padding: 6rem; }
	.tlpad-u-60, .tlpad-v-60 { padding-top: 6rem; }
	.tlpad-d-60, .tlpad-v-60 { padding-bottom: 6rem; }
	.tlpad-l-60, .tlpad-h-60 { padding-left: 6rem; }
	.tlpad-r-60, .tlpad-h-60 { padding-right: 6rem; }

	.tlpad-all-80 { padding: 8rem; }
	.tlpad-u-80, .tlpad-v-80 { padding-top: 8rem; }
	.tlpad-d-80, .tlpad-v-80 { padding-bottom: 8rem; }
	.tlpad-l-80, .tlpad-h-80 { padding-left: 8rem; }
	.tlpad-r-80, .tlpad-h-80 { padding-right: 8rem; }

	.tlpad-all-100 { padding: 10rem; }
	.tlpad-u-100, .tlpad-v-100 { padding-top: 10rem; }
	.tlpad-d-100, .tlpad-v-100 { padding-bottom: 10rem; }
	.tlpad-l-100, .tlpad-h-100 { padding-left: 10rem; }
	.tlpad-r-100, .tlpad-h-100 { padding-right: 10rem; }

	.tlpad-all-120 { padding: 12rem; }
	.tlpad-u-120, .tlpad-v-120 { padding-top: 12rem; }
	.tlpad-d-120, .tlpad-v-120 { padding-bottom: 12rem; }
	.tlpad-l-120, .tlpad-h-120 { padding-left: 12rem; }
	.tlpad-r-120, .tlpad-h-120 { padding-right: 12rem; }

	/* TEXT SIZES */

	.tlfs-inherit { font-size: inherit; }

	.tlfs-14 { font-size: 1.4rem; }
	.tlfs-15 { font-size: 1.5rem; }
	.tlfs-16 { font-size: 1.6rem; }
	.tlfs-17 { font-size: 1.7rem; }
	.tlfs-18 { font-size: 1.8rem; }
	.tlfs-19 { font-size: 1.9rem; }
	.tlfs-20 { font-size: 2.0rem; }
	.tlfs-21 { font-size: 2.1rem; }
	.tlfs-22 { font-size: 2.2rem; }
	.tlfs-23 { font-size: 2.3rem; }
	.tlfs-24 { font-size: 2.4rem; }
	.tlfs-26 { font-size: 2.6rem; }
	.tlfs-28 { font-size: 2.8rem; }
	.tlfs-32 { font-size: 3.2rem; }
	.tlfs-36 { font-size: 3.6rem; }
	.tlfs-40 { font-size: 4.0rem; }
	.tlfs-48 { font-size: 4.8rem; }
	.tlfs-56 { font-size: 5.6rem; }
	.tlfs-64 { font-size: 6.4rem; }
	.tlfs-72 { font-size: 7.2rem; }
	.tlfs-96 { font-size: 9.6rem; }

	/* HIDING AND SHOWING */

	.hide-tablet-landscape { display: none; }
	.show-tablet-landscape { display: initial; }

	/* GRID STRUCTURE */

	.grid.tlcols-2 > .grid-item { width: calc( 50% - 2rem ); }
	.grid.tlcols-2.no-hgutter > .grid-item { width: 50%; }

	.grid.tlcols-3 > .grid-item { width: calc( 33.33% - 2rem ); }
	.grid.tlcols-3.no-hgutter > .grid-item { width: 33.33%; }

	.grid.tlcols-4 > .grid-item { width: calc( 25% - 2rem ); }
	.grid.tlcols-4.no-hgutter > .grid-item { width: 25%; }

	/* TAXONOMY FILTER */

	.filter-container {
		display: block !important;
		left: auto;
		width: 100%;
	}

	.filter-list {
		background: none;
		display: flex;
		flex-wrap: wrap;
		margin: -1.5rem -3rem 0 0;
		padding: 0;
	}

	.filter-list li {
		margin: 1.5rem 3rem 0 0;
	}
	
	.filter-container a {
		padding: 0;
	}

	/* PREVIEW SECTION */

	.preview-section-wrapper.more-top-on-desktop .preview-section-header {
		align-items: center;
		display: flex;
		justify-content: space-between;
	}

	.preview-section-wrapper.more-top-on-desktop .preview-section-footer {
		display: none;
	}

	.preview-section-wrapper.more-top-on-desktop .preview-section-header a {
		display: block;
    }

	/* BARBA.JS */

	.barba-cover-inner {
		bottom: 4rem;
		left: 4rem;
		right: 4rem;
		top: 4rem;
	}


	/* Previews ---------------------------- */

	/* PREVIEW GRID */
	
	.preview-grid-item {
		width: calc( 25% - .5rem );
	}


	/* Site Header ------------------------- */

	#site-header,
	.header-standin {
		height: 18rem;
	}

	/* STICKY HEADER */

	body:not(.showing-mobile-menu) #site-header.is-stuck {
		box-shadow: 0 0 2rem rgba( 0, 0, 0, 0.15 );
	}

	#site-header.is-stuck:not(.has-sticky-animations) {
		transition: none;
	}

	#site-header.is-stuck {
		transform: translateY( calc( -100% - 2rem ) );
	}
	
	body.scrolling-up #site-header.is-stuck.visible {
		transform: translateY( 0 );
	}

	#site-header.is-stuck:not(.reset-height) {
		height: 12rem;
	}

	/* HEADER INNER */

	.header-logo svg {
		height: 8rem;
		width: 19.4rem;
	}

	.header-logo-dotse svg {
		height: 8rem;
		width: auto;
	}

	.header-inner,
	.header-additionals {
		align-items: stretch;
		display: flex;
		justify-content: space-between;
	}

	.header-contents {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.header-left { 
		min-width: 23.4rem;
		width: 20%; 
	}

	.header-contents { 
		width: 80%; 
	}

	.header-toggles {
		display: flex;
	}

	.header-toggles .item + .item {
		margin-left: 1.8rem;
	}

	.header-toggles .visit-us-link svg {
		overflow: hidden;
	}

	.header-toggles .change-language img {
		height: 2.4rem;
		width: 2.4rem;
	}

	/* LOGO DECONSTRUCTED */

	.js .template-front-page .site-wrapper {
		padding-top: 17.3rem;
	}

	.js  .template-front-page .header-logo-wrapper {
		position: relative;
	}

	.js .template-front-page .header-logo {
		opacity: 0;
	}

	.js .template-front-page .logo-deconstructed {
		display: block;
		height: 29.4rem;
		position: absolute;
			bottom: 0;
			left: 0;
		width: 50rem;
	}

	.logo-deconstructed div {
		transition-property: left, bottom, height, width;
		transition-duration: .35s;
		transition-timing-function: ease-out; 
	}

	.logo-deconstructed div:nth-child(1)  { left: 0; bottom: 28px; height: 56px; width: 32px; }
	.logo-deconstructed div:nth-child(2)  { left: 41px; bottom: 80px; height: 57px; width: 36px; }
	.logo-deconstructed div:nth-child(3)  { left: 71.77px; bottom: 0px; height: 56.77px; width: 32.91px; }
	.logo-deconstructed div:nth-child(4)  { left: 103.07px; bottom: 70.05px; height: 56.77px; width: 32.91px; }
	.logo-deconstructed div:nth-child(5)  { left: 150.36px; bottom: 99.7px; height: 55.03px; width: 10.41px; }
	.logo-deconstructed div:nth-child(6)  { left: 178.41px; bottom: 67.91px; height: 55.51px; width: 26.48px; }
	.logo-deconstructed div:nth-child(7)  { left: 203.52px; bottom: 131.28px; height: 55.09px; width: 31.19px; }
	.logo-deconstructed div:nth-child(8)  { left: 252.77px; bottom: 101.7px; height: 56.94px; width: 31.73px; }
	.logo-deconstructed div:nth-child(9)  { left: 241.68px; bottom: 189.72px; height: 55.03px; width: 32.72px; }
	.logo-deconstructed div:nth-child(10) { left: 282.13px; bottom: 227.98px; height: 57px; width: 36px; }
	.logo-deconstructed div:nth-child(11) { left: 305.28px; bottom: 162.27px; height: 56.77px; width: 32.91px; }
	.logo-deconstructed div:nth-child(12) { left: 351.27px; bottom: 106.01px; height: 56.94px; width: 31.73px; }
	.logo-deconstructed div:nth-child(13) { left: 363.01px; bottom: 206.71px; height: 54.67px; width: 30px; }
	.logo-deconstructed div:nth-child(14) { left: 398.24px; bottom: 158.02px; height: 55.42px; width: 32.43px; }
	.logo-deconstructed div:nth-child(15) { left: 415.2px; bottom: 238.64px; height: 55.36px; width: 34.87px; }
	.logo-deconstructed div:nth-child(16) { left: 453.69px; bottom: 176.02px; height: 56.01px; width: 26.19px; }
	.logo-deconstructed div:nth-child(17) { left: 473.58px; bottom: 237.99px; height: 56.01px; width: 26.19px; }

	#site-header.construct-logo .logo-deconstructed div:nth-child(1)  { left: 0; bottom: 44.49px; height: 35.52px; width: 20.06px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(2)  { left: 22.01px; bottom: 44.11px; height: 36.34px; width: 22.85px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(3)  { left: 47.29px; bottom: 44.48px; height: 35.52px; width: 20.59px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(4)  { left: 71.68px; bottom: 44.48px; height: 35.52px; width: 20.59px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(5)  { left: 96.31px; bottom: 44.48px; height: 35.72px; width: 6.82px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(6)  { left: 107.11px; bottom: 44.48px; height: 35.42px; width: 16.89px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(7)  { left: 126.56px; bottom: 44.48px; height: 35.52px; width: 20.11px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(8)  { left: 147.78px; bottom: 44px; height: 36.53px; width: 20.35px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(9)  { left: 0; bottom: 0; height: 35.52px; width: 21.12px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(10) { left: 20.81px; bottom: .21px; height: 36.34px; width: 22.85px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(11) { left: 46.09px; bottom: .48px; height: 35.52px; width: 20.59px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(12) { left: 69.23px; bottom: 0px; height: 36.53px; width: 20.35px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(13) { left: 89.73px; bottom: .48px; height: 35.52px; width: 19.49px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(14) { left: 111.34px; bottom: .48px; height: 35.52px; width: 20.78px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(15) { left: 133.95px; bottom: 0; height: 35.66px; width: 22.46px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(16) { left: 158.29px; bottom: .58px; height: 35.52px; width: 16.61px; }
	#site-header.construct-logo .logo-deconstructed div:nth-child(17) { left: 177.16px; bottom: .58px; height: 35.52px; width: 16.61px; }


	/* Sub Page ------------------------------------------ */

	.page-section.has-side-menu {
		display: flex;
		justify-content: space-between;
	}

	/* SIDE MENU */

	.desktop-side-menu-wrapper {
		display: block;
	}

	.desktop-side-menu-wrapper.post-type-page {
		flex: 27rem 0 0;
		margin-left: 4rem;
	}

	body.scrolling-up .side-menu-desktop.is_stuck {
		margin-top: 10rem;
	}

	.side-menu-list {
		overflow: visible;
	}

	.side-menu-list li.current-menu-item > a:before,
	.side-menu-list li.current-menu-item > .ancestor-wrapper > a:before,
	.side-menu-list li.current_page_item > a:before,
	.side-menu-list li.current_page_item > .ancestor-wrapper > a:before {
		left: -1.9rem;
	}

	.side-menu-list a {
		padding-left: 3rem;
		padding-right: 3rem;
	}

	.side-menu-list .sub-menu-toggle {
		flex: 6rem 0 0;
	}

	.side-menu-list ul {
		font-size: 1.8rem;
	}

	/* RELATED CONTENT */

	.related-grid.count-4 .grid-item:nth-child(4) {
		display: none;
	}

	.related-grid .preview-inner:before {
		padding-top: 100%;
	}


	/* Template: Front Page ------------------------------ */

	.template-front-page .cart-bar {
		margin-bottom: 2rem;
	}

	/* FRONT EXHIBITS */ 

	.front-big-exhibit-wrapper {
		left: auto;
		width: 100%;
	}

	.front-big-exhibit-wrapper .preview-text-inside .faux-image {
		min-height: 50rem;
		height: 75vh;
	}

	/* FRONT VISIT */

	.front-visit-inner {
		align-items: flex-start;
		display: flex;
	}

	.front-visit-image-wrapper {
		left: auto;
		width: 100%;
	}

	.front-visit-us .accordion {
		flex-shrink: 0;
		margin-left: 4rem;
		min-width: 37.5rem;
		width: 37%;
	}

	/* FRONT ABOUT */
	
	.front-about-us-text {
		margin-left: auto;
	}


	/* Template: Visit Us -------------------------------- */
	/* Template: Contact Us ------------------------------ */
	/* Template: FAQ ------------------------------------- */
	/* Template: Become a Member ------------------------- */


	/* Event: Archive ------------------------- */

	/* EVENT PAGINATION TOP */

	.event-pagination-top {
		margin-top: -.2rem;
		right: 15rem;
		width: 36.5rem;
	}

	.event-pagination-top .event-pagination-next {
		margin: 1rem 0 0 auto;
	}


	/* Event: Single ----------------------------- */

	.event-content-wrapper.section-inner {
		width: calc( 100% - 34rem );
	}

	.single-calendar_event.has-prices .event-content-wrapper {
		min-height: 38rem;
	}

	.admission-prices-wrapper {
		position: absolute;
			bottom: 0;
			right: 0;
			top: 0;
		width: 30rem;
	}


	/* Exhibit: Archive ------------------------------- */

	.exhibit-archive-header .archive-header-inner {
		align-items: flex-end;
		display: flex;
		justify-content: space-between;
	}


	/* Exhibit: Single -------------------------------- */

	.exhibit-inner {
		display: flex;
		justify-content: space-between;
	}

	.desktop-side-menu-wrapper.post-type-exhibit {
		flex-shrink: 0;
		display: block;
		margin-left: 4rem;
		width: 27rem;
	}


	/* Flexible Sections ------------------------------- */

	/* SECTION: Slideshow */
	
	.image-slideshow .slide {
		padding: 0 2.5rem;
		transform: none;
	}

	.image-slideshow .slide:first-child { padding-left: 10rem; }
	.image-slideshow .slide:last-child { padding-right: 10rem; }


	/* Entry Content ------------------------------- */

	.entry-content .alignwide,
	.entry-content .alignfull,
	.entry-content .alignnone {
		left: auto;
		max-width: calc( 100vw - 4rem - 31rem - 4rem );
		width: calc( 100vw - 4rem - 31rem - 4rem );
	}

	.alignfull figcaption,
	.alignfull .wp-caption-text,
	.alignnone figcaption,
	.alignnone .wp-caption-text {
		padding: 0;
	}
	

	/* Media Overlay ------------------------------- */

	.media-overlay-header {
		display: block;
		min-height: 8.7rem;
		padding: 2.9rem 0 2.6rem;
	}

	.media-overlay-title {
		display: block;
	}

	.media-overlay-header .close-media-overlay {
		padding: 3rem;
		position: absolute;
			right: 0;
			top: 0;
	}

	.close-media-overlay svg {
		height: 2.4rem;
		width: 2.4rem;
	}

	.media-overlay-nav .toggle {
		padding: 0;
		position: absolute;
			bottom: 8.7rem;
			top: 8.7rem;
		width: 10rem;
	}

	.media-overlay-nav .toggle.previous { left: 0; }
	.media-overlay-nav .toggle.next { right: 0; }

	.media-overlay-nav svg {
		height: 2.4rem;
		width: 5.92rem;
	}

	.media-overlay-content {
		width: calc( 100% - 20rem );
	}

	.media-overlay-footer {
		min-height: 8.7rem;
	}


	/* Site Footer ------------------------------- */

	.footer-first-row {
		display: block;
		padding-right: 15rem;
	}

	.footer-first-row .social-links {
		position: absolute;
			right: 0;
			top: 2.3rem;
	}

	.footer-logo {
		position: absolute;
			bottom: 0;
			left: 0;
	}

	.footer-logo svg {
		height: 8rem;
		width: 19.4rem;
	}

	.footer-menu {
		display: flex;
	}

	.footer-second-row {
		padding: 17.2rem 0 0 27.2rem;
	}
	

}


@media ( min-width: 1200px ) {


	body {
		font-size: 2rem;
	}


	/* Helper Classes ------------------------------- */

	/* SECTIONS */

	section {
		padding: 10rem 0;
	}

	.section-inner {
		width: calc( 100% - 10rem );
	}

	/* PADDING HELPERS */

	.dpad-all-0 { padding: 0; }
	.dpad-u-0, .dpad-v-0 { padding-top: 0; }
	.dpad-d-0, .dpad-v-0 { padding-bottom: 0; }
	.dpad-l-0, .dpad-h-0 { padding-left: 0; }
	.dpad-r-0, .dpad-h-0 { padding-right: 0; }

	.dpad-all-20 { padding: 2rem; }
	.dpad-u-20, .dpad-v-20 { padding-top: 2rem; }
	.dpad-d-20, .dpad-v-20 { padding-bottom: 2rem; }
	.dpad-l-20, .dpad-h-20 { padding-left: 2rem; }
	.dpad-r-20, .dpad-h-20 { padding-right: 2rem; }

	.dpad-all-35 { padding: 3.5rem; }
	.dpad-u-35, .dpad-v-35 { padding-top: 3.5rem; }
	.dpad-d-35, .dpad-v-35 { padding-bottom: 3.5rem; }
	.dpad-l-35, .dpad-h-35 { padding-left: 3.5rem; }
	.dpad-r-35, .dpad-h-35 { padding-right: 3.5rem; }

	.dpad-all-40 { padding: 4rem; }
	.dpad-u-40, .dpad-v-40 { padding-top: 4rem; }
	.dpad-d-40, .dpad-v-40 { padding-bottom: 4rem; }
	.dpad-l-40, .dpad-h-40 { padding-left: 4rem; }
	.dpad-r-40, .dpad-h-40 { padding-right: 4rem; }

	.dpad-all-50 { padding: 5rem; }
	.dpad-u-50, .dpad-v-50 { padding-top: 5rem; }
	.dpad-d-50, .dpad-v-50 { padding-bottom: 5rem; }
	.dpad-l-50, .dpad-h-50 { padding-left: 5rem; }
	.dpad-r-50, .dpad-h-50 { padding-right: 5rem; }

	.dpad-all-60 { padding: 6rem; }
	.dpad-u-60, .dpad-v-60 { padding-top: 6rem; }
	.dpad-d-60, .dpad-v-60 { padding-bottom: 6rem; }
	.dpad-l-60, .dpad-h-60 { padding-left: 6rem; }
	.dpad-r-60, .dpad-h-60 { padding-right: 6rem; }

	.dpad-all-80 { padding: 8rem; }
	.dpad-u-80, .dpad-v-80 { padding-top: 8rem; }
	.dpad-d-80, .dpad-v-80 { padding-bottom: 8rem; }
	.dpad-l-80, .dpad-h-80 { padding-left: 8rem; }
	.dpad-r-80, .dpad-h-80 { padding-right: 8rem; }

	.dpad-all-100 { padding: 10rem; }
	.dpad-u-100, .dpad-v-100 { padding-top: 10rem; }
	.dpad-d-100, .dpad-v-100 { padding-bottom: 10rem; }
	.dpad-l-100, .dpad-h-100 { padding-left: 10rem; }
	.dpad-r-100, .dpad-h-100 { padding-right: 10rem; }

	.dpad-all-120 { padding: 12rem; }
	.dpad-u-120, .dpad-v-120 { padding-top: 12rem; }
	.dpad-d-120, .dpad-v-120 { padding-bottom: 12rem; }
	.dpad-l-120, .dpad-h-120 { padding-left: 12rem; }
	.dpad-r-120, .dpad-h-120 { padding-right: 12rem; }

	.dpad-all-140 { padding: 14rem; }
	.dpad-u-140, .dpad-v-140 { padding-top: 14rem; }
	.dpad-d-140, .dpad-v-140 { padding-bottom: 14rem; }
	.dpad-l-140, .dpad-h-140 { padding-left: 14rem; }
	.dpad-r-140, .dpad-h-140 { padding-right: 14rem; }

	.dpad-all-150 { padding: 15rem; }
	.dpad-u-150, .dpad-v-150 { padding-top: 15rem; }
	.dpad-d-150, .dpad-v-150 { padding-bottom: 15rem; }
	.dpad-l-150, .dpad-h-150 { padding-left: 15rem; }
	.dpad-r-150, .dpad-h-150 { padding-right: 15rem; }

	/* HIDING AND SHOWING */

	.hide-desktop { display: none; }
	.show-desktop { display: initial; }

	/* FAUX IMAGE */

	.faux-image.cover-image { height: calc( 100vh - 8rem ); }

	/* TEXT SIZES */

	.dfs-inherit { font-size: inherit; }

	.dfs-14 { font-size: 1.4rem; }
	.dfs-15 { font-size: 1.5rem; }
	.dfs-16 { font-size: 1.6rem; }
	.dfs-17 { font-size: 1.7rem; }
	.dfs-18 { font-size: 1.8rem; }
	.dfs-19 { font-size: 1.9rem; }
	.dfs-20 { font-size: 2.0rem; }
	.dfs-22 { font-size: 2.2rem; }
	.dfs-24 { font-size: 2.4rem; }
	.dfs-28 { font-size: 2.8rem; }
	.dfs-32 { font-size: 3.2rem; }
	.dfs-36 { font-size: 3.6rem; }
	.dfs-40 { font-size: 4.0rem; }
	.dfs-48 { font-size: 4.8rem; }
	.dfs-64 { font-size: 6.4rem; }
	.dfs-86 { font-size: 8.6rem; }
	.dfs-96 { font-size: 9.6rem; }
	.dfs-128 { font-size: 12.8rem; }


	/* TEXT COLUMNS */

	.text-cols-d-2 { columns: 2 4rem; }
	.text-cols-d-3 { columns: 3 4rem; }
	.text-cols-d-4 { columns: 4 4rem; }

	.wide-column-gap { column-gap: 4rem; }


	/* BREADCRUMBS */

	.breadcrumbs-wrapper {
		margin: 2rem auto;
	}


	/* GRID STRUCTURE */

	.grid {
		margin: 0 0 -6rem -5rem;
	}

	.grid + .grid { margin-top: 6rem; }
	
	.grid .grid-item {
		margin: 0 0 6rem 5rem;
		width: calc( 100% - 5rem );
	}

	.grid.mcols-2 > .grid-item,
    .grid.tcols-2 > .grid-item,
    .grid.tlcols-2 > .grid-item,
	.grid.dcols-2 > .grid-item { width: calc( 50% - 5rem ); }

	.grid.dcols-2.no-hgutter > .grid-item { width: 50%; }

	.grid.tlcols-3 > .grid-item,
	.grid.dcols-3 > .grid-item { width: calc( 33.33% - 5rem ); }

	.grid.dcols-4 > .grid-item { width: calc( 25% - 5rem ); }

	.grid.tlcols-3.no-hgutter > .grid-item,
	.grid.dcols-3.no-hgutter > .grid-item { width: 33.33%; }

	.grid.dcols-4.no-hgutter > .grid-item { width: 25%; }

	.grid.big-vgutter { margin-bottom: -10rem }
	.grid.big-vgutter .grid-item { margin-bottom: 10rem; }

	.grid.match-gutter { margin-bottom: -5rem; }
	.grid.match-gutter + .grid.match-gutter { margin-top: 5rem; }
	.grid.match-gutter .grid-item { margin-bottom: 5rem; }


	/* Header Menus ---------------------------- */

	.header-contents {
		justify-content: flex-end;
		padding-right: 13rem;
	}

	.header-additionals {
		align-items: flex-end;
		flex-direction: column;
		justify-content: space-between;
		padding-bottom: .3rem;
		position: absolute;
			bottom: 0;
			right: 0;
			top: 0;
	}

	.main-menu {
		margin: -2rem 0 0 -3.6rem;
	}
	
	.main-menu > li {
		margin: 2rem 0 0 3.6rem;
	}


	/* Menu Shelves ---------------------------- */

	.shelf-wrapper {
		display: block;
	}

	.showing-shelf .main-menu > li > a:not(.active-shelf-link) {
		color: #83868C;
	}

	.showing-shelf .main-menu > li.current-menu-item > a:not(.active-shelf-link):after {
		border-bottom-color: #83868C;
	}


	/* Previews ------------------------------------------- */

	/* PREVIEW GRID */

	.preview-grid-wrapper {
		left: auto;
		width: 100%;
	}

	.preview-grid {
		margin: -4rem 0 0 -2rem;
	}
	
	.preview-grid-item {
		margin: 4rem 0 0 2rem;
		width: calc( 25% - 2rem );
    }


	/* Sub Page ------------------------------------------ */

	/* HERO HEADER */

	.hero-header-wrapper.has-media.automatic-aspect-ratio {
		min-height: 66vh;
	}

	.intro-text + .entry-content-wrapper {
		margin-top: 6rem;
	}

	/* SIDE MENU */

	.desktop-side-menu-wrapper.post-type-page {
		flex: 35rem 0 0;
		margin-left: 5rem;
	}

	.side-menu-list ul {
		font-size: 2.1rem;
	}

	/* RELATED CONTENT */
	
	.related-grid .preview-title { font-size: 4rem; }
	.related-grid .preview-subtitle { font-size: 3.2rem; }


	/* Template: Front Page ------------------------------ */

	/* FRONT BIG GRID */

	.big-grid-wrapper .grid {
		padding-left: calc( 100% - 36.3rem );
	}

	.big-grid-wrapper .grid .grid-item:first-child {
		right: 41.3rem;
	}

	/* FRONT VISIT */

	.front-visit-us .accordion {
		margin-left: 5rem;
	}

	/* FRONT ABOUT */

	.front-visit-image-wrapper .faux-image:after {
		padding-top: 80%;
	}

	.front-about-us-text {
		margin-left: 50%;
		width: 50%;
	}

	.images-canvas {
		height: 79.5rem;
		margin: 0 auto;
		width: calc( 100% - 10rem );
	}
	
	.images-canvas:before {
		content: none;
	}
	
	/* CANIMG POSITIONING */
	#canimg-1 { top: calc( 100% + 6rem ); left: 22.3%; z-index: 1; }
	#canimg-2 { bottom: -16rem; left: 1.8%; }
	#canimg-3 { top: 0; left: 40.8%; }
	#canimg-4 { top: 34rem; left: 0; z-index: 1; }
	#canimg-5 { top: 14rem; left: 6%; }
	#canimg-6 { top: calc( 100% + 25rem ); left: 1.8%; }
	#canimg-7 { top: 21.5rem; left: 28%; }
	#canimg-8 { bottom: 0; left: 32.8%; }
	#canimg-9 { bottom: 100%; right: 9.3%; }
	#canimg-10 { top: 21rem; right: 2.7%; }
	#canimg-11 { top: 49rem; right: 37.3%; }
	#canimg-12 { bottom: 6.4rem; right: -2.5rem; }
	#canimg-13 { top: -3.5rem; right: 0; }
	#canimg-14 { bottom: 7.1rem; right: 16.9%; }


	/* Template: Visit Us -------------------------------- */
	/* Template: Contact Us ------------------------------ */

	.staff-member .staff-member-name-title {
		width: calc( 33.33% - 1rem );
	}

	.staff-member .staff-member-contact-details {
		width: calc( 66.66% - 1.6rem );
	}


	/* Template: FAQ ------------------------------------- */
	/* Template: Become a Member ------------------------- */


	/* Event: Archive ------------------------------------ */

	/* EVENT PAGINATION TOP */

	.event-pagination-top {
		left: 71.4rem;
		margin-top: -.3rem;
		right: auto;
	}

	.event-pagination-top .event-pagination-next {
		margin-top: 1.7rem;
	}


	/* Exhibit: Single ----------------------------------- */

	.desktop-side-menu-wrapper.post-type-exhibit {
		width: 35rem;
	}


	/* Event: Single ------------------------------------- */

	.event-content-wrapper.section-inner {
		width: calc( 100% - 40rem );
	}

	.admission-prices-wrapper {
		width: 35rem;
	}


	/* Entry Content ------------------------------------- */

	.entry-content h1,
	.entry-content h2,
	.entry-content h3,
	.entry-content h4,
	.entry-content h5,
	.entry-content h6 {
		margin: 6rem 0 3rem;
	}

	.entry-content h1 { font-size: 5.6rem; }
	.entry-content h2 { font-size: 4.8rem; }
	.entry-content h3 { font-size: 4rem; }
	.entry-content h4 { font-size: 3.2rem; }
	.entry-content h5 { font-size: 2.4rem; }
	.entry-content h6 { font-size: 2rem; }

	.entry-content .aligncenter,
	.entry-content .alignnone,
	.entry-content .alignwide,
	.entry-content .alignfull {
		margin-bottom: 6rem;
		margin-top: 6rem;
	}

	.entry-content .alignwide,
	.entry-content .alignfull,
	.entry-content .alignnone {
		max-width: calc( 100vw - 5rem - 35rem - 5rem - 5rem );
		width: calc( 100vw - 5rem - 35rem - 5rem - 5rem );
	}

}


@media ( min-width: 1300px ) {

	/* Site Header ------------------------------- */

	.main-menu {
		margin: -2rem 0 0 -4rem;
	}
	
	.main-menu > li {
		margin: 2rem 0 0 4rem;
	}

}

@media ( min-width: 1780px ) {


	/* Entry Content ------------------------------- */

	.entry-content .alignwide,
	.entry-content .alignfull,
	.entry-content .alignnone {
		max-width: 128rem;
		width: 128rem;
	}


}