* {
	margin: 0;
}

p {
	margin: 10px 0;
}

html, body {
	height: 100%;
}

html {
	background: #fff;
	padding: 0;
}

body {
	font-family: "Inter", sans-serif;
	margin: 0;			
}

footer, .push {
	height: 3em;
	line-height: 3em;
}

footer {
	background: #000;
	text-align: center;
	color: #fff;
}

footer p {
	margin: 0;
}

hr {
	margin-top: 0;
	margin-bottom: 5px;
}

h2 {
	font-size: 1.4em;
	margin-top: 0;
}

a:link, a:visited {
	color: #000;
}

a:hover, a:focus {
	color: #fff;
	text-decoration: none;
}

footer a:link, footer a:visited {
	color: #fff;
}

footer a:hover, footer a:active {
	color: #666;
}

.wrapper {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -3em;
	/* min-width: 1124px; */
	position: relative;
}

/* Simple clearfix */

ul:before,
ul:after {
  content: " "; /* 1 */
  display: table; /* 2 */
}

ul:after { clear: both; }

label {
	display: inline-block;
	width: 150px;	
	font-weight: 700;
	white-space: nowrap;
}

p label:first-child {
	text-align: left;
}

th {
	text-align: left;
}

.label-xxxlarge {
	width: 350px;
}

.label-xxlarge {
	width: 300px;
}

.label-xlarge {
	width: 250px;
}

.label-large {
	width: 200px;
}

.label-medium {
	width: 100px;
}

.label-small {
	width: 75px;
}

/*input, select {
	color: #fff;
	background: #0071bc;
	height: 25px;
	padding: 3px;
	font-size: 1.1em;
}

select {
	height: 35px;
}*/

input[type=radio] {
	float: left;
	width: 20px;
	color: #f00;
}

input[type=submit], input[type=reset] {
	padding: 5px 20px;
	font-size: 1.25em;
	height: 2em;
}

.submitbutton {
  color: #fff !important;
  font-size: 14px;
  text-shadow: 1px 1px 0px #7CACDE;
  box-shadow: 1px 1px 1px #BEE2F9;
  padding: 10px 25px;
  border: 2px solid #000;
  background: #0071bc;
}
.submitbutton:hover {
  color: #fff !important;
  background: #0096D7;
  background: linear-gradient(top,  #0096D7, #48A942);
  background: -ms-linear-gradient(top,  #0096D7, #48A942);
  background: -webkit-gradient(linear, left top, left bottom, from(#0096D7), to(#48A942));
  background: -moz-linear-gradient(top,  #0096D7, #48A942);
}

article {
	width: 88%;
	float: left;
}

aside {
	margin-left: 20px;
	width: 10%;
	float: left;
}

aside p {
	display: block;
	max-width: 130px;
	text-align: center;
	background: #eee;
	border: 1px solid #ccc;
}

.first-letter {
	font-weight: 700;
}

p a:link {
	color: #00f;
}

p a:hover {
	color: #f00;
	text-decoration: underline;
}

aside img {
	width: 70px; 
	margin: 5px 0 -5px 0;
}

sup {
	font-weight: 700;
}

.text-source_serif_pro {
	font-family: 'Source Serif Pro', serif;
}

.text-bowlby_one_sc {
	font-family: 'Bowlby One SC', sans-serif;
}

.text-myriad_pro {
	font-family: 'Myriad Pro', sans-serif;
}

.text-hanken_grotesk {
	font-family: 'Hanken Grotesk', Verdana, serif;
}

.text-blue {
	color: #0E76BC;
}

.bg-gray {
	background-color: #ccc !important;
}

.Attention {
	color: #f00;
}

.celebrate {
	color: #808080;
}

.solid-button, .video-button {
  font-family: Arial;
  color: #fff !important;
  font-size: 20px;
  background: #2e318d;
  padding: 10px 20px 10px 20px;
  text-decoration: none;	
  border: solid #2e318d 2px;
}

.solid-button:hover, .video-button:hover {
  background: #000;
  text-decoration: none;
  border: solid #000 2px;
}

.video-button {
	background: #666;
	border: solid #666 2px;
}

.hollow-button {
  font-family: Arial;
  color: #2e318d;
  font-size: 20px;
  background: #fff;
  padding: 10px 20px 10px 20px;
  border: solid #2e318d 2px;
  text-decoration: none;
}

.hollow-button:hover {
  background: #000;
  text-decoration: none;
  border: solid #000 2px;
  color: #fff;
}

.solid-button-small {
	font-family: Arial;
	color: #fff !important;
	font-size: 1em !important;
	background: #2e318d;
	padding: 5px 10px 5px 10px;
	text-decoration: none;	
	border: solid #2e318d 2px;
  }
  
  .pageheading, .subheading {
	color: #aeaeae;
}

.pageheading {
	font-size: 4em;
	text-align: center;
}

.subheading {
	font-size: 2em;
}

.concert-images img, .sponsor_logos img {
	padding: 5px 10px;
	width: 200px;
}

.sponsors {
	font-size: 4em;
}

#performances {
	width: 1250px;
	margin: 0 auto;
}

.performer {
	display: inline-block;
	text-transform: capitalize;
	color: #000;
	font-size: 1.75em;
	width: 300px;
	padding: 20px 10px 0 10px;
}

.performer a:link, .performer a:visited {
	text-decoration: none;
	color: #000;
}

.performer a:hover, .performer a:focus {
	text-decoration: none;
	color: #355989;
}

.performer_history {
	display: inline-block;
	height: 224px;
	padding-top: 10px;
	padding-bottom: 20px;
	padding-right: 40px;
	vertical-align: top;
}

.performer_history img {
	height: 174px;
}

.figure_description {
	font-size: .75em;
	margin-top: -5px;
}

.concerts_blue_bg {
	background-color: #80b6dc;
}

.concerts_purple_bg {
	background-color: #c58dc4;
}

.concerts_grey_bg {
	background-color: #ebf5fc;

}

.concerts_orange_bg {
	background-color: #dd8890;

}

.concerts_yellow_bg {
	background-color: #fdd59a;

}

#col1, #col2, #col3, #pcol1, #pcol2, #pcol3, #pcol_combined {
	display: block;
	float: left;
	margin: 10px;
}

#col1, #col2, #col3, #pcol1, #pcol2, #pcol3 {
	margin: 10px;
}

#col1, #col3 {
	width: 25%;
}

#col1 img, #col3 img {
	width: 250px;
}

