@charset "UTF-8";
/* Box sizing rules */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default padding */
ul[class],
ol[class] {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul[class],
ol[class],
li,
figure,
figcaption,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  scroll-behavior: smooth;
  text-rendering: optimizeSpeed;
  line-height: 1.6;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul[class],
ol[class] {
  list-style: none;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  height: auto;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {
  * {
    -webkit-animation-duration: 0.01ms !important;
            animation-duration: 0.01ms !important;
    -webkit-animation-iteration-count: 1 !important;
            animation-iteration-count: 1 !important;
    -webkit-transition-duration: 0.01ms !important;
            transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
@font-face {
  font-family: "BentonSans";
  src: url("/wp-content/themes/sebastians2021/fonts/BentonSans-Regular.eot");
  src: url("/wp-content/themes/sebastians2021/fonts/BentonSans-Regular.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-Regular.woff2") format("woff2"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-Regular.woff") format("woff"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-Regular.ttf") format("truetype");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BentonSans";
  src: url("/wp-content/themes/sebastians2021/fonts/BentonSans-Medium.eot");
  src: url("/wp-content/themes/sebastians2021/fonts/BentonSans-Medium.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-Medium.woff2") format("woff2"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-Medium.woff") format("woff"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-Medium.ttf") format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BentonSans";
  src: url("/wp-content/themes/sebastians2021/fonts/BentonSans-Bold.eot");
  src: url("/wp-content/themes/sebastians2021/fonts/BentonSans-Bold.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-Bold.woff2") format("woff2"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-Bold.woff") format("woff"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Trajan Pro";
  src: url("/wp-content/themes/sebastians2021/fonts/TrajanPro-Bold.eot");
  src: url("/wp-content/themes/sebastians2021/fonts/TrajanPro-Bold.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/sebastians2021/fonts/TrajanPro-Bold.woff2") format("woff2"), url("/wp-content/themes/sebastians2021/fonts/TrajanPro-Bold.woff") format("woff"), url("/wp-content/themes/sebastians2021/fonts/TrajanPro-Bold.ttf") format("truetype");
  font-weight: bold;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "BentonSans";
  src: url("/wp-content/themes/sebastians2021/fonts/BentonSans-RegularItalic.eot");
  src: url("/wp-content/themes/sebastians2021/fonts/BentonSans-RegularItalic.eot?#iefix") format("embedded-opentype"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-RegularItalic.woff2") format("woff2"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-RegularItalic.woff") format("woff"), url("/wp-content/themes/sebastians2021/fonts/BentonSans-RegularItalic.ttf") format("truetype");
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}
body {
  font-family: "BentonSans", "Calibri", Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
  color: #4F504F;
  min-width: 350px;
}

.trajan {
  font-family: "Trajan Pro", Times, serif;
}

.purple {
  color: #522145;
}

.gold {
  color: #BD8C00;
}

.sr-only {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
  background: #fff;
  color: #000;
}

@media (min-width: 800px) {
  .mobile-only {
    display: none;
  }
}
@media (max-width: 799px) {
  .desktop-only {
    display: none;
  }
}
img.right,
img.alignright {
  margin: 0 0 0.5em 1.5em;
  float: right;
  clear: right;
  max-width: 50%;
}

img.left,
img.alignleft {
  margin: 0 1.5em 0.5em 0;
  float: left;
  clear: left;
  max-width: 50%;
}

.clear {
  clear: both;
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

.btn {
  display: inline-block;
  font-size: 1rem;
  border: 0;
  border-radius: 0;
  background-color: #BD8C00;
  color: #fff !important;
  padding: 0.75rem 2rem 0.6rem !important;
  margin: 0 0.25em 0.5em 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  text-decoration: none;
  font-weight: normal;
}
.btn:hover {
  background-color: #a47900;
}
.btn.btn-block {
  display: block;
  text-align: center;
}
.btn.btn-large {
  font-size: 1.25rem;
}
.btn.btn-small {
  font-size: 0.875rem;
}
.btn.btn-inline {
  margin: 0 0.5em !important;
  padding: 0.25em 1em 0.2em !important;
  vertical-align: bottom;
}
.btn.btn-silver {
  background-color: #C8C9C7;
  color: #4c4a4c !important;
}
.btn.btn-silver:hover {
  background-color: #d5d6d4;
}
.btn.btn-purple {
  background-color: #522145;
  color: #fff !important;
}
.btn.btn-purple:hover {
  background-color: #401a36;
}
.btn:disabled {
  background: black;
}
.btn.btn-buy:before, .btn.btn-spotify:before, .btn.btn-apple:before {
  width: 0.9em;
  height: 0.9em;
  display: inline-block;
  content: " ";
  background-image: url(/images/lock-icon.svg);
  background-size: 100% 100%;
  margin: 0 0.4em 0 0;
}
.btn.btn-spotify:before {
  background-image: url(/images/spotify-logo.svg);
}
.btn.btn-apple:before {
  background-image: url(/images/apple-logo.svg);
}
body.high-contrast .btn {
  background-color: #522145 !important;
  border: 4px solid #BD8C00 !important;
  color: #fff !important;
}
body.high-contrast .btn:hover {
  background-color: #2e1226 !important;
}

main {
  min-height: 600px;
  padding-bottom: 6rem;
  position: relative;
}
main:focus {
  outline: 0;
}
main h1,
main section {
  margin: 0 auto;
  max-width: 1600px;
  padding-right: 2rem;
}
main h1 {
  padding-left: 4.25rem;
}
@media (max-width: 800px) {
  main h1 {
    padding-left: 2rem;
  }
}
main h2 {
  margin-bottom: 0.25em;
}
@media (max-width: 800px) {
  main h2 {
    font-size: 1.25em;
  }
}
main h3 {
  font-size: 1.25em;
}
main h4 {
  font-size: 1.125em;
}
main h5 {
  font-size: 1em;
}
main h6 {
  font-size: 0.875em;
}
main section {
  padding-top: 2rem;
  padding-left: 4.5rem;
}
@media (max-width: 800px) {
  main section {
    padding-left: 2rem;
  }
}
main section div.text {
  max-width: 40em;
}
@media (max-width: 800px) {
  main section div.text {
    max-width: 100%;
  }
}
main section div.text-wide {
  max-width: 60em;
}
main p {
  margin: 0 0 1.5em;
}
main a:not(.btn) {
  color: #71215b;
  font-weight: bold;
}
main a:not(.btn):hover {
  color: #BD8C00;
}

h1 {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  padding-top: 4rem;
  padding-bottom: 0;
  font-size: 3rem;
  line-height: 1;
  color: #522145;
  text-shadow: 0 0 15px #fff, 0 0 10px #fff;
}
@media (max-width: 800px) {
  h1 {
    font-size: 2.25rem;
  }
}

section h1 {
  padding: 0;
  margin: 3rem 0;
}

p.intro {
  font-size: 1.75rem;
  line-height: 1.4;
  color: #BD8C00;
  margin: 0 0 1.25em;
}
body.high-contrast p.intro {
  color: #522145;
}
@media (max-width: 800px) {
  p.intro {
    font-size: 1.25rem;
  }
  p.intro br {
    display: inline;
    content: " ";
  }
}

p.icon-indent {
  padding-left: 1em;
  text-indent: -1.5em;
  margin-left: 1.25em;
}
p.icon-indent .dashicons {
  font-size: 22px;
}

.diamond-wrapper {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  z-index: -1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-transition: margin-top linear 200ms;
  transition: margin-top linear 200ms;
}
.diamond-wrapper img {
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
  max-width: 58%;
  position: relative;
  top: -200px;
  right: -100px;
  -webkit-transition: top 200ms, right 200ms, max-width 200ms;
  transition: top 200ms, right 200ms, max-width 200ms;
}
@media (max-width: 1400px) {
  .diamond-wrapper img {
    top: -150px;
    max-width: 53%;
  }
}
@media (max-width: 1300px) {
  .diamond-wrapper img {
    top: -100px;
    max-width: 50%;
  }
}
@media (max-width: 1200px) {
  .diamond-wrapper img {
    top: -100px;
    max-width: 47%;
  }
}
@media (max-width: 1125px) {
  .diamond-wrapper img {
    max-width: 45%;
  }
}
@media (max-width: 1050px) {
  .diamond-wrapper img {
    max-width: 40%;
  }
}
@media (max-width: 800px) {
  .diamond-wrapper img {
    top: 10px;
    right: -10%;
    max-width: 45%;
  }
}
@media (min-width: 500px) and (max-width: 800px) {
  .diamond-wrapper + p.intro,
  .diamond-wrapper + p + p,
  .diamond-wrapper + p + p + p,
  .diamond-wrapper + p + p + p + p {
    padding-right: 33%;
  }
}
@media (max-width: 500px) {
  .diamond-wrapper + p.intro {
    padding-right: 33%;
  }
}

.white-pattern-background {
  background: url(/wp-content/themes/sebastians2021/images/pattern-white.svg);
  background-size: 2400px 2400px;
  position: relative;
}
.white-pattern-background:before {
  content: " ";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.25);
  z-index: 1;
}
body.high-contrast .white-pattern-background:before {
  background: rgba(255, 255, 255, 0.75);
}
.white-pattern-background > * {
  position: relative;
  z-index: 2;
  color: #222;
}

.gray-pattern-background {
  background: url(/wp-content/themes/sebastians2021/images/pattern-gray.svg);
  background-size: 2400px 2400px;
  position: relative;
}
.gray-pattern-background:before {
  content: " ";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 1;
}
body.high-contrast .gray-pattern-background:before {
  background: rgba(0, 0, 0, 0.55);
}
.gray-pattern-background > * {
  position: relative;
  z-index: 2;
  color: #222;
}

@media (min-width: 800px) {
  .sm-space-above {
    margin-top: 2rem;
  }
  .md-space-above {
    margin-top: 4rem;
  }
  .space-above {
    margin-top: 6rem;
  }
  .sm-space-below {
    margin-bottom: 2rem;
  }
  .md-space-below {
    margin-bottom: 4rem;
  }
  .space-below {
    margin-bottom: 6rem;
  }
}
@media (max-width: 799px) {
  .space-below-mobile {
    margin-bottom: 3rem;
  }
  .space-above-mobile {
    margin-top: 3rem;
  }
}
.no-margin {
  margin: 0 !important;
}

.padding-bottom {
  padding-bottom: 1rem;
}

hr {
  margin: 2em 0;
}
hr.white {
  border: 1px solid white;
  opacity: 0;
}

.boxes {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: 3rem;
  padding-bottom: 2rem;
}
.boxes > div {
  width: 22%;
}
@media (max-width: 1200px) {
  .boxes > div {
    width: 45%;
  }
}
@media (max-width: 800px) {
  .boxes {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .boxes > div {
    width: 100%;
  }
}

input[type=submit],
button {
  width: auto;
  font-size: 1rem;
  border: 0;
  border-radius: 0;
  background-color: #BD8C00;
  color: #fff;
  padding: 0.75rem 2rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  -webkit-transition: none;
  transition: none;
}
input[type=submit]:hover,
button:hover {
  background-color: #a47900;
}
input[type=submit].disabled,
button.disabled {
  background: #777 !important;
  cursor: inherit;
}
body.high-contrast input[type=submit],
body.high-contrast button {
  background-color: #522145 !important;
  border: 4px solid #BD8C00 !important;
  color: #fff !important;
}
body.high-contrast input[type=submit]:hover,
body.high-contrast button:hover {
  background-color: #2e1226 !important;
}

div.donation-form {
  background: url(/wp-content/themes/sebastians2021/images/pattern-purple.svg);
  background-size: 2400px 2400px;
  color: #fff;
  border-radius: 4px;
  margin: 2rem -1rem 2rem;
  padding: 1.25rem 1rem;
  text-align: center;
}
@media (max-width: 800px) {
  div.donation-form h2 {
    font-size: 1.25em;
  }
}
div.donation-form div.donation-amounts,
div.donation-form div.donation-name {
  margin: 0.75rem auto;
  max-width: 500px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 800px) {
  div.donation-form div.donation-amounts,
  div.donation-form div.donation-name {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
div.donation-form input, div.donation-form label {
  cursor: pointer;
}
div.donation-form div.donation-amounts {
  font-size: 1.25em;
}
@media (max-width: 800px) {
  div.donation-form div.donation-amounts div.donation-amount {
    padding: 0.25em 0.5em;
  }
}
div.donation-form div.donation-amounts input {
  margin-right: 0.25em;
}
div.donation-form div.donation-amounts input:checked + label {
  border-bottom: 2px solid #BD8C00;
}
div.donation-form div.donation-amounts #donateAmount {
  width: 100px;
}
div.donation-form div.donation-name #donation-name-input {
  padding: 0.4rem 0.5rem;
  border-radius: 0;
  border-width: 1px;
  width: 50%;
}
@media (max-width: 800px) {
  div.donation-form div.donation-name #donation-name-input {
    width: 100%;
    margin-bottom: 0.5em;
  }
}
div.donation-form div.donation-name label {
  font-size: 80%;
}
div.donation-form #donateButton {
  font-size: 1.125em;
  padding: 0.75rem 1.75rem;
}

.btn-lock:before {
  width: 0.9em;
  height: 0.9em;
  display: inline-block;
  content: " ";
  background: url(/images/lock-icon.svg);
  background-size: 100% 100%;
  margin: 0 0.4em 0 0;
}

form.mailing-list-inline input {
  padding: 0.4rem 0.5rem;
  border-radius: 0;
  border-width: 1px;
  width: 230px;
}
form.mailing-list-inline input[type=submit] {
  width: auto;
  padding: 0.5rem 1.5rem;
}
@media (max-width: 800px) {
  form.mailing-list-inline input {
    width: 100%;
    max-width: 350px;
    margin: 0 auto 0.5rem;
    display: block;
  }
}

section.donor-list {
  padding-top: 6rem;
  padding-bottom: 2rem;
}
section.donor-list h2 {
  margin-bottom: 2rem;
  font-size: 1.75rem;
  font-family: "Trajan Pro", Times, serif;
  color: #BD8C00;
}
section.donor-list .donor-columns {
  -webkit-column-count: 4;
     -moz-column-count: 4;
          column-count: 4;
  -webkit-column-gap: 3.5em;
     -moz-column-gap: 3.5em;
          column-gap: 3.5em;
  margin-bottom: 1rem;
}
@media all and (max-width: 800px) {
  section.donor-list .donor-columns {
    -webkit-column-count: 3;
       -moz-column-count: 3;
            column-count: 3;
  }
}
@media all and (max-width: 600px) {
  section.donor-list .donor-columns {
    -webkit-column-count: 2;
       -moz-column-count: 2;
            column-count: 2;
  }
}
section.donor-list .donor-columns > div {
  margin-bottom: 2rem;
}
@media all and (min-width: 800px) {
  section.donor-list .donor-columns > div {
    -webkit-column-break-inside: avoid;
       -moz-column-break-inside: avoid;
            break-inside: avoid;
  }
}
section.donor-list h4 {
  font-family: "Trajan Pro", Times, serif;
  color: #522145;
  font-size: 1.25rem;
  margin: 0;
  padding: 0;
}
section.donor-list ul {
  margin: 0 0 0 30px;
  padding: 0;
}
section.donor-list li {
  line-height: 1.4;
  text-indent: -15px;
  list-style: none;
}
@media (max-width: 600px) {
  section.donor-list li {
    font-size: 75%;
  }
}
section.donor-list img {
  display: block;
  margin: 0 auto 1.5em;
  width: 75%;
  float: none;
}

@media (min-width: 800px) {
  .four-columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .four-columns > div {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 25%;
            flex: 0 1 25%;
  }
  .three-columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .three-columns > div {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 30%;
            flex: 0 1 30%;
  }
  .two-columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .two-columns > div {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 50%;
            flex: 0 1 50%;
  }
}
.text-center {
  text-align: center;
}

.text-padding {
  padding: 4rem 2rem;
}

img.aligncenter {
  display: block;
  margin: 0 auto;
}

.musicians {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: 0.5em 0;
}
.musicians .musician {
  margin: 0 1em 1em;
  text-align: center;
}
.musicians .musician p.name,
.musicians .musician p.instrument {
  margin: 0;
  text-align: center;
}
.musicians .musician p.instrument {
  font-style: italic;
}

.text-center .musicians {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.page-template-page-musicians .modal img {
  float: right;
  max-width: 50%;
  margin: 0 0 1em 1em;
}
.page-template-page-musicians .musicians.category-core {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.page-template-page-musicians .musicians.category-core .musician {
  margin: 0 0 1em;
}
@media (max-width: 1600px) {
  .page-template-page-musicians .musicians.category-core .musician {
    width: 22%;
  }
}
@media (max-width: 800px) {
  .page-template-page-musicians .musicians.category-core .musician {
    width: 45%;
  }
}
.page-template-page-musicians .musicians.category-all {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (min-width: 801px) {
  .page-template-page-musicians .musicians.category-all .musician {
    max-width: 150px;
  }
}
@media (max-width: 800px) {
  .page-template-page-musicians .musicians {
    -webkit-box-pack: center !important;
        -ms-flex-pack: center !important;
            justify-content: center !important;
  }
  .page-template-page-musicians .musicians .musician {
    max-width: 40% !important;
  }
}
.page-template-page-musicians .musicians [data-modal] .musician-pic-wrapper {
  overflow: hidden;
}
.page-template-page-musicians .musicians [data-modal] img {
  opacity: 1;
  -webkit-transition: all 200ms linear;
  transition: all 200ms linear;
}
.page-template-page-musicians .musicians [data-modal] p {
  font-weight: bold;
  color: #522145;
  font-size: 110%;
}
.page-template-page-musicians .musicians [data-modal]:hover p, .page-template-page-musicians .musicians [data-modal]:focus p {
  color: #BD8C00;
}
.page-template-page-musicians .musicians [data-modal]:hover img, .page-template-page-musicians .musicians [data-modal]:focus img {
  opacity: 0.8;
}

@media (min-width: 801px) {
  section.videos {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
section.videos div.video {
  margin-bottom: 3rem;
}
@media (min-width: 801px) {
  section.videos div.video {
    width: 48%;
  }
}
section.videos div.video h2, section.videos div.video h3, section.videos div.video h4, section.videos div.video h5, section.videos div.video h6 {
  margin-bottom: 0.5rem;
}

.flex-video {
  position: relative;
  padding-top: 0;
  padding-bottom: 67.5%;
  height: 0;
  margin-bottom: 0;
  overflow: hidden;
}
.flex-video.widescreen {
  padding-bottom: 57.25%;
}
.flex-video.vimeo {
  padding-top: 0;
}
.flex-video iframe,
.flex-video object,
.flex-video embed,
.flex-video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

h2.year {
  font-size: 6rem;
  line-height: 6rem;
  margin: 0;
  display: inline-block;
  vertical-align: top;
  width: 2.5em;
  color: #C8C9C7;
  padding-top: 1rem;
}
@media (max-width: 800px) {
  h2.year {
    font-size: 3rem;
    line-height: 3rem;
  }
}
body.high-contrast h2.year {
  color: #522145;
}

div.after-year {
  display: inline-block;
  vertical-align: top;
  max-width: 40rem;
  margin-left: 2rem;
  padding-top: 1rem;
  background: rgba(255, 255, 255, 0.8);
}

p.font-large {
  font-size: 150%;
}
@media (max-width: 800px) {
  p.font-large {
    font-size: 125%;
  }
}

div.image-off-to-side {
  text-align: right;
  position: absolute;
  left: 50%;
  right: 0;
  z-index: -1;
}
@media (max-width: 1400px) {
  div.image-off-to-side {
    position: static;
    margin-left: 30%;
  }
}
@media (max-width: 800px) {
  div.image-off-to-side {
    margin-left: 20%;
  }
  div.image-off-to-side img {
    max-width: 100% !important;
  }
}

small.photo-credit {
  padding: 0.5em 1em;
  color: #959793;
}
@media (max-width: 800px) {
  small.photo-credit {
    font-size: 67.5%;
  }
}

input.styled-checkbox {
  display: none;
}
input.styled-checkbox + label:before {
  border: 2px solid white;
  font-family: dashicons;
  display: inline-block;
  line-height: 1;
  font-weight: 400;
  font-style: normal;
  speak: never;
  text-decoration: inherit;
  text-transform: none;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  width: 30px;
  height: 30px;
  font-size: 25px;
  vertical-align: top;
  text-align: center;
  content: " ";
  margin-right: 0.5em;
}
input.styled-checkbox:checked + label:before {
  content: "\f15e";
}

.press-kit h2 {
  margin-top: 2rem;
}

.skip-link {
  background: #BD8C00;
  color: #fff;
  text-decoration: none;
  left: 5px;
  top: 5px;
  padding: 8px;
  position: absolute;
  -webkit-transform: translateY(-120%);
          transform: translateY(-120%);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  z-index: 51;
}
.skip-link:focus {
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
}

header#main-header {
  background-color: #522145;
  background: url(/wp-content/themes/sebastians2021/images/pattern-purple.svg);
  background-size: 2400px 2400px;
  z-index: 50;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  min-width: 350px;
  -webkit-transition: height linear 200ms;
  transition: height linear 200ms;
  height: 150px;
}
header#main-header + * {
  margin-top: 150px;
  -webkit-transition: margin-top linear 200ms;
  transition: margin-top linear 200ms;
}
@media all and (max-width: 1100px) {
  header#main-header {
    height: 120px;
  }
  header#main-header + * {
    margin-top: 120px;
    -webkit-transition: margin-top linear 200ms;
    transition: margin-top linear 200ms;
  }
}
@media all and (max-width: 900px) {
  header#main-header {
    height: 90px;
  }
  header#main-header + * {
    margin-top: 90px;
    -webkit-transition: margin-top linear 200ms;
    transition: margin-top linear 200ms;
  }
}
header#main-header div.header-links {
  margin: 0 auto;
  padding: 0.25rem 0.5rem;
  max-width: 1600px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-transition: padding linear 200ms;
  transition: padding linear 200ms;
}
header#main-header a#logo-link {
  width: 32%;
  max-width: 450px;
  -webkit-transition: max-width linear 200ms;
  transition: max-width linear 200ms;
}
header#main-header img.logo {
  margin: 0.6em 0.6em 0.25em;
  -webkit-transition: all 250ms;
  transition: all 250ms;
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}
@media all and (min-width: 800px) {
  header#main-header img.logo:hover {
    -webkit-transform: scale(1.03);
            transform: scale(1.03);
  }
}
header#main-header nav#main-menu {
  width: 67%;
  padding-right: 2%;
  -webkit-transition: width linear 200ms;
  transition: width linear 200ms;
}
header#main-header nav#main-menu ul.menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: 1.2em;
}
header#main-header nav#main-menu ul.menu > li {
  display: inline-block;
  position: relative;
}
header#main-header nav#main-menu ul.menu > li.two-lines {
  top: -0.6em;
}
header#main-header nav#main-menu ul.menu a {
  color: #fff;
  text-transform: uppercase;
  padding: 1em;
  text-decoration: none;
  position: relative;
  text-shadow: 1px 1px 5px #000;
  letter-spacing: 0.5px;
  line-height: 1.2;
  display: inline-block;
  text-align: center;
}
@media all and (max-width: 1100px) {
  header#main-header nav#main-menu ul.menu a {
    font-size: 90%;
  }
}
header#main-header nav#main-menu ul.menu a:after {
  content: "";
  position: absolute;
  top: 0.25em;
  left: 0;
  width: 100%;
  height: 0.2em;
  background-color: #d79f00;
  opacity: 1;
  -webkit-transform: scale(0);
          transform: scale(0);
  -webkit-transform-origin: center;
          transform-origin: center;
  -webkit-transition: opacity 300ms, -webkit-transform 300ms;
  transition: opacity 300ms, -webkit-transform 300ms;
  transition: opacity 300ms, transform 300ms;
  transition: opacity 300ms, transform 300ms, -webkit-transform 300ms;
}
@media all and (min-width: 800px) {
  header#main-header nav#main-menu ul.menu a:focus::after, header#main-header nav#main-menu ul.menu a:hover::after, header#main-header nav#main-menu ul.menu a:active::after {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@media all and (max-width: 1100px) {
  header#main-header nav#main-menu ul.menu > li > a {
    padding: 1em 0.5em;
  }
}
header#main-header nav#main-menu ul.menu ul.sub-menu {
  position: absolute;
  height: 0;
  overflow: hidden;
  opacity: 0;
  -webkit-transition: opacity ease-in 200ms;
  transition: opacity ease-in 200ms;
  width: 14em;
  background: url(/wp-content/themes/sebastians2021/images/pattern-gray.svg);
  background-size: 2400px 2400px;
}
header#main-header nav#main-menu ul.menu ul.sub-menu a {
  text-align: left;
  margin: 3px;
}
@media all and (min-width: 800px) {
  header#main-header nav#main-menu ul.menu li.menu-item-has-children.open ul.sub-menu,
  header#main-header nav#main-menu ul.menu li.menu-item-has-children:hover ul.sub-menu {
    height: auto;
    opacity: 1;
  }
  header#main-header nav#main-menu ul.menu li.menu-item-has-children.open ul.sub-menu li, header#main-header nav#main-menu ul.menu li.menu-item-has-children.open ul.sub-menu a,
  header#main-header nav#main-menu ul.menu li.menu-item-has-children:hover ul.sub-menu li,
  header#main-header nav#main-menu ul.menu li.menu-item-has-children:hover ul.sub-menu a {
    display: block;
  }
}
@media all and (min-width: 800px) {
  header#main-header nav#main-menu:not(.clicked) li.current_page_item > a:after {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
body.unscrolled.modal-open header#main-header, body.scrolled header#main-header {
  height: 90px;
}
body.unscrolled.modal-open header#main-header a#logo-link, body.scrolled header#main-header a#logo-link {
  max-width: 260px;
}
body.unscrolled.modal-open header#main-header img.logo, body.scrolled header#main-header img.logo {
  margin-bottom: 0 !important;
}
body.unscrolled.modal-open header#main-header + *, body.scrolled header#main-header + * {
  margin-top: 90px;
}
body.unscrolled.modal-open header#main-header nav#main-menu, body.scrolled header#main-header nav#main-menu {
  width: 76%;
}
@media all and (max-width: 1300px) {
  body.unscrolled.modal-open header#main-header nav#main-menu, body.scrolled header#main-header nav#main-menu {
    width: 73%;
  }
}
@media all and (max-width: 1100px) {
  body.unscrolled.modal-open header#main-header nav#main-menu, body.scrolled header#main-header nav#main-menu {
    width: 70%;
  }
}
@media all and (max-width: 1000px) {
  body.unscrolled.modal-open header#main-header nav#main-menu, body.scrolled header#main-header nav#main-menu {
    width: 67%;
  }
}

