body {
	margin: 0;
	padding: 0;
	font-family: 'Assistant', sans-serif;
	color: #212121;
}

a, a:hover {
	text-decoration: none;
	transition: color 0.2s;
}

.page {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
	overflow: auto;
}

.page .header .content h1 {
	margin: 0;
	padding: 0;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0.12em;
	display: block;
	line-height: 1;
}

.page .header .content {
	white-space: nowrap;
}

.page .header .content a {
	color: #0F0B09;
}

.page .header .content a:hover {
	color: #552602;
}

.page .header .content ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.page .header .content ul li a {
	text-transform: uppercase;
	letter-spacing: 0.12em;
}

.page .header {
	position: relative;
	padding: 2vw;
	margin-bottom: 2vh;
}

.page .header .content {
	width: 100%;
}

.page .header .content h1 {
	display: block;
	position: relative;
	margin-bottom: 2vh;
	font-size: 8vw;
	text-align: center;
	color: #23160F;
}

.page .header .content ul {
	padding: 0 4vw;
	display: flex;
	justify-content: space-between;
}

.page .header .content ul li {
	font-size: 3vw;
}

.page .header .content .tags {
	margin-top: 1vh;
}

.page .controller .cycle-slideshow {
	position: fixed;
	top: 17vh;
	left: 0;
	right: 0;
	bottom: 0;
}

.page .controller .cycle-slideshow a {
	display: block;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
}

.page .viewer-launcher .info {
	display: none;
}

.page .viewer-shade {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 999;
	background-color: #000000;
	opacity: 0.9;
	display: none;
}

.page .viewer {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1000;
	display: none;
}

.page .viewer .viewer-close-button {
	position: absolute;
	top: 1vw;
	right: 1vw;
	display: block;
	width: 2vw;
	height: 2vw;
	border-radius: 50%;
	background-image: url('/images/btn-close.png');
	background-size: cover;
	background-position: center;
	transition: transform 0.2s;
}

.page .viewer .viewer-close-button:hover {
	transform: scale(1.4);
}

.page .controller .shows-container,
.page .controller .exhibits-container,
.page .controller .about-container,
.page .controller .contact-container {
	position: relative;
}

.page .controller .shows-container .show-container,
.page .controller .exhibits-container .exhibit-container {
	position: relative;
	margin-bottom: 2vmax;
	font-size: 1.2vmax;
	padding: 2vmax;
}

.page .controller .shows-container .show-container .date,
.page .controller .exhibits-container .exhibit-container .date {
	float: right;
}

.page .controller .shows-container .show-container .google-maps-button,
.page .controller .exhibits-container .exhibit-container .google-maps-button {
	display: block;
	background-image: url('/images/btn-google-maps.png');
	background-size: cover;
	background-position: center;
	transition: opacity 0.2s;
}

