/*

COLOR PALLETE
blue: #95a7cb
lightblue: #a8b6d3
mustard: #ceb101
poo: #7a7612
pink: #ba8396

*/


/*

CSS DIRECTORY
1. Global
2. Page Parts
3. Components
4. Sections and Pages

*/

/* --- GLOBAL --- */

/* Fonts */

@font-face {
  font-family: 'Eesti';
  font-weight: normal;
  font-style: normal;
  src: url(../fonts/eesti-medium.otf);
}

@font-face {
  font-family: 'EestiLight';
  font-weight: normal;
  font-style: normal;
  src: url(../fonts/eesti-light.otf);
}

@font-face {
  font-family: 'Stanhope';
  font-weight: normal;
  font-style: normal;
  src: url(../fonts/stanhope.ttf);
}


/* Clears */

html, body {
  height:100%;
  overflow-x:hidden;
}

*, *:before, *:after {
	margin: 0;
	padding: 0;
	font-size: 100%;
	font-weight: normal;
	border: 0px solid;
	-webkit-font-smoothing: antialiased;
  -webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	list-style: none;
	line-height: inherit;
  color: inherit;
  text-align: inherit;
  text-decoration: none;
  border-collapse: collapse;
  -webkit-border-horizontal-spacing: 0px;
  -webkit-border-vertical-spacing: 0px;
}

a img {
  display: block;
}

/* Type */

body {
	font: 18px/1.2em Eesti, sans-serif;
	color: #000;
	background: #95a7cb;
	margin: 0 0;
	transition: all .5s;
}

h2, h3, h4 {
  text-align: center;
  line-height: 1.1em;
}

h2,
h3,
.gallery .title,
.gallery .title *,
#details h4 {
  font: 43px/1em Eesti, sans-serif;
  text-align: center;
  margin-top: 100px;
  text-transform: uppercase;
  font-variant-ligatures: none;
}

h2 {
  margin-bottom: 1em
}

.entry h2 {
  margin-bottom: 120px;
}

h3.galleryHeader {
  font-size: 24px;
  text-decoration: underline;
  text-transform: none;
  margin-top: 35px;
  bottom: -50px;
  position: relative;
  z-index: 99;
}

h5 + h2,
li h4 {
  padding-top: 0;
}

#details h4 {
  font-size: 1em;
  margin-bottom: .25em;
}

#details h4 + p {
  margin-top: 0;
}

.cols.two + h2 {
  margin-top: 125px;
}


h2 + .cols.two {
  margin-top: 80px;
}

h4,
#details,
li.title,
li.title * {
  font: 30px/1.1em Stanhope, serif;
}

h4 {
  margin-top: 100px;
  margin-bottom: 1em;
}

.cols article h4,
li h4 {
  margin: 0 0;
}

h2 + h4,
h2 + #details {
  margin-top: -5px;
}

h4 + .small {
  margin-top: -1em !important;
}

h4 + p {
  margin-top: 2em;
}

h5,
h6,
.type,
article.blurb .type,
.eventList .info,
#pageNav li,
#filters,
.band,
.small,
#banner {
  margin-bottom: .6em;
  font: 13px/1.2em Eesti, sans-serif;
  text-align: center;
}

h2 .type,
h2 .info {
  font-size: .5em;
  display: block;
  text-transform: uppercase;
  font-variant-ligatures: none;
}

p {
  margin-bottom: .75em;
}

li:last-child p:last-child {
  margin-bottom: 0;
}

.blurb,
#relatedContent p {
  font: 18px/1.2em Stanhope, serif;
  text-align: center;
  margin: 0 auto;
}

.centered {
  text-align: center;
}

main strong {
  font-family: Eesti;
}

p strong:only-child {
  margin-top: 1em;
}

main p a,
p a:hover,
nav a:hover,
#pageNav a:hover,
.inquires:hover a,
footer a:hover {
  text-decoration: underline;
}

article.entry,
#introduction,
.introduction {
  font-size: 1.5em;
  line-height: 1.2em;
  font-family: EestiLight, sans-serif;
}

.artist {
  display: block;
}

/* Stanhope */

.date,
.year,
.dates,
.location,
.serif,
nav a,
.eventList p,
.pinboardList p,
#searchForm input,
#eventTable td.info p,
.xevents h3,
.productList li,
#details  {
  font-family: Stanhope, serif;
}


/* Forms */

input:focus {
  outline: none;
  border: none;
}

button {
  background: inherit;
  cursor: pointer;
}

button:focus {
  outline:0;
}

[type="radio"] {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px; margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

/* One radio button per line */
label {
  display: block;
  cursor: pointer;
  xline-height: 2.5;
  margin-bottom: 1em;
}

[type="radio"] + span {
  display: block;
}

/* the basic, unchecked style */
[type="radio"] + span:before {
  content: '';
  display: inline-block;
  width: .75em;
  height: .75em;
  border: 0.125em solid #000;
  margin-right: 0.5em;
  transition: 0.5s ease all;
}

/* the checked style using the :checked pseudo class */
[type="radio"]:checked + span:before {
  background: white;
}

/* never forget focus styling */
[type="radio"]:focus + span:after {
  content: '\0020\2190';
  vertical-align: -0.125em;
}



/* ---- PAGE PARTS ---- */


/* Layout */

header,
main,
#searchResults,
#cart {
  margin: 0 auto;
  width: 1000px;
}

