/* Books-page refinement; shared typography and resource styling live in styles.css. */
@font-face{font-family:'Noto Music';src:url('/assets/noto-music.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--mist:#b8d8da}
.books-hero{
  position:relative;overflow:hidden;isolation:isolate;display:grid;
  grid-template-columns:1.55fr 1fr;align-items:center;gap:60px;
  padding:66px var(--page-edge) 68px;background:var(--ink);color:var(--cream);
}
.books-hero-main,.books-hero-copy{position:relative;z-index:1;min-width:0}
.books-hero .eyebrow{color:var(--gold)}
.books-hero .eyebrow::before{content:'';display:block;width:58px;border-top:1px solid var(--gold);margin-bottom:19px}
.books-hero h1{color:var(--cream);font-size:clamp(74px,6.5vw,96px);line-height:.83;letter-spacing:-2.6px;margin:24px 0 0}
.books-hero .intro-copy{color:var(--cream);font-size:15px;line-height:1.85;max-width:390px}
.books-hero .hero-actions{margin-top:26px;gap:20px}
.books-hero .hero-cta{background:var(--cream);color:var(--ink);padding:13px 16px}
.books-hero .hero-cta:hover{background:var(--gold)}
.books-hero .hero-email{color:var(--cream);border-bottom-color:var(--gold)}
.books-hero a:focus-visible{outline-color:var(--gold)}
.hero-motif{position:absolute;inset:0;z-index:0;pointer-events:none;font-family:'Noto Music',serif;line-height:1;color:var(--gold);opacity:.2;mix-blend-mode:screen}
.hero-motif span{position:absolute;line-height:.8}
.hero-motif span:first-child{font-size:clamp(160px,19vw,300px);top:9%;left:19%;transform:rotate(-12deg)}
.hero-motif span:nth-child(2){font-size:130px;top:25%;left:48%;transform:rotate(14deg)}
.hero-motif span:nth-child(3){font-size:75px;bottom:12%;right:9%;transform:rotate(-18deg)}
.book-directory{background:var(--white);color:var(--ink);padding:52px 0 56px}
.directory-heading{align-items:center;margin-bottom:34px}
.book-directory .eyebrow{color:var(--wine);margin-bottom:15px}
.book-directory .eyebrow::before{content:'';display:block;width:54px;border-top:1px solid var(--wine);margin-bottom:20px}
.directory-heading h2{font-size:55px;line-height:.95;color:var(--ink);letter-spacing:-.9px}
.directory-heading>span{color:var(--muted);font-size:12px;max-width:300px;line-height:1.6}
.book-choices{border:0;gap:0;grid-template-columns:repeat(3,minmax(0,1fr))}
.book-choice{
  position:relative;display:flex;flex-direction:column;align-items:stretch;gap:0;
  min-height:355px;padding:25px 28px 23px;color:var(--ink);border:0!important;
  transition:box-shadow .18s ease,filter .18s ease;background:var(--cream);
}
.book-choice:hover,.book-choice[aria-current='location']{background:var(--choice-bg);box-shadow:inset 0 0 0 3px var(--choice-accent);filter:brightness(1.025)}
.choice-number{display:block!important;align-self:flex-start;color:inherit;opacity:.8;font-size:10px;margin:0 0 8px}
.choice-cover{height:221px;display:flex;align-items:center;justify-content:center;margin:0 0 21px}
.book-choice .choice-cover img{width:auto;max-width:77%;height:auto;max-height:221px;object-fit:contain;box-shadow:5px 7px 0 rgba(28,6,10,.12)}
.choice-title{flex:none;font:500 28px/1.03 var(--display);min-height:62px;overflow-wrap:anywhere;letter-spacing:-.3px}
.choice-action{display:flex;justify-content:space-between;align-items:center;gap:10px;border-top:1px solid currentColor;margin-top:19px;padding-top:13px;font-size:10px;font-weight:600;letter-spacing:.6px;text-transform:uppercase}
.choice-action svg{width:17px;height:17px}
.book-choice--book-1{--choice-bg:var(--wine);--choice-accent:var(--gold);background:var(--wine);color:var(--cream)}
.book-choice--book-2{--choice-bg:var(--rose);--choice-accent:var(--wine);background:var(--rose)}
.book-choice--timeless-voice{--choice-bg:var(--gold);--choice-accent:var(--wine);background:var(--gold)}
.book-choice--christmas-songs{--choice-bg:var(--parchment);--choice-accent:var(--wine);background:var(--parchment)}
.book-choice--exercises{--choice-bg:var(--ink);--choice-accent:var(--gold);background:var(--ink);color:var(--cream)}
.book-choice--clementi{--choice-bg:var(--mist);--choice-accent:var(--wine);background:var(--mist)}
.book-choice--book-1:focus-visible,.book-choice--exercises:focus-visible{outline-color:var(--gold)}
.book-directory .book-choice:not(.book-choice--book-1):not(.book-choice--exercises):focus-visible{outline-color:var(--wine)}
.book-section--book-1{background:var(--white)}
.book-section--book-1 .book-heading{background:var(--wine);color:var(--cream)}
.book-section--book-1 .book-heading h2,.book-section--book-1 .section-permalink{color:var(--cream)}
.book-section--book-1 .book-heading .eyebrow{color:var(--gold)}
.book-section--book-1 .book-heading a:focus-visible{outline-color:var(--gold)}
.book-section--book-2{background:var(--cream)}
.book-section--book-2 .book-heading{background:var(--rose)}
.book-section--book-2 .book-resource-panel{background:var(--cream)}
.book-section--timeless-voice .book-heading{background:var(--gold)}
.book-section--christmas-songs{background:var(--cream)}
.book-section--christmas-songs .book-heading{background:var(--parchment);color:var(--ink)}
.book-section--christmas-songs .book-heading h2,.book-section--christmas-songs .section-permalink{color:var(--ink)}
.book-section--christmas-songs .book-heading .eyebrow{color:var(--wine)}
.book-section--christmas-songs .book-heading a:focus-visible{outline-color:var(--wine)}
.book-section--christmas-songs .empty-state,.book-section--christmas-songs .resource-entry>p,.book-section--christmas-songs .resource-type{color:var(--muted)}
.book-section--christmas-songs .section-cover{box-shadow:5px 8px 0 rgba(28,6,10,.13)}
.book-section--exercises{background:var(--cream)}
.book-section--exercises .book-heading{background:var(--ink);color:var(--cream)}
.book-section--exercises .book-heading h2,.book-section--exercises .section-permalink{color:var(--cream)}
.book-section--exercises .book-heading .eyebrow{color:var(--gold)}
.book-section--exercises .book-heading a:focus-visible{outline-color:var(--gold)}
.book-section--clementi{background:var(--white)}
.book-section--clementi .book-heading{background:var(--mist)}
.book-section{background:var(--cream)}
.book-section .book-resource-panel{background:var(--cream)}
.section-cover{width:160px}
.contact{background:var(--cream)}
@media(max-width:1050px){
  .books-hero{gap:38px;padding-top:54px;padding-bottom:55px;grid-template-columns:1.35fr 1fr}
  .books-hero h1{font-size:76px}.book-choice{padding:22px 24px}.choice-title{font-size:27px}
  .choice-cover{height:202px}.book-choice .choice-cover img{max-height:202px}
}
@media(max-width:760px){
  .books-hero{display:block;padding:37px 24px 39px}.books-hero h1{font-size:68px;line-height:.86;letter-spacing:-1.9px}
  .books-hero-copy{margin-top:28px}.books-hero .intro-copy{font-size:14px;line-height:1.8}.books-hero .hero-actions{margin-top:23px}
  .hero-motif span:first-child{font-size:190px;left:31%;top:8%}.hero-motif span:nth-child(2),.hero-motif span:nth-child(3){display:none}
  .book-directory{padding:33px 0 35px}.directory-heading{margin-bottom:26px}.directory-heading h2{font-size:43px}.book-directory .eyebrow{margin-bottom:14px}
  .book-choices{grid-template-columns:repeat(2,minmax(0,1fr))}.book-choice{min-height:300px;padding:17px 17px 18px}
  .choice-number{font-size:9px;margin-bottom:7px}.choice-cover{height:158px;margin-bottom:15px}.book-choice .choice-cover img{max-width:85%;max-height:158px}
  .choice-title{font-size:23px;min-height:69px;line-height:1.05}.choice-action{margin-top:15px;padding-top:11px;font-size:9px;letter-spacing:.2px}.choice-action svg{width:14px;height:14px}
  .section-cover{width:83px}
}
@media(max-width:420px){
  .books-hero{padding:31px 20px 33px}.books-hero h1{font-size:61px}.books-hero-copy{margin-top:24px}.books-hero .hero-cta{padding:12px 14px;font-size:10px}
  .directory-heading h2{font-size:39px}.book-choice{padding:15px 13px 17px;min-height:282px}
  .choice-cover{height:143px}.book-choice .choice-cover img{max-height:143px}
  .choice-title{font-size:21px;min-height:67px}.choice-action{font-size:8px;gap:6px}
  .section-cover{width:65px}
}
@media(prefers-reduced-motion:reduce){.book-choice{transition:none}}
@media print{
  .books-hero,.book-directory,.book-choice{background:white!important;color:black!important}.hero-motif,.hero-actions{display:none}.books-hero{display:block;padding:0 0 20px}.books-hero h1{font-size:44px;color:black}.books-hero .intro-copy,.books-hero .eyebrow{color:black}.book-choices{grid-template-columns:repeat(3,minmax(0,1fr))}.choice-cover{height:100px}.book-choice .choice-cover img{max-height:100px}.book-choice{min-height:0;padding:10px}.choice-title{font-size:19px;min-height:0}.choice-action{margin-top:8px}.book-heading{background:white!important}.book-heading h2,.book-heading .eyebrow,.section-permalink{color:black!important}
}

.choice-title{margin-bottom:19px}.choice-action{margin-top:auto}

/* Empty categories are omitted; a single available category spans the resource area. */
.resource-groups>.resource-group:only-child{grid-column:1 / -1;max-width:430px}