#col2 {
	width: 44%;
}

/*#pcol1, #pcol2, #pcol3 {
	height: 100px;
}*/

#pcol1 {
	width: 35%;
}

#pcol2 {
	width: 25%;
}

#pcol3 {
	width: 45%;
}

#pcol_combined {
	width: 60%;
	padding: 0;
}

#ccol1, #ccol2 {
	float: left;
}

#ccol1 {
	width: 50%;
}

#ccol1 img {
	max-width: 100%;
}

#ccol2 {
	width: 47%;
	margin-left: 25px;
}

#concert_history label {
	width: 100px;
	text-align: right;
	padding-right: 25px;	
}

/*.concert_image img:last-child {
	display:none
}

.concert_image:hover img:first-child {
	display:none
}

.concert_image:hover img:last-child {
	display:inline-block
}*/

#student_outreach {
	font-size: 1em;
}

#student_outreach .heading {
	color: #751212;
	font-weight: 700;
}

#student_outreach img {
	max-width: 100%;
}

/* .sponsors_table tr:nth-child(even) {
    background-color: #eee;
} */

.sponsors_table td, .sponsors_table th {
	padding: 5px;
}

/* Page Background Images */
/*#bod {
	background-image: url('../images/bod-bg.jpg');
	background-repeat: no-repeat;
}
*/

#con {
	background: #000;
	background-image: url('../images/contact-bg.jpg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
			
#pas1 {
	background-image: url('../images/patrons1-bg.jpg');
	background-repeat: no-repeat;
	background-position: center;
}

#pas2 {
	background-image: url('../images/patrons2-bg.jpg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}
			
#tix {
	background-image: url('../images/tickets-bg.jpg');
	background-repeat: no-repeat;
	background-size: contain;
}

#bod {
	background-image: url('../images/bod-bg.jpg');
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

/* .display-1 {
	font-family: 'Libre Baskerville', serif;
}

.display-4 {
	font-family: 'Passion One', cursive;
} */
			
.modal {
	z-index: 10050;
}

.modal-admin {
    width: 600px; /* respsonsive width */
    margin: 50px auto; /* width/2) */ 
}

#paymentModal .modal-admin {
	width: 1100px;
	margin: 50px auto;
}


#link:hover {
	cursor: pointer;
}

.carousel-fade .carousel-inner .item {
  opacity: 0;
  transition-property: opacity;
}