header {
  height: 20px;
  margin-top: 40px;
  margin-bottom: 40px;
  position: relative;
}

main {
  padding-top: 150px;
  min-height: calc(100vh - 500px);
}

nav {
  text-align: center;
  width: 500px;
  float: right;
  position: relative;
}

footer {
  background: #ceb101;
  color: #fff;
  padding: 50px 0 60px 0;
  margin-top: 225px;
}


/* Main */

main > :first-child,
article:first-child > :first-child {
  margin-top: 0;
}

.home main,
main.event {
  padding-top: 0;
}



/* Tables */

table {
  text-align: left;
  border-collapse: collapse;
  width: 100%;
  margin-bottom: .5em;
}

table th {
  font-family: 'Eesti' !important;
}

table th,
table td {
  padding: .5em .5em .5em 0;
}

table td:empty:after {
  content: '—';
}


/* Columns & Rows */

.col {
  float: left;
  width: 45%;
  overflow: hidden;
}

.col + .col {
  margin-left: 10%;
}

.wide {
  width: 1000px;
  overflow: hidden;
}

article .wide {
  width: 125%;
  margin-left: -12.25%;
}

.col.slim {
  width: 21.25%;
  margin-left: 5%;
}

.col.slim:first-of-type {
  margin-left: 0;
}

.cols {
  overflow: hidden;
}

.cols.two {
  columns: 2;
  column-gap: 100px;
}

.cols.three {
  columns: 3;
  column-gap: 100px;
}

.cols.two article:only-child {
  column-span: all;
}

.cols .wide,
.cols .onNow {
  column-span: all;
}

.cols article,
.cols p {
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}

.cols article {
  margin-top: 60px;
}

.cols article:first-child {
  margin-top: 0
}


.cols img {
  width: 100%;
  height: auto;
}

.full { /* 100% of Body */
  width: 100%;
  position:absolute;
  left:0;
  right:0;
}

.rows {
  overflow: hidden;
}


.rows:not(.gallery) ul,
.rows .cell  {
  float: left;
}

.rows.three ul {
  width: 30%;
}

.rows.four ul,
.rows.four .cell {
  width: 25%;
}

.rows.three li:nth-child(3n+3) ul {
  margin-right: 0;
  clear: right;
}

.rows.three  li:nth-child(3n+3) ul {
  clear: right;
}

.rows.three li:nth-child(3n+1) ul {
  clear: left;
}

.rows.three li:nth-child(3n+2) ul {
  margin: 0 50px;
}

.rows  li {
  align-items:center;
}


/* Images */

img {
  height: auto;
  width: auto;
}

.col img,
li img {
  width: 100%;
  height: auto;
  position: relative;
  display: block;
}

.imgContainer {
  background: #a8b6d3;
  display: block; /* adds space around hover :( )*/
  display: inline-block;
}

.imgContainer.loaded {
  background: transparent;
}

.anchor + .imgContainer {
  margin-top: 60px;
}

article .imgContainer {
  max-width: 80%;
  display: block;
  margin: 0 auto;
}

.cols.two article .imgContainer {
  max-width: 100%;
}

.imgContainer.portrait {
  /* width: 70% */
}

.imgContainer img {
  display: block;
  height: auto;
  width: 100%;
  max-width: 100%;
}

/* .imgContainer.portrait img {
  width: 100%;
  height: auto;
}

.imgContainer.landscape img {
    width: 100%;
    height: auto;
} */

.squared .img a {
  margin: 0 auto;
}

.squared .imgContainer {
  margin: 0 auto;
}


.squared .imgContainer img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: auto;
}

.imgContainer + h4,
.anchor + h4,
.imgContainer + p  {
  margin-top: 70px;
}

.tint {
  position: relative;
}

.clickable.hovered .tint::before,
.clickable .tint:hover::before,
a .tint:hover::before  {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(206,177,1, .6);
  transition: all .3s linear;
  opacity: .6;
  z-index: 99;
  transition: opacity .5s;
}


/* Gallery Nav & Slick */

#images .imgContainer {
  max-width: none;
  max-height: none;
  background: transparent;
}

#images img {
  width: auto !important;
   max-height: 450px !important;
   margin: 0 auto;
}

#images .imageCaption {
  font: 13px/1.2em EestiLight, sans-serif;
  text-align: center;
  width: 65%;
  margin: 1em auto 0 auto;
}

#images .imageCaption strong {
  font-family: Eesti;
}

.gallery {
  border-top: 1px solid;
  border-bottom: 1px solid;
  overflow: visible !important;
  padding: 50px 0 30px 0;
  margin-top: 50px;
}

#images .gallery {
  padding: 50px 0;
}

.gallery + h4 {
  margin-top: 175px;
}

.slick-slide {
  display: inline-block !important;
  vertical-align: middle;
  float:none;
}

.slick-prev,
.slick-next {
  position: absolute;
  top: -1px;
  z-index: 999;
  width: calc(50vw - 50%);
  height: calc(100% + 2px);
  border-top: 1px solid;
  border-bottom: 1px solid;
  text-indent: 1000em;
}

.slick-next {
  left: calc(50% + 50%);
}

