/*!
Theme Name: TPE
Author: Cora Yiu
Author URI: https://www.cyiulater.ca;
Description: Turning Point Ensemble Website
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: tpe

TABLE OF CONTENTS

0. Body
1. Grids
2. Navigation
3. Landing Page
4. Other Pages
5. Footer
6. External
7. Gallery
8. Mobile

*/

html#fullform, html#tribute {
  background-color:rgb(0,0,0,0)!important;
}

header {
  margin:0;
}

body {
  margin: 0;
  padding: 0;
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
}

::-moz-selection {
  background-color: #9d90ff;
}


::selection {
  background-color: #9d90ff;
}

* {
  padding: 0;
  margin: 0;
}

@font-face {
  font-family: HelveticaNow-Light;
  src: url(fonts/HelveticaNow-Text-Light.woff2);
}

@font-face {
  font-family: HelveticaNow-LightItalic;
  src: url(fonts/HelveticaNow-Text-LightItalic.woff2);
}

@font-face {
  font-family: HelveticaNow-Medium;
  src: url(fonts/HelveticaNow-Text-Medium.woff2);
}


.bold {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;}

.italic {
  font-family: 'HelveticaNow-LightItalic', 'Helvetica', sans-serif;}


.right-align {
  text-align: right;
  padding-right:2%;
}

h1 {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:3rem;
  color:white;
  font-weight:normal;
}

/*
.site-background {
  position:fixed;
  width:100vw;
  height:100vh;
  z-index: 0;

}*/

.gallery-img-fluid {
  width:100%;
  height:20vh;
  overflow: hidden
}

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

.grid-wrapper {
  display:grid;
  grid-template-columns: auto auto auto auto auto;
  grid-template-rows: auto auto auto auto auto auto;
}

.hp-banner {
  width:100vw;
  height:550px;
  overflow: hidden;
  position:relative;
  grid-row: 1/2;
  grid-column: 1/5;
  margin-top:3%;
}

.hp-banner img {
  width:100%;
  height:100%;
  object-fit:cover;
}

.banner {
  width:100vw;
  height:550px;
  overflow: hidden;
  position:relative;
  grid-row: 1/2;
  grid-column: 1/5;
}

.banner img {
  width:100%;
  height:100%;
/*  margin-left: auto;
  margin-right: auto;
  position:absolute;
  top:0%;
  left:0;*/
    object-fit:cover;

}

.header-gallery-banner {
  width:100vw;
  height:70vh;
  overflow: hidden;
  position:relative;
  grid-row: 1/2;
  grid-column: 1/5;
}

.header-gallery-banner img {
  width:100%;
  height:100%;
/*  margin-left: auto;
  margin-right: auto;
  position:absolute;
  top:-30%;
  left:0;
}*/  object-fit:cover;
}

.banner-text {
  position: absolute;
  top:10%;
  left:3%;
  font-size:3vw;
  color:white;
  padding:2%;
 border:1px solid white;
  width:90%;
  border-top-right-radius: 30px;
  line-height:1.5;
}

.banner-text a {
  text-decoration: none;
  padding:1% 2%;
  border:1px solid white;
  color:white;
  font-size:1.3rem;
}

.banner-text a:hover {
  border-top-right-radius: 20px;
}

.row1 {
  grid-row: 2/3;
  grid-column: 1/5;
}

.row2 {
  grid-row: 3/4;
  grid-column: 1/5;
}

.row3 {
  grid-row: 4/5;
  grid-column: 1/5;
}

.row4 {
  grid-row: 5/6;
  grid-column: 1/5;
}


.top-bar-margin {
  margin-top:7%;
}

.top-bar-margin-2 {
  margin-top:4%;
}

.top-bar-margin-list {
  margin-top:5.5%;
}

.margin-top {
  margin-top: 3%;
}

.desktop-only {
  display:block;
}

.mobile-only {
  display:none;
}

.margin-bottom {
  margin-bottom:3%;
}



/*/////////////// 2. NAVIGATION ////////////*/

.main-navigation {
position:fixed;
  top:0;
  left:0;
border: 1px black solid;
width:100vw;
z-index:1000;

     -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

/*.logo-background {
  background-color:white;
}

.logo-background:hover {
  background-color:white;
}
*/
.nav-logo {
  width:10%;
  vertical-align: middle;
}

/*.nav-logo:hover {
  background-color: #9d90ff!important;
}*/

.nav-logo img {
  width:44%!important;
}

/*.nav-logo:hover {
background-color: #F7FF9D
}*/

.nav-logo a {
    padding: 4.5%!important;
}

.logo {
  width:17vw;
  float:left;
  display:inline-block;
  background-color: white;
  border-top:1px solid black;
}

/*.logo:hover {
  border-radius:0 30px 0 0;
  background-color: #D3D0C9;
}*/

.logo img {
  max-width:33%;
  padding:2% 5%;
/*  position: relative;
  top: 50%;
  transform: translateY(-50%);*/
}

.logo a {
}

.main-nav {
  width:100vw;
  float:left;
}

.main-navigation ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display:flex;
}

.main-navigation li {
    background-color:white;
    list-style: none;
    flex: 1 1 auto;
    border-right:1px solid black;
    border-left: 1px solid black;
    border-top:1px solid black;
}

.main-navigation li:hover {
  background-color: #F7FF9D;
}

.main-navigation ul ul {
    display: inline;
    position: absolute;
    left: 0;
    z-index: 99999;
    width: 1000px;
}

.main-navigation ul.sub-menu li {
    border: 1px solid black;
  }


.main-nav a {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  text-decoration: none;
  color: #000;
  font-size:1.3vw;
  display:block;
  padding: 20px 50px 20px 20px;
}

.main-nav li:hover {
    border-radius:0 30px 0 0;


}

.main-nav a:hover {
  background-color: #F7FF9D; 
  border-radius:0 30px 0 0;

}


.main-navigation ul ul {
    display: none;
}

.main-navigation ul li:hover > ul {
    list-style-type: none;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    position:absolute;
}

.main-navigation ul li.media:hover > ul {
      left:35.6%;
    width:46%;
  }

.main-navigation ul li.about:hover > ul {
      left:48.6%;
    width:50%;
  }

.main-navigation ul li.season:hover > ul {
  left:14.3%;
  width:59%;
}

.main-navigation ul.sub-menu li {
    background-color:#F7FF9D;
    overflow:hidden;
    float:none;
}

/*/////////////// A. FIXED BUTTONS ////////////*/

.fixed-buttons {
  position:fixed;
  width:50%;
  bottom:3%;
  left:32.5%;
}

.donate-button {
  background-color: #9D90FF;
  width:8vw;
  text-align: center;
  display:inline-block;
  padding:1% 9%;
  border-radius:50px;
  border: 1px black solid;
  box-shadow: 3px 5px 10px #ccc;
}

.tickets-button {
  background-color: #F7FF9D;
  width:8vw;
  text-align: center;
  display:inline-block;
  padding:1% 9%;
  border-radius:50px;
  border: 1px black solid;
  box-shadow: 3px 5px 10px #ccc;
}

