/* Music detail page inherits LavaLab cream, orange, quiet rules and existing typography. */
.music-page{background:#fffdfc}.music-page h2{font-size:clamp(28px,3vw,38px);line-height:1.5}.music-page h2 em,.music-page h1 em{font-style:normal;color:#b74713}.music-page .wrap{max-width:1200px}.music-page-hero{background:#fffaf4;padding:60px 0 76px}.music-page-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:64px;align-items:center}.music-page-copy{min-width:0}.music-back{display:inline-flex;min-height:44px;align-items:center;font-size:12px;color:var(--muted);margin-bottom:30px}.music-page-copy .eyebrow{color:#a84b20;font-size:12px}.music-page h1{font-family:'Songti SC','SimSun',serif;font-weight:400;font-size:clamp(36px,3.5vw,50px);line-height:1.5;margin-top:20px;letter-spacing:.01em}.music-page-lead{font-size:20px;line-height:1.8;margin-top:23px}.music-page-intro{font-size:14px;color:var(--muted);line-height:1.95;max-width:450px;margin-top:20px}.music-page-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:28px}.music-page-actions .button{font-size:13px}.music-page-actions .text-link{font-size:13px;min-height:44px}.music-page-figure{margin:0;position:relative;align-self:stretch;min-height:510px;overflow:hidden;border-radius:150px 150px 12px 12px;background:#30221b}.music-page-figure img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:65% center}.music-page-figure:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#21170fd9)}.music-page-figure figcaption{position:absolute;z-index:1;bottom:27px;left:25px;right:25px;color:#fff6eb;font-size:12px;line-height:1.8;text-align:center}
.music-record-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px;align-items:start}.music-record h2{margin-top:16px}.music-record-copy>p{font-size:15px;line-height:1.9;color:var(--muted);max-width:510px}.music-record dl{margin-top:28px}.music-record dl>div{display:grid;grid-template-columns:165px 1fr;gap:25px;padding:22px 0;border-top:1px solid var(--line);align-items:center}.music-record dt{font-size:13px;color:var(--muted)}.music-record dd{margin:0;font-size:14px;line-height:1.8}.music-record strong{font-size:28px;color:#b74713;font-weight:500;white-space:nowrap;margin-left:7px}
.music-plan{background:#fbf3eb;border-block:1px solid var(--line)}.music-plan-heading h2{margin-top:16px}.music-plan-heading>p:last-child{margin-top:19px;color:var(--muted);font-size:14px;line-height:1.9}.music-subjects{display:grid;grid-template-columns:1fr 1fr;gap:70px;margin-top:36px}.music-subjects article{border-top:1px solid #d7b69d;padding-top:23px}.music-subjects h3{font-size:25px}.music-subjects p{font-size:14px;line-height:1.95;color:var(--muted);margin-top:15px;max-width:450px}.music-subjects p.music-subject-note{font-size:12px;color:#9b4b25;margin-top:18px}.music-plan-note{font-size:12px;color:var(--muted);margin-top:35px;line-height:1.9}
.music-agreement{background:#2b1e17;color:#fff5e9}.music-agreement .eyebrow{color:#efb07b}.music-agreement h2{margin-top:18px}.music-agreement-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.music-agreement p:not(.eyebrow){color:#e3cbb6;font-size:14px;line-height:1.95;margin-bottom:17px}.music-agreement p.music-agreement-lead{font-size:18px;color:#fff5e9}.music-agreement .button{margin-top:8px;font-size:13px}
.music-questions-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.music-questions h2{font-size:27px}.music-questions details{border-top:1px solid var(--line)}.music-questions details:last-child{border-bottom:1px solid var(--line)}.music-questions summary{display:flex;align-items:center;justify-content:space-between;gap:18px;cursor:pointer;min-height:70px;list-style:none;font-size:15px;padding:18px 0}.music-questions summary::-webkit-details-marker{display:none}.music-questions summary>span{font-size:24px;font-weight:300;color:#9b4b25}.music-questions details[open] summary>span{transform:rotate(45deg)}.music-questions details p{font-size:14px;color:var(--muted);line-height:1.95;padding:0 0 23px}.music-invitation{padding:38px 0;background:#fff0e3}.music-invitation>.wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.music-invitation h2{font-size:24px}.music-invitation p{font-size:13px;color:var(--muted);line-height:1.9;margin-top:8px}.music-invitation .button{flex-shrink:0}
@media(max-width:960px){.music-page-hero-grid{gap:28px;grid-template-columns:1.2fr 1fr}.music-page h1{font-size:38px}.music-page-figure{min-height:480px;border-radius:100px 100px 12px 12px}.music-record-grid,.music-agreement-grid,.music-questions-grid{gap:35px}.music-record dl>div{grid-template-columns:1fr;gap:4px}.music-subjects{gap:35px}}
@media(max-width:680px){.music-page-hero{padding:22px 0 36px}.music-page-hero-grid{grid-template-columns:1fr;gap:30px}.music-back{margin-bottom:18px}.music-page h1{font-size:clamp(30px,7.8vw,42px);margin-top:15px}.music-page-lead{font-size:18px;margin-top:18px}.music-page-intro{font-size:14px;margin-top:16px}.music-page-actions{gap:16px;margin-top:22px}.music-page-actions .button{padding-inline:20px;min-height:46px}.music-page-figure{min-height:240px;border-radius:100px 100px 12px 12px}.music-page-figure img{object-position:center 57%}.music-page-figure figcaption{bottom:18px;font-size:11px}.music-record-grid,.music-agreement-grid,.music-questions-grid{grid-template-columns:1fr;gap:25px}.music-record-copy>p{font-size:14px}.music-record dl{margin-top:20px}.music-record dl>div{padding:17px 0}.music-record strong{font-size:26px}.music-subjects{grid-template-columns:1fr;gap:28px;margin-top:28px}.music-subjects h3{font-size:22px}.music-plan-note{margin-top:27px}.music-agreement p.music-agreement-lead{font-size:16px}.music-questions summary{font-size:14px;min-height:64px}.music-invitation>.wrap{align-items:flex-start;flex-direction:column}.music-invitation h2{font-size:23px}.music-invitation .button{font-size:13px}}

/* Real venue photography: two music rooms first, followed by teaching and shared spaces. */
.music-venue{background:#fffdf9}.venue-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:45px;margin-bottom:36px}.venue-heading h2{margin-top:16px}.venue-heading>p{max-width:400px;color:var(--muted);font-size:14px;line-height:1.95}.venue-pianos{display:grid;grid-template-columns:1.55fr 1fr;gap:24px}.venue-photo{margin:0;min-width:0}.venue-open{display:block;position:relative;overflow:hidden;border-radius:12px;background:#f1e7dc}.venue-open img{display:block;width:100%;height:100%;object-fit:cover}.venue-pianos .venue-open{height:390px}.venue-pianos .venue-photo:nth-child(2) img{object-position:center 62%}.venue-zoom{position:absolute;right:12px;bottom:12px;display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:#fffaf4ed;color:#873d1b;font-size:20px}.venue-open:focus-visible{outline:3px solid #ad4613;outline-offset:5px}.venue-photo figcaption{padding:15px 0 0}.venue-photo h3{font-size:16px;font-weight:600}.venue-photo p{margin-top:5px;font-size:12px;color:var(--muted);line-height:1.8}.venue-classrooms{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:28px 24px;margin-top:36px}.venue-classrooms .venue-photo{grid-column:span 2}.venue-classrooms .venue-photo:nth-child(-n+2){grid-column:span 3}.venue-classrooms .venue-open{aspect-ratio:4/3}.venue-classrooms .venue-photo:nth-child(3) img{object-position:center 57%}.venue-visit{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:19px;margin-top:32px;line-height:1.8}.venue-visit .text-link{min-height:44px;font-size:13px}
.venue-dialog{width:min(1100px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:16px 20px;border:1px solid var(--line);border-radius:16px;background:#fffaf4;color:var(--ink);overflow:auto}.venue-dialog::backdrop{background:#21170fe6}.venue-dialog-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;font-size:15px}.venue-dialog-bar button{width:44px;height:44px;border:1px solid var(--line);border-radius:50%;background:transparent;cursor:pointer;font-size:28px;color:inherit}.venue-dialog>img{display:block;width:100%;height:min(68dvh,800px);object-fit:contain}.venue-dialog-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;font-size:13px}.venue-dialog-controls button{min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:22px;background:transparent;cursor:pointer;color:inherit}.venue-dialog button:focus-visible{outline:2px solid #ad4613;outline-offset:2px}
@media(max-width:960px){.venue-heading{align-items:flex-start;flex-direction:column;gap:20px}.venue-pianos .venue-open{height:310px}}
@media(max-width:680px){.venue-heading{margin-bottom:26px}.venue-heading>p{font-size:13px}.venue-pianos{grid-template-columns:1fr 1fr;gap:14px}.venue-pianos .venue-open{height:220px}.venue-photo h3{font-size:14px}.venue-photo p{font-size:11px}.venue-classrooms{grid-template-columns:1fr 1fr;gap:24px 14px;margin-top:28px}.venue-classrooms .venue-photo,.venue-classrooms .venue-photo:nth-child(-n+2){grid-column:auto}.venue-classrooms .venue-photo:last-child{grid-column:1/-1}.venue-classrooms .venue-photo:last-child .venue-open{aspect-ratio:2/1}.venue-photo figcaption{padding-top:11px}.venue-visit{margin-top:25px}.venue-dialog{padding:10px 12px;width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}.venue-dialog>img{height:62dvh}.venue-dialog-controls{font-size:12px}}
@media(max-width:380px){.venue-pianos .venue-open{height:190px}}

/* Music class comparison: scoped to the music detail page. */
.music-class-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:48px;align-items:stretch}
.music-class{min-width:0;background:#fffdf9;border:1px solid #ddc4af;border-radius:18px;overflow:hidden;display:flex;flex-direction:column}
.music-class-head{padding:27px 30px 24px;background:#f4e5d6;border-bottom:1px solid #ddc4af}.music-class-head h3{font-size:30px;margin:9px 0}.music-class-head>p:last-child{font-size:13px;color:#6c4a36}.music-class-capacity{font-size:12px;color:#86502f;font-weight:600}
.music-class-art .music-class-head{background:#30221b;color:#fff4e9}.music-class-art .music-class-head>p:last-child,.music-class-art .music-class-capacity{color:#f1c8a4}
.music-class-body{padding:27px 30px 24px;display:flex;flex-direction:column;flex:1}.music-class-position{font-size:14px;line-height:1.95;color:var(--muted)}.music-class-details{margin:22px 0 18px}.music-class-details>div{padding:18px 0;border-top:1px solid var(--line)}.music-class-details dt{font-size:14px;font-weight:600;margin-bottom:8px}.music-class-details dd{margin:0;font-size:14px;line-height:1.95;color:var(--muted)}.music-class .text-link{align-self:flex-start;margin-top:auto}
.music-class-services{display:grid;grid-template-columns:1fr 1fr;gap:50px;padding-top:30px;margin-top:36px;border-top:1px solid #d7b69d}.music-class-services h3{font-size:22px;line-height:1.5}.music-class-services p{font-size:13px;color:var(--muted);margin-top:12px;line-height:1.9}.music-class-services ul{margin:0;padding-left:20px;font-size:14px;line-height:2;color:var(--muted)}.music-class-services li+li{margin-top:7px}.music-class-services li::marker{color:#b74713}
@media(max-width:960px){.music-class-grid{gap:20px}.music-class-head,.music-class-body{padding:24px}.music-class-head h3{font-size:27px}.music-class-services{gap:30px}}
@media(max-width:680px){.music-class-grid{grid-template-columns:1fr;gap:24px;margin-top:32px}.music-class-head,.music-class-body{padding:22px}.music-class-head h3{font-size:26px}.music-class-details>div{padding:15px 0}.music-class-services{grid-template-columns:1fr;gap:19px;margin-top:28px;padding-top:24px}.music-class-services h3{font-size:21px}}

/* 2026 admissions results, distinct from cumulative teaching records. */
.music-results{background:#f5e8da;border-top:1px solid var(--line);border-bottom:1px solid var(--line);scroll-margin-top:90px}
.music-results-grid{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
.music-results h2{font-size:clamp(28px,3vw,38px);line-height:1.5;margin:12px 0 22px}.music-results h2 em{font-style:normal;color:#b74713}
.music-results-lead{line-height:1.9;max-width:480px}.music-results-scores{display:flex;gap:52px;margin:28px 0 20px}.music-results-scores p{margin:0}.music-results-scores span{display:block;color:#715f51;font-size:14px}.music-results-scores strong{display:block;font-size:52px;line-height:1.4;color:#b74713;font-weight:600;font-variant-numeric:tabular-nums}.music-results-scores small{font-size:15px;margin-left:7px;font-weight:400}
.music-results-schools{margin:0}.music-results-schools>div{display:flex;justify-content:space-between;align-items:center;padding:12px 0;border-bottom:1px solid #d9bfa9;gap:16px}.music-results-schools dd{margin:0;font-size:14px;color:#715f51}.music-results-schools strong{font-size:24px;color:#b74713;margin-right:4px}.music-results-note{font-size:12px;line-height:1.8;color:#715f51;margin:20px 0 0}
.music-results-poster{margin:0;min-width:0}.music-results-poster button{display:block;width:100%;padding:0;border:1px solid #d9bfa9;border-radius:12px;overflow:hidden;background:#fffaf4;cursor:zoom-in;color:#a63f0c;font:inherit;text-align:left}.music-results-poster img{display:block;width:100%;height:auto}.music-results-poster button>span{display:flex;justify-content:space-between;padding:15px 20px;font-size:14px;font-weight:600}.music-results-poster figcaption{font-size:12px;color:#715f51;margin-top:12px;text-align:center}
.music-results-dialog{width:min(1000px,calc(100vw - 24px));max-height:90dvh;padding:0;border:0;border-radius:12px;background:#fffaf4;color:#30221b;overflow:auto}.music-results-dialog::backdrop{background:rgba(26,18,14,.78)}.music-results-dialog-bar{display:flex;position:sticky;top:0;justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;background:#fffaf4;border-bottom:1px solid #d9bfa9}.music-results-dialog-bar p{font-size:14px;margin:0}.music-results-dialog-bar button{flex-shrink:0;width:44px;height:44px;border:1px solid #d9bfa9;border-radius:50%;background:transparent;font-size:28px;cursor:pointer}.music-results-dialog>img{display:block;width:100%;height:auto}
@media(max-width:960px){.music-results-grid{gap:32px}.music-results-scores{gap:30px}}
@media(max-width:680px){.music-results-grid{grid-template-columns:1fr;gap:28px}.music-results-scores strong{font-size:46px}.music-results-dialog-bar{padding:8px 12px}.music-results-dialog-bar p{font-size:12px}}

/* Historical source tables: local horizontal scrolling preserves all six columns. */
.music-history{background:#fffaf4;scroll-margin-top:90px}.music-history h2{font-size:clamp(28px,3vw,38px);line-height:1.5;margin:12px 0 20px}.music-history h2 em{font-style:normal;color:#b74713}.music-history-intro{color:#715f51;line-height:1.8;margin:0 0 30px}
.music-history-year{border:1px solid #dec8b6;border-radius:12px;margin:16px 0;overflow:hidden;background:#fff}.music-history-year>summary{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:22px 26px;background:#f5e8da;cursor:pointer;list-style:none;font-size:16px}.music-history-year>summary::-webkit-details-marker{display:none}.music-history-year>summary strong{font-size:24px;margin-right:16px;color:#a63f0c}.music-history-toggle{font-size:24px;transition:transform .15s}.music-history-year[open] .music-history-toggle{transform:rotate(45deg)}.music-history-year-body{padding:10px 24px 24px}.music-history-scroll{font-size:12px;color:#715f51;margin:14px 0}.music-history-scrollbox{max-width:100%;overflow-x:auto;border:1px solid #e6d5c7;border-radius:6px}.music-history table{width:100%;border-collapse:collapse;text-align:center;font-size:15px;font-variant-numeric:tabular-nums}.music-history-scrollbox table{min-width:760px}.music-history caption{text-align:left;padding:14px;color:#715f51;font-size:13px}.music-history th,.music-history td{padding:15px 12px;border-bottom:1px solid #e6d5c7;line-height:1.6}.music-history thead th{background:#fbf3eb;font-weight:600;color:#71513b}.music-history tbody th{text-align:left;font-weight:500;white-space:nowrap}.music-history tbody tr:last-child>*{border-bottom:0}.music-history tbody tr:nth-child(even){background:#fffcf8}.music-history-score{color:#b74713;font-weight:600}.music-history-controls{margin-top:26px;max-width:680px}.music-history-controls h3{font-size:18px;margin:0 0 6px}.music-history-controls table{border:1px solid #e6d5c7}.music-history-controls caption{padding-left:0}.music-history-note,.music-history-footnote{font-size:12px;color:#715f51;line-height:1.9;margin:20px 0 0}.music-history-note{max-width:960px}
@media(max-width:680px){.music-history-year>summary{padding:18px 16px;font-size:13px}.music-history-year>summary strong{font-size:21px;margin-right:8px}.music-history-year-body{padding:6px 12px 18px}.music-history table{font-size:13px}.music-history th,.music-history td{padding:13px 10px}.music-history-controls th,.music-history-controls td{padding:12px 6px}.music-history-scrollbox table{min-width:700px}}
@media(prefers-reduced-motion:reduce){.music-history-toggle{transition:none}}

.music-history-action{display:inline-flex;align-items:center;gap:10px;flex-shrink:0;margin-left:auto;color:#a63f0c;font-size:13px}.music-history-collapse{display:none}.music-history-year[open] .music-history-expand{display:none}.music-history-year[open] .music-history-collapse{display:inline}
@media(max-width:680px){.music-history-year>summary{flex-wrap:wrap;gap:8px 16px}.music-history-action{font-size:12px}}
