/* --------------------------------

Primary style

-------------------------------- */
*, *::after, *::before {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
}

body {
  font-size: 1.6rem;
  /*font-family: "Open Sans", sans-serif;*/
  font-family: 'Cormorant Garamond', Georgia, Times, 'Times New Roman', serif;
  background-color: #823f82;
  color:#fff;
  min-height: 100vh;
}

a {
  text-decoration: none;
}
h3 {
    font-size: calc(1.25em + 2vw);
    letter-spacing: 0.02em;
}
sup{
  vertical-align: top;
  font-size: 0.7em;
}
/* --------------------------------

Main Components

-------------------------------- */
.cd-header {
  height: 60px;
  width: 60px;
  position: fixed;
  -webkit-transition: -webkit-transform 0.5s;
  -moz-transition: -moz-transform 0.5s;
  transition: transform 0.5s;
  /* Force Hardware Acceleration in WebKit */
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  top: 0;
  right: 0;
}
.cd-header::after {
  clear: both;
  content: "";
  display: table;
}
.cd-header.nav-is-visible {
  -webkit-transform: translateY(80px);
  -moz-transform: translateY(80px);
  -ms-transform: translateY(80px);
  -o-transform: translateY(80px);
  transform: translateY(80px);
}
@media only screen and (min-width: 768px) {
  .cd-header.nav-is-visible {
    -webkit-transform: translateY(170px);
    -moz-transform: translateY(170px);
    -ms-transform: translateY(170px);
    -o-transform: translateY(170px);
    transform: translateY(170px);
  }
}

.cd-logo {
  float: left;
  margin-top: 28px;
}

.cd-3d-nav-trigger {
  position: relative;
  float: right;
  height: 45px;
  width: 45px;
  margin-top: 23px;
  /* replace text with background image */
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  color: transparent;
  top: 0;
  margin-right: 23px;
  padding-right: 5vw;
}
.cd-3d-nav-trigger span,
.cd-3d-nav-trigger span::before,
.cd-3d-nav-trigger span::after {
  /* hamburger icon in CSS */
  position: absolute;
  width: 28px;
  height: 3px;
  background-color: #FFF;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.cd-3d-nav-trigger span {
  /* this is the central line */
  top: 21px;
  left: 8px;
  -webkit-transition: background 0.2s 0.5s;
  -moz-transition: background 0.2s 0.5s;
  transition: background 0.2s 0.5s;
}
.cd-3d-nav-trigger span::before, .cd-3d-nav-trigger span:after {
  /* these are the upper and lower lines */
  content: '';
  left: 0;
  -webkit-transition: -webkit-transform 0.2s 0.5s;
  -moz-transition: -moz-transform 0.2s 0.5s;
  transition: transform 0.2s 0.5s;
}
.cd-3d-nav-trigger span::before {
  bottom: 8px;
}
.cd-3d-nav-trigger span::after {
  top: 8px;
}
.nav-is-visible .cd-3d-nav-trigger span {
  /* hide line in the center */
  background-color: rgba(255, 255, 255, 0);
}
.nav-is-visible .cd-3d-nav-trigger span::before, .nav-is-visible .cd-3d-nav-trigger span::after {
  /* keep visible other 2 lines */
  background-color: white;
}
.nav-is-visible .cd-3d-nav-trigger span::before {
  -webkit-transform: translateY(8px) rotate(-45deg);
  -moz-transform: translateY(8px) rotate(-45deg);
  -ms-transform: translateY(8px) rotate(-45deg);
  -o-transform: translateY(8px) rotate(-45deg);
  transform: translateY(8px) rotate(-45deg);
}
.nav-is-visible .cd-3d-nav-trigger span::after {
  -webkit-transform: translateY(-8px) rotate(45deg);
  -moz-transform: translateY(-8px) rotate(45deg);
  -ms-transform: translateY(-8px) rotate(45deg);
  -o-transform: translateY(-8px) rotate(45deg);
  transform: translateY(-8px) rotate(45deg);
}

.cd-3d-nav-container {
  /* this is the 3D navigation container */
  position: fixed;
  top: 0;
  left: 0;
  height: 80px;
  width: 100vw;
  background-color: #000000;
  visibility: hidden;
  /* enable a 3D-space for children elements */
  -webkit-perspective: 1000px;
  -moz-perspective: 1000px;
  perspective: 1000px;
  -webkit-transform: translateY(-100%);
  -moz-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  -o-transform: translateY(-100%);
  transform: translateY(-100%);
  -webkit-transition: -webkit-transform 0.5s 0s, visibility 0s 0.5s;
  -moz-transition: -moz-transform 0.5s 0s, visibility 0s 0.5s;
  transition: transform 0.5s 0s, visibility 0s 0.5s;
}
.cd-3d-nav-container.nav-is-visible {
  visibility: visible;
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  -ms-transform: translateY(0);
  -o-transform: translateY(0);
  transform: translateY(0);
  -webkit-transition: -webkit-transform 0.5s 0s, visibility 0.5s 0s;
  -moz-transition: -moz-transform 0.5s 0s, visibility 0.5s 0s;
  transition: transform 0.5s 0s, visibility 0.5s 0s;
}
@media only screen and (min-width: 768px) {
  .cd-3d-nav-container {
    height: 170px;
  }
}