.carousel-fade .carousel-inner .active {
  opacity: 1;
}

.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  left: 0;
  opacity: 0;
  z-index: 1;
}

.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
  opacity: 1;
}

.carousel-fade .carousel-control {
  z-index: 2;
}

/*
  WHAT IS NEW IN 3.3: "Added transforms to improve carousel performance in modern browsers."
  Need to override the 3.3 new styles for modern browsers & apply opacity
*/
@media all and (transform-3d), (-webkit-transform-3d) {
    .carousel-fade .carousel-inner > .item.next,
    .carousel-fade .carousel-inner > .item.active.right {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.prev,
    .carousel-fade .carousel-inner > .item.active.left {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.next.left,
    .carousel-fade .carousel-inner > .item.prev.right,
    .carousel-fade .carousel-inner > .item.active {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
}
@media screen and (max-width: 1445px) {
	nav li a {padding: 0 1em;}
}
			
@media screen and (max-width: 1105px) {
	nav li a {padding: 0 .5em; }
}

@media screen and (max-width: 1815px) {
	#pcol1, #pcol2, #pcol3 {display: block; width: 100%; float: none;}
	#perfomance {max-height: 500px;}
}

.navbar-custom {
	background-color: #fff !important;
	padding: 0;
}

.dropdown:hover>.dropdown-menu {
	display: block;
  }
  
  .dropdown>.dropdown-toggle:active {
	/*Without this, clicking will make it sticky*/
	  pointer-events: none;
  }

.navbar-nav li {
	padding: 0 10px;
}

.navbar-nav .nav-item .nav-link, .dropdown-item {
	font-family: 'Hanken Grotesk', sans-serif;
	font-size: 1.5em;
}

.dropdown-menu {
	border: none;
}

.btn-lilac, .btn-red, .btn-yellow {
	font-family: "Inter", sans-serif;
	color: #ffffff !important;
	font-size: 24px;
	font-weight: 700;
	border: solid #000000 2px;
	text-decoration: none;
  }
  
  .btn-lilac:hover, .btn-red:hover, .btn-yellow:hover {
	text-decoration: none;
  }

  .btn-lilac {
	background: #B592C3;
	padding: 10px 80px;
  }

  .btn-lilac:hover {
	background: #a559c4;
  }

  .btn-red {
	background: #f00;
	padding: 10px 40px;
  }

  .btn-red:hover {
	background: #f66;
  }

  .btn-yellow {
	background: #ff0;
	color: #000 !important;
	padding: 10px 80px;
  }

  .btn-yellow:hover {
	background: #ff9;
  }

/* 
.animation-element {
	opacity: 0;
	position: relative;
  }
  /*animation element sliding left*/
  
  .animation-element.slide-left {
	opacity: 0;
	-moz-transition: all 500ms linear;
	-webkit-transition: all 500ms linear;
	-o-transition: all 500ms linear;
	transition: all 500ms linear;
	-moz-transform: translate3d(-100px, 0px, 0px);
	-webkit-transform: translate3d(-100px, 0px, 0px);
	-o-transform: translate(-100px, 0px);
	-ms-transform: translate(-100px, 0px);
	transform: translate3d(-100px, 0px, 0px);
  }
  
  .animation-element.slide-left.in-view {
	opacity: 1;
	-moz-transform: translate3d(0px, 0px, 0px);
	-webkit-transform: translate3d(0px, 0px, 0px);
	-o-transform: translate(0px, 0px);
	-ms-transform: translate(0px, 0px);
	transform: translate3d(0px, 0px, 0px);
  } */

  .StripeElement {
    background-color: white;
    height: 40px;
    padding: 10px 12px;
    border-radius: 4px;
    border: 1px solid transparent;
    box-shadow: 0 1px 3px 0 #e6ebf1;
    -webkit-transition: box-shadow 150ms ease;
    transition: box-shadow 150ms ease;
}

.StripeElement--focus {
    box-shadow: 0 1px 3px 0 #cfd7df;
}

.StripeElement--invalid {
    border-color: #fa755a;
}

.StripeElement--webkit-autofill {
    background-color: #fefde5 !important;
}
/*micro-clearfix by Nicolas Gallagher http://nicolasgallagher.com/micro-clearfix-hack/*/
/* For modern browsers */
.cf:before,
.cf:after {
	content:"";
	display:table;
}

.cf:after {
	clear:both;
}

/* For IE 6/7 (trigger hasLayout) */
.cf {
	zoom:1;
}