/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}

html {
  -webkit-box-sizing: border-box; 
  -moz-box-sizing: border-box; 
  box-sizing: border-box;
}
*, *:before, *:after {
  -webkit-box-sizing: inherit; 
  -moz-box-sizing: inherit; 
  box-sizing: inherit;
}

/*
end reset
*/



/* global defaults */

/* apply this class toclear floats */
.group:after {
  content: "";
  display: table;
  clear: both;
}

html {
	overflow: -moz-scrollbars-vertical;
	overflow-y: scroll;
}

body {
	font-family: "ff-tisa-web-pro";
	font-style: normal;
	font-weight: 400;
    line-height: 1.5;
	color: #111;
}

#load-wrap {
	display: block;
	position: fixed;
	width: 100%;
	height: 100%;
	background-color: #999;
	z-index: 9999;
}

.loading {
	position: absolute;
	top: 50%;
	width: 64px;
	margin-left: -1.5em;
	margin-top: -1.5em;
	left: 50%;
}

.loading img {
	width: 100%;
	height: auto;
}

.loading {
    visibility: inherit;
    display: inherit;
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -32px 0 0 -32px;
    height: 64px;
    width: 64px;
    /* text-indent: 250px; */
    white-space: nowrap;
    overflow: hidden;
    background-image: url(/site/templates/img/spinner.png);
    background-size: 64px 64px;
    -webkit-animation-name: spinnerRotate;
    -webkit-animation-duration: 2s;
    -webkit-animation-iteration-count: infinite;
    -webkit-animation-timing-function: linear;
    -moz-animation-name: spinnerRotate;
    -moz-animation-duration: 2s;
    -moz-animation-iteration-count: infinite;
    -moz-animation-timing-function: linear;
    -o-animation-name: spinnerRotate;
    -o-animation-duration: 2s;
    -o-animation-iteration-count: infinite;
    -o-animation-timing-function: linear;
    animation-name: spinnerRotate;
    animation-duration: 2s;
    animation-iteration-count: infinite;
    animation-timing-function: linear;
}

@-webkit-keyframes spinnerRotate {
    from {
        -webkit-transform:rotate(0deg);
    }
    to {
        -webkit-transform:rotate(360deg);
    }
}

@-moz-keyframes spinnerRotate {
    from {
        -moz-transform:rotate(0deg);
    }
    to {
        -moz-transform:rotate(360deg);
    }
}

@-o-keyframes spinnerRotate {
    from {
        -o-transform:rotate(0deg);
    }
    to {
        -o-transform:rotate(360deg);
    }
}

@keyframes spinnerRotate {
    from {
        transform:rotate(0deg);
    }
    to {
        transform:rotate(360deg);
    }
}








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

p a,
.album-item a {
	text-decoration: none;
	color: #111;
	border-bottom: 1px solid orange;
}

strong {
	font-weight: 700;
}

em {
	font-style: italic;
}

figure {
	width: 100%;
	margin: 1.5em 0;
}

figure img {
	width: 100%;
	height: auto;
	line-height: 1;
}

figcaption {
	width: 66%;
	font-size: 0.825em;
	font-style: italic;
}

figcaption em {
	font-style: normal;
}

header {
	position: fixed;
	left: 0;
	width: 50%;
	padding: 10%;
	height: 100%;
	z-index: 998;
	background-color: orange;
	color: #fbfbfb;
}

.location {
	z-index: 999;
	position: absolute;
	width: 50%;
	right: 0;
	text-align: right;
	padding: 0 10%;
	color: #999;
}

.location p.loc {
	margin-top: 1.714285714285714em;
	font-size: 0.875em;
	line-height: 1.714285714285714;
}

#menu-btn {
	width: 48px;
	position: fixed;
	margin: 0;
	padding: 0;
	top: 16px;
	left: 16px;
	text-align: center;
	z-index: 9998;
	opacity: 0.7;
	color: #eee;
	font-family: courier-prime;
	text-transform: uppercase;
	letter-spacing: 1px;
}

#menu-btn:hover {
	cursor: pointer;
}

#menu-btn img {
	width: 48px;
	height: 48px;
}

.home .intro-image img {
	width: 100%;
	height: auto;
}

.home .feat-items {
	margin-top: 3em;
	margin-left: -5%;
	margin-right: -5%;
}

.home .feat-gig,
.home .feat-blog {
	width: 50%;
	float: left;
	padding: 0 5%;
}

.home .feat-items img {
	width: 100%;
	height: auto;
}

.home .feat-items h4 {
	font-family: courier-prime;
	color: #999;
	letter-spacing: 1px;
	font-size: 0.8125em;
	line-height: 1.714285714285714em;
	margin-bottom: 0.0909090909090909em;
	text-transform: uppercase;
}

