/* Colors */
/* Media query */
/*
Theme Name: Cullbergbaletten
Theme URI: 
Author: Sholz & Friends
Author URI: http://housoffriends.se
Description: Custom WP theme for Cullbergbaletten
Version: 1.0
License: 
License URI: 
Tags: 
Text Domain: cullberg


*/
/* #Reset & Basics (Inspired by E. Meyers)
================================================== */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

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

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

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

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

b {
  font-weight: 700;
}

strong {
  font-weight: 700;
}

i,
em {
  font-style: italic;
}

p {
  line-height: 1.2;
}

/* #Clearing
================================================== */
/* Self Clearing Goodness */
.container:after {
  content: "\0020";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

/* Use clearfix class on parent to clear nested columns,
or wrap each row of columns in a <div class="row"> */
.clearfix:before,
.clearfix:after,
.row:before,
.row:after {
  content: "\0020";
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.row:after,
.clearfix:after {
  clear: both;
}

.row,
.clearfix {
  zoom: 1;
}

/* You can also use a <br class="clear" /> to clear columns */
.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.gallery {
  display: block;
  clear: both;
  overflow: hidden;
  margin: 0 auto;
}

.gallery .gallery-row {
  display: block;
  clear: both;
  overflow: hidden;
  margin: 0;
}

.gallery .gallery-item {
  overflow: hidden;
  float: left;
  margin: 0;
  text-align: center;
  list-style: none;
  padding: 0;
  margin: 6px 0;
}

.gallery .gallery-item img,
.gallery .gallery-item img.thumbnail {
  max-width: 89%;
  height: auto;
  padding: 1%;
  margin: 0 auto;
}

.gallery-caption {
  margin-left: 0;
}

/* =WordPress Core
-------------------------------------------------------------- */
body {
  font-family: "Circular";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

@media only screen and (min-width: 1401px) {
  .container {
    width: 1400px;
  }
}

a:focus {
  outline: none;
}

a {
  color: #3c3c3c;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.2;
}

html {
  position: relative;
  min-height: 100%;
}

body {
  margin-bottom: 420px;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  body {
    margin-bottom: 545px;
  }
}

@media only screen and (max-width: 767px) {
  body {
    margin-bottom: 1020px;
    margin-bottom: 0 !important;
  }
}

footer {
  position: absolute;
  bottom: 0;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  footer {
    position: static;
  }
}

.text-align-center {
  text-align: center;
}

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

.text-align-right {
  text-align: right;
}

@media only screen and (max-width: 767px) {
  .mobile-text-align-center {
    text-align: center;
  }
}

@media only screen and (max-width: 767px) {
  .mobile-text-align-left {
    text-align: left;
  }
}

@media only screen and (max-width: 767px) {
  .mobile-text-align-right {
    text-align: right;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  .row-left-padding {
    padding-left: 80px;
  }
}

@media only screen and (min-width: 1401px) {
  .row-left-padding {
    padding-left: 80px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1441px) {
  .row-left-padding.row-press-releases {
    padding-left: 0;
  }

  .row-left-padding.row-press-releases #press-releases {
    padding: 0 50px;
  }

  .row-left-padding.row-press-releases .owl-nav .owl-prev {
    left: -50px;
  }

  .row-left-padding.row-press-releases .owl-nav .owl-next {
    right: -50px;
  }
}

@media only screen and (min-width: 960px) and (max-width: 1199px) {
  #press-releases {
    padding: 0 50px;
  }

  #press-releases .owl-nav .owl-prev {
    left: -50px;
  }

  #press-releases .owl-nav .owl-next {
    right: -50px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #press-releases {
    padding: 0 50px;
  }

  #press-releases .owl-nav .owl-prev {
    left: -50px;
  }

  #press-releases .owl-nav .owl-next {
    right: -50px;
  }
}

.read-more {
  position: relative;
  height: 50px;
  -moz-transform: scaleY(-1);
  -o-transform: scaleY(-1);
  -webkit-transform: scaleY(-1);
  transform: scaleY(-1);
  filter: FlipV;
  -ms-filter: "FlipV";
  margin: 40px 0 80px 0;
}

.read-more:after,
.read-more:before {
  bottom: 0;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.read-more:after {
  border-color: rgba(241, 241, 241, 0);
  border-bottom-color: #ffffff;
  border-width: 33px;
  margin-left: -34px;
  border-left-width: 50px;
  border-right-width: 50px;
}

.read-more:before {
  border-color: rgba(221, 221, 221, 0);
  border-bottom-color: #ff5421;
  border-width: 43px;
  margin-left: -47px;
  border-color: rgba(221, 221, 221, 0) rgba(221, 221, 221, 0) #ff5421;
  border-left-width: 63px;
  border-right-width: 63px;
}

.read-less {
  position: relative;
  height: 50px;
  margin: 40px 0 80px 0;
}

.read-less:after,
.read-less:before {
  bottom: 0;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.read-less:after {
  border-color: rgba(241, 241, 241, 0);
  border-bottom-color: #ffffff;
  border-width: 33px;
  margin-left: -34px;
  border-left-width: 50px;
  border-right-width: 50px;
}

.read-less:before {
  border-color: rgba(221, 221, 221, 0);
  border-bottom-color: #ff5421;
  border-width: 43px;
  margin-left: -47px;
  border-color: rgba(221, 221, 221, 0) rgba(221, 221, 221, 0) #ff5421;
  border-left-width: 63px;
  border-right-width: 63px;
}

.color-arrow-right {
  display: none;
  position: relative;
  height: 50px;
  -moz-transform: scaleY(-1);
  -o-transform: scaleY(-1);
  -webkit-transform: scaleY(-1);
  transform: scaleY(-1);
  filter: FlipV;
  -ms-filter: "FlipV";
  margin: 40px 0 80px 0;
}

.color-arrow-right:after,
.color-arrow-right:before {
  bottom: 0;
  left: 50%;
  border: solid transparent;
  content: " ";
  height: 0;
  width: 0;
  position: absolute;
  pointer-events: none;
}

.color-arrow-right:after {
  border-color: rgba(241, 241, 241, 0);
  border-bottom-color: #ffffff;
  border-width: 33px;
  margin-left: -34px;
  border-left-width: 50px;
  border-right-width: 50px;
}

.color-arrow-right:before {
  border-color: rgba(221, 221, 221, 0);
  border-bottom-color: #ff5421;
  border-width: 43px;
  margin-left: -47px;
  border-color: rgba(221, 221, 221, 0) rgba(221, 221, 221, 0) #ff5421;
  border-left-width: 63px;
  border-right-width: 63px;
}

.section-footer {
  position: relative;
  font-size: 12px;
  text-transform: uppercase;
  text-align: right;
  padding-top: 5px;
  border-top: 1px solid #5e5e5e;
  margin: 25px 0 0 0;
}

.section-footer a {
  position: absolute;
  top: -1px;
  right: 0;
  font-weight: 500;
  padding: 8px 12px;
  border: 1px solid #3c3c3c;
}

.homepage-section {
  margin-bottom: 50px;
}

.owl-nav {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  margin-top: -90px;
  overflow-x: visible;
}

@media only screen and (max-width: 767px) {
  .owl-nav {
    margin-top: -66px;
  }
}

.owl-nav .owl-prev,
.owl-nav .owl-next {
  display: block;
  position: absolute;
  height: 126px;
  width: 40px;
  background-image: url("assets/img/carousel-nav-sprite.png");
  background-repeat: no-repeat;
  text-indent: 9999px;
  overflow: hidden;
}

@media only screen and (max-width: 767px) {
  .owl-nav .owl-prev,
  .owl-nav .owl-next {
    height: 31px;
    width: 10px;
    background-size: cover;
  }
}

.owl-nav .owl-prev {
  left: -70px;
  background-position: 0 0;
}

@media only screen and (max-width: 767px) {
  .owl-nav .owl-prev {
    left: -5px;
  }
}

.owl-nav .owl-next {
  right: -70px;
  background-position: 100% 0;
}

@media only screen and (max-width: 767px) {
  .owl-nav .owl-next {
    right: -5px;
  }
}

.owl-carousel.owl-loaded {
  overflow: visible;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  header .text-align-left,
  header .text-align-right {
    text-align: center;
  }
}

body {
  color: #3c3c3c;
  overflow-x: hidden;
}

section img,
article img {
  max-width: 100%;
  height: auto;
}

#logo {
  display: inline-block;
  width: 348px;
  height: 27px;
  background-image: url("assets/img/logo.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin: 40px 0 20px 0;
}

@media only screen and (max-width: 767px) {
  #logo {
    width: 154px;
    height: 12px;
    margin: 33px 0 10px 0;
  }
}

#header-controls {
  position: relative;
  display: inline-block;
  margin: 27px 0 14px 0;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #header-controls {
    margin: 7px 0 14px 0;
  }
}

@media only screen and (max-width: 767px) {
  #header-controls {
    margin: 14px 0 14px 0;
  }
}

#header-controls li {
  margin: 0 5px;
  float: left;
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  #header-controls li {
    margin: 0 2px;
  }
}

@media only screen and (max-width: 767px) {
  #header-controls li {
    float: right;
  }
}

#header-controls li a {
  display: block;
  width: 50px;
  height: 50px;
  background-image: url("assets/img/menu-icons-sprite.png");
}

@media only screen and (max-width: 767px) {
  #header-controls li:nth-of-type(1) {
    display: none;
  }
}

#header-controls li:nth-of-type(1) a {
  background-position: 0 0;
}

#header-controls li:nth-of-type(2) a {
  background-position: 110px 0;
}

#header-controls li:nth-of-type(3) a {
  background: none;
}

@media only screen and (max-width: 767px) {
  #header-controls #search-bar-holder.opened {
    position: absolute;
    left: -55px;
  }
}

#header-right {
  display: inline-block;
  overflow: hidden;
  margin: 36px 0 20px 0;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #header-right {
    margin: 0;
  }
}

@media only screen and (max-width: 767px) {
  #header-right {
    margin: 0;
    display: none;
  }
}

#menu-secondary {
  float: right;
  line-height: 35px;
}

@media only screen and (max-width: 767px) {
  #menu-secondary {
    float: none;
  }
}

#menu-secondary li {
  margin: 0 10px 0 0;
  float: left;
}

#menu-secondary li a {
  color: #3c3c3c;
  font-weight: 500;
}

#social-header {
  float: right;
}

@media only screen and (max-width: 767px) {
  #social-header {
    display: inline-block;
    float: none;
  }
}

#social-header li {
  margin: 0 1px;
  float: left;
}

#social-header li a {
  display: block;
  width: 35px;
  height: 35px;
  background-image: url("assets/img/social-icons-sprite.png");
  background-size: 100%;
  background-repeat: no-repeat;
}

#social-header li:nth-of-type(1) a {
  background-position: 2px -74px;
}

#social-header li:nth-of-type(2) a {
  background-position: 0 -34px;
}

#social-header li:nth-of-type(3) a {
  background-position: 0 5px;
}

#header-border {
  width: 100%;
  height: 21px;
  background-image: url("assets/img/header-border.jpg");
  background-repeat: no-repeat;
}

@media only screen and (max-width: 767px) {
  #header-border {
    height: 15px;
  }
}

#hero {
  position: relative;
  overflow: hidden;
}

@media only screen and (max-width: 767px) {
  #hero {
    margin-bottom: 70px;
  }
}