#mobile-nav-toggle {
  display: none;
}

@media all and (max-width: 800px) {
  header#main-header div.header-links {
    padding: 0.25rem 1rem 0.25rem 0.5rem;
  }
  header#main-header a#logo-link {
    width: 225px;
  }
  header#main-header a#logo-link img.logo {
    margin: 0.5em 0 0;
  }
  header#main-header nav#main-menu {
    opacity: 0;
    -webkit-transition: opacity ease-in 250ms;
    transition: opacity ease-in 250ms;
    position: fixed;
    top: 89px;
    left: 0;
    right: 0;
    height: 0;
    width: 100% !important;
    margin: 0;
    padding: 0;
    overflow-y: scroll;
    font-size: 1.3rem;
    font-weight: 500;
    background-color: #666366;
    background-image: url(/wp-content/themes/sebastians2021/images/pattern-gray.svg);
    background-size: 2400px 2400px;
  }
  header#main-header nav#main-menu > ul.menu {
    margin-top: 0.25em;
  }
  header#main-header nav#main-menu ul.menu,
  header#main-header nav#main-menu ul.menu li,
  header#main-header nav#main-menu ul.menu li a {
    display: block;
    width: 100%;
    text-align: center;
  }
  header#main-header nav#main-menu ul.menu a:hover span,
  header#main-header nav#main-menu ul.menu li a:hover span,
  header#main-header nav#main-menu ul.menu li a a:hover span {
    border-bottom: 2px solid #d79f00;
  }
  header#main-header nav#main-menu:not(.clicked) li.current_page_item > a span {
    border-bottom: 2px solid #d79f00;
  }
  header#main-header nav#main-menu ul.menu > li.menu-item > a {
    padding: 1em 1em 0.25em;
  }
  header#main-header nav#main-menu ul.menu ul.sub-menu {
    display: inline-block;
    opacity: 1;
    height: auto;
    position: static;
    width: 16em;
    margin: 0 auto;
    border-left: 2px solid #BD8C00;
    background: none;
    padding-left: 0.5em;
    font-size: 90%;
  }
  header#main-header nav#main-menu ul.menu ul.sub-menu a {
    padding: 0.25em;
    text-align: left;
  }
  header#main-header nav#main-menu li.two-lines {
    top: 0 !important;
  }
  header#main-header nav#main-menu a br {
    content: " ";
    display: inline;
  }
  header#main-header nav#main-menu.mobile-open {
    opacity: 1;
    z-index: 51;
    bottom: 0;
    height: auto;
  }
  #mobile-nav-toggle {
    display: block;
    cursor: pointer;
    border: 0;
    border-radius: 0;
    background-color: #BD8C00;
    color: #fff;
    padding: 0.5rem 1rem;
    text-transform: uppercase;
    font-weight: 500;
    -webkit-appearance: none;
    -moz-appearance: none;
    -webkit-transition: background-color 200ms;
    transition: background-color 200ms;
  }
  #mobile-nav-toggle:before {
    content: "\f333";
    font: 400 20px/1 dashicons !important;
    speak: none;
    position: relative;
    top: 4px;
    padding-right: 4px;
    display: inline-block;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}