.home .feat-items h3 {
	font-weight: 700;
	font-size: 0.875em;
}

.home .feat-items p{
	font-size: 0.875em;
}

.home h2 {
	margin-top: 1.5em;
}

.home .paneB .feat-items a {
	color: #111;
}

.more-please {
	font-style: italic;
	display: inline-block;
	border-bottom: 1px solid orange;
}

.section-intro {
	margin-top: 1.2em;
	font-size: 1.25em;
	line-height: 1.2em;
	font-style: italic;
}

small {
	font-size: 0.8125em;
	line-height: 1.714285714285714em;
}

/* repertoire */
.repItem {
    display: none;
	padding: 0.125em 0; /* 3px */
}

.repItem h2 {
    display: none;
    font-weight: bold;
}

.colA {
	vertical-align: middle;
	font-size: 0.875em; /* 14px */
	line-height: 1.285714285714286em; /* 18px */	
	margin: 0;
	display: inline;
	margin-right: .5em;
}

.indent-block {
	display: inline;
}

.indent-block.no-wrap {
	white-space: nowrap;
}

.colB {
	vertical-align: middle;
	height: 1.125em;
	line-height: 1em; /* 18px */
	display: inline-block;
}

.repItem .colB a {
	display: inline-block;
	line-height: 1;
	height: 18px;
	border: 0;
}

.repItem span.prog-note,
.repItem span.video-clip,
.repItem span.audio-clip {
	float: left;
	height: 1.125em;
}


.repItem img {
	height: 1.125em; /* 18px */
	width: auto;
}

.repItem .prog-note img,
.repItem .video-clip img {
	opacity: .7;
}

.repItem .audio-clip img,
.repItem .video-clip img {
	height: 1.125em;
	/* margin-top: 0.125em; */
}

.prog-note-rep-title {
	font-size: 1.25em;
	margin-bottom: 1.5em;
}

.rep-prog-note p {
	margin-bottom: 1.5em;
}

main {
	width: 100%;
}

#headwrap h2 {
	border-bottom: 1px solid #eee;
	margin-top: 0;
} 

.paneA {
	position: fixed;
	width: 50%;
	height: 100%;
	vertical-align: top;
}

.hero-image {
	width: 100%;
	height: 100%;
}

.paneB {
	margin-left: 50%;
	width: 50%;
	padding: 10%;
}

.paneB h1,
.biography .paneB h2,
header h2 {
	font-family: "aktiv-grotesk-std";
	font-weight: 300;
	font-size: 2em;
	margin-bottom: 1em;
	text-transform: uppercase;
	letter-spacing: .0625em;
	border-bottom: 1px solid #111;
}

.biography .paneB h2 {
	margin-top: 2em;
}

.biography .mini-nav {
	margin-top: 1em;
	position: absolute;
	right: 10%;
	font-family: courier-prime;
	font-size: 0.875em;
	color: #999;
}

.biography .mini-nav a {
	color: #999;
	text-decoration: none;
	width: auto;
	background: #ccc;
	cursor: pointer;
	font-family: "courier-prime";
	font-size: 0.875em;
	height: 2.285714285714286em;
	color: #fff;
	border: 0;
	margin: 0px;
	padding: 0px;
	padding: 0.5em;
	margin-left: 0.75em;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
}

.biog-length-toggle {
	color: #555;
}

.biography a.abridge-biog,
.biography a.extend-biog {
	font-family: "courier-prime";
	font-size: 0.875em;
	color: #999;
	border-bottom: 0;
}

.biography a.abridge-biog.active,
.biography a.extend-biog.active {
	color: #555;
	border-bottom: 1px solid orange;
}

ul.biog-images {
	width: 103%;
	margin-top: 3em;
	margin-left: -3%;
}

ul.biog-images  li {
	width: 50%;
	float: left;
	padding-left: 3%;
}

ul.biog-images  li img {
	width: 100%;
	height: auto;
}

header h2 {
	border-bottom: 1px solid #fbfbfb;	
}

.repertoire .paneB h2 {
	padding-top: 1.5em;
	font-family: "courier-prime";
	font-weight: 400;
	color: #999;
}

#repList {
	margin-top: 3em;
	width: 100%;
}

.repertoire .paneB button {
	width: auto;
    background: #ccc;
    cursor: pointer;
    font-family: "courier-prime";
    font-size: 0.875em;
	height: 2.285714285714286em;	
    color   : #fff;
    border  : 0;
    margin      : 0px;
    padding     : 0px;
	padding: 0.5em;
	margin-left: 0.75em;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px; /* future proofing */
}

.repertoire .paneB button.active {
	background-color: orange;
}

.repertoire .paneB button:first-child {
	margin-left: 0;
}

#sorts {
	font-family: "courier-prime";
}