#hero #hero-wrap {
  padding: 100px 100px 0 100px;
  width: 100%;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #hero #hero-wrap {
    padding: 50px 50px 0 50px;
  }
}

@media only screen and (max-width: 767px) {
  #hero #hero-wrap {
    padding: 0;
  }
}

#hero #hero-background {
  height: calc(100vh - 200px);
  background-size: cover;
  background-position: center;
  position: relative;
  overflow: hidden;
}

@media only screen and (max-width: 767px) {
  #hero #hero-background {
    height: auto;
    min-height: 300px;
  }
}

#hero #hero-background iframe {
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 767px) {
  #hero #hero-background iframe {
    height: auto;
  }
}

#hero #hero-background.vimeo #video-holder {
  width: 100%;
  height: 100% !important;
  margin-top: 0%;
}

#hero #hero-background.vimeo iframe {
  background: #000000;
}

@media only screen and (max-width: 767px) {
  #hero #hero-background.vimeo {
    height: 300px !important;
  }

  #hero #hero-background.vimeo #video-holder {
    height: 100% !important;
  }

  #hero #hero-background.vimeo #video-holder iframe {
    height: 100% !important;
  }
}

#hero #hero-overlay {
  position: absolute;
  bottom: 30px;
  left: 0;
  right: 0;
}

@media only screen and (max-width: 767px) {
  #hero #hero-overlay {
    position: static;
  }

  #hero #hero-overlay .row {
    margin: 0;
  }

  #hero #hero-overlay .container {
    padding: 0;
  }
}

#hero #hero-overlay.vimeo {
  bottom: 30px;
}

@media only screen and (max-width: 767px) {
  #hero #hero-overlay.vimeo #hero-overlay-content {
    padding-top: 0;
  }
}

@media only screen and (max-width: 767px) {
  #hero #hero-overlay.youtube #hero-overlay-content {
    padding-top: 0;
  }
}

#hero #hero-overlay #hero-overlay-content {
  position: absolute;
  bottom: 0;
  left: 100px;
  min-width: 330px;
  max-width: 500px;
  background-color: #ffffff;
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  padding: 30px 50px 30px 0;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #hero #hero-overlay #hero-overlay-content {
    left: 50px;
    min-width: 1px;
  }
}

@media only screen and (max-width: 767px) {
  #hero #hero-overlay #hero-overlay-content {
    position: static;
    left: auto;
    width: auto;
    text-align: center;
    min-width: 1px;
    padding: 20px 5px 30px 5px;
    margin: 0 15px;
    border-bottom: 1px solid #5e5e5e;
    max-width: 100%;
  }
}

#hero #hero-overlay #hero-overlay-content h4 {
  font-size: 29px;
  margin-bottom: 5px;
  line-height: 1.2;
}

#hero #hero-overlay #hero-overlay-content h4.title {
  font-weight: 500;
}

#hero #hero-overlay #hero-overlay-content h4 a {
  color: #ff0500;
}

#hero #hero-overlay #hero-overlay-content h4.choreographer {
  font-size: 22px;
  margin-bottom: 3px;
  line-height: 1.2;
  color: #767676;
}

#hero #hero-overlay #hero-overlay-content span {
  font-size: 19px;
}

@media only screen and (max-width: 767px) {
  #hero #hero-overlay #hero-overlay-content span {
    font-size: 14px;
  }
}

#hero #hero-overlay #hero-overlay-content a.inline-link {
  font-size: 18px;
  position: relative;
  display: inline-block;
  color: #ff0500;
  padding-left: 30px;
  margin-top: 15px;
}

#hero #hero-overlay #hero-overlay-content a.inline-link:before {
  content: "";
  height: 20px;
  width: 21px;
  background-image: url("assets/img/hero-arrow-red.png");
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 2px;
}

#hero #video-holder {
  position: absolute;
  width: 100%;
  height: 125% !important;
  margin-top: -5%;
}

@media only screen and (max-width: 767px) {
  #hero #video-holder {
    height: auto !important;
    width: 100% !important;
    left: auto !important;
    margin-left: auto !important;
    position: relative;
    min-height: 300px;
  }

  #hero #video-holder iframe {
    height: 100%;
  }
}

#hero #play-pause {
  display: none;
}

#hero-arrow {
  position: absolute;
  left: 50%;
  bottom: 20px;
  margin-left: -80px;
  z-index: 999;
}

#homepage-content {
  position: relative;
  top: -30px;
  background: #ffffff;
}

#homepage-content.vimeo {
  top: -52px;
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  #performances-carousel #carousel-wrap {
    padding-right: 80px;
  }
}

#performances-carousel .item {
  text-align: center;
}

#performances-carousel .item a:hover {
  color: #3c3c3c;
  text-decoration: none;
}

#performances-carousel .item .performances-carousel-thumbnail {
  height: 321px;
  background-size: cover;
  background-repeat: no-repeat;
  margin-bottom: 30px;
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  #performances-carousel .item .performances-carousel-thumbnail {
    height: 263px;
  }
}

@media only screen and (min-width: 319px) and (max-width: 373px) {
  #performances-carousel .item .performances-carousel-thumbnail {
    height: 290px;
  }
}

@media only screen and (min-width: 374px) and (max-width: 412px) {
  #performances-carousel .item .performances-carousel-thumbnail {
    height: 345px;
  }
}

@media only screen and (min-width: 413px) and (max-width: 415px) {
  #performances-carousel .item .performances-carousel-thumbnail {
    height: 384px;
  }
}

#performances-carousel .item .performances-carousel-thumbnail .date {
  color: #131414;
  font-size: 42px;
  font-weight: 600;
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  #performances-carousel .item .performances-carousel-thumbnail .date {
    font-size: 38px;
  }
}

#performances-carousel .item .performances-carousel-thumbnail .date.swedish {
  text-transform: lowercase;
}

#performances-carousel .item .performances-carousel-thumbnail .location {
  font-size: 12px;
}

#performances-carousel .item .performances-carousel-thumbnail .mask {
  height: 100%;
  width: 100%;
  background-image: url("assets/img/c-mask-large.png");
  background-size: cover;
  background-repeat: no-repeat;
}

#performances-carousel
  .item
  .performances-carousel-thumbnail
  .mask
  .mask-content {
  padding: 130px 0 110px 22px;
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  #performances-carousel
    .item
    .performances-carousel-thumbnail
    .mask
    .mask-content {
    padding: 98px 0 120px 19px;
  }
}

@media only screen and (min-width: 319px) and (max-width: 373px) {
  #performances-carousel
    .item
    .performances-carousel-thumbnail
    .mask
    .mask-content {
    padding-top: 114px;
  }
}

@media only screen and (min-width: 374px) and (max-width: 412px) {
  #performances-carousel
    .item
    .performances-carousel-thumbnail
    .mask
    .mask-content {
    padding-top: 140px;
  }
}

@media only screen and (min-width: 413px) and (max-width: 415px) {
  #performances-carousel
    .item
    .performances-carousel-thumbnail
    .mask
    .mask-content {
    padding-top: 155px;
  }
}

#performances-carousel .item .performance-info {
  min-height: 75px;
}

#performances-carousel .item h3 {
  font-size: 17px;
  font-weight: 500;
}

#performances-carousel .item .director {
  font-size: 17px;
}

#performances-carousel .item hr {
  position: absolute;
  bottom: 0;
  height: 4px;
  width: 100%;
  background-color: #333333;
  margin-top: 10px;
  margin-bottom: 0;
}

#news .date {
  font-size: 18px;
}

#news h3 {
  font-size: 29px;
  font-weight: 600;
  padding: 10px 0 10px 0;
}

#news p {
  font-size: 15px;
  margin-bottom: 10px;
}

#news a {
  color: #3c3c3c;
}

@media only screen and (max-width: 767px) {
  #news .col-md-3 {
    margin-bottom: 40px;
  }

  #news p {
    margin-bottom: 10px;
  }
}

#news .cta {
  color: #ff0500;
}

#here-and-now p {
  font-size: 27px;
  font-weight: 500;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #here-and-now img {
    top: auto;
    margin-top: 50px;
  }
}

@media only screen and (max-width: 767px) {
  #here-and-now img {
    top: auto;
    margin-top: 50px;
  }
}

#here-and-now a {
  color: #3c3c3c;
}

footer {
  background-image: url("assets/img/footer-background.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  padding: 40px 0 30px 0;
}

@media only screen and (min-width: 1401px) {
  footer {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  footer {
    padding-bottom: 100px;
  }
}

@media only screen and (min-width: 960px) and (max-width: 1199px) {
  footer {
    padding-bottom: 100px;
  }
}

@media only screen and (max-width: 767px) {
  footer {
    background-position: 30%;
    color: #3c3c3c;
  }
}

footer h3 {
  font-size: 27px;
  padding: 30px 0 20px 0;
}

@media only screen and (max-width: 767px) {
  footer h3 {
    font-size: 25px;
  }
}

footer p {
  font-size: 17px;
  margin-bottom: 10px;
}

footer ul {
  padding-left: 60px;
}

footer ul li {
  font-size: 17px;
}

footer h4 {
  color: #ffffff;
}

footer #footer-copyrights {
  margin-top: 8px;
}

footer #logo-footer {
  text-align: right;
}

footer #logo-footer img {
  margin-top: 5px;
  margin-left: 10px;
  float: right;
}

footer #logo-footer p {
  font-size: 16px;
  font-weight: 400;
  color: #3c3c3c;
}

footer .footer-large {
  padding-bottom: 25px;
}

footer .footer-large h3 {
  font-size: 48px;
  font-weight: 600;
  padding: 0;
}

@media only screen and (max-width: 767px) {
  footer .footer-large h3 {
    font-size: 24px;
  }
}

.social-footer {
  overflow: hidden;
  padding-left: 0;
}

.social-footer li {
  margin: 5px 0;
  margin-right: 5px;
  float: left;
}

.social-footer li:last-of-type {
  margin-right: 0;
}

.social-footer li a {
  display: block;
  height: 33px;
  line-height: 33px;
  font-size: 27px;
  font-weight: 500;
  color: #3c3c3c;
  background-image: url("assets/img/social-icons-sprite.png");
  background-repeat: no-repeat;
  padding-left: 50px;
}

.social-footer li:nth-of-type(1) a {
  background-position: 0 2px;
}

.social-footer li:nth-of-type(2) a {
  background-position: 0 -46px;
}

.social-footer li:nth-of-type(3) a {
  background-position: 2px -94px;
}

#press-footer li {
  margin: 15px 0;
}

#press-footer li a {
  display: block;
  height: 33px;
  line-height: 33px;
  font-size: 27px;
  color: #ffffff;
}

@media only screen and (max-width: 767px) {
  #press-footer li a {
    color: #3c3c3c;
  }
}

/*
Typography
*/
.section-title,
.post-title,
.news-title {
  font-size: 52px !important;
  font-weight: 600;
  padding: 50px 0;
}

@media only screen and (max-width: 767px) {
  .section-title,
  .post-title,
  .news-title {
    font-size: 32px !important;
    padding: 0 0 30px 0;
  }
}

.news-title {
  padding: 10px 0 20px 0;
  line-height: 1.1;
  margin-bottom: 0 !important;
}

.single-performance .post-title {
  padding-bottom: 0;
}

.single-performance p.post-title {
  padding: 0;
}

.single-performance #post-header {
  padding-bottom: 50px;
}

#post-meta {
  margin-bottom: 50px;
}

#post-meta p {
  font-size: 26px;
  line-height: 1.35;
}

