/*
 Theme Name: Exhibition
 Theme URI: http://gala-engine.com
 Description: Theme for festivals
 Version: 1.0
 Author: Gala
 Author URI: http://gala-engine.com
 */
/*--------------------------------------------------------------
 # Base
 --------------------------------------------------------------*/
html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

body {
  margin: 0; }

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block; }

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden], template {
  display: none; }

a {
  background-color: transparent; }

a:active, a:hover {
  outline: 0; }

abbr[title] {
  border-bottom: 1px dotted; }

b, strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

h1 {
  font-size: 2em;
  margin: 0.67em 0; }

mark {
  background: #ff0;
  color: #000; }

small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

img {
  border: 0; }

svg:not(:root) {
  overflow: hidden; }

figure {
  margin: 1em 40px; }

hr {
  box-sizing: content-box;
  height: 0; }

pre {
  overflow: auto; }

code, kbd, pre, samp {
  font-family: monospace, monospace;
  font-size: 1em; }

button, input, optgroup, select, textarea {
  font: inherit;
  margin: 0; }

button {
  overflow: visible; }

button, select {
  text-transform: none; }

button, html input[type="button"], input[type="reset"], input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled], html input[disabled] {
  cursor: default; }

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0; }

input {
  line-height: normal; }

input[type="checkbox"], input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

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

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

td, th {
  padding: 0; }

html, body {
  background-color: #eaddd0; }

html {
  box-sizing: border-box; }

*, *:before, *:after {
  box-sizing: inherit; }

hr {
  background-color: #ccc;
  border: 0;
  height: 1px;
  margin-bottom: 1.5em; }

ul, ol {
  margin: 0 0 1.5em 3em; }

ul {
  list-style: disc; }

ol {
  list-style: decimal; }

li > ul, li > ol {
  margin-bottom: 0;
  margin-left: 1.5em; }

dt {
  font-weight: bold; }

dd {
  margin: 0 1.5em 1.5em; }

img {
  height: auto;
  /* Make sure images are scaled correctly. */
  max-width: 100%;
  /* Adhere to container width. */ }

embed, iframe, object {
  max-width: 100%; }

figure {
  margin: 1em 0;
  /* Extra wide images within figure tags don't overflow the content area. */ }

table {
  margin: 0 0 1.5em;
  width: 100%; }

.alignleft {
  display: inline;
  float: left;
  margin-right: 1.5em; }

.alignright {
  display: inline;
  float: right;
  margin-left: 1.5em; }

.aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto; }

body {
  color: #000;
  font-family: Open Sans;
  line-height: 1.5; }

h1, h2, h3, h4, h5, h6 {
  font-family: Open Sans Condensed;
  clear: both;
  font-weight: bold; }

h1 {
  font-size: 72px; }

h2 {
  font-size: 52px; }

h3 {
  font-size: 36px; }

h4 {
  font-size: 24px; }

h5 {
  font-size: 18px; }

h6 {
  font-size: 14px;
  text-transform: uppercase; }

p, ul {
  margin-bottom: 1.5em;
  font-size: 16px; }

