.lib-section{position:relative;display:grid;gap:clamp(3rem,8vh,5rem);min-height:100svh;padding:8rem max(var(--chrome-inline),calc((100% - 88rem) / 2)) 4rem;overflow:clip;isolation:isolate}.lib-head{display:grid;justify-items:center;text-align:center}.lib-head .dymo{margin-bottom:.8rem}.lib-head h1{margin:0;font-family:var(--desk-serif);font-size:clamp(3.4rem,7vw,7.2rem);font-weight:400;letter-spacing:-.035em;line-height:.88}.lib-line{display:inline-block;animation:lib-rise 1.1s cubic-bezier(.2,.8,.2,1) both}.lib-line-2{font-style:italic;animation-delay:.12s}@keyframes lib-rise{0%{opacity:0;translate:0 .6em}}.lib-lead{max-width:38rem;margin:1.4rem 0 0;color:var(--d-desk-soft);font-size:1.02rem;line-height:1.6;animation:lib-rise 1.1s cubic-bezier(.2,.8,.2,1) .25s both}.lib-tally{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin:1.3rem 0 0;padding:0;list-style:none;animation:lib-rise 1.1s cubic-bezier(.2,.8,.2,1) .4s both}.lib-tally li{padding:.35rem .8rem;border-radius:999px;background:color-mix(in srgb,var(--d-desk-ink) 7%,transparent);font-family:var(--mono);font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}.stacks{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:4rem clamp(1.6rem,3vw,3.2rem)}.desk[data-motion=on] .stack[data-in]:not(.is-in){opacity:1;transform:none}.stack-books{position:relative;container-type:inline-size;display:flex;flex-direction:column;align-items:center;margin:0;padding:0;list-style:none}.stack-books:after{content:"";position:absolute;right:4%;bottom:-.7rem;left:4%;z-index:-1;height:1.4rem;border-radius:50%;background:radial-gradient(closest-side,rgb(30 20 10/.35),transparent)}.spine{position:relative;width:calc(var(--len) * 100%);height:var(--t);transform:translateX(var(--x)) rotate(var(--r));transition:translate .45s cubic-bezier(.3,1.3,.5,1)}.desk[data-motion=on] .stack:not(.is-in) .spine{opacity:0}.desk[data-motion=on] .stack.is-in .spine{animation:spine-fall .95s calc(var(--n) * 85ms + var(--s) * .14s) both}@keyframes spine-fall{0%{opacity:0;transform:translate(var(--x),-75vh) rotate(calc(var(--r) + 14deg));animation-timing-function:cubic-bezier(.5,0,.9,.5)}12%{opacity:1}62%{transform:translate(var(--x)) rotate(var(--r));animation-timing-function:cubic-bezier(.2,.7,.4,1)}78%{transform:translate(var(--x),-.45rem) rotate(calc(var(--r) - .8deg));animation-timing-function:cubic-bezier(.5,0,.75,.4)}to{transform:translate(var(--x)) rotate(var(--r))}}.spine:hover{z-index:2;translate:-1.4rem -.15rem}.spine-body{display:flex;align-items:center;gap:.7rem;height:100%;padding:0 .8rem;border-radius:2px 5px 5px 2px;background:linear-gradient(180deg,rgb(255 255 255/.16),transparent 28%,transparent 70%,rgb(0 0 0/.14)),var(--c);color:var(--ink);white-space:nowrap;overflow:hidden;box-shadow:inset 0 0 0 1px rgb(0 0 0/.06),0 1px 0 rgb(0 0 0/.15),0 6px 10px -6px rgb(30 20 10/.5);transition:box-shadow .3s ease}.spine:hover .spine-body{box-shadow:inset 0 0 0 1px rgb(0 0 0/.06),0 14px 24px -10px rgb(30 20 10/.55)}.spine-title{display:-webkit-box;flex:1;min-width:0;overflow:hidden;font-family:var(--sans);font-size:clamp(.6rem,calc(var(--t) * .26),.82rem);font-weight:800;line-height:1.08;letter-spacing:.02em;text-align:center;text-transform:uppercase;text-wrap:balance;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.spine[data-face=serif] .spine-title{font-family:var(--desk-serif);font-size:clamp(.78rem,calc(var(--t) * .36),1.1rem);font-weight:400;letter-spacing:.05em}.spine[data-face=slab] .spine-title{font-weight:900;letter-spacing:.05em}.spine-author,.spine-pub,.spine-series{flex:none;font-family:var(--sans);font-size:.54rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.spine-author{display:-webkit-box;max-width:26%;overflow:hidden;color:var(--acc);line-height:1.15;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.spine-pub{opacity:.85;text-transform:lowercase;letter-spacing:.02em}.spine-series b{font-weight:900}.spine-series i{font-family:var(--desk-hand);font-size:.85rem;font-weight:500;letter-spacing:0;text-transform:none}.spine[data-series] .spine-pub{display:none}.spine[data-series] .spine-title{flex:none;font-size:.8rem;letter-spacing:.04em}.spine[data-series] .spine-body{justify-content:center;background:linear-gradient(180deg,rgb(255 255 255/.18),transparent 30%,transparent 70%,rgb(0 0 0/.14)),linear-gradient(100deg,var(--c) 0 82%,color-mix(in srgb,var(--c) 70%,#000) 82%)}@container (max-width: 22rem){.spine-pub,.spine-series i{display:none}.spine-body{gap:.55rem;padding:0 .65rem}.spine-author{max-width:30%}}.stack-label{display:grid;justify-items:center;gap:.2rem;margin:1.6rem 0 0;font-family:var(--desk-serif);font-size:clamp(1.3rem,1.7vw,1.6rem);font-weight:400;text-align:center}.stack-label small{color:var(--d-desk-soft);font-family:var(--mono);font-size:.62rem;letter-spacing:.18em;text-transform:uppercase}.desk[data-motion=on] .stack:not(.is-in) .stack-label{opacity:0}.desk[data-motion=on] .stack.is-in .stack-label{animation:lib-rise .8s calc(.9s + var(--s) * .14s) cubic-bezier(.2,.8,.2,1) both}.lib-hint{justify-self:end;margin:0;color:var(--d-desk-soft);font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase}@media (max-width:1180px){.stacks{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.lib-section{padding-top:7rem}.stacks{grid-template-columns:minmax(0,1fr);gap:3.5rem}.lib-hint{display:none}}