#post-meta p span a {
  text-decoration: underline;
}

#post-content h1,
#article-content h1 {
  font-size: 32px;
  margin-bottom: 25px;
}

#post-content h1,
#article-content h1 {
  font-size: 32px;
  margin-bottom: 25px;
}

#post-content h2,
#article-content h2 {
  font-size: 30px;
  margin-bottom: 25px;
}

#post-content h3,
#article-content h3 {
  font-size: 26px;
  margin-bottom: 25px;
}

#post-content h4,
#article-content h4 {
  font-size: 24px;
  margin-bottom: 25px;
}

#post-content h5,
#article-content h5 {
  font-size: 20px;
  margin-bottom: 25px;
}

#post-content h6,
#article-content h6 {
  font-size: 18px;
  margin-bottom: 15px;
}

#post-content p,
#article-content p {
  font-size: 17px;
  margin-bottom: 15px;
}

#post-content h3.preamble,
#article-content h3.preamble {
  font-size: 18px;
  font-weight: 600;
  margin-bottom: 20px;
}

#post-content a,
#article-content a {
  color: #000;
  text-decoration: underline;
}

#post-quotes h4 {
  position: relative;
  font-size: 52px;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 30px;
}

#post-quotes h4:before,
#post-quotes h4:after {
  content: "”";
  position: absolute;
}

#post-quotes h4:before {
  left: -23px;
}

#post-quotes h4.size-medium {
  font-size: 42px;
  margin-bottom: 25px;
}

#post-quotes h4.size-small {
  font-size: 34px;
  margin-bottom: 20px;
}

#post-quotes h5 {
  font-size: 25px;
}

/*
Single
*/
main {
  padding: 30px 0 100px 0;
}

#breadcrumbs {
  position: relative;
  float: left;
  z-index: 99;
}

@media only screen and (max-width: 767px) {
  #breadcrumbs {
    float: none;
    display: none;
  }
}

#breadcrumbs li {
  margin-right: 20px;
  float: left;
}

@media only screen and (max-width: 767px) {
  #breadcrumbs li {
    float: none;
  }
}

#breadcrumbs li a {
  font-size: 20px;
  font-weight: 500;
  color: #ff0500;
  text-decoration: none;
}

#breadcrumbs li a.active {
  text-decoration: none;
  color: #3c3c3c;
}

#breadcrumbs li .sub-menu {
  display: none;
  position: absolute;
  left: 0;
  right: 20px;
  bottom: -42px;
  padding-top: 8px;
  border-top: 1px solid #3c3c3c;
  z-index: 99;
}

@media only screen and (max-width: 767px) {
  #breadcrumbs li .sub-menu {
    position: static;
    margin: 5px 0 20px 0;
  }
}

#breadcrumbs li .sub-menu li a {
  font-size: 17px;
  color: #3c3c3c;
  text-decoration: none;
}

#breadcrumbs li .sub-menu li.current-menu-item a {
  text-decoration: none;
}

#breadcrumbs li.current-menu-item a {
  text-decoration: none;
  color: #3c3c3c;
}

#breadcrumbs li.current-menu-item .sub-menu {
  display: block;
}

#breadcrumbs.sub-menu-opened {
  margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
  #breadcrumbs.sub-menu-opened {
    margin-bottom: 0;
  }
}

@media only screen and (max-width: 767px) {
  .page-template-page-past_performances_archive #breadcrumbs,
  .page-template-page-next_performances_archive #breadcrumbs {
    float: none;
  }
}

#featured-video {
  width: 100%;
  height: 740px;
  margin-bottom: 60px;
  background-size: cover;
  background-position: center;
}

@media only screen and (max-width: 767px) {
  #featured-video {
    height: 320px;
  }
}

#featured-video iframe {
  width: 100%;
  height: 100%;
}

#post-featured-image {
  margin-bottom: 100px;
}

@media only screen and (max-width: 767px) {
  #post-featured-image {
    margin-bottom: 50px;
  }
}

#post-press h3 {
  font-size: 26px;
  padding: 30px 0;
}

#post-press .press-thumbnail {
  display: block;
  width: 48.5%;
  margin-right: 3%;
  margin-bottom: 17px;
  float: left;
}

#post-press .press-thumbnail:nth-of-type(2n) {
  margin-right: 0;
}

/*
Grid page
*/
#grid .year {
  padding-top: 30px;
}

#grid .year .year-title {
  font-size: 34px;
  font-weight: 600;
  padding: 10px 0;
}

#grid .year .month {
  padding-left: 30px;
}

#grid .month {
  margin: 30px 0 60px 0;
}

#grid .month .performances-wrap {
  margin-left: -10px;
  margin-right: -10px;
  overflow: hidden;
}

#grid .month .month-title {
  font-size: 28px;
  font-weight: 600;
  padding: 10px 0;
  border-bottom: 1px solid #131414;
  margin-bottom: 20px;
}

#grid .month .performance .grid-layout {
  position: relative;
  width: calc(25% - 20px);
  font-size: 0;
  color: #131414;
  padding-bottom: 20px;
  margin: 0 10px 30px 10px;
  border-bottom: 1px solid #c9c9c9;
  float: left;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #grid .month .performance .grid-layout {
    width: calc(50% - 20px);
  }
}

@media only screen and (max-width: 767px) {
  #grid .month .performance .grid-layout {
    width: calc(100% - 20px);
  }
}

#grid .month .performance .grid-layout img {
  width: 100%;
  height: auto;
}

#grid .month .performance .grid-layout .performance-info {
  min-height: 210px;
}

#grid .month .performance .grid-layout .date {
  display: inline-block;
  font-size: 22px;
  padding: 17px 0 10px 0;
}

#grid .month .performance .grid-layout .time {
  display: inline-block;
  font-size: 22px;
  padding: 10px 0;
  margin-left: 5px;
}

#grid .month .performance .grid-layout .venue {
  font-size: 19px;
}

#grid .month .performance .grid-layout .city {
  font-size: 19px;
}

#grid .month .performance .grid-layout h3 {
  font-size: 22px;
  font-weight: 500;
}

#grid .month .performance .grid-layout:hover {
  text-decoration: none;
}

#grid .month .performance .grid-layout .performance-mask .performance-link {
  display: none;
  font-size: 19px;
  color: #ffffff;
  text-decoration: underline;
  cursor: pointer;
}

#grid .month .performance .grid-layout .performance-mask .external-link {
  font-size: 19px;
  font-weight: 500;
  color: #3c3c3c;
  text-decoration: underline;
  cursor: pointer;
}

#grid .month .performance .grid-layout .performance-mask .external-link:after {
  position: relative;
  top: 1px;
  font-family: "icons";
  content: "\e803";
  margin-left: 5px;
}

#grid .month .performance .grid-layout .performance-mask span {
  display: block;
  font-size: 19px;
}

#grid .month .performance .grid-layout .performance-mask a {
  display: block;
}

#grid .month .performance .list-layout {
  overflow: hidden;
  border-bottom: 1px solid #c9c9c9;
  padding: 15px 0;
}

#grid .month .performance .list-layout .date,
#grid .month .performance .list-layout .time {
  font-size: 22px;
}

#grid .month .performance .list-layout h3 {
  font-size: 22px;
  font-weight: 500;
}

@media only screen and (max-width: 767px) {
  #grid .month .performance .list-layout h3 {
    margin: 10px 0;
  }
}

#grid .month .performance .list-layout .venue,
#grid .month .performance .list-layout .city {
  font-size: 16px;
}

@media only screen and (max-width: 767px) {
  #grid .month .performance .list-layout .venue,
  #grid .month .performance .list-layout .city {
    display: inline-block;
    margin-bottom: 10px;
  }
}

#grid .month .performance .list-layout .external-link-label {
  display: block;
  text-align: right;
  font-size: 22px;
  font-weight: 600;
}

#grid .month .performance .list-layout .external-link-label:after {
  position: relative;
  top: 1px;
  font-family: "icons";
  content: "\e803";
  margin-left: 5px;
}

@media only screen and (max-width: 767px) {
  #grid .month .performance .list-layout .external-link-label {
    text-align: left;
    font-size: 14px;
  }
}

#grid .month .performance .list-layout .external-link {
  display: block;
  text-align: right;
  font-size: 14px;
}

@media only screen and (max-width: 767px) {
  #grid .month .performance .list-layout .external-link {
    text-align: left;
  }
}

#grid .month .performance .list-layout .read-more-btn {
  border: 1px solid #3c3c3c;
  padding: 8px 16px;
  float: right;
}

@media only screen and (max-width: 767px) {
  #grid .month .performance .list-layout .read-more-btn {
    margin-top: 5px;
    float: none;
  }
}

#grid.grid-layout-active .list-layout {
  display: none;
}

#grid.grid-layout-active .grid-layout {
  display: block;
}

#grid.list-layout-active .list-layout {
  display: block;
}

#grid.list-layout-active .grid-layout {
  display: none;
}

#grid.list-layout-active .month-title {
  margin-bottom: 15px;
}

.calendar-button {
  height: 26px;
  width: 26px;
  outline: none;
  border: none;
  padding: 0;
  background: url("assets/img/calendar-icons-sprite.png");
  margin-left: 15px;
  opacity: 0.45;
}

.calendar-button.active {
  opacity: 1;
}

#grid-button {
  background-position: 0 0;
}

#list-button {
  background-position: 100% 0;
}

#grid-filters {
  padding: 8px 0;
  border-top: 1px solid #131414;
  border-bottom: 1px solid #131414;
}

#grid-filters select {
  float: left;
}

#performance-filters,
#news-filters {
  display: inline-block;
}

@media only screen and (max-width: 767px) {
  #performance-filters,
  #news-filters {
    width: 100%;
    margin-top: 10px;
  }
}

#performance-filters span,
#news-filters span {
  margin: 0 20px 0 15px;
}

#performance-filters .performance-filters-button,
#news-filters .performance-filters-button,
#performance-filters a,
#news-filters a {
  color: #131414;
  font-weight: 500;
  background: transparent;
  padding: 3px 6px;
  border: none;
  outline: none;
  cursor: pointer;
}

#performance-filters .performance-filters-button.active,
#news-filters .performance-filters-button.active,
#performance-filters a.active,
#news-filters a.active {
  color: #ffffff;
  background: #131414;
}

#performance-filters .performance-filters-button.active:hover,
#news-filters .performance-filters-button.active:hover,
#performance-filters a.active:hover,
#news-filters a.active:hover {
  background: #131414;
}

#performance-filters .performance-filters-button:hover,
#news-filters .performance-filters-button:hover,
#performance-filters a:hover,
#news-filters a:hover {
  background: rgba(0, 0, 0, 0.23);
}

#news-filters-wrap {
  padding: 8px 0;
  border-top: 1px solid #131414;
  border-bottom: 1px solid #131414;
  margin-bottom: 30px;
}

#news-filters-wrap a {
  text-transform: uppercase;
}

#news-filters-wrap span {
  text-transform: uppercase;
  margin: 0 10px 0 0;
}

#calendar {
  overflow: hidden;
  margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
  #calendar {
    margin-bottom: 0;
    margin-top: 20px;
  }
}

#calendar h3 {
  font-size: 26px;
  font-weight: 600;
  line-height: 1.1;
  text-align: right;
  margin-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  #calendar h3 {
    text-align: left;
  }
}

#calendar #next-performance {
  width: 130px;
  text-align: center;
  float: left;
  margin-right: 20px;
}

