/* Home library: the story shelf and the music school invitation. */
.school-link{text-decoration:none;color:var(--muted);font-size:13px;min-height:48px;display:flex;align-items:center}
.shelf{margin:56px 0 0;scroll-margin-top:20px}
.shelf-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:22px}
.shelf-head h2{margin:0}
.shelf-head p{max-width:420px;color:var(--muted);font-size:14px;margin:0}
.shelf-books{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}
.book-card{display:flex;flex-direction:column;background:var(--sheet);border:1px solid #e5e1d5;border-radius:20px;overflow:hidden;text-decoration:none;color:var(--ink);box-shadow:0 10px 40px #384a350c;transition:transform .2s,box-shadow .2s}
.book-card:hover{transform:translateY(-3px);box-shadow:0 18px 50px #384a3518}
.book-card img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block}
.book-card-copy{padding:16px 18px 20px;display:flex;flex-direction:column;gap:4px}
.book-card small{font-size:11px;color:var(--rust);font-weight:600;letter-spacing:.03em;text-transform:uppercase}
.book-card strong{font:500 22px/1.15 var(--serif);letter-spacing:-.03em}
.book-card-copy>span{font-size:13px;color:var(--muted);line-height:1.5}
.school-invite{margin:56px 0 20px;display:grid;grid-template-columns:.8fr 1.2fr;gap:36px;align-items:center;background:#edf0e4;border:1px solid #dce2d1;border-radius:24px;padding:38px 42px}
.school-invite h2{margin-bottom:12px}
.school-invite p{color:var(--muted);font-size:15px;max-width:520px}
.school-invite-links{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
.school-invite-links a.primary{text-decoration:none;display:inline-flex;align-items:center;min-height:48px;padding:10px 20px;border-radius:12px;font-weight:600}
.school-invite-notes{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.school-invite-notes span{width:58px;height:58px;border-radius:50%;background:var(--c);color:#fffaf0;display:grid;place-items:center;font:500 22px var(--serif);box-shadow:0 6px 0 color-mix(in srgb,var(--c) 70%,#000 14%)}
.school-invite-notes span:nth-child(even){transform:translateY(16px)}
@media(max-width:820px){.school-invite{grid-template-columns:1fr;padding:30px}.shelf-head{flex-direction:column;align-items:flex-start;gap:8px}}
@media(max-width:600px){.school-invite-notes span{width:44px;height:44px;font-size:17px}.shelf{margin-top:36px}}
.school-invite-notes{flex-wrap:nowrap;gap:6px}.school-invite-notes span{width:clamp(34px,4.2vw,52px);height:clamp(34px,4.2vw,52px);font-size:clamp(14px,1.8vw,20px);flex-shrink:0}
@media(max-width:820px){.school-invite-notes span{width:44px;height:44px}}
@media(max-width:600px){.school-invite-notes{gap:4px}.school-invite-notes span{width:38px;height:38px;font-size:15px}}
