* {margin:0;padding:0;}
html{-webkit-text-size-adjust:100%;box-sizing:border-box;}
*,*:before,*:after{box-sizing:inherit;}
button,input,optgroup,select,textarea{font-family:'Helvetica Neue', Helvetica, Arial, sans-serif;font-size:100%;line-height:1.5;}
button,input{overflow:visible;}
button,select{text-transform:none;}


/* SUPER BASICS */
body {
	font: 100%/1.5 'Helvetica Neue', Helvetica, Arial, sans-serif;
	background-color: #fff;
	color: #000;
	margin-top: 3.5em;
}
h1, .title-large,
h2, .title-medium {
	font-size: 2em;
	line-height: 1;
	margin-top: 1.25rem;
}
h3 {
	font-size: 1em;
}
h4, h5, h6, .title-small {
	font-size: 1em;
	margin: 0;
}
.title-small {
	text-transform: uppercase;
}
.page-title {
	width: 100%;
}
p {
	max-width: 50em;
}
.col-sm  .title-small + .title-large {
	margin-top: .625rem;
}
p,
a.view-all:link,
a.view-all:visited,
.margin-top,
.wide,
.flex .col,
.search-result,
figure,
#site-footer .col {
	margin-top: 1.25em;
}

h3,
figcaption { 
	margin-top: .625em;
}
h1, .page-title,
#featured,
.col-sm .title-large,
.search-result p,
.long-description p:first-child,
.page-news #news,
.page-about #about .col,
#press-photos .col-sm header h2,
#exhibitions .wide .title-large,
section:not(:first-of-type) header h2,
section:last-of-type.dark {
	margin-top: 0;
}
h1.page-title,
h2, .title-medium,
.full {
	margin-bottom: 1.25rem;
}
#site-header,
.page-nav {
	margin-bottom: 1.25em;
}
a.flex-link,
#film-content,
#news article,
#newsletter,
.wide {
	margin-bottom: 2.5em;
}
.topic-details {
  margin-bottom: 2em;
}
section:last-of-type.dark,
.dark .full,
.page-home #featured,
#news article:last-of-type {
	margin-bottom: 0;
}
img {
	display: block;
	max-width: 100%;
	height: auto;
}
del {
	background-color: #000;
	color: #000;
}
a,
button,
input[type="submit"],
details summary {
	transition: .15s;
}
summary {
  cursor: pointer;
}
a:link,
a:visited,
summary {
	color: #0055ff;
	text-decoration: none;
}
a:active,
details[open] summary {
	color: #ff6600;
	transition: 0s;
}
a:focus,
a:hover,
summary:hover {
	color: #3388ff;
}
.dark a:link,
.dark a:visited {
	color: #3388ff;
}
.dark a:active {
	color: #ff6600;
	transition: 0s;
}
.dark a:focus,
.dark a:hover {
	color: #5ca0ff;
}
a.view-all:link,
a.view-all:visited {
	font-weight: bold;
	text-transform: uppercase;
	display: inline-block;
	padding: .5em .625em;
	border-radius: .25em;
	color: #fff;
	background-color: #0055ff;
}
a.view-all:active {
	color: #000;
	background-color: #ff6600;
}
a.view-all:focus,
a.view-all:hover {
	background-color: #3388ff;
}
.view-all::after {
	content: '\276f';
	padding-left: .5em;
}
.dark a.view-all:link,
.dark a.view-all:visited {
	color: #000;
	background-color: #3388ff;
}
.dark a.view-all:active {
	background-color: #ff6600;
}
.dark a.view-all:focus,
.dark a.view-all:hover {
	background-color: #5ca0ff;
}
.single a:focus img,
.single a:hover img {
	opacity: 1;
}
a:focus img,
a:hover img,
#works a:focus img,
#works a:hover img {
	opacity: .8;
	cursor: pointer;
}
.thumb-link:hover .playing .thumb {
	opacity: .2 !important;
}

@media (max-width: 25rem) {
	body {
		font-size: 75%;
	}
}
@media (min-width: 48rem) {
	h1, .title-large {
		font-size: 3em;
		line-height: 1;
	}
}
@media (min-width: 64rem) {
	.title-small + .title-large {
		font-size: 4em;
	}
}