@media only screen and (max-width: 767px) {
  #calendar #next-performance {
    width: 100%;
    margin-bottom: 10px;
    margin-right: 0;
    text-align: left;
  }
}

#calendar #next-performance .date {
  font-size: 52px;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 5px;
}

#calendar #next-performance .city,
#calendar #next-performance .venue,
#calendar #next-performance p {
  display: block;
  font-size: 12px;
}

#calendar #performance-feed {
  width: calc(100% - 150px);
  float: left;
}

@media only screen and (max-width: 767px) {
  #calendar #performance-feed {
    width: 100%;
  }
}

#calendar #performance-feed .performance-row {
  font-size: 15px;
  padding: 7px;
}

#calendar #performance-feed .performance-row:nth-of-type(odd) {
  background: #e4e4e4;
}

#calendar #performance-feed .performance-row .performance-link {
  color: #3c3c3c;
}

#calendar #performance-feed .performance-row .external-link {
  float: right;
}

#calendar #performance-feed .performance-row .external-link:after {
  position: relative;
  top: 1px;
  font-family: "icons";
  content: "\e803";
  margin-left: 5px;
}

#calendar #all-dates {
  width: 100%;
  overflow: hidden;
  border-top: 1px solid #3c3c3c;
  margin-top: 10px;
  float: left;
}

#calendar #all-dates a {
  position: relative;
  top: -1px;
  font-size: 12px;
  color: #3c3c3c;
  text-transform: uppercase;
  padding: 8px 12px;
  float: right;
  border: 1px solid #3c3c3c;
}

#primary-navigation {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  display: none;
  z-index: 999;
  background-color: rgba(0, 0, 0, 0.9);
  text-align: center;
}

#primary-navigation #close-navigation {
  position: absolute;
  left: 50%;
  top: 27px;
  width: 50px;
  height: 50px;
  background: #ffffff;
  border-radius: 100%;
  border: none;
  outline: none;
  margin-left: -27px;
  line-height: 1;
  font-size: 39px;
  box-sizing: border-box;
}

#primary-navigation #close-navigation:after {
  content: "\002715";
  position: absolute;
  top: 5px;
  left: 11px;
}

@media only screen and (max-width: 767px) {
  #primary-navigation #close-navigation {
    top: 10px;
    right: 15px;
    left: auto;
    font-weight: 600;
    background: transparent;
    color: rgba(255, 255, 255, 0.2);
  }
}

#primary-navigation #menu-main-menu-sv,
#primary-navigation #menu-main-menu-en,
#primary-navigation #menu-mobile-menu-sv,
#primary-navigation #menu-mobile-menu-en {
  margin-top: 150px;
}

@media only screen and (max-width: 767px) {
  #primary-navigation #menu-main-menu-sv,
  #primary-navigation #menu-main-menu-en,
  #primary-navigation #menu-mobile-menu-sv,
  #primary-navigation #menu-mobile-menu-en {
    margin-top: 60px;
  }

  #primary-navigation #menu-main-menu-sv li a,
  #primary-navigation #menu-main-menu-en li a,
  #primary-navigation #menu-mobile-menu-sv li a,
  #primary-navigation #menu-mobile-menu-en li a {
    font-size: 38px !important;
  }
}

#primary-navigation #menu-main-menu-sv li,
#primary-navigation #menu-main-menu-en li,
#primary-navigation #menu-mobile-menu-sv li,
#primary-navigation #menu-mobile-menu-en li {
  margin-bottom: 10px;
}

#primary-navigation #menu-main-menu-sv li a,
#primary-navigation #menu-main-menu-en li a,
#primary-navigation #menu-mobile-menu-sv li a,
#primary-navigation #menu-mobile-menu-en li a {
  font-size: 48px;
  font-weight: 600;
  text-decoration: underline;
  color: #ffffff;
}

#primary-navigation #menu-main-menu-sv .sub-menu,
#primary-navigation #menu-main-menu-en .sub-menu,
#primary-navigation #menu-mobile-menu-sv .sub-menu,
#primary-navigation #menu-mobile-menu-en .sub-menu {
  display: none;
  padding-top: 10px;
}

#primary-navigation #menu-main-menu-sv .sub-menu li,
#primary-navigation #menu-main-menu-en .sub-menu li,
#primary-navigation #menu-mobile-menu-sv .sub-menu li,
#primary-navigation #menu-mobile-menu-en .sub-menu li {
  padding: 5px 0;
}

#primary-navigation #menu-main-menu-sv .sub-menu li a,
#primary-navigation #menu-main-menu-en .sub-menu li a,
#primary-navigation #menu-mobile-menu-sv .sub-menu li a,
#primary-navigation #menu-mobile-menu-en .sub-menu li a {
  font-size: 24px !important;
  font-weight: 500;
  color: rgba(255, 255, 255, 0.45);
  text-decoration: none;
}

#primary-navigation #menu-main-menu-sv .sub-menu .sub-menu,
#primary-navigation #menu-main-menu-en .sub-menu .sub-menu,
#primary-navigation #menu-mobile-menu-sv .sub-menu .sub-menu,
#primary-navigation #menu-mobile-menu-en .sub-menu .sub-menu {
  display: none !important;
}

@media only screen and (max-width: 767px) {
  #primary-navigation #menu-main-menu-sv .current-menu-parent .sub-menu,
  #primary-navigation #menu-main-menu-en .current-menu-parent .sub-menu,
  #primary-navigation #menu-mobile-menu-sv .current-menu-parent .sub-menu,
  #primary-navigation #menu-mobile-menu-en .current-menu-parent .sub-menu,
  #primary-navigation #menu-main-menu-sv .current_page_item .sub-menu,
  #primary-navigation #menu-main-menu-en .current_page_item .sub-menu,
  #primary-navigation #menu-mobile-menu-sv .current_page_item .sub-menu,
  #primary-navigation #menu-mobile-menu-en .current_page_item .sub-menu,
  #primary-navigation #menu-main-menu-sv .current-menu-ancestor .sub-menu,
  #primary-navigation #menu-main-menu-en .current-menu-ancestor .sub-menu,
  #primary-navigation #menu-mobile-menu-sv .current-menu-ancestor .sub-menu,
  #primary-navigation #menu-mobile-menu-en .current-menu-ancestor .sub-menu {
    display: block;
  }
}

#primary-navigation #mobile-menu {
  display: none;
  margin-top: 10px;
}

@media only screen and (max-width: 767px) {
  #primary-navigation #mobile-menu {
    display: block;
  }
}

#primary-navigation #mobile-menu ul li {
  position: relative;
  text-align: left;
  padding: 5px 0 5px 15px;
  border-bottom: 2px solid rgba(255, 255, 255, 0.2);
}

#primary-navigation #mobile-menu ul li.current-menu-parent ul.sub-menu,
#primary-navigation #mobile-menu ul li.current-menu-item ul.sub-menu {
  height: auto;
}

#primary-navigation #mobile-menu ul li.menu-item-has-children:after {
  content: "";
  position: absolute;
  right: 15px;
  top: 5px;
  width: 15px;
  height: 22px;
  background-image: url("assets/img/carousel-left.png");
  background-size: contain;
  background-repeat: no-repeat;
  transform: rotate(270deg);
  opacity: 0.6;
}

#primary-navigation
  #mobile-menu
  ul
  li.menu-item-has-children.current-menu-item:after,
#primary-navigation
  #mobile-menu
  ul
  li.menu-item-has-children.current-menu-parent:after {
  transform: rotate(90deg);
  opacity: 1;
}

#primary-navigation #mobile-menu ul li a {
  font-size: 20px;
  font-weight: 500;
  color: #ffffff;
}

#primary-navigation #mobile-menu ul.sub-menu {
  height: 0;
  overflow: hidden;
}

#primary-navigation #mobile-menu ul.sub-menu li {
  border: none;
  padding-left: 0;
}

#primary-navigation #mobile-menu ul.sub-menu li a {
  font-size: 18px;
  font-weight: 400;
}

#primary-navigation #mobile-menu-social {
  display: none;
  padding-top: 25px;
  border-top: 2px solid rgba(255, 255, 255, 0.45);
}

@media only screen and (max-width: 767px) {
  #primary-navigation #mobile-menu-social {
    display: inline-block;
  }
}

#primary-navigation #mobile-menu-social li {
  display: inline-block;
  margin: 0 20px;
}

#primary-navigation #mobile-menu-social li:first-of-type {
  margin-left: 0;
}

#primary-navigation #mobile-menu-social li:last-of-type {
  margin-right: 0;
}

#primary-navigation #mobile-menu-social li a {
  display: block;
  width: 50px;
  height: 40px;
  background: url("assets/img/social-icons-sprite-white.png");
  background-repeat: no-repeat;
}

#primary-navigation #mobile-menu-social li a.icon-youtube {
  background-position: -190px 0;
}

#primary-navigation #mobile-menu-social li a.icon-facebook {
  background-position: -98px 0;
}

#primary-navigation #mobile-menu-social li a.icon-instagram {
  background-position: 0 0;
}

#primary-navigation #mobile-lang-switcher {
  display: none;
  position: absolute;
  top: 20px;
  left: 30px;
  color: rgba(255, 255, 255, 0.45);
}

@media only screen and (max-width: 767px) {
  #primary-navigation #mobile-lang-switcher {
    display: block;
  }
}

#primary-navigation #mobile-lang-switcher a {
  color: rgba(255, 255, 255, 0.45);
  font-size: 22px;
  font-weight: 500;
}

#primary-navigation #mobile-small-menu {
  display: none;
  color: rgba(255, 255, 255, 0.45);
  font-size: 30px;
  padding: 25px 0;
}

@media only screen and (max-width: 767px) {
  #primary-navigation #mobile-small-menu {
    display: block;
  }
}

#primary-navigation #mobile-small-menu a {
  font-size: 30px;
  color: rgba(255, 255, 255, 0.45);
}

#mobile-breadcrumbs {
  display: none;
}

#mobile-breadcrumbs .col-xs-12 {
  min-height: 0;
}

@media only screen and (max-width: 767px) {
  #mobile-breadcrumbs {
    display: block;
  }
}

#mobile-breadcrumbs ul {
  padding: 20px 0 0 0;
}

#mobile-breadcrumbs ul li {
  display: inline-block;
  padding: 6px 12px;
  border: 1px solid #3c3c3c;
  border-radius: 2px;
  margin-right: 7px;
}

#portraits-grid .portrait .portrait-inner {
  display: block;
  margin-bottom: 50px;
}

#portraits-grid .portrait .portrait-inner h3 {
  margin-top: 10px;
  font-size: 18px;
  font-weight: 500;
  color: #3c3c3c;
  text-align: left;
}

#portraits-grid .portrait .portrait-inner img {
  display: block;
}

#personal-portrait #portrait-grid .portrait-grid-video {
  height: 350px;
}

#personal-portrait #portrait-grid .portrait-grid-video iframe {
  width: 100%;
  height: 100%;
}

#personal-portrait #portrait-grid .portrait-grid-video .video-wrap {
  height: 100%;
  padding: 15px;
}

#personal-portrait
  #portrait-grid
  .portrait-grid-item
  .portrait-images-thumbnail {
  display: block;
}

#personal-portrait
  #portrait-grid
  .portrait-grid-item
  .portrait-images-thumbnail
  img {
  width: 100%;
}

#personal-portrait
  #portrait-grid
  .portrait-grid-item
  .portrait-images-thumbnail-first
  img {
  width: auto;
}