.cd-3d-nav {
  /* this is the 3D rotating navigation */
  position: relative;
  height: 100%;
  background-color: #532453;
  /* Force Hardware Acceleration */
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform-origin: center bottom;
  -moz-transform-origin: center bottom;
  -ms-transform-origin: center bottom;
  -o-transform-origin: center bottom;
  transform-origin: center bottom;
  -webkit-transform: rotateX(90deg);
  -moz-transform: rotateX(90deg);
  -ms-transform: rotateX(90deg);
  -o-transform: rotateX(90deg);
  transform: rotateX(90deg);
  -webkit-transition: -webkit-transform 0.5s;
  -moz-transition: -moz-transform 0.5s;
  transition: transform 0.5s;
}
.cd-3d-nav::after {
  /* menu dark cover layer - to enhance perspective effect */
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: #000000;
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.5s 0s, visibility 0.5s 0s;
  -moz-transition: opacity 0.5s 0s, visibility 0.5s 0s;
  transition: opacity 0.5s 0s, visibility 0.5s 0s;
}
.cd-3d-nav li {
  height: 100%;
  width: 20%;
  float: left;
}
.cd-3d-nav li a::before {
	font-size: 4.5vw;
    top: 40%;
    line-height: 0;
}
.cd-3d-nav li a.small::before {
		font-size: 3.5vw;
	}
.cd-3d-nav li a.large::before {
		font-size: 5.4vw;
	}
.cd-3d-nav li:first-of-type a::before {
 /* background-image: url(../img/icon-1.svg);*/
 	content: '\e808';
}
.cd-3d-nav li:nth-of-type(2) a::before {
  /*background-image: url(../img/icon-2.svg);*/
   	content:  '\e803';
}
.cd-3d-nav li:nth-of-type(3) a::before {
  /*background-image: url(../img/icon-3.svg);*/
   	content: '\e800';
}
.cd-3d-nav li:nth-of-type(4) a::before {
 /* background-image: url(../img/icon-4.svg);*/
 	content: '\e809';
}
.cd-3d-nav li:nth-of-type(5) a::before {
  /*background-image: url(../img/icon-5.svg);*/
 	content: '\e802';
}
.cd-3d-nav a {
  position: relative;
  display: block;
  height: 100%;
  color: transparent;
  -webkit-transition: background-color 0.2s;
  -moz-transition: background-color 0.2s;
  transition: background-color 0.2s;
  font-weight:700 !important;
}
.cd-3d-nav a span{
	 font-weight:700 !important;
}
.cd-3d-nav a::before {
  /* navigation icons */
  content: '';
  height: 32px;
  width: 32px;
  position: absolute;
  left: 50%;
  top: 50%;
  bottom: auto;
  right: auto;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -moz-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  -o-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  background-size: 32px 64px;
  background-repeat: no-repeat;
  background-position: 0 0;
}
.no-touch .cd-3d-nav a:hover {
  background-color: #692d69;
}
.cd-3d-nav .cd-selected a {
  background-color: #441e44;
}
.no-touch .cd-3d-nav .cd-selected a:hover {
  background-color: #441e44;
}
.cd-3d-nav .cd-selected a::before {
  background-position: 0 -32px;
}
.nav-is-visible .cd-3d-nav {
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
}
.nav-is-visible .cd-3d-nav::after {
  /* menu cover layer - hide it when navigation is visible */
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.5s 0s, visibility 0s 0.5s;
  -moz-transition: opacity 0.5s 0s, visibility 0s 0.5s;
  transition: opacity 0.5s 0s, visibility 0s 0.5s;
}
/*@media only screen and (min-width: 768px) {*/
  .cd-3d-nav a {
    padding: 6em 0.2em 0;
    color: #ffffff;
    font-size: 1.6rem;
    font-weight: 600;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* truncate text with ellipsis if too long */
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding: 6.5em 0.1em 0;
    font-size: 1.75rem;
    letter-spacing: 0.025rem;
  }
  .cd-3d-nav a::before {
    top: 4.4em;
    left: 50%;
    right: auto;
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);
    transform: translateX(-50%);
  }
/*}*/


.cd-marker {
  /* line at the bottom of nav selected item */
  position: absolute;
  bottom: 0;
  left: 0;
  height: 3px;
  width: 20%;
  -webkit-transform-origin: center bottom;
  -moz-transform-origin: center bottom;
  -ms-transform-origin: center bottom;
  -o-transform-origin: center bottom;
  transform-origin: center bottom;
  -webkit-transform: translateZ(0) rotateX(90deg);
  -moz-transform: translateZ(0) rotateX(90deg);
  -ms-transform: translateZ(0) rotateX(90deg);
  -o-transform: translateZ(0) rotateX(90deg);
  transform: translateZ(0) rotateX(90deg);
  -webkit-transition: -webkit-transform 0.5s, left 0.5s, color 0.5s, background-color 0.5s;
  -moz-transition: -moz-transform 0.5s, left 0.5s, color 0.5s, background-color 0.5s;
  transition: transform 0.5s, left 0.5s, color 0.5s, background-color 0.5s;
}
.cd-marker::before {
  /* triangle at the bottom of nav selected item */
  content: '';
  position: absolute;
  bottom: 3px;
  left: 50%;
  right: auto;
  -webkit-transform: translateX(-50%);
  -moz-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  -o-transform: translateX(-50%);
  transform: translateX(-50%);
  height: 0;
  width: 0;
  border: 10px solid transparent;
  border-bottom-color: inherit;
}
.nav-is-visible .cd-marker {
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
}