button, input, select, optgroup, textarea {
  color: #656b6f; }

@media (max-width: 767px) {
  h1 {
    font-size: 40px; }

  h2 {
    font-size: 32px; }

  h3 {
    font-size: 24px; }

  h4 {
    font-size: 18px; }

  h5 {
    font-size: 14px; }

  h6 {
    font-size: 12px; } }

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

blockquote {
  margin: 0 1.5em; }

address {
  margin: 0 0 1.5em; }

pre {
  background: #eee;
  font-family: "Courier 10 Pitch", Courier, monospace;
  font-size: 15px;
  font-size: 0.9375rem;
  line-height: 1.6;
  margin-bottom: 1.6em;
  max-width: 100%;
  overflow: auto;
  padding: 1.6em; }

code, kbd, tt, var {
  font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
  font-size: 15px;
  font-size: 0.9375rem; }

abbr, acronym {
  border-bottom: 1px dotted #666;
  cursor: help; }

mark, ins {
  background: #fff9c0;
  text-decoration: none; }

big {
  font-size: 125%; }

a {
  color: #490000;
  outline: 0; }
  a:visited {
    color: #490000; }
  a:hover, a:focus, a:active {
    color: #490000;
    text-decoration: none; }

h1 > a:not(.ab-item):not(.btn), h2 > a:not(.ab-item):not(.btn), h3 > a:not(.ab-item):not(.btn), h4 > a:not(.ab-item):not(.btn), h5 > a:not(.ab-item):not(.btn), h6 > a:not(.ab-item):not(.btn), p > a:not(.ab-item):not(.btn), li > a:not(.ab-item):not(.btn) {
  background: transparent 0 100%/100% 2px no-repeat;
  transition: background 0.3s ease-in-out; }
  h1 > a:not(.ab-item):not(.btn):hover, h2 > a:not(.ab-item):not(.btn):hover, h3 > a:not(.ab-item):not(.btn):hover, h4 > a:not(.ab-item):not(.btn):hover, h5 > a:not(.ab-item):not(.btn):hover, h6 > a:not(.ab-item):not(.btn):hover, p > a:not(.ab-item):not(.btn):hover, li > a:not(.ab-item):not(.btn):hover, h1 > a:not(.ab-item):not(.btn):focus, h2 > a:not(.ab-item):not(.btn):focus, h3 > a:not(.ab-item):not(.btn):focus, h4 > a:not(.ab-item):not(.btn):focus, h5 > a:not(.ab-item):not(.btn):focus, h6 > a:not(.ab-item):not(.btn):focus, p > a:not(.ab-item):not(.btn):focus, li > a:not(.ab-item):not(.btn):focus, h1 > a:not(.ab-item):not(.btn):active, h2 > a:not(.ab-item):not(.btn):active, h3 > a:not(.ab-item):not(.btn):active, h4 > a:not(.ab-item):not(.btn):active, h5 > a:not(.ab-item):not(.btn):active, h6 > a:not(.ab-item):not(.btn):active, p > a:not(.ab-item):not(.btn):active, li > a:not(.ab-item):not(.btn):active {
    background: linear-gradient(#490000, #490000) 0 100%/100% 2px no-repeat; }

h5.tax-title {
  text-transform: uppercase;
  letter-spacing: 0.1em; }

input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="date"], input[type="month"], input[type="week"], input[type="time"], input[type="datetime"], input[type="datetime-local"], input[type="color"], textarea {
  color: #000;
  border: none;
  border-radius: 0;
  padding: 10px 15px;
  height: 45px;
  outline: 0;
  font-size: 14px; }
  input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, input[type="number"]:focus, input[type="tel"]:focus, input[type="range"]:focus, input[type="date"]:focus, input[type="month"]:focus, input[type="week"]:focus, input[type="time"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus, input[type="color"]:focus, textarea:focus {
    color: #3c3d41; }

.dropdown-toggle:after {
  content: "";
  width: 8px;
  height: 8px;
  border: solid #b0f4ed;
  border-width: 0 3px 3px 0;
  transform: rotate(45deg);
  position: relative;
  top: 1px;
  right: -4px; }

.select-style {
  width: 100%;
  border-radius: 0;
  overflow: hidden;
  background: #fff;
  height: 45px;
  position: relative;
  border: 1px solid; }
  .select-style:before {
    content: "";
    position: absolute;
    right: 20px;
    top: 16px;
    width: 8px;
    height: 8px;
    border: solid #000;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg); }
  .select-style select {
    padding: 10px 15px;
    font-size: 14px;
    height: 45px;
    width: 100%;
    border: none;
    box-shadow: none;
    background: transparent;
    background-image: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    color: #000;
    position: relative; }
  .select-style select:focus {
    outline: none; }
  .select-style.select-style-sm {
    height: 35px; }
  .select-style.select-style-sm:before {
    right: 10px;
    top: 12px;
    border-width: 0 2px 2px 0;
    width: 7px;
    height: 7px; }
  .select-style.select-style-sm select {
    padding: 5px 25px 5px 15px;
    height: 35px; }

textarea {
  width: 100%; }

button, input[type="button"], input[type="reset"], input[type="submit"] {
  border: none;
  border-radius: 0;
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;
  padding: 0 2.5em;
  height: 45px;
  line-height: 38px;
  background: #490000;
  color: #b0f4ed;
  transition: all 0.3s ease-in-out;
  text-decoration: none;
  outline: 0; }
  button.outline, input[type="button"].outline, input[type="reset"].outline, input[type="submit"].outline {
    background: none;
    border: 2px solid #000; }
  button:hover, input[type="button"]:hover, input[type="reset"]:hover, input[type="submit"]:hover, button:active, input[type="button"]:active, input[type="reset"]:active, input[type="submit"]:active, button:focus, input[type="button"]:focus, input[type="reset"]:focus, input[type="submit"]:focus {
    outline: 0;
    background: rgba(73, 0, 0, 0.7); }

.custom-checkbox {
  display: block;
  position: relative;
  padding-left: 35px;
  cursor: pointer;
  user-select: none;
  font-size: 14px;
  font-weight: 500; }
  .custom-checkbox label {
    margin: 0; }
  .custom-checkbox input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    left: 0; }
  .custom-checkbox .checkbox {
    position: absolute;
    top: 0;
    left: 0;
    height: 20px;
    width: 20px;
    background: #fff;
    border: 1px solid; }
  .custom-checkbox .checkbox:after {
    content: "";
    position: absolute;
    display: none;
    left: 6px;
    top: 1px;
    width: 8px;
    height: 15px;
    border: solid #000;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg); }
  .custom-checkbox input:checked ~ .checkbox:after {
    display: block; }
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */ }
  .screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    clip-path: none;
    color: #3c3d41;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000;
    /* Above WP toolbar. */ }
/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
  outline: 0; }

.full-width-container {
  width: 100%; }

#page {
  padding-top: 120px; }

.page-content {
  padding: 50px 0; }
  .page-content h2 {
    text-align: center;
    padding-bottom: 30px; }
/* =WordPress Core
 -------------------------------------------------------------- */
.alignnone {
  margin: 5px 20px 20px 0; }

.aligncenter, div.aligncenter {
  display: block;
  margin: 5px auto 5px auto; }

.alignright {
  float: right;
  margin: 5px 0 20px 20px; }

.alignleft {
  float: left;
  margin: 5px 20px 20px 0; }

a img.alignright {
  float: right;
  margin: 5px 0 20px 20px; }

a img.alignnone {
  margin: 5px 20px 20px 0; }

a img.alignleft {
  float: left;
  margin: 5px 20px 20px 0; }

a img.aligncenter {
  display: block;
  margin-left: auto;
  margin-right: auto; }

.wp-caption {
  background: #fff;
  border: 1px solid #f0f0f0;
  max-width: 96%;
  /* Image does not overflow the content area */
  padding: 5px 3px 10px;
  text-align: center; }

.wp-caption.alignnone {
  margin: 5px 20px 20px 0; }

.wp-caption.alignleft {
  margin: 5px 20px 20px 0; }

.wp-caption.alignright {
  margin: 5px 0 20px 20px; }

.wp-caption img {
  border: 0 none;
  height: auto;
  margin: 0;
  max-width: 98.5%;
  padding: 0;
  width: auto; }

.wp-caption p.wp-caption-text {
  font-size: 11px;
  line-height: 17px;
  margin: 0;
  padding: 0 4px 5px; }
/* Text meant only for screen readers. */
.screen-reader-text {
  border: 0;
  clip: rect(1px, 1px, 1px, 1px);
  clip-path: inset(50%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute !important;
  width: 1px;
  word-wrap: normal !important;
  /* Many screen reader and browser combinations announce broken words as they would appear visually. */ }

.screen-reader-text:focus {
  background-color: #eee;
  clip: auto !important;
  clip-path: none;
  color: #444;
  display: block;
  font-size: 1em;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
  /* Above WP toolbar. */ }
/*--------------------------------------------------------------
 # Vendor
 --------------------------------------------------------------*/
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0; }
  .slick-list:focus {
    outline: none; }
  .slick-list.dragging {
    cursor: pointer;
    cursor: hand; }

.slick-slider .slick-track, .slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto; }
  .slick-track:before, .slick-track:after {
    content: "";
    display: table; }
  .slick-track:after {
    clear: both; }
  .slick-loading .slick-track {
    visibility: hidden; }

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

.slick-arrow.slick-hidden {
  display: none; }

.slick-dots {
  list-style: none;
  margin: 0;
  padding: 0; }
  .slick-dots li {
    display: inline-block;
    margin: 0 8px; }
  .slick-dots li button {
    text-indent: -9999em;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    padding: 0;
    background: transparent;
    border: 1px solid rgba(73, 0, 0, 1);
    outline: 0; }
  .slick-dots li.slick-active button {
    background: #490000; }
/*--------------------------------------------------------------
 # Components
 --------------------------------------------------------------*/
#masthead {
  background: #fff;
  position: fixed;
  height: 120px;
  top: 0;
  left: 0;
  right: 0;
  z-index: 1001;
  border-bottom: 1px solid #003500; }
  .admin-bar #masthead {
    top: 32px; }
  @media (max-width: 782px) {
    .admin-bar #masthead {
      top: 46px; } }
  #masthead .container {
    position: relative; }
  #masthead .container .site-branding {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 120px;
    padding: 10px 0; }
    #masthead .container .site-branding .site-logo {
      display: flex;
      align-items: center;
      height: 100%; }
      #masthead .container .site-branding .site-logo a {
        height: 100%;
        text-decoration: none; }
      #masthead .container .site-branding .site-logo img {
        max-height: 100%;
        height: auto;
        width: auto; }
    #masthead .container .site-branding .site-title {
      line-height: 1.1em; }
      #masthead .container .site-branding .site-title a {
        font-size: 16px;
        font-weight: bold;
        letter-spacing: 0.05em;
        color: #003500;
        text-decoration: none; }
        #masthead .container .site-branding .site-title a:hover {
          text-decoration: none; }
  #masthead .container #navigation {
    display: flex;
    flex-direction: column-reverse; }
    #masthead .container #navigation #aux-area {
      display: flex;
      justify-content: flex-end;
      align-items: center;
      height: 60px; }
      #masthead .container #navigation #aux-area .social-menu {
        display: flex;
        list-style: none;
        margin: 0;
        padding: 0 10px 0 0; }
        #masthead .container #navigation #aux-area .social-menu li {
          padding: 0 10px; }
          #masthead .container #navigation #aux-area .social-menu li a:hover {
            background: none; }
          #masthead .container #navigation #aux-area .social-menu li svg g.facebook, #masthead .container #navigation #aux-area .social-menu li svg g.twitter, #masthead .container #navigation #aux-area .social-menu li svg g.instagram {
            fill: #003500; }
      #masthead .container #navigation #aux-area #site-search {
        padding: inherit; }
        #masthead .container #navigation #aux-area #site-search form {
          margin: 0;
          position: relative; }
          #masthead .container #navigation #aux-area #site-search form input[type=text] {
            padding: 0 30px 0 0;
            border-bottom: 2px solid #003500;
            height: 30px;
            width: 210px;
            margin: 0;
            font-size: 13px;
            background-color: #fff; }
            #masthead .container #navigation #aux-area #site-search form input[type=text]::placeholder {
              color: rgba(101, 107, 111, 0.7); }
          #masthead .container #navigation #aux-area #site-search form input[type=submit] {
            background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIj8+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMzAgMzAiIHdpZHRoPSIzMHB4IiBoZWlnaHQ9IjMwcHgiPgogICAgPHBhdGggc3R5bGU9ImxpbmUtaGVpZ2h0Om5vcm1hbDt0ZXh0LWluZGVudDowO3RleHQtYWxpZ246c3RhcnQ7dGV4dC1kZWNvcmF0aW9uLWxpbmU6bm9uZTt0ZXh0LWRlY29yYXRpb24tc3R5bGU6c29saWQ7dGV4dC1kZWNvcmF0aW9uLWNvbG9yOiMwMDA7dGV4dC10cmFuc2Zvcm06bm9uZTtibG9jay1wcm9ncmVzc2lvbjp0Yjtpc29sYXRpb246YXV0bzttaXgtYmxlbmQtbW9kZTpub3JtYWwiIGQ9Ik0gMTMgMyBDIDcuNDg4OTk3MSAzIDMgNy40ODg5OTcxIDMgMTMgQyAzIDE4LjUxMTAwMyA3LjQ4ODk5NzEgMjMgMTMgMjMgQyAxNS4zOTY1MDggMjMgMTcuNTk3Mzg1IDIyLjE0ODk4NiAxOS4zMjIyNjYgMjAuNzM2MzI4IEwgMjUuMjkyOTY5IDI2LjcwNzAzMSBBIDEuMDAwMSAxLjAwMDEgMCAxIDAgMjYuNzA3MDMxIDI1LjI5Mjk2OSBMIDIwLjczNjMyOCAxOS4zMjIyNjYgQyAyMi4xNDg5ODYgMTcuNTk3Mzg1IDIzIDE1LjM5NjUwOCAyMyAxMyBDIDIzIDcuNDg4OTk3MSAxOC41MTEwMDMgMyAxMyAzIHogTSAxMyA1IEMgMTcuNDMwMTIzIDUgMjEgOC41Njk4Nzc0IDIxIDEzIEMgMjEgMTcuNDMwMTIzIDE3LjQzMDEyMyAyMSAxMyAyMSBDIDguNTY5ODc3NCAyMSA1IDE3LjQzMDEyMyA1IDEzIEMgNSA4LjU2OTg3NzQgOC41Njk4Nzc0IDUgMTMgNSB6IiBmb250LXdlaWdodD0iNDAwIiBmb250LWZhbWlseT0ic2Fucy1zZXJpZiIgd2hpdGUtc3BhY2U9Im5vcm1hbCIgb3ZlcmZsb3c9InZpc2libGUiLz4KPC9zdmc+Cg==') center right no-repeat;
            position: absolute;
            right: 0px;
            width: 15px;
            background-size: 15px;
            top: 0px;
            font-size: 0px;
            padding: 0px;
            height: 30px; }
    #masthead .container #navigation #site-navigation {
      display: flex;
      justify-content: flex-end;
      align-items: stretch; }
      #masthead .container #navigation #site-navigation .menu-toggle {
        display: none; }
      #masthead .container #navigation #site-navigation .main-nav-container {
        display: flex; }
        @media (min-width: 1025px) {
    #masthead .container #navigation #site-navigation .main-nav-container ul#primary-menu {
      margin: 0;
      padding: 0;
      list-style: none;
      display: flex;
      align-items: stretch; }
      #masthead .container #navigation #site-navigation .main-nav-container ul#primary-menu > li {
        margin: 0 0 0 25px;
        position: relative;
        bottom: -2px;
        display: flex;
        align-items: center; }
        #masthead .container #navigation #site-navigation .main-nav-container ul#primary-menu > li > a {
          display: block;
          font-size: 14px;
          font-weight: bold;
          text-decoration: none;
          position: relative;
          color: #003500;
          background: none;
          border-bottom-width: 0px;
          white-space: nowrap; }
        #masthead .container #navigation #site-navigation .main-nav-container ul#primary-menu > li:after {
          content: '';
          display: block;
          position: absolute;
          top: calc(50% + 10px);
          height: 3px;
          width: 100%;
          background: transparent;
          transition: background 0.3s ease-in-out; }
        #masthead .container #navigation #site-navigation .main-nav-container ul#primary-menu > li:hover:after {
          background: #490000; }
        #masthead .container #navigation #site-navigation .main-nav-container ul#primary-menu > li:hover ul.sub-menu {
          display: block; }
    #masthead .container #navigation #site-navigation .main-nav-container ul.sub-menu {
      display: none;
      position: absolute;
      top: 100%;
      left: -20px;
      background: #fff;
      padding: 5px 20px;
      border-radius: 2px;
      margin: 0;
      min-width: calc(100% + 80px); }
      #masthead .container #navigation #site-navigation .main-nav-container ul.sub-menu li {
        display: block;
        margin: 20px 0;
        white-space: nowrap;
        font-size: 14px;
        line-height: 1.1em; }
        #masthead .container #navigation #site-navigation .main-nav-container ul.sub-menu li a {
          color: #003500;
          text-decoration: none;
          white-space: initial; }
          #masthead .container #navigation #site-navigation .main-nav-container ul.sub-menu li a:hover {
            text-decoration: none; } }

