:root{--accent:#6b3a2f;--muted:#666;--bg:#f7f4ef}
*{box-sizing:border-box}
body{font-family:Georgia, 'Times New Roman', serif; margin:0; color:#222; background:var(--bg); line-height:1.6}
.container{max-width:980px;margin:0 auto;padding:1.2rem}
.site-header{background:#fff;padding:0.8rem 0;border-bottom:2px solid #e6d8c2;position:sticky;top:0;z-index:10}
.site-header h1{font-family:'Playfair Display', serif;margin:0;color:var(--accent);font-size:1.6rem}
.site-header .term{margin:0;font-style:italic;color:#5a4a3a}
.nav{margin-top:0.4rem}
.nav a{margin-right:1rem;text-decoration:none;color:#4a2415;font-weight:700}
.banner img{width:100%;height:auto;display:block;border-bottom:4px solid #a26a3d}
.next-section{margin-top:1rem}
.card{background:#fff9f3;padding:1rem;border-radius:8px;border:1px solid #e6d0b8}
.muted{color:var(--muted)}
.schedule h2{font-family:'Playfair Display', serif;color:#5a2e1d}
.recital-list{margin-top:1rem}
.recital{display:grid;grid-template-columns:160px 1fr;gap:1rem;padding:1rem;background:#fff;border:1px solid #efe5d8;border-radius:8px;margin-bottom:1rem}
.recital strong{color:#4a2415}
.read-more{background:none;border:0;color:var(--accent);font-weight:700;cursor:pointer;padding:0;margin-top:.5rem}
.bio-full{display:none;margin-top:.6rem;padding-left:.8rem;border-left:3px solid #e6d0b8}
#bottom-poster{max-width:720px;border:4px solid #a26a3d;border-radius:6px}
.btn{background:var(--accent);color:#fff;border:none;padding:.5rem .8rem;border-radius:6px;cursor:pointer}
footer{background:#fff;padding:1rem;margin-top:2rem;border-top:2px solid #e6d8c2;text-align:center;color:#5a4a3a}
.caption{color:#6b3a2f;margin-top:.4rem}
@media(max-width:700px){.recital{grid-template-columns:1fr}}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 80px; /* adjust if needed to fix anchor scroll offset */
}