/* these are the colors of the markers - line + arrow */
.color-1 {
  color: #9a57bd;
  background-color: #9a57bd;
}

.color-2 {
  color: #c96aa4;
  background-color: #c96aa4;
}

.color-3 {
  color: #d6915e;
  background-color: #d6915e;
}

.color-4 {
  color: #5397c7;
  background-color: #5397c7;
}

.color-5 {
  color: #77cd91;
  background-color: #77cd91;
}

main {
  -webkit-transition: -webkit-transform 0.5s;
  -moz-transition: -moz-transform 0.5s;
  transition: transform 0.5s;
  /* Force Hardware Acceleration in WebKit */
  -webkit-transform: translateZ(0);
  -moz-transform: translateZ(0);
  -ms-transform: translateZ(0);
  -o-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
    width: 93%;
    margin: 0 2% 0 6%;
    min-height: 100vh;
    position: relative;
    /* padding-bottom: 6em; */
    padding-bottom: calc(7em + 3vh - 2vw)
}
@media only screen and (max-width: 35.5em) {
  body {
    overflow-x: hidden;
  }
  main {
      width: 98%;
      margin: 0 0 0 3.5%;
  }
  .footer.bodyContent.grid-1 {
    width: calc(94vw + 5px);
  }
}
/*main h1 {
  text-align: center;
  font-size: 2.4rem;
  font-weight: 300;
  color: #ffffff;
  margin: 2em auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

}*/
main.nav-is-visible {
  -webkit-transform: translateY(80px);
  -moz-transform: translateY(80px);
  -ms-transform: translateY(80px);
  -o-transform: translateY(80px);
  transform: translateY(80px);
}
@media only screen and (min-width: 768px) {
  main.nav-is-visible {
    -webkit-transform: translateY(170px);
    -moz-transform: translateY(170px);
    -ms-transform: translateY(170px);
    -o-transform: translateY(170px);
    transform: translateY(170px);
  }
  /*main h1 {
    font-size: 3.6rem;
    margin: 4em auto;
  }*/
}




.slabtexted .slabtext
    {
    display: -moz-inline-box;
    display: inline-block;
    white-space: nowrap;
    }
.slabtextinactive .slabtext
    {
    display: inline;
    white-space: normal;
    font-size: 1em !important;
    letter-spacing: inherit !important;
    word-spacing: inherit !important;
    *letter-spacing: normal !important;
    *word-spacing: normal !important;
    }
	.slabtextdone .slabtext{
    display: block;
    }
	h2.headline > span + span {
	    padding-top: 0.8vw;
	}
	h2.headline > span:first-child{
	    padding-top: 0.1vw;
	}
	.slabtext.lightFont {
		font-weight: 400;
	}

.headline {
    /* padding-right: 4vw !important; */
    border: 1px solid #fff;
    padding: 0.1em 2.5vw 1vw 2.5vw;
    margin: 1vw 3.5em 0 -2.5vw;
}
/* @media only screen and (max-width: 567.999px) {
  .headline:not(.announc) {
    margin: unset;
  }
} */

.headline.announc{
  margin: unset;
}
@media only screen and (max-width: 35.5em) {
  .headline.announc{
    margin-right: 6vw;
  }
}

h2.headline .slabtext {
    letter-spacing: 0.4vw !important;
}

.graph {
	pointer-events: auto;
    color: #fff;
	text-decoration: none;
	display: inline;
	opacity: 1;
	font-family: Courier, 'Courier New', monospace;
	word-wrap: break-word;
	font-style: normal;
	font-weight: bold;
	overflow: visible; z-index: 6;">
    /*webkit-box-reflec
	t: below 14.0594px -webkit-gradient(linear, 0% 0%, 0% 100%, from(transparent), color-stop(0.628713, transparent),
        to(rgba(255, 255, 255, 0.498039)));	*/
	position:relative;
}



.graph p{
	font-size: 0.9vw;
	margin: 0px;
	line-height: 1vw;
	}


.logoType{
	position:absolute;
	font-weight:900;
	text-align:center;
	width:28vw;
	color:#fff;
	margin-top: 29px;
	left:12.5vw;
	margin-left:-12.5vw;
	font-weight: 700;
	}
.logoType.stellar{
	top:0.65vw;
	font-size:4.2vw;
	letter-spacing:0.2vw;
	text-shadow: #823f82 0px 0px 4px;


	}
.logoType.musicSpace{
	top: 4.8vw;
    font-size: 2.8vw;
	letter-spacing:0.2vw;
	}

	.grid-1 .col-8.col-8_xs-12 {
		margin-top: -0.5vw;
		padding-top: 23px;
	}

	.visibleMobile{
		display:none;
	}
  h3.visibleDesktop,
  p.visibleDesktop,
	span.visibleDesktop{
		display:inline-block;
	}
	div.visibleDesktop{
		display:block;
	}


@media only screen and (min-width: 48em) {
  .grid-3_lg-2_sm-1{
    padding:0;
  }
}