@media (max-width: 800px) and (max-width: 370px) {
  #mobile-nav-toggle:before {
    display: none;
  }
}
@media (max-width: 800px) and (min-width: 800px) {
  #mobile-nav-toggle:hover {
    background-color: #a47900;
  }
}
@media all and (max-width: 800px) {
  #mobile-nav-toggle.opened:before {
    content: "\f335";
  }
}
@media all and (max-height: 500px) {
  div.header-links {
    padding: 0 !important;
  }
  a#logo-link {
    margin: 0.5rem 0 0 0.5rem !important;
  }
  button#mobile-nav-toggle {
    margin: 1rem !important;
  }
  header#main-header,
  nav#main-menu {
    position: static !important;
  }
  header#main-header + * {
    margin-top: 0;
    -webkit-transition: margin-top linear 200ms;
    transition: margin-top linear 200ms;
  }
  header#main-header div.header-links {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  nav#main-menu.mobile-open {
    margin-top: 0.5rem;
  }
}
footer#main-footer {
  background-color: #522145;
  background: url(/wp-content/themes/sebastians2021/images/pattern-purple.svg);
  background-size: 2400px 2400px;
  color: #fff;
}
body.high-contrast footer#main-footer {
  background: #522145;
}
@media (max-width: 800px) {
  footer#main-footer {
    font-size: 80%;
  }
}
footer#main-footer h2 {
  margin-bottom: 0.5rem;
  margin-top: 1.5rem;
}
footer#main-footer h2:first-child {
  margin-top: 0;
}
footer#main-footer .footer-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1600px;
  margin: 0 auto;
}
footer#main-footer .footer-row > div {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  width: 33.3333%;
  padding: 2rem 1rem;
}
@media (max-width: 800px) {
  footer#main-footer .footer-row {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  footer#main-footer .footer-row > div {
    width: 100% !important;
    text-align: center;
  }
  footer#main-footer .footer-row > div.partners {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
@media (min-width: 1200px) {
  footer#main-footer .partners .partner-logo-block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  footer#main-footer .partners .partner-logo-block > * {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 0px;
            flex: 1 0 0;
  }
}
footer#main-footer .partners .partner-logo-block + .partner-logo-block {
  margin-top: 1rem;
}
@media (min-width: 1460px) {
  footer#main-footer .partners {
    padding-right: 5% !important;
  }
}
footer#main-footer .partners img {
  max-width: 100%;
  height: auto;
}
footer#main-footer .partners img.dcla {
  width: 150px;
}
footer#main-footer .partners img.nysca {
  width: 240px;
}
footer#main-footer .partners p {
  font-size: 65%;
  margin: 0;
  padding: 0.5rem 0 0;
}
@media (min-width: 1200px) {
  footer#main-footer .partners p {
    text-align: justify;
    padding: 0 0 0 1rem;
  }
}
@media (max-width: 800px) {
  footer#main-footer .partners p {
    font-size: 85%;
  }
}
footer#main-footer .links {
  text-align: center;
}
footer#main-footer .mailing-list input {
  display: block;
  width: 100%;
  font-size: 1rem;
  margin-top: 1rem;
  padding: 0.5em 0.75em 0.3em;
  border: 0;
  border-radius: 0;
}
footer#main-footer .mailing-list input#mce-FNAME {
  margin-top: 0.5rem;
}
@media (min-width: 800px) {
  footer#main-footer .mailing-list input {
    -webkit-transition: background-color ease-in 200ms;
    transition: background-color ease-in 200ms;
    background-color: rgba(255, 255, 255, 0.85);
  }
  footer#main-footer .mailing-list input:focus {
    background-color: rgb(255, 255, 255);
  }
}
footer#main-footer .mailing-list input[type=submit] {
  width: auto;
  font-size: 1rem;
  border: 0;
  border-radius: 0;
  background-color: #BD8C00;
  color: #fff;
  padding: 0.75rem 2rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  cursor: pointer;
  -webkit-transition: none;
  transition: none;
}
footer#main-footer .mailing-list input[type=submit]:hover {
  background-color: #a47900;
}
@media (max-width: 800px) {
  footer#main-footer .mailing-list input {
    margin: 1.25rem auto 0;
    max-width: 350px;
  }
}
@media (min-width: 1460px) {
  footer#main-footer .mailing-list {
    padding-left: 5% !important;
  }
}
footer#main-footer .footer-bottom {
  background: #1f1e1f;
}
footer#main-footer .footer-bottom .footer-row div.icons,
footer#main-footer .footer-bottom .footer-row div.credits {
  width: 25%;
}
footer#main-footer .footer-bottom .footer-row div.contact {
  width: 50%;
}
@media (max-width: 800px) {
  footer#main-footer .footer-bottom .footer-row {
    padding: 1rem !important;
  }
  footer#main-footer .footer-bottom .footer-row > div {
    text-align: center;
    padding: 0.5rem !important;
    margin: 0;
  }
}
footer#main-footer .icons a, footer#main-footer .icons a:before {
  cursor: pointer;
  border: 0;
  width: 40px;
  height: 40px;
  font-size: 40px;
}
footer#main-footer .icons a, footer#main-footer .icons a:visited {
  color: #fff;
}
footer#main-footer .icons a:hover {
  color: #BD8C00;
}
footer#main-footer .contact {
  text-align: center;
}
@media (min-width: 800px) {
  footer#main-footer .contact {
    font-size: 1.2rem;
  }
}
footer#main-footer .credits {
  text-align: right;
  font-size: 90%;
}
footer#main-footer a {
  color: #BD8C00;
  text-decoration: none;
  border-bottom: 1px solid #BD8C00;
  padding-bottom: 2px;
}
footer#main-footer a:hover {
  color: #fff;
}

@media (min-width: 800px) {
  section.quote-image {
    background-size: cover;
    background-position: center center;
    margin-top: 50px;
    height: 600px;
    position: relative;
    padding: 0;
  }
  section.quote-image.image-violin {
    background-image: url(/wp-content/themes/sebastians2021/images/violin-bw.jpg);
  }
  section.quote-image.image-messiah {
    background-image: url(/wp-content/themes/sebastians2021/images/messiah.jpg);
  }
  section.quote-image.image-cello {
    background-image: url(/wp-content/themes/sebastians2021/images/cello.jpg);
  }
  section.quote-image.image-folia {
    background-image: url(/wp-content/themes/sebastians2021/images/folia.jpg);
  }
  section.quote-image.image-st-matthew {
    background-image: url(/wp-content/themes/sebastians2021/images/st-matthew.jpg);
  }
}
@media (min-width: 800px) and (max-width: 1100px) {
  section.quote-image {
    height: 500px;
  }
}
@media (min-width: 800px) and (max-width: 950px) {
  section.quote-image {
    height: 400px;
  }
}
@media (min-width: 800px) {
  section.quote-image div.quote {
    background: rgba(255, 255, 255, 0.9);
    position: absolute;
    top: 43%;
    padding: 1em 1em 0.8em;
  }
}
@media (min-width: 800px) and (max-width: 1400px) {
  section.quote-image div.quote {
    font-size: 175%;
  }
}
@media (min-width: 800px) and (max-width: 1100px) {
  section.quote-image div.quote {
    font-size: 150%;
  }
}
@media (min-width: 800px) {
  section.quote-image div.quote.bottom {
    top: auto;
    bottom: 10%;
  }
  section.quote-image div.quote cite {
    margin-left: 3em;
  }
  section.quote-image.quote-left {
    margin-left: 25%;
  }
  section.quote-image.quote-left div.quote {
    left: -25%;
  }
  section.quote-image.quote-right {
    margin-right: 25%;
  }
  section.quote-image.quote-right div.quote {
    right: -25%;
  }
}

section.quote-image div.quote,
section.quote-center div.quote {
  margin-bottom: 0;
}

.nyt-critics-pick {
  width: 20%;
  max-width: 225px;
  position: relative;
  top: 1em;
  left: 1em;
  -webkit-transform: rotate(-5deg);
          transform: rotate(-5deg);
  -webkit-animation: glow 5s ease-in-out infinite;
          animation: glow 5s ease-in-out infinite;
}

@media (max-width: 799px) {
  div.mobile-image {
    margin-top: 3rem;
    background-size: cover;
    background-position: center center;
    height: 300px;
  }
}
@media (max-width: 799px) and (max-width: 500px) {
  div.mobile-image.image-short {
    height: 200px;
  }
}
@media (max-width: 799px) {
  div.mobile-image.image-violin {
    background-image: url(/wp-content/themes/sebastians2021/images/violin-bw.jpg);
  }
  div.mobile-image.image-messiah {
    background-image: url(/wp-content/themes/sebastians2021/images/messiah.jpg);
  }
  div.mobile-image.image-cello {
    background-image: url(/wp-content/themes/sebastians2021/images/cello.jpg);
  }
  div.mobile-image.image-folia {
    background-image: url(/wp-content/themes/sebastians2021/images/folia.jpg);
  }
  div.mobile-image.image-st-matthew {
    background-image: url(/wp-content/themes/sebastians2021/images/st-matthew.jpg);
  }
}
@media (max-width: 1400px) {
  section.three-columns div.quote {
    font-size: 175%;
  }
}
@media (max-width: 1100px) {
  section.three-columns div.quote {
    font-size: 150%;
  }
}
@media (max-width: 799px) {
  section.three-columns div.quote {
    font-size: 115%;
  }
}

@-webkit-keyframes glow {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
  100% {
    opacity: 1;
  }
}

@keyframes glow {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.7;
  }
  100% {
    opacity: 1;
  }
}
div.quote {
  font-size: 225%;
  font-weight: 500;
  padding: 0 1rem;
}
@media (max-width: 799px) {
  div.quote {
    margin: 1.75rem auto 3rem;
    font-size: 115%;
    font-weight: 400;
  }
}
@media (min-width: 800px) {
  div.quote.indent-quote blockquote {
    text-indent: -1.2em;
  }
}
@media (max-width: 799px) {
  div.quote blockquote {
    text-indent: -0.9em;
  }
}
div.quote blockquote {
  color: #BD8C00;
}
body.high-contrast div.quote blockquote {
  color: #222;
}
@media (max-width: 799px) {
  div.quote blockquote.font-lg {
    font-weight: 500;
    font-size: 125%;
  }
}
@media (min-width: 800px) {
  div.quote blockquote.font-lg {
    font-size: 140%;
  }
  div.quote blockquote.font-md {
    font-size: 80%;
  }
  div.quote blockquote.font-sm {
    font-size: 65%;
  }
  div.quote blockquote.font-xs {
    font-size: 1.125rem;
  }
}
div.quote blockquote.tight-lines {
  line-height: 1.2;
}
div.quote blockquote:before {
  content: open-quote;
}
div.quote blockquote:after {
  content: close-quote;
}
div.quote blockquote:before, div.quote blockquote:after {
  font-size: 200%;
  line-height: 0;
  position: relative;
  top: 0.25em;
}
@media (max-width: 799px) {
  div.quote br {
    content: " ";
    display: inline;
  }
}
div.quote cite {
  font-family: "Trajan Pro", Times, serif;
  font-style: normal;
  font-size: 90%;
  margin-top: 0.25em;
  color: #522145;
}
@media (min-width: 800px) {
  div.quote cite.font-sm {
    font-size: 70%;
  }
  div.quote cite.font-xs {
    font-size: 60%;
  }
}
div.quote cite:before {
  content: "–";
  display: inline;
}
div.quote cite a {
  text-decoration: none;
}
@media (max-width: 799px) {
  div.quote cite {
    display: block;
    text-align: right;
    font-size: 80%;
  }
}

@media (min-width: 800px) {
  section.quote-center {
    max-width: 1125px;
    margin: 6rem auto;
    padding: 0 2rem;
  }
  section.quote-center cite {
    display: block;
    text-align: right;
  }
}

