:root{--ink:#111516;--panel:#191d1e;--paper:#f1eee7;--soft:#b5b8b4;--gold:#c9aa78;--line:#ffffff24;--serif:Baskerville,'Palatino Linotype','Book Antiqua',Georgia,serif;--sans:'Helvetica Neue',Helvetica,Arial,sans-serif;color-scheme:dark;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:1rem;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,audio:focus-visible{outline:2px solid var(--gold);outline-offset:7px}p,h1,h2,h3,figure{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;overflow-wrap:anywhere}em{font-weight:400}img{max-width:100%;display:block}button,summary{cursor:pointer}button{border:0;background:none}::selection{background:var(--gold);color:var(--ink)}.skip{position:fixed;top:8px;left:8px;z-index:20;background:var(--paper);color:var(--ink);padding:8px 18px;transform:translateY(-160%)}.skip:focus{transform:none}.header{display:flex;align-items:center;justify-content:space-between;padding:23px 6%;border-bottom:1px solid var(--line);position:relative;z-index:5;gap:30px}.wordmark{font-family:var(--serif);font-size:1.4rem;line-height:1.2}.wordmark span{display:block;font-family:var(--sans);text-transform:uppercase;font-size:.75rem;letter-spacing:.2em;margin-top:6px;color:var(--soft)}nav{display:flex;gap:36px;align-items:center}nav a{font-size:.875rem;padding:8px 0;color:#dddeda;transition:color .2s}nav a:hover{color:var(--gold)}.menu-toggle{display:none}.hero{max-width:1600px;margin:0 auto;position:relative;display:grid;grid-template-columns:1.06fr 1fr;min-height:740px;padding:0 6%}.hero-copy{padding:89px 0 78px;position:relative;z-index:2}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:.75rem;line-height:1.6;color:var(--gold)}h1{font-size:clamp(4.5rem,7.8vw,8.4rem);letter-spacing:-.04em;line-height:.98;margin:35px 0 25px}h1 em{color:var(--gold)}.hero-role{font-family:var(--serif);font-size:1.65rem;letter-spacing:.01em}.hero-role span{font-style:italic;color:var(--gold);padding:0 6px}.hero-intro{color:var(--soft);margin-top:17px;max-width:340px;font-size:1rem}.hero-actions{display:flex;align-items:center;gap:30px;margin-top:34px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;padding:13px 23px;min-height:48px;background:var(--gold);color:var(--ink);font-size:.875rem;border:1px solid var(--gold);transition:background .2s,color .2s;text-align:center}.button:hover{background:#dfc191}.text-link{font-size:.875rem;border-bottom:1px solid #c9aa7870;padding:5px 0;display:inline-block;transition:color .2s}.text-link:hover{color:var(--gold)}.hero-note{display:flex;gap:17px;align-items:flex-start;margin-top:57px;color:var(--soft);font-size:.8125rem;line-height:1.6}.small-line{height:1px;width:29px;background:var(--gold);margin-top:10px;flex-shrink:0}.hero-portrait{margin-right:-6vw;position:relative;overflow:hidden}.hero-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 46%;max-height:758px}.hero-portrait:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--ink),transparent 21%),linear-gradient(0deg,var(--ink),transparent 20%);pointer-events:none}.hero-portrait figcaption{position:absolute;bottom:40px;right:40px;z-index:1;text-transform:uppercase;letter-spacing:.17em;font-size:.75rem;color:#e5e0d5;opacity:.8}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);padding:19px 0 27px;text-transform:uppercase;letter-spacing:.1em;font-size:.75rem;color:var(--soft)}.hero-bottom a{color:var(--gold)}.section{padding:100px 6%;display:grid;grid-template-columns:23% 77%;max-width:1600px;margin:auto;gap:0}.section-label{display:flex;align-items:flex-start;gap:16px;font-size:.75rem;text-transform:uppercase;letter-spacing:.13em;padding-top:12px}.section-label span{color:var(--gold);font-family:var(--serif);font-style:italic;font-size:1rem;line-height:1.5}.section-label p{color:var(--soft)}h2{font-size:clamp(2.8rem,4.5vw,4.65rem);letter-spacing:-.035em;line-height:1.13}h2 em{color:var(--gold)}.bio-columns{display:grid;grid-template-columns:1fr 1.08fr;gap:58px;margin-top:42px}.lead{font-family:var(--serif);font-size:1.6rem;line-height:1.5;color:#e4e3da}.bio-detail{color:var(--soft)}.bio-detail p+p{margin-top:23px}.more-bio{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:33px;color:var(--soft)}summary{list-style:none;padding:17px 0;display:flex;justify-content:space-between;align-items:center;color:var(--paper);font-size:.875rem}summary::-webkit-details-marker{display:none}summary span{color:var(--gold);font-size:1.5rem;font-weight:300;line-height:1}.more-bio[open] summary span{transform:rotate(45deg)}.more-bio>div{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:7px 0 28px}.download-link{margin-top:25px}.file-tag{font-size:.75rem;color:var(--soft);padding-left:12px}.honours{border-top:1px solid var(--line);padding-top:76px;padding-bottom:78px}.honours-content h2{font-size:2.8rem}.honours-list{list-style:none;padding:0;margin:32px 0 0}.honours-list li{display:grid;grid-template-columns:85px minmax(0,1fr) 60px;gap:20px;border-top:1px solid var(--line);padding:25px 0;align-items:start}.year{font-family:var(--serif);color:var(--gold);font-size:1.125rem;padding-top:5px}.honours-list h3{font-size:1.65rem;line-height:1.3;margin-bottom:6px}.honours-list p{color:#d2d4cf;font-size:.9375rem}.muted{color:var(--soft);font-size:.8125rem;display:block;margin-top:5px}.instrument-label{color:var(--soft);font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;padding-top:9px;text-align:right}.recordings{background:var(--panel);max-width:none;padding-top:89px;padding-bottom:83px}.recordings-content{max-width:1000px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:37px}.section-heading>p{font-size:.875rem;color:var(--soft);padding-bottom:8px}.recording-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.recording{min-width:0}.cover{position:relative;background:#2c3030;aspect-ratio:16/9;overflow:hidden}.cover img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.recording:hover .cover img{transform:scale(1.025)}.cover-number{position:absolute;top:13px;left:16px;color:#f5f0e8;font-family:var(--serif);font-size:1.2rem;text-shadow:0 1px 8px #000}.recording-info{padding:21px 0}.recording-info h3{font-size:1.75rem;line-height:1.3;margin-top:7px}.recording-subtitle{font-size:.8125rem;color:var(--soft);margin-top:8px}audio{width:100%;margin-top:19px;height:44px;border-radius:0;color-scheme:dark}.competition-recording{border-top:1px solid var(--line);margin-top:22px;padding-top:30px;display:flex;align-items:center;justify-content:space-between;gap:25px}.competition-recording h3{font-size:1.4rem;margin:7px 0}.competition-recording>div>p:last-child{color:var(--soft);font-size:.875rem}.button-outline{background:transparent;color:var(--gold);white-space:nowrap}.button-outline:hover{color:var(--ink)}.supporters{padding:43px 6%;text-align:center;border-bottom:1px solid var(--line)}.supporters>p{text-transform:uppercase;letter-spacing:.13em;font-size:.75rem;color:var(--soft)}.supporters>div{display:flex;justify-content:center;align-items:center;gap:65px;margin-top:22px;flex-wrap:wrap}.supporters span{font-family:var(--serif);font-size:1.35rem;color:#d5d4ca}.supporters small{display:block;font-family:var(--sans);font-size:.75rem;color:var(--soft);letter-spacing:.06em;margin-top:2px}.contact{padding-top:101px;padding-bottom:104px}.contact-content h2{font-size:clamp(3.8rem,6.5vw,6.3rem);margin:26px 0 22px;line-height:1.03}.contact-content>p:not(.eyebrow){color:var(--soft)}.contact-email{font-family:var(--serif);font-size:clamp(1.3rem,3vw,2.15rem);display:inline-block;border-bottom:1px solid #c9aa7870;margin-top:25px;overflow-wrap:anywhere}.contact-email:hover{color:var(--gold)}.contact-bottom{display:flex;align-items:center;gap:22px;margin-top:31px;flex-wrap:wrap;color:var(--soft);font-size:.8125rem}.contact-bottom button{border:1px solid var(--line);padding:8px 12px;font-size:.875rem}.contact-bottom button:hover{border-color:var(--gold);color:var(--gold)}.copy-status{color:var(--gold)}footer{border-top:1px solid var(--line);margin:0 6%;padding:27px 0 33px;display:flex;align-items:center;justify-content:space-between;gap:24px;color:var(--soft);font-size:.75rem}footer .footer-name{font-family:var(--serif);font-size:1.35rem;color:var(--paper)}footer a:last-child{color:var(--gold)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:1600px){.hero-portrait{margin-right:-96px}.recordings{grid-template-columns:23% 77%;padding-left:max(6%,calc((100vw - 1408px)/2));padding-right:max(6%,calc((100vw - 1408px)/2))}}
@media(max-width:1050px){.hero{min-height:650px;grid-template-columns:1fr 1fr}.hero-copy{padding-top:68px}.hero-portrait img{object-position:48% center}.hero-actions{gap:20px}.hero-note{margin-top:40px}.section{grid-template-columns:19% 81%;padding-top:76px;padding-bottom:76px}.bio-columns{gap:30px}.section-label{display:block}.section-label p{margin-top:6px}.supporters>div{gap:38px}.hero-bottom span{max-width:65%}}
@media(max-width:700px){html{scroll-padding-top:20px}.header{padding:21px 6%;align-items:center}.wordmark{font-size:1.25rem}.wordmark span{font-size:.75rem}.menu-toggle{display:flex;gap:10px;align-items:center;font-size:.875rem;padding:9px 0 9px 12px}.menu-toggle span{font-size:1.4rem;line-height:1;color:var(--gold)}nav{display:flex;position:static;background:transparent;padding:0;border:0;gap:12px 22px;flex-wrap:wrap}nav.is-open{display:flex}.hero{padding:0 6%;display:flex;flex-direction:column;min-height:0}.hero-copy{padding:50px 0 37px}.hero .eyebrow{font-size:.75rem}h1{font-size:clamp(2.4rem,17vw,7rem);margin:25px 0 22px;line-height:1.01}.hero-role{font-size:1.5rem}.hero-intro{max-width:100%;margin-top:13px}.hero-actions{margin-top:26px;gap:23px}.hero-note{margin-top:33px}.hero-portrait{margin:0;aspect-ratio:1.05;max-height:500px;overflow:hidden}.hero-portrait img{max-height:none;height:100%;object-position:center 34%}.hero-portrait:after{background:linear-gradient(0deg,var(--ink),transparent 20%)}.hero-portrait figcaption{right:22px;bottom:23px}.hero-bottom{padding:20px 0 24px;gap:20px;font-size:.75rem;line-height:1.7}.hero-bottom>a{max-width:90px;text-align:right}.section{display:block;padding:55px 6%}.section-label{display:flex;gap:12px;padding:0;margin-bottom:24px}.section-label p{margin:0}.section-label span{line-height:1.2}h2{font-size:2.85rem}.bio-columns{display:block;margin-top:28px}.lead{font-size:1.4rem}.bio-detail{margin-top:24px}.more-bio>div{display:block}.more-bio>div p+p{margin-top:22px}.honours-content h2{font-size:2.5rem}.honours-list{margin-top:25px}.honours-list li{grid-template-columns:65px minmax(0,1fr);gap:12px;padding:22px 0;position:relative}.year{font-size:1rem}.honours-list h3{font-size:1.5rem}.honours-list p{font-size:.875rem}.instrument-label{grid-column:2;text-align:left;padding-top:0;font-size:.75rem}.section-heading{display:block;margin-bottom:28px}.section-heading>p{padding:0;margin-top:12px}.recording-grid{grid-template-columns:1fr;gap:22px}.recording-info h3{font-size:1.7rem}.competition-recording{display:block}.competition-recording .button{margin-top:24px}.supporters{padding:33px 6%}.supporters>div{gap:21px 34px}.supporters span{font-size:1.2rem}.contact-content h2{font-size:4.25rem}.contact-email{font-size:clamp(1.4rem,6vw,2rem)}.contact-bottom{gap:16px}.contact-bottom>span:first-child{flex-basis:100%}footer{flex-wrap:wrap;gap:18px;padding:25px 0}footer .footer-name{flex-basis:100%}footer p{flex:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Separate pages with navigation visible at every screen size. */
nav a[aria-current="page"]{color:var(--gold);border-bottom:1px solid var(--gold)}
.page-title{font-size:clamp(2.8rem,4.5vw,4.65rem);letter-spacing:-.035em;line-height:1.13;margin:0}
.page-title em{color:var(--gold)}.contact-content .page-title{font-size:clamp(3.8rem,6.5vw,6.3rem);margin:26px 0 22px;line-height:1.03}
.inner-page,.events-page{min-height:calc(100vh - 204px)}.recordings.inner-page{max-width:1600px;background:var(--ink)}
.events-content .page-title{margin-top:18px}.upcoming-events{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:40px 0;padding:30px 0}
.events-content h2{font-size:1.85rem;margin-bottom:14px}.upcoming-events p,.past-events p{color:var(--soft)}.upcoming-events .text-link{margin-top:18px}
.past-events article{display:grid;grid-template-columns:75px minmax(0,1fr);gap:25px;padding:28px 0;border-bottom:1px solid var(--line)}.past-events h3{font-size:1.65rem;line-height:1.35;margin-bottom:10px}.past-events .text-link{margin-top:12px}
@media(max-width:900px){nav{gap:20px}.header{gap:24px}}
@media(max-width:700px){.header{flex-direction:column;align-items:flex-start;gap:19px;padding-bottom:18px}nav{display:flex;width:100%;justify-content:flex-start;gap:8px 22px}nav a{font-size:.875rem;padding:6px 0}.page-title{font-size:2.85rem;line-height:1.13;margin:0}.contact-content .page-title{font-size:4.25rem}.inner-page,.events-page{min-height:calc(100vh - 294px)}.past-events article{gap:16px;grid-template-columns:55px minmax(0,1fr)}}

.home-audio{max-width:410px;margin-top:25px}.home-audio>p:first-child{font-size:.875rem;color:var(--soft)}.home-audio audio{margin-top:10px}.audio-status{font-size:.8125rem;color:var(--soft);min-height:1.4em;margin-top:3px}.hero:has(.home-audio) .hero-note{margin-top:28px}.hero:has(.home-audio) .hero-portrait img{max-height:none}
@media(max-width:700px){.home-audio{max-width:100%;margin-top:22px}.hero:has(.home-audio) .hero-note{margin-top:23px}}

.artist-photo-pair{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:36px 0}.artist-photo-pair figure{height:400px;overflow:hidden}.artist-photo-pair img{width:100%;height:100%;object-fit:cover}.artist-photo-pair figure:first-child img{object-position:50% 24%}.artist-photo-pair figure:last-child img{object-position:50% 62%}
.event-photo{margin:34px 0}.event-photo img{width:100%;height:auto}.upcoming-concert time{color:var(--gold);font-size:1rem;display:block;margin:20px 0 10px}.upcoming-concert h3{font-size:1.75rem}.upcoming-concert p{margin-top:7px}
.contact-photo{margin-top:40px;max-width:640px}.contact-photo img{width:100%;height:auto}
.competition-media{margin:28px 0 45px;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.competition-media h2{font-size:2rem;line-height:1.25;margin-bottom:28px}.video-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.video-card{min-width:0}.video-card iframe{width:100%;aspect-ratio:16/9;border:0;background:#000}.video-card h3{font-size:1.35rem;margin-top:11px}.video-card .video-actions{display:flex;gap:20px;align-items:center;margin-top:12px;font-size:.875rem}.video-card .video-actions button{border:1px solid var(--line);padding:6px 10px;font-size:.875rem}.recordings-empty{grid-column:1/-1;color:var(--soft);font-size:1rem}.recording-editor{border-top:1px solid var(--line);margin-top:25px}.recording-editor[hidden]{display:none}.recording-editor summary{font-size:1rem}.recording-editor[open] summary span{transform:rotate(45deg)}.recording-editor form{display:grid;gap:12px;max-width:580px;margin:8px 0 20px}.recording-editor label{font-size:.875rem;color:var(--paper)}.recording-editor input{font:inherit;min-width:0;width:100%;padding:12px 14px;color:var(--paper);background:var(--panel);border:1px solid var(--line);border-radius:0}.recording-editor input:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.form-hint{color:var(--soft);font-size:.875rem}.recording-editor .button{justify-self:start;margin-top:8px}.recording-form-status{font-size:.875rem}.media-photo{margin:32px 0 40px;height:380px;overflow:hidden}.media-photo img{width:100%;height:100%;object-fit:cover;object-position:50% 48%}.audio-recordings-heading{font-size:2rem;margin-bottom:28px}
@media(max-width:700px){.artist-photo-pair{gap:14px}.artist-photo-pair figure{height:290px}.contact-photo{margin-top:32px}.competition-media h2{font-size:1.65rem}.video-grid{grid-template-columns:1fr}.media-photo{height:310px}.upcoming-concert h3{font-size:1.5rem}}

.event-video{margin-top:22px}.event-video iframe{display:block;width:100%;aspect-ratio:16/9;border:0;background:#000}

.youtube-channel-link{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}.youtube-logo{flex-shrink:0;display:block}