@media only screen and (max-width: 35.5em) {


  h3.visibleDesktop,
  p.visibleDesktop,

  div.visibleDesktop{
		display:none !important;
	}
  .map-holder{
    margin-bottom: -1em;
  }
}
@media only screen and (max-width: 47.999em) {/*35.5*/
  span.visibleDesktop{
    display:none !important;
  }
	.grid-1 .col-4{
		/*padding-left:24%;*/
	}


	.cd-3d-nav a {
    	padding: 2.9em 0.5em 0;
	}
	.cd-3d-nav a {
		/*padding: 3.75em 0.5em 0;
		text-transform: uppercase;
		font-size: 1.275rem;
		letter-spacing: 0.075rem;*/
		padding: 3.7em 0 0 0;
		/*		  text-transform: uppercase;
*/
		font-size: 1.35rem;
		letter-spacing: 0.05rem;
	}

	.cd-3d-nav li a::before {
		top: 32%;
	}

}



a.cd-3d-nav-trigger.roundButton {
    position: relative;
    background-color: transparent;
    overflow: visible;
}
a.cd-3d-nav-trigger .round{
    display:none;
}
a.cd-3d-nav-trigger.roundButton .round{
	display:block;
	position: absolute;
	/*top: -0.5em;*/
	left:0;
	background-color: rgba(130, 63, 130, 0.65); /*#823f82;*/
	border:1px solid rgba(255, 255, 255, 0.85);
	box-shadow: 0 0 8px rgba(130, 63, 130, 1);
	border-radius: 2em;
	width: 2.75em;
	height: 2.75em;
}





@media only screen and (max-width: 35.5em) {/*35.5*/
a.cd-3d-nav-trigger.roundButton .round{
	top: 50%;
	margin-top: -48%;
}
div.visibleDesktop{
		display:none !important;
	}
.visibleMobile{
		display:inline-block;
	}

	.grid-1 .col-8.col-8_xs-12 {
		margin-top: 1.5vw;
		padding-top: 0px;
	}
	.headline {
		/*padding-right: 0 !important;*/
		margin-right: 6vw;
		margin-left: 0;
		padding: 2vw 4.5vw 3vw 5vw;
	}
	h2.headline > span + span {
		padding-top: 1.4vw;
	}
	.cd-logo {
		margin-top: 2vw;
		margin-right: -6em;
	}
	.cd-3d-nav-trigger {
		margin-top: 4vw;
		margin-right: 7.25vw;
		height: 7vw;
		background-color: #823f82;
	}
	.cd-3d-nav-trigger span {
   	 top: 3.25vw;
	}
	.graph p{
		font-size: 1.8vw;
		line-height: 2vw;
	}
	.logoType{
		width:56vw;
		margin-top: 2vw;
		margin-left:6vw;
	}
	.logoType.stellar{
		top:1.3vw;
		font-size:8.4vw;
		letter-spacing:0.4vw;
	}
	.logoType.musicSpace{
		top: 10vw;
		font-size: 6vw;
		letter-spacing:0.4vw;
	}
	.cd-3d-nav li a::before {
		font-size: 6vw;
		top: 35%;
	}
	.cd-3d-nav li a.small::before {
		font-size: 5vw;
	}
	.cd-3d-nav li a.large::before {
		font-size: 8vw;
	}
}
@media only screen and (min-width: 35.501em) {/*35.5*/
.hiddenDesktop{
		display:none !important;
	}
}


.flex-img{
  display:flex;
  flex-direction: row;
  flex: 1;
}
.flex-img img{
  width:100%;
  /* max-height: 150px; */
  height: 100%;
  padding: 0.33vw;
}
.row {
    display: flex;
    flex: 1;
    flex-direction: row;
}
@media only screen and (max-width: 35.5em) {/*35.5*/
  .row {
      flex-direction: column;
  }
}
.border .address {
    display: flex;
    flex-direction: column;
    text-align: left;
    font-size: 0.8em;
    line-height: 1.3em;
    margin-right: -40px;
}
.border .address num{
    font-size: 1.2em;
    line-height: 1.4;
}

.fontMobile{
		/* font-size:larger; */
		padding-top: 0.25em;
		display: block;
		border-top: 1px solid;
		/* width: 87%; */
    width: 95%;
		padding-bottom: 0.1em;
	}

  .footer.bodyContent {
    height: auto;
    position: absolute;
    bottom: 0;
    width: calc(89vw + 5px);
  }

@media only screen and (min-width: 72em) {
	body{overflow-x: hidden;}

	h2.headline {
		margin: 1.5vw 18vw 0 -2.5vw;
		padding-top: 1vw;
		padding-bottom: 1.5vw;
	}
	.cd-3d-nav li a::before {
		font-size: 3em;
	}
	.cd-3d-nav li a.small::before {
		font-size: 2.5em;
	}
	.cd-3d-nav li a.large::before {
		font-size: 3.6em;
	}

  .animOpacity.bodyContent {
		margin-right: 17.75vw;
		padding-top:12em;
	}
  .footer.bodyContent {
    /*margin-right: 17.75vw;*/
    padding-top:2em;
    width: calc(75.25vw + 5px);
  }
	main {
		transform: translateX(6vw);
	}
	main.nav-is-visible {
		transform: translateX(6vw) translateY(170px);
	}
	#home > .grid-1 > div:nth-child(3),
	#home > .grid-1 > div:nth-child(4),
	#home > .grid-1 > div:nth-child(5),
	#home > .grid-1 > div:nth-child(6) {
		margin-top:-3em;
	}
	nav {
		overflow: hidden;
	}
	ul.cd-3d-nav {
		width: 76vw;
	}
	.cd-marker {
		margin-left: -11.5vw;
	}
	.cd-3d-nav-container {
		margin-left: 11.5vw;
		width: 76vw;
    border-radius: 0 0 1em 1em;
	}
	#resources > div.animOpacity.grid-1 {
		margin-right: 12.75vw;
	}
	#tab1 .col-6_xs-12 {
		width: 36vw !important;
		margin-right: -0.1em;
	}
	section.content div.animOpacity {
		padding-top: 1.5em !important;
	}
	.cd-header {
   	 right: 1.25vw;
	 margin-top:0.25vw;
	}
	.cd-header.nav-is-visible {
		transform: translateY(2vw);
	}


	.cd-3d-nav-container {
		background: #823f82;
	}



