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;
	vertical-align:baseline;
	font-size:100%;
	font-weight:normal;
	text-decoration:none;
	background:transparent;
	border:0;
	outline:0;
}
article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section {
	display:block;
}
ol, ul {
	list-style-type:none;
}
img {
	max-width:100%;
	height:auto;
}
.offscreen {
    position:absolute;
    width:1px;
    height:1px;
    clip:rect(0 0 0 0);
    clip-path:inset(50%);
    overflow:hidden;
    white-space:nowrap;
}
:root {
	font-family:georgia, serif;
	font-size:19px;
	font-size:calc(12px + (19 - 12) * ((100vw - 320px) / (1280 - 320)));
	line-height:1.5;
	color:#434343;
}
body {
	background-color:#f9f9fb;
}
h2 {
	margin:0 0 3em 0;
	padding:1em 0;
	font-size:120%;
	letter-spacing:.5px;
	text-align:center;
	text-transform:uppercase;
	text-shadow:1px 2px 2px rgba(0,0,0,.1);
	background:url(img/underline.png) no-repeat center 95%;
}
h3 {
	padding-top:1em;
	font-weight:bold;
	letter-spacing:.5px;
}
h3 + ul {
	margin-top:1em;
}
h4, p, blockquote {
	margin-top:1em;
	letter-spacing:.25px;
}
h4 + p {
	margin-top:0;
}
strong {
	font-weight:bold;
}
a {
	color:#d81025;
}
a:hover, a:focus {
	color:#434343;
}
blockquote, cite {
	font-style:italic;
}
blockquote span {
	white-space:nowrap;
}
header, main, footer {
	position:relative;
	max-width:1280px;
	margin:0 auto;
	text-align:center;
}
header {
	padding-top:2.5%;
}
main, header > figure {
	background-color:#fff;
}
main > figure {
	padding:5% 3% 0 3%;
}
section {
	max-width:960px;
	margin:0 auto;
	padding:3% 8% 9%;
	text-align:left;
}
article {
	margin:2em 0 3.5em 0;
}
article ul {
	margin-bottom:1em;
	padding-left:1em;
	list-style:disc outside;
	letter-spacing:.25px;
}
article p + figure {
	margin-top:1.5em;
}
footer {
	margin-top:0em;margin-bottom:3em;
	font-size:90%;
}
#nav-main {
	margin:6% 0 3%;
}
#nav-main li {
	display:inline-block;
	margin-left:1.5%;
}
#nav-main li:first-child {
	margin-left:0;
}
#nav-main a {
	font-size:90%;
	color:#434343;
	letter-spacing:.125em;
	text-transform:uppercase;
	opacity:.6;
}
#nav-main a:hover, #nav-main a.active {
	color:#d81025;
	text-shadow:1px 1px 2px rgba(0,0,0,.1);
	opacity:1;
}
.site-nav {
	margin:6% 0 3%;
}
.site-nav > ul > li {
	display:inline-block;
	margin-left:1.5%;
}
.site-nav > ul > li:first-child {
	margin-left:0;
}
.site-nav a {
	font-size:90%;
	color:#434343;
	letter-spacing:.125em;
	text-transform:uppercase;
	opacity:.6;
}
.site-nav a.active, .site-nav a:hover, .site-nav a:active, .site-nav a:focus {
	color:#d81025;
	text-shadow:1px 1px 2px rgba(0,0,0,.1);
	opacity:1;
}
.sub-menu {
	min-width:7em;
	position:absolute;z-index:10;
	padding:1em;
	font-size:80%;
	line-height:2;
	text-align:left;
	text-transform:none;
	white-space:nowrap;
	background-color:white;
	box-shadow:2px 6px 10px rgba(0,0,0,.4);
}
.sub-menu a {
	text-transform:none;
}
aside, figure {
	text-align:center;
}
aside {
	margin-top:-6%;
	padding:0 6% 9% 6%;
}
aside > h2 {
	margin:0;
	padding:1em 0 1em 0;
	font-size:100%;
	font-weight:bold;
	text-transform:none;
	text-shadow:none;
	background:none;
}
aside [href^="mailto"], .button {
	display:inline-block;
	margin-bottom:2.5em;
	padding:0 2em;
	line-height:2;
	color:#fefefe;
	border-radius:2em;
	background-color:#434343;
	box-shadow:2px 2px 3px rgba(0,0,0,.2);
}
aside [href^="mailto"]:hover {
	color:#434343;
	background-color:#fefefe;
	box-shadow:none;
}
.button:hover  {
	color:#d81025;
	background-color:#fefefe;
	box-shadow:none;
}
.accent {
	text-shadow:1px 2px 2px rgba(0,0,0,.1);
}
.center {
	text-align:center;
}
.legal {
	color:rgba(0,0,0,.3);
	font-size:80%;
	letter-spacing:.063em;
}
.legal a {
	color:rgba(0,0,0,.3);
}
.legal a:hover {
	color:#d81025;
}
.photoswipe {
	margin-bottom:4em;
	text-align:center;
}
.photoswipe h4 {
	margin:3em 0 .5em 0;
}
.instrument figure {
	display:inline-block;
	margin:1em .3% 0 .3%;
	line-height:0;
	border:1px solid silver;
	box-shadow:5px 5px 8px rgba(0,0,0,.05);
}
.instrument figure:hover {
	box-shadow:none;
}
.slick-carusel {
	border-bottom:4em solid transparent;
}
.slick-carusel img {
	margin-left:6px;
}
#gotop {
	display:block;
	position:fixed;z-index:1000;
	bottom:20px;
	right:30px;
	width:40px;
	height:40px;
	text-align:center;
	border-radius:10%;
	background:#ccc url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxMSIgdmlld0JveD0iMCAtMC42MTQgMTggMTEiPjxwYXRoIGZpbGw9IiNGRkYiIGQ9Ik0yLjE1NSAxMC4zNmw2LjMyNC02LjQ5MSA2LjQxNCA2LjQ5MSAyLjEwOC0xLjg4OEw4LjQ3OSAwIDAgOC40NzJsMi4xNTUgMS44ODh6Ii8+PC9zdmc+) no-repeat center 48%;
	box-shadow:2px 2px 2px rgba(0,0,0,.5);
	opacity:0;
	visibility:hidden;
	transition:background-color .3s, opacity .5s, visibility .5s;
}
#gotop:hover {
	cursor:pointer;
	background-color:#666;
	box-shadow:none;
}
#gotop.show {
	opacity:1;
	visibility:visible;
}

@media only screen and (max-width:1280px) {
	header {
		background: rgb(249,249,251);
		background: linear-gradient(180deg, rgba(249,249,251,0.7903362028405112) 8%, rgba(254,254,254,1) 66%);
	}
	#branding img {
		max-width:60%;
	}
}
@media only screen and (max-width:528px) {
	header, h1 {
		text-align:right;
	}
	h3, h4, p, blockquote {
		letter-spacing:.5px;
	}
	#branding {
		margin:0 4% 0 3%;
	}
	#branding img {
		max-width:100%;
	}
	section {
		-webkit-hyphens:auto;
		-ms-hyphens:auto;
		hyphens:auto;
	}
	.site-nav {
		margin:15% 4%;
	}
	.site-nav > ul > li {
		display:block;
		margin:.625em 0;
	}
	.site-nav a {
		display:inline-block;
		font-size:120%;
		text-shadow:1px 1px 2px rgba(0,0,0,.1);
		opacity:1;
	}
	.sub-menu {
		position:relative;
		padding:0 0 10px 0;
		font-size:90%;
		text-align:right;
		background-color:transparent;
		box-shadow:none;
	}
	#gotop {
		right:4%;
	}
}