.fixed-buttons a {
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
  text-decoration: none;
  color:#000;
}

/*/////////////// 420. HOMEPAGE ////////////*/


.pull-quote {
display:grid;
grid-template-columns: auto auto;
grid-column-gap: 1%;
margin-bottom:3%;
padding-left:2.5%;
padding-right:2.5%;
}

.pull_quote_title { 
font-size:2.6rem;
font-family: 'HelveticaNow-Medium', 'arial', sans-serif;
grid-column: 1/2;
line-height:1;
padding-right:2%;



    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.pull_quote_body { 
grid-column: 2/3;
display:inline-block;
float:left;

font-size:1.4rem;
font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;


    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.season-block {

}

.season-highlight-header-title {
  text-align:center;
  font-size:2.6rem;
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  margin-bottom:2%;
}

.season-highlight {
  display:grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-column-gap: 2%;
  width:100%;
  margin: 0 auto;
  text-align:left;
  line-height:1.3;
  padding:0 2%;

    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.season-highlight-list {
  margin-right:0;
  width:100%;
}


.season-highlight a {
/*font-size:1vw;*/
text-decoration: none;
color:#000;
}

.season-highlight-row-one {
  width:22vw;
  height:22vw;
  overflow: hidden;
  margin-bottom:1%;
  position:relative;
  border:1px solid black;
  border-top-right-radius: 30px;

      -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}


.season-highlight-row-one img {
  width:100%;
  height:100%;
/*  margin-left: auto;
  margin-right: auto;
  position:absolute;
  top:0%;
  left:-20%;*/
    object-fit:cover;

}


.season-highlight-row-two {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
}

.season-highlight-row-three {
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
}


.season-highlight-see-more {
    font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
    text-align:center; 
    margin: 2% auto;
    width:100%;
    margin-top:4.4%;}


.season-highlight-see-more a {
  color: black;
}

.season-highlight-see-more a:hover {
    color:#452cff;
}

.marquee {
  width:100%;
  height:75px;
  overflow: hidden;
  position: relative;
}

.marquee div {
  display: block;
  width: 60%;
  height: 30px;

  position: absolute;

  animation: marquee 8s linear infinite;

  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
}

.marquee span {
  float: left;
  width: 50%;
}

@keyframes marquee {
  0% { left: 0; }
  100% { left: -100%; }
}

.post-object-block p {
font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
font-size:1rem;
padding:2%;
}

.news-post {
  padding:2%;
  display:flex;
  flex-wrap: wrap;
}


.post-object-block {
  width:47%;
  border:1px solid black;
  border-top-right-radius: 30px;
  margin-bottom:2%;
/*  font-size:1vw;*/
  display:inline-block;
  float:left;
  margin-right:2%;
  background-color:#fff;

}

.post-object-block img {
  width:25%;
  height:auto;
/*  overflow: hidden;
  padding:2%;*/
  object-fit:cover;
}

.post-object-bar {
  width:100%;
  border-bottom:1px solid black;
}

.real-post-object a {
  color:black;
}

.post-object-title {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  display:inline-block;
  float:left;
  width:80%;
  padding:2%;
  background-color:white;

    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.post-object-date {
  display:inline-block;
  background-color: #F7FF9D;
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  padding:2%;
  width:20%;
  border-top-right-radius: 30px;
  text-align: center;
  border-left:1px solid black;

    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.post-object-body {
  width:96%;
  padding:2%;
  background-color: white;
height:200px;
}

.post-object-thumbnail {
  border:1px solid black;
  width:40%;
  height:175px;
  overflow: hidden;
  display:inline-block;
  float:left;
}

.post-object-thumbnail img {
  width:100%;
  height:100%;
/*  padding:0;*/
  object-fit:cover;

}

.post-object-text {
  width:56%;
  display:inline-block;
  float:left;
  padding:0 2.5% 0 1%;
}

.post-title {
 display:block;
  width:95%;
  border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:4% auto 0 auto;
  padding: 1% 0px 8% 0px;
  font-size:2.6rem;
  line-height: 1.2;
}

.read-more a {
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
  color:black;
  width:100%;
  padding-left:2%;
}

.read-more a:hover {
  color:#452cff;
}

.more-post {
  display:block;
  width:100%;
  height:10%;
  padding:2%;
  margin:0 auto;
  text-align:center;
}

.more-post a {
  color:black;
}

.more-post a:hover {
  color:#452cff;
}

/*/////////////// 4. OTHER PAGES ////////////*/

.page-header-title {
    font-size:2.6rem;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
  padding-left:2%;
  padding-bottom:2%;
}

.header-body {
    width:80%;
    font-family:'HelveticaNow-Light', 'Helvetica', sans-serif;
    font-size:1.3rem;
    margin-bottom:2%;

}

/*-------post page -------*/

.content p {
  padding-right:2%;
  padding-bottom:1.5%;
}

.content a {
  color:#000;
}

.blocks-gallery-grid {
  padding: 2% 2% 0 0;
}

.blocks-gallery-item {
  border:1px solid black;
  border-top-right-radius: 30px;
}

.blocks-gallery-item img {
  border:0px solid black;
  border-top-right-radius: 30px;
}


/*-------list page -------*/

.list-header-title {
  font-size:2.6rem;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
  padding-left:2%;
  padding-bottom:0.5%;
  border-bottom: 1px solid black;
}

.lists {
  display:block;
  width:100%;
  height:auto;
  margin-bottom: 15%;
}

.lists a {
  text-decoration: none;
  color:#000;
}


.repeater-list {
  position:relative;
  padding-left:2%;
  display:block;
  width:100%;
  height:75px;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
  border-bottom:1px solid black;

      -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}



.lists a {
  text-decoration: none;
  color:#000;
}

.vertical-align {
    position: relative;
  top: 50%;
  transform: translateY(-50%);
}

.col-one {
  font-size:1.1rem;
  color:#452CFF;
  display:inline-block;
  width:4.6rem;
  float:left;
}

.col-two {
  font-size:2.6rem;
  display:inline-block;
  max-width:75vw;
  float:left;
}

.col-three {
  display:inline-block;
  float:left;
  overflow: hidden;
  border-top-right-radius: 15px;
  border:1px solid black;
  margin-left:1.5%;
  width:50px;
  height:50px;
}

.col-three img {
/*  margin-left:auto;
  margin-right: auto;*/
    object-fit:cover;
  width:100%;
  height:100%;
}

.col-four {
  display:inline-block;
  width:40vw;
  float:left;
  margin-left:1.5%;
}

.col-one-2 {
  font-size:1.1rem;
  color:#452CFF;
  display:inline-block;
  width:2.5vw;
  float:left;
}

.col-two-2 {
  font-size:2.6rem;
  display:inline-block;
  max-width:75vw;
  float:left;
}

.col-three-2 {
  display:inline-block;
  float:left;
  overflow: hidden;
  border-top-right-radius: 15px;
  border:1px solid black;
  margin-left:1.5%;
  width:50px;
  height:50px;
}

.col-three-2 img {
/*  margin-left:auto;
  margin-right: auto;
  display:block;*/
    object-fit:cover;
  width:100%;
  height:100%;
}

.col-four-2 {
  display:inline-block;
  width:40vw;
  float:left;
  margin-left:1.5%;
  font-family:'HelveticaNow-LightItalic', 'Helvetica', sans-serif;
}

.repeater-list-2 {
  position:relative;
  padding-left:2%;
  display:block;
  width:100%;
  height:70px;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
  border-bottom:1px solid black;

      -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.description {
  font-size:1.1rem;
  font-family:'HelveticaNow-Light', 'Helvetica', sans-serif;
  padding:1% 2%;
  border-bottom:1px solid black;

}


/*-------concert page -------*/

.curved-border-initial {
  display:block;
  width:95%;
  height: 90px;
  border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:4% auto 0 auto;
  padding: 1% 0px 7% 0px;
}

.curved-border {
  display:block;
  width:95%;
  border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:-2% auto;
  padding: 1% 0px 7% 0px;
}

.curved-border-body {
  display:block;
  width:95%;
}


.concert-page-title {
  display: inline-block;
  float:left;
  width:50%;
  color:#000;
  font-size:2.6rem;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
}


.concert-page-date {
  display: inline-block;
  text-align:right;
  float:left;
  width:48%;
  color:#000;
  font-size:2.6rem;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
}

.concert-page-location {
  display: inline-block;
  float:left;
  width:100%;
  color:#000;
  font-size:2.6rem;
  font-family:'HelveticaNow-Light', 'Helvetica', sans-serif;
}

.concert-page-body {
  width:95%;
  color:#000;
  font-size:1.8rem;
  font-family:'HelveticaNow-Light', 'Helvetica', sans-serif;
    border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:0 auto;
  padding: 1.5% 0px 4% 0px;
}

.concert-page-body img {
  border:1px solid black;
  border-top-right-radius: 30px;
}

.concert-page-body p {
  padding-right:1.5%;
}

.concert-page-body>p>a {
  color:#000;
}

.concert-page-body>p>a:hover {
  color:#452cff;
}



.concert-page-cta {
    width:95%;
  color:#000;
    font-size:2.6rem;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
    border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:-2% auto 5% auto;
  padding: 1% 0px 0% 0px;
  text-align:right;
}

.buy-now {
width:98%;
}

.buy-now a:hover {
  color:#452cff;
}

.view-all-cta {
    width:100%;
  color:#000;
    font-size:2.6rem;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
    border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:4% auto 5% auto;
  padding: 1% 0px 0% 0px;
  text-align:right;
}

.view-all-cta a {
  text-decoration: none;
  color:#000;
}


.concert-page-cta a {
  text-decoration: none;
  color:#000;
}

.watch-button {
  position:absolute;
  bottom:5%;
  left:2%;
  display:inline-block;
  width:auto;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
  margin-right:1%;
  float:right;
  border-top-right-radius: 0px;
}

.watch-button a:hover {
    border: 1px solid black;
  border-top-right-radius: 30px;
}

.watch-button a {
  background-color:#f3ff83;
  border: 1px solid black;
  text-decoration: none;
  color:#000;
  padding: 0% 6%;
}

/*-------1+1+1... list page -------*/

.event-title-group {
    position:relative;
    height:10vh;
}

.event-page-title {
/*  display: inline-block;
  float:left;*/
  max-width:70%;
  color:#000;
  font-size:2.6rem;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
}

.event-page-subtext {
/*  display:inline-block;
  float:left;
  margin-left:1%;*/
  font-family:'HelveticaNow-LightItalic', 'Helvetica', sans-serif;
  font-size:1.8rem;
}


.event-border-initial {
  display:block;
  width:95%;
  border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:4% auto 0 auto;
  padding: 1% 0px 10% 0px;
  font-size:2.6rem;
  line-height: 1.2;
}

.event-page-body {
  width:95%;
  color:#000;
  font-size:1.8rem;
  font-family:'HelveticaNow-Light', 'Helvetica', sans-serif;
  border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:-6% auto 3% auto;
  padding: 1.5% 0px 0% 0px;
}

.event-page-body a {
  color:#000;
}

.event-page-body a:hover {
  color:#452cff;
}

.embed-container-full { 
        position: relative; 
        padding-bottom: 56.25%;
        overflow: hidden;
        max-width: 100%;
        height: auto;
        margin-top:4%;
    } 


    .embed-container-full iframe,
    .embed-container-full object,
    .embed-container-full embed { 
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }



 /*-------discography page -------*/   

 .discography {
  width:98%;
  padding-left:2%;
  display:grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-row-gap: 1%;
  margin-bottom:5%;
 }

 .discography-block { 
  margin-bottom:3%;
  border:1px black solid;
  border-top-right-radius: 30px;
  margin-right:4%;
  width:90%;
  }

.discography-text {
    display:inline-block;
    float:left;
  }

 .discography-title {
    font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
    padding:3%;
    border-bottom:1px solid black;
    background-color: white;
    position:relative;
    top:-7px;
 } 

.discography-date {
    font-family:'HelveticaNow-Light', 'Helvetica', sans-serif;

}

.discography-links {
    padding:3%;
    font-family:'HelveticaNow-Light', 'Helvetica', sans-serif;
    line-height:2;
}

.discography-image {

    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.discography-image img {
  width:100%;
  height:100%;
  border:0px solid transparent;
  border-top-right-radius: 30px;
    object-fit:cover;

  }

.streaming-service a {
text-decoration: none;
color: #000;
}

.buynow {
      font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;

}

/*-------support page -------*/

.support-wrapper {
  border:1px solid black;
  border-top-right-radius: 30px;
  margin:8% 2% 4% 2%;

}

.support-title {
  border-bottom:1px solid black;
  font-size:2.2rem;
  padding:2%;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;


}

.support-body {
  width:90%;
  padding:2%;
font-size:1.4rem;
  font-family:'HelveticaNow-Light', 'Helvetica', sans-serif;

}

.sponsor-container {
  position:relative;
  display:grid;
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 1%;
  width:auto;
  background-color: white;
  padding:2%;
  border: 1px black solid;
  border-bottom: 0px solid;
}

.sponsor-words {
  width:100%;
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
  line-height:1.2;
  display:block;
}


.sponsor-logo-container {
  display:grid;
  grid-template-columns: 1fr 1fr 1fr;
  grid-row-gap:1%;
  grid-template-rows:1fr 1fr;
  align-items: center;

}

.sponsor-logos {
  width:70%;
  margin:0 auto;
  display:flex;
  align-items: center;

}

.sponsor-logos img {
  width:100%;
  height:auto;

}

/*-------education page -------*/


.header-gallery {
  margin-bottom:4%;
}

.education-text {
  font-size:1.3rem;
  width:65%;
  margin: 0 auto 3% auto;
}

.education-title {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  border:1px solid black;
  border-top-right-radius: 30px;
  background-color: #F7FF9D;
  padding:2%;
}


.education-body {
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
  border:1px solid black;
  border-top:1px solid transparent;
  padding:2%;
  background-color: white;
}

.education-banner {
  width:100vw;
  height:70vh;
  overflow: hidden;
  position:relative;
  grid-row: 1/2;
  grid-column: 1/5;
}

.education-banner img {
  width:100%;
  height:100%;
/*  margin-left: auto;
  margin-right: auto;
  position:absolute;
  top:0%;
  left:0;*/
  object-fit:cover;
}

/*-------video page -------*/

.media-container {
  width:98%;
  display:block;
  margin-left:2%;

}

.media-block {
  margin-bottom:3%;
  width:75%;
  margin:0 auto 3% auto;
}

.media-title {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
  border:1px solid black;
  border-top-right-radius: 30px;
  padding:1% 2%;
}

.media-video {
  width:100%;
  margin:0 auto;

    border:1px solid black;

      -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

/*-------the ensemble page -------*/

.about-block {
  width:96%;
  border:1px solid black;
  border-top-right-radius: 30px;
  margin-left:2%;
  display:flex;
  flex-direction: row;
  margin-bottom:3%;

      -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.about-left-block {
  width:60%;
  flex:1;
}

.about-title {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
  border-bottom:1px solid black;
  padding:1% 2%;
}

.about-body {
  flex:1;
  height:50vh;
  overflow-y: scroll;
  padding:2%;
  border-top:1px solid transparent;
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
  font-size:1.3rem;
}

.about-right-block {
  display:inline-block;
  width:39%;
  height:68vh;
  overflow: hidden;
  position: relative;
  border:0px solid black;
  border-left:1px solid black;
border-top-right-radius: 30px;
}

.about-right-block img {
width:100%;
height:100%;
border:0px solid black;
border-top-right-radius: 30px;
/*margin-left: auto;
margin-right: auto;
position:absolute;
top:0;
left:0;*/
  object-fit:cover;

}


.mission-vision {
  display:flex;
  flex-direction: row;
width:96%;
margin-left:2%;
}

.mission {
  flex:1;
  border:1px solid black;
  border-top-right-radius: 30px;
  background: #F7FF9D;

}

.vision {
 flex:1;
 border:1px solid black;
 border-top-right-radius: 30px;
  background: #F7FF9D;

}

.mission-vision-title {
  padding:2% 3% 0 3%;
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
}

.mission-vision-body {
  padding:0% 3% 2% 3%;
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
  font-size:1.3rem;
}

.ensemble-title {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
  padding:3%;
}

.ensemble-instrument {
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
}

.ensemble-row {
  position:relative;
  padding-left:3%;
  display:block;
  width:100%;
  height:auto;
  font-family:'HelveticaNow-Medium', 'Helvetica', sans-serif;
  border-bottom:1px solid black;
  font-size:2.6rem;
  text-transform: uppercase;
  padding-top:0.8%;

    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.executives {
  display:flex;
  flex-direction: row;
width:96%;
margin-left:2%;
margin-top:5%;
margin-bottom:3%;
}


.operations {
  flex:1;
  border:1px solid black;
  border-top-right-radius: 30px;
  background: #9D90FF;
  padding-bottom:2%;
}

.operations-body {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:1.3rem;
  padding:0% 3% 1% 3%;

}

.operations-name {
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
  font-size:1.3rem;
}

.board {
  flex:1;
  border:1px solid black;
  border-top-right-radius: 30px;
  background: #9D90FF;
    padding-bottom:2%;

}


.executives-title {
  padding:2% 3% 0 3%;
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
}

.board-body {
    font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:1.3rem;
  padding:0% 3% 1% 3%;

}

.board-name {
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
  font-size:1.3rem;
}


.credits-block {
width:96%;
margin-left:2%;
border: 1px solid black;
border-top-right-radius: 30px;
margin-bottom:4%;



    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.credits {
  padding:0% 3% 0 2%;
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
}

.credit-title {
  font-size:1.3rem;
  padding:1%;
}

.credit-name {
  font-size:1.3rem;
   font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
}

.credit-name a {
  color:#000;
}

.credit-name a:hover {
  color:#452CFF;
}

.credit-name p {
  display:inline;
}

/*-------contact page -------*/

.contact-container {
  width:92%;
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
  line-height: 1.2;
  margin-bottom:5%;
  margin-left:2%;
  margin-right:2%;
  border:1px solid black;
  border-top-right-radius: 30px;
}

.contact-address {
 font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
 padding:2%;
}

.contact-title {
  border-bottom:1px solid black;
   padding:2%;
}

.contact-charity {
  padding:2%;
  border-top:1px solid black;
}

.contact-form-container {
  padding:2%;
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:1.8rem;
  background-color:#F7FF9D;
  width:96%;
  text-align:center;
  border-top:1px solid black;

}

.contact-form {
  text-align:left;
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
  font-size:1rem;
  width:40%;
  display:block;
  margin:2% auto 0 auto;
}

.contact-form p {
  margin-bottom:3%;
}

.contact-form input {
  border:1px solid black;
  background:white;
  width:100%;
  height:5vh;
  -webkit-appearance: none;
  -webkit-border-radius: 0px;
}

.contact-form input.wpcf7-submit {
  text-transform: uppercase;
  font-size:1.3rem;
      font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
       -webkit-appearance: none;
       -webkit-border-radius: 0px;

}

.contact-form textarea {
  width:100%;
  border:1px solid black;
  background:white;
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
  font-size:1.1rem;
       -webkit-appearance: none;
       -webkit-border-radius: 0px;}

/*-------archive page -------*/


.archive-lists a {
  text-decoration: none;
  color:#000;
}
.archive-banner {
  width:100vw;
  height:60vh;
  overflow: hidden;
  position:relative;}

.archive-banner img {
  width:100%;
  height:100%;
/*  position:absolute;
  top:-50%;
  left:0%;
  margin-left: auto;
  margin-right: auto;*/
    object-fit:cover;

}

.archive-program {
  padding:2%;
  width:95%;
  margin-bottom:5%;
}

.archive-title-block {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
  border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:2% auto 0 auto;
  padding: 1% 0px 4% 0px;
  
}


.archive-body {
  display:block;
  border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:-3% auto;
  padding: 1% 0px 3% 0px;
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
  font-size:1.3rem;
}

.archive-body-text {
  width:90%;
}

.archive-title {
  display:inline-block;
}

.archive-buttons {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  font-size:2.6rem;
  display:block;
  position:absolute;
  bottom:5%;
  left:2%;
    width:100%;}

.archive-buttons a {
  text-decoration: none;
  color:black;
  background-color: #F7FF9D;
  border:1px solid black;
  padding:0% 2%;
}

.archive-button-one {
width:28%;
margin-bottom:0.7%;
}

.archive-button-two {
width:28%;
}

.archive-buttons a:hover {
  border-top-right-radius: 30px;
}

/*/////////////// 5. FOOTER ////////////*/

footer {
  background-color:white;
}

footer a {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
  text-decoration: none;
  color: #000;
}

footer a:hover {
  color:#452cff;
}

footer .nav-logo {
  display:none;
}

.site-footer ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

.site-footer {
/*  grid-row:5/6;
  grid-column:1/5;*/
  display:grid;
  grid-template-rows: auto;
  grid-template-columns: 33.33% 33.33% 33.33%;
  border: 1px solid #000;
  width:100%;


    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.footer-box {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
padding: 6% 5%;
}

.sitemap {
  grid-row:1/2;
  grid-column:1/2;
  background-color:white;
  margin:1px;
  border-right:1px solid #000;
}

.social-media {
  grid-row:1/2;
  grid-column:2/3;
    border-right:1px solid #000;
}

.newsletter {
    grid-row:1/2;
  grid-column:3/4;
  font-size:1.8rem;
}

.landacknowledgements {
  margin-top:2%;
  font-size:1rem;
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;

}

footer ul li.homepage {
  display:none;
}

footer ul.sub-menu {
  padding-left:2%;
}

footer .season ul.sub-menu a {
  display:none;
}

footer ul.sub-menu a {
  padding-left:2%;
    font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
}

.footer-newsletter {
  width:100%;
}

.footer-email-body {
      font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
      font-size:1.3rem;

}

/*/////////////// 6. EXTERNAL ////////////*/
/*/////////////// MAILCHIMP ////////////*/


::-webkit-input-placeholder {
    color:    #000;
      font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;

}
:-moz-placeholder {
    color:    #000;
      font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;

}
::-moz-placeholder {
    color:    #000;
      font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;

}
:-ms-input-placeholder {
    color:    #000;
      font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;

}

  input:focus, textarea:focus, select:focus{
        outline: none;
    }


#mailchimp {
  background:#9D90FF; 
  clear:left; 
  font:14px HelveticaNow-Medium,sans-serif; 
  width:50%;
display:inline-block;}

  #mailchimp input.email {
    border-bottom: 1px solid #000;
    border-top: none;
    border-left: none;
    border-right: none;
    border-radius: 0px;
    width:60%;

  }

#mailchimp input {
  background-color:transparent;
  border:1px solid black;
  padding:2% 4%;
  font:14px HelveticaNow-Medium,sans-serif; 

}

#mailchimp input:hover {
  border:1px solid black;
  border-top-right-radius: 15px;
  padding:2% 4%;
}


#mailchimp-footer {
  background:#fff; 
  clear:left; 
  font:4.1vw HelveticaNow-Medium,sans-serif; 
  width:100%;}

  #mailchimp-footer input.email {
    border-bottom: 1px solid #000;
    border-top: none;
    border-left: none;
    border-right: none;
    border-radius: 0px;
    width:60%;

  }

#mailchimp-footer input {
  background-color:transparent;
  border:1px solid black;
  padding:2% 4%;
  font:14px HelveticaNow-Medium,sans-serif; 

}

#mailchimp-footer input:hover {
  border:1px solid black;
  border-top-right-radius: 15px;
  padding:2% 4%;
}

.email-block {
  margin-top:4%;
  margin-bottom:5%;
  grid-row:4/5;
  grid-column:1/6;
  width:100%;
  height:250px;
  padding:2% 4%;
  background-color:#9D90FF;
  border:1px solid black;

    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.email-block-title {
  font-size:3vw;
  display:inline-block;
  vertical-align: middle;
  width:45%;
  line-height:1.2;

}

.email-block-body {
    display:inline-block;
  width:auto;
  font-size:1.3rem;
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
}

#mailchimp #mc_embed_signup_scroll {
  background-color: #9D90FF;
}



/*/////////////// 7. GALLERY ////////////*/


.event-gallery {
  margin-top:3%;
}


.rl-gallery-item {
  margin-left:10px!important;
  margin-right:0!important;
  margin-bottom:0!important;
  border: 1px solid none;
  border-top-right-radius: 30px;
}

.rl-gallery-item img {
  width:100%;
  height:100%;
/*  margin-left: auto;
  margin-right: auto;
  display:block;*/
  object-fit: cover;
}


/* Slideshow container */
.slideshow-container {
  position: relative;
  margin: auto;
}




/* Next & previous buttons */
.prev, .next {
  cursor: pointer;
  position: absolute;
  top: 10%;
  width: auto;
  padding: 16px;
  margin-top: -22px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
}

/* Position the "next button" to the right */
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}

/* On hover, add a black background color with a little bit see-through */
.prev:hover, .next:hover {
  background-color: rgba(0,0,0,0.8);
}


.active, .dot:hover {
  background-color: #717171;
}

/* Fading animation */
.fade {
  -webkit-animation-name: fade;
  -webkit-animation-duration: 1.5s;
  animation-name: fade;
  animation-duration: 1.5s;
}

@-webkit-keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

@keyframes fade {
  from {opacity: .4} 
  to {opacity: 1}
}

/*---ipad pro or small screen?---*/


@media only screen 
  and (min-width: 1025px) 
  and (max-width: 1330px) {

.concert-page-title {
  font-size:1.8rem;
}

.concert-page-date {
  font-size:1.8rem;
}

.concert-page-location {
  font-size:1.8rem;
}


  }



@media only screen 
  and (min-width: 1025px) 
  and (max-width: 1280px) {

.hp-banner {
  height:500px;
}

.banner-text {
    font-size: 2.5rem;
    line-height:1.6;
}

.tickets-button {
  width:10vw;
}

.main-nav a {
  padding-right:25px;
  font-size:1.5vw;
}

.nav-logo img {
  width:55%!important;
}

.main-navigation ul li.media:hover > ul {
      left:35.8%;
  }

.main-navigation ul li.about:hover > ul {
      left:48.2%;  }

.main-navigation ul li.season:hover > ul {
  left:13.8%;}

  .top-bar-margin-list {
  margin-top:6.5%;
}


}

@media only screen 
  and (min-width: 1680px) 
  and (max-width: 1919px) {

 .main-nav a {
     padding-top:30px;
 }   

.main-navigation ul li.media:hover > ul {
      left:36.1%;
  }

.main-navigation ul li.about:hover > ul {
      left:48.9%;  }

.main-navigation ul li.season:hover > ul {
  left:14.9%;}

  }


@media only screen 
  and (min-width: 1920px)  {

.hp-banner {
  height:700px;
}

.main-nav a {
  padding-top:40px ;
}

.main-navigation ul li.media:hover > ul {
      left:36.5%;
  }

.main-navigation ul li.about:hover > ul {
      left:49.2%;  }

.main-navigation ul li.season:hover > ul {
  left:15.4%;}


.post-object-block p {
  font-size:1.2rem;
  padding-top:0%;
}

.post-object-thumbnail {
  width:35%;
  height:155px;
}

.post-object-text {
  width:61%;
}

.email-block {
  height:400px;
}


  }



@media only screen 
  and (min-width: 769px) 
  and (max-width: 1024px)  {


.tickets-button {
  width:14vw;}

.main-nav {
  display:none!important;
}


.nav-logo {
  display:none;
}


.top-bar-margin-2 {
  margin-top:1%;
}

.hp-banner {
  margin-top:0%;
  height:400px;
}

.hp-banner img {
  left:0%;
}

.banner {
  height:400px;
}

.page-header-title {
  font-size:2.2rem;
}


.header-body {
  font-size:1.1rem;
  width:90%;
}

.header-gallery-banner {
  height:35vh;
}

/* Next & previous buttons */
.prev, .next {
  cursor: pointer;
  position: absolute;
  top: 5%;
  width: auto;
  padding: 16px;
  margin-top: -22px;
  color: white;
  font-weight: bold;
  font-size: 18px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
}


/*------home pages-------*/

.banner-text {
  font-size:1.9rem;
    top:10%;
    left:2%;
    padding:3%;
    line-height:1.7;
    width:95%;


     -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;  
}

.banner-text a {
  padding:0.5% 2%;
}

.pull_quote_title {

}

.pull_quote_body {
/*  width:83%;
  padding-left:0%;
  margin-left:0%;*/
}

.email-block {
  height:300px;
}

.email-block-title { 
display:block;
margin-top:5%; 
font-size:2rem;
width:80%;}

.email-block-body {
  display:block;
}

#mailchimp {
  display:block;
  width:95%;
  margin-top:5%;
}

.post-object-thumbnail {
  height:115px;
  width:35%;
}

.post-object-title {
  width:70%;
}

.post-object-date {
  width:30%;
}

.read-more {
  width:100%;
  text-align: left;
}

.footer-email-body {
  font-size:1rem;
}

.site-footer {
  display:grid;
  grid-template-rows: auto auto auto;
  grid-template-columns: auto;
  border: 1px solid #000;
  width:100%;

    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.sitemap {
  grid-row:2/3;
  grid-column:1/2;
  background-color:white;
  margin:1px;
  border-right:0px solid #000;
  border-bottom:1px solid black;
}

.social-media {
  grid-row:3/4;
  grid-column:1/2;
  border-right:0px solid #000;
  padding-bottom:25%!important;
}

.newsletter {
    grid-row:1/2;
  grid-column:1/2;
    border-bottom:1px solid black;
    font-size:2rem;
}

#mailchimp-footer {
  margin-top:3%;
}

/*------concert pages-------*/

.repeater-list-2 {
  height:60px;
}

.repeater-list {
  height:65px;
}

.col-three {
  width:40px;
  height:40px;
}

.curved-border-initial {
padding-bottom:9%;
}

.curved-border {
  padding-bottom: 9%;
  margin-top:-3%;
}

.concert-page-title {
  font-size:1.5rem;
}

.concert-page-date {
  font-size:1.5rem;
}


.concert-page-body {
  margin-top:-3%;
  font-size:1.5rem;
}

.concert-page-location {
  font-size:1.5rem;
}

.buy-now {
  font-size:2.2rem!important;
}


/*------event pages-------*/

.watch-button {
  font-size:2.2rem;
}

.view-all-cta {
  font-size:2.2rem;
}

.col-one-2 {
  width:4vw;
}

.col-two-2 {
  font-size:2.2rem;
}

.col-three-2 {
  width:40px;
  height:40px;
}

.event-title-group {
  height:6vh;
  padding-left:2%;
}

.event-page-title {
  font-size:1.8rem;
}

.event-page-subtext {
  font-size:1.4rem;
}

.event-page-body {
  font-size:1.4rem;
}

.event-page-body p {
    padding:0% 2%;
}

.event-border-initial {
  padding-bottom:10.2%;
  padding-top:0%;
}

    .rl-gallery-item {
  margin-left:none;
  margin-right:10px!important;
  margin-bottom:5px!important;
  border: 1px solid none;
  border-top-right-radius: 30px;
  width:30%!important;
  height:235px!important;
}

.rl-gallery-item img {
  width:100%;
  height:100%;
/*  margin-left: auto;
  margin-right: auto;
  display:block;*/
  object-fit: cover;
}

/*------video pages-------*/

.media-block {
  width:90%;
  margin:4% 0;
}

.media-title {
  font-size:2.2rem;
}

/*------video pages-------*/


.about-title {
  font-size:2.2rem;
}

.about-block {

}

.about-right-block {
  height:auto;
}

.about-body {
  height:25vh;
  font-size:1.1rem;
}

.ensemble-row {
  font-size:2rem;
  height:auto;
}

.mission-vision-title {
  font-size:2.2rem;
}

.mission-vision-body {
  font-size:1.1rem;
}

.executives-title {
  font-size:2.2rem;
}

.board-body {
  font-size:1.1rem;
}

.operations-body {
  font-size:1.1rem;
}

.board-name {
  font-size:1.1rem;
}

.operations-name {
  font-size:1.1rem;
}


/*------education pages-------*/
.education-text {
  width:90%;
  font-size:1.1rem!important;
}

/*------archive pages-------*/
.archive-banner {
  height:30vh;
}

.archive-banner-img {
  top:-25%;
}

.archive-button-one {
  width:50%;
}

.top-margin-bar-list {
  margin-top:3%;
}

/*------sponsor pages-------*/


.sponsor-words {
  font-size:1.3rem;
}



}





@media screen and (max-width: 768px) {

/*--general--*/

.mobile-only {
  display:block;
}

.desktop-only {
  display:none!important;
}

.margin-bottom {
  margin-bottom:6%;
}

.fixed-buttons {
  position:fixed;
  width:100%;
  bottom:3%;
  left:18%;
}

.donate-button {
  background-color: #9D90FF;
  width:13vw;
  font-size:1rem;
  text-align: center;
  display:inline-block;
  padding:1% 8%;
  border-radius:50px;
  border: 1px black solid;
  box-shadow: 3px 2px 12px #999;
}

.tickets-button {
  background-color: #F7FF9D;
  font-size:1rem;
  width:25vw;
  text-align: center;
  display:inline-block;
  padding:1% 4%;
  border-radius:50px;
  border: 1px black solid;
  box-shadow: 3px 2px 12px #999;
}

.page-header-title {
  font-size:1.25rem;
  padding-left:4%;
    margin-bottom:2%;
}

.header-body {
  font-size:1rem;
  width:95%;
}

/*--nav--*/

.main-nav {
  display:none;
}

.nav-logo {
  display:none;
}

.main-nav {
  background-color: white;
  height:100vh;
  overflow-y: scroll;
  overflow-x:hidden;
}

.main-navigation ul {
/*  position:relative;*/
  display:block;
}

.main-navigation ul ul {
    display: block;
    position:relative;
}


.main-navigation ul li:hover > ul {
  display:none;
}


.main-navigation ul.sub-menu li {
    border: 1px solid black;
    position:relative;
  }





.main-navigation ul li.media:hover > ul {
  display:none;
  }

.main-navigation ul li.about:hover > ul {
  display:none;
  }

.main-navigation ul li.season:hover > ul {
 display:none;
}

/*.main-navigation ul.sub-menu li {
    background-color:#F7FF9D;
    overflow:hidden;
    float:none;
}*/



/*.main-navigation ul li.media:hover > ul {
  left:0;
  width:100%;
}*/
  
.menu-Trigger {
                    display: block;
                    color:white;
                    background-color: black;
                    padding:10px;
                    text-align: center;
                    cursor:pointer;
                    
                } 
  

 div.main-nav {
 display:none;
}

 div.nav-Expanded {
display: block; 
}

.backwhite.expanded {
  height:auto;
}



/*---homepage---*/


.banner-text {
  padding:3% 3% 3% 4%;
  top:6%;
  font-size:1.4rem;
  margin:0 auto;
  left:2.5%;
  width:95%;
  line-height:1.5;

   -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.banner-text a {
  font-size:1rem;
  line-height: 3;
}

.pull-quote {
  padding-left:4%;
  padding-right:3%;
}

.pull_quote_title {
  font-size:1.5rem;

}

.pull_quote_body {
  font-size:1rem;
  line-height:1.3;

}

.season-highlight-header-title {
  font-size:1.5rem;
  margin: 5% 0 5% 0;
}

.season-highlight-row-one {
  width:46vw;
  height:46vw;
  margin-right:0;
       -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.season-highlight-row-one img {
    left:-20%;
}

.season-highlight {
grid-template-columns: 1fr 1fr;
grid-column-gap: 3%;
grid-row-gap:3%;
}

.season-highlight-list {
  font-size:0.85rem;
}

.season-highlight-see-more {
  margin: 8% 0 8% 0;
}


/*---season page---*/

.list-header-title {
  font-size:1.25rem;
  padding:5% 4%;
}

.repeater-list {
  padding-left:4%;
}

.col-one {
  font-size:0.85rem;
  width:13vw;
  line-height:1.2;
}

.col-two {
  font-size:1.25rem;
}

.col-three {
  margin-left:2%;
  width:40px;
  height:40px;
}

/*---concert page---*/

.curved-border-initial {
  border-top-right-radius: 15px;
  padding-bottom:5%;
  margin-bottom: -3.5%;
  margin-top:6%;
}

.curved-border {
  border-top-right-radius: 15px;
  padding-bottom:5%;
  margin-bottom: -3.5%;
}

.concert-page-body {
  border-top-right-radius: 15px;
}

.concert-page-title {
  font-size:1.25rem;
  width:100%;

}

.concert-page-date {
  font-size:1.25rem;
  width:100%;
  text-align:left;
  float:none;
  padding-right:2%;

       -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.concert-page-location {
  font-size:1.25rem;
  float:none;
}

.concert-page-body {
  font-size:1.25rem;
  padding-bottom:7%;
}

.concert-page-body p {
  padding-right:2%;
}

.concert-page-cta {
 border-top-right-radius: 15px;  
 margin-top:-3%;
 font-size:1.25rem;
 margin-bottom:10%;
}

/*---1+1+1 page---*/

.repeater-list-2 {
  padding-left:4%;
  height:60px;
}

.description {
  font-size:1rem;
  padding:2% 4%;
}

.col-one-2 {
  font-size:0.85rem;
  width:7vw;
}

.col-two-2 {
  font-size:1.25rem;
}

.col-three-2 {
  margin-left:3%;
    width:40px;
  height:40px;
}

.col-four-2 {
display: none;
}

/*---event page---*/

.event-block {
  width:100%;
  padding:3%;

        -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.watch-button {
  font-size:1.25rem;
  bottom:3%;
  margin-left:3%;
}

.event-page-title {
  float:none;
  font-size:1.25rem;
  margin-bottom:1%;
}

.event-page-subtext {
  font-size:1.25rem;
  float:none;
  margin-left:0;
  line-height: 1.1;
  display:block;
  margin-top:3%;
}

.event-border-initial {
  display:block;
  width:95%;
  border-top:1px solid black;
  border-right:1px solid black;
  border-top-right-radius: 30px;
  margin:4% auto 0 auto;
  padding: 6% 0px 6% 0px;
}

.event-title-group {
  height:auto;
}

.event-page-body {
  font-size:1.25rem;
  margin-top:-7%;
}

.event-page-body p {
  padding-right:2%;
}

.view-all-cta {
 border-top-right-radius: 15px;  
 margin-top:3%;
 font-size:1.25rem;
 margin-bottom:10%;
}

    .rl-gallery-item {
  margin-left:0px!important;
  margin-right:10px!important;
  margin-bottom:5px!important;
  border: 1px solid none;
  border-top-right-radius: 30px;
  width:30%!important;
  height:105px!important;
}

.rl-gallery-item img {
  width:100%;
  height:100%;
/*  margin-left: auto;
  margin-right: auto;
  display:block;*/
    object-fit:cover;

}


/*---videos---*/

.media-container {
  margin-left:1%;
}

.media-block {
  width:95%;
  margin-bottom:6%;
}

.media-title {
font-size:1rem;
    border-top-right-radius: 25px;
}



/*---about the ensmble---*/

.about-block {
  flex-direction: column;
}

.about-left-block {
  width:100%;
  margin-bottom:3%;
}

.about-right-block {
/*  display:none;*/
width:100%;
height:350px;
}

.about-title {
  font-size:1.25rem;
}

.about-body {
  font-size:1rem;
  height:40vh;
}

.ensemble-list {
  margin-top:6%;
}

.mission-vision {
  flex-direction: column;
}

.mission {
  margin-bottom:3%;
}

.mission-vision-title {
font-size:1.25rem;
}

.mission-vision-body {
font-size:1rem;
}

.ensemble-row {
  height:auto;
  font-size:1.25rem;
  padding-right:3%;
}

.executives {
  flex-direction: column;
  margin-top:8%;
  margin-bottom:10%;
}

.executives-title {
font-size:1.25rem;
}

.operations {
  margin-bottom:3%;
}

.operations-body {
font-size:1rem;
}

.operations-name {
  font-size:1rem;
}

.board-body {
font-size:1rem;
}

.board-name {
  font-size:1rem;
}

.credits {
  font-size:1.25rem;
}

.credit-title {
  font-size:1rem;
}

.credit-name {
  font-size:1rem;
}

/*---support---*/

.support-title {
  font-size:1.25rem;
   padding:3%;
   line-height:1.2;
}

.support-body {
   padding:3%;
  font-size:1rem;
}

.sponsor-container {
  grid-template-columns: auto;
  grid-template-rows:auto 1fr;
}

.sponsor-words {
  padding:3%;
  font-size:1.25rem;
      -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.sponsor-logo-container {
  grid-template-rows: 1fr 1fr 1fr;
  grid-template-columns: 1fr 1fr;
  margin-bottom:5%;
}

/*---education---*/

.header-gallery {
  margin-bottom:6%;
}

.education-text {
  width:90%;
  font-size:1rem;
  margin-bottom:6%;
}

.education-title {
  line-height: 1.2;
  padding:3%;
}

.education-body {
  padding:4%;
}



/*---contact us---*/

.contact-container {
  font-size: 1.25rem;
  width:95%;
  margin-bottom:6%;
}

.contact-charity {
  font-size:1rem;
}


.contact-form {
  width:92%;
}

.contact-form label {
  font-size:1rem;
}

.contact-form-container {
  font-size:1.25rem;
  padding-top:5%;

}

.contact-form input.wpcf7-submit {
  font-size:1.3rem;    
  text-transform: uppercase;

}

/*---banners---*/

.archive-banner {
  width:100vw;
  height:25vh;
  overflow: hidden;
  position:relative;}

.archive-banner img {
  width:100%;
  height:100%;
/*  position:absolute;
  top:-20%;
  left:0%;
  margin-left: auto;
  margin-right: auto;*/
  object-fit:cover;

}

.hp-banner {
  width:100vw;
  height:375px;
  overflow: hidden;
  position:relative;}

.hp-banner img {
  width:100%;
  height:100%;
/*  position:absolute;
  top:0%;
  left:-60%;
  margin-left: auto;
  margin-right: auto;*/
    object-fit:cover;

}

.banner {
  width:100vw;
  height:50vh;
  overflow: hidden;
  position:relative;}

.banner img {
  width:100%;
  height:100%;
/*  position:absolute;
  top:0%;
  left:-30%;
  margin-left: auto;
  margin-right: auto;*/
    object-fit:cover;

}

.header-gallery-banner {
  width:100vw;
  height:60vh;
  overflow: hidden;
  position:relative;}

.header-gallery-banner img {
  width:100%;
  height:100%;
/*  position:absolute;
  top:0%;
  left:0%;
  margin-left: auto;
  margin-right: auto;*/
    object-fit:cover;

}

/*---archive---*/

.archive-title {
  font-size:1.25rem;
} 

.archive-program {
  padding:4%;
  width:92%;
}

.archive-body {
  font-size:1.25rem;
  border-top-right-radius: 15px;
}

.archive-title-block {
  border-top-right-radius: 15px;
}

.archive-buttons {
  font-size:1.25rem;
  left:3%;
}

.archive-button-one {
  width:60%;
}

.archive-button-two {
  width:60%;
}

.archive-buttons a:hover {
  border-top-right-radius: 15px;
}


/*---discography---*/

.discography {
  grid-template-columns: 1fr 1fr;
  padding-left:4%;
  -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    padding-bottom:6%;
}

.discography-block {
  margin-bottom:5%;
  width:95%;
  margin-right:5%;
}

.discography-title {
  line-height:1.2;
  padding:4%;
}

.streaming-service {
  line-height:1.5;
}

/*---posts---*/

.news-post {
  flex-direction: column;
    padding:4%;
}

.post-object-block {
  width:100%;
  border-top-right-radius: 15px;
     -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.post-object-bar {
  font-size:0.9rem;
}

.post-object-title {
  width:70%;
}

.post-object-body {
  padding:3% 2%;
  height:175px;
}

.post-object-date {
  width:30%;
  border-top-right-radius: 15px;
}

.post-object-text {
    width:58%;
    padding-right:0%;
}

.post-object-text p{
  font-size:0.9rem;

}

.post-title {
  font-size:1.25rem;
}

.post-object-thumbnail {
  height:150px;
  width:36%;
  margin-bottom:1%;
  position:relative;
}


.post-object-thumbnail img {
  width:100%;
  height:100%;
/*  position:absolute;
  top:0;
  left:0;
  margin-left:auto;
  margin-right:auto;*/
    object-fit:cover;

}



.read-more {
  font-size:0.9rem;
  text-align:left;
}



/*--email--*/


.email-block {
  height:200px;
}


.email-block-title {
  font-size:1.25rem;
  display:block;
  vertical-align: middle;
  width:100%;
  line-height:1.2;
  padding-top:4%;

}

.email-block-body {
  width:100%;
  font-size:0.85rem;
  font-family: 'HelveticaNow-Light', 'Helvetica', sans-serif;
}

#mailchimp {
  width:100%;
}

#mailchimp input {
  border-top-right-radius: 15px;
  color:#000;}

#mailchimp-footer input {
   border-top-right-radius: 15px;
  color:#000;
}


/*---footer---*/

.site-footer {
  display:grid;
  grid-template-rows: auto auto auto;
  grid-template-columns: auto;
  border: 1px solid #000;
  width:100%;

    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

.footer-box {
  font-family: 'HelveticaNow-Medium', 'Helvetica', sans-serif;
padding: 8% 5%;
font-size:1rem;
}

.sitemap {
  grid-row:2/3;
  grid-column:1/2;
  background-color:white;
  margin:1px;
  border-right:0px solid #000;
  border-bottom:1px solid black;
}

.social-media {
  grid-row:3/4;
  grid-column:1/2;
  border-right:0px solid #000;
  padding-bottom:25%!important;
}

.newsletter {
    grid-row:1/2;
  grid-column:1/2;
  font-size:1.5rem;
    border-bottom:1px solid black;
}

.landacknowledgements {
  margin-top:4%;
  font-size:1rem;
}

.mobile_menu li a {
  font-size:1rem;

}

.footer-newsletter {
  margin-top:4%;
}

.footer-email-body {
  font-size:1rem;
}

}

@media only screen 
  and (min-width: 769px) 
  and (max-width: 916px) {

.banner-text {
  font-size:1.8rem;
  line-height: 1.7;
}

  }

@media only screen 
  and (min-width: 624px) 
  and (max-width: 768px) {

.banner-text {
  font-size:1.58rem;
  line-height: 1.52;
}

  }


 @media only screen 
  and (min-width: 470px) 
  and (max-width: 623px) {

.banner-text {
  font-size:1.35rem;
  line-height:1.65;
}

  } 


 @media only screen 
  and (min-width: 420px) 
  and (max-width: 469px) {

.banner-text {
  font-size:1.2rem;
  line-height:1.8;
}

  }  


@media screen   
and (min-width: 420px) 
  and (max-width: 768px)  {

.hp-banner {
  height:300px;
  margin-top:2%;
}

.hp-banner img {
  width:100%;
  height:100%;
/*  left:0;*/
  object-fit:cover;

}


.post-object-block {
  width:100%;
}

.post-object-thumbnail {
  height:135px;
}

.main-nav {
  display:none;
}


.nav-logo {
  display:none;
}

.banner-text a {
  line-height: 2;
}


.repeater-list-2 {
  height:60px;
}

.repeater-list {
  height:60px;
}

.list-header-title {
  font-size:2rem;
  padding-top:0%;
  padding-bottom:2%;
}

.col-one-2 {
  font-size:1rem;
  width:5vw;
}

.col-two-2 {
  font-size:2rem;
}

.col-one {
  font-size:0.85rem;
  width:10vw;
}

.col-two {
  font-size:1.5rem;
}

.event-border-initial {
  padding-top:4%;
}

.event-page-title {
  margin-bottom:0;
}

.event-page-subtext {
  margin-top:2.5%;
  margin-bottom: 0%;
  line-height: 1.2;
}

}

@media screen and (max-width: 367px) {
.banner-text {
  font-size:1.28rem;
}

}


@media screen and (max-width: 333px) {

.hp-banner {
height:450px;}

.col-one {
  font-size:0.65rem;
  width:12vw;
}

.col-two {
  font-size:1.1rem;
}

.col-three {
  width:35px;
  height:35px;
}

.repeater-list {
  height:50px;
}

}