#personal-portrait #portrait-grid .portrait-grid-item.portrait-grid-content {
  padding: 0 0 25px 0;
}

#personal-portrait #portrait-grid .portrait-grid-item.portrait-grid-content p {
  margin-bottom: 15px;
}

@media only screen and (max-width: 767px) {
  #personal-portrait #portrait-grid .portrait-grid-item.portrait-grid-content {
    padding: 0 15px 25px 15px;
  }
}

#personal-portrait #portrait-info {
  border-bottom: 1px solid #3c3c3c;
  margin-bottom: 30px;
}

#personal-portrait #portrait-info h1 {
  font-size: 24px;
  font-weight: 500;
  padding-bottom: 15px;
  border-bottom: 1px solid #3c3c3c;
  margin-bottom: 15px;
}

#personal-portrait #portrait-info p {
  font-size: 16px;
  margin: 10px 0;
}

#personal-portrait #portrait-info a {
  font-size: 16px;
  color: #3c3c3c;
}

.random-padding-1 {
  padding: 10px;
}

.random-padding-2 {
  padding: 20px;
}

.random-padding-3 {
  padding: 30px;
}

#performance-archive .performance-archive-item {
  margin-bottom: 50px;
}

#performance-archive .performance-archive-item .archive-thumbnail {
  display: block;
  margin-bottom: 20px;
}

#performance-archive .performance-archive-item .info {
  width: 62%;
  float: left;
}

#performance-archive .performance-archive-item .info div {
  font-size: 17px;
  line-height: 1.5;
}

#performance-archive .performance-archive-item .info div h3 {
  display: inline;
  font-weight: 500;
}

#performance-archive .performance-archive-item .right {
  width: 38%;
  text-align: center;
  float: left;
}

#performance-archive .performance-archive-item .right p {
  font-size: 11px;
  text-transform: uppercase;
  line-height: 1;
}

#performance-archive .performance-archive-item .right h4 {
  font-size: 52px;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 5px;
}

#performance-archive .list-layout-active .performance-archive-item {
  width: 100%;
  padding: 30px 20px;
  border-bottom: 1px solid #3c3c3c;
  margin-bottom: 0px;
}

#performance-archive
  .list-layout-active
  .performance-archive-item:last-of-type {
  border-bottom: none;
}

#performance-archive
  .list-layout-active
  .performance-archive-item
  .archive-thumbnail {
  max-width: 70px;
  margin-bottom: 0;
  margin-right: 20px;
  float: left;
}

#performance-archive .list-layout-active .performance-archive-item .right {
  width: auto;
  float: right;
}

#performance-archive .list-layout-active .performance-archive-item h4 {
  font-size: 38px;
}

#performance-archive .list-layout-active .performance-archive-item p {
  font-size: 10px;
}

@media only screen and (max-width: 767px) {
  #performance-archive .list-layout-active .performance-archive-item .right {
    width: 102px;
  }

  #performance-archive .list-layout-active .performance-archive-item .info {
    width: calc(100% - 102px);
  }
}

@media only screen and (min-width: 1401px) {
  #performance-archive .grid-layout-active .performance-archive-item {
    min-height: 770px;
  }
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  #performance-archive .grid-layout-active .performance-archive-item {
    min-height: 690px;
  }
}

@media only screen and (min-width: 960px) and (max-width: 1199px) {
  #performance-archive .grid-layout-active .performance-archive-item {
    min-height: 660px;
  }
}

@media only screen and (max-width: 767px) {
  #performance-archive .grid-layout-active .performance-archive-item .info {
    width: 100%;
    margin-bottom: 10px;
    text-align: left;
  }

  #performance-archive .grid-layout-active .performance-archive-item .right {
    width: 100%;
    text-align: left;
  }
}

.custom-select {
  position: relative;
  display: inline-block;
  width: 240px;
  font-size: 20px;
  color: #ffffff;
  background-color: #252525;
  background-image: url("assets/img/red-arrow-down.png");
  background-repeat: no-repeat;
  background-position: 91% 17px;
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  .custom-select {
    width: 100%;
  }
}

.custom-select .select-active {
  padding: 11px 15px;
}

.custom-select .select-dropdown {
  position: absolute;
  display: none;
  width: 100%;
  background: #252525;
  z-index: 99;
}

.custom-select .select-dropdown button {
  width: 100%;
  font-size: 20px;
  font-weight: 500;
  text-align: left;
  color: #ffffff;
  background: none;
  outline: none;
  border: none;
  padding: 11px 15px;
}

.custom-select .select-dropdown button.disabled {
  color: #a7a7a7;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #performance-filters-desktop {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  #performance-filters-desktop {
    display: none;
  }
}

#performance-filters-mobile {
  display: none;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #performance-filters-mobile {
    display: inline-block;
  }
}

@media only screen and (max-width: 767px) {
  #performance-filters-mobile {
    display: inline-block;
    width: 100%;
  }
}

#searchpage .post-title span {
  position: relative;
  height: 69px;
  width: calc(100% - 240px);
  display: inline-block;
  margin-left: 50px;
  padding-left: 75px;
  font-size: 31px;
  line-height: 70px;
  color: #ffffff;
  background-color: #3c3c3c;
  vertical-align: text-top;
  border-radius: 38px;
}

#searchpage .post-title span:before {
  content: "";
  position: absolute;
  left: -8px;
  width: 71px;
  height: 71px;
  background-image: url("assets/img/search-icon.png");
  background-repeat: no-repeat;
}

#searchpage #search-big {
  position: relative;
  font-size: 52px;
  display: inline-block;
  width: calc(100% - 240px);
}

@media only screen and (max-width: 767px) {
  #searchpage #search-big {
    width: 100%;
    display: block;
  }
}

#searchpage #search-big i {
  position: absolute;
  left: 43px;
  width: 71px;
  height: 71px;
  background-image: url("assets/img/search-icon.png");
  background-repeat: no-repeat;
  z-index: 99;
}

@media only screen and (max-width: 767px) {
  #searchpage #search-big i {
    left: 0;
  }
}

#searchpage #search-big input[type="text"] {
  position: relative;
  height: 69px;
  width: 100%;
  display: inline-block;
  margin-left: 50px;
  padding-left: 75px;
  font-size: 31px;
  line-height: 70px;
  color: #ffffff;
  background-color: #3c3c3c;
  vertical-align: text-top;
  border-radius: 38px;
  border: none;
}

#searchpage #search-big input[type="text"]:focus {
  outline: none;
}

@media only screen and (max-width: 767px) {
  #searchpage #search-big input[type="text"] {
    margin-left: 0;
  }
}

#searchpage #search-big input[type="submit"] {
  display: none;
}

#searchpage #search-big input[type="text"]::-webkit-input-placeholder {
  /* Chrome/Opera/Safari */
  color: #ffffff;
}

#searchpage #search-big input[type="text"]::-moz-placeholder {
  /* Firefox 19+ */
  color: #ffffff;
}

#searchpage #search-big input[type="text"]:-ms-input-placeholder {
  /* IE 10+ */
  color: #ffffff;
}

#searchpage #search-big input[type="text"]:-moz-placeholder {
  /* Firefox 18- */
  color: #ffffff;
}

#searchpage .search-result {
  font-size: 19px;
  padding: 10px 0;
  border-bottom: 1px solid #3c3c3c;
  overflow: hidden;
}

#searchpage .search-result:first-of-type {
  border-top: 1px solid #3c3c3c;
}

#searchpage .search-result h4 {
  margin-bottom: 4px;
}

#searchpage .search-result p {
  margin-bottom: 10px;
}

#searchpage .search-result .search-thumbnail {
  float: right;
}

#searchpage .search-result img {
  width: 194px;
  height: auto;
  float: right;
}

#search-bar {
  position: relative;
}

#search-bar i {
  position: absolute;
  display: block;
  width: 50px;
  height: 50px;
  z-index: 9;
  background-image: url("assets/img/menu-icons-sprite.png");
  background-position: 50px 0;
}

#search-bar .form {
  position: absolute;
  top: 0px;
  left: 0px;
  padding-left: 50px;
  width: 50px;
  height: 50px;
  background: #3c3c3c;
  border-radius: 28px;
  z-index: 1;
  text-align: left;
}

@media only screen and (max-width: 767px) {
  #search-bar .form {
    max-width: 220px;
  }
}

#search-bar .form .wrap {
  display: none;
}

#search-bar .form .wrap input[type="text"] {
  background: transparent;
  border: none;
  height: 40px;
  line-height: 40px;
  margin-top: 5px;
  color: #ffffff;
  margin-left: 3px;
}

#search-bar .form .wrap input[type="text"]:focus {
  outline: none;
}

#search-bar .form #searchsubmit {
  display: none;
}

#search-bar #search-close {
  position: absolute;
  right: 17px;
  top: 12px;
  color: #ffffff;
  font-size: 18px;
  cursor: pointer;
  z-index: 0;
}

/*
Forms
*/
input[type="email"] {
  width: 60%;
  font-size: 21px;
  font-weight: 500;
  color: #3c3c3c;
  padding: 8px;
  border: none;
  outline: none;
  float: left;
  margin-right: 10px;
}

input[type="email"]:focus {
  outline: none;
}

input[type="submit"] {
  font-size: 21px;
  font-weight: 500;
  text-transform: none;
  color: #ffffff;
  background: #de7a94;
  padding: 8px 10px;
  border: none;
  float: right;
  width: calc(40% - 10px);
}

#newsletter-wrap input[type="email"] {
  width: 60%;
  font-size: 18px;
  font-weight: 400;
  color: #ffffff;
  background: #3c3c3c;
  padding: 9px;
  border: none;
  outline: none;
  float: left;
  margin-right: 10px;
}

#newsletter-wrap input[type="email"]:focus {
  outline: none;
}

@media only screen and (max-width: 767px) {
  #newsletter-wrap input[type="email"] {
    width: 100%;
    margin-bottom: 7px;
  }
}

#newsletter-wrap input[type="submit"] {
  font-size: 18px;
  font-weight: 500;
  text-transform: none;
  color: #ffffff;
  background: #de7a94;
  border-radius: 0;
  padding: 9px 10px;
  border: none;
  float: right;
  width: calc(40% - 10px);
}

@media only screen and (max-width: 767px) {
  #newsletter-wrap input[type="submit"] {
    width: 100%;
  }
}

#newsletter-wrap .mc4wp-response * {
  color: #ffffff;
}

#newsletter-wrap input[type="checkbox"] {
  position: absolute;
  left: -9999px;
}

#newsletter-wrap .wpcf7-list-item {
  display: block;
  max-height: 0;
  padding: 0 0 0 10px;
  overflow: hidden;
  transition: all 1s;
}

#newsletter-wrap .wpcf7-list-item.opened {
  padding-top: 20px;
  max-height: 200px;
}

#newsletter-wrap .wpcf7-list-item label {
  color: #bababa;
}

#newsletter-wrap input[type="checkbox"] + span {
  position: relative;
  padding-left: 33px;
  cursor: pointer;
  display: block;
  max-height: 0;
  transition: all 1s;
}

#newsletter-wrap input[type="checkbox"] + span.opened {
  max-height: 200px;
}

#newsletter-wrap input[type="checkbox"]:not(:checked) + span:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 20px;
  height: 20px;
  display: block;
  border-radius: 2px;
  background-clip: padding-box;
  background: #2b2b2b;
  border: 1px solid #666666;
  border-radius: 1px;
}