/*
.cd-3d-nav {
    background: #823f82;
}
.cd-3d-nav-container{
    background: #823f82;
}

.cd-3d-nav li {
    border-radius: 50%;
    overflow: hidden;
    background: #823f82;
    border: 0.6vw solid #823f82;
}
.cd-marker {
    background: transparent;
}
*/

	/* .fontMobile{
		width: 80%;
	} */





}











/*@font-face {
  font-family: 'typicons';
  src: url("../fonts/typicons.eot");
  src: url("../fonts/typicons.eot?#iefix") format('embedded-opentype'),
       url("../fonts/typicons.woff") format('woff'),
       url("../fonts/typicons.ttf") format('truetype'),
       url("../fonts/typicons.svg#typicons") format('svg');
  font-weight: normal;
  font-style: normal;
}*/


@font-face {
  font-family: 'fontello';
  src: url('../fonts/fontello.eot?44638198');
  src: url('../fonts/fontello.eot?44638198#iefix') format('embedded-opentype'),
       url('../fonts/fontello.woff2?44638198') format('woff2'),
       url('../fonts/fontello.woff?44638198') format('woff'),
       url('../fonts/fontello.ttf?44638198') format('truetype'),
       url('../fonts/fontello.svg?44638198#fontello') format('svg');
  font-weight: normal;
  font-style: normal;
}





	section.showing:not(.footer){
		overflow: visible;
    	max-height: 99999999;
	}
	section.hiding:not(.footer){
		overflow: hidden;
    max-height: 0;
    display:none;
	}

	/* ??????????  Maybe I commented this out for mobile? I need it for desktop. re-added above to '.hiding'
  section.showing{
		display:block;
	}
	section.hiding{
		display:none;
	}*/
	section.content div.animOpacity  {
		opacity:0;
		/*-moz-transition: opacity .25s ease-in-out;
	   -webkit-transition: opacity .25s ease-in-out;
	   transition: opacity .25s ease-in-out;*/
		padding-top: 0.75em;
	}
	section.content.showing  div.animOpacity  {
		opacity:1;
		-moz-transition: opacity .25s ease-in-out;
	   -webkit-transition: opacity .25s ease-in-out;
	   transition: opacity .25s ease-in-out;
	}
	section.content.hiding   div.animOpacity  {
		opacity:0;
	}




.address.col-4.col-4_xs-12 {
    margin-top: -0.5vw;
    padding-top: 23px;
    padding-right: 2.5em;
}
.address.col-4.col-4_xs-12 p {
    /* line-height: 2vw; */
    padding-top: 0.35em;
    padding-right: 2em;
    padding-left: 2em;
}



	.resources .col{
		position:relative
		}
	.resources iframe{
		width: 96.25%;
    	height: 60vh;
      min-height:500px;
   		margin: -0.5em -0.5% 0 -0.5em;
	}
	.resources .background{
		width: 93%;
		height:100%;
		position:absolute;
		top:0;
		margin: 0;
		background-color:rgba(255,255,255,0.9);
		z-index:-1;
	}

@media only screen and (max-width: 35.5em) {
	.resources iframe {
		width: 88vw;
		height: 60vh;
		min-height:400px;
		margin: 0 -2%;
	}
	.resources .background{
		width: 92%;
	}
}

a.goToLessons,
a.goToSummerCamp{
	cursor:pointer;
}

























ul.tabs {
	margin: 0;
	padding: 0;
	float: left;
	list-style: none;
	height: 34px;
	/* border-bottom: 1px solid #333; */
	width: 100%;
}

ul.tabs li {
	float: left;
	margin: 0;
	cursor: pointer;
	padding: 0px 23px;
	height: 33px;
	line-height: 33px;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	/* border-bottom: 1px solid #333; */
	/* background-color: #666; */
	color: #fff;
	overflow: hidden;
	position: relative;
	border-right: 1px solid #ddd;
	border-top-left-radius: 1em;
	border-top-right-radius: 1em;
	/*font-weight: 700;*/
  font-size: 1.2em;
}