div.homepage-video {
  position: relative;
  line-height: 0;
}
div.homepage-video video {
  width: 100%;
  background: black;
}
div.homepage-video a.video-link {
  position: absolute;
  bottom: 1em;
  right: 1em;
  display: inline-block;
  padding: 1rem 1rem 0.8rem;
  background: #522145;
  color: #fff;
  text-decoration: none;
  line-height: 1.6;
  opacity: 0;
  -webkit-animation: fadeIn ease-in 2s;
          animation: fadeIn ease-in 2s;
  -webkit-animation-delay: 10s;
          animation-delay: 10s;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-transition: background 200ms;
  transition: background 200ms;
}
div.homepage-video a.video-link span {
  display: block;
}
div.homepage-video a.video-link span:nth-child(1) {
  font-size: 1.125rem;
  font-family: "Trajan Pro", Times, serif;
}
div.homepage-video a.video-link span:nth-child(2) {
  text-transform: uppercase;
  font-size: 1rem;
}
div.homepage-video a.video-link:hover, div.homepage-video a.video-link:focus {
  background: #BD8C00;
  opacity: 1;
}
@media (max-width: 800px) {
  div.homepage-video a.video-link {
    position: static;
    display: block;
    text-align: center;
    padding: 0.4rem 1rem 0.3rem;
  }
  div.homepage-video a.video-link span {
    display: inline-block;
    margin: 0 1em;
  }
  div.homepage-video a.video-link span:nth-child(1) {
    font-size: 0.875rem;
  }
  div.homepage-video a.video-link span:nth-child(2) {
    font-size: 0.75rem;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
div.homepage-quote.quote {
  margin: 3rem auto;
  text-align: center;
  max-width: 1600px;
  font-weight: 500;
}
div.homepage-quote.quote blockquote {
  text-indent: 0;
}
div.homepage-quote.quote cite {
  text-align: center;
}
@media (max-width: 799px) {
  div.homepage-quote.quote {
    font-size: 150%;
  }
}

.homepage-photos {
  max-width: 1600px;
  margin: 3rem auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.homepage-photos div.homepage-photo {
  -webkit-box-flex: 1;
      -ms-flex: 1 0 20%;
          flex: 1 0 20%;
  text-align: center;
  padding: 1rem;
  color: #56565A;
}
.homepage-photos div.homepage-photo img {
  width: 300px;
}
.homepage-photos div.homepage-photo h3 {
  margin-top: 0.75rem;
}
@media (max-width: 800px) {
  .homepage-photos {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .homepage-photos div.homepage-photo {
    -webkit-box-flex: 1;
        -ms-flex: 1 0 45%;
            flex: 1 0 45%;
    padding-bottom: 0;
  }
}

.next-concert {
  max-width: 1500px;
  margin: 0 auto;
  padding: 3rem;
  background-image: url(/wp-content/themes/sebastians2021/images/logo-icon.svg);
  background-repeat: no-repeat;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 20% 40% 40%;
  grid-template-columns: 20% 40% 40%;
}
.next-concert .next-concert-info {
  -ms-grid-column: 2;
      grid-column-start: 2;
  -ms-grid-column-span: 1;
  grid-column-end: 3;
}
@media (min-width: 1201px) {
  .next-concert .next-concert-info {
    padding: 0 1em;
  }
}
.next-concert .next-concert-image {
  -ms-grid-column: 3;
      grid-column-start: 3;
  -ms-grid-column-span: 1;
  grid-column-end: 4;
}
@media (max-width: 1200px) {
  .next-concert {
    -ms-grid-columns: 250px auto auto;
    grid-template-columns: 250px auto auto;
    background-size: 370px;
    background-position: center left;
  }
  .next-concert .next-concert-info,
  .next-concert .next-concert-image {
    -ms-grid-column: 2;
        grid-column-start: 2;
    -ms-grid-column-span: 2;
    grid-column-end: 4;
  }
}
@media (max-width: 800px) {
  .next-concert {
    background-size: 35%;
    -ms-grid-columns: 25% auto;
    grid-template-columns: 25% auto;
  }
  .next-concert .next-concert-image {
    display: none;
  }
}
@media (max-width: 600px) {
  .next-concert {
    background: none;
    display: block;
  }
}
.next-concert .next-concert-date {
  font-size: 1.5rem;
  font-weight: 500;
  color: #666366;
}
@media (max-width: 600px) {
  .next-concert .next-concert-date {
    font-size: 1.25rem;
  }
}
.next-concert.diamond-view .next-concert-date {
  color: #fff;
}
.next-concert .next-concert-title {
  font-size: 2.25rem;
  font-weight: bold;
  color: #522145;
}
@media (max-width: 600px) {
  .next-concert .next-concert-title {
    font-size: 1.55rem;
  }
}
.next-concert .next-concert-title a {
  text-decoration: none;
}
.next-concert.diamond-view .next-concert-title a {
  color: #BD8C00;
}
.next-concert.diamond-view .next-concert-title a:hover {
  text-decoration: underline;
}
.next-concert .next-concert-subtitle {
  font-size: 1.25rem;
  color: #666366;
  margin-bottom: 1em;
}
@media (max-width: 600px) {
  .next-concert .next-concert-subtitle {
    font-size: 1rem;
  }
}
.next-concert.diamond-view .next-concert-subtitle {
  color: #fff;
}
@media (max-width: 600px) {
  .next-concert .btn {
    font-size: 1rem;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
}

div.cd-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 800px) {
  div.cd-block {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
div.cd-block h2 {
  font-size: 2rem;
  margin-bottom: 0;
  line-height: 2.25rem;
}
div.cd-block div.cd-img-and-playlist {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 800px) {
  div.cd-block div.cd-img-and-playlist {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
div.cd-block div.cd-img-and-playlist > img,
div.cd-block div.cd-img-and-playlist > iframe {
  width: 335px;
  height: 335px;
  margin-right: 1em;
  max-width: none;
}
div.cd-block div.cd-img-and-playlist.night-scenes > img,
div.cd-block div.cd-img-and-playlist.night-scenes > iframe {
  height: 300px !important;
}
div.cd-block div.cd-block-info {
  -webkit-box-flex: 0;
      -ms-flex: 0 1 auto;
          flex: 0 1 auto;
  margin-left: 1em;
}
@media (max-width: 800px) {
  div.cd-block div.cd-block-info {
    margin-left: 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media (max-width: 1300px) {
  div.cd-block div.cd-img-and-playlist {
    display: block;
    width: 335px;
    max-width: 100%;
  }
}
div.cd-block div.cd-composer-block {
  font-size: 1rem;
  margin-bottom: 1em;
  color: #666366;
}
div.cd-block div.cd-composer-block span {
  margin-right: 0.75em;
}
div.cd-block div.quote {
  padding: 0 0 1.5rem;
  margin: 0;
}
@media (min-width: 801px) {
  div.cd-block div.quote {
    line-height: 1em;
  }
}
div.cd-block div.quote blockquote {
  display: inline;
}
div.cd-block div.quote cite {
  display: inline;
  text-align: right;
  font-size: 1.25rem;
  line-height: 1rem;
}
div.cd-block .btn {
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
}

div.concert-header {
  background: url(/wp-content/themes/sebastians2021/images/folia.jpg) no-repeat;
  background-size: cover;
  background-position: center center;
  color: #fcfeff;
  text-align: center;
  padding: 225px 0;
  position: relative;
}
div.concert-header:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #000;
  opacity: 0.5;
}
@media all and (max-width: 1100px) {
  div.concert-header {
    padding: 112px 50px;
  }
}
@media all and (max-width: 800px) {
  div.concert-header {
    padding: 75px 50px;
  }
}
div.concert-header h1,
div.concert-header h2,
div.concert-header h3,
div.concert-header h4,
div.concert-header h5,
div.concert-header h6 {
  z-index: 2;
  position: relative;
  color: inherit;
  text-shadow: none;
}
div.concert-header em {
  font-size: 1.125em;
}
div.concert-header h1 {
  padding: 0;
}
@media all and (max-width: 800px) {
  div.concert-header h1 {
    font-size: 1.75rem;
  }
}
div.concert-header .subtitle {
  font-style: italic;
}
@media all and (max-width: 800px) {
  div.concert-header .subtitle {
    font-size: 0.875rem;
  }
}

.diamond-header {
  position: relative;
}
.diamond-header .diamond-header-background {
  background-size: cover;
  background-position: center center;
  min-height: 200px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 100px;
  z-index: -1;
}
.diamond-header .diamond-header-inner {
  max-width: 1600px;
  margin: 0 auto;
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto;
  grid-template-rows: auto;
  -ms-grid-columns: 40% 1fr;
  grid-template-columns: 40% 1fr;
}
.diamond-header .diamond-header-inner > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
.diamond-header .diamond-header-inner > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}
.diamond-header div.headshots {
  margin: 0 1em 100px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.diamond-header div.subtitle {
  position: relative;
}
.diamond-header div.subtitle > h3 {
  position: absolute;
  bottom: 25%;
  right: 30px;
  font-weight: 300;
  text-shadow: 2px 2px 2px #fff;
  display: block;
  text-align: right;
  width: 100%;
}
@media (max-width: 1200px) {
  .diamond-header div.subtitle > h3 {
    bottom: 50%;
  }
}

section.diamond-pre-header a {
  color: #BD8C00;
  text-decoration: none;
  text-transform: uppercase;
  font-size: 0.875rem;
  letter-spacing: 1px;
}
section.diamond-pre-header a:hover {
  color: #a47900;
  text-decoration: underline;
}
section.diamond-pre-header + h1 {
  padding-top: 0.75rem;
}

section.diamond-top-info {
  padding-top: 0.5rem;
}
@media (max-width: 800px) {
  section.diamond-top-info .concert-date {
    font-size: 1em;
  }
}
section.diamond-top-info div.ctas {
  margin: 3rem 0;
}
section.diamond-top-info div.ctas a.btn {
  font-weight: bold;
  margin-right: 2rem;
}
@media (max-width: 800px) {
  section.diamond-top-info div.ctas a.btn {
    margin-right: 1rem;
  }
}
section.diamond-top-info div.ctas a.btn:last-child {
  margin-right: 0;
}
section.diamond-top-info .concert-intro {
  font-size: 1.25rem;
}

div.on-tour {
  max-width: 40em;
  background: #fff;
  border: 1px solid #8d8f8b;
  padding: 0.5em;
  color: #676965;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1rem;
}
body.high-contrast div.on-tour {
  border-color: #522145;
  color: #522145;
}
@media (max-width: 800px) {
  div.on-tour {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
}
div.on-tour .on-tour-label {
  background: #8d8f8b;
  color: #fff;
  font-weight: bold;
  padding: 4px 10px 3px;
  white-space: nowrap;
  position: relative;
  left: -1.5em;
}
body.high-contrast div.on-tour .on-tour-label {
  background: #522145;
}
div.on-tour .on-tour-text {
  margin-left: -1em;
  font-size: 90%;
  padding: 0.25em;
  line-height: 1.4;
}
div.on-tour .on-tour-text > p {
  margin: 0 !important;
  font-size: inherit !important;
}
.season-concert-info div.on-tour {
  margin: 1em 0 3em;
}
.season-concert.presenter-callout div.on-tour {
  margin: 1em 0 0 !important;
}

section.concert-body.diamond.no-header,
section.concert-footer.diamond {
  display: block;
  margin-top: 3rem;
}
section.concert-body.diamond.no-header .concert-item,
section.concert-footer.diamond .concert-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 3rem 0;
}
@media (max-width: 500px) {
  section.concert-body.diamond.no-header .concert-item,
  section.concert-footer.diamond .concert-item {
    display: block;
  }
}
section.concert-body.diamond.no-header .concert-item-label,
section.concert-footer.diamond .concert-item-label {
  width: 9rem;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  font-size: 1rem;
  font-family: "Trajan Pro", Times, serif;
  text-transform: lowercase;
}
@media (max-width: 500px) {
  section.concert-body.diamond.no-header .concert-item-label,
  section.concert-footer.diamond .concert-item-label {
    width: 100%;
    margin-bottom: 1rem;
  }
}
@media (max-width: 500px) {
  section.concert-body.diamond.no-header .concert-item-text,
  section.concert-footer.diamond .concert-item-text {
    margin-left: 2.5rem;
  }
}
section.concert-body.diamond.no-header .concert-item.video .concert-item-text,
section.concert-footer.diamond .concert-item.video .concert-item-text {
  width: 100%;
  max-width: 800px;
  margin-right: 2.5rem;
}
@media (max-width: 500px) {
  section.concert-body.diamond.no-header .concert-item.video .concert-item-text,
  section.concert-footer.diamond .concert-item.video .concert-item-text {
    margin: 0;
  }
}

section.concert-footer.diamond {
  margin: 1rem 0 5rem;
}

.concert-more-info {
  padding: 1.5rem;
}
.concert-more-info .btn {
  margin: 0.5rem 1rem;
}

#series-menu.diamond-view h2 {
  text-transform: uppercase;
}
#series-menu.diamond-view h2 a {
  text-decoration: none;
}
#series-menu.diamond-view ul {
  max-width: 1200px;
  -webkit-box-pack: center !important;
      -ms-flex-pack: center !important;
          justify-content: center !important;
}
#series-menu.diamond-view ul li {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  position: relative;
  -webkit-transition: linear 150ms opacity;
  transition: linear 150ms opacity;
  z-index: 5;
}
@media (min-width: 560px) {
  #series-menu.diamond-view ul li {
    width: 250px;
    padding: 0;
    margin: 0 5px;
  }
}
@media (min-width: 560px) {
  #series-menu.diamond-view.hover li {
    opacity: 0.5;
  }
  #series-menu.diamond-view.hover li:hover {
    opacity: 1;
  }
}
#series-menu.diamond-view li.break {
  display: none;
}
@media (min-width: 560px) and (max-width: 899px) {
  #series-menu.diamond-view.count-6 li:nth-child(3),
  #series-menu.diamond-view.count-6 li:nth-child(7),
  #series-menu.diamond-view.count-6 li:nth-child(9) {
    display: block;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    height: 0;
  }
  #series-menu.diamond-view.count-6 li:nth-child(4),
  #series-menu.diamond-view.count-6 li:nth-child(6),
  #series-menu.diamond-view.count-6 li:nth-child(8),
  #series-menu.diamond-view.count-6 li:nth-child(10),
  #series-menu.diamond-view.count-6 li:nth-child(12),
  #series-menu.diamond-view.count-6 li:nth-child(14) {
    z-index: 3;
    margin-top: -110px;
  }
}
@media (min-width: 900px) {
  #series-menu.diamond-view.count-6 li:nth-child(7) {
    display: block;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    height: 0;
  }
  #series-menu.diamond-view.count-6 li:nth-child(2),
  #series-menu.diamond-view.count-6 li:nth-child(4),
  #series-menu.diamond-view.count-6 li:nth-child(6) {
    position: relative;
    left: -65px;
  }
  #series-menu.diamond-view.count-6 li:nth-child(8),
  #series-menu.diamond-view.count-6 li:nth-child(10),
  #series-menu.diamond-view.count-6 li:nth-child(12) {
    z-index: 3;
    margin-top: -110px;
    position: relative;
    left: 65px;
  }
}
@media (min-width: 1000px) {
  #series-menu.diamond-view.count-6 {
    zoom: 1.2;
  }
}
@media (min-width: 1300px) {
  #series-menu.diamond-view.count-6 {
    zoom: 1.35;
  }
}
@media (min-width: 1600px) {
  #series-menu.diamond-view.count-6 {
    zoom: 1.5;
  }
}
@media (min-width: 560px) and (max-width: 819px) {
  #series-menu.diamond-view.count-5 li:nth-child(3),
  #series-menu.diamond-view.count-5 li:nth-child(9), #series-menu.diamond-view.count-7 li:nth-child(3),
  #series-menu.diamond-view.count-7 li:nth-child(9) {
    display: block;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    height: 0;
  }
  #series-menu.diamond-view.count-5 li:nth-child(4),
  #series-menu.diamond-view.count-5 li:nth-child(6),
  #series-menu.diamond-view.count-5 li:nth-child(8),
  #series-menu.diamond-view.count-5 li:nth-child(10),
  #series-menu.diamond-view.count-5 li:nth-child(12),
  #series-menu.diamond-view.count-5 li:nth-child(14), #series-menu.diamond-view.count-7 li:nth-child(4),
  #series-menu.diamond-view.count-7 li:nth-child(6),
  #series-menu.diamond-view.count-7 li:nth-child(8),
  #series-menu.diamond-view.count-7 li:nth-child(10),
  #series-menu.diamond-view.count-7 li:nth-child(12),
  #series-menu.diamond-view.count-7 li:nth-child(14) {
    z-index: 3;
    margin-top: -110px;
  }
}
@media (min-width: 820px) and (max-width: 1079px) {
  #series-menu.diamond-view.count-5 li:nth-child(5), #series-menu.diamond-view.count-7 li:nth-child(5) {
    display: block;
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
    height: 0;
  }
  #series-menu.diamond-view.count-5 li:nth-child(6),
  #series-menu.diamond-view.count-5 li:nth-child(8),
  #series-menu.diamond-view.count-5 li:nth-child(10),
  #series-menu.diamond-view.count-5 li:nth-child(12),
  #series-menu.diamond-view.count-5 li:nth-child(14), #series-menu.diamond-view.count-7 li:nth-child(6),
  #series-menu.diamond-view.count-7 li:nth-child(8),
  #series-menu.diamond-view.count-7 li:nth-child(10),
  #series-menu.diamond-view.count-7 li:nth-child(12),
  #series-menu.diamond-view.count-7 li:nth-child(14) {
    z-index: 3;
    margin-top: -110px;
  }
}
@media (min-width: 1080px) {
  #series-menu.diamond-view.count-5 li:nth-child(10),
  #series-menu.diamond-view.count-5 li:nth-child(12),
  #series-menu.diamond-view.count-5 li:nth-child(14), #series-menu.diamond-view.count-7 li:nth-child(10),
  #series-menu.diamond-view.count-7 li:nth-child(12),
  #series-menu.diamond-view.count-7 li:nth-child(14) {
    z-index: 3;
    margin-top: -110px;
  }
}
#series-menu.diamond-view div.diamond-border {
  background: #E3E0D6;
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
  -webkit-transition: top 200ms, right 200ms, max-width 200ms;
  transition: top 200ms, right 200ms, max-width 200ms;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px;
}
#series-menu.diamond-view .menu-item.large-callout div.diamond-border {
  background: #efd27d;
}
#series-menu.diamond-view img {
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}
@media (min-width: 560px) {
  #series-menu.diamond-view div.diamond-text {
    position: absolute;
    top: 10%;
    left: 10%;
    right: 10%;
    bottom: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    z-index: 10;
  }
}
#series-menu.diamond-view div.diamond-text span.title {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  line-height: 1;
  font-size: 1.25rem;
}
@media (min-width: 560px) {
  #series-menu.diamond-view div.diamond-text span.title {
    font-size: 1.45rem;
    display: block;
    color: #fff !important;
    color: #522145;
    text-shadow: 0 0 15px #000, 0 0 10px #000;
  }
  #series-menu.diamond-view div.diamond-text span.title.long {
    font-size: 1.25rem;
  }
}
#series-menu.diamond-view div.diamond-text span.date {
  display: block;
  font-weight: normal;
}
@media (min-width: 560px) {
  #series-menu.diamond-view div.diamond-text span.date {
    color: #333;
    margin-top: 0.5rem;
    background: rgba(255, 255, 255, 0.85);
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
  }
}
@media (max-width: 559px) {
  #series-menu.diamond-view ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  #series-menu.diamond-view li {
    width: 100%;
  }
  #series-menu.diamond-view .diamond-border {
    display: none !important;
  }
}