.schedule-item {
	position: relative;
}

.schedule a.permalink {
	text-decoration: none;
	color: #111;
}

.schedule h3,
.schedule-listing h3 {
	padding-top: 1.5em;
}

.schedule h4, .schedule p,
.schedule-listing h4, .schedule-listing p  {
	font-size: 0.815em;
	line-height: 1.230769230769231;
}

.schedule button {
	position: absolute;
	top: 1.5em;
	right: 0;
	width: auto;
    background: #ccc;
    cursor: pointer;
    font-family: "courier-prime";
    font-size: 0.875em;
	height: 1.714285714285714em;	
    color: #fff;
    border: 0;
    margin: 0px;
    padding: 0px;
	padding: 0.2857142857142857em 0.5em;
	margin: 0.5714285714285714em 0;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px; /* future proofing */
}

.schedule .details p,
.schedule-listing .details p {
	font-family: "courier-prime";
	font-size: 0.75em;
	line-height: 1.5;
	padding-top: 1.5em;
	color: #555;
}

.schedule .details p a,
.schedule-listing .details p a {
	color: #555;
}

.schedule h2,
.schedule-listing h2 {
	font-family: "aktiv-grotesk-std";
	font-weight: 300;
	font-size: 2em;
	margin-bottom: 1em;
	text-transform: uppercase;
	letter-spacing: .0625em;
	border-bottom: 1px solid #111;
	margin-top: 3em;
}

.biography .paneB p {
	margin-top: 1.5em;
}

.biography .paneB .biog-image-caption p {
	margin-top: 0;
	font-size: 0.8125em;
	line-height: 1.714285714285714em;
	color: #999;
	margin-bottom: 1em;
}

.blog-image-caption {
	margin-bottom: 1.5em;
}

.paneB .quote p {
	font-style: italic;
}

.paneB .quote p em {
	font-style: normal;
}

.paneB .quote_attr p {
	margin-top: 0;
	color: #999;
	font-size: 0.8125em;
	line-height: 1.714285714285714em;
}

#nav ul {
	width: 100%;
    list-style-type: none;
    padding: 0px;
    margin: 0px;
}

#nav ul li {
    padding-left: 24px;
	margin-left: -24px;
	width: 100%;
}

#nav ul a {
	text-decoration:none;
	color: #fff;
}

#nav ul li.current,
#nav ul li:hover {
	background-image: url(/site/templates/img/arr-r.svg);	
    background-repeat: no-repeat;
	background-position: 0px 2px;
}

.projects h3{
	font-family: "aktiv-grotesk-std";
	font-size: 1.125em;
	line-height: 1.33333333333333333333;
	letter-spacing: 1px;
	font-weight: 700;
	margin-top: 2.666666666666667em;
}

.projects h4 {
	margin-top: 1.5em;
}

.projects p {
	margin-top: 1.5em;
}

.projects h3 a {
	text-decoration: none;
	color: #111;
}

.projects .paneB h4 {
	font-style: italic;
}

.projects .paneB ul.assoc_blogs a {
	color: #111;
	text-decoration: none;
	border-bottom: 1px solid orange;
}

.blog .paneB h2 {
	font-family: "aktiv-grotesk-std";
	font-size: 1.25em;
	line-height: 1.2;
	letter-spacing: 1px;
	font-weight: 700;
	margin-top: 2.4em;
}

.blog .paneB p {
	margin-top: 1.5em;
}

.blog .permalink {
	font-family: "courier-prime";
	font-size: 0.75em;
	line-height: 2;
}

.blog a.permalink {
	color: #555;
	text-decoration: none;
	
}

.blog img {
	width: 100%;
	height: auto;
}

.album-list {
	margin-left: -5%;
	margin-top: 3em;
}

.album-item {
	float: left;
	width: 50%;
	padding-left: 5%;
	padding-bottom: 3em;
}

.album-item img {
	width: 100%;
	height: auto;
}

.album-item h2 {
	text-align: center;
	font-weight: 700;
	/* font-size: 0.875em; */
}

.album-item h3 {	
	font-size: 0.875em;
	text-align: center;
}

.album-yr {
	color: #999;
}

.discography-item .album-item {
	float: inherit;
	width: 100%;
	padding: 0;
}

.discography-item  h2 {
	margin-top: 1.5em;
}

.discography-item ol {
	font-size: 0.875em;
	font-family: courier-prime;
	line-height: 1.714285714285714;
}

.discography-item ol li {
	list-style-type: decimal;
	color: #ccc;
}

.discography-item ol li p {
	color: #111;
	display: block;
}

.discography-item .album-blurb {	
	margin-top: 1.5em;
}

.discography-item h4 {
	font-weight: 700;
	text-transform: uppercase;
	font-size: 0.875em;
	font-family: courier-prime;
	margin-top: 1.714285714285714em;
	line-height: 1.714285714285714
}