#newsletter-wrap input[type="checkbox"] + span:after {
  opacity: 0;
  font-weight: 400;
  font-style: normal;
  content: "";
  background-image: url("assets/img/checkbox-white.png");
  background-repeat: no-repeat;
  background-position: center;
  background-color: #2b2b2b;
  width: 20px;
  height: 20px;
  font-size: 11px;
  position: absolute;
  top: 0;
  left: 0;
  display: block;
}

#newsletter-wrap input[type="checkbox"]:not(:checked) + span:after {
  opacity: 0;
}

#newsletter-wrap input[type="checkbox"]:checked + span:after {
  opacity: 1;
}

#newsletter-form input[type="email"] {
  width: 66%;
  display: inline-block;
}

@media only screen and (max-width: 767px) {
  #newsletter-form input[type="email"] {
    width: 100%;
    margin: 5px 0;
  }
}

#newsletter-form input[type="submit"] {
  width: 33%;
  display: inline-block;
  text-transform: none;
}

@media only screen and (max-width: 767px) {
  #newsletter-form input[type="submit"] {
    width: 100%;
    margin: 5px 0;
  }
}

#newsletter-tabs input[type="submit"] {
  text-transform: none;
  font-size: 22px;
}

/*
Accordions
*/
.accordion-wrap {
  margin: 30px 0;
}

h2.accordion-title {
  font-size: 17px !important;
  text-transform: uppercase;
  margin-bottom: 20px !important;
}

.accordion {
  border-bottom: 1px solid #3c3c3c;
}

.accordion .ui-accordion-header,
.accordion .ui-accordion-content {
  font-size: 27px;
  border-top: 1px solid #3c3c3c;
  margin: 0 !important;
  padding: 5px 0;
  cursor: pointer;
}

.accordion .ui-accordion-header:focus,
.accordion .ui-accordion-content:focus {
  outline: none;
}
.accordion .ui-accordion-content {
  display: block !important;
}
.accordion .ui-accordion-content {
  padding: 10px 0;
}

#mute-video {
  position: absolute;
  top: 110px;
  right: 120px;
  width: 60px;
  height: 60px;
  z-index: 9;
  background-color: transparent;
  background-image: url("assets/img/volume-on.png");
  background-size: contain;
  border: none;
  outline: none;
}

@media only screen and (max-width: 767px) {
  #mute-video {
    display: none;
  }
}

#mute-video.volume-on {
  background-image: url("assets/img/volume-off.png");
}

.press-contact {
  text-align: right;
  margin: 20px 0;
}

.press-contact .press-contact-section-title {
  font-size: 23px;
  padding-bottom: 5px;
  border-bottom: 1px solid #3c3c3c;
  margin-bottom: 10px;
}

.press-contact .press-contact-title {
  font-size: 17px;
}

.press-contact .press-contact-email {
  display: block;
  color: #3c3c3c;
  font-size: 17px;
  text-decoration: none;
}

.press-contact span {
  font-size: 23px;
}

.press-contact .share-area {
  padding-top: 10px;
  margin-top: 10px;
  border-top: 1px solid #3c3c3c;
}

.press-contact .addtoany_shortcode {
  display: inline-block;
  vertical-align: top;
}

@media only screen and (max-width: 767px) {
  .press-contact-desktop {
    display: none;
  }
}

.press-contact-mobile {
  display: none;
}

@media only screen and (max-width: 767px) {
  .press-contact-mobile {
    display: block;
    margin-top: 50px;
  }
}

#press-contact-thumbnail {
  text-align: right;
  margin-top: 40px;
}

.article-date {
  font-size: 15px;
}

#tour-module {
  margin-top: 50px;
}

#tour-module h3 {
  font-size: 26px;
  font-weight: 600;
  line-height: 1.1;
  margin-bottom: 15px;
}

#tour-module .tour-row {
  font-size: 15px;
  padding: 7px;
}

#tour-module .tour-row:nth-of-type(odd) {
  background: #e4e4e4;
}

#tour-module .tour-row .performance-link {
  color: #3c3c3c;
}

#tour-module .tour-row .external-link {
  float: right;
}

#tour-module .tour-row .performance-link .date {
  display: inline-block;
  min-width: 150px;
}

.tag-archive-post-inner {
  border-bottom: 1px solid #3c3c3c;
  margin-bottom: 15px;
  min-height: 202px;
}

.tag-archive-post-inner h4 {
  font-size: 24px;
  margin-bottom: 10px;
}

.tag-archive-post-inner p {
  margin-bottom: 10px;
}

.tag-archive-post-inner img {
  max-width: 100%;
  height: auto;
  margin-bottom: 10px;
}

#news-grid {
  margin: 0 15px;
}

#newsletter-wrap {
  position: relative;
}

@media only screen and (max-width: 767px) {
  #newsletter-wrap {
    margin: 50px 0 30px 0;
  }
}

#newsletter-wrap h4 {
  color: #3c3c3c;
  font-size: 26px;
  font-weight: 500;
  text-align: left;
  margin-bottom: 12px;
  cursor: pointer;
}

#newsletter-wrap.opened #newsletter-close {
  display: block;
}

#newsletter-wrap.opened #newsletter-switch {
  display: block;
}

#newsletter-wrap .inner-wrap {
  background: #3c3c3c;
  padding: 8px;
  overflow: hidden;
}

@media only screen and (max-width: 767px) {
  #newsletter-wrap .inner-wrap {
    padding: 0;
    background: transparent;
  }
}

#newsletter-switch {
  display: none;
  position: absolute;
  bottom: 20px;
  left: 15px;
  padding: 0;
}

#newsletter-switch li {
  position: relative;
  float: left;
  margin-left: 32px;
  margin-right: 10px;
}

#newsletter-switch li:before {
  content: "";
  position: absolute;
  left: -32px;
  top: -3px;
  width: 25px;
  height: 25px;
  background: #ffffff;
  border-radius: 100%;
  cursor: pointer;
}

#newsletter-switch li:after {
  content: "";
  display: none;
  position: absolute;
  left: -28px;
  top: 1px;
  width: 17px;
  height: 17px;
  background: #3c3c3c;
  border-radius: 100%;
}

#newsletter-switch li.active:after {
  display: block;
}

#newsletter-tabs > div {
  display: none;
}

#newsletter-tabs > div.active {
  display: block;
}

#newsletter-close {
  display: none;
  position: absolute;
  top: 5px;
  right: 15px;
  font-size: 20px;
  color: #ffffff;
  background: transparent;
  outline: none;
  border: none;
  padding: 5px;
  text-transform: lowercase;
}

.tag-title {
  text-transform: capitalize;
}

#cookie-bar {
  background: #f17692;
  padding: 12px 0;
  z-index: 999;
}

#cookie-bar p {
  font-size: 18px;
  color: #ffffff;
}

#cookie-bar .cb-enable {
  background: transparent;
  border: 1px solid #ffffff;
  padding: 5px 12px;
  margin-left: 50px;
}

#cookie-bar .cb-enable:hover {
  background: transparent;
}

/* Flexslider overrides */
#performance-slider {
  overflow: hidden;
  height: 860px;
  margin: 0 0 60px 0 !important;
  background-size: cover;
  background-position: center;
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  #performance-slider {
    height: 707px !important;
  }
}

@media only screen and (min-width: 960px) and (max-width: 1199px) {
  #performance-slider {
    height: 627px !important;
  }
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #performance-slider {
    height: 480px !important;
  }
}

@media only screen and (max-width: 959px) {
  #performance-slider {
    height: 480px;
  }
}

@media only screen and (max-width: 767px) {
  #performance-slider {
    height: auto;
  }
}

#performance-slider iframe {
  width: 100%;
  height: 100%;
}

.flexslider {
  background: transparent;
  border: none !important;
  margin: 0 !important;
}

.flexslider:hover .flex-direction-nav a.flex-prev {
  left: 20px;
}

.flexslider:hover .flex-direction-nav a.flex-next {
  right: 20px;
}

.flexslider .flex-control-nav {
  bottom: 20px;
  z-index: 99;
}

.flexslider .flex-control-nav li a {
  width: 15px;
  height: 15px;
  background: rgba(255, 255, 255, 0.5);
}

.flexslider .flex-control-nav li a.flex-active {
  background: #ffffff;
}

.flexslider .flex-control-nav li a:hover {
  background: rgba(255, 255, 255, 0.75);
}

.flexslider .flex-direction-nav a {
  top: auto;
  bottom: 20px;
  width: 16px;
  height: 26px;
  background-repeat: no-repeat;
  z-index: 99;
  opacity: 1;
  text-indent: 9999px;
}

.flexslider .flex-direction-nav a:before {
  display: none;
}

.flexslider .flex-direction-nav a.flex-prev {
  left: 20px;
  background-image: url("assets/img/flex-left.png");
}

.flexslider .flex-direction-nav a.flex-next {
  right: 20px;
  background-image: url("assets/img/flex-right.png");
}

.press-carousel-title {
  font-size: 28px;
  font-weight: 600;
  padding: 10px 0;
  border-bottom: 1px solid #131414;
  margin-bottom: 20px;
}

.press-carousel {
  margin-bottom: 80px;
}

.press-carousel figure {
  position: relative;
  min-height: 320px;
}

.press-carousel figure .image-link {
  display: block;
  height: 190px;
  background: #000000;
}

.press-carousel figure .image-link img {
  display: block;
  height: 100%;
  width: auto;
  margin: 0 auto;
}

.press-carousel figure h3 {
  font-size: 22px;
  font-weight: 500;
  padding: 15px 0;
}

.press-carousel figure .bottom {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  font-size: 16px;
  ont-weight: 500;
  padding-bottom: 4px;
  border-bottom: 2px solid #bbbbbb;
}

.press-carousel figure .bottom a {
  position: relative;
  color: #bbbbbb;
  padding: 4px 0;
  padding-right: 33px;
  float: right;
}

.press-carousel figure .bottom a:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  width: 25px;
  height: 25px;
  background-image: url("assets/img/icon-download.png");
  background-repeat: no-repeat;
}

.press-carousel figure .bottom span {
  padding: 5px 0;
  color: #bbbbbb;
  float: left;
}

.press-carousel .owl-nav .owl-prev {
  background-image: url("assets/img/carousel-left.png");
  background-position: center;
}

.press-carousel .owl-nav .owl-next {
  background-image: url("assets/img/carousel-right.png");
  background-position: center;
}

.page-template-page-releases .mfp-title,
.single-press_media .mfp-title {
  font-size: 16px;
  line-height: 32px;
  padding-right: 0;
}

.page-template-page-releases .mfp-title div,
.single-press_media .mfp-title div {
  float: right;
}

.page-template-page-releases .mfp-title .image-source-link,
.single-press_media .mfp-title .image-source-link {
  font-size: 12px;
  color: #ffffff;
  text-transform: uppercase;
  padding: 0 17px;
  border: 1px solid #ffffff;
  margin-left: 10px;
  float: right;
}

.page-template-page-releases .mfp-title span,
.single-press_media .mfp-title span {
  float: right;
}

.press-item {
  min-height: 365px;
  padding-bottom: 40px;
  border-bottom: 2px solid #d9d9d9;
  margin-bottom: 20px;
}

.press-item .date {
  font-size: 18px;
  padding: 10px 0;
}

.press-item h3 {
  font-size: 20px;
  font-weight: 500;
}

@media only screen and (max-width: 767px) {
  .press-item {
    text-align: center;
  }
}