.concert-diamond-wrapper,
.concert-square-wrapper {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  z-index: -1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-transition: margin-top linear 200ms;
  transition: margin-top linear 200ms;
}
.concert-diamond-wrapper div.square-border,
.concert-square-wrapper div.square-border {
  background: #E3E0D6;
  max-width: 33%;
  padding: 15px;
  margin: 2%;
  line-height: 0;
  display: none;
}
@media (min-width: 1100px) {
  .concert-diamond-wrapper div.square-border,
  .concert-square-wrapper div.square-border {
    display: block;
  }
}
.concert-diamond-wrapper div.square-border img,
.concert-square-wrapper div.square-border img {
  margin: 0;
}
.concert-diamond-wrapper div.diamond-border,
.concert-square-wrapper div.diamond-border {
  background: #E3E0D6;
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
  max-width: 62%;
  position: relative;
  top: -220px;
  right: -60px;
  -webkit-transition: top 200ms, right 200ms, max-width 200ms;
  transition: top 200ms, right 200ms, max-width 200ms;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 30px;
}
@media (min-width: 1650px) {
  .concert-diamond-wrapper div.diamond-border,
  .concert-square-wrapper div.diamond-border {
    top: -270px;
    right: -110px;
  }
}
@media (max-width: 800px) {
  .concert-diamond-wrapper div.diamond-border,
  .concert-square-wrapper div.diamond-border {
    top: -175px;
    padding: 25px;
  }
}
@media (max-width: 600px) {
  .concert-diamond-wrapper div.diamond-border,
  .concert-square-wrapper div.diamond-border {
    top: -125px;
    padding: 20px;
  }
}
@media (max-width: 600px) {
  .concert-diamond-wrapper div.diamond-border,
  .concert-square-wrapper div.diamond-border {
    top: -75px;
  }
}
.concert-diamond-wrapper img.diamond,
.concert-square-wrapper img.diamond {
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}

section.concert-body {
  display: -ms-grid;
  display: grid;
  -ms-grid-rows: auto;
  grid-template-rows: auto;
  -ms-grid-columns: 25% 5% 70%;
  grid-template-columns: 25% 70%;
  -webkit-column-gap: 5%;
     -moz-column-gap: 5%;
          column-gap: 5%;
}

section.concert-body > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}

section.concert-body > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}
section.concert-body aside {
  position: relative;
  z-index: 100;
}
section.concert-body aside h5 {
  margin-bottom: 0;
}
section.concert-body.diamond {
  margin-top: -65px;
}
section.concert-body.diamond div.musicians {
  line-height: 1;
}
@media (max-width: 800px) {
  section.concert-body.diamond div.musicians div.musician {
    margin: 0 0.25em 0.25em;
    max-width: 30%;
  }
}
section.concert-body.diamond div.musicians div.musician-text {
  display: none;
}
@media (max-width: 1200px) {
  section.concert-body {
    -ms-grid-columns: 300px 50px auto;
    grid-template-columns: 300px auto;
    -webkit-column-gap: 50px;
       -moz-column-gap: 50px;
            column-gap: 50px;
  }
  section.concert-body .row.performance > .columns {
    display: block;
    width: auto;
  }
}
@media (max-width: 1000px) {
  section.concert-body {
    -ms-grid-columns: auto 547px;
    grid-template-columns: auto 547px;
  }
}
@media (max-width: 900px) {
  section.concert-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  section.concert-body aside {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    border-top: 1px solid #666366;
    margin-top: 1rem;
    padding-top: 3rem;
  }
}

@media all and (min-width: 901px) {
  .ticket-column {
    position: relative;
    top: -100px;
  }
}
@media all and (max-width: 600px) {
  #tickets .row.performance {
    padding-bottom: 0.875em !important;
  }
  #tickets .row.performance .columns {
    float: none;
  }
  #tickets .row.performance .ticket-level {
    padding: 0.5em 0;
  }
}
div.columns.tickets-not-available {
  position: relative;
  top: -50px;
}

div#tickets {
  background: #fff;
  padding: 0;
  -webkit-box-shadow: 0 0 20px #222;
          box-shadow: 0 0 20px #222;
  margin-bottom: 3rem;
  max-width: 800px;
}
div.modal div#tickets {
  -webkit-box-shadow: none;
          box-shadow: none;
  margin-bottom: 0;
  max-width: 100%;
}
div.modal div#tickets h2.concert-title {
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
div.modal div#tickets p.hide-on-checkout {
  margin: 0;
  text-align: center;
}
div.modal div#tickets div.performance .large-5 {
  width: 45%;
  padding-right: 0;
}
div.modal div#tickets div.performance .large-7 {
  width: 55%;
}
@media (max-width: 800px) {
  div.modal div#tickets div.performance {
    margin: 0;
  }
  div.modal div#tickets div.performance .large-5, div.modal div#tickets div.performance .large-7 {
    padding: 0;
  }
}
@media all and (max-width: 800px) {
  div.modal div#tickets {
    margin: 1rem;
    border: 2px solid #222;
    padding: 1rem;
  }
  div.modal div#tickets div.performance .large-5, div.modal div#tickets div.performance .large-7 {
    width: 100%;
  }
}
div#tickets .ticket-column > h2 {
  margin: 0;
  padding: 1rem 1.45rem 0;
}
div#tickets .ticket-column > h2 span.or {
  font-weight: normal;
  margin: 0 0.3em 0 0.25em;
}
div#tickets .ticket-column > h2 a.btn {
  font-weight: normal;
  vertical-align: middle;
}
@media (max-width: 800px) {
  div#tickets .ticket-column > h2 a.btn {
    padding: 0.75rem 1rem 0.6rem !important;
  }
  div#tickets .ticket-column > h2 a.btn span {
    display: none;
  }
}
@media (max-width: 600px) {
  div#tickets {
    font-size: 90%;
  }
}

div#ticket-popup .modal-contents {
  padding-right: 0;
}
@media (min-width: 800px) {
  div#ticket-popup .modal-contents div.checkout {
    margin-right: 2rem;
  }
}

div#tickets div.performance {
  padding: 1rem 0 1.2rem;
}
div#tickets div.performance p.venue {
  font-size: 90%;
  margin: 0.5em 0;
}
.ticket-column div#tickets div.performance {
  margin: 0 0.5rem;
}
div#tickets div.performance h3 {
  margin-top: 0.25rem;
}
div#tickets h2.performance-title {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 0;
  display: block;
  text-align: left;
  width: 100%;
}
div#tickets h2.performance-title + div.performance {
  padding-top: 0;
}
div#tickets.subscribe h2.performance-title {
  margin-top: 1rem;
}
div#tickets div.ticket-level {
  font-size: 1.5em;
  line-height: 1.75;
  padding: 0 5px;
}
@media (max-width: 600px) {
  div#tickets div.ticket-level {
    font-size: 1em;
  }
}

.bundle-message {
  display: none;
  font-size: 1rem;
  background: #7c8465;
  color: #fff;
  padding: 1em 1.5em;
  font-weight: bold;
  text-align: center;
}
div.modal .bundle-message {
  margin: 0.5em 2em 1.5em;
}

div#tickets div.ticket-level .name_and_price,
div#tickets div.ticket-level .quantity_selector {
  display: inline-block;
  padding-right: 1em;
  position: relative;
}

div#tickets div.ticket-level .name_and_price {
  -moz-user-select: none;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  padding-right: 0;
  line-height: 1.2;
  vertical-align: top;
  padding-top: 0.55rem;
}
div#tickets div.ticket-level .name_and_price span {
  cursor: pointer;
}

div#tickets div.ticket-level .name_and_price .price,
div#tickets div.ticket-level .name_and_price .new-price {
  color: #666;
  font-size: 80%;
  display: inline-block;
  margin-left: 0.25em;
}

div#tickets div.ticket-level a.whats-this {
  font-size: 1rem;
}
@media all and (max-width: 800px) {
  div#tickets div.ticket-level a.whats-this {
    display: inline-block;
    margin-top: 0.5rem;
  }
}

div#tickets div.ticket-level.discounted {
  background: #fffacd;
}

div#tickets .row.performance.bundle div.ticket-level.discounted {
  background: transparent;
}

div#tickets div.ticket-level .name_and_price .new-price {
  color: #333;
}

div#tickets div.ticket-level.discounted .name_and_price .price {
  color: #f00;
  text-decoration: line-through;
  padding-right: 4px;
}

div#tickets div.ticket-level .name_and_price .sold_out {
  background-color: #580455;
  color: #fcfeff;
  padding: 2px 4px;
  position: absolute;
  left: 5px;
  top: 15%;
  font-family: "Raleway", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 60%;
  letter-spacing: 0.5px;
  -webkit-transform: rotate(-3deg);
          transform: rotate(-3deg);
  -webkit-animation: fadein 3s; /* Safari, Chrome and Opera > 12.1 */ /* Firefox < 16 */ /* Internet Explorer */ /* Opera < 12.1 */
  animation: fadein 3s;
}

@keyframes fadein {
  0% {
    opacity: 0;
    -webkit-transform: rotate(4deg);
            transform: rotate(4deg);
  }
  33% {
    opacity: 0;
    -webkit-transform: rotate(4deg);
            transform: rotate(4deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: rotate(-3deg);
            transform: rotate(-3deg);
  }
}
/* Firefox < 16 */
/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
  0% {
    opacity: 0;
    -webkit-transform: rotate(4deg);
            transform: rotate(4deg);
  }
  33% {
    opacity: 0;
    -webkit-transform: rotate(4deg);
            transform: rotate(4deg);
  }
  100% {
    opacity: 1;
    -webkit-transform: rotate(-3deg);
            transform: rotate(-3deg);
  }
}
/* Internet Explorer */
/* Opera < 12.1 */
div#tickets div.ticket-level .quantity_selector span.quantity {
  display: inline-block;
  min-width: 1em;
  text-align: center;
  margin: 0 0.25em;
}

div#tickets div.ticket-level .quantity_selector a {
  display: inline-block;
  background: #90408f;
  color: #fff;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  text-align: center;
  padding: 6px 0;
  vertical-align: middle;
  text-decoration: none;
}

div#tickets div.ticket-level .quantity_selector a.disabled {
  opacity: 0.5;
  cursor: inherit;
}

div#tickets div.ticket-level .quantity_selector a:not(.disabled):hover {
  background: #580455;
}

div#tickets div.checkout, #add-comp-form {
  background: #666366;
  color: #fff;
  padding: 1.2rem;
  font-size: 1.5rem;
  display: none;
}
@media (max-width: 600px) {
  div#tickets div.checkout, #add-comp-form {
    font-size: 1.125rem;
  }
}

#add-comp-form {
  font-size: 1.125rem;
  background: #ddd;
}

