:root{--ink:#211d1b;--paper:#f7f4ef;--warm:#e9e1d5;--accent:#8d3b2f;--line:#d8cec0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.65 Georgia,serif}.site-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;padding:16px max(5vw,28px);background:#f7f4eff2;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.brand{font-size:1.35rem;font-weight:bold;color:inherit;text-decoration:none;line-height:1.05}.brand span{display:block;margin-top:4px;font:10px/1.1 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase}nav{display:flex;gap:20px;font:12px Arial,sans-serif;letter-spacing:.09em;text-transform:uppercase}a{color:var(--accent)}nav a{color:var(--ink);text-decoration:none}.menu-button{display:none}.hero{min-height:690px;display:flex;align-items:end;padding:70px max(5vw,28px);background:linear-gradient(90deg,#171310b8 0%,#17131055 57%,transparent),url('assets/hero.jpg') center/cover;color:#fff}.hero-copy{max-width:720px}.eyebrow{margin:0 0 10px;color:var(--accent);font:12px Arial,sans-serif;letter-spacing:.18em;text-transform:uppercase}.hero .eyebrow{color:#f7d8bd}.hero h1{margin:0;font-size:clamp(3rem,7vw,6.3rem);line-height:.97;font-weight:400}.lead{max-width:580px;font-size:1.25rem}.button{display:inline-block;padding:12px 20px;background:var(--accent);color:#fff;text-decoration:none;font:12px Arial,sans-serif;letter-spacing:.1em;text-transform:uppercase}.button-secondary{margin:0 8px 8px 0;background:transparent;color:var(--accent);border:1px solid var(--accent)}.section{padding:100px max(5vw,28px);max-width:1440px;margin:auto}.section h2{font-size:clamp(2.5rem,5vw,4.5rem);font-weight:400;line-height:1;margin:0 0 40px}.surface{max-width:none;background:var(--warm);padding-left:max(5vw,28px);padding-right:max(5vw,28px)}.two-columns,.repertoire-grid,.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px;max-width:1000px}.events{max-width:1000px}.events article{padding:24px 0;border-top:1px solid var(--line)}.events h3,.audio-grid h3,.contact h3{margin:0;font-size:1.35rem;font-weight:400}.events p,.audio-grid p{margin:4px 0}.event-dates{font-family:Arial,sans-serif;font-size:.9rem;letter-spacing:.04em}.note{font-style:italic}.repertoire-grid h3{font:12px Arial,sans-serif;letter-spacing:.14em;text-transform:uppercase}.repertoire-grid ul{padding-left:1.1em}.audio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:30px}.audio-grid article{padding:24px;background:var(--paper)}audio{width:100%;margin-top:12px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:42px}.gallery img{width:100%;aspect-ratio:1/1.2;object-fit:cover}blockquote{max-width:800px;margin:0 0 30px;padding:0 0 0 25px;border-left:3px solid var(--accent);font-size:1.25rem}cite{display:block;margin-top:10px;font:12px Arial,sans-serif;letter-spacing:.05em}.contact-grid{grid-template-columns:repeat(3,1fr);max-width:none}.contact-grid p{margin-top:7px}.instagram{font-family:Arial,sans-serif}footer{padding:30px 5vw;background:#211d1b;color:#fff;font:12px Arial,sans-serif;letter-spacing:.08em}@media(max-width:800px){.menu-button{display:block;background:none;border:0;font:12px Arial,sans-serif;text-transform:uppercase;letter-spacing:.1em}nav{display:none;position:absolute;top:100%;left:0;right:0;padding:22px 5vw;background:var(--paper);flex-direction:column}nav.open{display:flex}.hero{min-height:590px}.section{padding-top:70px;padding-bottom:70px}.two-columns,.repertoire-grid,.contact-grid,.audio-grid{grid-template-columns:1fr;gap:20px}.gallery{grid-template-columns:1fr 1fr}}
.gallery a{display:block}.downloads{margin-top:24px}.downloads summary{cursor:pointer;font-family:Arial,sans-serif;color:var(--accent)}.press-gallery,.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:24px}.press-gallery a{display:block}.press-gallery img,.gallery-grid img{width:100%;aspect-ratio:1/1;object-fit:cover}@media(max-width:800px){.press-gallery,.gallery-grid{grid-template-columns:1fr 1fr}}.date-list time{display:block}.events h3{color:var(--accent)}.events .event-venue{color:#5e5148}.events .event-dates{color:#786555}