.album-item a.album-image-permalink {
	display: block;
	line-height: 0;
	border-bottom: 0;
}

.album-item a.album-image-permalink a + h2 {
	margin-top: 0;
}

.audio-clip p {
	display: inline-block;
	margin-right: 48px;
}

.discography a.audio-clip {
	border: 0;
	display: block;
	position: relative;
}

.discography .audio-clip img {
	position: absolute;
	right: 0;
	top: 0;
	margin-left: 0.5em;
	display: inline-block;
	height: 1.5em;
	width: auto;
	opacity: 0.7;	
}

.related-blogs h4 {
	font-family: "ff-tisa-web-pro";
	text-transform: inherit;
	font-weight: 400;
	font-style: italic;
}

.related-blogs ul li a {
	font-weight: 400;
	font-size: 0.875em;
	line-height: 1.714285714285714;
	border-bottom: 1px solid orange;
	text-decoration: none;
	color: #111;
}

.grayscale {
    -webkit-filter: grayscale(100%);
    -webkit-filter: grayscale(1);
    filter: grayscale(100%);
 
    filter: url('/site/templates/img/gray.svg#grayscale');
    filter: gray;
	opacity: 0.2;
}

.black {
	background-color: #111;
}

.contact h3 {
	margin: 3em 0 1.5em;
	font-style: italic;
}

.contact p {
	margin-top: 1.5em;
}

.social-link {
	width: 3em;
	display: inline-block;
	margin-right: .5em;
}

.social-link img {
	width: 100%;
	height: auto;
}

.social {
	opacity: .9;
	margin-top: 3em;
}

#footer {
	color: #999;
	font-size: 0.875em;
	padding: 3em 0;
	width: 50%;
	margin-left: 50%;
}

.footer-inner {
	padding: 3em 0;
	margin: 0 20%;
	border-top: 1px solid #ccc;
}

.footer-info {
	width: 50%;
	float: left;
}

.footer-links {
	width: 50%;
	float: right;
	text-align: right;
}

.footer-inner h3 {
	/* font-family: courier-prime; */
	text-transform: uppercase;
}

.footer-inner a {
	/* font-family: courier-prime; */
	color: #999;
	text-decoration: none;
	border-bottom: 1px solid #999;
}

@media all and (min-width: 1025px) {    
	
	.biography .mini-nav {
		margin-top: 4.6em;
		position: absolute;
		left: 60%;
	}
	
	.biography .mini-nav a {
		margin-left: 0;
		margin-right: 0.75em;
	}
	
	.biography .paneB p.biog-length-toggle {
		margin-top: 4em;
	}
	
	.album-list {
	  margin-left: 0;
	}
	
	.album-item {
	  width: 100%;
	  padding-left: 0%;
	}
	
}

@media all and (min-width: 1340px) { 
	
	.biography .mini-nav {
		margin-top: 1em;
		position: absolute;
		left: inherit;
		right: 10%;
	}
	
	.biography .mini-nav a {
		margin-left: 0.75em;
		margin-right: 0;
	}
	
	.biography .paneB p.biog-length-toggle {
		margin-top: 1.5em;
	}
	
	.album-list {
	  margin-left: -3%;
	}
	
	.album-item {
	  width: 50%;
	  padding-left: 3%;
	}
	
}



@media all and (max-width: 1024px) {
    
	.paneA {
		width: 100%;
		height: 12em;
		position: relative;
	}
	
	.paneB {
		width: 100%;
		margin-left: 0;
		padding-top: 6em;
	}
	
	.location {
		width: 100%;
		text-align: left;
		z-index: 3;
	}
	
	#menu-btn {
		/* left: 10%; */
		position: absolute;
		left: inherit;
		right: 16px;
	}
	
	.location {
		top: 192px;
	}
	
	header {
		width: 100%;
		padding-top: 9em;
	}
	
	#footer {
		width: 100%;
		margin-left: 0;
	}
	
	.footer-inner {
		margin: 0 10%;
	}
	
	
}

@media all and (max-width: 519px) {
    
	.home .feat-blog, .home .feat-gig {
		width: 100%;
		margin-bottom: 3em;
	}
	
	.biography .mini-nav {
		margin-top: 4.6em;
		position: absolute;
		left: 10%;
		font-family: courier-prime;
		font-size: 0.875em;
		color: #999;
	}
	
	.biography .mini-nav a {
		margin-left: 0;
		margin-right: 0.75em;
	}
	
	.biography .paneB p.biog-length-toggle {
		margin-top: 4em;
	}
	
	.album-list {
	  margin-left: 0;
	}
	
	.album-item {
	  width: 100%;
	  padding-left: 0%;
	}
	
}