@media (max-width: 1024px) {
  #masthead .container .site-branding .site-logo a {
    height: 100%;
    margin-right: 20px; }
    #masthead .container .site-branding .site-title a {
      color: #003500; }
    #masthead .container #navigation {
      flex-direction: initial; }
    #masthead .container #navigation #aux-area .social-menu {
      display: none; }
      #masthead .container #navigation #aux-area #site-search {
        display: none; }
    #masthead .container #navigation #site-navigation {
      align-items: center;
      width: 50px; }
      #masthead .container #navigation #site-navigation .menu-toggle {
        display: block;
        font-size: 12px;
        font-weight: bold;
        color: #003500;
        text-transform: uppercase;
        cursor: pointer;
        z-index: 9999;
        position: relative;
        padding-top: 26px; }
        #masthead .container #navigation #site-navigation .menu-toggle .hamburger-icon {
          width: 100%;
          height: 26px;
          position: absolute;
          top: 0; }
          #masthead .container #navigation #site-navigation .menu-toggle .hamburger-icon span, #masthead .container #navigation #site-navigation .menu-toggle .hamburger-icon:before, #masthead .container #navigation #site-navigation .menu-toggle .hamburger-icon:after {
            display: block;
            width: 100%;
            height: 4px;
            background: #003500;
            margin: 0 0 5px; }
          #masthead .container #navigation #site-navigation .menu-toggle .hamburger-icon:before, #masthead .container #navigation #site-navigation .menu-toggle .hamburger-icon:after {
            content: ''; }
      #masthead .container #navigation #site-navigation .main-nav-container {
        display: block;
        position: fixed;
        z-index: 9998;
        background: #fff;
        top: 0;
        right: -110%;
        bottom: 0;
        width: 90%;
        padding: 95px 20px 20px;
        transition: right 0.6s cubic-bezier(0.19, 1, 0.22, 1);
        overflow-y: scroll;
        -webkit-overflow-scrolling: touch;
        box-shadow: -3px 0px 6px -1px rgba(0, 0, 0, 0.2); }
        body.admin-bar #masthead .container #navigation #site-navigation .main-nav-container {
          top: 46px; }
        #masthead .container #navigation #site-navigation .main-nav-container ul {
          margin: 0;
          padding: 0;
          list-style: none; }
          #masthead .container #navigation #site-navigation .main-nav-container ul > li {
            margin: 0;
            display: block;
            border-top: 1px solid #003500; }
            #masthead .container #navigation #site-navigation .main-nav-container ul > li > a {
              display: block;
              font-size: 16px;
              font-weight: bold;
              text-transform: uppercase;
              text-decoration: none;
              padding: 15px 0;
              color: #003500;
              border-bottom-width: 0px;
              background: none; }
          #masthead .container #navigation #site-navigation .main-nav-container ul.sub-menu li a {
            text-transform: none;
            font-weight: normal;
            padding: 15px;
            color: #003500;
            border-bottom-width: 0px; }
            #masthead .container #navigation #site-navigation .main-nav-container ul.sub-menu li a:after {
              display: none; }
      #masthead .container #navigation #site-navigation.menu-open .main-nav-container {
        right: 0; }
        #masthead .container #navigation #site-navigation.menu-open .menu-toggle .hamburger-icon span {
          display: none; }
          #masthead .container #navigation #site-navigation.menu-open .menu-toggle .hamburger-icon:before, #masthead .container #navigation #site-navigation.menu-open .menu-toggle .hamburger-icon:after {
            content: '';
            transform: translate(-50%, -50%) rotate(45deg);
            position: absolute;
            top: 38%;
            left: 50%;
            width: 50px;
            height: 1px; }
          #masthead .container #navigation #site-navigation.menu-open .menu-toggle .hamburger-icon:after {
            transform: translate(-50%, -50%) rotate(-45deg); } }

.floating-cart {
  position: fixed;
  width: 90px;
  top: 152px;
  right: 0;
  z-index: 1002;
  background: #490000;
  padding: 10px 20px;
  text-align: center;
  font-weight: bold;
  font-size: 14px;
  transition: right 0.5s ease-in-out; }
  .floating-cart a {
    color: #b0f4ed;
    text-decoration: none; }
  .floating-cart .quantity {
    margin-top: 14px;
    height: 40px;
    width: 45px; }
  .floating-cart .cart-link {
    text-decoration: underline; }
  .floating-cart svg {
    fill: #b0f4ed;
    width: 50px;
    height: 50px;
    position: absolute;
    left: 20px;
    top: 10px; }
  .floating-cart.empty {
    right: -90px; }