#press-media .press-item {
  min-height: 285px;
}

#press-media .preamble {
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 2px solid #3c3c3c;
}

#press-media .preamble p {
  max-width: 50%;
  font-size: 18px;
  font-weight: 500;
}

@media only screen and (min-width: 768px) and (max-width: 991px) {
  #press-media .preamble p {
    max-width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  #press-media .preamble p {
    max-width: 100%;
  }
}

.single-press_media .preamble {
  font-size: 28px;
  font-weight: 500;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 2px solid #3c3c3c;
}

/* Publications page grid mods */
.page-template-page-publications #grid .month {
  margin: 0;
}

.page-template-page-publications #grid .year {
  margin: 30px 0 60px 0;
}

.press-media-gallery-thumbnail {
  display: block;
  overflow: hidden;
  margin-bottom: 30px;
}

.press-media-gallery-thumbnail img {
  display: block;
}

@media only screen and (max-width: 767px) {
  .show-desktop {
    display: none;
  }
}

.show-mobile {
  display: none;
}

@media only screen and (max-width: 767px) {
  .show-mobile {
    display: block;
  }
}

#archive {
  min-height: 1000px;
}

#archive #filters {
  margin: 20px 0;
}

#archive #filters .filters {
  background-color: #e9e9e9;
  padding: 10px 0;
  margin-bottom: 3px;
}

#archive #archive-dropdown-menus {
  float: left;
  padding: 4px 0;
}

@media only screen and (max-width: 767px) {
  #archive #archive-dropdown-menus {
    padding: 15px 0 0 0;
    clear: left;
  }
}

#archive #sorters .table-row-border {
  position: relative;
}

#archive #sorters .table-row-border:after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background: #3c3c3c;
}

#archive .main-loader {
  height: 200px;
  width: 200px;
  margin: 50px auto 50px auto;
  text-align: center;
}

#archive .event {
  padding: 4px 0 0 0;
}

@media only screen and (min-width: 1401px) {
  #archive .event.row-left-padding {
    padding-left: 80px;
  }
}

@media only screen and (max-width: 1400px) and (min-width: 1200px) {
  #archive .event.row-left-padding {
    padding-left: 80px;
  }
}

#archive .event img {
  width: 40px;
  height: 40px;
  margin-right: 10px;
  float: left;
}

#archive .event .table-row-border {
  position: relative;
}

#archive .event .table-row-border:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #c9c9c9;
  margin-top: 4px;
}

#archive .event .title,
#archive .event .date,
#archive .event .choreographer,
#archive .event .city {
  color: #7b7b7b;
  line-height: 40px;
  font-size: 18px;
}

#archive .event .title .year,
#archive .event .date .year,
#archive .event .choreographer .year,
#archive .event .city .year {
  display: inline-block;
  font-weight: 500;
  color: #3c3c3c;
}

@media only screen and (max-width: 767px) {
  #archive .event .date,
  #archive .event .city {
    font-size: 14px;
    line-height: 26px;
  }
}

#archive .event .title {
  color: #3c3c3c;
  font-size: 22px;
  font-weight: 600;
}

#archive .event .col-choreographer-wrap {
  display: inline-block;
}

#archive .event .col-title-wrap {
  display: inline-block;
  padding-top: 10px;
}

#archive .work {
  padding: 4px 0 0 0;
}

#archive .work img {
  width: 40px;
  height: 40px;
  margin-right: 10px;
  float: left;
}

#archive .work .table-row-border {
  position: relative;
}

#archive .work .table-row-border:after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: #c9c9c9;
  margin-top: 4px;
}

#archive .work.open .table-row-border {
  display: none;
}

#archive .work .title,
#archive .work .date,
#archive .work .choreographer,
#archive .work .city {
  color: #7b7b7b;
  line-height: 40px;
  font-size: 18px;
}

#archive .work .title {
  color: #3c3c3c;
  font-size: 22px;
  font-weight: 600;
}

#archive .work .count {
  font-size: 18px;
  color: #fe2c2f;
  margin-right: 20px;
}

#archive .work .count.open {
  color: #1e1e1e;
}

#archive .work .work-dropdown-button {
  width: 30px;
  height: 30px;
  text-align: center;
  background-color: #fe2c2f;
  color: #ffffff;
  border: none;
  outline: none;
  border-radius: 100%;
  transition: all 0.3s;
}

#archive .work .work-dropdown-button:hover {
  background-color: #de2427;
}

#archive .work .work-dropdown-button.open {
  background: #1e1e1e;
}

#archive .work .work-dropdown-button span {
  line-height: 1;
  font-size: 26px;
  position: relative;
  top: -1px;
}

#archive .work .work-dropdown {
  position: relative;
  background: #e9e9e9;
  padding: 20px 50px;
  margin-top: 7px;
}

#archive .work .work-dropdown:before {
  content: "";
  position: absolute;
  top: -11px;
  left: 50px;
  width: 23px;
  height: 11px;
  background-image: url("assets/img/modal-arrow-up.png");
  background-repeat: no-repeat;
}

#archive .work .work-dropdown p {
  font-size: 18px;
  color: #606060;
  line-height: 40px;
}

#archive .work .work-dropdown .work-date {
  overflow: hidden;
  width: 100%;
}

#archive .work .work-dropdown .work-date .year {
  display: inline-block;
  font-weight: 500;
  color: #3c3c3c;
}

#archive .work .work-dropdown .work-date .table-row-border {
  display: block !important;
}

@media only screen and (max-width: 767px) {
  #archive .work {
    margin-bottom: 20px;
  }

  #archive .work .table-col-align-right {
    text-align: left;
  }

  #archive .work .work-dropdown {
    padding: 20px 25px;
  }

  #archive .work .work-date {
    margin: 15px 0;
  }
}

#archive #sorters .sort-button,
#archive .work-dropdown .sort-button {
  position: relative;
  color: #3c3c3c;
  font-size: 13px;
  line-height: 40px;
  text-transform: uppercase;
  background: transparent;
  padding: 0 15px 0 0;
  outline: none;
  border: none;
}

#archive #sorters .sort-button:after,
#archive .work-dropdown .sort-button:after {
  position: absolute;
  right: 0;
}

#archive #sorters .sort-button.sort-down,
#archive .work-dropdown .sort-button.sort-down {
  font-weight: 500;
}

#archive #sorters .sort-button.sort-down:after,
#archive .work-dropdown .sort-button.sort-down:after {
  content: "\0025BE";
}

#archive #sorters .sort-button.sort-up,
#archive .work-dropdown .sort-button.sort-up {
  font-weight: 500;
}

#archive #sorters .sort-button.sort-up:after,
#archive .work-dropdown .sort-button.sort-up:after {
  content: "\0025BE";
  -ms-transform: rotate(180deg);
  /* IE 9 */
  -webkit-transform: rotate(180deg);
  /* Chrome, Safari, Opera */
  transform: rotate(180deg);
  margin-top: 2px;
}

@media only screen and (max-width: 767px) {
  #archive #sorters .sort-button,
  #archive .work-dropdown .sort-button {
    font-size: 10px;
  }
}

@media only screen and (max-width: 767px) {
  #archive #sorters .col-xs-3,
  #archive .work-dropdown .col-xs-3 {
    padding: 0 17px 0 0;
    display: inline-block;
    width: auto;
  }

  #archive #sorters .col-xs-3:first-of-type,
  #archive .work-dropdown .col-xs-3:first-of-type {
    padding-left: 15px;
  }

  #archive #sorters .col-xs-3:last-of-type,
  #archive .work-dropdown .col-xs-3:last-of-type {
    padding-right: 15px;
  }
}

#archive .load-more {
  display: block;
  background: #3c3c3c;
  color: #ffffff;
  font-size: 18px;
  font-weight: 500;
  padding: 9px 25px 10px 25px;
  outline: none;
  border: none;
  border-radius: 2px;
  margin: 40px auto 0 auto;
}

.year-slider-wrapper {
  background: #eaeaea;
  padding-right: 30px;
  border-radius: 15px;
}

.year-slider-wrapper .year-slider.ui-widget-content {
  border: 0;
  height: 10px;
  background: transparent;
}

.year-slider-wrapper .year-slider .ui-slider-range {
  background: #ff0500;
}

.year-slider-wrapper .year-slider .ui-slider-handle {
  width: 40px;
  height: 40px;
  top: -15px;
  border-radius: 100%;
  border: 1px solid #c9c9c9;
}

.year-slider-wrapper .year-slider .ui-slider-handle.ui-state-active,
.year-slider-wrapper .year-slider .ui-slider-handle.ui-state-focus {
  background: #f6f6f6;
  outline: none;
  box-shadow: none;
}

.drop-down-menu {
  position: relative;
  display: inline-block;
  z-index: 99;
}

.drop-down-menu.opened {
  z-index: 1000;
}

.drop-down-menu.opened:before {
  content: "";
  width: 100px;
  height: 35px;
  left: 50%;
  margin-left: -50px;
  position: absolute;
  overflow: hidden;
  z-index: 10000;
  top: 70px;
  background: #fff;
}

.drop-down-menu.opened:after {
  content: "";
  position: absolute;
  width: 30px;
  height: 30px;
  background: #ffffff;
  transform: rotate(45deg);
  /* Prefixes... */
  top: 55px;
  left: 50%;
  margin-left: -15px;
  z-index: 999;
  box-shadow: -1px -1px 10px -2px rgba(0, 0, 0, 0.5);
}

@media only screen and (max-width: 767px) {
  .drop-down-menu {
    width: 300px;
    float: left;
    clear: both;
    margin-bottom: 10px;
  }

  .drop-down-menu button {
    width: 100%;
    text-align: left;
  }
}

.drop-down-menu .drop-down-menu-container {
  display: flex;
}

@media only screen and (max-width: 767px) {
  .drop-down-menu .drop-down-menu-container {
    flex-direction: column;
  }
}

.drop-down-menu .drop-down-menu-column {
  -webkit-box-flex: 0;
  -webkit-flex: 0 0 50%;
  -ms-flex: 0 0 50%;
  flex: 0 0 50%;
  max-width: 50%;
}

.drop-down-menu .drop-down-menu-column:nth-of-type(1) {
  padding-right: 20px;
}

@media only screen and (max-width: 767px) {
  .drop-down-menu .drop-down-menu-column:nth-of-type(1) {
    padding: 0 0 20px 0;
    border-bottom: 1px solid #ddd;
    margin-bottom: 30px;
  }
}

.drop-down-menu .drop-down-menu-column:nth-of-type(2) {
  padding-left: 20px;
  border-left: 1px solid #ddd;
}

@media only screen and (max-width: 767px) {
  .drop-down-menu .drop-down-menu-column:nth-of-type(2) {
    border: none;
    padding: 0;
  }
}

