*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#171514;color:#f7f2eb;font:17px/1.75 Arial,sans-serif}a{color:inherit;text-underline-offset:5px}header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:18px 5%;max-width:1600px;margin:auto}.brand{flex-shrink:0;line-height:0}.brand img{width:88px;height:auto;filter:invert(1);mix-blend-mode:screen}nav{display:flex;justify-content:flex-end;gap:22px;flex-wrap:wrap}nav a{text-decoration:none;font-size:15px;line-height:1.5}nav a:hover,nav a[aria-current=page]{color:#e1c6a7}h1,h2{font-family:Georgia,serif;font-weight:400;line-height:1.15;margin:0 0 24px}h1{font-size:clamp(38px,5vw,65px)}h2{font-size:clamp(32px,4vw,48px)}p{margin:0 0 22px}.photo{margin:0;background:#171514}.photo img{display:block;width:100%;height:auto;max-height:820px;object-fit:contain}.photo.show img{clip-path:inset(0 0 3% 0);margin-bottom:-3%}.copy{padding:65px max(7%,calc((100% - 1120px)/2));background:#eee8df;color:#28231f}.copy.dark{background:#171514;color:#f7f2eb}.copy>p,.bio{max-width:800px}.intro{text-align:center;padding:44px 6% 52px;background:#eee8df;color:#28231f}.intro h1{margin-bottom:10px}.intro p{margin:0;letter-spacing:.12em;text-transform:uppercase;font-size:13px}.btn{display:inline-block;border:1px solid #937a5d;padding:11px 23px;text-decoration:none;font-size:15px;margin-top:7px}.btn:hover{background:#ddc6ab;color:#28231f}.video{width:100%;aspect-ratio:16/9;border:0;background:black;display:block}.schedule{width:100%;max-width:800px;border-collapse:collapse;margin:25px 0}.schedule th,.schedule td{text-align:left;padding:15px 10px;border-bottom:1px solid #c6b9aa}.schedule th{font-weight:400;font-size:13px;text-transform:uppercase;letter-spacing:.08em}.contact{max-width:760px;margin:auto;padding:65px 6% 100px}.contact p{color:#d0c6ba}label{display:block;margin:24px 0 7px}input,textarea{width:100%;background:#f1ece5;border:1px solid #c6b9aa;padding:13px;font:inherit;color:#28231f}textarea{min-height:180px;resize:vertical}button{background:#e1c6a7;color:#28231f;cursor:pointer;font:inherit;border:0;padding:13px 23px;margin:24px 0 12px}.note{font-size:13px}.direct{margin-top:38px;padding-top:25px;border-top:1px solid #55483b;overflow-wrap:anywhere}footer{padding:30px 6%;border-top:1px solid #453a31;display:flex;justify-content:space-between;gap:20px;font-size:13px}footer a{margin-left:20px}@media(max-width:900px){header{gap:20px}nav{gap:13px 18px}nav a{font-size:14px}.brand img{width:70px}}@media(max-width:600px){header{align-items:center;flex-direction:column;padding:18px 5% 25px}nav{justify-content:center;gap:12px 19px}.copy{padding:42px 7%}.intro{padding:30px 7%}.photo img{max-height:none}.schedule{font-size:13px}.schedule th,.schedule td{padding:12px 4px}footer{flex-direction:column}footer a{margin:0 20px 0 0}}
.hero{position:relative;background:#171514}.hero>img{display:block;width:100%;height:auto;max-height:820px;object-fit:contain}.hero-name{position:absolute;left:7%;top:50%;transform:translateY(-50%);color:#fff;text-shadow:0 2px 14px #000}.hero-name h1{font-size:clamp(30px,4.5vw,68px);margin-bottom:12px}.hero-name p{font-size:clamp(15px,1.6vw,24px);margin:0}.back-top{position:fixed;bottom:24px;right:24px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#e1c6a7;color:#211b16;border:1px solid #7f6955;border-radius:50%;text-decoration:none;font-size:27px;box-shadow:0 3px 14px #0005;z-index:20}.back-top:focus-visible,nav a:focus-visible,.btn:focus-visible{outline:3px solid #b98f5b;outline-offset:4px}figure[id],section[id]{scroll-margin-top:20px}.direct .note{margin-top:18px}@media(max-width:600px){.hero-name{left:5%;top:auto;bottom:7%;transform:none}.hero-name h1{font-size:clamp(24px,6vw,36px)}.hero-name p{font-size:14px}.back-top{bottom:16px;right:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Keep all text aligned to the established left margin. */
.copy{padding-left:7%;padding-right:7%}.contact{max-width:none;margin:0;padding:65px 7% 100px}.contact>p,.contact form,.contact .direct{max-width:760px}.hero{overflow:hidden}.hero>img{width:112%;max-width:none;max-height:none;height:auto;object-fit:initial}.hero-name{left:7%;max-width:48%;z-index:1}.hero-name h1{font-size:clamp(30px,4.3vw,68px)}.hero-name p{font-size:clamp(15px,1.55vw,24px)}@media(max-width:600px){.contact{padding:42px 7% 80px}.hero-name{left:6%;max-width:72%;bottom:8%;top:auto;transform:none}.hero-name h1{font-size:clamp(22px,5.5vw,32px)}.hero-name p{font-size:13px}}

/* Readable, centered editorial typography and an uncropped opening portrait. */
body{font-size:20px;line-height:1.85}.copy{text-align:center;padding:76px 7%}.copy>p,.bio{max-width:900px;margin-left:auto;margin-right:auto}.copy h2{font-size:clamp(36px,4vw,55px);margin-bottom:30px}.schedule{margin-left:auto;margin-right:auto;font-size:19px}.contact{text-align:center}.contact>p,.contact form,.contact .direct{margin-left:auto;margin-right:auto}.contact form{text-align:left;max-width:700px}.contact h2{font-size:clamp(36px,4vw,55px)}.contact .direct{text-align:center}.hero>img{width:100%;max-width:100%;max-height:none;height:auto;object-fit:initial}.hero-name{left:6%;top:49%;bottom:auto;transform:translateY(-50%);max-width:51%;text-align:left;text-shadow:0 2px 9px #000b,0 6px 28px #0008}.hero-name h1{font-family:Georgia,'Times New Roman',serif;font-weight:700;font-size:clamp(36px,5.5vw,88px);line-height:1.06;letter-spacing:-.035em;margin:0 0 22px;color:#fff8ed}.hero-name p{font-family:Arial,sans-serif;font-size:clamp(18px,2vw,30px);font-weight:600;line-height:1.45;letter-spacing:.035em;color:#fff8ed}.btn{font-size:17px}.note{font-size:15px}@media(max-width:600px){body{font-size:18px;line-height:1.8}.copy{padding:50px 7%}.copy h2{font-size:34px}.schedule{font-size:14px}.hero-name{left:5%;max-width:60%;top:auto;bottom:9%;transform:none}.hero-name h1{font-size:clamp(25px,6.2vw,37px);margin-bottom:10px}.hero-name p{font-size:clamp(12px,3vw,18px);letter-spacing:0}.contact{padding:50px 7% 85px}}

/* Matching image bounds with typography inspired by the supplied reference. */
.hero,.photo{width:100%;max-width:1230px;margin:0 auto;position:relative;overflow:hidden}.hero>img,.photo img{display:block;width:100%;height:auto;max-height:820px;object-fit:contain;margin:0;clip-path:none}.photo.show{overflow:hidden}.photo.show img{clip-path:none;margin:0}.hero-name{left:5%;width:54%;max-width:54%;top:49%;bottom:auto;transform:translateY(-50%);text-align:center;color:#fff;text-shadow:0 2px 12px #000b}.hero-name h1{font-family:Georgia,'Times New Roman',serif;font-variant:small-caps;font-weight:400;font-size:clamp(32px,4.4vw,66px);line-height:1.15;letter-spacing:.015em;margin:0 0 65px;color:white}.hero-name .hero-tango{font-family:Georgia,'Times New Roman',serif;font-variant:small-caps;font-weight:400;font-size:clamp(26px,3.5vw,48px);line-height:1.2;letter-spacing:.025em;border-bottom:1px solid #ffffff80;padding-bottom:9px;margin:0 0 10px}.hero-name .hero-roles{font-family:Georgia,'Times New Roman',serif;font-variant:small-caps;font-weight:400;font-size:clamp(17px,2.1vw,28px);line-height:1.3;letter-spacing:.015em;margin:0}.hero-details{max-width:90%;margin:auto}@media(max-width:600px){.hero-name{left:4%;width:56%;max-width:56%;top:50%;bottom:auto;transform:translateY(-50%)}.hero-name h1{font-size:clamp(20px,5.2vw,31px);margin-bottom:24px}.hero-name .hero-tango{font-size:clamp(17px,4.3vw,26px);padding-bottom:5px;margin-bottom:5px}.hero-name .hero-roles{font-size:clamp(11px,2.9vw,17px)}.hero>img,.photo img{max-height:none}}

/* Compact hero signature placed on the piano, beneath the bright candles. */
.hero-name{top:54%;bottom:auto;transform:none}.hero-name h1{font-size:clamp(29px,3.7vw,49px);margin-bottom:20px;line-height:1.15}.hero-details{display:inline-flex;flex-direction:column;align-items:center;width:auto;max-width:100%;margin:0 auto}.hero-name .hero-tango{display:inline-block;font-size:clamp(26px,3.2vw,42px);border-bottom:1px solid #ffffff90;padding:0 0 8px;margin:0 0 9px;line-height:1.2}.hero-name .hero-roles{font-size:clamp(20px,2.6vw,33px);line-height:1.3;letter-spacing:.02em}@media(max-width:600px){.hero-name{top:54%;bottom:auto;transform:none}.hero-name h1{font-size:clamp(18px,4.8vw,29px);margin-bottom:9px}.hero-name .hero-tango{font-size:clamp(16px,4.2vw,25px);padding-bottom:4px;margin-bottom:4px}.hero-name .hero-roles{font-size:clamp(13px,3.4vw,20px)}}

/* Two-line signature: name, short rule, role. */
.hero-name{left:6%;width:52%;max-width:52%;top:54%;transform:none}.hero-name h1{font-size:clamp(34px,4.3vw,58px);font-weight:400;line-height:1.15;margin:0;letter-spacing:.01em}.hero-rule{height:1px;background:rgba(255,255,255,.8);width:72%;max-width:390px;margin:11px auto 10px}.hero-name .hero-roles{font-family:Georgia,'Times New Roman',serif;font-variant:normal;font-size:clamp(22px,2.7vw,36px);font-weight:400;line-height:1.3;letter-spacing:.01em;margin:0;color:white;text-shadow:0 2px 6px #000,0 3px 15px #0009}@media(max-width:600px){.hero-name{left:4%;width:57%;max-width:57%;top:54%}.hero-name h1{font-size:clamp(21px,5.4vw,33px)}.hero-rule{margin:6px auto;width:80%}.hero-name .hero-roles{font-size:clamp(14px,3.5vw,21px);line-height:1.25}}

/* Final signature rule and reference-style uppercase roles. */
.hero-rule{width:86%;max-width:510px;margin:11px auto 10px}.hero-name .hero-roles{font-size:clamp(19px,2.3vw,30px);letter-spacing:.035em;white-space:nowrap;text-transform:uppercase}@media(max-width:600px){.hero-rule{width:100%;margin:6px auto}.hero-name .hero-roles{font-size:clamp(10px,2.65vw,16px);letter-spacing:.015em}}

/* Keep the opening portrait at a comfortable scale on desktop. */
@media(min-width:601px){.hero{max-width:min(1230px,calc(76vh * 2048 / 1365));width:100%;margin-left:auto;margin-right:auto}.hero>img{width:100%;height:auto;max-height:76vh;object-fit:contain}.hero-name h1{font-size:clamp(28px,3.3vw,48px)}.hero-name .hero-roles{font-size:clamp(17px,2.05vw,27px)}}

/* A single viewport-aware rule for every photograph. */
header{max-width:1230px;justify-content:center;gap:36px;padding:12px 24px}header nav{justify-content:flex-start;gap:18px}.brand img{width:64px}nav a{font-size:15px}.hero,.photo{width:fit-content;max-width:min(100%,1230px);height:auto;margin:0 auto;overflow:hidden}.hero>img,.photo img,.photo.show img{display:block;width:auto;max-width:100%;height:auto;max-height:calc(100svh - 140px);object-fit:contain;margin:0;clip-path:none}.hero-name{width:52%;max-width:52%}@media(max-width:900px){header{gap:22px;padding:12px 5%}header nav{gap:10px 16px}.brand img{width:58px}nav a{font-size:14px}}@media(max-width:600px){header{flex-direction:row;gap:18px;align-items:center;padding:14px 5%}.brand img{width:50px}header nav{justify-content:flex-start;gap:8px 13px}header nav a{font-size:12px}.hero,.photo{width:100%;max-width:100%}.hero>img,.photo img,.photo.show img{width:100%;height:auto;max-height:calc(100svh - 120px);object-fit:contain}.hero-name{width:57%;max-width:57%}}

/* Equal full-width image stages, independent of the source aspect ratio. */
.hero,.photo{width:100%;max-width:none;height:100svh;margin:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#171514}.hero>img,.photo img,.photo.show img{width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;margin:0;clip-path:none}.hero-name{left:6%;width:52%;max-width:52%;top:54%;transform:none}@media(max-width:600px){.hero,.photo{width:100%;max-width:none;height:auto;display:block}.hero>img,.photo img,.photo.show img{width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain}.hero-name{left:4%;width:57%;max-width:57%;top:54%;transform:none}}

/* Airy navigation aligned to the left and right content edges. */
header{width:calc(100% - 8%);max-width:none;margin:0 auto;padding:28px 0 32px;justify-content:space-between;gap:48px;min-height:155px}header nav{flex:1;justify-content:space-between;align-items:center;gap:20px;flex-wrap:nowrap}.brand{display:block}.brand img{width:64px}header nav a{white-space:nowrap;font-size:15px}@media(min-width:1600px){header{width:calc(100% - 10%);gap:64px}header nav{gap:28px}}@media(max-width:1100px){header{gap:28px;width:90%;padding:24px 0 28px}header nav{justify-content:flex-end;flex-wrap:wrap;gap:15px 22px}header nav a{font-size:14px}}@media(max-width:600px){header{width:90%;gap:22px;min-height:0;padding:24px 0 30px}.brand img{width:52px}header nav{justify-content:flex-start;gap:12px 16px}header nav a{font-size:12px}}

/* Header-only change: compact navigation, separate adjacent symbol. */
header{width:calc(100% - 10%);max-width:calc(100svh * 2048 / 1365 - 64px);justify-content:center;gap:40px;padding:28px 0 32px;margin:0 auto}header nav{flex:0 1 auto;justify-content:flex-start;gap:23px;flex-wrap:nowrap}header nav a{font-size:15px}.brand{flex:0 0 auto}@media(max-width:1100px){header{width:90%;max-width:calc(100svh * 2048 / 1365 - 40px);gap:28px}header nav{gap:14px 18px;flex-wrap:wrap;justify-content:flex-start}header nav a{font-size:14px}}@media(max-width:600px){header{width:90%;max-width:none;gap:22px;padding:24px 0 30px}header nav{gap:12px 16px;flex:1}header nav a{font-size:12px}}

/* Move the two header groups apart without spreading the menu links. */
@media(min-width:1101px){header>.brand{transform:translateX(-52px)}header>nav{transform:translateX(52px)}}

.video-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;max-width:1230px;margin:0 auto}.video-gallery>.video{width:100%;min-width:0;aspect-ratio:16/9;height:auto}@media(max-width:700px){.video-gallery{grid-template-columns:1fr;gap:22px}}

.social-links{display:flex;align-items:center;justify-content:center;gap:26px;margin-top:24px}.social-links a{display:inline-flex;align-items:center;gap:7px;min-height:44px;font-size:14px;text-decoration:none;color:#d0c6ba}.social-links svg{width:21px;height:21px;flex:none}.social-links a:hover{color:#e1c6a7}.social-links a:focus-visible{outline:2px solid #e1c6a7;outline-offset:5px}

.copy-email{font-size:14px;background:transparent;color:inherit;margin:10px 0;border:1px solid #937a5d}.direct #copy-status{margin-bottom:0}