@media screen and (max-width: 600px) {
  #wpadminbar {
    position: fixed !important; } }

a.button, .button {
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;
  padding: 1em;
  min-height: 45px;
  background: #490000;
  color: #b0f4ed;
  transition: all 0.3s ease-in-out;
  text-decoration: none;
  outline: 0; }
  a.button.outline, .button.outline {
    background: none;
    border: 2px solid #b0f4ed;
    color: #b0f4ed; }
  a.button:hover, .button:hover, a.button:active, .button:active {
    background: #b0f4ed;
    color: #490000; }
  a.button:hover.outline, .button:hover.outline, a.button:active.outline, .button:active.outline {
    border: 2px solid #490000;
    background: #490000;
    color: #b0f4ed; }

.btn {
  border-radius: 1px; }
  .btn.outline {
    background: none;
    border: 2px solid #b0f4ed;
    color: #b0f4ed; }
  .btn.outline.btn-sm {
    border-width: 1px; }
  .btn.outline:hover {
    background: #b0f4ed;
    color: #490000; }
  .btn.btn-secondary {
    color: #000;
    border: none; }
  .btn.btn-secondary:hover {
    border: none; }

.overlay .button.outline {
  border-color: #b0f4ed;
  color: #b0f4ed; }
  .overlay .button.outline:hover {
    color: #490000;
    background: #b0f4ed;
    opacity: 1; }

a.arrow-link {
  text-transform: uppercase;
  font-size: 18px;
  font-weight: bold;
  display: inline-block;
  position: relative;
  line-height: 20px;
  padding-right: 28px;
  text-decoration: none;
  transition: opacity 0.3s ease-in-out;
  text-align: right; }
  a.arrow-link:hover, a.arrow-link:focus, a.arrow-link:active {
    opacity: 0.7; }
  a.arrow-link .arrow {
    display: block;
    width: 22px;
    height: 20px;
    position: absolute;
    right: 0;
    top: 0; }
  a.arrow-link .arrow g {
    fill: #490000; }
  a.arrow-link.reverse-arrow {
    padding: 0 0 0 28px;
    text-align: left; }
  a.arrow-link.reverse-arrow .arrow {
    right: auto;
    left: 0;
    transform: rotate(180deg); }
  a.arrow-link:last-child {
    flex: 1; }
/**
 Buy Tickets dropdown
 */
.buy-tickets-dropdown {
  min-width: 200px; }
  .buy-tickets-dropdown .button.dropdown-toggle {
    min-width: 100%;
    border-radius: 0;
    border: 0; }
  .buy-tickets-dropdown .button.dropdown-toggle:hover {
    color: #b0f4ed;
    background: #490000; }
  .buy-tickets-dropdown .button.dropdown-toggle:focus {
    box-shadow: none; }
  .buy-tickets-dropdown .button.dropdown-toggle:active {
    box-shadow: none; }
  .buy-tickets-dropdown.show .button.dropdown-toggle {
    background-color: #490000; }
  .buy-tickets-dropdown .dropdown-menu {
    min-width: 100%;
    border-radius: 0;
    margin: 0;
    border: 0;
    background-color: #490000;
    color: #b0f4ed;
    border: 0; }
  .buy-tickets-dropdown form.buy-tickets-options {
    display: flex;
    flex-direction: column; }
  .buy-tickets-dropdown form.buy-tickets-options label {
    display: flex;
    padding: 2px 10px;
    justify-content: space-between; }
  .buy-tickets-dropdown form.buy-tickets-options input {
    width: 28px;
    border: 1px solid;
    text-align: center; }
  .buy-tickets-dropdown form.buy-tickets-options button.add-to-cart {
    margin: 0 10px;
    min-width: 0px;
    padding: 0 0.5em;
    border-color: #b0f4ed; }
    .buy-tickets-dropdown form.buy-tickets-options button.add-to-cart:hover, .buy-tickets-dropdown form.buy-tickets-options button.add-to-cart:active {
      background: #b0f4ed;
      color: #490000; }

.buy-ticket-external {
  min-width: 200px; }

.buy-tickets-sold-out {
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;
  padding: 1em;
  min-height: 45px;
  color: #490000;
  border: 2px solid #490000;
  transition: all 0.3s ease-in-out;
  text-decoration: none;
  outline: 0; }

#footer {
  padding: 15px 0;
  background: #a31b3f;
  color: #031600;
  font-size: 14px;
  line-height: 1.3em;
  z-index: 1;
  position: relative; }
  #footer p {
    margin: 0 0 15px;
    color: #031600; }
  #footer a, #footer a:visited {
    color: #031600; }
  #footer a:hover, #footer a:visited:hover {
    text-decoration: underline; }
  #footer .semi-trans {
    opacity: 0.5; }
  #footer .semi-trans-30 {
    opacity: 0.3; }
  #footer .footer-widget {
    margin: 40px 0; }
  @media (min-width: 768px) {
    #footer .last {
      text-align: right; } }
  @media (max-width: 767px) {
  #footer .g-col {
    margin: 10px 0; } }
  #footer .row {
    padding: 35px 0; }
  #footer .row:last-child {
    font-size: 12px; }
  #footer .row.space-between {
    justify-content: space-between; }
  #footer .footer-menu {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap; }
  #footer .footer-menu li:not(:first-child):before {
    content: '\/';
    margin: 0 10px; }
    #footer .footer-menu li a {
      color: #031600;
      text-decoration: none; }
      #footer .footer-menu li a:hover {
        text-decoration: none; }
  #footer .follow {
    margin-top: 12px; }
  #footer .social-menu {
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
    display: flex; }
  @media (max-width: 767px) {
    #footer .social-menu {
      justify-content: flex-start; }
      #footer .social-menu li {
        margin-right: 20px; } }
  #footer .social-menu li {
    margin-right: 20px; }
    #footer .social-menu li a {
      display: flex;
      width: 45px;
      height: 45px;
      border-radius: 50%;
      border: 1px solid rgba(255, 255, 255, 0.3);
      justify-content: center;
      align-items: center;
      opacity: 0.7; }
      #footer .social-menu li a:hover {
        opacity: 1; }
  #footer h4 {
    margin: 0 0 20px;
    color: #031600; }
  #footer form {
    position: relative; }
  #footer input {
    background: rgba(255, 255, 255, 0.1);
    color: #fff;
    border: none;
    height: 45px;
    padding: 10px 45px 10px 15px;
    outline: 0;
    vertical-align: top;
    font-size: 14px;
    border-radius: 4px;
    width: 300px;
    max-width: 100%; }
  #footer [type=submit] {
    text-indent: -9999em;
    display: block;
    position: absolute;
    width: 40px;
    height: 45px;
    padding: 0;
    left: 260px;
    z-index: 9;
    background: url('../images/right-carat.svg') center center no-repeat;
    top: 0; }
  @media (min-width: 768px) and (max-width: 991px) {
    #footer [type=submit] {
      left: auto;
      right: 0; } }
  #footer .youtube-oembed {
    height: auto; }
