:root{--bg:#242125;--pink:#35272f;--rose:#66505a;--accent:#e6bd93;--ink:#fff4e9;--muted:#d3c3c6;--panel:#302b30}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:5px}h1,h2,h3,h4,p{margin-top:0}p{margin-bottom:16px}h1{font:400 clamp(52px,6vw,84px)/1.04 Georgia,serif;margin-bottom:22px}h2{font:400 clamp(32px,3.5vw,46px)/1.15 Georgia,serif;margin-bottom:20px}h3{font:400 25px/1.3 Georgia,serif;margin-bottom:12px}h4{font:400 23px/1.3 Georgia,serif}.eyebrow{font-size:12px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--accent);margin-bottom:16px}.site-header{position:fixed;right:24px;top:20px;z-index:30}.site-menu summary{list-style:none;width:50px;height:50px;display:grid;place-items:center;cursor:pointer;background:#242125ee;border:1px solid #ad889866;border-radius:50%;box-shadow:0 5px 25px #0003}.site-menu summary::-webkit-details-marker{display:none}.menu-lines{display:grid;gap:5px;width:21px}.menu-lines span{display:block;height:2px;background:var(--ink);transition:transform .2s,opacity .2s}.site-menu[open] .menu-lines span:first-child{transform:translateY(7px) rotate(45deg)}.site-menu[open] .menu-lines span:nth-child(2){opacity:0}.site-menu[open] .menu-lines span:last-child{transform:translateY(-7px) rotate(-45deg)}.site-menu nav{position:absolute;right:0;top:62px;width:230px;display:grid;background:#30262e;border:1px solid var(--rose);padding:12px;box-shadow:0 15px 45px #0006}.site-menu nav a{padding:10px 16px;font-size:16px}.site-menu nav a:hover{background:#49363f;color:var(--accent)}
.hero,.chapter{padding-inline:max(6%,calc((100vw - 1180px)/2))}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:6%;padding-top:42px;padding-bottom:34px;background:#35272f}.intro h2{font:400 clamp(24px,2.5vw,34px)/1.3 Georgia,serif}.intro>p:not(.eyebrow){color:var(--muted)}.rule{height:1px;width:65px;background:var(--accent);margin-bottom:20px}.hero-photo{margin:0;width:100%;max-width:355px;justify-self:center}.hero-photo img{width:100%;height:auto;display:block}.hero-photo figcaption{font-size:12px;letter-spacing:1px;color:var(--muted);margin-top:9px}.chapter{padding-block:36px;border-top:1px solid #66505a77}.blush{background:var(--pink)}.chapter-heading{position:relative;padding-left:54px;margin-bottom:24px}.chapter-heading .eyebrow{margin-bottom:6px}.chapter-heading h2{margin:0}.chapter-number{position:absolute;left:0;top:0;font:italic 30px Georgia,serif;color:var(--accent)}.split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:6%}.split.reverse{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)}.section-photo{margin:0 auto;max-width:350px;width:100%;overflow:hidden}.section-photo img{display:block;width:100%;height:auto}.hero-photo img,.section-photo img{transition:transform .65s}.copy p{color:var(--muted)}.lead{font:26px/1.35 Georgia,serif;color:var(--ink)!important;margin-bottom:16px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px;align-items:flex-start}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 16px;border:1px solid #ae8a98;font-size:14px;line-height:1.5;background:transparent;text-align:center;transition:background .2s,transform .2s}.button:hover{background:#63434f}.button.dark{background:var(--accent);color:#2c2227;border-color:var(--accent)}.button.dark:hover{background:#f1cfae}.text-link{font-size:14px;color:var(--accent);border-bottom:1px solid #b99371;padding-bottom:3px;display:inline-block}.genres{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.genres span{border:1px solid #967480;padding:3px 10px;font-size:14px;transition:background .2s,transform .2s}.small-heading{font:600 14px Arial,sans-serif;letter-spacing:1px;text-transform:uppercase;margin:18px 0 9px;color:var(--accent)}.formats{display:grid;grid-template-columns:1fr 1fr;gap:12px}.formats>div{padding:12px 15px;border:1px solid var(--rose);background:#442f3b}.format-number{font:italic 18px Georgia,serif;color:var(--accent)}.formats h4{margin:4px 0;font-size:22px}.formats p{font-size:14px;margin:0}.photo-caption{font-size:14px;color:var(--muted);margin:10px 0 0;text-align:center}.video-section{margin-top:28px;padding-top:22px;border-top:1px solid var(--rose);scroll-margin-top:25px}.subheading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.subheading h3{margin:0}.video-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.performance-video{min-width:0}.performance-video iframe{width:100%;height:340px;border:0;display:block;background:#171517}.performance-video h4{font-size:22px;margin:12px 0 5px}.performance-video p{font-size:14px;color:var(--muted);margin:0 0 7px}.teaching-points article{border-top:1px solid var(--rose);padding-top:14px;margin-top:14px}.teaching-points h3{font-size:22px;margin-bottom:7px}.small-note{font-size:14px;line-height:1.55;color:var(--muted)}.music-intro{display:grid;grid-template-columns:1fr 300px;align-items:center;gap:5%;margin-bottom:24px}.music-intro p{color:var(--muted)}.recording-photo{max-width:260px}.recording-photo figcaption{padding:7px 10px;font-size:12px;color:var(--muted);background:#30262e}.track-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.track{min-width:0}.track-heading{display:flex;align-items:center;gap:10px;margin-bottom:8px}.track-heading h3{font-size:21px;margin:0}.track-heading a{margin-left:auto;flex:none}.number{font:italic 21px Georgia,serif;color:var(--accent)}.track iframe{display:block;border:0;border-radius:12px;background:#171517;width:100%}.track>.small-note{margin:7px 0 0}.subtle{font:16px Arial,sans-serif}.track-grid+.small-note,.score-grid+.small-note{margin:18px 0 0}#scores .music-intro{display:block}.score-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.score-card{background:var(--panel);border:1px solid var(--rose);padding:22px}.score-card h3{font-size:30px;margin-bottom:8px}.score-card .eyebrow{margin-bottom:10px}.score-card p{color:var(--muted);margin-bottom:12px}.score-card .button{margin-top:4px}.press-details{margin-top:18px;border-top:1px solid var(--rose);padding-top:14px}.press-details summary{cursor:pointer;color:var(--accent);font-size:16px}.press-grid{display:grid;gap:20px;margin-top:20px}.press-grid article{border-top:1px solid var(--rose);padding-top:16px}.press-grid h3{font-size:24px}.press-grid p{font-size:14px}.publication{color:var(--accent)!important}#contact{background:#3c2935}#contact .split{display:block}#contact .copy{max-width:none}.contact-links{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}.contact-card{display:flex;flex-direction:column;padding:24px;background:#e6bd93;color:#30212a;border:1px solid #e6bd93;transition:transform .2s,background .2s}.contact-card span{font-size:12px;text-transform:uppercase;letter-spacing:1px}.contact-card strong{font:400 clamp(22px,2.5vw,32px)/1.4 Georgia,serif;overflow-wrap:anywhere;margin:10px 0}.contact-card small{font-size:14px}.contact-card:hover{background:#f4d2b0;transform:translateY(-3px)}.social-links{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:24px}.social-links a{font-size:14px;color:#d7bdc9;border-bottom:1px solid #987784;padding-block:4px}.social-links a:hover{color:var(--accent)}.location{font-size:14px;letter-spacing:1px;margin:18px 0 0}footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:20px 6%;background:#211d22}footer p{font-size:14px;color:var(--muted);margin:0}.brand{display:block;flex:none;width:110px;line-height:0}.brand-mark{position:relative;display:block;width:110px;height:110px}.brand .logo{position:absolute;width:140px;height:140px;max-width:none;left:-15px;top:-12px;clip-path:ellipse(39.5% 40.6% at 50% 48.7%)}.reveal{opacity:0;transform:translateY(20px);transition:opacity .65s,transform .65s}.reveal.is-visible{opacity:1;transform:translateY(0)}@media(hover:hover){.hero-photo{overflow:hidden}.hero-photo:hover img,.section-photo:hover img{transform:scale(1.025)}.button:hover,.genres span:hover{transform:translateY(-2px)}.genres span:hover{background:#63434f}}
@media(max-width:780px){.hero{gap:5%;padding-top:85px}.hero-photo{max-width:300px}h1{font-size:50px}.split,.split.reverse{gap:5%;grid-template-columns:1fr 1fr}.section-photo{max-width:300px}.chapter-heading h2{font-size:36px}.video-grid{gap:14px}.performance-video iframe{height:260px}.performance-video h4{font-size:20px}.music-intro{grid-template-columns:1fr 220px}.recording-photo{max-width:220px}}
@media(max-width:600px){.site-header{right:16px;top:14px}.hero{grid-template-columns:1fr;padding-top:76px;padding-bottom:26px;gap:22px}.hero-photo{max-width:280px}.intro h2 br{display:none}.hero-photo figcaption{font-size:11px}.chapter{padding-block:28px}.chapter-heading{margin-bottom:20px;padding-left:44px}.chapter-heading h2{font-size:32px}.chapter-heading .eyebrow{font-size:10px;letter-spacing:1.4px}.chapter-number{font-size:26px}.split,.split.reverse{grid-template-columns:1fr;gap:22px}.section-photo{max-width:270px}.copy{max-width:none}.lead{font-size:25px}.video-grid{grid-template-columns:1fr;gap:22px}.performance-video iframe{height:260px}.subheading{align-items:flex-start;flex-direction:column;gap:8px}.track-grid,.score-grid{grid-template-columns:1fr;gap:18px}.music-intro{grid-template-columns:1fr 150px;gap:18px}.recording-photo{max-width:150px}.track-heading h3{font-size:21px}.contact-links{grid-template-columns:1fr;gap:12px}.contact-card{padding:20px}.contact-card strong{font-size:27px}.social-links{gap:10px 18px}footer{flex-wrap:wrap;justify-content:center;text-align:center}footer p{width:100%;order:3}.eyebrow{font-size:11px}}
@media(max-width:380px){.music-intro{grid-template-columns:1fr}.recording-photo{max-width:210px}.contact-card strong{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1!important;transform:none!important}*,*::before,*::after{transition:none!important;animation:none!important}.hero-photo:hover img,.section-photo:hover img{transform:none}}

/* Compact contact details. */
.contact-card{padding:16px 20px;background:#523b46;border-color:#9e7a87;color:var(--ink)}
.contact-card span{font-size:11px;letter-spacing:.8px;color:var(--muted)}
.contact-card strong{font:600 20px/1.4 Arial,Helvetica,sans-serif;margin:7px 0;color:#f0cfab}
.contact-card small{font-size:13px;color:var(--muted)}
.contact-card:hover{background:#614651}
@media(max-width:600px){.contact-card{padding:15px 18px}.contact-card strong{font-size:19px}}