section.comp-confirmation {
  background: #bfb;
  padding: 2rem;
  font-size: 1.5rem;
  text-align: center;
}

div#tickets div.checkout div.checkout-total,
div#tickets div.checkout div.checkout-button {
  display: inline-block;
}
@media (max-width: 600px) {
  div#tickets div.checkout div.checkout-total,
  div#tickets div.checkout div.checkout-button {
    width: auto !important;
  }
}
div#tickets div.checkout div.checkout-total {
  width: 41.66667%;
  text-align: right;
}
div#tickets div.checkout span.total {
  font-weight: bold;
}
div#tickets div.checkout button {
  margin-left: 1.5rem;
  font-size: 1.25rem;
}
@media (max-width: 600px) {
  div#tickets div.checkout button {
    padding: 0.75rem 1rem 0.6rem !important;
  }
}

@media all and (min-width: 499px) {
  div#tickets div.checkout button.disabled {
    background: #777 !important;
    cursor: inherit;
  }
}
div#tickets.not-available {
  padding: 1.35rem;
  font-size: 1.25rem;
  text-align: center;
}

.concert-body .description {
  margin-bottom: 3rem;
}

p.venue_notes,
div#ticket-messages p {
  font-size: 90%;
}

#series-menu {
  margin-top: 2rem;
  padding: 3rem 0;
  text-align: center;
}
#series-menu > h2 {
  font-size: 2rem;
}
#series-menu ul {
  margin: 0 auto;
  padding: 0 1rem;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  max-width: 1525px;
}
#series-menu ul li {
  padding: 1em;
  -ms-flex-preferred-size: auto;
      flex-basis: auto;
  -webkit-box-flex: 0;
      -ms-flex-positive: 0;
          flex-grow: 0;
  width: 325px;
}
@media (min-width: 801px) {
  #series-menu ul li a {
    font-size: 125%;
  }
}
#series-menu ul li a {
  text-decoration: none;
}
#series-menu ul li img {
  display: block;
  margin: 0 auto;
  -webkit-transition: 300ms -webkit-filter;
  transition: 300ms -webkit-filter;
  transition: 300ms filter;
  transition: 300ms filter, 300ms -webkit-filter;
}
#series-menu ul li a:hover img {
  -webkit-filter: grayscale(0%);
          filter: grayscale(0%);
}
#series-menu ul li.current-menu-item a {
  text-decoration: none;
  color: #BD8C00;
}
#series-menu ul p.series-menu-date {
  margin: 0 0 0.5em;
}
@media (max-width: 1500px) {
  #series-menu ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media (max-width: 1100px) {
  #series-menu ul li {
    width: 250px;
  }
  #series-menu ul span.display-date-day {
    display: none;
  }
}

div.subscription-page-preview #series-menu {
  padding: 1rem 0;
}
@media (max-width: 500px) {
  div.subscription-page-preview #series-menu ul p {
    margin: 0;
  }
  div.subscription-page-preview #series-menu ul li {
    display: block;
  }
}

div.share-image {
  position: relative;
  line-height: 0;
  margin-bottom: 0.5em;
  min-height: 50px;
}
div.share-image img {
  margin: 0;
  padding: 0;
}
div.share-image:hover {
  opacity: 0.8;
}
div.share-image:hover .dashicons {
  opacity: 1;
}
div.share-image .dashicons {
  vertical-align: middle;
  position: absolute;
  top: 5px;
  right: 5px;
  color: #fff !important;
  opacity: 0.7;
}

div.share-caption {
  position: absolute;
  left: 0;
  bottom: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  cursor: pointer;
  padding: 0.5em;
}
div.share-caption h4, div.share-caption h6 {
  margin: 0;
  line-height: 1.6;
}

h1.ticket-thank-you,
section.ticket-thank-you {
  max-width: 1400px;
  margin: 0 auto;
}

section.ticket-thank-you > p {
  font-size: 140%;
}

div.digital-concert-header {
  background: #000;
  padding: 50px 0 30px;
}
div.digital-concert-header h1 {
  color: #fcfeff;
  text-align: center;
  max-width: 100%;
  margin: 0;
  padding: 0;
  text-shadow: none;
}
div.digital-concert-header div.digital-ticket-name {
  text-align: center;
  color: #BD8C00;
  padding-top: 0.5em;
  font-size: 1.25rem;
}

div.digital-concert-video {
  background: #000;
}
div.digital-concert-video > div.flex-video {
  max-width: 1400px;
  margin: 0 auto;
  padding-bottom: 41%;
}

article.digital-concert-details {
  max-width: 800px;
  margin: 40px auto;
}

div.digital-concert-date-and-venue {
  text-align: center;
  font-size: 125%;
}

div.digital-concert-error {
  text-align: center;
  padding: 50px;
}
div.digital-concert-error p {
  margin: 0;
}

body.page-template-page-blank section {
  padding: 1rem;
}

div.musician-preview {
  margin-bottom: 5em;
}
div.musician-preview h2 {
  text-align: center;
  margin-bottom: 5em;
}
div.musician-preview p {
  text-align: center;
}
div.musician-preview .musicians {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
div.musician-preview .little-space,
div.musician-preview .compressed,
div.musician-preview .big {
  margin: 10em 0;
}
div.musician-preview .little-space .musician,
div.musician-preview .compressed .musician,
div.musician-preview .big .musician {
  margin: 0;
  line-height: 0;
}
div.musician-preview .little-space .musician-text,
div.musician-preview .compressed .musician-text,
div.musician-preview .big .musician-text {
  display: none;
}
div.musician-preview .little-space .musician {
  margin: 0.5em !important;
}

div#tickets div.performance.combined {
  padding: 0.2rem 0 0.4rem;
}
div#tickets div.performance.combined + div.performance.combined {
  margin-top: 0;
  padding: 0 0 0.6em;
}
div#tickets div.performance.combined + div.performance.combined .performance-title {
  display: none;
}
div#tickets div.performance.combined + div.performance.combined .performance-date {
  margin-top: 1em;
}
@media (max-width: 800px) {
  div#tickets div.performance.combined {
    margin: 0;
  }
}
div#tickets div.performance.combined h2, div#tickets div.performance.combined h3 {
  text-transform: none;
  letter-spacing: 0;
  margin: 0;
  line-height: 1.3;
  font-weight: normal;
  text-align: right;
}
@media (max-width: 800px) {
  div#tickets div.performance.combined h2, div#tickets div.performance.combined h3 {
    text-align: center;
  }
}
div#tickets div.performance.combined h2 {
  font-weight: bold;
  font-size: 1.25rem;
}
div#tickets div.performance.combined h3 {
  font-size: 1rem;
  line-height: 1;
}
div#tickets div.performance.combined .type-and-qty {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media (max-width: 800px) {
  div#tickets div.performance.combined .type-and-qty {
    margin-top: 0.5em;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
div#tickets div.performance.combined select {
  padding: 0.75em 0em 0.75em 0.4em;
  margin-right: 1em;
  width: 275px;
}
@media (max-width: 800px) {
  div#tickets div.performance.combined select {
    width: 100%;
    margin: 0;
  }
}
div#tickets div.performance.combined div.ticket-level {
  display: none;
}
div#tickets div.performance.combined div.ticket-level.active {
  display: block;
}
div#tickets div.performance.combined .quantity_selector {
  padding-right: 0;
}
div#tickets div.performance.combined .sold_out {
  background-color: #580455;
  color: #fcfeff;
  padding: 2px 8px;
  font-family: "Raleway", Helvetica, Arial, sans-serif;
  text-transform: uppercase;
  font-weight: bold;
  font-size: 80%;
  letter-spacing: 0.5px;
  -webkit-transform: rotate(-3deg);
          transform: rotate(-3deg);
}

@-webkit-keyframes goldPulse {
  0%, 100% {
    background-position: 85% 85%;
  }
  50% {
    background-position: 25% 75%;
  }
}

@keyframes goldPulse {
  0%, 100% {
    background-position: 85% 85%;
  }
  50% {
    background-position: 25% 75%;
  }
}
.season-concert-image {
  line-height: 0;
}
.season-concert-image .diamond {
  background: #e3e0d6;
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 20px;
  position: relative;
  top: -0.5rem;
}
.large-callout .season-concert-image .diamond {
  background: radial-gradient(circle, #f8e3a3 0%, #e1b865 25%, #c89f45 45%, #b38628 60%, #c89f45 75%, #e1b865 90%, #f8e3a3 100%);
  background-size: 200% 200%;
  -webkit-animation: goldPulse 8s ease-in-out infinite;
          animation: goldPulse 8s ease-in-out infinite;
}
.season-concert-image .diamond img {
  max-width: 100%;
  clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);
}
@media all and (max-width: 1200px) {
  .season-concert-image .diamond {
    top: 0;
    padding: 15px;
  }
}
@media all and (max-width: 1000px) {
  .season-concert-image .diamond {
    top: 1em;
  }
}

#subscribe-preview .link-out {
  color: #666;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem;
}
#subscribe-preview .link-out .large-5.columns {
  text-align: right;
}
@media (max-width: 800px) {
  #subscribe-preview .link-out {
    margin-left: 0;
    margin-right: 0;
  }
  #subscribe-preview .link-out .columns {
    text-align: center !important;
    line-height: 1.2;
  }
}
#subscribe-preview .link-out p, #subscribe-preview .link-out span {
  margin: 0;
  font-size: 80%;
}
#subscribe-preview .link-out a {
  font-weight: inherit;
  color: inherit;
}

div.subscribe-packages {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  z-index: 10;
}
div.subscribe-packages .btn {
  font-size: 90%;
  padding: 0.75rem 1rem 0.6rem !important;
  margin: 0.25rem;
  line-height: 1.3;
}
div.subscribe-packages.subscribe-packages-other {
  margin-top: 0.3rem;
  margin-bottom: 0.5rem;
}
div.subscribe-packages.subscribe-packages-other .btn {
  font-size: 100%;
  margin: 0.5rem;
}
div.subscribe-packages .btn-active {
  background: #522145;
}
div.subscribe-packages + div {
  margin: 0 1em;
}
div.subscribe-packages .seating-option {
  text-align: center;
  border: 3px solid #DDCBA4;
  margin: 0 0.5em;
  padding: 0.5em 0.25em 0.25em;
}
@media (max-width: 600px) {
  div.subscribe-packages .seating-option {
    margin-bottom: 0.5em;
  }
}
div.subscribe-packages .seating-option.prime {
  background-color: #eeefee;
  border-color: #C8C9C7;
}
div.subscribe-packages .seating-option.vip {
  background-color: #f2ebdc;
  border-color: #BD8C00;
}
div.subscribe-packages .seating-option .seating-option-name {
  font-size: 1.125em;
  line-height: 1.3;
}
div.subscribe-packages .seating-option .seating-option-desc {
  font-size: 0.9rem;
  line-height: 1.3;
  display: block;
}