/* Override some ugly bootstrap modal stuff */
.modal:not(.bootbox) .modal-content {
  background: none;
  border: 0;
  border-radius: 0; }
  .modal:not(.bootbox) .modal-body {
    padding: 0; }
  .modal:not(.bootbox) .iframe-holder {
    width: 100%;
    overflow: hidden;
    position: relative;
    padding-bottom: 56.25%;
    height: 0; }
  .modal:not(.bootbox) .iframe-holder-inner {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
  @media (max-width: 480px) {
    .modal:not(.bootbox) .iframe-holder-inner iframe {
      height: auto; } }
  .modal:not(.bootbox) .close-modal {
    position: absolute;
    right: -50px;
    top: 0;
    cursor: pointer;
    width: 40px;
    height: 40px;
    background: url('../images/close-x.svg') 0 0 no-repeat;
    background-size: contain; }
  .modal:not(.bootbox) .close-modal span {
    display: none; }

.bootbox .modal-content {
  background: #f5f5f5;
  color: #000; }
  .bootbox .modal-header {
    display: block; }
  .bootbox .modal-body ul {
    margin-left: 0; }
  .bootbox .modal-footer button {
    border-radius: 0px;
    font-size: 12px;
    font-weight: 700; }
  .bootbox .bootbox-close-button:hover {
    background: inherit; }

#itinerary-builder {
  background: #490000;
  color: #b0f4ed;
  position: fixed;
  width: 100%;
  bottom: 0;
  transform: translateY(100%);
  z-index: 998;
  transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1); }
  #itinerary-builder.ib-open {
    transform: translateY(0); }
  #itinerary-builder.ib-open .tab:before {
    transform: rotate(45deg);
    top: 16px; }
  #itinerary-builder .container {
    position: relative;
    padding-top: 20px; }
  #itinerary-builder .tab {
    height: 41px;
    position: absolute;
    background: #490000;
    line-height: 40px;
    display: inline-block;
    top: -40px;
    left: -5px;
    font-weight: bold;
    font-size: 16px;
    padding: 0 40px 0 20px;
    cursor: pointer; }
  #itinerary-builder .tab:before {
    content: "";
    position: absolute;
    right: 20px;
    top: 18px;
    width: 8px;
    height: 8px;
    border: solid #b0f4ed;
    border-width: 0 3px 3px 0;
    transform: rotate(225deg); }
  #itinerary-builder h5 {
    color: #b0f4ed;
    margin: 0 0 20px 0;
    display: inline-block;
    font-size: 20px; }
  #itinerary-builder a.start-over {
    display: inline-block;
    margin: 0 0 0 20px;
    color: #b0f4ed;
    font-weight: bold; }
  #itinerary-builder #open-itinerary {
    background: rgba(176, 244, 237, 0.3); }
  #itinerary-builder .ib-row {
    display: flex;
    margin: 0 -8px; }
  @media (max-width: 1023px) {
    #itinerary-builder .ib-row {
      flex-wrap: wrap; } }
  #itinerary-builder .ib-col {
    flex-grow: 1;
    margin: 0 8px 16px; }
  #itinerary-builder .label {
    font-weight: bold;
    font-size: 12px;
    margin: 0 0 5px;
    white-space: nowrap; }
  #itinerary-builder input {
    background: rgba(0, 0, 0, 0.15);
    color: rgba(255, 255, 255, 0.7);
    width: 100%; }
  #itinerary-builder input::placeholder {
    color: rgba(255, 255, 255, 0.7); }
  #itinerary-builder .bottom-align {
    align-self: flex-end; }
  #itinerary-builder .add-to-cal a {
    color: #fff;
    line-height: 45px;
    font-weight: bold; }
  #itinerary-builder .share {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex; }
  #itinerary-builder .share li {
    margin: 0 6px 0 0; }
    #itinerary-builder .share li:last-child {
      margin: 0; }
    #itinerary-builder .share li a {
      display: flex;
      width: 45px;
      height: 45px;
      background: #490000;
      justify-content: center;
      align-items: center; }
      #itinerary-builder .share li a:hover {
        background: rgba(73, 0, 0, 0.7); }
  #itinerary-builder .gala-tooltip {
    background: #3c3d41;
    font-size: 13px;
    font-weight: 500;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    line-height: 16px;
    text-align: center;
    display: inline-block;
    position: relative;
    top: -10px;
    margin-left: 5px; }
/*--------------------------------------------------------------
 # Layouts
 --------------------------------------------------------------*/
/*--------------------------------------------------------------
 # Components
 --------------------------------------------------------------*/
p.subheader {
  font-size: 20px; }