.slick-prev {
  right: 100%;
}

.slick-prev:after,
.slick-next:after {
  content: '';
  width: 22px;
  height: 22px;
  position: absolute;
  top: calc(50% - 11px);
  transform: rotate(45deg);
  background: transparent;
}

.slick-prev:after {
  border-bottom: 1px solid;
  border-left: 1px solid;
  left: 23px;
}

.slick-next:after {
  border-top: 1px solid;
  border-right: 1px solid;
  right: 23px;
}

.slick-prev:before,
.slick-next:before {
  content: '';
  width: 35px;
  height: 100%;
  position: absolute;
  top: 0;
}

.slick-next:hover::before,
.slick-prev:hover::before {
  background: #7a7612;
}

.slick-prev:before {
  border-right: 1px solid;
  left: 0;
}

.slick-next:before {
  border-left: 1px solid;
  right: 0
}

.slick-list {
  padding: 0px;
}

.slick-dots {
  background: transparent;
  text-align: center;
  float: none !important;
  padding-bottom: 0;
  margin-bottom: -10px;
  margin-top: -20px;
}

.slick-dots li {
  display: inline-block;
  opacity: .5;
}

.slick-dots li::before {
  content: none;
}

.slick-dots button {
  width: 13px;
  height: 13px;
  margin: 0 4px;
  position: relative;
  border-radius: 100%;
  display: inline-block;
  background-color: #fff;
  text-indent: -100em;
  overflow: hidden;
}

.slick-dots li.slick-active {
  opacity: 1;
}

article .slick-next,
article .slick-prev {
  xwidth: calc(50vw - 400px);
}

article .slick-next {
  xleft: calc(50% + 400px);
}

article .slick-dots,
#overlay .slick-dots {
  display: none !important;
}

.galleryHeader + .gallery {
  margin-top: 0;
  padding-top: 100px
}

.gallery h2 {
  margin-bottom: .5em;
}

.gallery .blurb {
  margin-bottom: 2em;
}


/* Entries */


.entry #images {
  margin: 70px 0 100px 0;
}

/* Articles */

main article {
  width: 80%;
  margin: 0 auto;
}

main .cols.two article, /* Right? */
main .col article {
  width: 100%;
}

article p + ul {
  margin-top: -.75em;
  margin-bottom: .75em;
}

article ul li {
  margin-left: .5em;
  text-indent: -.5em;
}

article ul li:before {
  content: "– ";
}

#board article ul li:before {
  content: none;
}

article h5,
article h6 {
  font-size: 1em;
  margin-top: 1.5em;
  xmargin-bottom: .75em;
  text-align: left;
}

article h4 + h6 {
  margin-top: 2em;
}

article + .cols {
  margin-top: 100px;
}

/* Fix Poorly Styled CMS Content */
.lab article h1,
.lab article h3,
.lab article h5,
.about article h1,
.about article h3,
.about article h5,
article .description h1,
article .description h3,
article .description h5  {
  xdisplay: none;
  xcolor: red;
}


/* Header & Nav */

h1 a {
  display: block;
  background: transparent url(../images/css/eye.svg) no-repeat;
  width: 200px;
  height: 125px;
  text-indent: -1000em;
  overflow: hidden;
  position: fixed;
  margin-left: -100px;
  top: 40px;
  z-index: 1000;
  position: fixed;
}

nav li {
  display: inline-block;
  margin-right: 15px;
}

nav li:nth-last-child(2),
nav li:last-child {
  margin-right: 0;
}

nav .icons {
  position: absolute;
  right: -100px;
  top: 0;
  width: 100px;
}

nav .icons li {
  margin-right: 0;
}

.icons a {
  display: block;
  background: white;
  width: 20px;
  height: 20px;
  text-indent: -1000em;
  overflow: hidden;
  margin-left: 10px;
}

h1 a:hover,
.icons a:hover,
#banner a:hover {
  opacity: .85;
}

#showCart {
  width: 24px;
  height: 20px;
  background: transparent url(../images/css/cart.svg) no-repeat;
  background-size: cover;
}

#showSearch {
  background: transparent url(../images/css/search.svg) no-repeat;
}

#cartCount {
  color: #FFF;
  display: block;
  position: absolute;
  right: -.1em;
  top: -.25em;
  width: 1.3em;
  height: 1.3em;
  box-sizing: initial;
  background: transparent;
  border: 1px solid #fff;
  text-align: center;
  border-radius: 50%;
  line-height: 1.5em;
  box-sizing: content-box;
  font-size: .5em;
}

body[class*="exhibitions"] a[href="/exhibitions"],
.events a[href="/exhibitions/calendar"],
.archive a[href="/exhibitions"],
.calendar a[href="/exhibitions/calendar"],
.lab a[href="/lab"],
.about a[href="/about"],
.shop a[href="/shop"] {
  text-decoration: underline;
}

body[class*="calendar"] a[href="/exhibitions"] {
  text-decoration: none !important;
}


#banner {
  width: 100vw;
  background: #fff;
  text-transform: uppercase;
  font-variant-ligatures: none;
  color: #ceb101;
  padding: 1em 0 .9em 0;
  letter-spacing: 1px;
}

#banner a {
  text-decoration: underline;
}

#banner + #header h1 a {
  margin-top: 2.2em;
}