.tab_last { border-right: 1px solid #333; }

ul.tabs li:hover {
	background-color: rgba(255,255,255,0.125);
	/* color: #823f82; */
}

ul.tabs li.active {
	background-color: #fff;
	color: #823f82;
	/* border-bottom: 1px solid #fff; */
	display: block;
}

.tab_container {
	border: 1px solid #fff !important;
	border-top: none;
	clear: both;
	float: left;
	width: 100%;
	/*<!--<!--background: #fff;-->-->*/
	overflow: auto;
	margin-top: -1px;
	padding-bottom: 1em;
	overflow: hidden;
}

.tab_content {
	padding: 0;
	display: none;
}

.tab_drawer_heading { display: none; }

.tab_content li {
    padding: 0.3em 1em 0 1em;
    line-height: 1.9rem;
    font-size: 1.1em;
}
.tab_content ul.session_tabs {
    margin: 0px 0 8px 0;
    padding-left: 0;
    padding-right: 0;
}
.tab_content ul.session_tabs li {
    padding: 1.25em 0 0 0;
    border-top: 1px solid #fff;
    margin-top: 1.25em;
}
.tab_content ul.session_tabs .flex {
  display: flex;
  flex-direction: column;
}
.tab_content ul.session_tabs .twoDay {
  border-style: dashed;
  border-color:rgba(255,255,255, 0.4);
  border-top-width: 1px;
  padding: 1em 0 0 0;
}
@media screen and (min-width: 767px) {
  .tab_content ul.session_tabs .flex {
    flex-direction: row;
  }
  .tab_content ul.session_tabs .flex div{
    flex: 1;
  }
  .tab_content ul.session_tabs .flex div + div{
    flex: 1;
    margin-left: 5px;
  }
  .tab_content ul.session_tabs .twoDay {
    border-top-width: 0px;
    padding: 0 0 0 0;
    border-left-width: 1px;
    margin-left: calc(1em + 1.5vw);
    padding-left: calc(1em + 2vw);
    /* margin-bottom: 2em; */
  }
}
@media screen and (min-width: 1280px) {
  .tab_content ul.session_tabs .flex div + div{
    flex: 1.23;
  }
}
@media screen and (min-width: 1800px) {
  .tab_content ul.session_tabs .flex div + div{
    flex: 1.5;
  }
}
/* .tab_content ul.session_tabs li:last-child {
    border-bottom: 1px solid #fff;
} */
.tab_content ul.session_tabs li .session_dates{
    padding: calc(.15em + 0.15vw) 0;
    display: inline-block;
    font-size: calc(.9em + 0.5vw);
    text-transform: capitalize;
    line-height: calc(1.2em + 0.25vw);
    letter-spacing: 0.15vw;
}
.tab_content ul.session_tabs li .session_headline{
    padding: calc(.15em + 0.15vw) 0;
    display: inline-block;
    font-size: calc(1.075em + 0.5vw);
    text-transform: uppercase;
    line-height: calc(1.075em + 0.25vw);
}
.tab_content ul.session_tabs li .fontMobile{
    line-height:calc(1.1em + 0.15vw);
    font-size:  calc(1.075em + 0.15vw);
    width: 100%;
    border: 0 ;
}
.tab_content ul.session_tabs li .fontMobile.desc{
    padding: 0.5em 0.5em 1em 0;
    font-size: calc(.875em + 0.1125vw);
    
}
.animOpacity  p {
    padding: 0.3em 1em 0.1em 1em;
    line-height: 2.2rem;
    font-size: 1.2em;
}
@media screen and (max-width: 700px) {
#home .animOpacity  p.dropcaps.homepage {
      font-size: 0.85em;
  }
  .mobMargins{
    margin:-1.2em!important;
  }
}
h4 {
    padding: 1em 1em 0.25em 1em;
    font-size: 1.2em;
}

.tab_container .tab_content:not(.viz) {
		padding: 1.5em 1em 0 1em;
	}
.tab_container .tab_content.rates {
		padding: 1em 1em 0 1em;
	}
.tab_content > h4:nth-child(1) {
    padding-top: 0;
}

@media screen and (max-width: 480px) {
	ul.tabs{
		display:flex;
	}
	ul.tabs li{
		padding-left:0;
		padding-right:0;
		text-align: center;
		flex-grow: 1;
	}
	form.wufoo {
    	margin: 0 !important;
	}

	input.small, select.small {
		width: 50%;
	}
	input.medium, select.medium {
		width: 125%;
	}
	.tab_container .tab_content:not(.viz) {
		padding: 1em 0 0 0;
	}
	.tab_container .tab_content.rates {
		padding: 0.5em 0.5em 0 0.5em;
		margin-bottom: -1.5em;
	}
	#tab1 > ul li > span.visibleMobile {
		display: block;
	}
	.fontMobile{
		width: 95%;
	}

}

@media screen and (max-width: 568px){
  .padfix{
    margin-top: 20px;
  }
}

@media screen and (min-width: 568.1px) and (max-width: 71.999em ){
  .padfix{
    margin-top: 40px;
  }
}

/*@media screen and (max-width: 480px) {
	.tabs {
		display: none;
	}
	.tab_drawer_heading {
		color: #fff;
		border-top: 1px solid #fff;
		margin: 0;
		padding: 5px 20px;
		display: block;
		cursor: pointer;
		-webkit-touch-callout: none;
		-webkit-user-select: none;
		-khtml-user-select: none;
		-moz-user-select: none;
		-ms-user-select: none;
		user-select: none;
	}
	.d_active {
		color: #fff;
		border-top-right-radius: 1em;
		border-top-left-radius: 1em;
		border-left: 1px solid #fff;
	}
}*/