@media only screen and (max-width: 767px) {
  .drop-down-menu .drop-down-menu-column {
    width: 100%;
    -webkit-box-flex: 0;
    -webkit-flex: 0 0 100%;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
}

.drop-down-menu button.toggle-button {
  position: relative;
  background: #3c3c3c;
  color: #ffffff;
  font-size: 18px;
  font-weight: 500;
  padding: 9px 35px 10px 15px;
  outline: none;
  border: none;
  border-radius: 2px;
}

.drop-down-menu button.toggle-button:after {
  content: "\0025BE";
  position: absolute;
  right: 9px;
  top: 9px;
}

.drop-down-menu button.toggle-button.active {
  background: #ff0500;
}

.drop-down-menu button.toggle-button.active .counter.count {
  display: inline-block;
  width: 23px;
  height: 23px;
  background: #ffffff;
  color: #ff0500;
  font-weight: 400;
  font-size: 16px;
  line-height: 23px;
  border-radius: 100%;
  text-align: center;
}

.drop-down-menu .drop-down-content {
  position: absolute;
  top: 70px;
  padding: 35px;
  background: #ffffff;
  -webkit-box-shadow: 0px 0px 30px 3px rgba(0, 0, 0, 0.29);
  -moz-box-shadow: 0px 0px 30px 3px rgba(0, 0, 0, 0.29);
  box-shadow: 0px 0px 30px 3px rgba(0, 0, 0, 0.29);
  z-index: 999;
}

.drop-down-menu .drop-down-content p {
  margin-bottom: 10px;
}

.drop-down-menu .drop-down-menu-buttons {
  width: 100%;
  padding-top: 5px;
  border-top: 1px solid rgba(151, 151, 151, 0.32);
  margin-top: 20px;
  float: left;
}

.drop-down-menu .drop-down-menu-buttons button {
  font-size: 16px;
  background: none;
  border: none;
  outline: none;
  width: auto;
}

.drop-down-menu .drop-down-menu-buttons button:first-of-type {
  float: left;
}

.drop-down-menu .drop-down-menu-buttons button:last-of-type {
  color: #ff0500;
  float: right;
}

.drop-down-menu.drop-down-year .counter.count {
  display: none !important;
}

.drop-down-menu.drop-down-year .drop-down-content {
  width: 400px;
  margin-left: -200px;
  left: 30px;
}

@media only screen and (max-width: 767px) {
  .drop-down-menu.drop-down-year .drop-down-content {
    width: 280px;
    margin-left: 0;
    left: -20px;
  }
}

.drop-down-menu.drop-down-year .year-range-label {
  display: block;
  color: #7b7b7b;
}

.drop-down-menu.drop-down-year .year-range-value {
  display: block;
  font-size: 30px;
  padding: 10px 0;
}

.drop-down-menu.drop-down-year .year-slider {
  margin: 30px 0;
}

.drop-down-menu.drop-down-year .counter {
  font-size: 12px;
}

.drop-down-menu.drop-down-locations .drop-down-content {
  width: 350px;
  margin-left: -175px;
  left: 34px;
}

@media only screen and (max-width: 767px) {
  .drop-down-menu.drop-down-locations .drop-down-content {
    width: 280px;
    left: -20px;
    margin-left: 0;
  }
}

.drop-down-menu.drop-down-locations-doubled .drop-down-content {
  width: 780px;
  margin-left: -575px;
  left: 34px;
}

@media only screen and (max-width: 767px) {
  .drop-down-menu.drop-down-locations-doubled .drop-down-content {
    width: 280px;
    left: -20px;
    margin-left: 0;
  }
}

.dropdown-filter {
  display: inline-block;
}

#filters #big-select-wrapper {
  min-width: 400px;
  float: left;
  margin-right: 4px;
}

@media only screen and (max-width: 767px) {
  #filters #big-select-wrapper {
    min-width: 300px;
  }
}

#filters .select2 {
  min-width: 100%;
}

#filters .select2 .select2-container,
#filters .select2 .select2-choice,
#filters .select2 .select2-selection {
  height: 42px;
  border: none;
  border-radius: 2px;
  box-shadow: none;
  background-color: #3c3c3c;
  color: #ffffff;
  margin: 4px 0;
}

#filters .select2 .select2-selection__rendered {
  position: relative;
  font-size: 20px;
  line-height: 42px !important;
  padding-left: 15px !important;
}

#filters .select2 .select2-selection__rendered:before {
  content: none;
  position: absolute;
  left: 12px;
  top: 13px;
  width: 22px;
  height: 22px;
  background-image: url("assets/img/icon-search-select2.png");
  background-repeat: no-repeat;
}

#filters .select2 .select2-selection__rendered .select2-selection__placeholder {
  color: #ffffff;
  display: block;
  font-size: 18px;
  font-weight: 500;
}

#filters
  .select2
  .select2-selection__rendered
  .select2-selection__placeholder:after {
  content: "\0025BE";
  position: absolute;
  right: 9px;
  color: #ffffff;
}

#filters .select2 .select2-selection__arrow {
  display: none;
}

#filters
  .select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: #ffffff;
  font-size: 18px;
  font-weight: 500;
}

#filters
  .select2-container--default
  .select2-selection--single
  .select2-selection__clear {
  right: -9px;
}

.drop-down-choreographer .drop-down-content {
  width: 950px;
  left: -430px;
}

@media only screen and (max-width: 767px) {
  .drop-down-choreographer .drop-down-content {
    width: auto;
    left: -20px;
    padding: 25px;
  }

  .drop-down-choreographer .drop-down-content .drop-down-scroll-holder {
    height: 300px;
    overflow-y: scroll;
  }
}

.drop-down-choreographer .drop-down-choreographer-column {
  width: 220px;
  padding: 0 10px;
  float: left;
}

.drop-down-choreographer .drop-down-choreographer-column .choreographer {
  overflow: hidden;
  padding: 3px 4px;
  border-radius: 4px;
  margin-bottom: 6px;
  cursor: pointer;
}

.drop-down-choreographer .drop-down-choreographer-column .choreographer:hover {
  background: #d8d8d8;
}

.drop-down-choreographer .drop-down-choreographer-column .choreographer.active {
  color: #ffffff;
  background: #ff0500;
}

.drop-down-choreographer
  .drop-down-choreographer-column
  .choreographer.active
  .choreographer-checkbox {
  background-image: url("assets/img/red-check-icon.png");
  background-repeat: no-repeat;
  background-position: center;
  background-color: #ffffff;
  box-shadow: none;
}

.drop-down-choreographer
  .drop-down-choreographer-column
  .choreographer
  .choreographer-checkbox {
  display: inline-block;
  width: 16px;
  height: 16px;
  box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.1);
  margin-right: 5px;
  border: 1px solid #bfbfbf;
  border-radius: 3px;
  float: left;
}

.drop-down-choreographer .drop-down-choreographer-column .choreographer h4 {
  font-size: 14px;
  line-height: 1;
}

.table-col-align-right {
  text-align: right;
}

.rows-counter {
  display: inline-block;
}

p.database-info {
  display: inline;
  margin-right: 10px;
}

.group-switch {
  position: relative;
  display: inline-block;
  padding-left: 15px;
}

.group-switch:before {
  content: "";
  position: absolute;
  left: 0;
  top: 2px;
  width: 2px;
  height: 20px;
  background: #979797;
}

.group-switch .group-switch-handler {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 64px;
  height: 27px;
  background: #a4a4a4;
  border-radius: 22px;
  cursor: pointer;
  margin: 0 15px;
}

.group-switch .group-switch-handler.active {
  background: #ff0500;
}

.group-switch .group-switch-handler.active .group-button {
  left: 34px;
}

.group-switch .group-switch-handler .group-button {
  position: absolute;
  top: -3px;
  left: 0;
  width: 37px;
  height: 41px;
  border: none;
  outline: none;
  background-position: -4px -2px;
  background-color: transparent;
  background-image: url("assets/img/button-switch.png");
  transition: left 0.1s linear;
}

.clear-filter-button:hover {
  text-decoration: underline;
  cursor: pointer;
}

.location-tags {
  min-height: 35px;
  margin-bottom: 30px;
}

.location-tags .location-tag {
  display: inline-block;
  background: #d8d8d8;
  padding: 5px 12px;
  margin: 0 5px 5px 0;
  border-radius: 100px;
}

.location-tags .location-tag button {
  width: auto;
  font-size: 20px;
  line-height: 20px;
  background: transparent;
  padding: 0;
  border: none;
  outline: none;
  float: right;
  margin-left: 10px;
}

#post.archived-performance .read-more:before {
  border-color: rgba(221, 221, 221, 0) rgba(221, 221, 221, 0) #3c3c3c;
}

#post.archived-performance .read-less:before {
  border-color: rgba(221, 221, 221, 0) rgba(221, 221, 221, 0) #3c3c3c;
}

#post.archived-performance #post-press #post-featured-image {
  margin: 55px 0 15px 0;
  overflow: hidden;
}

#post.archived-performance #post-press #post-featured-image .press-thumbnail {
  margin: 0;
  width: 100%;
}

.single-archived_performance .post-title {
  padding-bottom: 0;
}

.single-archived_performance #archive-back-btn {
  display: none;
  position: absolute;
  left: -112px;
  top: 173px;
  padding-bottom: 20px;
  padding-right: 50px;
  padding-left: 3px;
  color: #ff0500;
  border-bottom: 2px solid #ff0500;
  -ms-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
  letter-spacing: 2px;
  text-transform: uppercase;
}

.single-archived_performance #archive-back-btn:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: 28px;
  height: 20px;
  background-image: url("assets/img/arrow-left.png");
  -ms-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  .single-archived_performance #archive-back-btn {
    display: block;
  }
}

@media only screen and (min-width: 1401px) {
  .single-archived_performance #archive-back-btn {
    display: block;
  }
}

.single-archived_performance .archived-performance {
  position: relative;
}

@media only screen and (min-width: 1200px) and (max-width: 1400px) {
  .single-archived_performance .row-left-padding {
    padding-left: 140px;
  }
}

@media only screen and (min-width: 1401px) {
  .single-archived_performance .row-left-padding {
    padding-left: 140px;
  }
}

.single-archived_performance #archived-performance-top-info,
.single-archived_performance #choreographer {
  display: inline-block;
  font-size: 23px;
}

.single-archived_performance #archived-performance-top-info a,
.single-archived_performance #choreographer a {
  color: #ff5421;
}

.single-archived_performance #archived-performance-top-info {
  margin-bottom: 30px;
}

.single-archived_performance #archived-performance-top-info p {
  display: inline;
}

@media only screen and (max-width: 767px) {
  .single-archived_performance #archived-performance-top-info {
    margin: 15px 0 5px 0;
  }

  .single-archived_performance
    #archived-performance-top-info
    .vertical-divider {
    display: none;
  }
}

#contributors-module p {
  font-size: 26px;
}

@media only screen and (max-width: 767px) {
  #contributors-module p {
    font-size: 20px;
  }
}

#seasons p {
  font-size: 26px;
}

#seasons a {
  text-decoration: underline;
}

#grid-wrap {
  position: relative;
}

#grid-wrap #grid-mask {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.85);
  z-index: 99;
}

#no-search-results-message {
  text-align: center;
  padding-top: 20px;
  padding-bottom: 20px;
  color: #a2a2a2;
  font-size: 20px;
}

.main-loader .loading-text {
  margin: 0 auto;
  text-align: center;
  color: #666;
}

.main-loader .spinner {
  width: 40px;
  height: 40px;
  margin: 20px auto;
  background-color: #333;
  border-radius: 100%;
  -webkit-animation: sk-scaleout 1s infinite ease-in-out;
  animation: sk-scaleout 1s infinite ease-in-out;
}

@-webkit-keyframes sk-scaleout {
  0% {
    -webkit-transform: scale(0);
  }

  100% {
    -webkit-transform: scale(1);
    opacity: 0;
  }
}

@keyframes sk-scaleout {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0;
  }
}

.archived-performance #contributors-module p,
.archived-performance #seasons p {
  font-size: 22px;
}

/*# sourceMappingURL=style.css.map */