.hamburger {
  display: none;
}


/* Content Area */

#description {
  margin-top: 1em;
}


#introduction {
  margin-bottom: 150px;
}

.introduction:last-child {
  margin-bottom: 2em;
}

#details {
  text-align: center;
}

#details .date,
#details .location {
  display: block;
}


/* Bands 'n' Buttons */

.band {
  display: block;
  text-align: center;
  margin: 80px auto 50px auto;
  padding: .75em 0;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  text-transform: uppercase;
  width: 80%;
  text-decoration: none;
}

#event.event .band {
  font-size: 1em;
  line-height: 1em;
}

.eventList + .band {
  margin-top: 50px;
}

h3.band,
main article .band {
  width: 100%
}

.band.square {
  border: 1px solid;
  width: 50%;
  padding: .5em 0;
  font-size: inherit;
  white-space: nowrap;
  font-weight: normal;
  margin-top: 2em;
}

#searchResults .band {
  border-color: #fff;
}

article + .band {
  margin-top: 150px
}

.band a {
  text-decoration: none;
}


.butt {
  text-align: center;
  display: block;
  border: 1px solid;
  width: 50%;
  padding: .5em 0;
  font-size: inherit;
  white-space: nowrap;
  margin: 0 auto;
  cursor: pointer;
}

.butt:hover {
  text-decoration: underline;
}


/* Overlays */

#overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  visibility: hidden;
  z-index: 999;
  overflow-y: scroll;
  overflow-x: hidden;
}

#overlay.search {
  background: #000;
  color: #fff;
}

#overlay.lightBox {
  background: #fff;
}

#overlay.cart {
  background: #ceb101;
}

body.laid {
  height: 100vh;
  overflow: hidden;
}

.laid #overlay {
  visibility: visible;
}

#hideOverlay:before, #hideOverlay:after {
  background-color: #fff;
}

#overlay > div {
  margin: 250px auto;
}

body.laid #overlay > div,
#overlay.loaded > div {
  display: none;
}



/* Search */

#overlay.search #searchForm,
#overlay.search #searchResults {
  display: block;
}

#searchForm {
  font-size: 100px;
}

#searchSubmit {
  display: none;
}

#searchField {
  height: 1.2em;
  width: 10em;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
  background: transparent;
  color: #fff;
}

#searchForm input::selection {
  background: #e6e6e6;
}

#searchForm input::-moz-selection {
  background: #e6e6e6;
}

#searchResults {
  background: #000;
  position: relative;
  z-index: 9999;
}

#searchResults h4 {
  /* margin-bottom: 0;
  margin-top: 0 */
}

#searchResults .eventList {
  margin-top: 100px
}

#searchResults .eventList ul {
  column-span: none;
}

#searchResults .eventList:before { /* Hide Top Rule */
  background: #000;
}

h4#resetSearch {
  cursor: pointer;
  margin-top: 100px;
}

#searchResults h4 + .small {
  margin-top: 1em;
}


/* Lightbox */

#showLightBox {
  position: absolute;
  z-index: 999;
  left: 0;
  top: 50px;
  height: calc(100% - 80px);
  width: 100%;
  text-indent: -100em;
  background: transparent;
  overflow: hidden;
  cursor: zoom-in;
}

#showLightBox:before {
  content: "";
  width: 50vw;
  background: red;
}

#showLightBox:hover {
  text-decoration: underline;
}

#overlay.lightBox {
  z-index: 9999; /* hide Eye */
}

#overlay.lightBox #lightBox {
  display: block;
}

.lightBox #hideOverlay {
  right: 75px;
  top: 75px;
}

.lightBox #hideOverlay:before,
.lightBox #hideOverlay:after {
  background-color: #000;
}

#overlay #lightBox {
  color: #000;
  margin: 0 0;
  width: 100vw;
  position: absolute;
  top: 0;
  left: 0;
}

.lightBox #lightBox {
  display: block;
}

#lightBox #images {
  border-top: 1px solid;
  border-bottom: 1px solid;
  margin-top: 35px;
  height: calc(100vh - 75px);
  padding: 0 0;
}

#lightBox #images img {
   height: auto !important;
   max-height: calc(100vh - 320px) !important;
   max-width: calc(100vw - 300px);
}

#lightBox .slick-slide {
  height: calc(100vh - 280px);
  display: flex !important;
  align-items:center;
  margin: 0 auto;
  margin-top: 110px;
  float: left;
}

#lightBox .slick-slide div {
  margin: 0 auto;
}

#lightBox .slick-prev {
  left: 0;
  right: auto;
}

#lightBox .imageCaption {
  margin-top: 2em;
}

#lightBox .imgContainer {
  /* display: block; */
  margin: 0 auto;
  width: auto;
}

#lightBoxThumbs {
  position: absolute;
  z-index: 99999;
  left: 50%;
  top: 50%;
  height: auto;
  xwidth: 70%;
  background: #FFF;
  transform: translate(-50%, -50%);
  xmax-width: 1000px;
  max-width: calc(100vw - 100px);
  max-height: calc(100vh - 100px);
  overflow-y: scroll;
}

#lightBoxThumbs li {
  cursor: pointer;
  margin: 15px 15px;
  width: calc(25% - 30px);
  height: calc(25vh - 30px);
}

