@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:400;font-display:block;src:url(fonts/bodoni-moda-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:400;font-display:block;src:url(fonts/bodoni-moda-latin-400-italic.woff2) format('woff2')}
@font-face{font-family:'Bodoni Moda';font-style:normal;font-weight:500;font-display:block;src:url(fonts/bodoni-moda-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Bodoni Moda';font-style:italic;font-weight:500;font-display:block;src:url(fonts/bodoni-moda-latin-500-italic.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400;font-display:block;src:url(fonts/instrument-sans-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:500;font-display:block;src:url(fonts/instrument-sans-latin-500-normal.woff2) format('woff2')}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:600;font-display:block;src:url(fonts/instrument-sans-latin-600-normal.woff2) format('woff2')}
@font-face{font-family:'Noto Music';font-style:normal;font-weight:400;font-display:block;src:url(fonts/noto-music-latin-400-normal.woff2) format('woff2')}
@font-face{font-family:'Noto Music';font-style:normal;font-weight:400;font-display:block;unicode-range:U+1D000-1D1FF,U+2669-266F;src:url(fonts/noto-music-music-400-normal.woff2) format('woff2')}
:root{--sans:"Instrument Sans","Helvetica Neue",Arial,sans-serif;--serif:"Bodoni Moda",Georgia,"Times New Roman",serif;--head:#34302c;--ink:#1f1c19;--mute:#6b645c;--line:#e4dccf;--bg:#faf7f1;--gold:#ba8421;--deep:#7a2e2e;--wrap:1080px}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-variant-numeric:lining-nums;margin:0;background:var(--bg);color:var(--ink);font:15px/1.6 var(--sans);letter-spacing:.015em}
a{color:var(--gold);text-decoration:none}a:hover{text-decoration:underline}
h1,h2{font-family:var(--serif)}h3,h4,nav a,.btn{font-family:var(--sans)}.brand{font-family:var(--serif)}
.top{position:absolute;inset:0 0 auto 0;z-index:10;display:flex;justify-content:space-between;align-items:center;padding:18px 28px;color:#fff}
.brand{color:#fff;font-weight:500;font-size:26px;letter-spacing:.02em}
.top nav a{color:#fff;margin-left:26px;font-weight:500;font-size:12px;letter-spacing:.2em;text-transform:uppercase;opacity:.92}
.hero{position:relative;overflow:hidden;height:clamp(380px,62vh,660px);background-size:cover;background-position:50% 15%;--z:1}
.hero::before{content:'';position:absolute;inset:0;background:inherit;transform:scale(var(--z));transform-origin:50% 25%}
.hero .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,12,10,.55) 0,rgba(15,12,10,0) 22%)}
.strap .inner{max-width:var(--wrap);margin:0 auto;padding:34px 28px 0}
.strap p{margin:0;max-width:820px;color:var(--head);font:400 clamp(20px,2.2vw,26px)/1.35 var(--serif);letter-spacing:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
main section{max-width:var(--wrap);margin:0 auto;padding:44px 28px 8px}
h2{color:var(--head);font-size:36px;font-weight:400;letter-spacing:.01em;margin:0 0 18px}
h2 small{font:400 13px var(--sans);color:var(--mute);letter-spacing:.04em;margin-left:8px}
.events{max-width:900px;list-style:none;margin:0;padding:0}
.ev{display:grid;grid-template-columns:70px 1fr 150px;gap:18px;align-items:start;padding:10px 0 16px;border-bottom:1px solid var(--line)}
.dt{text-align:center;line-height:1.05;font-family:var(--sans)}
.dt b{display:block;font:500 40px/0.95 var(--serif);color:var(--deep);letter-spacing:-.01em}
.dt span{color:var(--head);display:block;text-transform:uppercase;font-weight:500;font-size:11px;letter-spacing:.24em;margin:2px 0 0 .24em}
.dt em{display:block;font-style:normal;font-size:12px;font-weight:500;letter-spacing:.06em;color:var(--head);margin-top:28px}
.what h3 .pl{font:400 14px var(--sans);color:var(--mute);letter-spacing:0;margin-left:6px}
.dt i{display:block;font:italic 500 16px/1.1 var(--serif);color:var(--mute);margin-top:1px}
.what h3{margin:0;color:var(--head);font-size:20px;font-weight:500;letter-spacing:.015em}
.what p{margin:2px 0 0}
.where{color:var(--mute)}.with{font-size:13.5px}.prog{font-size:13px;color:var(--mute)}
.btn{display:inline-block;background:var(--deep);color:#fff;padding:10px 20px;border-radius:6px;font-weight:500;font-size:12px;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}
.btn:hover{background:#5d2020;text-decoration:none}
.none{display:block;color:var(--mute)}
.quotes{background:#2a2420;color:#efe6d6;margin-top:46px}
main section.quotes{max-width:none;padding:0}
.quotes .wrap{max-width:var(--wrap);margin:0 auto;padding:22px 28px 34px}
.qtrack{display:flex;overflow-y:hidden;gap:34px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;align-items:flex-start}
.qtrack::-webkit-scrollbar{display:none}
.qtrack figure{flex:0 0 calc((100% - 68px)/3);scroll-snap-align:start}

.qnav{display:flex;justify-content:flex-end;gap:8px;margin-bottom:16px}
.qa{flex:none;width:34px;height:34px;border-radius:50%;border:1px solid #6b5a3c;background:#2a2420;color:#cfa65b;font:400 22px/1 var(--serif);cursor:pointer;padding:0 0 3px}
.qa:hover{background:#cfa65b;color:#2a2420}

figure{margin:0}
blockquote::before{content:'\201C';color:#cfa65b;font-size:1.9em;line-height:0;margin-right:.06em;vertical-align:-.22em}
blockquote::after{content:'\201D';color:#cfa65b;font-size:1.9em;line-height:0;margin-left:.06em;vertical-align:-.22em}
blockquote.qo::before{margin-right:.16em}
blockquote.qc::after{margin-left:.16em}
blockquote{margin:0 0 10px;font:italic 400 17px/1.45 var(--serif);letter-spacing:.005em}
figcaption{font-size:11.5px;color:#cfa65b;text-transform:uppercase;letter-spacing:.2em;font-family:var(--sans);font-weight:500}
.discs{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(92px,1fr));gap:12px}
.discs a,.discs div{display:block;color:inherit}
.discs a:hover{text-decoration:none}.discs a:hover span{color:var(--deep)}
.discs img,.nocover{width:100%;aspect-ratio:1;object-fit:cover;border-radius:3px;box-shadow:0 1px 5px #0003;background:#d9cfbd;display:block}
.discs em{display:block;font-style:normal;font-size:11px;color:var(--mute);margin-top:3px}
.rep{columns:3 290px;column-gap:28px;font-size:13px;line-height:1.4}
.comp{break-inside:avoid;margin:0 0 12px}
.comp h3{margin:0 0 3px;font:600 12.5px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--deep)}
.comp ul{list-style:none;margin:0;padding:0;color:#4a443d}
.comp li{white-space:nowrap}
footer{margin-top:50px;background:#1f1c19;color:#cfc6b6}
footer .wrap{max-width:var(--wrap);margin:0 auto;padding:26px 28px;font-size:14px}
footer p{margin:0 0 6px}footer .soc a{margin-right:16px}
@media(max-width:760px){.top nav{display:none}.menu-btn{display:flex}.top.open nav{display:flex}.hero{height:46vh}.ev{grid-template-columns:56px 1fr}.go{justify-self:start;grid-column:2}.qtrack figure{flex-basis:100%}}

.inner-page .top{position:static;background:#2a2420}
.page section{padding-top:36px}
.page h1{margin:0 0 6px;color:var(--head);font-size:46px;font-weight:400;letter-spacing:.005em}
.note{margin:0 0 22px;color:var(--mute)}
.videos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:26px}
.videos h3{margin:10px 0 2px;color:var(--head);font-size:18px;font-weight:500}
.videos p{margin:0 0 3px;font-size:14px}.videos .where{color:var(--mute);font-size:13px}
.vid{position:relative;display:block;width:100%;aspect-ratio:16/9;padding:0;border:0;background:#000;cursor:pointer;border-radius:4px;overflow:hidden}
.vid img{width:100%;height:100%;object-fit:cover;display:block;opacity:.9}
.vid .play{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50%;background:rgba(122,46,46,.92);color:#fff;font-size:24px;display:flex;align-items:center;justify-content:center;padding-left:5px}
.vid:hover .play{background:#5d2020}
.videos iframe{width:100%;aspect-ratio:16/9;border:0;border-radius:4px;display:block}

.menu-btn{display:none;flex-direction:column;justify-content:center;gap:5px;width:44px;height:44px;padding:0 10px;background:none;border:0;cursor:pointer}
.menu-btn span{display:block;height:3px;background:#fff;border-radius:2px}
@media(max-width:760px){
.menu-btn{display:flex}
.top{flex-wrap:wrap;padding:10px 16px}
.top nav{flex-basis:100%;flex-direction:column;background:rgba(30,25,22,.97);margin:8px -16px -10px;padding:6px 16px 12px}
.top nav a{margin:0;padding:12px 0;border-top:1px solid rgba(255,255,255,.12);font-size:13px;letter-spacing:.2em}
.top.open{background:rgba(30,25,22,.97)}
.inner-page .top{position:relative}
}

@media(max-width:1100px){.hero{--z:1}}
@media(max-width:760px){.hero{--z:1.05;height:52vh}.hero::before{transform-origin:55% 30%}}
@media(max-width:480px){.hero{--z:1.05}.hero::before{transform-origin:55% 30%}}

.more{margin-top:8px}
.more summary{list-style:none;cursor:pointer;display:inline-block;font:500 13.5px var(--sans);letter-spacing:.04em;color:var(--deep)}
.more summary::-webkit-details-marker{display:none}
.more summary .c::after{content:' ▾';font-size:11px}
.more[open] summary .c::after{content:' ▴'}
.more summary:hover{text-decoration:underline}
.mb{margin-top:12px;display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:8px 40px;padding:3px 0 4px}
.mb h4{margin:0 0 16px;font:500 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.wk{padding:9px 0;border-bottom:1px solid var(--line)}
.wk:first-of-type{padding-top:0}
.cm{font:500 15px var(--sans);letter-spacing:.02em;color:var(--deep)}
.cm small{font:400 12px var(--sans),sans-serif;color:var(--mute)}
.wt{color:var(--ink);margin-top:2px}
.gs{font-style:italic;color:var(--mute);font-size:13.5px;margin-top:2px}
.int{display:flex;align-items:center;gap:12px;margin:10px 0;color:var(--mute);font:500 11px var(--sans);letter-spacing:.3em;text-transform:uppercase}
.int::before,.int::after{content:'';flex:1;border-top:1px solid var(--line)}
.ad p{margin:0 0 8px;line-height:1.5}
.dir{display:inline-block;font-weight:500;font-size:13.5px;color:var(--deep)}
.mb .dir{margin-top:2px}
@media(max-width:760px){.mb{grid-template-columns:1fr}}

.wk:last-child,.wk:has(+ .int){border-bottom:0}
.int+.wk{padding-top:4px}

.fl{font-family:"Noto Music","Apple Symbols","Segoe UI Symbol","DejaVu Sans",sans-serif;margin-left:.03em;font-weight:400;font-size:1.18em;line-height:0}

.nk{font-style:italic;color:var(--mute)}
.mv{font-size:13.5px;color:var(--mute);margin-top:1px}

.go{justify-self:end}
@media(max-width:760px){.go{justify-self:start}}
@media(max-width:760px){.dt em{margin-top:9px}}

.kind{font:500 9.5px/1.2 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin:0 0 2px}.dt{padding-top:13px}

.events .yr{display:flex;align-items:center;gap:16px;padding:26px 0 10px;font:400 24px/1 var(--serif);color:var(--deep);letter-spacing:.06em}
.events .yr::after{content:'';flex:1;height:1px;background:var(--line)}
.events .yr:first-child{padding-top:8px}
.events .ev:has(+ .yr){border-bottom:0}
.events .yr span{margin-left:3px}

.what h3 .tm{font:400 14px var(--sans);letter-spacing:.04em;color:var(--head);margin-left:10px;padding-left:12px;border-left:1px solid var(--line)}

.strap .more-link{display:inline-block;margin-top:28px;font:500 12px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--deep);border-bottom:1px solid transparent}
.strap .more-link:hover{text-decoration:none;border-bottom-color:var(--deep)}
@media(max-width:760px){.brand{font-size:19px}}

.top .brand{display:block;line-height:0}
.top .brand img{height:54px;width:auto;display:block;filter:drop-shadow(0 1px 6px rgba(0,0,0,.45))}
@media(max-width:760px){.top .brand img{height:34px}}
.top::before{content:"";position:absolute;left:0;right:0;top:0;height:120px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse 480px 100px at 14% 0%,rgba(14,9,7,.62),rgba(14,9,7,0) 100%),linear-gradient(180deg,rgba(14,9,7,.55),rgba(14,9,7,0))}
@media(max-width:760px){.top::before{height:90px;background:radial-gradient(ellipse 380px 85px at 25% 0%,rgba(14,9,7,.6),rgba(14,9,7,0) 100%),linear-gradient(180deg,rgba(14,9,7,.5),rgba(14,9,7,0))}}
figcaption span{display:block;margin-top:3px;font-size:10.5px;letter-spacing:.16em;opacity:.7}
.qtrack{padding:16px 0 0 18px;margin-left:-18px;scroll-padding-left:18px}
.qtrack figure{position:relative}
blockquote{position:relative}
blockquote::before,blockquote.qo::before{position:absolute;left:-.62em;top:-.3em;margin:0;font-size:2.1em;line-height:1;vertical-align:baseline}
.qtrack{padding-left:0;margin-left:0;scroll-padding-left:0}
.qtrack figure{padding-left:22px}
blockquote::before,blockquote.qo::before{left:-22px}

.pr .ph{display:block;width:100%;max-height:230px;object-fit:cover;border-radius:2px;margin:0 0 18px}
.pr .lead{margin:0 0 12px;font:400 17px/1.45 var(--serif);color:var(--head)}
.bd p{margin:0 0 9px;font-size:13.5px;line-height:1.55;color:#4a443d}
.lk{list-style:none;margin:12px 0 0;padding:0}.lk li{margin:0 0 4px}.lk a{font:500 13px var(--sans);letter-spacing:.03em;color:var(--deep)}
.mb h4.gap{margin-top:22px}
.mb .evs{grid-column:1/-1;margin-top:8px;border-top:1px solid var(--line);padding-top:18px}
.sub{border-bottom:1px solid var(--line)}.sub:first-of-type{border-top:0}
.sub summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;gap:16px;padding:12px 0}
.sub summary::-webkit-details-marker{display:none}
.sub .sd{font:500 14px var(--sans);letter-spacing:.03em;color:var(--head);min-width:120px}
.sub .stt{font:400 18px var(--serif);color:var(--head);flex:1}
.sub .tk{font:500 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--deep)}
.sub summary::after{content:'▾';font-size:11px;color:var(--mute)}
.sub[open] summary::after{content:'▴'}
.sub .sbd{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:0 40px;padding:6px 0 22px}
.sub .sbd>*{grid-column:1}
.sub .sbd .ph{grid-column:1/-1;max-height:200px}
@media(max-width:760px){.sub .sbd{display:block}.sub summary{flex-wrap:wrap;gap:6px 16px}.mb .evs{grid-column:1}}

.sub .sbd{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:0 40px;padding:6px 0 22px}
.sub .sbd>.sbl,.sub .sbd>.sbr{grid-column:auto}
.sub .sbd .ph{max-height:200px}
@media(max-width:760px){.sub .sbd{display:block}.sub .sbd>.sbr{margin-top:8px}}

.ad .ph{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:2px;margin:0 0 22px}
.sbr .ph{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:2px;margin:0 0 20px}
.mb .evs{border-top:0;padding-top:4px}

.mb .ad .lk{margin-top:0}

.mb{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
.sub .sbd{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}
.nb{display:block;white-space:nowrap}
@media(max-width:760px){.mb,.sub .sbd{display:block}}
@media(min-width:761px){
.ev{position:relative}
.ev .what{grid-column:2/-1}
.ev .go{position:absolute;right:0;top:10px;grid-column:auto}
.ev .what .kind,.ev .what h3{padding-right:170px}
}
@media(max-width:760px){
.mb h4,.mb h4.gap,.sub .sbd h4{margin-top:44px;margin-bottom:22px}
.mb>.pr>h4:first-child,.mb>.evs>h4:first-child{margin-top:16px}
.sub .sbl>h4:first-child{margin-top:20px}
.sub .sbd .sbr>h4:first-child{margin-top:44px}
}
@media(max-width:760px){
.mb h4,.mb h4.gap,.sub .sbd h4{margin-top:30px;margin-bottom:12px}
.mb>.pr>h4:first-child,.mb>.evs>h4:first-child{margin-top:14px}
.sub .sbl>h4:first-child{margin-top:16px}
.sub .sbd .sbr>h4:first-child{margin-top:30px}
}
@media(max-width:760px){
.mb .evs{margin-top:0;padding-top:0}
.mb>.evs>h4:first-child{margin-top:30px;margin-bottom:12px}
.mb .evs ul.events{margin-top:0}
.mb .evs ul.events>li:first-child{margin-top:0}
}
@media(max-width:760px){.mb .evs .sub:first-of-type>summary{padding-top:0}}
.btn.sm{display:none}
@media(max-width:760px){
.ev .go{display:none}
.more summary{display:inline-flex;align-items:center;gap:18px}
.btn.sm{display:inline-block;padding:6px 12px;font-size:10.5px;letter-spacing:.16em;border-radius:5px;color:#fff}
.btn.sm:hover{text-decoration:none}
}
@media(min-width:761px){
.mb h4,.sub .sbd h4{margin-bottom:14px}
.mb h4.gap,.sub .sbd h4.gap{margin-top:36px}
.mb>.evs>h4:first-child{margin-top:36px}
.mb .evs .sub:first-of-type>summary{padding-top:0}
}
@media(min-width:761px){.more>.mb{margin-top:36px}}
.more>.mb{padding-bottom:28px}
.sub summary::after,.sub[open] summary::after{content:none}
.sub .stt{flex:0 0 auto}
.sub .mi{font:500 13.5px var(--sans);letter-spacing:.04em;color:var(--deep)}
.sub .mi::after{content:' ▾';font-size:11px}
.sub[open] .mi::after{content:' ▴'}
.sub summary:hover .mi{text-decoration:underline}
.sub .tk{margin-left:auto}
@media(max-width:760px){.sub .tk{margin-left:0}.sub .stt{flex:0 0 auto}}
@media(min-width:761px){.mb>.evs>h4:first-child{margin-top:0}}
@media(min-width:761px){.mb>.evs>h4:first-child{margin-top:8px}}
.hero{background:#14110f}.hero::before{content:none}
.htrack{position:absolute;inset:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.htrack::-webkit-scrollbar{display:none}
.hs{flex:0 0 100%;height:100%;position:relative;scroll-snap-align:start;background-size:cover;background-position:50% 15%;overflow:hidden}
.hs0::before{content:'';position:absolute;inset:0;background:inherit;transform:scale(var(--z));transform-origin:50% 25%}
@media(max-width:760px){.hs0::before{transform-origin:55% 30%}}
.hv{display:flex;align-items:center;justify-content:center;background:#14110f}
.hv img{width:100%;height:100%;object-fit:contain;opacity:.85}
.hv iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.hv .play{position:absolute;left:50%;top:50%;width:68px;height:68px;margin:-34px 0 0 -34px;border-radius:50%;border:1.5px solid rgba(255,255,255,.85);background:rgba(20,17,15,.45);cursor:pointer}
.hv .play i{position:absolute;left:27px;top:21px;border-left:19px solid #fff;border-top:12px solid transparent;border-bottom:12px solid transparent}
.hv .play:hover{background:rgba(122,46,46,.8)}
.hv .vt{position:absolute;left:0;right:0;bottom:0;padding:48px 20px 18px;background:linear-gradient(0deg,rgba(15,12,10,.75),transparent);color:#fff;font:400 18px var(--serif);letter-spacing:.02em;text-align:center;pointer-events:none}
.hero .shade{pointer-events:none;z-index:1}
.ha{position:absolute;z-index:3;top:50%;margin-top:-20px;width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.7);background:rgba(20,17,15,.35);color:#fff;font:400 24px/1 var(--sans);cursor:pointer;padding:0 0 3px}
.ha:hover{background:rgba(122,46,46,.85)}
.hprev{left:16px}.hnext{right:16px}
.ha{width:34px;height:34px;margin-top:-17px;border:1px solid #6b5a3c;background:rgba(42,36,32,.8);color:#cfa65b;font:400 22px/1 var(--serif)}
.ha:hover{background:#cfa65b;color:#2a2420}
.hv .vt{font-size:17px;line-height:1.35}
.hv .vt em{display:block;margin-top:3px;font-style:italic;font-size:16px;opacity:.9}
.hnext .wl{display:none}
.hero.first .hnext{width:auto;padding:0 10px 0 16px;border-radius:17px;display:flex;align-items:center;gap:8px}
.hero.first .hnext .wl{display:inline;font:500 11px var(--sans);letter-spacing:.18em;text-transform:uppercase}
.hnext .ar{font:400 22px/1 var(--serif);padding-bottom:3px}
.hero.first .hnext{top:auto;bottom:20px;margin-top:0;height:34px}
/* biography page */
.bhero{position:relative;height:clamp(260px,42vh,460px);background-size:cover;background-position:50% 35%;background-color:#14110f}
.bhero .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(15,12,10,.55) 0,rgba(15,12,10,0) 30%)}
.bio .bwrap{max-width:720px;padding-top:56px}
.bio h1{font:400 clamp(26px,3.4vw,38px)/1.25 var(--serif);color:var(--head);margin:0 0 28px}
.bio .blead{font:400 19px/1.65 var(--serif);color:var(--head)}
.bio p{font:400 16px/1.75 var(--sans);color:#3d3834;margin:0 0 18px}
.bio .blead{margin-bottom:28px}
.bio a{color:var(--deep)}
.bnav{display:flex;flex-wrap:wrap;gap:8px 22px;margin:34px 0 40px;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.bnav a{font:500 11px var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--deep);text-decoration:none}
.bnav a:hover{text-decoration:underline}
.bs{margin-top:56px;scroll-margin-top:24px}
.bs h2{font:400 28px var(--serif);color:var(--head);margin:0 0 22px;padding-top:18px;border-top:1px solid var(--line)}
.bfig{margin:30px -80px 30px}
.bfig img{display:block;width:100%;height:auto}
.bfig figcaption{font:italic 400 15px var(--serif);color:var(--mute);margin-top:10px}
.bs.wide{max-width:none}
.mgrid{display:grid;gap:56px}
.mem{display:grid;grid-template-columns:260px 1fr;gap:36px;align-items:start;max-width:960px}
.mem img{width:100%;height:auto;display:block;border-radius:2px}
.mem h3{font:400 24px var(--serif);color:var(--head);margin:0}
.mem .inst{font:500 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin:6px 0 16px}
@media(max-width:860px){.bfig{margin-left:0;margin-right:0}}
@media(max-width:700px){.mem{grid-template-columns:1fr;gap:18px}.mem img{max-width:320px}}
.bio+footer,main.bio{padding-bottom:40px}
.hfig{float:right;width:200px;margin:4px 0 14px 28px}
.hfig img{width:100%;height:auto;display:block}
@media(max-width:700px){.hfig{float:none;width:200px;margin:0 0 18px}}
main.bio section.bs{max-width:none;margin:56px 0 0;padding:0}
main.bio .wrap{max-width:var(--wrap);margin:0 auto;padding:0 28px}
main.bio .wrap.bwrap{max-width:calc(720px + 56px);padding:56px 28px 0}
main.bio .wrap+.wrap{padding-top:0}
.bio .bfig figcaption{text-transform:none;letter-spacing:.01em;font:italic 400 15px var(--serif);color:var(--mute)}
.bio .bfig{margin-top:30px}
.bio h1{font:400 clamp(24px,3vw,34px)/1.35 var(--serif);margin:0 0 22px}
.bio p.award{font:italic 400 18px/1.5 var(--serif);color:var(--mute);margin:0 0 34px}
.bio .blead{font:400 17px/1.7 var(--serif)}
.bio h1{font:400 clamp(22px,2.4vw,28px)/1.4 var(--serif);max-width:none}
.bio h1{font:400 clamp(20px,2.2vw,26px)/1.35 var(--serif);letter-spacing:0;margin:0 0 28px}
.bio .blead{font:400 16px/1.75 var(--sans);color:#3d3834;margin-bottom:18px}
/* bio rows */
.brows{margin-top:44px;border-top:1px solid var(--line)}
.br{border-bottom:1px solid var(--line)}
.br>summary{list-style:none;cursor:pointer;display:grid;grid-template-columns:1fr;padding:20px 0 18px;position:relative}
.br>summary::-webkit-details-marker{display:none}
.br .bk{font:500 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.br .bt{font:500 22px/1.25 var(--sans);color:var(--head);margin-top:6px;letter-spacing:.01em}
.br .bm{font:500 13.5px var(--sans);letter-spacing:.04em;color:var(--deep);margin-top:10px}
.br .bm::after{content:' ▾';font-size:11px}
.br[open]>summary .bm::after{content:' ▴'}
.br>summary:hover .bm{text-decoration:underline}
.br .bbody{padding:6px 0 30px}
.br.sub2{border-bottom:1px solid var(--line)}
.br.grp>.bbody{padding:0 0 10px;border-top:1px solid var(--line)}
.br.grp>.bbody>.br:last-child{border-bottom:0}
.br.sub2>summary{grid-template-columns:96px 1fr;column-gap:20px;padding:16px 0 14px}
.br.sub2 .sd{grid-row:1/4;font:500 14px var(--sans);letter-spacing:.03em;color:var(--head);align-self:center}
.br.sub2 .bk{display:none}
.br.sub2 .bt{font:400 22px/1.2 var(--serif);margin-top:0;grid-column:2}
.br.sub2 .bm{grid-column:2;margin-top:6px}
.br.sub2 .bbody{padding:6px 0 26px 116px}
@media(max-width:700px){.br.sub2>summary{grid-template-columns:70px 1fr;column-gap:14px}.br.sub2 .bbody{padding-left:0}}
.mem{display:grid;grid-template-columns:200px 1fr;gap:26px;align-items:start;max-width:none}
@media(max-width:700px){.mem{grid-template-columns:1fr}.mem img{max-width:260px}}
.br .bfig{margin-left:0;margin-right:0}
.br .bbody>p:first-child{margin-top:0}
.br .bt{margin-top:0}
.bio h1{margin-bottom:34px}
.mem{display:block}
.mem::after{content:'';display:block;clear:both}
.mem>img{float:right;width:220px;max-width:42%;height:auto;margin:4px 0 14px 28px}
.mem>div>p:first-child{margin-top:0}
.br.sub2 .bbody{padding-left:0}
@media(max-width:700px){.mem>img{width:140px;max-width:42%;margin-left:16px}}
.mem>img{width:320px;max-width:46%}
@media(max-width:700px){.mem>img{width:180px;max-width:46%}}
.bio h1{color:var(--deep)}
:root{--accent-dark:#5c1f1f}
.bio h1,.strap p{color:var(--accent-dark)}
.strap p{background:#e7e9ec;padding:28px 34px;border-radius:2px}
@media(max-width:760px){.strap p{padding:22px 22px}}
.strap p{background:#ebe5dc}
.bio h1{background:#ebe5dc;padding:28px 34px;border-radius:2px;margin-bottom:34px}
@media(max-width:760px){.bio h1{padding:22px 22px}}
main.bio .wrap.bwrap{max-width:var(--wrap)}
.bio h1{max-width:820px}
.brows{max-width:900px}
.bfoot{max-width:900px;margin:48px 0 0}
.bfoot img{display:block;width:100%;height:auto}
.bfoot figcaption{font:italic 400 15px var(--serif);color:var(--mute);margin-top:10px;text-transform:none;letter-spacing:.01em}
footer .fline{margin:0;line-height:1.9}
footer .fline .dot{color:#8a7f70;margin:0 .35em}
footer .fline a{white-space:nowrap}
footer .flegal{margin:6px 0 0;font-size:13px;color:#9b9183}
footer .flegal a{color:#b9ae9d}
footer .flegal .dot{margin:0 .35em}
.cb{position:fixed;left:0;right:0;bottom:0;z-index:50;display:flex;gap:18px;align-items:center;justify-content:center;padding:14px 22px;background:#1f1c19;color:#e5dccc;font:400 14px/1.5 var(--sans);box-shadow:0 -6px 24px rgba(0,0,0,.25)}
.cb[hidden]{display:none}
.cb p{margin:0;max-width:820px}
.cb a{color:#cfa65b}
.cb button{flex:none;background:var(--deep);color:#fff;border:0;border-radius:6px;padding:9px 20px;font:500 12px var(--sans);letter-spacing:.18em;text-transform:uppercase;cursor:pointer}
.cb button:hover{background:#5d2020}
@media(max-width:600px){.cb{flex-direction:column;align-items:stretch;gap:10px;padding:14px 18px}.cb button{align-self:flex-end}}
.legal .wrap{max-width:var(--wrap);margin:0 auto;padding:56px 28px 20px}
.legal h1{font:400 clamp(24px,3vw,34px)/1.3 var(--serif);color:var(--accent-dark);margin:0 0 28px}
.legal h2{font:500 20px var(--sans);color:var(--head);margin:34px 0 10px}
.legal p{font:400 16px/1.75 var(--sans);color:#3d3834;margin:0 0 14px;max-width:760px}
.legal a{color:var(--deep)}
.legal-page .top{position:static;background:#2a2420}
.legal-bar{display:none}
/* media + contact pages */
.pt{font:400 clamp(30px,4vw,44px)/1.15 var(--serif);color:var(--head);margin:0 0 14px}
.pintro{margin:0 0 6px}
main.bio .pintro{font:400 16px/1.7 var(--sans);color:var(--mute)}
.mg{display:grid;gap:34px 24px;align-items:start}
.vg{grid-template-columns:repeat(2,minmax(0,1fr))}
.qg,.pg{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}
.cg{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:30px 20px}
.mg figure{margin:0}
.mg figcaption{text-transform:none;letter-spacing:0;color:var(--head);font:400 15px/1.4 var(--sans);padding-top:10px;display:block}
.vf{position:relative;aspect-ratio:16/9;background:#14110f;overflow:hidden}
.vf img{width:100%;height:100%;object-fit:cover;opacity:.85;display:block}
.vf iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.vf .play{position:absolute;left:50%;top:50%;width:62px;height:62px;margin:-31px 0 0 -31px;border-radius:50%;border:1.5px solid rgba(255,255,255,.85);background:rgba(20,17,15,.45);cursor:pointer}
.vf .play i{position:absolute;left:24px;top:19px;border-left:17px solid #fff;border-top:11px solid transparent;border-bottom:11px solid transparent}
.vf .play:hover{background:rgba(122,46,46,.8)}
.vv .vm{display:block;font:400 17px/1.35 var(--serif)}
.vv em{display:block;font:italic 400 16px/1.4 var(--serif);margin-top:2px}
.vv .vp,.pf .cr,.pf .sb{display:block;font:400 13px/1.4 var(--sans);color:var(--mute);margin-top:4px}
.pf a{text-decoration:none}
.pf figcaption a{color:var(--deep);text-decoration:underline}
.pf>a{display:block;overflow:hidden;background:#eee9e2}
.pf img{width:100%;display:block;height:auto}
.pf.port>a{aspect-ratio:3/4}.pf.port img{height:100%;object-fit:cover;object-position:50% 20%}
.pf.cov>a{aspect-ratio:1/1}.pf.cov img{height:100%;object-fit:cover}
.pf.cov figcaption{font-size:13px}
.pf .pt2{display:block;font-weight:500}
.pf.hist{grid-column:span 2}
.cgrid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:34px 0 8px}
.cgrid h2{font:400 24px var(--serif);color:var(--head);margin:0 0 12px}
.cgrid p{margin:0 0 10px}
.contact .big{font:400 clamp(18px,2vw,22px) var(--serif)}
.contact .big a{color:var(--deep)}
.contact .brows{margin-top:40px}
.pnote{margin-top:34px;font-size:14px;color:var(--mute)!important}
@media(max-width:760px){.vg{grid-template-columns:1fr}.cgrid{grid-template-columns:1fr;gap:26px}.pf.hist{grid-column:auto}.qg,.pg{grid-template-columns:repeat(2,minmax(0,1fr))}.cg{grid-template-columns:repeat(2,minmax(0,1fr))}}
.mg figcaption *{text-transform:none;letter-spacing:0}
.pf .pt2{font:500 14px/1.4 var(--sans)}
.pf .cr,.pf .sb,.vv .vp{font-size:13px}
.vv .vm{letter-spacing:0}
.pnote{margin-bottom:60px}
.br.mgrp>summary{display:flex;justify-content:space-between;align-items:center;padding:22px 0}
.br.mgrp .bm{margin:0}
.br.mgrp .bm::after{content:'▾';font-size:13px}
.br.mgrp[open]>summary .bm::after{content:'▴'}
.br.mgrp .bm::after{font-size:16px}
.br.mgrp>summary{justify-content:flex-start}
.br.mgrp .bm{display:none}
.br.mgrp .bt::after{content:' ▾';font:400 14px var(--sans);color:var(--deep);margin-left:6px}
.br.mgrp[open]>summary .bt::after{content:' ▴'}
.albs{padding:0 0 12px}
.br.alb{border-top:1px solid var(--line);border-bottom:0;margin-left:0}
.br.alb>summary{padding:18px 0 16px}
.br.alb .bt{font:400 22px/1.2 var(--serif);margin:0}
.br.alb .bt::after{content:' ▾';font:400 13px var(--sans);color:var(--deep);margin-left:6px}
.br.alb[open]>summary .bt::after{content:' ▴'}
.br.alb>.bbody{padding:6px 0 26px}
.fh{font:400 24px var(--serif);color:var(--head);margin:48px 0 18px}
.cf{display:grid;grid-template-columns:1fr 1fr;gap:20px 24px;max-width:900px}
.cf label{display:block;font:500 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.cf .wide,.cf p.wide{grid-column:1/-1}
.cf input,.cf select,.cf textarea{display:block;width:100%;margin-top:8px;padding:12px 14px;border:1px solid #cfc7bb;border-radius:3px;background:#fff;font:400 16px var(--sans);color:var(--head);letter-spacing:0;text-transform:none;box-sizing:border-box}
.cf textarea{resize:vertical;min-height:150px}
.cf input:focus,.cf select:focus,.cf textarea:focus{outline:2px solid var(--deep);outline-offset:1px}
.cf .hp{position:absolute;left:-9999px;height:0;overflow:hidden}
.cf .btn{cursor:pointer;border:0;font-size:14px;padding:13px 28px}
.cf .cmsg{margin-left:16px;font:400 14px var(--sans);color:var(--deep)}
.cf .cnote{font:400 13px var(--sans);color:var(--mute);margin:0}
@media(max-width:760px){.cf{grid-template-columns:1fr}.cf .cmsg{display:block;margin:12px 0 0}}
main.bio .wrap.bwrap.qwrap{padding-top:0}
.bio .quotes{margin-top:34px}
.sub .stt::after{content:' ▾';font:400 12px var(--sans);color:var(--deep);margin-left:4px}
.sub[open] .stt::after{content:' ▴'}
.sub summary:hover .stt{text-decoration:underline}
.pr .ph,.sub .sbd .ph{aspect-ratio:16/9;max-height:none;object-fit:cover;object-position:50% 30%}
/* alternating shades in the main list */
.events>.ev.alt{background:#ebe5dc;box-shadow:-18px 0 0 #ebe5dc,18px 0 0 #ebe5dc}
.sub summary .btn.sm{margin-left:auto;flex:0 0 auto}
.sub summary .btn.sm{display:inline-block;padding:8px 16px;font-size:11px;letter-spacing:.16em;border-radius:5px;color:#fff;align-self:center}
.sub .stt{min-width:100px}
.sub .sd{min-width:0}
.sub .stt::after,.sub[open] .stt::after{content:none}
.sub .sd::after{content:' ▾';font:400 12px var(--sans);color:var(--deep);margin-left:6px}
.sub[open] .sd::after{content:' ▴'}
.sub summary:hover .stt{text-decoration:none}
.sub summary:hover .sd{text-decoration:underline}
.sub summary{gap:12px}
.sub .stt{min-width:0}
.cm{font-size:13.5px}
.cm small{font-size:11.5px}
.wt{font-size:13.5px;line-height:1.55}
.int span{letter-spacing:.2em}
/* Watch videos: same look as the Tickets buttons */
.hero.first .hnext{height:auto;border:0;border-radius:5px;background:var(--deep);color:#fff;padding:11px 18px 11px 22px;gap:10px;bottom:22px;right:22px}
.hero.first .hnext:hover{background:var(--accent-dark);color:#fff}
.hero.first .hnext .wl{font:500 12px var(--sans);letter-spacing:.16em}
.hero.first .hnext .ar{font:400 20px/1 var(--sans);padding:0 0 2px}
.hero.first .hnext{background:#faf7f1;color:var(--deep)}
.hero.first .hnext:hover{background:var(--deep);color:#fff}
.rep .comp{margin-bottom:26px}
.ad strong,.sbr strong{font-weight:400}
.vv .vc{display:block;font:500 13.5px/1.4 var(--sans);letter-spacing:.02em;color:var(--deep)}
.vv .vw{display:block;font:400 13.5px/1.55 var(--sans);color:var(--ink);margin-top:2px}
.vv em{font:400 13.5px/1.5 var(--sans);font-style:italic;color:var(--mute);margin-top:2px}
.rep{background:#ebe5dc;padding:34px 34px 8px;border-radius:2px}
@media(max-width:760px){.rep{padding:26px 22px 4px}}
.rep{padding-bottom:34px}
@media(max-width:760px){.rep{padding-bottom:26px}}
.pbox{margin:0;max-width:820px;background:#ebe5dc;border-radius:2px;padding:28px 34px;font:400 clamp(20px,2.2vw,26px)/1.35 var(--serif);color:var(--accent-dark)}
.pbox a{color:inherit;text-decoration:none}
.pbox a:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:760px){.pbox{padding:22px 22px}}
main.bio p.pbox{font:400 clamp(20px,2.2vw,26px)/1.35 var(--serif);color:var(--accent-dark);margin:0;max-width:820px}
main.bio p.pbox a{color:var(--accent-dark)}


/* pages v2 */
body.pg .top{position:static;background:#2a2420}
body.pg .top::before{display:none}
.vlink{color:var(--deep);border-bottom:1px solid transparent}
.vlink:hover{text-decoration:none;border-bottom-color:var(--deep)}
.top nav a[aria-current]{color:#fff;border-bottom:1px solid #cfa65b}
main.lp{display:block}
main.lp section.lpt{padding-top:30px;padding-bottom:0}
.lptext{max-width:820px}.lptext p{margin:0 0 12px;font:400 15px/1.65 var(--sans);color:var(--ink)}
.strap .inner:not(:has(p)){padding:0}
#past{padding-top:30px}
.discs.big{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:42px 30px}
.discs.big figure{margin:0}
.discs.big .dcv{display:block}
.discs.big img,.discs.big .nocover{border-radius:3px}
.discs.big figcaption{display:block;text-transform:none;letter-spacing:0;color:var(--ink);font:400 13.5px/1.55 var(--sans);padding-top:12px}
.discs.big figcaption span{opacity:1;margin-top:0}
.discs.big .dt1{display:block;font:500 13.5px/1.4 var(--sans);letter-spacing:.02em;color:var(--deep)}
.discs.big .dt2{display:block;font:400 13.5px/1.55 var(--sans);color:var(--ink);margin-top:2px;letter-spacing:0;opacity:1}
.discs.big em{display:block;font:italic 400 13.5px/1.5 var(--sans);color:var(--mute);margin-top:2px}
.discs.big .dwl{display:block;margin-top:8px}.discs.big .dwl .dt2{color:var(--mute);margin-top:1px}
.discs.big .dlk{display:block;margin-top:8px}
.discs.big .dlk a{display:inline-block;margin:0 14px 2px 0;font:500 13px var(--sans);letter-spacing:.03em;color:var(--deep)}
.rep.prep{background:none;padding:0}
#pastrep{padding-top:30px}
main.ep{display:block}
main.ep .wrap{max-width:var(--wrap);margin:0 auto;padding:40px 28px 60px}
.ep .crumb{margin:0 0 26px;font:500 12px var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.ep .crumb a{color:var(--deep)}
.ep h1{margin:6px 0 6px;font:400 clamp(30px,4vw,44px)/1.12 var(--serif);color:var(--accent-dark);letter-spacing:.005em}
.ep .when{margin:6px 0 0;font:500 15px var(--sans);color:var(--head)}
.ep .epb{margin:18px 0 0}
.epg{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:0 56px;margin-top:30px}
.epl h4,.epr h4,.epe>h4{margin:30px 0 12px;font:500 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.epl>h4:first-child,.epr>h4:first-child{margin-top:0}
.epl .ph{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;object-position:50% 30%;border-radius:2px;margin:0 0 24px}
.epr strong{font-weight:400}
.epr .dir{margin-top:2px}
.epe{margin-top:44px}
.epe>h4{margin-top:0}
.epe .sub{border-bottom:1px solid var(--line)}
.ep .lead{margin:0 0 12px;font:400 19px/1.45 var(--serif);color:var(--head)}
@media(max-width:760px){.epg{display:block}.epr{margin-top:30px}}
/* gap v1 */
.sbr .dir{margin-top:10px}
/* sep v1 */
.events>.ev.alt .what h3 .tm{border-left-color:#b3a894}
.what h3 .tm{border-left-color:#b3a894}
/* guests v1 */
.gs.gl{margin:0 0 14px}
/* subimg v1 */
.sub .sbd .ph{max-width:340px;width:100%}
.sub .sbd .sbl .ph{margin-bottom:16px}
/* subimg v2 */
.sub .sbd .sbl .ph{max-width:100%;width:100%}
/* title link v1 */
.vlink{border-bottom:0;cursor:default}
.vlink:hover{border-bottom:0}
.what h3 a.tl{color:inherit;border-bottom:1px solid transparent}
.what h3 a.tl:hover{color:var(--deep);text-decoration:none;border-bottom-color:var(--deep)}
/* h2 link v1 */
h2 a.h2l{color:inherit;border-bottom:1px solid transparent}
h2 a.h2l:hover{color:var(--deep);text-decoration:none;border-bottom-color:var(--deep)}
/* rep fit v1 */
.comp li{white-space:normal;padding-left:1.1em;text-indent:-1.1em}
.rep .comp li .nk{font-style:italic;color:var(--mute)}
/* nav mid v1 */
@media(min-width:761px) and (max-width:990px){
.top nav{display:none}.menu-btn{display:flex}.top.open nav{display:flex}
.top{flex-wrap:wrap;padding:10px 16px}
.top nav{flex-basis:100%;flex-direction:column;background:rgba(30,25,22,.97);margin:8px -16px -10px;padding:6px 16px 12px}
.top nav a{margin:0;padding:12px 0;border-top:1px solid rgba(255,255,255,.12);font-size:13px;letter-spacing:.2em}
.top.open{background:rgba(30,25,22,.97)}
}
/* rep align v1 */
.comp li{padding-left:0;text-indent:0}
/* rep one-line v1 */
.comp li{white-space:nowrap}
.rep{columns:auto 290px}
@media(max-width:760px){.comp li{white-space:normal}}

/* hero 16:9 v3 */
.hero{--hh:max(36vh,260px)}
@media(max-width:760px){.hero{--hh:max(38vh,230px)}}
.hs0{box-sizing:border-box;padding:0 max(0px,calc((100% - var(--hh)*16/9)/2));background-origin:content-box;background-clip:content-box;background-size:cover;background-position:50% 20%;background-repeat:no-repeat}

/* hero height v1 */
.hero{height:36vh;min-height:260px}
@media(max-width:760px){.hero{height:38vh;min-height:230px}}
.hs0::before{content:none}
/* hero photo = list width v4 */
.hs0{--pl:max(28px,calc((100% - 1080px)/2 + 28px));padding:0 max(28px,calc(100% - var(--pl) - 900px)) 0 var(--pl)}
.hs0{background-position:50% 0}
.hs0{padding:0 var(--pl) 0 var(--pl)}
.hs0{padding:0 max(28px,calc(100% - var(--pl) - 900px)) 0 var(--pl)}
.hero{height:44vh;min-height:300px}
@media(max-width:760px){.hero{height:46vh;min-height:270px}}
.discs.big .dlk a{display:block;width:fit-content;margin:0 0 4px 0}
/* quotes compact v1 */
.quotes .wrap{padding:14px 28px 16px}
.qnav{margin-bottom:4px}
.qtrack{padding-top:4px}
blockquote{font-size:15px;margin-bottom:8px}
.qtrack figcaption{font-size:12.5px}
/* quotes compact v2 */
.quotes .wrap{padding:18px 28px 20px}
.qnav{margin-bottom:6px;gap:6px}
.qnav .qa{position:static;margin:0;width:30px;height:30px;font-size:20px;padding:0 0 2px;display:flex;align-items:center;justify-content:center}
.qtrack{padding-top:2px}
/* quotes compact v3 */
.quotes{position:relative}
.quotes .wrap{padding:56px 56px 56px 28px}
.qnav{position:absolute;right:12px;top:50%;transform:translateY(-50%);margin:0;display:flex;flex-direction:column;gap:8px}
.qtrack{padding-top:0;padding-bottom:0}
@media(max-width:760px){.quotes .wrap{padding:44px 44px 44px 20px}.qnav{right:6px}}
.qnav{display:block;width:30px;height:30px}
.qnav .qa.prev{position:absolute;right:0;bottom:calc(100% + 8px)}
.qnav .qa.next{position:absolute;right:0;top:0}
.qtrack{padding-top:16px;margin-top:-16px}
/* quotes nav top right v4 */
.qnav{top:14px;right:16px;transform:none}
.qnav .qa.prev{bottom:auto;top:0;right:38px}
@media(max-width:760px){.qnav{top:10px;right:10px}.qnav .qa.prev{right:36px}}
/* quotes bottom v5 */
.quotes .wrap{padding-bottom:36px}
@media(max-width:760px){.quotes .wrap{padding-bottom:30px}}
/* nav home (menu list only) v1 */
.nav-home{display:none}
@media(max-width:990px){.nav-home{display:block}}
/* rep outliers wrap v1 */
.comp li{white-space:normal;break-inside:avoid}
@media(max-width:760px){.comp li{white-space:normal}}
/* rep hanging indent v1 */
.comp li{padding-left:14px;text-indent:-14px}
/* venue accent v1 */
.ep .vn{color:var(--deep)}
/* press page v1 */
.pf .dl{display:block;margin-top:6px;font:500 13px var(--sans);letter-spacing:.03em;color:var(--deep)}
.pvl{list-style:none;margin:0 0 20px;padding:0}.pvl li{margin:0 0 6px}
.bio .lptext{max-width:820px}
/* quotes arrows clear v6 */
.quotes .wrap{padding-top:62px}
@media(max-width:760px){.quotes .wrap{padding-top:56px}}
/* no box -> no top divider v1 */
.bwrap>.brows:first-child,.bwrap>h1.sr+.brows{border-top:0;margin-top:0}
/* first album no divider v1 */
.albs>.br.alb:first-of-type{border-top:0}
/* quotes on media/bio pages same as home v1 */
main.bio .quotes .wrap{padding:62px 56px 36px 28px}
@media(max-width:760px){main.bio .quotes .wrap{padding:56px 44px 30px 20px}}

/* left-align dates with the content edge */
.events .ev .dt{text-align:left}
.events .yr span{margin-left:0}

/* intro box lines up with the grey concert bands */
.strap p{margin-left:-18px;margin-right:-18px}
.strap p{padding-left:18px;padding-right:18px}

/* intro box pastel */
.strap p{background:#f0e1dc}

/* top-of-page boxes share the intro box colour */
.bio h1,.pbox{background:#f0e1dc}
.strap p{font-size:clamp(17px,1.7vw,21px);line-height:1.4}

/* lighter concert bands */
.events>.ev.alt{background:#eee8df;box-shadow:-18px 0 0 #eee8df,18px 0 0 #eee8df}

/* sentence case menu and biography link */
.top nav a{text-transform:none;letter-spacing:.03em;font-size:15px;font-weight:500}
.strap .more-link{text-transform:none;letter-spacing:.02em;font-size:16px}
.strap .more-link{font-weight:400}

/* composer names in sentence case */
.comp h3{text-transform:none;letter-spacing:.01em;font-size:16px;font-weight:600}
.comp h3{font-weight:500}

/* accessibility: contrast and underlined links */
.quotes figcaption span{opacity:1;color:#dccdaa}
footer .flegal{color:#b9ae9d}
footer .flegal a,.cb a{text-decoration:underline;text-underline-offset:2px}

/* members: no double "Read more"; arrow beside the name */
.mhd{padding:22px 0 8px;border-bottom:1px solid var(--line)}
.mhd h2{margin:0;font:500 22px/1.25 var(--sans);color:var(--head);letter-spacing:.01em}
.br.sub2 .bm{display:none}
.br.sub2 .bt{grid-row:1/4;align-self:center;grid-column:2}
.br.sub2 .bt::after{content:' ▾';font:400 13px var(--sans);color:var(--deep);margin-left:6px}
.br.sub2[open]>summary .bt::after{content:' ▴'}
.br.sub2>summary:hover .bt{text-decoration:underline}
.br .pl{font:500 14px var(--sans);letter-spacing:.03em;color:var(--deep)}
/* artist pages */
.apg .inst{font:500 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin:26px 0 6px}
.apg .back{margin:30px 0 0;font:500 13.5px var(--sans)}
.apg .back a{color:var(--deep)}
.bio h1.apage{background:none;padding:0;margin:0 0 26px;font:400 40px/1.15 var(--serif);color:var(--head)}
.apg .alk{list-style:none;padding:0;margin:20px 0 40px}
.apg .alk li{margin:6px 0}
.apg .alk a{color:var(--deep);text-decoration:underline;text-underline-offset:2px}
.br.grp>.bbody{border-top:0}

/* event titles look like links */
.what h3 a.tl{color:var(--deep)}
.what h3 a.tl:hover{border-bottom-color:var(--deep)}

/* even padding on every concert row */
.events>.ev{padding:16px 0 16px}
.events>.ev .what{align-self:start}

/* less red: dates and years grey like the headings */
.dt b,.events .yr{color:var(--head)}

/* intro box: flush with the content, except on pages with concert bands */
.strap p{margin-left:0;margin-right:0;padding-left:34px;padding-right:34px}
@media(max-width:760px){.strap p{padding-left:22px;padding-right:22px}}
body:has(.events) .strap p{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}

/* all top boxes use the home page box size */
.bio h1,.pbox{font-size:clamp(17px,1.7vw,21px);line-height:1.4}

/* more space between quote and its source */
.quotes blockquote{margin-bottom:20px}

/* awards sit below "Released", one line space above and below */
.discs.big em.aw{margin:1.4em 0}
.discs.big em.aw{margin:20px 0 12px}
.discs.big em.aw{margin:20px 0}
.discs.big em.aw+.dwl,.discs.big em.aw+.dlk{margin-top:0}

/* discography: one equal gap between each section (released / awards / works / links) */
.discs.big em.aw,.discs.big .dwl,.discs.big .dlk{margin-top:16px;margin-bottom:0}
.discs.big em.aw+.dwl,.discs.big em.aw+.dlk{margin-top:16px}

/* year of composition after the work title, same style as composer dates */
.wt small.yc{font:400 12px var(--sans),sans-serif;color:var(--mute);margin-left:2px}

/* biography: members listed left, body text right, under the top box */
.bmem{display:grid;grid-template-columns:260px 1fr;gap:20px 44px;align-items:start;margin:34px 0 8px}
.bml{list-style:none;margin:0;padding:0}
.bml li{padding:12px 0;border-top:1px solid var(--line,#e2dccf)}
.bml li:first-child{border-top:0;padding-top:0}
.bmr{display:block;font:500 13px var(--sans);color:var(--ink);margin-bottom:2px}
.bml a{font:400 21px/1.25 var(--serif);color:var(--deep);text-decoration:none}
.bml a:hover{text-decoration:underline}
.bmt .lptext:first-child{margin-top:0}
@media(max-width:760px){.bmem{grid-template-columns:1fr;gap:6px}}

/* biography: text left (full width of the top box with the list), members right */
.bmem{grid-template-columns:1fr 260px;gap:20px 56px;max-width:none;width:100%}
.bmt .lptext{max-width:none}
@media(max-width:760px){.bmem{grid-template-columns:1fr}.bml{order:-1}}

/* biography: box, text/members block and accordion lines all end at the same right edge */
.bwrap:has(.bmem) .bmem,.bwrap:has(.bmem) .brows{max-width:820px}

/* concert rows: place + time stay together; if they don't fit after the title they start a fresh left-aligned line, close beneath */
.what h3{line-height:1.3}
.what h3 .pw{display:inline-block;vertical-align:baseline}
.what h3 .pl{margin-left:0;margin-right:0}
.what h3 a.tl{margin-right:4px}
.what h3 .pw{line-height:1.2;margin-top:0}
.what h3 .pl,.what h3 .tm{line-height:1.2}
.events .ev .what .kind{position:relative;top:-4px}
.events .ev .dt{position:relative;top:3px}

/* repertoire: no hanging indent; line breaks only between elements (No. 1 / in C major / Op. 28, No. 1 stay whole) */
.comp li{padding-left:0;text-indent:0}
.comp li .nw{white-space:nowrap}

/* "Interval" divider in programmes: same serif as the date numbers */
.int,.int span{font:400 17px var(--serif);letter-spacing:.04em;text-transform:none}

/* guests under the venue line in the concert lists: always a new line, "with Name (instrument)" */
.ev .what .wg{padding-right:170px;margin:3px 0 0;font:400 15px/1.4 var(--sans);color:var(--mute)}
.ev .what .wg b{font-weight:500;color:var(--ink)}
.ev .what .wg i{font-style:normal;color:var(--mute)}

.gl2{margin:10px 0 0}
.gl2 a{color:var(--deep)}

/* links inside artist page text use the normal red */
.apg p a,.apg .bd a{color:var(--deep);text-decoration:underline;text-underline-offset:3px}
.apg p a:hover,.apg .bd a:hover{color:var(--accent-dark)}

/* Guest Artists block in More info: artist, instrument */
.ga{list-style:none;margin:6px 0 0;padding:0}
.ga li{display:flex;flex-wrap:wrap;gap:0 14px;align-items:baseline;margin:3px 0}
.ga .gan{font:500 15px var(--sans);color:var(--ink)}
.ga .gai{font:400 14px var(--sans);color:var(--mute)}

.ga a.gan{color:var(--deep);text-decoration:underline;text-underline-offset:3px}
.ga a.gan:hover{color:var(--accent-dark)}
.ga .gan,.ga .gai,.ga a.gan{font:400 13.5px/1.55 var(--sans)}
.ga .gai{color:var(--mute)}
.ga span.gan{color:#4a443d}
.ga li{gap:0 8px}
/* guests on sub-events */
.sub .stt .wg{display:block;font:400 14px/1.4 var(--sans);color:var(--mute);margin-top:2px}
.sub .stt .wg b{font-weight:500;color:var(--ink)}
/* nudge More info / Tickets down in concert lists */
.ev .more>summary{position:relative;top:4px}
/* more space after short description */
.pr .lead{margin-bottom:28px}
.sub summary .wg.sw{font:400 14px var(--sans);color:var(--mute);margin:0;white-space:nowrap}
.sub summary .wg.sw b{font-weight:500;color:var(--ink)}
.sub summary:hover{text-decoration:none}
.sub summary:hover .sd{text-decoration:underline}
.sub .stt a.cl{color:var(--deep);border-bottom:1px solid transparent}
.sub .stt a.cl:hover{text-decoration:none;border-bottom-color:var(--deep)}
.sub summary:hover .stt a.cl{text-decoration:none}
.sub summary:hover .sd{text-decoration:none}
.sub summary .sd:hover{text-decoration:underline}
.pr .lead:last-child{margin-bottom:0}
@media(min-width:761px){.more>.mb{margin-top:24px}}
.int,.int span{font-size:14px}
/* more space between type and venue line (type stays put) */
.events .ev .what h3{margin-top:5px}
.events .ev .dt{top:8px}
/* short description top gap matches Programme heading */
.pr>.lead:first-child{margin-top:-2px}
@media(max-width:760px){.pr>.lead:first-child{margin-top:8px}}
.pr>img.ph:first-child{margin-top:-9px}
@media(max-width:760px){.pr>img.ph:first-child{margin-top:1px}}
.ev .what .wg b,.sub summary .wg.sw b,.sub .stt .wg b{font-weight:400}
/* first item in an event inside a series: gap halfway between old and main */
.sub .sbd .sbl>h4:first-child,.sub .sbd .sbr>h4:first-child{margin-top:11px}
.sub .sbd .sbl>img.ph:first-child{margin-top:2px}
@media(max-width:760px){.sub .sbd .sbl>h4:first-child,.sub .sbd .sbr>h4:first-child{margin-top:17px}.sub .sbd .sbl>img.ph:first-child{margin-top:8px}}
.events .ev .what .kind{font:500 11px/1.2 var(--sans)}
.events .ev .what .kind{margin-bottom:5px}
.events .ev .dt{top:11px}
.events .ev .what h3{margin-top:8px}
.events .ev .what h3{margin-top:3px}
.events .ev .what .kind{margin-bottom:2px}
.events .ev .dt{top:6px}
.events .ev .what h3{margin-top:0}
.events .ev .dt{top:3px}
.events .ev .what .kind{margin-bottom:0}
.events .ev .what h3{margin-top:-2px}
.events .ev .dt{top:1px}
.events .ev .what h3{margin-top:0}
.events .ev .dt{top:2px}
.ev .what .wg{font-size:14px}
.sub summary .wg.sw{font-size:13px}
/* home: nudge biography link and Upcoming up */
.strap .more-link{margin-top:20px}
#concerts{padding-top:32px}
.strap .more-link{margin-top:25px}
/* hero photo spans the concert box width (a little wider than the text) */
.hs0{--pl:max(10px,calc((100% - 1080px)/2 + 10px));padding:0 max(10px,calc(100% - var(--pl) - 936px)) 0 var(--pl)}
/* hero height follows the photo width (16:9) so it does not crop/zoom more as the window widens */
.hero{height:min(calc(min(936px,100vw - 20px)*.5625),64vh);min-height:260px}
/* logo grows in proportion to the hero photo width */
.top .brand img{height:clamp(30px,calc(min(936px,100vw - 20px)*.068),64px)}
/* Watch videos button scales with the hero photo width */
.hero.first .hnext{font-size:clamp(10px,calc(min(936px,100vw - 20px)*.0128),12px);padding:.92em 1.5em .92em 1.83em;gap:.83em;bottom:1.83em;right:1.83em}
.hero.first .hnext .wl{font-size:1em;letter-spacing:.14em}
.hero.first .hnext .ar{font-size:1.67em}
/* top shading only behind the logo and menu corners, not across the photo */
.hero .shade{background:radial-gradient(ellipse 330px 110px at 0 0,rgba(15,12,10,.6),rgba(15,12,10,0) 100%),radial-gradient(ellipse 520px 90px at 100% 0,rgba(15,12,10,.5),rgba(15,12,10,0) 100%)}
@media(max-width:760px){.hero .shade{background:radial-gradient(ellipse 240px 80px at 0 0,rgba(15,12,10,.6),rgba(15,12,10,0) 100%),radial-gradient(ellipse 120px 80px at 100% 0,rgba(15,12,10,.5),rgba(15,12,10,0) 100%)}}
.top::before{content:none}
/* shading sits on the photo's top corners (behind logo and menu) and scales with the photo width */
.hero .shade{--W:min(936px,100vw - 20px);inset:0 auto 0 max(10px,calc((100% - 1080px)/2 + 10px));width:var(--W);background:radial-gradient(ellipse calc(var(--W)*.36) calc(var(--W)*.12) at 0 0,rgba(15,12,10,.6),rgba(15,12,10,0) 100%),radial-gradient(ellipse calc(var(--W)*.6) calc(var(--W)*.1) at 100% 0,rgba(15,12,10,.5),rgba(15,12,10,0) 100%)}
@media(max-width:760px){.hero .shade{background:radial-gradient(ellipse calc(var(--W)*.4) calc(var(--W)*.14) at 0 0,rgba(15,12,10,.6),rgba(15,12,10,0) 100%),radial-gradient(ellipse calc(var(--W)*.3) calc(var(--W)*.14) at 100% 0,rgba(15,12,10,.5),rgba(15,12,10,0) 100%)}}
.hero .shade{background:radial-gradient(ellipse calc(var(--W)*.36) calc(var(--W)*.12) at 0 0,rgba(15,12,10,.6),rgba(15,12,10,0) 100%),radial-gradient(ellipse calc(var(--W)*.66) calc(var(--W)*.12) at 100% 0,rgba(15,12,10,.62),rgba(15,12,10,0) 100%)}
@media(max-width:760px){.hero .shade{background:radial-gradient(ellipse calc(var(--W)*.4) calc(var(--W)*.14) at 0 0,rgba(15,12,10,.6),rgba(15,12,10,0) 100%),radial-gradient(ellipse calc(var(--W)*.3) calc(var(--W)*.14) at 100% 0,rgba(15,12,10,.55),rgba(15,12,10,0) 100%)}}
/* shading strength back to the earlier darkness (original layers stacked to about .8 at the top edge) */
.hero .shade{background:radial-gradient(ellipse calc(var(--W)*.38) calc(var(--W)*.13) at 0 0,rgba(14,9,7,.8),rgba(14,9,7,.45) 50%,rgba(14,9,7,0) 100%),radial-gradient(ellipse calc(var(--W)*.68) calc(var(--W)*.13) at 100% 0,rgba(14,9,7,.8),rgba(14,9,7,.45) 50%,rgba(14,9,7,0) 100%)}
@media(max-width:760px){.hero .shade{background:radial-gradient(ellipse calc(var(--W)*.42) calc(var(--W)*.15) at 0 0,rgba(14,9,7,.8),rgba(14,9,7,.45) 50%,rgba(14,9,7,0) 100%),radial-gradient(ellipse calc(var(--W)*.32) calc(var(--W)*.15) at 100% 0,rgba(14,9,7,.75),rgba(14,9,7,.4) 50%,rgba(14,9,7,0) 100%)}}
/* stronger shading */
.hero .shade{background:radial-gradient(ellipse calc(var(--W)*.42) calc(var(--W)*.15) at 0 0,rgba(14,9,7,.92),rgba(14,9,7,.6) 50%,rgba(14,9,7,0) 100%),radial-gradient(ellipse calc(var(--W)*.72) calc(var(--W)*.15) at 100% 0,rgba(14,9,7,.92),rgba(14,9,7,.6) 50%,rgba(14,9,7,0) 100%)}
@media(max-width:760px){.hero .shade{background:radial-gradient(ellipse calc(var(--W)*.46) calc(var(--W)*.17) at 0 0,rgba(14,9,7,.92),rgba(14,9,7,.6) 50%,rgba(14,9,7,0) 100%),radial-gradient(ellipse calc(var(--W)*.36) calc(var(--W)*.17) at 100% 0,rgba(14,9,7,.9),rgba(14,9,7,.55) 50%,rgba(14,9,7,0) 100%)}}
/* same shading at every width (no change at the mobile breakpoint) */
@media(max-width:760px){.hero .shade{background:radial-gradient(ellipse calc(var(--W)*.42) calc(var(--W)*.15) at 0 0,rgba(14,9,7,.92),rgba(14,9,7,.6) 50%,rgba(14,9,7,0) 100%),radial-gradient(ellipse calc(var(--W)*.72) calc(var(--W)*.15) at 100% 0,rgba(14,9,7,.92),rgba(14,9,7,.6) 50%,rgba(14,9,7,0) 100%)}}
/* hero gets taller as the window narrows, easing back to 16:9 at full width */
.hero{height:min(calc(min(936px,100vw - 20px)*.5625 + (936px - min(936px,100vw - 20px))*.22),64vh);min-height:260px}
/* less crop when wide: 66% height-to-width at full width, taller on narrow */
.hero{height:min(calc(min(936px,100vw - 20px)*.66 + (936px - min(936px,100vw - 20px))*.157),66vh);min-height:260px}
/* wide height held to about 562px */
.hero{height:min(calc(min(936px,100vw - 20px)*.6 + (936px - min(936px,100vw - 20px))*.196),60vh);min-height:260px}
/* biography hero matches the home page hero: inset to the concert box width, same height scaling, same corner shading */
.bhero{box-sizing:border-box;--pl:max(10px,calc((100% - 1080px)/2 + 10px));padding:0 max(10px,calc(100% - var(--pl) - 936px)) 0 var(--pl);background-origin:content-box;background-clip:content-box;background-repeat:no-repeat;height:min(calc(min(936px,100vw - 20px)*.6 + (936px - min(936px,100vw - 20px))*.196),60vh);min-height:260px}
.bhero .shade{--W:min(936px,100vw - 20px);inset:0 auto 0 var(--pl);width:var(--W);background:radial-gradient(ellipse calc(var(--W)*.42) calc(var(--W)*.15) at 0 0,rgba(14,9,7,.92),rgba(14,9,7,.6) 50%,rgba(14,9,7,0) 100%),radial-gradient(ellipse calc(var(--W)*.72) calc(var(--W)*.15) at 100% 0,rgba(14,9,7,.92),rgba(14,9,7,.6) 50%,rgba(14,9,7,0) 100%)}
.bhero{background-color:transparent}
.bhero::before{content:"";position:absolute;inset:0;background:#14110f;z-index:-1}
/* web pages made in the admin */
.wpb{margin:8px 0 40px;max-width:720px}
.wpb h2{font:400 28px/1.25 var(--serif);color:var(--head);margin:36px 0 12px}
.wpb h3{font:500 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);margin:30px 0 10px}
.wpb p{margin:0 0 16px}.wpb ul{margin:0 0 16px;padding-left:22px}.wpb li{margin:0 0 6px}
.wpb a{color:var(--deep);text-decoration:underline;text-underline-offset:3px}
.wpb h2.sr{position:absolute;left:-9999px}
/* intro box standardised to the home page: box 18px outside the text column, text aligned with the content, 34px below the header */
.strap p{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}
main.bio h1,.bio .bwrap>h1{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px;max-width:calc(820px)}
.bwrap:has(>h1:first-child){padding-top:34px}
@media(max-width:760px){main.bio h1,.bio .bwrap>h1{margin-left:-18px;margin-right:-18px;padding-left:18px;padding-right:18px}}
main.bio .wrap.bwrap:has(>h1:first-child){padding-top:34px}
/* artist pages: instrument to the right of the name, a line of space below it; photo on top on mobile */
.apg h1{margin-bottom:26px}
.apg h1 .ai{font:400 17px var(--sans);color:var(--mute);margin-left:14px;letter-spacing:0;white-space:nowrap}
@media(max-width:700px){.apg .mem>img{float:none;display:block;width:100%;max-width:none;margin:0 0 18px}}
.apg h1 .ai{font:500 13px var(--sans);color:var(--ink)}
@media(max-width:700px){.apg .mem>img{width:70%;max-width:300px;margin:0 0 16px}}
.apg h1 .ai{font:500 17px var(--sans);color:var(--ink)}
.apg h1 .ai{color:color-mix(in srgb,var(--ink) 60%,var(--mute))}
.apg h1 .ai{color:var(--ink)}
.discs.big em.wg2{display:block;margin-top:0}
.discs.big em.aw{color:var(--ink)}
.discs.big .dt1{color:var(--ink)}
.discs.big .dt2.rel{color:var(--mute)}
.discs.big em.aw{color:var(--ink)}
.discs.big .dt2.rel{color:var(--ink);font-weight:400}
.discs.big em.wg2{color:var(--ink)}
.discs.big em.wg2 a.gan{color:var(--deep);text-decoration:none}.discs.big em.wg2 a.gan:hover{text-decoration:underline;text-underline-offset:3px}
.discs.big em.wg2{font-weight:500}
.discs.big .dt1{font-weight:600}
.discs.big .nk{font-style:italic}
.discs.big .dt2 .nk{display:inline;font:italic 400 13.5px/1.55 var(--sans);letter-spacing:0;text-transform:none;color:inherit;margin:0}
.ga span.gan{color:var(--ink)}
.ga a.gan{text-decoration:none}.ga a.gan:hover{text-decoration:underline;text-underline-offset:3px}
.dir{font-weight:400}
.epl>h3.sr+h4{margin-top:0}
.epr strong.vn,.epr strong,.sbr strong,.ad strong{color:var(--ink);font-weight:400}
.wk .wt{color:#4a443d}.wk .cm{color:var(--head);font-weight:600}
.epr p,.epr p strong,.epr p .vn,.sbr p,.sbr p strong,.ad p,.ad p strong{color:#4a443d !important;font:400 13.5px/1.55 var(--sans)}
.pr .lead,.ep .lead{color:var(--accent-dark)}
.ga .gai{font:400 11.5px var(--sans);color:var(--mute)}
.pr .lead,.ep .lead{color:var(--head)}
@media(max-width:700px){.apg .mem>img{width:100%;max-width:none}}
@media(max-width:760px){.sub summary{row-gap:0}.sub summary>*{margin-top:0}.sub summary .wg.sw{margin-top:2px;line-height:1.4}.sub summary .stt{padding-bottom:0}}
a.nb{color:var(--deep);text-decoration:none}a.nb:hover{text-decoration:underline;text-underline-offset:3px}
/* series page: event headings match the event page (small grey caps) */
.sub .sbd h4,.sub .sbd h4.gap{font:500 11px var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--mute);line-height:normal;margin:30px 0 12px}
.sub .sbd .sbl>h4:first-child,.sub .sbd .sbr>h4:first-child{margin-top:11px}
.sub .sbd h4.gap{margin-top:30px}
/* quotes ribbon: same right edge as the page content */
.quotes .wrap{padding-right:28px}
main.bio .quotes .wrap{padding-right:28px}
@media(max-width:760px){main.bio .quotes .wrap,.quotes .wrap{padding-right:20px}}
/* venue names inside addresses are never red */
.vlink,p .vn,strong.vn,.epr strong.vn{color:inherit !important}
/* tagline: the same space below it everywhere (More info, event, series, events in a series) */
.pr .lead,.ep .lead,.sbl .lead{margin-bottom:34px !important}
.pr .lead:last-child,.ep .lead:last-child,.sbl .lead:last-child{margin-bottom:0 !important}
.lead+*,.lead+.sr+.sr+*,.lead+.sr+*{margin-top:0 !important}
.sbl .lead{margin-top:0;font:400 17px/1.45 var(--serif);color:var(--head)}
.pr .lead,.ep .lead,.sbl .lead{color:var(--accent-dark)}
/* gallery photos (not album covers): text styled like the discography */
.alb .pf:not(.cov) .pt2{font:600 13.5px/18.9px var(--sans);letter-spacing:.02em;color:var(--ink);margin-top:3px}
.alb .pf:not(.cov) .sb{font:400 13.5px/1.55 var(--sans);color:var(--ink);margin-top:2px}
.alb .pf:not(.cov) .cr{font:400 13.5px/1.55 var(--sans);color:var(--mute);margin-top:1px}
.alb .pf:not(.cov) figcaption span{opacity:1}
/* Media page videos: caption styled like the discography (composer = title, work = released, movement = works) */
.mg .vv figcaption span{opacity:1}
.mg .vv .vc{font:600 13.5px/18.9px var(--sans);letter-spacing:.02em;color:var(--ink);margin-top:3px}
.mg .vv .vw{font:400 13.5px/1.55 var(--sans);color:var(--ink);margin-top:2px}
.mg .vv em{font:400 13.5px/1.55 var(--sans);font-style:normal;color:var(--mute);margin-top:1px;display:block}
/* gallery, videos and discography: same three-line look as the More info programme (composer / work / with-line) */
.alb .pf:not(.cov) .pt2{font:600 13.5px/18.9px var(--sans);letter-spacing:.02em;color:var(--head)}
.alb .pf:not(.cov) .sb{font:400 13.5px/1.55 var(--sans);color:#4a443d}
.alb .pf:not(.cov) .cr,.alb .pf:not(.cov) .cr a{font-style:italic;font-weight:400}
.alb .pf:not(.cov) .cr{font-size:13.5px;line-height:1.6;color:var(--mute)}
.mg .vv .vc{color:var(--head)}
.mg .vv .vw{color:#4a443d}
.mg .vv em{font-style:italic;color:var(--mute)}
.discs.big .dt1{color:var(--head);font-weight:600}
.discs.big .dt2.rel{color:#4a443d;font-weight:400}
.discs.big .dwl .dt2{font-style:italic;color:var(--mute)}
/* discography: remaining differences from the programme lines (spacing, guest line) */
.discs.big .dt2,.discs.big em.wg2,.discs.big em.aw{letter-spacing:.225px}
.discs.big .dt1{letter-spacing:.27px}
.discs.big em.wg2{font-weight:400;color:var(--mute);line-height:21.6px;margin-top:2px}
/* gallery and videos: same letter spacing as the programme lines */
.alb .pf:not(.cov) .sb,.alb .pf:not(.cov) .cr,.mg .vv .vw,.mg .vv em{letter-spacing:.225px}
.alb .pf:not(.cov) .cr,.mg .vv em{margin-top:2px}
.discs.big .dwl .dt2{font-style:normal}
/* even line spacing: every line of a composer / work / with-line block is 20px high with 2px between (22px pitch), everywhere */
.wk .cm{line-height:20px}
.wk .wt,.wk .gs{line-height:20px;margin-top:2px}
.discs.big .dt1{line-height:20px}
.discs.big em.wg2,.discs.big .dt2.rel,.discs.big .dwl .dt2{line-height:20px;margin-top:2px}
.alb .pf:not(.cov) .pt2{line-height:20px}
.alb .pf:not(.cov) .sb,.alb .pf:not(.cov) .cr{line-height:20px;margin-top:2px}
.mg .vv .vc{line-height:20px}
.mg .vv .vw,.mg .vv em{line-height:20px;margin-top:2px}
/* discography + media: tighter than the rest of the site (18px lines, 1px gaps, slimmer tracking) */
.discs.big .dt1,.alb .pf:not(.cov) .pt2,.mg .vv .vc{line-height:18px;letter-spacing:.12px}
.discs.big em.wg2,.discs.big .dt2.rel,.discs.big .dwl .dt2,.discs.big .dt2,.discs.big em.aw,
.alb .pf:not(.cov) .sb,.alb .pf:not(.cov) .cr,.mg .vv .vw,.mg .vv em{line-height:18px;margin-top:1px;letter-spacing:.08px}
/* discography + media: line spacing eased a touch (19px lines, 1px gaps) */
.discs.big .dt1,.alb .pf:not(.cov) .pt2,.mg .vv .vc,
.discs.big em.wg2,.discs.big .dt2.rel,.discs.big .dwl .dt2,.discs.big .dt2,.discs.big em.aw,
.alb .pf:not(.cov) .sb,.alb .pf:not(.cov) .cr,.mg .vv .vw,.mg .vv em{line-height:19px}
/* discography links: same size, line height and tracking as the lines above */
.discs.big .dlk a{font-size:13.5px;line-height:19px;letter-spacing:.08px;margin:1px 0 0 0}
/* discography: a line space above the award line */
.discs.big em.aw,.discs.big em.aw+.dwl,.discs.big em.aw+.dlk{margin-top:19px}
.discs.big em.aw+.dwl,.discs.big em.aw+.dlk{margin-top:0}
.discs.big em.aw+.dwl,.discs.big em.aw+.dlk{margin-top:16px}
/* photo credit link: plain grey like the word "Photo", underline only on hover */
.cr a{color:inherit;text-decoration:none;font-weight:inherit}
.cr a:hover{text-decoration:underline}
.alb .pf .cr a,.pf .cr a,.cr a{color:inherit !important;text-decoration:none !important;border:0 !important;background:none !important}
.alb .pf .cr a:hover,.pf .cr a:hover,.cr a:hover{text-decoration:underline !important}
/* media page: caption block a little closer to the photo/video */
.mg figcaption{padding-top:5px}
/* discography: caption block closer to the cover, same as media */
.discs.big figcaption{padding-top:7px}
.discs.big figcaption{padding-top:5px}
.discs.big figcaption{padding-top:6px}
.mg figcaption{padding-top:6px}
/* More info: one rhythm. Section gap 30px (36 wide) above every header AND between tagline and About;
   header-to-content 12px (14 wide) whatever follows. */
.mb .pr .lead{margin-bottom:30px !important}
.mb .pr .lead+h4{margin-top:0}
.mb h4+.wk,.mb h4+.bd,.mb h4+ul,.mb h4+p{margin-top:0}
.mb h4+.wk{padding-top:0}
.mb .ga{margin-top:0}
.mb .pr .wk:last-child{padding-bottom:0}
.mb .ad>h4:first-child{margin-top:30px}
@media(min-width:761px){
.mb .pr .lead{margin-bottom:36px !important}
.mb .ad>h4:first-child{margin-top:0}
}
/* ONE vertical rhythm on More info, event pages, series pages and events inside series:
   30px above every section header (and between tagline and first section), 12px below every header. */
.pr .lead,.ep .lead,.sbl .lead,.mb .pr .lead{margin-bottom:30px !important}
.mb h4.gap{margin-top:30px !important}
.mb h4{margin-bottom:12px !important}
.epl h4+.wk,.sbl h4+.wk,.pr h4+.wk{padding-top:0}
.epl .wk:last-child,.sbl .wk:last-child,.pr .wk:last-child{padding-bottom:0}
.epr p,.sbr p,.ad p{margin:0 0 8px}
.epr h4+p,.sbr h4+p,.ad h4+p{margin-top:0}
.epr .dir,.sbr .dir{margin-top:2px}
.epr .ga,.sbr .ga,.epr ul.lk,.sbr ul.lk{margin-top:0}
.epl .ph,.sbl .ph{margin-bottom:0}
.epl .ph+h4,.sbl .ph+h4{margin-top:30px}
.ep .epe{margin-top:30px}
@media(max-width:760px){
.sub .sbd>.sbr{margin-top:0}
.sbr>h4:first-child{margin-top:30px}
}
@media(min-width:761px){
.mb .pr .lead{margin-bottom:30px !important}
.mb h4.gap{margin-top:30px !important}
.mb h4{margin-bottom:12px !important}
}
.sub .sbd .sbl>img.ph{margin-bottom:0}
@media(max-width:760px){
.sub .sbd>.sbr>h4:first-child{margin-top:30px}
}
/* no special tagline spacing: the tagline has no bottom margin; the header after it gets the normal 30px above */
.pr .lead,.ep .lead,.sbl .lead,.mb .pr .lead{margin-bottom:0 !important}
.mb .pr .lead+h4,.epl>h3.sr+h4,.epl .lead~h4:first-of-type,.sbl .lead+h4,.ep .epe>h4{margin-top:30px !important}
@media(min-width:761px){.mb .pr .lead{margin-bottom:0 !important}}
.mb .evs{margin-top:0;padding-top:0}
.mb .evs>h4:first-child{margin-top:30px !important}
@media(min-width:761px){.mb>.evs{margin-top:-8px}}
/* photo as second item: normal 30px above it */
.lead~img.ph,.lead~.ph,.pr .lead+.ph,.epl .lead~.ph,.sbl .lead~.ph{margin-top:30px !important}
/* photo second: same 30px above and below it, in More info too */
.pr .ph,.mb .ph{margin-bottom:0 !important}
.pr .ph+h4,.mb .ph+h4,.epl .ph+h4,.sbl .ph+h4{margin-top:30px !important}
/* Watch videos: stay in the bottom-right corner of the photo (936px wide, centred) on wide screens */
.hero.first .hnext{right:calc(max(0px,(100% - 936px)/2) + 1.83em)}
.hero.first .hnext{right:calc(100% - max(10px,(100% - 1080px)/2 + 10px) - min(936px,100vw - 20px) + 1.83em - 10px)}