div#tickets.subscribe {
  max-width: 1200px;
  margin: 2rem auto;
  -webkit-box-shadow: none;
          box-shadow: none;
}
div#tickets.subscribe .season-concert {
  margin: 0 0 3rem;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2rem 2fr;
  grid-template-columns: 1fr 2rem 2fr;
  -ms-grid-rows: 1fr;
  grid-template-rows: 1fr;
}
div#tickets.subscribe .season-concert > *:nth-child(1) {
  -ms-grid-row: 1;
  -ms-grid-column: 1;
}
div#tickets.subscribe .season-concert > *:nth-child(2) {
  -ms-grid-row: 1;
  -ms-grid-column: 2;
}
div#tickets.subscribe .season-concert > *:nth-child(3) {
  -ms-grid-row: 1;
  -ms-grid-column: 3;
}
@media (min-width: 600px) {
  div#tickets.subscribe .season-concert {
    margin-bottom: 1rem;
  }
}
div#tickets.subscribe .season-concert.presenter-callout {
  margin-bottom: 3rem !important;
  margin-top: 2rem;
}
div#tickets.subscribe .season-concert .season-concert-image {
  -ms-grid-column: 1;
  -ms-grid-column-span: 1;
  grid-column: 1/2;
  display: none;
}
@media (min-width: 600px) {
  div#tickets.subscribe .season-concert .season-concert-image {
    display: block;
  }
}
div#tickets.subscribe .season-concert .season-concert-info {
  -ms-grid-column: 1;
  -ms-grid-column-span: 3;
  grid-column: 1/4;
}
@media (min-width: 600px) {
  div#tickets.subscribe .season-concert .season-concert-info {
    -ms-grid-column: 3;
    -ms-grid-column-span: 1;
    grid-column: 3/4;
  }
}
div#tickets.subscribe .season-concert .season-concert-info p {
  font-size: 1.25rem;
  margin: 0 0 0.5em;
}
@media (max-width: 1200px) {
  div#tickets.subscribe .season-concert .season-concert-info p {
    font-size: 1rem;
  }
}
div#tickets.subscribe .season-concert .season-concert-info p.season-concert-presented {
  margin-bottom: 0.125em;
}
@media (max-width: 600px) {
  div#tickets.subscribe .season-concert .season-concert-info span.display-date-day {
    display: none;
  }
}
div#tickets.subscribe .season-concert .season-concert-info .season-concert-venue {
  margin-bottom: 0.75rem;
  font-size: 1rem;
}
div#tickets.subscribe .season-concert .season-concert-info .season-concert-venue br {
  display: inline;
  content: "";
}
div#tickets.subscribe .season-concert .season-concert-info .season-concert-venue br:before {
  display: inline;
  content: ", ";
}
@media (max-width: 800px) {
  div#tickets.subscribe .season-concert .season-concert-info .season-concert-venue {
    font-size: 0.75rem;
  }
}
div#tickets.subscribe .season-concert.large-callout {
  background-color: #fbfbfb;
  margin-bottom: 3rem;
  padding: 2rem;
  border: 4px solid #BD8C00;
  position: relative;
}
@media screen and (min-width: 1350px) {
  div#tickets.subscribe .season-concert.large-callout {
    padding: 2rem 2.5rem;
    margin-left: -2.5rem;
    margin-right: -2.5rem;
  }
}
div#tickets.subscribe .season-concert.large-callout .diamond {
  top: 0.75em !important;
}
div#tickets.subscribe .season-concert.large-callout:before {
  content: "SPECIAL PRESENTATION";
  display: block;
  position: absolute;
  top: -10px;
  left: -10px;
  font-weight: bold;
  background: #BD8C00;
  color: #fff;
  padding: 4px 10px 3px;
  font-size: 1.25rem;
}
@media screen and (max-width: 600px) {
  div#tickets.subscribe .season-concert.large-callout {
    padding-top: 3rem;
  }
}
div#tickets.subscribe .season-concert.presenter-callout {
  background-color: #eeefee;
  padding: 1rem 0.5rem;
}
div#tickets.subscribe .season-concert.presenter-callout .season-concert-image {
  background-size: contain;
  background-repeat: no-repeat;
}
div#tickets.subscribe .season-concert.presenter-callout p {
  font-size: 1rem;
}
div#tickets.subscribe .season-concert.presenter-callout p.season-concert-presented {
  font-weight: bold;
}
div#tickets.subscribe .season-concert#markus-passion {
  background-color: #fff7e1;
  border: 4px solid #BD8C00;
  position: relative;
}
div#tickets.subscribe .season-concert#markus-passion:before {
  content: "WORLD PREMIERE";
  display: block;
  position: absolute;
  top: -10px;
  left: -10px;
  font-weight: bold;
  background: #BD8C00;
  color: #fff;
  padding: 4px 10px 3px;
  font-size: 1.25rem;
}
@media (max-width: 600px) {
  div#tickets.subscribe .season-concert#markus-passion .season-concert-info {
    padding-top: 1rem;
  }
}
div#tickets.subscribe .season-concert#markus-passion p {
  font-size: 1.125rem;
}
div#tickets.subscribe .season-concert .season-concert-title {
  font-size: 2rem;
  line-height: 2.5rem;
  margin: 0;
  padding: 0;
  color: #522145;
}
div#tickets.subscribe .season-concert .season-concert-title a {
  text-decoration: none;
  scroll-margin-top: 220px;
}
div#tickets.subscribe .season-concert .season-concert-title a:focus {
  outline: 0;
  text-decoration: underline !important;
}
@media (max-width: 800px) {
  div#tickets.subscribe .season-concert .season-concert-title {
    font-size: 1.5rem;
    line-height: 1.5rem;
  }
}
div#tickets.subscribe .season-concert .season-concert-tickets {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
div#tickets.subscribe .season-concert .row.performance .columns {
  float: none;
  width: 100%;
}
@media (max-width: 800px) {
  div#tickets.subscribe .season-concert .row.performance {
    margin: 0 !important;
    padding-bottom: 0 !important;
  }
  div#tickets.subscribe .season-concert .row.performance .columns {
    padding: 0 !important;
  }
}
div#tickets.subscribe div.early-bird {
  text-align: center;
  font-size: 1.125rem;
  background: #252425;
  margin: 0.25rem 1rem 0.75rem 0;
  padding: 1.5rem 1rem 1.2rem;
  color: #fff;
  line-height: 1.3;
  float: left;
  max-width: 18rem;
}
div#tickets.subscribe div.early-bird h5 {
  display: inline;
  color: inherit;
}
@media (max-width: 1200px) {
  div#tickets.subscribe div.early-bird {
    float: none;
    margin: 0 1rem 1rem;
    max-width: 100%;
  }
}
div#tickets.subscribe div.checkout {
  display: block !important;
  text-align: center;
  padding: 1rem;
  background: #BD8C00;
  margin: 1rem -2rem -2rem;
}
body.high-contrast div#tickets.subscribe div.checkout {
  background: #522145;
}
div#tickets.subscribe div.checkout div.checkout-total {
  width: 100%;
  text-align: center;
}
div#tickets.subscribe div.checkout div.checkout-total.discounted span.total {
  font-weight: normal;
  position: relative;
  margin: 0 0.25em;
  padding: 0 0.25em;
}
div#tickets.subscribe div.checkout div.checkout-total.discounted span.total:before {
  position: absolute;
  content: "";
  left: 0;
  top: 45%;
  right: 0;
  border-top: 2px solid;
  border-color: #cc0000;
  -webkit-transform: rotate(-10deg);
  transform: rotate(-10deg);
}
div#tickets.subscribe div.checkout div.checkout-total.discounted span.total:after {
  position: absolute;
  content: "";
  left: 0;
  top: 42%;
  right: 0;
  border-top: 2px solid;
  border-color: #cc0000;
  -webkit-transform: rotate(14deg);
  transform: rotate(14deg);
}
div#tickets.subscribe div.checkout div.checkout-total.discounted span.discounted-total {
  font-weight: bold;
}
div#tickets.subscribe div.checkout button {
  background-color: #522145;
  display: inline-block;
  margin-left: 0;
}
div#tickets.subscribe div.checkout button:hover {
  background-color: #763064;
}

button#subscribe-confirm {
  margin: 0 auto;
  display: block;
}
button#subscribe-confirm.btn-large {
  font-size: 1.25em;
}

#subscribe-preview p {
  margin: 0 0 1em;
}
@media (max-width: 800px) {
  #subscribe-preview {
    padding: 1rem;
  }
}
#subscribe-preview .sub-form-combined {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#subscribe-preview .sub-form-combined div.content {
  width: 35%;
}
#subscribe-preview .sub-form-combined.sub-form-header {
  font-size: 0.875em;
}
#subscribe-preview .season-concert-tickets {
  margin-bottom: 0.75em;
}
#subscribe-preview #subscribe-preview-text ul {
  padding: 0;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
#subscribe-preview #subscribe-preview-text li {
  padding: 1em;
  width: 48%;
  margin: 1%;
  background: #eeefee;
}
@media (max-width: 800px) {
  #subscribe-preview #subscribe-preview-text li {
    width: 100%;
  }
}

.donation-form.donation-addon {
  font-size: 1.25rem;
  margin: 0.5rem 1rem;
  padding: 0.75rem;
}
.donation-form.donation-addon div.donation-addon-inner {
  max-width: 500px;
  margin: 0 auto;
}
.donation-form.donation-addon label {
  display: inline;
}
.donation-form.donation-addon #donateAmount {
  width: 4em;
  text-align: center;
}
.donation-form.donation-addon.ticket-donation-form {
  font-size: 1rem;
  margin: 0 0 1rem;
  -webkit-box-shadow: 0 0 0 0 #ead18c;
          box-shadow: 0 0 0 0 #ead18c;
  -webkit-transition: -webkit-box-shadow 300ms;
  transition: -webkit-box-shadow 300ms;
  transition: box-shadow 300ms;
  transition: box-shadow 300ms, -webkit-box-shadow 300ms;
}
.donation-form.donation-addon.ticket-donation-form div.donation-addon-inner {
  max-width: 100%;
  position: relative;
}
.donation-form.donation-addon.ticket-donation-form.enabled {
  -webkit-box-shadow: 0 0 10px 3px #ead18c;
          box-shadow: 0 0 10px 3px #ead18c;
}
@media (max-width: 800px) {
  .donation-form.donation-addon.ticket-donation-form div.donation-addon-inner {
    font-size: 90%;
    padding-left: 50px;
    text-align: left;
  }
  .donation-form.donation-addon.ticket-donation-form div.donation-addon-inner br {
    display: none;
  }
  .donation-form.donation-addon.ticket-donation-form input.styled-checkbox + label:before {
    position: absolute;
    top: 5px;
    left: 5px;
  }
}

@media (min-width: 801px) {
  body:before {
    position: fixed;
    z-index: -1;
    content: " ";
    background: rgba(0, 0, 0, 0.85);
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    -webkit-transition: opacity 250ms;
    transition: opacity 250ms;
  }
  body.modal-open:before {
    z-index: 100;
    opacity: 1;
  }
}
[data-modal] {
  cursor: pointer;
}

.modal {
  padding: 2rem;
}
.modal#ticket-popup {
  padding: 0;
}
@media (max-width: 800px) {
  .modal {
    display: none;
  }
  .modal.modal-open {
    display: block;
  }
}
@media (min-width: 801px) {
  .modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    opacity: 0;
    overflow: hidden;
  }
  .modal .modal-contents {
    background: #fff;
    border-radius: 5px;
    border: 4px solid #BD8C00;
    padding: 2rem;
    max-width: 880px;
    margin: 2rem auto;
    position: relative;
    transition: -webkit-transform 0.3s ease-out;
    -webkit-transition: -webkit-transform 0.3s ease-out;
    transition: transform 0.3s ease-out;
    transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
    -webkit-transform: translate(0, -50px);
    transform: translate(0, -50px);
  }
  .modal.modal-open {
    overflow-x: hidden;
    overflow-y: auto;
    z-index: 101;
    opacity: 1;
  }
  .modal.modal-open .modal-contents {
    -webkit-transform: none;
    transform: none;
  }
  .modal.modal-small .modal-contents {
    max-width: 400px;
  }
}
.modal:focus {
  outline: 0;
}
.modal .modal-close {
  color: #fff;
  padding: 0;
  font-size: 1.25rem;
  width: 2.2rem;
  height: 2.2rem;
  text-align: center;
  position: absolute;
  top: 2px;
  right: 2px;
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.modal .modal-close:before {
  content: "×";
  display: inline-block;
}
@media (max-width: 800px) {
  .modal .modal-close {
    display: none;
  }
}

.loader-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  z-index: -1;
  background: rgba(0, 0, 0, 0.85);
  -webkit-transition: opacity 250ms;
  transition: opacity 250ms;
  pointer-events: none;
}
.loader-wrapper.loader-show {
  z-index: 2000;
  opacity: 1;
}
.loader-wrapper .loader-text {
  position: absolute;
  text-align: center;
  top: 50%;
  left: 50%;
  margin-top: 125px;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  color: #fff;
  font-size: 1rem;
}

.loader {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  width: 100px;
  height: 100px;
  -webkit-animation: loader-animate 1s linear infinite;
          animation: loader-animate 1s linear infinite;
}
.loader span {
  position: absolute;
  width: 50px;
  height: 50px;
  background: #BD8C00;
  -webkit-animation: loader-rotate 1s linear infinite;
          animation: loader-rotate 1s linear infinite;
}
.loader span:nth-child(1) {
  top: 0;
  left: 0;
}
.loader span:nth-child(2) {
  top: 0;
  right: 0;
}
.loader span:nth-child(3) {
  bottom: 0;
  left: 0;
}
.loader span:nth-child(4) {
  bottom: 0;
  right: 0;
}

@-webkit-keyframes loader-animate {
  0% {
    width: 100px;
    height: 100px;
  }
  10% {
    width: 100px;
    height: 100px;
  }
  50% {
    width: 150px;
    height: 150px;
  }
  90% {
    width: 100px;
    height: 100px;
  }
  100% {
    width: 100px;
    height: 100px;
  }
}

