@font-face{font-family:"Pinyon Script";src:url("fonts/PinyonScript-Regular.ttf") format("truetype");font-style:normal;font-weight:400;font-display:swap}
:root{--cream:#f3efe5;--ink:#191916;--gold:#c2a16b;--muted:#b6b2a8;--line:rgba(194,161,107,.3)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--ink);color:var(--ink);font-family:Georgia,'Times New Roman',serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{width:100%;display:block}figure,p{margin:0}p{line-height:1.8}p+p{margin-top:20px}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:7px}::selection{background:#c2a16b;color:#191916}.gold{color:var(--gold)}.skip{position:fixed;top:-80px;left:20px;z-index:10;background:var(--cream);padding:15px}.skip:focus{top:15px}.header{position:fixed;z-index:5;top:0;width:100%;padding:22px 5%;display:flex;align-items:center;justify-content:space-between;color:var(--cream);transition:background .3s,padding .3s,border-color .3s;border-bottom:1px solid #ffffff24}.header.solid{background:#191916f7;padding-top:15px;padding-bottom:15px;box-shadow:0 2px 20px #0002}.wordmark{display:flex;align-items:center;font-size:36px;letter-spacing:-9px}.wordmark span{color:var(--gold)}.wordmark i{font-size:17px;font-style:normal;letter-spacing:.03em;margin-left:26px}.header nav{display:flex;align-items:center;gap:30px}.header nav a{font-size:13px;letter-spacing:.04em}.header nav a:hover{color:var(--gold)}.nav-contact{border:1px solid #c2a16b88;padding:12px 18px}.nav-contact span{margin-left:18px;color:var(--gold)}.menu-toggle{display:none}.hero{position:relative;min-height:780px;height:100svh;max-height:1100px;display:flex;align-items:center;color:var(--cream);isolation:isolate}.hero-image{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center;z-index:-3;filter:saturate(.65)}.hero:before{content:'';position:absolute;inset:0;z-index:-2;background:linear-gradient(90deg,rgba(15,17,15,.82),rgba(15,17,15,.38) 65%,rgba(15,17,15,.12)),linear-gradient(0deg,#191916a8,transparent 45%)}.hero-content{padding:140px 8% 100px;width:100%}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;font-family:Verdana,sans-serif;color:var(--gold);font-weight:400}.hero h1{font-weight:400;font-size:clamp(80px,11.5vw,180px);letter-spacing:-.065em;line-height:1.05;margin:26px 0 22px}.hero-roles{font-size:clamp(18px,2vw,28px);letter-spacing:.035em}.hero-roles span{color:var(--gold);margin:0 13px}.hero-note{font-size:21px;margin-top:36px;color:#e2ded4;line-height:1.5}.text-link{display:inline-flex;align-items:center;gap:40px;padding:12px 0;border-bottom:1px solid var(--gold);font-size:13px;letter-spacing:.04em;margin-top:34px}.text-link span{color:var(--gold);font-size:20px;transition:transform .2s}.text-link:hover span{transform:translate(3px,3px)}.hero-bottom{position:absolute;bottom:26px;left:5%;right:5%;display:flex;justify-content:space-between;border-top:1px solid #ffffff30;padding-top:20px;font-family:Verdana,sans-serif;font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:#d0cbc0}.section{padding:110px max(8%,calc((100vw - 1280px)/2));scroll-margin-top:0}.cream{background:var(--cream)}.dark{background:var(--ink);color:var(--cream)}.section-heading{margin-bottom:54px}h2{font-size:clamp(42px,5.3vw,76px);line-height:1.1;letter-spacing:-.045em;font-weight:400;margin:24px 0}h2 em{font-weight:400;color:#897147}.dark h2 em{color:var(--gold)}.section-intro{max-width:490px;color:#706b61;font-size:17px}.dark .section-intro{color:var(--muted)}.bio-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;font-size:16px;color:#625e55}.bio-grid .lead{font-size:28px;line-height:1.5;color:var(--ink)}.practice-list{margin-top:65px;border-top:1px solid #c6bdad;display:grid;grid-template-columns:1fr 1fr;column-gap:60px}.practice-list article{display:grid;grid-template-columns:25px 1fr;column-gap:20px;padding:28px 0;border-bottom:1px solid #d8d0c2}.practice-list article>span{font-size:11px;color:#897147;padding-top:7px}.practice-list h3{font-size:25px;font-weight:400;margin:0 0 10px}.practice-list p{grid-column:2;color:#6e685e;font-size:15px}.wide-photo img{height:540px;object-fit:cover}.wide-photo figcaption{font-size:12px;color:var(--muted);margin-top:14px;font-style:italic}.timeline{margin-top:60px}.timeline article{display:grid;grid-template-columns:170px 1fr;gap:30px;padding:33px 0;border-top:1px solid var(--line)}.year{color:var(--gold);font-size:18px}.timeline h3{margin:0 0 12px;font-size:27px;font-weight:400}.timeline article div{max-width:740px}.timeline p:not(.year){font-size:16px;color:var(--muted)}.repertoire{border-top:1px solid #c6bdad}.repertoire details{border-bottom:1px solid #c6bdad}.repertoire summary{list-style:none;display:flex;align-items:center;gap:28px;padding:27px 0;font-size:26px;cursor:pointer}.repertoire summary::-webkit-details-marker{display:none}.number{font-size:13px;color:#897147;width:28px}.plus{margin-left:auto;position:relative;width:14px;height:14px;flex-shrink:0}.plus:before,.plus:after{content:'';position:absolute;background:#897147;width:14px;height:1px;left:0;top:7px}.plus:after{transform:rotate(90deg)}details[open] .plus:after{transform:rotate(0)}.repertoire-content{padding:0 35px 32px 56px;display:grid;grid-template-columns:1fr 1fr;gap:22px 45px}.repertoire-content p{margin:0;font-size:15px;color:#706b61}.repertoire-content b{display:block;color:var(--ink);font-weight:400;font-size:18px}.works{display:grid;grid-template-columns:1fr 1fr;gap:0 65px}.works article{position:relative;padding:30px 0 35px;border-top:1px solid var(--line)}.works article>span{font-size:12px;color:var(--gold)}.works h3{font-size:35px;letter-spacing:-.025em;font-weight:400;margin:17px 0}.works h3 i{font-size:27px}.works p{color:var(--muted);font-size:16px;max-width:460px}.works small{display:block;margin-top:26px;color:var(--gold);font-family:Verdana,sans-serif;font-size:9px;text-transform:uppercase;letter-spacing:.14em}.featured-work h3{color:var(--gold)}.works-note{border-top:1px solid var(--line);padding-top:30px;color:var(--muted);font-size:15px}.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 65px}.editorial-grid article:last-child{grid-column:1 / -1;max-width:800px}.editorial-grid h3{font-size:28px;font-weight:400;margin:0 0 22px}.editorial-grid p{font-size:16px;color:#6e685e}.light-link{margin-top:18px}.education{margin-top:65px;border-top:1px solid #c6bdad;padding-top:35px;display:grid;grid-template-columns:1fr 1fr;gap:32px}.education .eyebrow{grid-column:1/-1}.education span{font-size:12px;color:#897147}.education h3{font-size:21px;font-weight:400;margin:10px 0}.education p{font-size:14px;color:#6e685e}.awards-grid{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.awards-grid img{height:620px;object-fit:cover}.award-list article{padding:0 0 28px;margin-bottom:28px;border-bottom:1px solid var(--line)}.award-list article>span{font-family:Verdana,sans-serif;font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:var(--gold)}.award-list h3{font-size:27px;font-weight:400;margin:16px 0}.award-list p{font-size:15px;color:var(--muted)}.contact{display:grid;grid-template-columns:1.4fr 1fr;gap:8%;align-items:center}.contact h2{font-size:clamp(40px,4vw,60px)}.contact-copy>p:not(.eyebrow){color:#6e685e;max-width:460px}.contact-email{font-size:clamp(19px,2vw,28px);border-bottom:1px solid #b8a17d;padding:20px 0 15px;display:flex;justify-content:space-between;gap:20px;margin-top:25px}.contact-email span{color:#897147}.contact-links{display:flex;flex-wrap:wrap;gap:16px 25px;margin-top:24px;font-size:14px}.contact-links a:hover{color:#897147;text-decoration:underline}.contact .location{font-size:12px;margin-top:32px}.contact-photo img{height:550px;object-fit:cover}footer{padding:42px 5%;color:var(--muted);display:flex;align-items:center;gap:35px;font-size:12px}footer .footer-name{font-size:25px;color:var(--cream)}footer p{font-style:italic}footer>span{margin-left:auto}footer>a:last-child{color:var(--gold)}.js .reveal{opacity:0;transform:translateY(22px);transition:opacity .75s ease,transform .75s ease}.js .reveal.visible{opacity:1;transform:none}@media(min-width:1600px){.hero-content{padding-left:max(8%,calc((100vw - 1280px)/2))}}@media(max-width:1000px){.header nav{gap:18px}.wordmark i{display:none}.section{padding:85px 6%}.hero-content{padding-left:6%}.bio-grid{gap:6%}.wide-photo img{height:440px}.awards-grid img{height:560px}.contact{gap:5%}.contact-photo img{height:470px}.contact-links{flex-direction:column;gap:14px}footer{gap:20px}footer p{display:none}}@media(max-width:700px){html{scroll-padding-top:70px}.header{padding:17px 6%;background:#19191638}.wordmark{font-size:31px}.wordmark i{display:block;font-size:15px}.menu-toggle{display:flex;gap:14px;align-items:center;background:none;color:var(--cream);border:1px solid #ffffff50;padding:9px 12px;font-size:12px;cursor:pointer}.header nav{position:absolute;top:100%;left:0;right:0;background:var(--ink);padding:20px 6% 28px;display:none;align-items:stretch;gap:0;border-bottom:1px solid var(--line)}.header nav.open{display:flex;flex-direction:column}.header nav a{padding:15px 0}.header nav .nav-contact{padding:15px;margin-top:10px;align-self:flex-start}.hero{height:90svh;min-height:680px;max-height:950px}.hero-image{object-position:62% center}.hero:before{background:linear-gradient(90deg,#131612b8,#1316123d),linear-gradient(0deg,#191916c4,transparent 80%)}.hero-content{padding:130px 6% 110px}.hero .eyebrow{font-size:9px}.hero h1{font-size:clamp(65px,14.5vw,105px);margin-top:30px}.hero-roles{font-size:17px;letter-spacing:0}.hero-roles span{margin:0 5px}.hero-note{font-size:20px}.hero-bottom{font-size:8px;line-height:1.7;gap:20px}.hero-bottom span{max-width:50%}.hero-bottom span:last-child{text-align:right}.section{padding:70px 6%}.section-heading{margin-bottom:35px}h2{font-size:43px;margin-top:20px}.eyebrow{font-size:9px}.bio-grid{grid-template-columns:1fr;gap:30px}.bio-grid .lead{font-size:25px}.practice-list{grid-template-columns:1fr;margin-top:40px}.practice-list article{padding:23px 0}.wide-photo img{height:330px}.timeline{margin-top:40px}.timeline article{grid-template-columns:1fr;gap:10px;padding:27px 0}.year{font-size:15px}.timeline h3{font-size:25px}.repertoire summary{font-size:21px;gap:10px;padding:24px 0}.number{width:22px;flex-shrink:0}.repertoire-content{grid-template-columns:1fr;padding:0 0 25px 32px;gap:19px}.works{grid-template-columns:1fr;gap:0}.works h3{font-size:32px}.editorial-grid{grid-template-columns:1fr;gap:35px}.editorial-grid article:last-child{grid-column:auto}.education{grid-template-columns:1fr}.awards-grid{grid-template-columns:1fr;gap:38px}.awards-grid img{height:440px}.contact{grid-template-columns:1fr;gap:40px}.contact h2{font-size:42px}.contact-photo{max-width:430px}.contact-photo img{height:430px}.contact-links{flex-direction:row}.contact-email{font-size:22px}footer{flex-wrap:wrap;justify-content:space-between;padding:32px 6%;gap:25px}footer>span{margin-left:0;font-size:10px}footer .footer-name{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}}
/* Keep small gold labels legible against the light background. */
.cream .eyebrow{color:#806536}.awards-grid img{object-position:40% center}@media(max-width:700px){.menu-toggle{min-height:44px;min-width:90px}.contact-links a{padding:8px 0}}

/* Preserve source detail by avoiding enlarged or stretched photographs. */
.hero{width:100%;max-width:1080px;margin-inline:auto;min-height:620px;height:66.6667vw;max-height:720px}
.hero-image{filter:none}
.hero h1{font-family:"Pinyon Script",Georgia,serif;letter-spacing:0;font-size:clamp(48px,11vw,120px);line-height:1.2}
.hero-content{padding:125px 6% 100px}
.hero-roles{font-size:clamp(16px,2.2vw,25px)}
.hero-roles span{margin-inline:7px}
.wide-photo{max-width:960px;margin-inline:auto}
.wide-photo img,.awards-grid img,.contact-photo img{height:auto;object-fit:contain}
.awards-grid figure,.contact-photo{margin:0;min-width:0}
.timeline .text-link{max-width:100%;line-height:1.7;gap:16px;color:var(--cream)}
@media(max-width:700px){.hero{min-height:620px;height:90svh;max-height:720px}.hero h1{font-size:clamp(48px,11vw,77px)}.hero-content{padding:125px 6% 110px}.hero-roles{max-width:360px;font-size:16px}.hero-roles span{margin-inline:3px}.contact-photo{max-width:430px}}

/* Show the complete original photographs without enlargement or cropping. */
.hero-image{object-fit:contain;object-position:center;max-width:1080px;max-height:720px;margin:auto}
.wide-photo img{width:100%;max-width:960px;height:auto;aspect-ratio:960 / 641}

/* Fade the concert photograph from a dark base to a lighter top. */
.hero:before{background:linear-gradient(to top,rgba(15,17,15,.92) 0%,rgba(15,17,15,.62) 40%,rgba(15,17,15,.3) 72%,rgba(15,17,15,.12) 100%)}

/* Keep the conducting photo reduced by 20%, with its caption underneath. */
.wide-photo{display:grid;grid-template-columns:80% minmax(0,1fr);gap:14px;align-items:start}
.wide-photo img{max-width:768px}
.wide-photo figcaption{grid-column:1;margin:0;min-width:0;line-height:1.8;overflow-wrap:break-word}

/* Keep photo credits below photographs and above the hero divider. */
.awards-grid figcaption{margin-top:14px;color:var(--muted);font-size:12px;font-style:italic;line-height:1.8}
.hero-bottom{display:grid;grid-template-columns:1fr 1fr;gap:12px 24px;border-top:0;padding-top:0}
.hero-bottom>span{grid-row:2;max-width:none}
.hero-bottom>span:nth-child(2){text-align:right}
#hero-photo-caption{grid-column:1 / -1;grid-row:1;border-bottom:1px solid #ffffff30;padding-bottom:14px;text-align:right;font-family:Georgia,'Times New Roman',serif;font-size:10px;line-height:1.6;letter-spacing:0;text-transform:none;color:var(--cream)}
@media(max-width:700px){.hero-bottom{gap:10px 12px}#hero-photo-caption{font-size:10px}.hero-content{padding-bottom:175px}.hero{min-height:700px}}

/* Reduce selected headings, the biography lead, and the awards list by 20%. */
#about h2,#experience h2,#repertoire h2,#compositions h2,#beyond h2{font-size:clamp(33.6px,4.24vw,60.8px)}
.bio-grid .lead{font-size:22.4px}
.award-list h3{font-size:21.6px;margin:12.8px 0}
.award-list p{font-size:12px}
.award-list article{padding-bottom:22.4px;margin-bottom:22.4px}
@media(max-width:700px){
  #about h2,#experience h2,#repertoire h2,#compositions h2,#beyond h2{font-size:34.4px}
  .bio-grid .lead{font-size:20px}
}

/* Press links follow the site's editorial typography and gold rules. */
.media h2{font-size:clamp(33.6px,4.24vw,60.8px)}
.media-list{list-style:none;margin:0;padding:0;border-top:1px solid #c6bdad}
.media-list li{border-bottom:1px solid #c6bdad}
.media-list a{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,3fr) 24px;gap:28px;align-items:baseline;padding:26px 0}
.media-source{font-size:12px;color:#806536;line-height:1.6}
.media-title{font-size:22px;line-height:1.5;overflow-wrap:break-word}
.media-arrow{color:#806536;font-size:22px}
.media-list a:hover .media-title{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.media+.contact{border-top:1px solid #c6bdad}
@media(max-width:700px){.media h2{font-size:34.4px}.media-list a{grid-template-columns:minmax(0,1fr) 24px;gap:10px 16px;padding:24px 0}.media-source{grid-column:1}.media-title{grid-column:1;font-size:20px}.media-arrow{grid-column:2;grid-row:2}}

/* Local vector icons keep social links clear and easy to tap. */
.contact-socials{display:flex;gap:12px;margin-top:24px}
.contact-socials a{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #b8a17d;border-radius:50%;color:var(--ink)}
.contact-socials a:hover{background:var(--ink);color:var(--cream)}
.contact-socials svg{display:block;width:22px;height:22px}

/* Keep language choices visible outside the collapsible navigation. */
.header{gap:18px}
.header nav{gap:clamp(12px,1.6vw,24px)}
.language-switch{display:flex;align-items:center;gap:9px;flex-shrink:0;font-family:Verdana,sans-serif;font-size:11px}
.language-switch a{display:inline-flex;align-items:center;min-height:44px}
.language-switch a[aria-current="page"]{color:var(--gold);text-decoration:underline;text-underline-offset:5px}
.language-switch a:hover{color:var(--gold)}
.language-switch>span{color:var(--muted)}
@media(min-width:701px) and (max-width:1200px){.wordmark i{display:none}}
@media(max-width:700px){.header{gap:12px}.wordmark{order:0;margin-right:auto}.language-switch{order:1}.menu-toggle{order:2}.header nav{gap:0}}
@media(max-width:450px){.wordmark i{display:none}}