.bodyContent {
    margin-right: 4vw;
}


.tab_content > p:last-child {
    padding-bottom: 2em;
}

.sr-only {
	position:absolute;
	height:0;
	width:0;
	opacity:0
}
num {
	font-family: 'Crimson Text';
	font-size:0.85em;
	}



  div.col.prices {
      /*padding: 0 0 1em 0;*/
  }
  div.col.prices:nth-child(odd) .border {
    border-left: none;
  }
  div.col.prices:nth-child(even) .border {
    border-right: none;
  }
  div.col.prices:nth-child(1) .border,
  div.col.prices:nth-child(2) .border  {
    border-top: none;
  }
  div.col.prices:nth-child(3) .border,
  div.col.prices:nth-child(4) .border  {
    border-bottom: none;
  }
  div.col.prices:nth-child(5) .border  {
    border-left: 1px solid #fff;
    border-bottom: none;
  }
  @media screen and (min-width: 1280px) {
    div.col.prices:nth-child(2) .border  {
      /* border-top: 1px solid #fff; */
      border-bottom: none;
      border-right: 1px solid #fff;
    }
    div.col.prices:nth-child(3) .border  {
      border-bottom: 1px solid #fff;
      border-top: none;
      border-left: 1px solid #fff;
      border-right: none;
    }
  }


.footer .border,
.prices .border {
    border: 1px solid;
    text-align: center;
    padding: 1em 0 1em 0;
    height: 100%;
}
.footer .border{
    padding: 1em 5vw;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .footer .border{
      padding: 1em 2.5vw;
  }
}
.footer .border .address num {
    font-size: 1.05em;
    line-height: 1.4;
}
.footer a {
    margin-left: 2vw;
}


.prices .border p.price {
	font-size: 4rem;
	line-height: 1em;
	padding: 0 0 0.5em 0;
}

.tab_content .border p {
    padding: 0.3em 0 0 0;
}
.prices .border > p:nth-child(2) {
    font-style: italic;
    padding: 0 0 0.3em 0;
    font-size: 1.1em;
}
.prices.wAstrick .border p:nth-child(2) {
    font-style: italic;
    padding: 0 0.75em 0.3em 0.75em;
    margin-top: -1.25em;
    font-size: 0.9em;
}


.bios .intro{
  padding: 0 15px 0 15px;
}
.bios .intro > .col,
.bios .intro > .col-4{
  text-align:left;
}
.bios .intro .img{
  width: 90%;
  margin-left: 0.1em;
  border: 0.1em solid #fff;
  border-radius: 50%;
  display: block;
  height: auto;
  position: relative;
  overflow: hidden;
  padding: 90% 0 0 0;
}
.bios .intro .img img{
      display: block;
      max-width: 100%;
      max-height: 100%;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 0;
      right: 0;
      transform: scale(1.1) translate(0.25em, 0.25em);
}
.bios .intro .words{
  margin: auto;
  text-align: left;
  padding-left: 0;
}
.bios .intro .name{
  font-size: 2.5rem;
  padding-bottom: 0.135em;
  padding-top: 0.135em;
  line-height: 1em;
}
.bios .intro .title{
  font-size: 1.1em;
}
.bios .intro .title span{
  margin-top: 6px;
  display: block;
  font-size: 0.7em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.bios .bio{
  padding-left:15px;
  padding-right:15px;
}
.bios .bio p{
  text-align: left;
  line-height: 1.3em;
  margin: 0.067em auto .666em auto;
  font-weight: 300;
}

/* .dropcaps{
  float:left;
  font-size:3em;
  margin: -10px 5px -10px 0;
} */
p.dropcaps {

  line-height: 1.4;
  /* margin: 1.45em auto;
  max-width: 38em;*/
  position: relative;

}
p.dropcaps span.caps{
    text-transform: uppercase;
    letter-spacing: 0.25em;
    margin: 0 -0.2em 0 -0.2em;
    font-weight: 500;
}
p.dropcaps:first-of-type::first-letter {
  /* font-family: Georgia, serif; */
  float: left;
  font-size: 3.075em;
  line-height: 0.8em;
  margin: 0;
  padding: 0 0.05em 0 0;
  font-weight: 300;
}


/* @media only screen and (min-width: 325.01px) and (max-width: 48em) {
	div.col.prices {
		padding: 0 0.25em 0.5em 0.25em;
	}
	div.col.prices:nth-child(odd) {
		padding: 0 0.25em 0.5em 0;
	}
	div.col.prices:nth-child(even) {
		padding: 0 0 0.5em 0.25em;
	}
}
@media only screen and (min-width: 48.01em) {
	div.col.prices {
		padding: 0 0.5em 1em 0.5em;
	}
	div.col.prices:nth-child(1),
	div.col.prices:nth-child(5) {
		padding: 0 0.5em 1em 0;
	}
	div.col.prices:nth-child(4),
	div.col.prices:nth-child(9) {
		padding: 0 0 1em 0.5em;
	}
} */





@media screen and (min-width: 480px) {
	h4.slabby.headline {
		border: none;
		margin: 0 0.5em 0 0;
		padding: 0.5em 4.5vw 0.5em 0;
		/*max-width: 600px;*/
	}

	#tab1 .col-6_xs-12 h4.slabby.headline{
		margin-right:0;
		}
}
@media screen and (min-width: 768.01px) {
	#tab1 .col-6_xs-12 {
		min-width: 300px;
		width: 41.9vw;
		max-width: 550px;
		float: left;
		margin-top: 2em;
		padding-right: 0;
	}

	a.cd-3d-nav-trigger.roundButton .round {
		background-color: #823f82;
	}
}
.centerDesktop {
		text-align: center;
		border-bottom: 1px solid;
    	padding: 0 0.15em 1em 0.15em !important;
   		margin: 0 7%;
	}
