:root{--ink:#071525;--night:#061326;--blue:#6cbcff;--account-sheets:#f5f2eb;--ruby:#b82d42;--line:#cdd6df;--muted:#5d6b78;--white:#fff;--r:7px;color-scheme:light}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--account-sheets);color:var(--ink);font-family:Inter,"Noto Sans SC","Microsoft YaHei",sans-serif;line-height:1.75}a{color:inherit;text-decoration:none}.concert-header{height:72px;padding:0 max(5vw,24px);display:flex;align-items:center;justify-content:space-between;background:rgba(5,17,34,.9);color:#fff;position:absolute;top:0;left:0;right:0;z-index:10;border-bottom:1px solid rgba(255,255,255,.14)}.hall-brand{display:flex;align-items:center;gap:11px;font-weight:800}.hall-brand small{display:block;color:#91abc2;font-size:.64rem}.brand-note{width:30px;height:18px;border:2px solid #fff;border-radius:2px 9px 2px 9px;transform:skewY(-8deg);box-shadow:5px 4px 0 var(--ruby)}.concert-header nav{display:flex;gap:28px;font-size:.9rem}.concert-header nav a:hover{color:var(--blue)}.program-menu{display:none;background:none;border:0;padding:10px}.program-menu span{width:23px;height:2px;background:#fff;display:block;margin:5px}.arrival-hall{height:min(820px,92vh);min-height:630px;position:relative;overflow:hidden;display:flex;align-items:center;color:#fff}.arrival-hall>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.arrival-hall:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,13,28,.93) 0%,rgba(3,13,28,.7) 43%,rgba(3,13,28,.06) 72%)}.arrival-copy{position:relative;z-index:2;width:min(650px,86vw);margin:72px 0 0 max(7vw,28px)}.program-kicker{font-size:.72rem;font-weight:900;letter-spacing:.14em;color:var(--ruby);margin:0 0 12px}.arrival-hall .program-kicker{color:#8dccff}.arrival-hall h1{font-size:clamp(3.2rem,7vw,6.8rem);line-height:.96;margin:0 0 25px;letter-spacing:0}.arrival-hall h1 span{font-size:.46em;color:#c9e7ff}.arrival-copy>p:not(.program-kicker){max-width:600px;color:#c9d8e8;font-size:1.05rem}.admission-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.admission-actions a,.seasonal-notice>a{padding:13px 20px;border-radius:var(--r);background:#fff;color:var(--ink);font-weight:800}.admission-actions a+a{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.45)}.service-score{display:grid;grid-template-columns:auto 1fr;gap:42px;align-items:center;padding:24px max(7vw,28px);background:#fff;border-bottom:1px solid var(--line)}.service-score>p{font-weight:800}.service-score ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,1fr)}.service-score li{padding:4px 20px;border-left:1px solid var(--line)}.service-score b,.service-score span{display:block}.service-score span{font-size:.78rem;color:var(--muted)}.account-recital{padding:100px max(7vw,28px);display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw}.account-recital h2,.seasonal-notice h2,.program-notes h2,.house-questions h2,.program-heading h1{font-size:clamp(2rem,4vw,4rem);line-height:1.1;margin:0}.account-recital header>p:last-child,.program-heading p{color:var(--muted)}.account-sheets{background:#fff;border-top:5px solid var(--ink);box-shadow:0 20px 50px rgba(30,43,55,.1)}.account-sheets article{padding:34px 40px;border-bottom:1px solid var(--line)}.account-sheets article:last-child{border:0}.account-sheets span,.device-movement>span{font-size:.72rem;font-weight:900;color:var(--ruby)}.account-sheets h3{font-size:1.45rem;margin:8px 0}.account-sheets p{color:var(--muted)}.account-sheets a,.encore-links a,.essay-score aside a{color:#1f659b;font-weight:800;margin-right:20px}.seasonal-notice{padding:64px max(7vw,28px);background:var(--ruby);color:#fff;display:grid;grid-template-columns:1fr 1fr auto;gap:50px;align-items:center}.seasonal-notice .program-kicker{color:#ffd0d7}.seasonal-notice p{margin:0}.program-notes,.house-questions{padding:92px max(7vw,28px)}.program-notes{background:#fff}.program-notes header,.house-questions header{margin-bottom:35px}.reading-program{border-top:2px solid var(--ink)}.program-entry{display:grid;grid-template-columns:110px 1fr 25px;gap:20px;padding:26px 0;border-bottom:1px solid var(--line);align-items:start}.program-entry time{font-size:.8rem;color:var(--muted)}.program-entry strong,.program-entry small{display:block}.program-entry strong{font-size:1.08rem}.program-entry small{color:var(--muted);margin-top:5px}.program-entry b{color:var(--ruby)}.house-questions{display:grid;grid-template-columns:.7fr 1.3fr;gap:8vw;background:#e9eef2}.house-questions details{padding:20px 0;border-bottom:1px solid #b8c4ce}.house-questions summary{font-weight:800;cursor:pointer}.house-questions details p{color:var(--muted)}.content-stage{width:min(1060px,88vw);margin:0 auto;padding:125px 0 100px}.wayfinding{display:flex;gap:10px;color:var(--muted);font-size:.84rem;margin-bottom:40px}.program-heading{padding:30px 0 50px;border-bottom:1px solid var(--line)}.device-movement{display:grid;grid-template-columns:110px .7fr 1.3fr;gap:25px;padding:44px 0;border-bottom:1px solid var(--line)}.device-movement h2{font-size:1.55rem;line-height:1.3;margin:0}.device-movement p{margin:0;color:var(--muted)}.encore-links{margin-top:55px;padding:26px 0;border-top:3px solid var(--ruby);border-bottom:1px solid var(--line)}.encore-links strong{display:block;margin-bottom:8px}.offer-score{padding:45px 0}.offer-score ol{padding:0;list-style:none;counter-reset:check}.offer-score li{counter-increment:check;display:grid;grid-template-columns:55px .7fr 1.3fr;gap:20px;padding:24px 0;border-bottom:1px solid var(--line)}.offer-score li:before{content:counter(check,decimal-leading-zero);font-weight:900;color:var(--ruby)}.offer-score p{margin:0;color:var(--muted)}.archive-program{margin-top:45px}.article>header{max-width:900px;padding:30px 0 50px;border-bottom:1px solid var(--line)}.article>header h1{font-size:clamp(2.2rem,5vw,4.8rem);line-height:1.08;margin:0 0 20px}.article>header>p:not(.program-kicker){font-size:1.08rem;color:var(--muted)}.article time{font-size:.82rem;color:var(--muted)}.essay-score,.prose{width:min(760px,100%);margin:55px auto}.essay-score section,.prose{margin-bottom:42px}.essay-score h2,.prose h2{font-size:1.55rem;line-height:1.3}.essay-score p,.prose p{color:#344656}.essay-score aside{margin-top:60px;padding:25px;border-left:4px solid var(--ruby);background:#fff}.essay-score aside strong{display:block}.dark-stage{min-height:75vh;padding:130px max(7vw,28px);background:var(--night);color:#fff}.dark-stage h1{font-size:clamp(2.6rem,6vw,5.5rem);line-height:1.05}.dark-stage p{color:#b9cadd}footer{background:var(--night);color:#fff;padding:50px max(7vw,28px);display:grid;grid-template-columns:1fr auto;gap:10px 35px}footer p,footer small{color:#93a7bb}footer div{display:flex;gap:20px}footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.14);padding-top:18px;margin-top:15px}@media(max-width:820px){.concert-header{height:64px;padding:0 20px}.program-menu{display:block}.concert-header nav{display:none;position:absolute;top:64px;left:0;right:0;background:#071525;padding:18px 20px;flex-direction:column;gap:12px}.concert-header nav.open{display:flex}.arrival-hall{height:720px;align-items:flex-start}.arrival-hall>img{object-position:67% center}.arrival-hall:after{background:linear-gradient(180deg,rgba(3,13,28,.94) 0%,rgba(3,13,28,.78) 58%,rgba(3,13,28,.08) 100%)}.arrival-copy{margin:0;padding:125px 24px 0;width:100%}.arrival-hall h1{font-size:3.2rem}.service-score,.account-recital,.seasonal-notice,.house-questions{grid-template-columns:1fr}.service-score{gap:12px}.service-score ul{grid-template-columns:1fr 1fr}.service-score li{padding:12px 10px;border-left:0;border-top:1px solid var(--line)}.account-recital,.program-notes,.house-questions{padding:65px 24px}.account-sheets article{padding:28px 24px}.seasonal-notice{padding:50px 24px;gap:22px}.program-entry{grid-template-columns:1fr 24px}.program-entry time{grid-column:1/-1}.content-stage{width:min(100% - 40px,760px);padding-top:95px}.device-movement,.offer-score li{grid-template-columns:1fr;gap:8px}.article>header h1{font-size:2.35rem}footer{grid-template-columns:1fr;padding:45px 24px}footer div{flex-wrap:wrap}footer small{grid-column:1}}