.hero {
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative; }
  .hero .hero-overlay {
    position: absolute;
    width: 100%;
    top: 0;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.3); }
  .hero .hero-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    padding: 8.125em 1.875em 12.5em;
    color: #fff;
    position: relative; }
  @media (max-width: 768px) {
    .hero .hero-content {
      padding: 3.75em 1.875em; } }
  .hero .hero-content.fill-viewport {
    min-height: calc(100vh - 95px);
    align-items: center; }
  .hero .hero-content h4 {
    margin: 0 0 40px;
    color: #fff;
    text-transform: uppercase; }
  .hero .hero-content h1 {
    margin: 0 0 40px;
    color: #fff; }
    .hero .hero-content h1 em {
      font-weight: normal; }
  .hero .hero-content p.hero-text {
    color: #fff;
    font-size: 48px;
    line-height: 1.1em;
    margin: 0 0 35px; }
    @media (max-width: 767px) {
    .hero .hero-content p.hero-text {
      font-size: 28px; } }
  .hero .video-background-img {
    position: absolute;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center; }
  body:not(.mobile) .hero .video-background-img {
    display: none; }

.hero {
  min-height: calc(100vh - 120px);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  max-width: 100%;
  overflow: hidden; }
  .hero .hero-content {
    min-height: calc(100vh - 120px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    align-items: center;
    padding: 3.125em 1.875em;
    color: #fff;
    position: relative;
    z-index: 3; }
  .hero .hero-content h4 {
    margin: 0 0 40px;
    color: #fff;
    text-transform: uppercase; }
  .hero .hero-content h1 {
    margin: 0 0 40px;
    color: #fff; }
    .hero .hero-content h1 em {
      font-weight: normal; }
  .hero .hero-content p.hero-text {
    color: #fff;
    font-size: 48px;
    line-height: 1.1em;
    margin: 0 0 35px; }
    @media (max-width: 767px) {
    .hero .hero-content p.hero-text {
      font-size: 28px; } }

body:not(.mobile) .hero.video-hero iframe:not(.ytplayer-player) {
  display: none; }

body.mobile .video-hero iframe:not(.ytplayer-player) {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0; }

iframe.ytplayer-player {
  max-width: 1000%; }

.arrow {
  opacity: 1; }

.panel {
  padding: 50px 0;
  text-align: center; }

.sections {
  text-align: center;
  background-color: rgba(101, 107, 111, 0.3); }
  .sections p {
    font-size: 16px; }
  .sections p.subheader {
    font-size: 20px; }
  .sections .section-holder {
    margin: 25px 0;
    position: relative; }
  .sections .section-holder a {
    text-decoration: none;
    display: block;
    position: relative;
    overflow: hidden;
    height: 100%; }
  .sections .section-holder:hover .section-overlay {
    opacity: 0.9;
    transition: 0.3s opacity ease-in-out; }
  .sections .section h6 {
    letter-spacing: 0.1em;
    color: #000; }
  .sections .section img {
    width: 100%;
    margin: 0 0 20px; }
  .sections .section p {
    color: #000; }
  .sections .section-overlay {
    background-color: #490000;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0; }
  .sections .section-overlay h4 {
    color: #fff;
    text-transform: uppercase;
    padding: 10px; }

.module-overlay {
  position: absolute;
  width: 100%;
  top: 0;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.3); }

.promo {
  background-color: #490000;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  position: relative; }
  .promo .promo-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    padding: 5em 1.875em 3.125em;
    color: #fff;
    position: relative; }
  .promo .promo-content h2 {
    margin: 0 0 20px;
    color: #fff; }
  .promo .promo-content p {
    color: #fff;
    margin: 0 0 35px; }

.show-slider {
  position: relative; }
  .show-slider .show-carousel .slick-slide {
    box-shadow: 0px 1px 1px 1px rgba(0, 0, 0, 0.1);
    padding: 15px;
    text-align: left;
    border-radius: 2px;
    margin: 15px; }
  .show-slider .show-carousel .card {
    border: none;
    border-radius: 0;
    background: none; }
    .show-slider .show-carousel .card .card-img-top {
      max-height: 250px;
      width: auto; }
    .show-slider .show-carousel .card .card-body {
      background: none; }
    .show-slider .show-carousel .card .category {
      margin-bottom: 5px; }
    .show-slider .show-carousel .card .card-footer {
      background: none; }
    .show-slider .show-carousel .card .button {
      white-space: nowrap; }
  .show-slider .show-slider-next, .show-slider .show-slider-prev {
    position: absolute;
    top: calc(50% - 35px);
    right: 45px;
    cursor: pointer;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: rgba(101, 107, 111, 0.5);
    display: flex;
    align-items: center;
    justify-content: center; }
  .show-slider .show-slider-next.show-slider-prev, .show-slider .show-slider-prev.show-slider-prev {
    right: auto;
    left: 45px; }
  .show-slider .show-slider-next:hover, .show-slider .show-slider-prev:hover {
    background: rgba(101, 107, 111, 1); }
  @media (max-width: 767px) {
    .show-slider .show-slider-next, .show-slider .show-slider-prev {
      display: none !important; } }

div.search {
  background-color: rgba(101, 107, 111, 0.3);
  padding: 50px 0;
  text-align: center; }

.search-form {
  margin: 40px 0 0;
  text-align: left; }
  .search-form .input {
    padding: 20px 0; }
  .search-form .input input {
    width: 100%; }
    .search-form .input input[type="text"] {
      border: 1px solid; }
  .search-form .submit-btn {
    text-align: center;
    margin: 30px 0 20px; }

.news {
  padding-bottom: 0px; }
  .news h5 a {
    text-transform: uppercase; }
  .news .news-grid {
    margin: 50px 0 0; }
  .news .news-square {
    margin: 0 -15px;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative; }
  .news .news-square:before {
    content: '';
    display: block;
    height: 0;
    padding-top: 100%; }
  .news .news-square .overlay {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    background: rgba(0, 0, 0, 0.6);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 25% 35px 32%;
    transition: 0.3s background ease-in-out; }
    .news .news-square .overlay h3 {
      color: #fff;
      line-height: 1.1em;
      font-weight: normal; }
    .news .news-square .overlay .button {
      color: #fff;
      border-color: #fff; }
  .news .news-square:hover .overlay {
    background: rgba(73, 0, 0, 0.7); }
    .news .news-square:hover .overlay h3 {
      color: #b0f4ed; }
    .news .news-square:hover .overlay .button {
      color: #b0f4ed;
      border-color: #b0f4ed; }
    .news .news-square:hover .overlay .button:hover {
      color: #490000;
      border-color: #b0f4ed;
      background: #b0f4ed; }

.schedule {
  background-color: rgba(101, 107, 111, 0.3); }
  .schedule .schedule-holder {
    margin: 40px 0 20px; }
  .schedule .schedule-holder .col-sm-6.col-lg-3 {
    display: flex; }
  .schedule .schedule-holder .schedule-item {
    position: relative;
    background: #b0f4ed;
    margin: 0 0 30px; }
    .schedule .schedule-holder .schedule-item a {
      text-decoration: none; }
    .schedule .schedule-holder .schedule-item img {
      width: 100%; }
    .schedule .schedule-holder .schedule-item p {
      margin: 10px 0; }
    .schedule .schedule-holder .schedule-item p.date {
      text-transform: uppercase;
      color: #490000;
      letter-spacing: 2px;
      font-weight: bold; }
    .schedule .schedule-holder .schedule-item .details {
      padding: 10px 25px 25px; }
    .schedule .schedule-holder .schedule-item .overlay {
      opacity: 0;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      background: rgba(73, 0, 0, 0.9);
      color: #b0f4ed;
      padding: 40px 0;
      transition: 0.3s opacity ease-in-out; }
    .schedule .schedule-holder .schedule-item .overlay h2 {
      line-height: 1.1em;
      margin: 0 0 20px;
      color: #b0f4ed; }
    .schedule .schedule-holder .schedule-item:hover .overlay {
      opacity: 1; }

.sponsors.panel {
  background-color: rgba(101, 107, 111, 0.3); }

.freeform-content {
  text-align: left; }

.share-buttons a {
  display: flex;
  align-items: center;
  background: none;
  margin: 0 0 20px;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 0.1em;
  text-decoration: none;
  transition: opacity 0.3s ease-in-out; }
  .share-buttons a:hover, .share-buttons a:focus, .share-buttons a:active {
    opacity: 0.7;
    color: #999; }
  .share-buttons a img {
    width: 28px;
    height: 22px;
    margin-right: 8px;
    flex-shrink: 0; }

.post-archives, .search-results {
  text-align: center;
  padding: 50px 0; }
  .post-archives .search-shows, .search-results .search-shows {
    padding: 30px 0 40px;
    display: flex;
    justify-content: center; }
  .post-archives .search-shows .search-field, .search-results .search-shows .search-field {
    margin: 0 15px 0 0;
    width: 285px; }
    .post-archives .search-shows .search-field input, .search-results .search-shows .search-field input {
      border: 1px solid;
      width: 100%;
      font-size: 14px; }
  .post-archives .search-shows .search-button, .search-results .search-shows .search-button {
    width: 150px;
    text-align: right; }
    .post-archives .search-shows .search-button button, .search-results .search-shows .search-button button {
      display: block;
      width: 100%; }
    .post-archives .search-shows .search-button a, .search-results .search-shows .search-button a {
      display: inline-block;
      margin-top: 20px;
      text-transform: uppercase;
      color: #3c3d41;
      font-size: 14px; }
  .post-archives .items-list, .search-results .items-list {
    text-align: center;
    margin-top: 50px; }
  .post-archives .items-list .item-holder, .search-results .items-list .item-holder {
    margin: 0 0 60px;
    position: relative; }
    .post-archives .items-list .item-holder a, .search-results .items-list .item-holder a {
      text-decoration: none;
      display: block;
      position: relative;
      overflow: hidden;
      height: 100%; }
    .post-archives .items-list .item-holder:hover .item-overlay, .search-results .items-list .item-holder:hover .item-overlay {
      opacity: 0.9;
      transition: 0.3s opacity ease-in-out;
      padding: 20px; }
      .post-archives .items-list .item-holder:hover .item-overlay h4, .search-results .items-list .item-holder:hover .item-overlay h4 {
        font-size: 27px; }
      .post-archives .items-list .item-holder:hover .item-overlay h6, .search-results .items-list .item-holder:hover .item-overlay h6 {
        text-transform: uppercase;
        letter-spacing: 0.05em; }
  .post-archives .items-list .item h6.section, .search-results .items-list .item h6.section {
    text-transform: none;
    font-weight: normal; }
    .post-archives .items-list .item img, .search-results .items-list .item img {
      max-width: 100%;
      margin: 0 0 10px;
      width: auto;
      max-height: 300px; }
  .post-archives .items-list .item-overlay, .search-results .items-list .item-overlay {
    color: #b0f4ed;
    background-color: #490000;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0; }
    .post-archives .items-list .item-overlay h4, .search-results .items-list .item-overlay h4 {
      text-transform: uppercase;
      text-align: center;
      padding: 10px; }
    .post-archives .items-list .item-overlay p, .search-results .items-list .item-overlay p {
      padding: 0 20px; }
    .post-archives .items-list .item-overlay p.director, .search-results .items-list .item-overlay p.director {
      margin: 0 0 10px; }
  .post-archives .post-navigation, .search-results .post-navigation {
    padding: 30px 0; }
  .post-archives .search, .search-results .search {
    padding: 0;
    background: none; }
  .post-archives .search .search-form, .search-results .search .search-form {
    margin: 0;
    text-align: left; }
  .post-archives .search .centered, .search-results .search .centered {
    justify-content: center; }
    .post-archives .search .centered .col-lg, .search-results .search .centered .col-lg {
      flex-grow: 0; }
  .post-archives .search .input, .search-results .search .input {
    padding: 20px 0; }
    .post-archives .search .input .select-style, .search-results .search .input .select-style {
      width: 100%;
      border: 1px solid #000; }
  .post-archives .search .submit-btn, .search-results .search .submit-btn {
    text-align: center;
    margin: 30px 0 20px; }
  .post-archives .search .custom-checkbox, .search-results .search .custom-checkbox {
    white-space: nowrap; }

.post-archives a[data-toggle="collapse"].collapsed:after {
  content: ' [+]'; }
  .post-archives a[data-toggle="collapse"]:after {
    content: ' [-]'; }

.show-featured-image {
  position: relative;
  max-width: 888px;
  margin: 0 auto; }
  .show-featured-image .watch-trailer {
    position: absolute;
    bottom: 30px;
    right: 30px; }
  @media (max-width: 767px) {
    .show-featured-image .watch-trailer {
      left: 0;
      right: 0;
      width: 60%;
      margin-left: auto;
      margin-right: auto;
      bottom: 70px; } }
  .show-featured-image .img-slider-container {
    position: relative;
    max-height: 500px;
    margin-bottom: 25px; }
  .show-featured-image .img-slider-container .slick-slider {
    max-height: 500px; }
  .show-featured-image .img-slider-container .slide-item .slide-item-inner {
    position: relative;
    text-align: center; }
    .show-featured-image .img-slider-container .slide-item .slide-item-inner img {
      max-height: 500px;
      height: auto;
      width: auto;
      margin: 0 auto; }
  .show-featured-image .img-slider-container .prev-arrow, .show-featured-image .img-slider-container .next-arrow {
    position: absolute;
    top: calc(50% - 35px);
    right: 45px;
    cursor: pointer;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: rgba(101, 107, 111, 0.5);
    display: flex;
    align-items: center;
    justify-content: center; }
    .show-featured-image .img-slider-container .prev-arrow.prev-arrow, .show-featured-image .img-slider-container .next-arrow.prev-arrow {
      right: auto;
      left: 45px; }
    .show-featured-image .img-slider-container .prev-arrow:hover, .show-featured-image .img-slider-container .next-arrow:hover {
      background: rgba(101, 107, 111, 1); }
    @media (max-width: 767px) {
    .show-featured-image .img-slider-container .prev-arrow, .show-featured-image .img-slider-container .next-arrow {
      display: none !important; } }
  .show-featured-image .img-slider-container .slick-dots {
    text-align: center;
    position: absolute;
    z-index: 99;
    height: 30px;
    bottom: 0px;
    left: 0px;
    right: 0px; }
  @media (max-width: 767px) {
    .show-featured-image .img-slider-container {
      margin-right: -15px;
      margin-left: -15px;
      max-height: none; }
      .show-featured-image .img-slider-container .slick-slider {
        max-height: none; }
        .show-featured-image .img-slider-container .slick-slider .slide-item-inner {
          height: auto;
          display: flex;
          align-items: center;
          justify-content: center; }
          .show-featured-image .img-slider-container .slick-slider .slide-item-inner img {
            max-height: 300px;
            width: auto; } }

.show-details {
  position: relative;
  text-align: center; }
  @media (max-width: 767px) {
  .show-details {
    padding-bottom: 95px; } }
  .show-details h1 {
    font-size: 44px;
    margin: 20px auto 30px;
    max-width: 800px;
    padding: 0 100px;
    line-height: 1.1em; }
  @media (max-width: 767px) {
    .show-details h1 {
      font-size: 24px;
      padding: 0; } }
  .show-details h4 {
    font-style: italic; }
  .show-details h5 {
    margin-bottom: 24px; }
  .show-details ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center; }
  .show-details ul li {
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase; }
    .show-details ul li:not(:last-child):after {
      content: '|';
      padding: 0 10px; }
  .show-details .share-buttons {
    position: absolute;
    left: 0;
    top: 0px; }
  @media (max-width: 767px) {
    .show-details .share-buttons {
      bottom: 0;
      top: auto; } }

.show-description {
  text-align: left;
  margin: 50px 0; }
  @media (max-width: 767px) {
  .show-description {
    margin-top: 20px; } }
  .show-description h6 {
    font-size: 16px; }
  .show-description .row {
    justify-content: space-between; }
  .show-description .date-times {
    background: rgba(216, 216, 216, 0.3);
    padding: 25px 40px 10px;
    margin-bottom: 40px; }
  .show-description .date-times hr {
    margin: initial; }
  .show-description .date-times h5.related-title {
    font-weight: bold;
    font-size: 14px;
    margin: 10px 0; }
  .show-description .date-times .showing {
    justify-content: space-between;
    margin-bottom: 20px; }
    .show-description .date-times .showing .showing-details p {
      padding-right: 15px;
      font-size: 14px;
      line-height: 1.4;
      margin-bottom: 5px; }
    .show-description .date-times .showing .showing-details h6 {
      margin-bottom: 0px;
      text-transform: none;
      font-size: 14px;
      padding-right: 10px; }
    .show-description .date-times .showing .buy-tickets {
      text-align: center; }
    .show-description .date-times .showing .buy-tickets .buy-tickets-dropdown {
      min-width: 100%; }
    .show-description .date-times .showing .buy-tickets .button.dropdown-toggle {
      line-height: 1.2em;
      font-size: 10px;
      width: 80px;
      padding: 10px;
      height: 45px;
      letter-spacing: 0.1em; }
    .show-description .date-times .showing .buy-tickets .dropdown-menu {
      min-width: 0px;
      width: 100%; }
      .show-description .date-times .showing .buy-tickets .dropdown-menu .add-to-cart {
        font-size: 11px;
        height: 30px;
        line-height: 28px; }
  .show-description .date-times .past-showtimes {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between; }
    .show-description .date-times .past-showtimes .showing {
      margin: 5px 0;
      width: 50%; }
  .show-description .credits {
    margin: 30px 0; }
  .show-description .credits ul {
    display: table;
    margin: 10px 0 0;
    padding: 0;
    list-style: none; }
    .show-description .credits ul li {
      display: table-row; }
    .show-description .credits ul li span {
      display: table-cell; }
      .show-description .credits ul li span.label {
        font-weight: bold;
        padding-right: 15px; }

.show-single {
  text-align: center; }
  .show-single .sections {
    padding: 30px 0 50px;
    border-top: 1px solid #979797; }
  .show-single .sections h3 {
    color: #000; }
  .show-single .sections .view-all {
    text-align: right; }
  .show-single img.wp-post-image {
    max-height: 500px;
    width: auto; }
  .show-single .sponsor img.wp-post-image {
    max-width: 60%;
    height: auto;
    display: block;
    margin: 0 auto; }

.venue-single .venue-term-content, .venue-archive .venue-term-content {
  margin: 20px auto 50px;
  padding: 0 30px;
  position: relative; }
  @media (max-width: 767px) {
    .venue-single .venue-term-content, .venue-archive .venue-term-content {
      padding: 0; } }
  @media (max-width: 768px) {
      .venue-single .venue-term-content .single-entry-content, .venue-archive .venue-term-content .single-entry-content {
        position: relative;
        padding-bottom: 85px; } }
  .venue-single .venue-term-content h2, .venue-archive .venue-term-content h2 {
    text-align: center; }
  .venue-single .venue-term-content h5.address, .venue-archive .venue-term-content h5.address {
    text-align: center; }

.sponsors {
  padding: 100px 0;
  text-align: center; }
  .sponsors .sponsors-title, .sponsors .sponsor-level {
    margin: 30px 0 20px; }
  .sponsors ul {
    list-style: none;
    margin: 20px 0 60px 0;
    padding: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    background: rgba(216, 216, 216, 0.3); }
  .sponsors ul li {
    margin: 0 25px; }
    .sponsors ul li a {
      background: none; }
    .sponsors ul li a:after {
      display: none; }
    .sponsors ul li img {
      max-height: 80px;
      margin: 20px;
      height: auto;
      width: auto; }

.blog-single .blog-post-content, .blog-archive .blog-post-content {
  max-width: 800px;
  margin: 20px auto 50px;
  padding: 0 30px;
  position: relative; }
  @media (max-width: 767px) {
    .blog-single .blog-post-content, .blog-archive .blog-post-content {
      padding: 0; } }
  @media (max-width: 768px) {
      .blog-single .blog-post-content .single-entry-content, .blog-archive .blog-post-content .single-entry-content {
        position: relative;
        padding-bottom: 85px; } }
  .blog-single .blog-post-content h5.category, .blog-archive .blog-post-content h5.category {
    text-align: center;
    letter-spacing: 0.1em;
    text-transform: uppercase; }
  .blog-single .blog-post-content h2, .blog-archive .blog-post-content h2 {
    margin: 20px 0 30px;
    line-height: 1.1em;
    text-align: center; }
  .blog-single .blog-post-content h6.date, .blog-archive .blog-post-content h6.date {
    margin: 0 0 15px; }
  .blog-single .blog-post-content .img-holder, .blog-archive .blog-post-content .img-holder {
    margin: 0 0 20px; }
    .blog-single .blog-post-content .img-holder img, .blog-archive .blog-post-content .img-holder img {
      width: 100%; }
    .blog-single .blog-post-content .img-holder .caption, .blog-archive .blog-post-content .img-holder .caption {
      margin: 5px 0 0;
      color: rgba(0, 0, 0, 0.7);
      font-size: 12px; }
  .blog-single .blog-post-content .share-buttons, .blog-archive .blog-post-content .share-buttons {
    position: absolute;
    right: 100%;
    margin: 10px 30px 0 0; }
    @media (max-width: 768px) {
    .blog-single .blog-post-content .share-buttons, .blog-archive .blog-post-content .share-buttons {
      right: auto;
      bottom: 0; } }
  .blog-single .news-teasers, .blog-archive .news-teasers {
    border-top: 1px solid #490000;
    margin: 40px -30px 0;
    padding: 40px 0 0; }
  @media (max-width: 767px) {
    .blog-single .news-teasers, .blog-archive .news-teasers {
      margin: 40px -15px 0; } }
  .blog-single .news-teasers h3.news-header, .blog-archive .news-teasers h3.news-header {
    text-transform: uppercase;
    text-align: center; }
  .blog-single .news-teasers .post-teaser, .blog-archive .news-teasers .post-teaser {
    padding: 30px 0;
    margin: 0; }
    .blog-single .news-teasers .post-teaser:not(:last-child), .blog-archive .news-teasers .post-teaser:not(:last-child) {
      border-bottom: 1px solid #490000; }
    @media (min-width: 768px) {
    .blog-single .news-teasers .post-teaser > div:first-child, .blog-archive .news-teasers .post-teaser > div:first-child {
      padding-left: 0; }
      .blog-single .news-teasers .post-teaser > div:last-child, .blog-archive .news-teasers .post-teaser > div:last-child {
        padding-right: 0; } }
    .blog-single .news-teasers .post-teaser h3 a, .blog-archive .news-teasers .post-teaser h3 a {
      text-decoration: none; }
    .blog-single .news-teasers .post-teaser p, .blog-archive .news-teasers .post-teaser p {
      color: inherit; }
    @media (max-width: 767px) {
    .blog-single .news-teasers .post-teaser img, .blog-archive .news-teasers .post-teaser img {
      margin-bottom: 20px; } }

.blog-archive .blog-post-content {
  padding: 0; }
  .blog-archive .blog-post-content .news-teasers {
    border-top: none;
    margin: 40px 0 0;
    padding: 0; }
    .blog-archive .blog-post-content .news-teasers .post-teaser .category {
      font-size: 16px;
      text-transform: uppercase; }
  .blog-archive .blog-post-content h2 {
    text-align: center;
    margin: 0 0 30px; }

.post-navigation {
  padding: 60px 0;
  display: flex;
  justify-content: space-between; }

.page-template-cart .floating-cart {
  display: none; }

.cart-checkout {
  padding-bottom: 50px; }
  .cart-checkout h3 {
    text-transform: uppercase;
    margin: 0;
    padding: 20px 0;
    text-align: center; }
  .cart-checkout .success-header {
    padding: 50px 0 0 0; }
  .cart-checkout .order-id {
    letter-spacing: normal;
    text-transform: none;
    padding-top: 0;
    text-align: left; }

@media (min-width: 1201px) {
    .cart {
      padding-right: 25px; } }
  .cart .cart-row {
    position: relative;
    margin-bottom: 30px; }
  .cart .cart-row .showing-details h4 {
    letter-spacing: normal; }
  .cart .cart-row .tickets .ticket-type {
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    padding-bottom: 25px;
    margin-bottom: 25px; }
    .cart .cart-row .tickets .ticket-type span {
      font-size: 14px;
      font-weight: 500; }
    .cart .cart-row .tickets .ticket-quantity {
      min-width: 55px;
      margin-left: 5px; }
    .cart .cart-row .tickets .remove-ticket_type-btn {
      position: absolute;
      right: 0;
      bottom: 0;
      text-transform: uppercase;
      font-size: 11px;
      text-decoration: none;
      font-weight: bold; }
  .cart .cart-row.discount-code input[type=text] {
    width: 100%;
    border: 1px solid #000;
    margin-right: 10px; }
    @media (max-width: 768px) {
      .cart .cart-row.discount-code input[type=text] {
        margin-bottom: 10px; } }
    .cart .cart-row.discount-code button {
      width: 100%;
      height: 45px; }
    .cart .cart-row.discount-code button.applied {
      padding: 0; }
  .cart .ticket-totals {
    border-top: 1px solid #000; }
  .cart .ticket-totals .ticket-total-row {
    width: 100%;
    display: flex;
    justify-content: space-between;
    font-size: 18px;
    font-weight: bold;
    margin: 20px 0; }
    @media (max-width: 767px) {
    .cart .ticket-totals .ticket-total-row {
      font-size: 14px; } }
    .cart .ticket-totals .ticket-total-row .label {
      text-transform: uppercase; }
    .cart .ticket-totals .ticket-total-row .data {
      text-align: right; }
  .cart .cart-error {
    display: none;
    border-radius: 0px; }

.checkout {
  background-color: rgba(101, 107, 111, 0.3); }
  .checkout .checkout-rows {
    padding: 0 50px 50px; }
  .checkout .checkout-rows .row {
    margin-bottom: 30px; }
  @media (max-width: 480px) {
    .checkout .checkout-rows {
      padding: 0 20px 20px; } }
  .checkout .payment-address {
    width: 100%;
    position: relative;
    margin: 0 0 20px; }
  .checkout .payment-address input {
    font-size: 14px;
    width: 100%; }
    .checkout .payment-address input:not(:last-child) {
      margin-right: 20px; }
  .checkout .submit-row {
    text-align: center; }
  .checkout .error-message {
    width: 100%;
    color: #c00; }

.schedule-page {
  padding: 50px 0; }
  .schedule-page h2 {
    text-align: center;
    margin: 0 0 50px; }
  .schedule-page .schedule-filters {
    padding: 25px 20px 10px; }
  .schedule-page .schedule-filters .filters-row .input {
    margin: 0 0 20px; }
    .schedule-page .schedule-filters .filters-row select {
      width: 200px;
      width: 100%;
      font-size: 14px; }
  .schedule-page .schedule-list .date-row {
    margin: 40px 0 30px; }
  .schedule-page .schedule-list .event-row {
    padding: 35px 40px;
    margin-bottom: 30px;
    width: 100%;
    background: rgba(216, 216, 216, 0.3);
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap; }
    .schedule-page .schedule-list .event-row .event-info {
      max-width: 25%; }
    .schedule-page .schedule-list .event-row .event-section .film-title .original-title {
      font-size: 80%;
      display: block; }
    .schedule-page .schedule-list .event-row h5 {
      margin: 0;
      font-weight: normal; }
    .schedule-page .schedule-list .event-row h4 {
      margin: 0; }
    .schedule-page .schedule-list .event-row a.watch-trailer {
      margin-top: 6px;
      color: #490000;
      border-color: #490000; }
    .schedule-page .schedule-list .event-row a.watch-trailer:hover {
      background-color: #490000;
      color: #b0f4ed; }
    .schedule-page .schedule-list .event-row .buttons {
      justify-content: flex-end;
      display: flex;
      align-items: center; }
    .schedule-page .schedule-list .event-row .buttons .add-to-itinerary {
      display: flex;
      align-items: center;
      margin: 0 0 0 20px; }
      .schedule-page .schedule-list .event-row .buttons .add-to-itinerary .heart-border {
        fill: #490000; }
      .schedule-page .schedule-list .event-row .buttons .add-to-itinerary .heart-fill {
        fill: transparent; }
      .schedule-page .schedule-list .event-row .buttons .add-to-itinerary:hover .heart-border, .schedule-page .schedule-list .event-row .buttons .add-to-itinerary.saved .heart-border {
        fill: transparent; }
        .schedule-page .schedule-list .event-row .buttons .add-to-itinerary:hover .heart-fill, .schedule-page .schedule-list .event-row .buttons .add-to-itinerary.saved .heart-fill {
          fill: #490000; }
    @media (max-width: 1023px) {
    .schedule-page .schedule-list .event-row .event-col {
      width: 100%;
      max-width: 100%;
      text-align: center; }
      .schedule-page .schedule-list .event-row .event-col:not(:last-child) {
        margin-bottom: 15px; }

      .schedule-page .schedule-list .event-row .event-col.buttons {
        justify-content: center; } }