#lightBoxThumbs li img {
  border: 8px solid #fff;
}

#lightBoxThumbs li:hover img {
  border: 8px solid #ceb101;
}

#showLightBoxThumbs {
  position: absolute;
  left: 75px;
  top: 75px;
  height: 25px;
  width: 25px;
  text-indent: -100em;
  overflow: hidden;
  background: url(../images/css/'thumbnails.gif');
  z-index: 99999;
}

.nailed #showLightBoxThumbs {
  border: 1px solid;
  background: #FFF;
}

.slick-list {
  transition: opacity 1s;
}

.nailed .slick-list {
  opacity: 0;
}

.nailed .slick-arrow {
  cursor: default;
}

.nailed .slick-arrow:after {
  content: none;
}

.nailed .slick-arrow:hover {
  background: inherit;
}


/* Cart */

#overlay.cart #cart {
  display: block;
}

#cart h2 {
  margin-bottom: 2em;
}

#cartTable {
  margin-bottom: 150px;
}


#cartTable th {
  border-top: 1px solid #000;
  text-transform: uppercase;
}

#cartTable th.title {
  text-indent: -1000em;
}

#cartTable th,
#cartTable td {
  text-align: center;
  padding: 2em .5em 2em .5em;
}

#cartTable td {
  border-bottom: 1px solid #000;
}

#cartTable th {
  padding-top: 1em;
  padding-bottom: 1em;
}

#cartTable .img {
  text-align: center;
  width: 25%;
}

#cartTable .title {
  text-align: left;
}

#cartTable .title a {
  text-decoration: underline;
}

#cartTable img {
  display: block;
  margin: 0 auto;
  width: auto;
  height: auto;
  max-width: 200px;
  max-height: 200px;
}

#cart .col.half {
  padding: 50px 50px;
}

#cart .centered {
  margin-bottom: 1.5em;
}

#cart #totals {
  outline: 1px solid #000;
  outline-offset: -1px;
}

#cart #totals dl {
  overflow: hidden;
}

#cart #totals dt,
#cart #totals dd {
  float: left;
  margin-bottom: .5em;
}

#cart #totals dt {
  width: 70%;
}

#cart #totals dd {
  text-align: right;
  width: 30%
}

#cart hr {
  display: block;
  width: 100%;
  border-bottom: 2px solid;
  margin-bottom: 1em;
  padding-top: .5em;
}

#cart .butt {
  margin-top: 60px;
  width: 100%;
}

#cart .delete {
  width: 1em;
  padding-right: 2em;
}

#cart.processed .delete,
#cart.processed .butt {
  display: none;
}

#cart #checkout {
  text-transform: uppercase;
  padding: .75em 0;
}


/* Footer */


footer .col.wide {
  float: none;
  width: 1000px;
  margin: 0 auto;
}

footer h3 {
  font-family: Eesti, sans-serif;
  text-transform: none;
  font-size: 1.5em;
  margin-bottom: 2em;
  margin-top: 0;
}

footer h6 {
  text-align: left;
}

footer input,
footer input:focus {
  font: 18px/1.2em Eesti, sans-serif;
  background: transparent;
  border-bottom: 1px solid #fff;
  margin-bottom: 1em;
}



/* ---- COMPONENTS ---- */

/* Event & Product & Pin Board & Sponsor Lists */

.eventList,
.productList,
.artistList,
.sponsorList {
  text-align: center;
  position: relative;
  margin-bottom: 50px;
}

.eventList:empty,
.productList:empty {
  display: none;
}

.productList,
.eventList:last-child {
  margin-bottom: 0;
}

h3 + .eventList {
  margin-top: 50px !important;
}

.artistList li ul,
.productList li ul,
.eventList li ul {
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
  position: relative;
  padding-bottom: 50px;
  width: 80%;
  margin: 0 auto;
}

.artistList li.img,
.productList li.img,
.eventList li.img {
  margin-bottom: 1em;
}

.pinboardList .title {
  margin-top: 0;
}

/* Artist Lists */

.artistList a {
  font: 1em/1.2em Eesti, sans-serif;
  text-transform: uppercase;
  font-variant-ligatures: none;
}

/* Event Lists */

.eventList ul.exhibitions {
  width: 100%
}

.eventList.three ul.exhibitions {
  width: 30%;
}

#pastExhibitions h4 + .eventList {
  margin-top: 50px;
}

/* #onnow {
  display: none;
  clear: both;
}

#onnow .eventList ul:only-of-type {
  column-span: all;
}

#onnow .eventList ul:only-of-type .date {
  margin-bottom: 75px;
}

#onnow .eventList ul:only-of-type .blurb {
  margin-top: -75px;
  margin-bottom: 75px;
}

#onnow .eventList ul:only-of-type::after {
  width: 90%;
} */

ol.eventList + ol.eventList {
  margin-top: 0;
}

ol.eventList + ol.eventList > li:first-child {
  padding-top: calc(10% + 100px);
  padding-top: 75px;
}

ol.eventList + ol.eventList  li:first-child ul:before {
  content: none;
}

.eventList .year {
  display: none;
}

.eventList h4 {
  margin-top: 0;
}

.eventList .exhibitions h4 {
  font: 43px/1em Eesti, sans-serif;
  text-transform: uppercase;
}