@keyframes loader-animate {
  0% {
    width: 100px;
    height: 100px;
  }
  10% {
    width: 100px;
    height: 100px;
  }
  50% {
    width: 150px;
    height: 150px;
  }
  90% {
    width: 100px;
    height: 100px;
  }
  100% {
    width: 100px;
    height: 100px;
  }
}
@-webkit-keyframes loader-rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  10% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  60% {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  90% {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  100% {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}
@keyframes loader-rotate {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  10% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
  }
  60% {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  90% {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
  100% {
    -webkit-transform: rotate(90deg);
            transform: rotate(90deg);
  }
}
ul.portfolio-filter {
  border: solid 1px #BD8C00;
  border-width: 1px 1px 0 1px;
  margin: 0;
  padding: 0.5em;
}
ul.portfolio-filter li {
  display: inline;
}
ul.portfolio-filter li a {
  padding: 0.3em 0.5em 0.2em;
  border-radius: 0.25em;
  font-weight: bold;
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
}
ul.portfolio-filter li a.current {
  color: #fff;
  background: #90408f;
}

h2.past-performances {
  margin-top: 1em;
}

.calendar {
  border: solid #BD8C00;
  border-width: 0 1px 1px;
}
.calendar .event {
  border: solid #BD8C00;
  border-width: 1px 0 0;
  padding: 0.5em 1em 0.25em;
}
.calendar .event p {
  margin: 0.5em 1em;
}
.calendar .calendar-event-title {
  color: #522145;
}
@media (min-width: 801px) {
  .calendar .calendar-event-title {
    font-size: 150%;
  }
}
.calendar .header {
  margin: 0;
}
@media (min-width: 801px) {
  .calendar .header {
    text-align: right;
    float: right;
    max-width: 50%;
  }
}
.calendar p.venue {
  color: #555;
  font-weight: bold;
  font-size: 90%;
}

@media (max-width: 640px) {
  ul.portfolio-filter li {
    display: inline-block;
  }
}
ul.portfolio-filter,
.calendar {
  max-width: 800px;
  background: #fff;
}

section.virtual-season h4 {
  margin-top: 3em;
}
section.virtual-season > .row:first-child > .columns > h4 {
  margin-top: 0;
}
section.virtual-season div.credits {
  font-size: 90%;
  line-height: 1.4;
  padding-bottom: 1.5em;
}
section.virtual-season div.credits ul {
  margin: 0;
  list-style: none;
  line-height: inherit;
  font-size: inherit;
  text-align: left;
}
section.virtual-season div.credits p {
  line-height: inherit;
  font-size: inherit;
  text-align: left;
}
section.virtual-season div.credits li.space-above {
  margin-top: 1em;
}
section.virtual-season .show-texts {
  margin: 2em 0;
  display: inline-block;
}
section.virtual-season .title {
  text-align: justify;
  margin-bottom: -0.75em;
}
section.virtual-season .title:after {
  content: "";
  display: inline-block;
  width: 100%;
}
section.virtual-season .title span {
  display: inline-block;
}
section.virtual-season .title span:first-child {
  margin-right: 1em;
}
section.virtual-season .texts {
  max-width: 55em;
  margin: 1em auto;
  border: 1px solid #333;
  padding: 1em 2em;
  line-height: 1.2;
}
section.virtual-season .texts h5 {
  margin-top: 0.75em;
}
section.virtual-season .texts .small-6.columns:first-child {
  padding-left: 2em;
}
section.virtual-season .texts .close {
  display: inline-block;
  font-size: 1em;
  margin-top: 1em;
}

section.virtual-season-support div.row {
  max-width: 70em;
}
section.virtual-season-support .donation-form {
  width: 100%;
  margin: 1em 0;
  padding: 1em 2em;
}
section.virtual-season-support .donation-form label {
  font-size: 1.75em;
}
section.virtual-season-support .donation-form label.inline {
  font-size: 1em;
}
section.virtual-season-support .donation-form .name-and-email {
  max-width: 700px;
  margin: 1em auto 0;
}
section.virtual-season-support .donation-form #donateButton {
  font-size: 1.5em;
}
section.virtual-season-support .donation-form .note {
  margin-top: 1em;
}

@media (max-width: 640px) {
  section.virtual-season .texts {
    padding: 1em 0;
  }
  section.virtual-season .texts .small-6.columns:first-child {
    padding-left: 1.5em;
  }
}
@media (max-width: 800px) {
  body.page-id-3888 div.row {
    margin: 0;
  }
  body.page-id-3888 div.large-6.columns {
    padding: 0;
  }
}

.raffle-form {
  background: url(/wp-content/themes/sebastians2021/images/pattern-gold.svg);
  background-size: 2400px 2400px;
  border-radius: 4px;
  padding: 2rem;
  text-align: center;
  margin-bottom: 2rem;
}
@media (max-width: 800px) {
  .raffle-form {
    padding: 1rem;
  }
}
.raffle-form .raffle-form-inner {
  background: rgba(255, 255, 255, 0.875);
  padding: 2rem;
  color: #1c1d1c;
  border-radius: 4px;
}
.raffle-form input {
  padding: 0.75rem 0.5rem 0.6rem;
  border: 2px solid #522145;
}
.raffle-form form {
  margin: 0 0 2em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.raffle-form form input, .raffle-form form button {
  margin: 0.3rem;
}
.raffle-form ul {
  margin: 0;
  padding: 0;
}
@media (max-width: 800px) {
  .raffle-form ul {
    text-align: left;
    margin-top: 0.5em;
  }
}
.raffle-form ul li {
  list-style: none;
}
@media (max-width: 800px) {
  .raffle-form ul li {
    list-style: disc;
    font-size: 90%;
  }
}
.raffle-form h2 {
  color: #522145;
  font-size: 2em;
}
@media (max-width: 800px) {
  .raffle-form h2 {
    font-size: 1.5em;
  }
}
.raffle-form button.raffle-submit {
  background: #522145;
  vertical-align: top;
  padding: 0.8rem 2rem;
}

div.summer-watch-portal-concert {
  margin-bottom: 3rem;
  padding-bottom: 3rem;
  border-bottom: 2px solid #C8C9C7;
}
div.summer-watch-portal-concert .flex-video.widescreen {
  padding-bottom: 56%;
}
div.summer-watch-portal-concert .flex-video.widescreen + .flex-video {
  margin-top: 2rem;
}
div.summer-watch-portal-concert .concert-date {
  margin: 0;
}
div.summer-watch-portal-concert .concert-title {
  color: #522145;
  font-size: 2em;
}

.page-password {
  text-align: center;
  margin: 0 auto;
  display: inline-block;
  max-width: 320px;
  width: 100%;
  background: url(/wp-content/themes/sebastians2021/images/pattern-purple.svg);
  background-size: 2400px 2400px;
  color: #fff;
  border-radius: 4px;
  padding: 1.25rem 1rem;
}
.page-password input[type=password] {
  margin-bottom: 10px;
}

main section.splide {
  max-width: 100%;
  padding: 0;
  margin-bottom: 3em;
}

.splide .project-text-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
}
@media all and (max-width: 800px) {
  .splide .project-text-wrapper {
    position: static;
    background: #111;
  }
}

.splide .project-text {
  max-width: 52em;
  pointer-events: auto;
  padding: 1.4em 1.4em 0;
  background: rgba(0, 0, 0, 0.75);
  color: #fff;
  text-align: center;
}
.splide .project-text h2 {
  font-size: 3em;
  margin: 0;
  padding: 0;
  line-height: 1;
}
@media all and (max-width: 800px) {
  .splide .project-text h2 {
    font-size: 2em;
  }
}
.splide .project-text .credit {
  font-size: 0.75em;
  font-style: italic;
  color: #999;
}
@media all and (max-width: 800px) {
  .splide .project-text {
    text-align: left;
  }
}

.splide img {
  max-height: 800px;
}
@media all and (max-height: 800px) {
  .splide img {
    max-height: 650px;
  }
}
@media all and (max-height: 700px) {
  .splide img {
    max-height: 550px;
  }
}
@media all and (max-width: 1200px) {
  .splide img {
    max-height: 500px;
  }
}
@media all and (max-height: 500px) {
  .splide img {
    max-height: 400px;
  }
}
@media all and (max-width: 800px) {
  .splide img {
    max-height: 400px;
  }
}

.row {
  width: 100%;
  margin-left: -0.9375em;
  margin-right: -0.9375em;
  margin-top: 0;
  margin-bottom: 0;
  *zoom: 1;
  clear: both;
}

.row:before,
.row:after {
  content: " ";
  display: table;
}

.row:after {
  clear: both;
}

.row.collapse .column,
.row.collapse .columns {
  position: relative;
  padding-left: 0;
  padding-right: 0;
  float: left;
}

.row .row {
  width: auto;
  margin-left: -0.9375em;
  margin-right: -0.9375em;
  margin-top: 0;
  margin-bottom: 0;
  max-width: none;
  *zoom: 1;
}

.row .row:before,
.row .row:after {
  content: " ";
  display: table;
}

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

.row .row.collapse {
  width: auto;
  margin: 0;
  max-width: none;
  *zoom: 1;
}

.row .row.collapse:before,
.row .row.collapse:after {
  content: " ";
  display: table;
}

.row .row.collapse:after {
  clear: both;
}

.column,
.columns {
  position: relative;
  padding-left: 0.9375em;
  padding-right: 0.9375em;
  width: 100%;
  float: left;
}

@media only screen {
  .column, .columns {
    position: relative;
    padding-left: 0.9375em;
    padding-right: 0.9375em;
    float: left;
  }
  .small-1 {
    position: relative;
    width: 8.33333%;
  }
  .small-2 {
    position: relative;
    width: 16.66667%;
  }
  .small-3 {
    position: relative;
    width: 25%;
  }
  .small-4 {
    position: relative;
    width: 33.33333%;
  }
  .small-5 {
    position: relative;
    width: 41.66667%;
  }
  .small-6 {
    position: relative;
    width: 50%;
  }
  .small-7 {
    position: relative;
    width: 58.33333%;
  }
  .small-8 {
    position: relative;
    width: 66.66667%;
  }
  .small-9 {
    position: relative;
    width: 75%;
  }
  .small-10 {
    position: relative;
    width: 83.33333%;
  }
  .small-11 {
    position: relative;
    width: 91.66667%;
  }
  .small-12 {
    position: relative;
    width: 100%;
  }
  .small-offset-1 {
    position: relative;
    margin-left: 8.33333%;
  }
  .small-offset-2 {
    position: relative;
    margin-left: 16.66667%;
  }
  .small-offset-3 {
    position: relative;
    margin-left: 25%;
  }
  .small-offset-4 {
    position: relative;
    margin-left: 33.33333%;
  }
  .small-offset-5 {
    position: relative;
    margin-left: 41.66667%;
  }
  .small-offset-6 {
    position: relative;
    margin-left: 50%;
  }
  .small-offset-7 {
    position: relative;
    margin-left: 58.33333%;
  }
  .small-offset-8 {
    position: relative;
    margin-left: 66.66667%;
  }
  .small-offset-9 {
    position: relative;
    margin-left: 75%;
  }
  .small-offset-10 {
    position: relative;
    margin-left: 83.33333%;
  }
  [class*=column] + [class*=column]:last-child {
    float: right;
  }
  [class*=column] + [class*=column].end {
    float: left;
  }
  .column.small-centered, .columns.small-centered {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    float: none !important;
  }
}
@media only screen and (min-width: 800px) {
  .large-1 {
    position: relative;
    width: 8.33333%;
  }
  .large-2 {
    position: relative;
    width: 16.66667%;
  }
  .large-3 {
    position: relative;
    width: 25%;
  }
  .large-4 {
    position: relative;
    width: 33.33333%;
  }
  .large-5 {
    position: relative;
    width: 41.66667%;
  }
  .large-6 {
    position: relative;
    width: 50%;
  }
  .large-7 {
    position: relative;
    width: 58.33333%;
  }
  .large-8 {
    position: relative;
    width: 66.66667%;
  }
  .large-9 {
    position: relative;
    width: 75%;
  }
  .large-10 {
    position: relative;
    width: 83.33333%;
  }
  .large-11 {
    position: relative;
    width: 91.66667%;
  }
  .large-12 {
    position: relative;
    width: 100%;
  }
  .row .large-offset-1 {
    position: relative;
    margin-left: 8.33333%;
  }
  .row .large-offset-2 {
    position: relative;
    margin-left: 16.66667%;
  }
  .row .large-offset-3 {
    position: relative;
    margin-left: 25%;
  }
  .row .large-offset-4 {
    position: relative;
    margin-left: 33.33333%;
  }
  .row .large-offset-5 {
    position: relative;
    margin-left: 41.66667%;
  }
  .row .large-offset-6 {
    position: relative;
    margin-left: 50%;
  }
  .row .large-offset-7 {
    position: relative;
    margin-left: 58.33333%;
  }
  .row .large-offset-8 {
    position: relative;
    margin-left: 66.66667%;
  }
  .row .large-offset-9 {
    position: relative;
    margin-left: 75%;
  }
  .row .large-offset-10 {
    position: relative;
    margin-left: 83.33333%;
  }
  .row .large-offset-11 {
    position: relative;
    margin-left: 91.66667%;
  }
  .push-1 {
    position: relative;
    left: 8.33333%;
    right: auto;
  }
  .pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto;
  }
  .push-2 {
    position: relative;
    left: 16.66667%;
    right: auto;
  }
  .pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto;
  }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto;
  }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto;
  }
  .push-4 {
    position: relative;
    left: 33.33333%;
    right: auto;
  }
  .pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto;
  }
  .push-5 {
    position: relative;
    left: 41.66667%;
    right: auto;
  }
  .pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto;
  }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto;
  }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto;
  }
  .push-7 {
    position: relative;
    left: 58.33333%;
    right: auto;
  }
  .pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto;
  }
  .push-8 {
    position: relative;
    left: 66.66667%;
    right: auto;
  }
  .pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto;
  }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto;
  }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto;
  }
  .push-10 {
    position: relative;
    left: 83.33333%;
    right: auto;
  }
  .pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto;
  }
  .push-11 {
    position: relative;
    left: 91.66667%;
    right: auto;
  }
  .pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto;
  }
  .small-push-1 {
    left: inherit;
  }
  .small-pull-1 {
    right: inherit;
  }
  .small-push-2 {
    left: inherit;
  }
  .small-pull-2 {
    right: inherit;
  }
  .small-push-3 {
    left: inherit;
  }
  .small-pull-3 {
    right: inherit;
  }
  .small-push-4 {
    left: inherit;
  }
  .small-pull-4 {
    right: inherit;
  }
  .small-push-5 {
    left: inherit;
  }
  .small-pull-5 {
    right: inherit;
  }
  .small-push-6 {
    left: inherit;
  }
  .small-pull-6 {
    right: inherit;
  }
  .small-push-7 {
    left: inherit;
  }
  .small-pull-7 {
    right: inherit;
  }
  .small-push-8 {
    left: inherit;
  }
  .small-pull-8 {
    right: inherit;
  }
  .small-push-9 {
    left: inherit;
  }
  .small-pull-9 {
    right: inherit;
  }
  .small-push-10 {
    left: inherit;
  }
  .small-pull-10 {
    right: inherit;
  }
  .small-push-11 {
    left: inherit;
  }
  .small-pull-11 {
    right: inherit;
  }
  .column.small-centered, .columns.small-centered {
    margin-left: 0;
    margin-right: 0;
    float: left !important;
  }
  .column.large-centered, .columns.large-centered {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    float: none !important;
  }
}
@media only screen {
  [class*=block-grid-] {
    display: block;
    padding: 0;
    margin: 0 -10px;
    *zoom: 1;
  }
  [class*=block-grid-]:before, [class*=block-grid-]:after {
    content: " ";
    display: table;
  }
  [class*=block-grid-]:after {
    clear: both;
  }
  [class*=block-grid-] > li {
    display: block;
    height: auto;
    float: left;
    padding: 0 10px 10px;
  }
  .small-block-grid-1 > li {
    width: 100%;
    padding: 0 10px 10px;
  }
  .small-block-grid-1 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-1 > li:nth-of-type(1n+1) {
    clear: both;
  }
  .small-block-grid-2 > li {
    width: 50%;
    padding: 0 10px 10px;
  }
  .small-block-grid-2 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-2 > li:nth-of-type(2n+1) {
    clear: both;
  }
  .small-block-grid-3 > li {
    width: 33.33333%;
    padding: 0 10px 10px;
  }
  .small-block-grid-3 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-3 > li:nth-of-type(3n+1) {
    clear: both;
  }
  .small-block-grid-4 > li {
    width: 25%;
    padding: 0 10px 10px;
  }
  .small-block-grid-4 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-4 > li:nth-of-type(4n+1) {
    clear: both;
  }
  .small-block-grid-5 > li {
    width: 20%;
    padding: 0 10px 10px;
  }
  .small-block-grid-5 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-5 > li:nth-of-type(5n+1) {
    clear: both;
  }
  .small-block-grid-6 > li {
    width: 16.66667%;
    padding: 0 10px 10px;
  }
  .small-block-grid-6 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-6 > li:nth-of-type(6n+1) {
    clear: both;
  }
  .small-block-grid-7 > li {
    width: 14.28571%;
    padding: 0 10px 10px;
  }
  .small-block-grid-7 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-7 > li:nth-of-type(7n+1) {
    clear: both;
  }
  .small-block-grid-8 > li {
    width: 12.5%;
    padding: 0 10px 10px;
  }
  .small-block-grid-8 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-8 > li:nth-of-type(8n+1) {
    clear: both;
  }
  .small-block-grid-9 > li {
    width: 11.11111%;
    padding: 0 10px 10px;
  }
  .small-block-grid-9 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-9 > li:nth-of-type(9n+1) {
    clear: both;
  }
  .small-block-grid-10 > li {
    width: 10%;
    padding: 0 10px 10px;
  }
  .small-block-grid-10 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-10 > li:nth-of-type(10n+1) {
    clear: both;
  }
  .small-block-grid-11 > li {
    width: 9.09091%;
    padding: 0 10px 10px;
  }
  .small-block-grid-11 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-11 > li:nth-of-type(11n+1) {
    clear: both;
  }
  .small-block-grid-12 > li {
    width: 8.33333%;
    padding: 0 10px 10px;
  }
  .small-block-grid-12 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-12 > li:nth-of-type(12n+1) {
    clear: both;
  }
}