
.rep-hero{background:#182d43;color:#fff;padding:105px 0 90px}.rep-hero h1{font-family:serif;font-size:clamp(2.3rem,5vw,4.4rem);font-weight:500;letter-spacing:.1em;line-height:1.55;margin:16px 0}.rep-hero p:last-child{color:#e5e7eb;line-height:1.9}.rep-section{background:#faf9f6}.rep-lead{max-width:800px;line-height:2;color:#56606a;margin:20px 0 32px}.rep-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#e4ded2;border:1px solid #e4ded2;margin:24px 0 40px}.rep-stats>div{background:white;padding:25px 16px;text-align:center;display:grid;gap:5px}.rep-stats strong{font-size:clamp(1.5rem,3vw,2.3rem);color:#1d344c;font-weight:500}.rep-stats span{font-size:.77rem;color:#67717b}.rep-tools{display:grid;grid-template-columns:2fr 1fr 1fr;gap:14px;background:white;padding:22px;border:1px solid #e6e1d8}.rep-tools label{font-size:.78rem;letter-spacing:.04em;color:#58616c;display:grid;gap:9px}.rep-tools input,.rep-tools select{font:inherit;font-size:1rem;width:100%;border:1px solid #d6d9dc;background:#fff;color:#24384b;padding:12px;min-height:46px;border-radius:2px}.rep-tools input:focus,.rep-tools select:focus{outline:2px solid #b99a65;outline-offset:2px}.rep-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:28px 0 15px}.rep-toolbar p{color:#68737b;font-size:.85rem}.rep-toolbar button{border:1px solid #bd9e69;background:transparent;color:#755b30;cursor:pointer;padding:9px 13px;font-size:.8rem}.rep-year{color:#233b51;font-size:1.5rem;font-weight:500;margin:35px 0 12px;border-bottom:1px solid #d9d4c9;padding-bottom:12px}.rep-year small{color:#a88a57;font-size:.65rem;margin-left:10px;letter-spacing:.15em}.rep-event{background:#fff;border:1px solid #e7e2d8;margin-bottom:11px}.rep-event summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:15px;cursor:pointer;padding:22px 25px}.rep-event summary::-webkit-details-marker{display:none}.rep-event summary:focus-visible{outline:2px solid #bd9e69}.rep-event summary:after{content:'＋';color:#a88a57;font-size:1.3rem;flex-shrink:0}.rep-event[open] summary:after{content:'−'}.rep-event .rep-event-date{font-size:.75rem;color:#927749;letter-spacing:.07em}.rep-event h4{font-size:1.05rem;color:#243c54;font-weight:600;margin:5px 0}.rep-event .rep-event-count{font-size:.75rem;color:#818891}.rep-event-body{border-top:1px solid #ece8df;padding:10px 25px 23px}.rep-part{margin:20px 0 6px;color:#8a7147;font-size:.85rem;font-weight:600}.rep-song{display:grid;grid-template-columns:1fr auto;gap:6px 18px;padding:13px 0;border-bottom:1px solid #f0eee9}.rep-song-title{color:#263b4f;font-size:.96rem}.rep-song-meta{color:#77808a;font-size:.8rem;text-align:right}.rep-song-collection{grid-column:1/-1;color:#8b7c65;font-size:.79rem}.rep-empty,.rep-note{color:#77808a;line-height:1.8;font-size:.85rem}.rep-note{margin:28px 0}.rep-back a{color:#6d5734;text-decoration:underline;text-underline-offset:4px}@media(max-width:720px){.rep-hero{padding:75px 0 65px}.rep-tools{grid-template-columns:1fr;padding:15px}.rep-stats>div{padding:17px 8px}.rep-event summary{padding:17px}.rep-event-body{padding:8px 17px 18px}.rep-song{grid-template-columns:1fr}.rep-song-meta{text-align:left}.rep-toolbar{align-items:flex-start;flex-direction:column}}

/* Ver.6.6.2: concert-hall hero, replacing solid navy. The supplied artwork already includes its typography. */
.rep-hero{background:#292b2d url("repertoire-hero.png") center center / cover no-repeat;aspect-ratio: 2048 / 760;padding:0;display:flex;align-items:center;min-height:320px;border-bottom:3px solid #b99a65}
.rep-hero .wrap{opacity:0;pointer-events:none}
@media(max-width:720px){.rep-hero{aspect-ratio:auto;min-height:310px;background-position:34% center}.rep-hero .wrap{opacity:1;pointer-events:auto}.rep-hero{background-image:linear-gradient(90deg,rgba(18,34,49,.94),rgba(18,34,49,.83)),url("repertoire-hero.png");padding:55px 0}.rep-hero h1{font-size:clamp(2rem,8vw,3rem)}}