.eventList h4,
.eventList .pinboard .title {
  margin-bottom: 12px;
}

.eventList .events h4 {
  margin-bottom: 11px;
}

.eventList .pinboard .title,
.eventList .events h4 {
  margin-top: .15em;
  padding: 0 10%;
}

.eventList .events .info {
  margin-bottom: 0;
}

.eventList .eventType + .dateStatus,
.eventList .events .dateStatus {
  display: none;
}

.eventList .events .img,
#relatedContent .eventList .img {
  xwidth: 55%;
  margin: 0 auto;
  margin-bottom: 1em;
}

.eventList.squared .imgContainer {
  width: auto;
}

.eventList .exhibitions .imgContainer {
  width: 100%
}

.eventList .pinboard img,
.eventList .events img,
.sponsorList .sponsor img {
max-height: 200px;
max-width: 200px;
height: auto;
width: auto;
}

.eventList p {
  width: 80%;
  margin: 0 auto;
}

/* Add Event List Rules  */

.eventList ul:before,
#onnow:after {
  content: " ";
  display: block;
  width: 100%;
  height: 1px;
  background: #000;
  margin: 0px auto 50px auto;
}

.eventList ul.exhibitions:before {
  width: 80%;
}

#onnow:after {
  width: 90%;
}

.eventList li:last-child ul {
  padding-bottom: 0
}


/* Hide Event List Rules  */

.eventList { /* Hide Top Rule */
  margin-top: -50px;
  position: relative;
}

.eventList:before { /* Hide Top Rule */
  content: ' ';
  background: #95a7cb;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  z-index: 9;
}

#onnow .eventList:before {
  content: none;
}

#onnow .eventList,
.exhibitions .eventList,
#pastExhibitions .eventList {
  margin-top: 0;
}

.exhibitions .eventList ul:before,
.auctions .eventList ul:before,
#pastExhibitions .eventList:before,
#pastExhibitions .eventList ul:before,
#onnow .eventList ul:before {
  content: none;
}


/* Tables */


table th {
  padding: 1em 1em .75em 0;
  font-size: 14px !important;
  text-align: left;
}


table td {
  padding: 1em 1em 1em 0;
  padding-bottom: 2em;
  text-align: left;
}

table td {
  padding-right: 5em;
  vertical-align: top;
  border-top: 1px solid #000;
  max-width: 33%;
}

table tr:last-child td {
  xborder-bottom: 1px solid #000;
}


table tr:last-child,
table tr:last-child td {
  padding-bottom: 0;
}


table td:last-child {
}


/* Event Tables */

#eventTable {
  table-layout: fixed;
}

#eventTable td.info a,
#eventTable td.artists {
  text-transform: uppercase;
}

#eventTable td p {
  text-transform: none !important;
}

#eventTable img {
  width: auto;
  height: auto;
  max-width: 125px;
  max-height: 125px;
}

#eventTable td .type {
  font-size: 1em !important;
  display: table-cell;
  text-align: left;
}

#eventTable .image,
#eventTable .type,
#eventTable .year {
  width: 15%;
}

#eventTable .info {
  width: 41%;
}

#eventTable .info {
  display: table-cell;
}

#eventTable .dates {
  width: 25%;
}

#eventTable .blurb {
  text-align: left;
  margin-top: .5em;
}

.sortable .header {
  cursor: pointer;
}

.sortable .header:after {
  margin-left: .4em;
  font-size: .75em;
  content: "▼";
}

.sortable .headerSortUp,
.sortable .headerSortDown {
  color: #fff;
}

.sortable .headerSortDown:after {
  content: "▲";
}

.archive .sortable .headerSortUp,
.archive .sortable .headerSortDown {
  color: #a8b6d3;
}


/* Shopping Cart */




/* Page Nav */

#pageNav {
  width: 90%;
  margin: -20px auto 75px auto;
}

#pageNav + h2 {
  margin-top: 0;
  margin-bottom: 120px;
}

#pageNav + article h2 {
  margin-top: 80px;
}

#pageNav li {
  line-height: 1em;
  display: inline-block;
  margin-right: 1em;
  text-transform: uppercase;
  margin-bottom: 0;
}

#pageNav + article .anchor + h4 {
  margin-top: 20px;
}

.anchor {
  visibility: hidden;
  height: 0;
  width: 0;
  display: block;
}

#pageNav li:last-child {
  margin-right: 0;
}


/* Togglers */

.toggle .element {
  display: none;
}

.toggle .element.on {
  display: inherit;
}



/* --- SECTIONS AND PAGES --- */

/* Home Page */




/* Exhibitions Home Page */

#currentExhibitions {
  margin-bottom: 100px;
}

#currentExhibitions li ul {
  padding-top: 75px;
}

#currentExhibitions li:first-child ul {
  padding-top: 0;
}

#currentExhibitions ul li:first-child {
  padding-top: 0;
  padding-bottom: 0;
}

#currentExhibitions li:first-child ul li:first-child{
  padding-top: 0;
}

#pastExhibitions .eventList .year {
  margin-top: .2em;
  display: block;
}

#pastExhibitions .eventList ul {
  padding-bottom: 30px;
}

x#pastExhibitions .eventList li:nth-child(3n+3) ul {
  clear: right;
}