@media screen and (max-width: 480px) {
	#tab1 .col-6_xs-12 h4.slabby.headline {
		border: none;
		padding: 1em 0em 0.5em 1em;
	}
}
@media screen and (max-width: 325px) {  /* STYLES FOR -- XXSmall SCREEN SIZE (iPhone 5) -- */
	/*main {
		margin: 0 0 2em 4%;
		width: 97.5%;
	}*/
	div.col:not(.prices) {
		padding: 0;
	}
	div.col.prices:nth-child(odd) {
		padding: 0 0.165em 0.33em 0.66em;
	}
	div.col.prices:nth-child(even) {
		padding: 0 0.66em 0.33em 0.165em;
	}
	.prices .border p.price {
    	font-size: 3.35rem;
	}
}


.animOpacity .slabby + p {
	padding-top:0.75em;
}
.animOpacity p.announc {
	padding-top:0.75em;
  border: none;
  font-weight: 400;
  font-size: 1.2em;
  line-height: 1.2em;
}
.animOpacity p.announc sup{
  font-weight: 600;
}
p.announc span {
    font-size: 2em;
    line-height: 1.375em;
}
@media only screen and (min-width: 35.501em) {
	.animOpacity .slabby + p {
		padding: 0.3em 5vw 0 0;
	}
  .animOpacity p.announc {
  	padding: 0.3em 5vw 0 0;
  }
}
@media only screen and (min-width: 72em) {
  .philosophyFix{
    margin-bottom: 10px;
  }
}

astrick {
    padding-right: 0.1em;
}


.bioLink{
  color:#fff;
  text-decoration: underline;
}
.bioLink:hover{
  color:#fff;
  cursor:pointer;
}

.bios .miniBios {
    align-items: center;
    display: flex;
    margin-top: 1em;
    flex-direction: row;
}
@media only screen and (min-width: 72em) {
  .bios .miniBios {
      padding: 1em 2vw 0 2vw;
  }
}
.bios  .miniBios .miniBio{
    display: flex;
    flex: 1;
    flex-direction: column;
}
.bios .miniBios .miniBio.intro:first-child .words {
    margin-top: .25em;
}
.bios .miniBios .miniBio.intro:not(:first-child) .words {
    margin-top: 0.75em;
}
.bios .miniBios .miniBio.intro .words p {
    text-align: center;
}
@media only screen and (max-width: 48em) {
  .bios .miniBios {
      flex-direction: column;

  }
  .bios  .miniBios .miniBio{
      flex-direction: row;
      width:90%;
      transform:translateX(5%);
  }
  .bios .miniBios .miniBio.intro:first-child .words,
  .bios .miniBios .miniBio.intro:not(:first-child) .words {
      margin: auto;
  }
  .bios .miniBios .miniBio.intro .words p {
      text-align: left;
      padding-left: 0;
  }
}

@media only screen and (max-width: 35.5em) {
  .bios  .miniBios .miniBio{
      flex-direction: row;
      width:100%;
      transform:translateX(0);
  }
}



.bios .miniBios .miniBio.intro .col-4 {
    padding:0 3vw;
}
.bios .miniBios .miniBio.intro .col:not(.words) {
    padding:0 1.5vw;
}
@media only screen and (min-width: 72em) {
  .bios .miniBios .miniBio.intro .col-4 {
      padding:0 3em;
  }
  .bios .miniBios .miniBio.intro .col:not(.words) {
      padding:0 2em;
  }
}
@media only screen and (max-width: 48em) {
  .bios .miniBios .miniBio.intro .col-4,
  .bios .miniBios .miniBio.intro .col:not(.words) {
      padding:1.5vw;
      flex:2;
  }
  .bios .miniBios .miniBio.intro .words {
      flex:3;
  }
  .bios .miniBios .miniBio.intro .words p {
      text-align: left;
  }
}




input, textarea.textarea {
    border: solid rgba(255,255,255,0) 0px;
    padding: 3px !important;
    border-radius: 5px;
}

/* @media only screen and (min-width: 72em) {
	div.col.prices {
		padding: 0.5em 0.75em 0.75em 0.75em;
	}
	div.col.prices:nth-child(1),
	div.col.prices:nth-child(5) {
		padding: 0.5em 0.75em 0.75em 0.5em;
	}
	div.col.prices:nth-child(4),
	div.col.prices:nth-child(9) {
		padding: 0.5em 0.5em 0.75em 0.75em;
	}
} */


.leaflet-popup-content {
    color: #666;
}
.leaflet-popup-content b{
    font-weight:700;
}

/* .edits{
  color:#f99;
} */


.headline.announc a {
  color: #fff;
  text-decoration: underline;
  cursor: pointer;
}


.pdfHide .googleDrive{
  display: none;
}