.page .controller .no-message {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.page .controller .contact-container input[type="text"],
.page .controller .contact-container input[type="email"],
.page .controller .contact-container textarea {
	font-family: 'Assistant', sans-serif;
	line-height: 1;
	color: #886E59;
	border: solid 2px #886E59;
	border-radius: 2px;
	width: 100%;
	transition: color 0.2s, border 0.2s;
	box-sizing: border-box;
}

.page .controller .contact-container textarea {
	resize: none;
}

.page .controller .contact-container input[type="text"]:hover,
.page .controller .contact-container input[type="text"]:focus,
.page .controller .contact-container input[type="email"]:hover,
.page .controller .contact-container input[type="email"]:focus,
.page .controller .contact-container textarea:hover,
.page .controller .contact-container textarea:focus {
	color: #2D2219;
	border-color: #2D2219;
}

.page .controller .contact-container .contact-send-button {
	border: 0;
	font-family: 'Assistant', sans-serif;
	letter-spacing: 0.12em;
	text-transform: uppercase;
	background-color: #2D2219;
	color: #ffffff;
	line-height: 1;
	cursor: pointer;
	transition: background-color 0.2s;
	border-radius: 2px;
	font-weight: 700;
}

.page .controller .contact-container .contact-send-button:hover {
	background-color: #886E59;
}

.page .controller .contact-container .contact-success {
	color: #007C0E;
	font-weight: 700;
	letter-spacing: 0.12em;
	display: none;
}

.page .controller .contact-container .contact-loading {
	display: none;
}

.page .controller .contact-container .contact-error {
	background-color: #D78081;
	border-radius: 2px;
	display: none;
}

@media only screen and (orientation: portrait){
	
	.page.work .header div.tags {
		display: none;
	}
	
	.page.work .header .tags-select-container {
		display: block;
		margin: 0 auto;
		text-align: center;
		margin-top: 2vmax;
	}
	
	.page.work .header .tags-select-container .label {
		font-size: 2vmax;
		margin-right: 0.5vmax;
	}
	
	.page.work .header .tags-select-container select {
		font-size: 2vmax;
	}
	
	.page.work .header .tags-select-container .selected-tag-display {
		display: inline-block;
		padding: 1vmax;
		font-size: 2.5vmax;
		background-color: #534F48;
		color: #ffffff;
		border-radius: 2px;
		line-height: 1;
		position: relative;
	}
	
	.page.work .header .tags-select-container .selected-tag-display select.tags {
		width: 100%;
		height: 100%;
		position: absolute;
		top: -1vmax;
		left: 0;
		opacity: 0;
	}
	
	.page.work .header .tags-select-container .selected-tag-display .label {
		display: inline-block;
		vertical-align: middle;
	}
	
	.page.work .header .tags-select-container .selected-tag-display .arrow {
		display: inline-block;
		width: 0;
		height: 0;
		border-right: solid 1vmax transparent;
		border-left: solid 1vmax transparent;
		border-top: solid 1vmax #ffffff;
		margin-left: 1vmax;
		vertical-align: middle;
	}
	
	.page .controller .work-container {
		padding: 5%;
		text-align: center;
	}
	
	.page .controller .work-container .thumb {
		display: inline-block;
		margin: 3%;
		width: 43%;
		padding-bottom: 43%;
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		transition: opacity 0.2s;
	}
	
	.page .viewer {
		overflow: auto;
	}
	
	.page .viewer .viewer-close-button {
		width: 3vmax;
		height: 3vmax;
	}
	
	.page .viewer .image {
		position: relative;
		display: block;
		margin: 4vmax auto;
		width: 95vw;
		height: 95vw;
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	
	.page .viewer .info {
		background-color: #ffffff;
		padding: 2vw;
		position: relative;
		margin: 0 auto;
		width: 95vw;
		color: #2D2219;
		font-size: 2vmax;
		box-sizing: border-box;
	}
	
	.page .viewer .info .title {
		font-size: 3vmax;
		color: #886E59;
		margin-bottom: 0.8vmax;
		font-weight: 700;
		letter-spacing: 0.12em;
	}
	
	.page .viewer .info .number {
		margin-bottom: 0.8vmax;
	}
	
	.page .viewer .info .story {
		margin-bottom: 0.8vmax;
	}
	
	.page .viewer .info .stats {
		margin-bottom: 0.8vmax;
		font-style: italic;
		font-size: 2vmax;
	}
	
	.page .viewer .info .sold {
		margin-bottom: 0.8vmax;
		font-size: 2vmax;
		text-transform: uppercase;
		color: #ff0000;
		font-weight: 700;
		letter-spacing: 0.12em;
	}
	
	.page .viewer .info .price,
	.page .viewer .info .location {
		margin-bottom: 0.8vmax;
		font-size: 2vmax;
	}
	
	.page .viewer .info .tags {
		font-size: 1.5vmax;
	}
	
	.page .viewer .info .tags .tag {
		color: #886E59;
	}
	
	.page .viewer .info .tags .tag:hover {
		border-bottom: solid 2px #886E59;
	}
	
	.page .controller .shows-container,
	.page .controller .exhibits-container,
	.page .controller .about-container,
	.page .controller .contact-container {
		width: 95%;
		margin: 0 auto;
	}

	.page .controller .shows-container .show-container,
	.page .controller .exhibits-container .exhibit-container {
		position: relative;
		margin: 0 auto;
		margin-bottom: 4vmax;
		font-size: 1.8vmax;
	}

	.page .controller .shows-container .show-container .title,
	.page .controller .exhibits-container .exhibit-container .title {
		font-size: 2.5vmax;
		margin-bottom: 0.8vmax;
		font-weight: 700;
		color: #886E59;
		letter-spacing: 0.12em;
	}
	
	.page .controller .shows-container .show-container .title a,
	.page .controller .exhibits-container .exhibit-container .title a {
		color: #886E59;
	}
	
	.page .controller .shows-container .show-container .title a:hover,
	.page .controller .exhibits-container .exhibit-container .title a:hover {
		border-bottom: solid 2px #886E59;
	}
	
	.page .controller .shows-container .show-container .date,
	.page .controller .exhibits-container .exhibit-container .date {
		background-color: #2D2219;
		padding: 1vmax;
		line-height: 1;
		color: #ffffff;
		text-transform: uppercase;
		letter-spacing: 0.12em;
		font-size: 1.5vmax;
	}
	
	.page .controller .shows-container .show-container .description,
	.page .controller .exhibits-container .exhibit-container .description {
		margin-bottom: 0.8vmax;
	}
	
	.page .controller .shows-container .show-container .location, 
	.page .controller .exhibits-container .exhibit-container .location {
		font-size: 1.5vmax;
	}
	
	.page .controller .shows-container .show-container .google-maps-button,
	.page .controller .exhibits-container .exhibit-container .google-maps-button {
		width: 3vmax;
		height: 3vmax;
	}
	
	.page .controller .exhibits-container .exhibit-container .paintings-container {
		font-size: 1.8vmax;
		margin-bottom: 1.8vmax;
	}
	
	.page .controller .exhibits-container .exhibit-container .paintings-container .label {
		font-weight: 700;
		letter-spacing: 0.12em;
		text-transform: uppercase;
	}
	
	.page .controller .exhibits-container .exhibit-container .paintings-container .exhibit-thumb {
		display: inline-block;
		vertical-align: middle;
		width: 6vmax;
		height: 6vmax;
		background-size: cover;
		background-position: center;
		margin-right: 0.2vmax;
		margin-bottom: 0.2vmax;
		transition: opacity 0.2s;
	}
	
	.page .controller .contact-container {
		width: 95%;
		margin: 0 auto;
	}
	
	.page .controller .contact-container .verbiage {
		font-size: 3vmax;
		margin-bottom: 3vmax;
	}
	
	.page .controller .contact-container .row {
		margin-bottom: 1.5vmax;
	}
	
	.page .controller .contact-container input[type="text"],
	.page .controller .contact-container input[type="email"],
	.page .controller .contact-container textarea {
		font-size: 3vmax;
		padding: 0.6vmax;
	}
	
	.page .controller .contact-container textarea {
		height: 15vmax;
	}
	
	.page .controller .contact-container .contact-send-button {
		font-size: 3vmax;
		padding: 1vmax;
	}
	
	.page .controller .contact-container .contact-loading {
		width: 3vmax;
		height: 3vmax;
	}
	
	.page .controller .contact-container .contact-error {
		font-size: 2.4vmax;
		padding: 1vmax;
		margin-bottom: 1vmax;
	}
	
	.page .controller .contact-container .contact-success {
		font-size: 3vmax;
		text-align: center;
	}
	
	.page .controller .about-container img {
		display: block;
		margin: 0 auto 2vmax;
		max-width: 100%;
	}
	
	.page .blurb {
		position: fixed;
		z-index: 500;
		background-color: #ffffff;
		padding: 1.5vmax;
		font-size: 2.5vmax;
		bottom: 5vmax;
		right: 5vmax;
		left: 5vmax;
		border: solid 1px #212121;
		border-radius: 2px;
		box-shadow: 0 0 2vmin #212121;
	}
	
	.page .blurb .blurb-dismiss-button {
		display: block;
		width: 3vmax;
		height: 3vmax;
		position: absolute;
		top: -1.5vmax;
		right: -1.5vmax;
		background-image: url('/images/btn-close.png');
		background-size: cover;
		background-position: center;
		border-radius: 50%;
		background-color: #212121;
		border: solid 2px #212121;
	}
}

@media only screen and (orientation: landscape){

	.page:not(.work) .header {
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		width: 40vw;
		padding: 0;
	}
	
	.page.work .header {
		position: fixed;
		top: 0;
		left: 0;
		bottom: 0;
		width: 30vw;
		padding: 0;
	}
	
	.page:not(.work) .header .content {
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		width: auto;
	}
	
	.page.work .header .content {
		position: absolute;
		top: 2vw;
		left: 2vw;
	}
	
	.page:not(.work) .header .content h1 {
		font-size: 3vw;
		margin-bottom: 3vw;
		text-align: left;
	}
	
	.page.work .header .content h1 {
		font-size: 2.5vw;
		margin-bottom: 2vw;
		text-align: left;
	}
	
	.page .header .content ul {
		display: block;
		padding: 0;
	}
	
	.page:not(.work) .header .content ul li {
		margin-bottom: 1.5vw;
		display: block;
		font-size: 2vw;
	}
	
	.page.work .header .content ul li {
		margin-bottom: 1vw;
		display: block;
		font-size: 1.5vw;
	}
	
	.page.work .header .content ul li .tags {
		font-size: 1.5vw;
		padding-left: 1.2vw;
		margin-top: 1vw;
	}
	
	.page.work .header .content ul li .tags .tag-link {
		text-transform: none;
		color: #987C66;
		display: block;
		margin-bottom: 1vw;
	}
	
	.page.work .header .content ul li .tags .tag-link.selected,
	.page.work .header .content ul li .tags .tag-link:hover {
		color: #0F0B09;
	}
	
	.page.work .header .tags-select-container {
		display: none;
	}
	
	.page .header .content ul li a {
		
	}
	
	.page .controller {
		position: fixed;
		top: 0;
		right: 0;
		bottom: 0;
		width: 60vw;
		overflow: auto;
	}
	
	.page.work .controller {
		width: 70vw;
	}
	
	.page .controller .cycle-slideshow {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}
	
	.page .controller .cycle-slideshow .slide {
		display: block;
		width: 100%;
		height: 100%;
		background-size: cover;
		background-position: center;
	}
	
	.page .controller .work-container {
		padding: 5%;
	}
	
	.page .controller .work-container .thumb {
		display: inline-block;
		margin: 3%;
		width: 26.5%;
		padding-bottom: 25%;
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
		transition: opacity 0.2s;
	}
	
	.page .controller .work-container .thumb:hover {
		opacity: 0.5;
	}
	
	.page .viewer .image {
		position: absolute;
		top: 5vw;
		left: 5vw;
		bottom : 5vw;
		width: 55vw;
		background-size: contain;
		background-position: center;
		background-repeat: no-repeat;
	}
	
	.page .viewer .info {
		background-color: #ffffff;
		padding: 2vw;
		position: absolute;
		right: 5vw;
		width: 25vw;
		top: 50%;
		transform: translateY(-50%);
		color: #2D2219;
		font-size: 1.1vw;
	}
	
	.page .viewer .info .title {
		font-size: 1.4vw;
		color: #886E59;
		margin-bottom: 0.8vw;
		font-weight: 700;
		letter-spacing: 0.12em;
	}
	
	.page .viewer .info .number {
		margin-bottom: 0.8vw;
	}
	
	.page .viewer .info .story {
		margin-bottom: 0.8vw;
	}
	
	.page .viewer .info .stats {
		margin-bottom: 0.8vw;
		font-style: italic;
		font-size: 1vw;
	}
	
	.page .viewer .info .sold {
		margin-bottom: 0.8vw;
		font-size: 1vw;
		text-transform: uppercase;
		color: #ff0000;
		font-weight: 700;
		letter-spacing: 0.12em;
	}
	
	.page .viewer .info .price,
	.page .viewer .info .location {
		margin-bottom: 0.8vw;
		font-size: 1vw;
	}
	
	.page .viewer .info .tags {
		font-size: 0.9vw;
	}
	
	.page .viewer .info .tags .tag {
		color: #886E59;
	}
	
	.page .viewer .info .tags .tag:hover {
		border-bottom: solid 2px #886E59;
	}
	
	.page .controller .shows-container,
	.page .controller .exhibits-container,
	.page .controller .about-container {
		width: 75%;
	}

	.page .controller .shows-container .show-container,
	.page .controller .exhibits-container .exhibit-container {
		position: relative;
		margin: 0 auto;
		margin-bottom: 2vmax;
		font-size: 1.2vmax;
		padding: 2vmax;
	}

	.page .controller .shows-container .show-container .title,
	.page .controller .exhibits-container .exhibit-container .title {
		font-size: 2vmax;
		margin-bottom: 0.8vmax;
		font-weight: 700;
		color: #886E59;
		letter-spacing: 0.12em;
	}
	
	.page .controller .shows-container .show-container .title a,
	.page .controller .exhibits-container .exhibit-container .title a {
		color: #886E59;
	}
	
	.page .controller .shows-container .show-container .title a:hover,
	.page .controller .exhibits-container .exhibit-container .title a:hover {
		border-bottom: solid 2px #886E59;
	}
	
	.page .controller .shows-container .show-container .date,
	.page .controller .exhibits-container .exhibit-container .date {
		background-color: #2D2219;
		padding: 1vmax;
		line-height: 1;
		color: #ffffff;
		text-transform: uppercase;
		letter-spacing: 0.12em;
		font-size: 1vmax;
	}
	
	.page .controller .shows-container .show-container .description,
	.page .controller .exhibits-container .exhibit-container .description {
		margin-bottom: 0.8vmax;
	}
	
	.page .controller .shows-container .show-container .location,
	.page .controller .exhibits-container .exhibit-container .location {
		font-size: 0.9vmax;
	}
	
	.page .controller .shows-container .show-container .google-maps-button,
	.page .controller .exhibits-container .exhibit-container .google-maps-button {
		width: 3vmax;
		height: 3vmax;
	}
	
	.page .controller .shows-container .show-container .google-maps-button:hover,
	.page .controller .exhibits-container .exhibit-container .google-maps-button:hover {
		opacity: 0.5;
	}
	
	.page .controller .exhibits-container .exhibit-container .paintings-container {
		font-size: 1vmax;
		margin-bottom: 1.5vmax;
	}
	
	.page .controller .exhibits-container .exhibit-container .paintings-container .label {
		font-weight: 700;
		letter-spacing: 0.12em;
		text-transform: uppercase;
	}
	
	.page .controller .exhibits-container .exhibit-container .paintings-container .exhibit-thumb {
		display: inline-block;
		vertical-align: middle;
		width: 4vmax;
		height: 4vmax;
		background-size: cover;
		background-position: center;
		margin-right: 0.2vmax;
		margin-bottom: 0.2vmax;
		transition: opacity 0.2s;
	}
	
	.page .controller .exhibits-container .exhibit-container .paintings-container .exhibit-thumb:hover {
		opacity: 0.5;
	}
	
	.page .controller .contact-container {
		width: 60%;
	}
	
	.page .controller .contact-container .verbiage {
		font-size: 2vmax;
		margin-bottom: 2vmax;
	}
	
	.page .controller .contact-container .row {
		margin-bottom: 1.5vmax;
	}
	
	.page .controller .contact-container input[type="text"],
	.page .controller .contact-container input[type="email"],
	.page .controller .contact-container textarea {
		font-size: 1.5vmax;
		padding: 0.6vmax;
	}
	
	.page .controller .contact-container textarea {
		height: 7vmax;
	}
	
	.page .controller .contact-container .contact-send-button {
		font-size: 2vmax;
		padding: 1vmax;
	}
	
	.page .controller .contact-container .contact-loading {
		width: 3vmax;
		height: 3vmax;
	}
	
	.page .controller .contact-container .contact-error {
		font-size: 1.4vmax;
		padding: 1vmax;
		margin-bottom: 1vmax;
	}
	
	.page .controller .contact-container .contact-success {
		font-size: 3vmax;
	}
	
	.page .controller .about-container img {
		max-width: 100%;
		display: block;
		margin: 3vmax auto;
	}
	
	.page .blurb {
		position: fixed;
		z-index: 500;
		max-width: 30vw;
		background-color: #ffffff;
		padding: 1.5vmax;
		font-size: 1.5vmax;
		bottom: 6vmin;
		right: 6vmin;
		border: solid 1px #212121;
		border-radius: 2px;
		box-shadow: 0 0 2vmin #212121;
	}
	
	.page .blurb .blurb-dismiss-button {
		display: block;
		width: 1.6vmax;
		height: 1.6vmax;
		position: absolute;
		top: -0.8vmax;
		right: -0.8vmax;
		background-image: url('/images/btn-close.png');
		background-size: cover;
		background-position: center;
		border-radius: 50%;
		background-color: #212121;
		border: solid 2px #212121;
		transition: transform 0.2s;
	}
	
	.page .blurb .blurb-dismiss-button:hover {
		transform: scale(1.4);
	}
}