x#pastExhibitions .eventList li:nth-child(3n+2) ul {
  margin: 0 50px;
}

#pastExhibitions .eventList ul:after {
  content: none;
}

#pastExhibitions .eventList .info,
#pastExhibitions .eventList .date,
#pastExhibitions .eventList .blurb {
  display: none
}

#pastExhibitions h4 {
  margin-bottom: 0;
  font: 1em/1.2em Eesti, sans-serif;
  text-transform: uppercase;
}


/* Event Calendar */

.calendar #eventTable {
    margin-top: 6em;
}

.calendar #eventTable td {
  padding-right: 3em;
  text-align: left;
}

.calendar #eventTable td:last-child {
  padding-right: 0em;
}

.calendar #eventTable .clickable:hover {
  background: rgba(206,177,1, .4);
}

.calendar #eventTable .year,
.calendar #eventTable .artists {
  display: none;
}

.calendar .type {
  text-align: left;
  font: 18px/1.2em Eesti, sans-serif;
}




/* Exhibition Archives */

body.archive {
  background: #000;
  color: #fff;
}

.archive h4 {
  margin-bottom: 2.5em;
}

.archive #eventTable .info .artist,
.archive #eventTable .type,
.archive #eventTable .dates,
.archive #eventTable .blurb {
  display: none;
}

.archive #eventTable td {
  border-color: #fff;
}

.archive #eventTable .clickable:hover {
  background: rgba(255,255,255, .2);
}

.archive .tint::before {
  content: none !important;
}


/* Exhibitions & Events */

#event #description,
#event #artists {
  margin: 0 auto 100px auto;
}

#event #artists li {
  text-align: center;
}

#event #artists li p {
  text-align: left;
}

#artists a {
  text-decoration: underline;
}

.location {
  margin-top: .5em;
}

.inquires {
  width: 65%;
  border: 1px solid #000;
  font: 14px/1.2em 'Eesti';
  padding: 1em 3em;
  text-align: center;
  margin: 100px auto 120px auto;
}

.inquires:hover {
  background: #7a7612;
}

.time:after {
  width: 1.5em;
  display: inline-block;
}

.am:after {
  content: 'am';
}

.pm:after {
  content: 'pm';
}

.time + .time::before {
  width: .5em;
  display: inline-block;
  content: '–';
}

.pm + .pm,
.am + .am {
  background: #95a7cb;
 margin-left: -1.5em;
}



/* Related Content */

#relatedContent {
}

#relatedContent .eventList ul {
  border: none;
}

#relatedContent .imgContainer {
  margin: 0 auto;
}

#relatedContent img.portrait {
}

#relatedContent .col:only-of-type {
  float: none;
  margin: 0 auto;
}

#relatedContent .col:empty {
  display: none;
}

#relatedContent .cols.two {
  columns: 1;
}

#relatedContent p {
  margin-bottom: 1em;
}

/* Events */

.event h2 {
  font-family: Stanhope, serif;
  line-height: 1.1em;
  text-transform: none;
  margin: 0 20% 100px 20%;
}

.event h2:after {
  content: " ";
  height: 1px;
  width: 225%;
  display: block;
  margin-left: -65%;
  margin-top: 1.125em;
  background: #000;
}

.event #top {
    display: flex;
    align-items: center;
    margin-bottom: 2.4em;
    text-align: center;
}

.event .col {
  flex: 1;
}

.event #details {
  font-size: .66em;
  line-height: 1.2em;
  margin: 0 auto;
}

.event #details span:not(.time) {
  display: block;
}

.event #details .price {
  margin-top: .5em;
}

.event .imgContainer {
  margin: 0 0;
}

.event img {
}

/* Shop */

.shop .entry h2 {
  margin-bottom: .5em;
}

.productList.gallery h4 {
  text-transform: none;
  margin-bottom: 0;
}

.productList.gallery li {
  font: 13px/1.2em Eesti, sans-serif !important;
}

.productList.gallery .price {
  display: none;
}

.productList h4 {
  margin-bottom: .2em;
  font: 1em/1.2em Eesti, sans-serif;
  text-transform: uppercase;
}

.price:empty:before {
  content: 'Inquire';
}

.price:before {
  content: '$';
}

.price.string:before {
  content: none;
}

.butt.addSku {
  font-family: Eesti;
}

#skus {
  margin: 2em 0 0 0;
  position: relative;
  font-family: Eesti;
}

#skus li {
  margin: 0 0;
  height: 0;
  opacity: 0;
  overflow: hidden;
}

#skus.expanded li,
#skus li:first-child,
#skus.showAll li {
  margin-bottom: -1px;
	opacity: 1;
	height: auto;
}

#skus li:first-child span {
  padding: 0.5em 30px;
  background: url(../images/css/triangle.svg) right 30px center no-repeat;
}

#skus.showAll li:first-child span {
  padding: 0.5em 30px;
  background: none;
}

#skus .butt:hover::after {
  text-decoration: none;
}

#skus li:only-child span:after,
#skus li::before,
#skus.expanded li:first-child span:after {
  content: none;
}

#skus.expanded + #buySku {
  display: none;
}


/* Lab & About */

.lab .clickable.hovered .tint::before,
.lab .tint:hover::before {
  background: #ba8396;
}