/* SUPER LAYOUT */
.container {
	width: 100%;
	padding: 0 .625em;
	margin: 0 auto;
}
@media (max-width: 47.9rem) {
	#featured .col-sm {
		margin-top: 0;
	}
	.page-public-art .col-sm .title-large,
	.page-exhibitions .col-sm .title-large {
		margin-bottom: 0;
	}
}
@media (min-width: 48rem) {
	.container {
		max-width: 80rem;
		padding: 0 1.25em;
	}
	.flex {
	  	display: flex;
	  	flex-direction: row;
	  	flex-wrap: wrap;
	  	width: 100%;
	}
	.flex .col {
		margin-right: 1.25em;
	}
	.flex .col-md {
		width: calc(2/3*100% - (1 - 2/3)*1.25em);
	}
	.flex .col-sm {
		width: calc(1/3*100% - (1 - 1/3)*1.25em);
	}
	.two-col .col:nth-child(2n),
	.three-col .col:nth-child(3n) {
 	 	margin-right: 0;
	}
	.three-col .col-sm {
		margin-top: 2.5em;
	}
	.three-col .col:nth-child(-n+3) {
  		margin-top: 0;
	}
	.wide .col-md {
		order: 1;
		margin-top: 0;
	}
	.wide .col-sm {
		order: 2;
		margin-right: 0;
		margin-top: 0;
	}
	.page-news #site-content .flex {
		flex-direction: row-reverse;
	}
	.page-news #site-content .col-md {
		margin-right: 1.25em;
	}
	.page-news #site-content .col-sm {
		margin-right: 0;
	}
}

/* SUPER HEADER */
#site-header {
	background-color: #efefef;
	z-index: 100;
	transition: all .15s ease;
	position: fixed;
	width: 100%;
	height: 3.5em;
	top: 0;
}
#site-header.hide {
	top: -3.5em;
}
@media (max-width: 47.9rem) {
	#site-header .container {
		padding: 0;
	}
}

/* SUPER NAVIGATION */
nav ul {
	list-style-type: none;
	padding: 0;
}
.menu-links li {
	float: left;
}
#main-nav > .menu-links li.last {
	margin-left: auto;
	margin-right: 0;
	float: right;
	position: relative;
}
#main-nav a:link,
#main-nav a:visited,
.menu-toggle {
	color: #000;
	padding: 0 .625em;
	line-height: 3.5em;
	display: inline-block;
	background-color: transparent;
	text-transform: uppercase;
}
#main-nav a.site-title:link,
#main-nav a.site-title:visited,
#main-nav a.active:focus,
#main-nav a.active:hover,
#main-nav .submenu a.active,
#main-nav a.site-title.active:focus,
#main-nav a.site-title.active:hover,
#main-nav a:focus,
#main-nav a:hover {
	color: #fff;
	background-color: #000;
}
#main-nav a.active,
#main-nav a.site-title.active,
#main-nav a.site-title:focus,
#main-nav a.site-title:hover,
#main-nav a:active,
.menu-toggle[aria-expanded="true"],
.menu-toggle:focus,
.menu-toggle:hover {
	color: #000;
	background-color: #ff6600;
	outline: none;
}
.menu-toggle {
	border: none;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 2.5em;
	min-height: 3.5em;
}
.menu-toggle .icon {
	width: 1em;
	height: 1em;
}
.menu-toggle #menu-label {
	padding-left: .25em;
}
#main-nav .submenu ul,
#main-nav .submenu ul li {
	display: block;
	float: none;
}
#main-nav .submenu {
	display: none;
}
#main-nav .submenu.active {
    display: block;
    width: 18em;
    height: auto;
    max-width: 100vw;
   	position: absolute;
	right: 0;
	background-color: #ff6600;
	overflow-x: hidden;
	padding: .5em 0 1em;
	z-index: 1;
	transition: .15s;
}
#main-nav .submenu a {
	padding: .5em 1em;
	min-height: min-content;
	line-height: 1.5;
	color: #000;
	display: block;
}
#main-nav .submenu a:focus,
#main-nav .submenu a:hover {
	color: #fff;
	background-color: #000;
}
#main-nav .submenu .menu-children a {
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 400;
	font-size: .9375em;
}
#main-nav .submenu .menu-children a::before {
	content: '—';
	padding-right: .5em;
}

@media (max-width: 35rem) {
	.menu-toggle #menu-label {
		display: none;
	}
}
@media (min-width: 48rem) {
	#main-nav .menu-links a {
		padding: 0 1.25em;
	}
	#main-nav .menu-links .submenu a {
		padding: .5em 1em;
	}
	
}

