/* PianoMoDa approved type: Georgia titles, Pretendard Korean and English body. */
@font-face{font-family:"Pretendard Variable";src:url("PretendardVariable.woff2") format("woff2");font-weight:45 920;font-style:normal;font-display:swap}

:root{--bg:#000000;--panel:#121212;--panel2:#171717;--paper:#f7f5ef;--ink:#222222;--muted:#656565;--gold:#fff100;--blue:#575757;--line:#d1d1d1;--ice:#eeeeee;--cream:#e9e9e9}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:#f1f1f1;font-family:"Pretendard Variable",-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans KR",sans-serif;line-height:1.62}main{max-width:1060px;margin:auto;padding:18px 16px 72px}.hero{display:grid;grid-template-columns:minmax(250px,390px) 1fr;gap:34px;align-items:center;padding:8px 0 26px}.poster{width:100%;border-radius:18px;box-shadow:0 24px 70px #0009}.micro{font-size:12px;letter-spacing:.14em;font-weight:900;color:var(--gold)}h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(48px,7vw,80px);line-height:.94;margin:10px 0 13px}.credit{font-weight:700;color:#dbdbdb}.event{margin-top:17px;font-size:16px;color:#cfcfcf}.event strong{color:#fff}.event .title{font-size:19px;font-weight:850;color:#fff}
nav{position:sticky;top:0;z-index:5;display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:10px 0;background:#000000f2;backdrop-filter:blur(10px)}nav a{text-align:center;text-decoration:none;color:#f0f0f0;border:1px solid #444444;background:#141414;padding:10px 7px 9px;border-radius:13px;line-height:1.14}nav a strong{display:block;font-size:14px;font-weight:850}.nav-sub{display:block;margin-top:4px;font-size:9.5px;font-weight:400;letter-spacing:.04em;color:#b7b7b7}
.intro,.artist,.encore{background:linear-gradient(145deg,#171717,#101010);border:1px solid #383838;border-radius:20px;padding:24px;margin:16px 0}.intro-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:center}.intro h2,.artist h2,.encore h2{font-family:Georgia,serif;font-size:31px;margin:3px 0 5px}.intro-copy{font-size:15px;color:#dcdcdc}.timeline{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.timeline div{border-top:1px solid #454545;padding-top:9px}.timeline b{display:block;color:#fff}.timeline span{font-size:12px;color:#bbbbbb}.artist-grid{display:grid;grid-template-columns:190px 1fr;gap:22px;align-items:center}.artist-photo{display:block;width:100%;aspect-ratio:1.08/1;object-fit:cover;border-radius:16px;border:1px solid #424242;vertical-align:top}.facts{display:grid;gap:7px;color:#dddddd;font-size:13.5px;line-height:1.48}.facts span{display:block}.profile-link{display:inline-block;margin-top:8px;color:#fff100;font-size:11px;font-weight:800;text-decoration:none;border-bottom:1px solid #686868}
.work{background:var(--paper);color:var(--ink);border-radius:20px;padding:24px;margin:16px 0}.work .micro{color:#565656}.work h2{font-family:Georgia,serif;font-size:31px;line-height:1.15;margin:5px 0 7px}.meta{font-size:13.5px;color:var(--muted);font-weight:800}.formline{margin-top:8px;font-size:13px;font-weight:900;color:#505050}.listen{margin-top:5px;font-size:13px;font-weight:850;color:#585858}.cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:17px 0}.card{padding:15px 16px;border-radius:14px}.about{background:#eeece6}.context{background:#e8e6df}.card h3{font-size:12.5px;letter-spacing:.08em;margin:0 0 6px}.card p{font-size:14.5px;margin:0}.movements{display:grid;gap:8px;margin-top:12px}.movement{border:1px solid #d1d1d1;border-radius:12px;padding:11px 12px;background:#fafafa}.movement b{font-size:12px;letter-spacing:.04em;color:#505050}.movement span{display:block;margin-top:3px;font-size:13px;color:#494949;line-height:1.46}.media-pair{display:grid;grid-template-columns:minmax(0,7fr) minmax(210px,3fr);gap:15px;align-items:start;margin-top:19px}.media-panel{min-width:0}.vl{font-size:11.5px;font-weight:900;letter-spacing:.03em;margin:0 0 7px;color:#505050}.video{position:relative;padding-top:56.25%;background:#111;border-radius:14px;overflow:hidden}.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-fallback{margin-top:6px;font-size:10.5px}.video-fallback a,.score-link{color:#565656;font-weight:800;text-decoration:none;border-bottom:1px solid #9e9e9e}.score-preview{display:block;position:relative;width:100%;aspect-ratio:1/1.414;border:1px solid #c7c7c7;border-radius:14px;overflow:hidden;background:#fff;cursor:pointer}.score-preview img{width:100%;height:100%;display:block;object-fit:cover;object-position:top center;transition:transform .2s ease}.score-preview:hover img{transform:scale(1.015)}.score-overlay{position:absolute;left:8px;right:8px;bottom:8px;padding:7px 9px;border-radius:10px;background:#121212da;color:#fff;font-size:10px;font-weight:850;text-align:center;letter-spacing:.04em}.score-caption{padding:7px 2px 0;font-size:10.5px;line-height:1.42;color:#676767}.score-caption strong{display:block;color:#424242;font-size:11px}.private-note{margin-top:5px;padding-top:5px;border-top:1px solid #d8d8d8;color:#767676;font-size:9.5px}.encore-box{min-height:120px;border:1px dashed #5e5e5e;border-radius:15px;display:flex;align-items:center;justify-content:center;text-align:center;color:#bababa;background:#ffffff05}.program-book{margin:22px 0 0;text-align:center}.program-full{display:block;width:100%;border-radius:16px;border:1px solid #444444;background:#101010}.program-full img{width:100%;height:auto;display:block;border-radius:15px}.footer{text-align:center;color:#a8a8a8;font-size:11.5px;padding-top:25px}
.modal{position:fixed;inset:0;z-index:50;background:#000000ea;display:none;flex-direction:column}.modal.open{display:flex}.modal-bar{height:54px;display:flex;align-items:center;gap:10px;padding:8px 12px;background:#101010;border-bottom:1px solid #404040}.modal-title{font-size:13px;font-weight:800;color:#ececec;flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.modal-btn{border:1px solid #636363;border-radius:9px;background:#212121;color:#f1f1f1;padding:7px 10px;font-size:11px;font-weight:800;text-decoration:none;cursor:pointer}.modal iframe{flex:1;width:100%;border:0;background:#fff}.modal-fallback{display:none;padding:20px;color:#fff;text-align:center}
@media(max-width:760px){.hero,.intro-grid,.artist-grid,.cards{grid-template-columns:1fr}.poster{max-width:430px;margin:auto}.artist-photo{max-width:220px}.work{padding:18px}.media-pair{grid-template-columns:1fr}.score-preview{width:min(260px,78%)}nav{display:flex;overflow-x:auto}nav a{flex:0 0 170px}.timeline{grid-template-columns:1fr 1fr 1fr}.modal-bar{height:auto;flex-wrap:wrap}.modal-title{flex-basis:100%}}

.program-note{font-size:10.5px;color:#a8a8a8;margin-top:7px}.single-movement{margin-top:12px;border:1px solid #d1d1d1;border-radius:12px;padding:11px 12px;background:#fafafa}.single-movement b{font-size:12px;letter-spacing:.05em;color:#505050}.single-movement span{display:block;margin-top:3px;font-size:13px;color:#494949;line-height:1.46}

html{scroll-padding-top:100px}body{font-size:16px}a{color:inherit}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid #fff100;outline-offset:4px}.image-button{display:block;width:100%;border:0;padding:0;background:none;cursor:zoom-in;color:inherit;text-align:left}.image-button img{display:block;width:100%;height:auto;border-radius:16px}.hero h1{color:#fff100}.hero small{display:block;margin-top:20px;font-size:12px;letter-spacing:1px;color:#a8a8a8}.duo-note{font-size:16px;line-height:1.75}.score-only{display:grid;grid-template-columns:minmax(0,7fr) minmax(210px,3fr);gap:15px;align-items:start;margin-top:20px}.score-only .score-preview{max-width:none}.score-link{font-size:14px}.note-list{list-style:none;padding:0;margin:12px 0;display:grid;gap:8px;font-size:14.5px}.note-list li{padding-left:14px;position:relative}.note-list li:before{content:'·';position:absolute;left:0}.postlude-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:20px}.postlude-card{border:1px solid #404040;padding:16px;border-radius:14px;background:#181818}.postlude-card h3{margin:0 0 8px;font-size:12.5px;color:#fff100;letter-spacing:.04em}.postlude-card p{margin:0;font-size:14.5px;line-height:1.62;color:#d9d9d9}.postlude-card.wide{grid-column:1/-1}.photo-pair{display:grid;grid-template-columns:1.3fr 1fr;gap:16px;align-items:start;margin-top:22px}.photo-pair figure{margin:0}.photo-pair figcaption{font-size:12px;color:#b7b7b7;margin:8px 0}.original-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:start}.original-grid .facts{text-align:left}.source-links{font-size:12px;color:#707070;margin-top:18px;display:flex;flex-wrap:wrap;gap:15px}.source-links a{text-underline-offset:3px}.photo-pair .image-button img{height:auto;width:100%}.postlude-divider{margin:36px 0 18px;border-top:1px solid #5a5a5a;padding-top:30px}.postlude-divider h2{font-family:Georgia,serif;color:#fff100;font-size:31px;margin:5px 0}.postlude-divider .credit{font-size:14px}dialog{padding:0;border:1px solid #5e5e5e;background:#111;color:white;width:min(95vw,1200px);height:92vh;max-height:92vh}dialog::backdrop{background:#000d}.dialog-bar{display:flex;align-items:center;gap:12px;position:sticky;top:0;background:#151515;padding:12px;z-index:2;font-size:14px}.dialog-bar span{flex:1}.dialog-bar button,.dialog-bar a{padding:7px 12px;border:1px solid #777;background:#222;color:white;cursor:pointer;text-decoration:none;border-radius:7px;font-size:14px}#viewer-image{width:100%;height:auto;display:block}#score-frame{width:100%;height:calc(100% - 70px);border:0;background:white}.skip{position:absolute;top:-80px;padding:10px;background:#fff100;color:black;z-index:100}.skip:focus{top:0}nav{grid-template-columns:repeat(4,1fr)}.footer{font-size:12px}@media(max-width:760px){.score-only,.photo-pair,.original-grid,.postlude-grid{grid-template-columns:1fr}.score-only .score-preview{width:min(260px,80%)}.postlude-card.wide{grid-column:auto}nav{display:flex;overflow-x:auto}nav a{flex:0 0 170px;min-width:0}.dialog-bar{flex-wrap:wrap}.dialog-bar span{flex-basis:100%}.timeline{grid-template-columns:repeat(3,1fr)}.postlude-divider h2{font-size:31px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.postlude-gallery{margin-top:26px;padding-top:24px;border-top:1px solid #404040}
.memory-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:12px;align-items:start}
.memory-photos figure{margin:0;min-width:0}
.memory-photos figcaption{font-size:12px;color:#b7b7b7;margin-top:8px;line-height:1.5}
@media(max-width:600px){.memory-photos{grid-template-columns:1fr;gap:22px}}

button.score-preview{padding:0;text-align:left}#beethoven .score-preview img{object-fit:contain}

.duo-profiles{display:grid;grid-template-columns:1fr 1fr;gap:28px}.duo-profiles h2{margin-top:8px}.duo-profiles .facts{font-size:13.5px}@media(max-width:760px){.duo-profiles{grid-template-columns:1fr}}

.work a:focus-visible,.work button:focus-visible{outline-color:#444444}