article.blurb .imgContainer {
  margin-top: 150px;
  margin-bottom: 1.25em;
}

article.blurb .imgContainer + h2 {
  margin-top: 40px;
  margin-bottom: 0;
}

div article.blurb .imgContainer {
  margin-top: 0;
}

article.blurb h4 {
  margin-bottom: 10px;
}

article.blurb p,
article.blurb li {
  text-align: center;
  width: 55%;
  margin: .5em auto;
  max-width: 350px;
}

article.blurb li {
  margin: 0 auto;
}

.lab #footer {
  background: #ba8396;
}

.lab h1 a {
  background: transparent url(../images/css/lab.svg) no-repeat;
  width: 151px;
  height: 151px;
  margin-left: -76px;
}

#tutoring + .imgContainer {
  display: none;
}

#tutoring + .imgContainer + h4 {
  margin-top: 0;
}

.lab .eventType {
  display: none;
}


/* About */

#staff h4 {
  margin-top: 0;
}

#staff a {
  text-decoration: none;
}

#staff a:hover {
  text-decoration: underline;
}

#staff .type {
  margin-bottom: 2em;
}

#staff .imgContainer {
  width: 45%;
}

#staff h2 + .blurb::before {
  content: none;
}

#staff .blurb::before {
  content: " ";
  display: block;
  width: 80%;
  height: 1px;
  background: #000;
  margin: 50px auto 0 auto;
}

#staff .blurb .imgContainer {
  margin-top: 50px;
}

#staff article.blurb p,
#board article.blurb li {
  width: 80%;
}

#board h2 {
  margin-top: 100px;
}

#history {
  margin: 40px auto 50px auto;
}

#history img {
  border: 20px solid #FFF;
}



/* Auctions */

.auctions #details {
  margin-bottom: 100px;
}

.auctions .entry h2 {
  margin-bottom: .5em;
}

.auctions #skus {
  margin: 0 0 2em 0;
}



/* 404 Page */

.error main {
  text-align: center;
}

.error main {
  width: 800px;
}




/* Filtered Content */

.filtered {
  display: none;
}

#filters {
  cursor: pointer;
  text-align: center;
  margin-bottom: 2em;
  margin-top: 3em;
}

#filters li {
  display: inline-block;
  margin-right: 1em;
  margin-bottom: 1em;
}

#filters a::before {
  content: '';
  display: inline-block;
  width: .75em;
  height: .75em;
  margin-right: .5em;
  -xmoz-border-radius: .75em;
  -xwebkit-border-radius: .75em;
  outline: 1px solid;
  background-color: transparent;
}

#filters a.on::before {
  background-color: #fff;
}

#filters a:hover::before {
  background-color: #ceb101;
}

.filterable.empty thead {
  display: none;
}

.filterable.empty::after {
  content: "No Events Found";
}


/* Helpers */

.hidden {
  display: none;
}

.invisible {
  visibility: hidden;
}

.xvisible {
  visibility: visible !important;
}

.clear {
  clear: both;
  overflow: hidden;
}

.nobreak {
  white-space: nowrap;
}

.clickable {
  cursor: pointer;
}

.left {
  float: left;
}

.right {
  float: right;
}

input::placeholder {
  color: #fff;
  line-height:1em;
}

input:focus::placeholder {
    opacity: 0;
}

.close {
  position: fixed;
  right: 32px;
  top: 32px;
  width: 32px;
  height: 32px;
  opacity: 1;
  text-indent: -1000em;
  z-index: 99999;
}

.close:hover,
#showLightBoxThumbs:hover {
  opacity: .5;
}

.close:before, .close:after {
  position: absolute;
  left: 15px;
  content: ' ';
  height: 33px;
  width: 1px;
  background-color: #000;
}

.close:before {
  transform: rotate(45deg);
}

.close:after {
  transform: rotate(-45deg);
}

.loading:after {
  content: ' .';
  animation: dots 1s steps(5, end) infinite;
}

#searchResults .loading:after {
  animation: whitedots 1s steps(5, end) infinite;
}



@keyframes dots {
  0%, 20% {
    color: rgba(0,0,0,0);
    text-shadow:
      .5em 0 0 rgba(0,0,0,0),
      1em 0 0 rgba(0,0,0,0);}
  40% {
    color: black;
    text-shadow:
      .5em 0 0 rgba(0,0,0,0),
      1em 0 0 rgba(0,0,0,0);}
  60% {
    text-shadow:
      .5em 0 0 black,
      1em 0 0 rgba(0,0,0,0);}
  80%, 100% {
    text-shadow:
      .5em 0 0 black,
      1em 0 0 black;}}


@keyframes whitedots {
  0%, 20% {
    color: rgba(0,0,0,0);
    text-shadow:
      .5em 0 0 rgba(0,0,0,0),
      1em 0 0 rgba(0,0,0,0);}
  40% {
    color: white;
    text-shadow:
      .5em 0 0 rgba(0,0,0,0),
      1em 0 0 rgba(0,0,0,0);}
  60% {
    text-shadow:
      .5em 0 0 white,
      1em 0 0 rgba(0,0,0,0);}
  80%, 100% {
    text-shadow:
      .5em 0 0 white,
      1em 0 0 white;}}

/* In Developement */