/* SUPER SEARCH */
.site-search {
	width: 100%;
	padding: 1em 1em 0;
	font-size: 1em;
}
.search-input {
	background: url(img/search.svg) .25em center / 1.25em no-repeat #fff;
	padding-left: 2em;
}
.search-input:focus {
	background: url(img/search.svg) .25em center / 1.25em no-repeat, linear-gradient(#efefef 10%, #fff) left center / 100% repeat;
}
.search-result h3 {
	font-size: 1em;
	line-height: 1.5;
}
.search-result .highlight {
	font-weight: bold;
}
input {
	padding: .5em;
	margin-bottom: .25em;
	border: thin solid #000;
	border-radius: .5em;
	width: 100%;
	display: block;
}
input[type="text"], input[type="email"] {
	background-color: #fff;
	font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
}
input[type="submit"] {
	color: #fff;
	background-color: #000;
	font-weight: bold;
	text-transform: uppercase;
	cursor: pointer;
	-moz-appearance: none;
	-webkit-appearance: none;
    appearance: none;
}
input[type="submit"]:hover {
	background-color: #333;
}
input[type="checkbox"] {
	width: 1em;
	height: 1em;
	float: left;
	margin: .25em .5em 0 0;
}
#site-content .site-search {
	padding: 0;
}
@media (min-width: 48rem) {
	#site-content .site-search {
		max-width: 50rem;
	}
	#site-content .site-search input {
		display: inline-block;
	}
	#site-content .site-search .search-input {
		width: 78%;
	}
	#site-content .site-search input[type="submit"] {
		width: 20%;
	}
	
}

/* SUPER MAIN CONTENT */
#site-content > .container {
	padding-top: 2.5em;
}
.page-nav {
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
}
.page-nav .title-small {
	margin-right: .5em;
}
.page-nav li {
	display: block;
	margin: 0 .5em .5em 0;
}
.page-nav a {
	padding: .25em .5em;
	background-color: #efefef;
	color: #000;
	border-radius: .25em;
}
.page-nav a.active {
	background-color: #ff6600;
	color: #000;
}
.page-nav a:focus,
.page-nav a:hover {
	background-color: #000;
	color: #fff;
}
a.thumb-link {
	display: block;
	text-decoration: none;
}
.thumb-link h3 {
	margin-top: .3125em;
}
a.flex-link {
	display: flex;
}
.full img, img.full, img.thumb {
	width: 100%;
}
section {
	padding-bottom: 2.5em;
}
figcaption {
	color: #767676;
}
.dark figcaption {
	color: #fff;
}
dl dt {
	float: left;
	clear: left;
	display: inline-block;
}
dl dt::after {
	content: '—';
	padding: 0 .25em;
}
ul, ol, blockquote {
	padding-left: 1.25em;
}
ul {
	list-style-type: square;
}
blockquote {
	border-left: .25em solid #efefef;
}
blockquote p:first-of-type::before {
	content: open-quote;
}
blockquote p:last-of-type::after {
	content: close-quote;
}
div.meta {
	text-transform: uppercase;
	font-weight: bold;
}
.dark {
	background-color: #000;
	color: #fff;
	padding: 2.5em 0;
}
.page-home .page-title,
#page-nav-label {
	display: none;
}
.page-home #featured {
	padding-top: .625em;
}
.filmplayer {
	padding: 56.25% 0 0 0;
	position: relative;
}
.filmplayer iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
}
.playing {
	position: relative;
	background-color: #ff6600;
}
.playing .thumb {
	opacity: .2;
	filter: grayscale(100%);
}
.playing::after {
	content: 'NOW PLAYING';
	display: block;
	width: 100%;
	color: #000;
	font-size: 1em;
	text-align: center;
	position: absolute;
	top: calc(50% - .5em);
}
.playing:hover {
	background-color: #000;
	transition: .15s;
}
.playing:hover::after {
	color: #fff;
}
.thumb-link .playing + h3 {
	color: #000;
}
#news article {
	padding-bottom: 2.5em;
	border-bottom: .1875em solid #000;
}
#news article:last-of-type {
	border: none;
	padding-bottom: 0;
}
#newsletter {
	padding: 1em 1.25em 2.5em;
	background-color: #efefef;
	height: fit-content;
}
#newsletter input[type="submit"] {
	margin-top: .5em;
}

/* SUPER FOOTER */
#site-footer {
	padding: 1.25em 0 2.5em;
	background-color: #efefef;
}
address {
	font-style: normal;
	display: block;
}