/* Live print objects: cloth covers, paper edges, stitched spines, cast shadows. */
.book-shelf{display:flex;align-items:start;justify-content:center;isolation:isolate;gap:0;padding:68px 30px 25px;perspective:1600px}.book-item{position:relative;width:25%;min-width:0;margin-left:-2%;z-index:1;--fan-angle:-11deg;--book-ink:#eadfb8;--book-ground:#163e44;--book-art:#a9bfaa}.book-item:first-child{margin-left:0}.book-item:nth-child(2){--fan-angle:-3.8deg;z-index:2}.book-item:nth-child(3){--fan-angle:4deg;z-index:3}.book-item:nth-child(4){--fan-angle:11.8deg;z-index:4}.book-item:hover,.book-item:focus-within{z-index:10}.book-trigger{display:block;text-decoration:none;perspective:1300px;color:var(--s-ink)}.book-object{position:relative;width:100%;aspect-ratio:.72;transform:rotateZ(var(--fan-angle)) rotateY(-9deg) rotateX(6deg);transform-origin:50% 90%;transform-style:preserve-3d;margin-bottom:37px;box-shadow:1px 2px 2px #1b2e3324,6px 8px 8px #1b2e331f,15px 26px 25px -13px #25332a66,30px 43px 42px -28px #22382c55;transition:transform .5s cubic-bezier(.18,.7,.2,1),box-shadow .5s;will-change:transform}.book-object::before{content:'';position:absolute;inset:4px -8px -6px 7px;background:repeating-linear-gradient(to bottom,#f6f3e6 0px,#f6f3e6 1.2px,#c8c9b9 1.4px,#e7e4d6 2.1px);border:1px solid #b9beaf;border-radius:1px 4px 4px 0;transform:translateZ(-5px);box-shadow:2px 2px 2px #173b3f15}.book-object::after{content:'';position:absolute;left:0;top:2px;bottom:-4px;width:10px;background:linear-gradient(90deg,#0c252a,#34544c);transform:rotateY(-80deg);transform-origin:left;box-shadow:inset 1px 0 #fff2}.book-trigger:hover .book-object,.book-trigger:focus-visible .book-object{transform:translateY(-24px) rotateZ(0deg) rotateY(-5deg) rotateX(0deg);box-shadow:1px 2px 2px #1b2e3324,9px 14px 12px #1b2e3329,23px 43px 35px -17px #25332a55,32px 60px 56px -30px #22382c44}.book-cover{height:100%;width:100%;min-height:0;position:relative;z-index:1;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;background:var(--book-ground);color:var(--book-ink);padding:20px 20px 18px 29px;box-shadow:inset 2px 0 3px #0004,inset -1px 0 #fff3,inset 12px 0 14px -13px #0009;transform:translateZ(1px);border-radius:1px 3px 3px 1px;border:1px solid #ffffff15}.book-cover::before{content:'';position:absolute;inset:0;background-image:url('assets/brand/paper-grain.svg'),repeating-linear-gradient(90deg,#fff0 0px,#fff0 2px,#ffffff0a 2.3px,#0000000a 3px);opacity:.52;mix-blend-mode:soft-light;z-index:3;pointer-events:none}.book-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#00000030,transparent 3%,#ffffff06 4%,#00000015 5%,transparent 7%,transparent 90%,#ffffff09 100%);pointer-events:none;z-index:4}.cover-top{display:flex;justify-content:space-between;gap:6px;position:relative;z-index:2;font:7px/1.4 var(--s-sans);text-transform:uppercase;letter-spacing:.07em;border-bottom:1px solid currentColor;padding-bottom:11px;opacity:.8}.book-cover>small{position:relative;z-index:2;font:8px/1.6 var(--s-sans);letter-spacing:.11em;text-transform:uppercase;margin-top:18px;max-width:21ch;opacity:.8}.book-cover>strong{position:relative;z-index:2;font:400 clamp(26px,3vw,44px)/1.02 var(--s-sans);letter-spacing:-.05em;margin-top:17px;max-width:9ch;text-shadow:0 1px 1px #0000000d}.book-cover>strong em{font-family:AtelierSerif,Georgia,serif;font-weight:400;letter-spacing:-.05em}.book-cover .cover-bottom{margin-top:auto;position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:7px;font:7px/1.45 var(--s-sans);text-transform:uppercase;letter-spacing:.08em;border-top:1px solid currentColor;padding-top:10px;max-width:none}.cover-bottom b{font-size:15px;font-weight:400}.cover-art{position:absolute;inset:0;width:100%;height:100%;z-index:0;color:var(--book-art)}.cover-reporting{--book-ink:#efe5c9;--book-ground:#153b41;--book-art:#c4b27b}.cover-positioning{--book-ink:#24483f;--book-ground:#c9d0b7;--book-art:#55745d}.cover-positioning>strong{max-width:8ch}.cover-change{--book-ink:#173b44;--book-ground:#b8cbd1;--book-art:#7d9ca7}.cover-change .cover-art{opacity:.55;top:40px}.cover-hospice{--book-ink:#244c49;--book-ground:#e9d7b1;--book-art:#aa704b}.cover-hospice>strong{font-family:AtelierSerif,Georgia,serif;font-style:italic;font-size:clamp(30px,3.5vw,50px);margin-top:8px}.cover-hospice .cover-art{top:45px}.cover-bird{--book-ink:#f4e8c9;--book-ground:#163e33}.cover-bird .cover-illustration{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.85}.cover-bird::after{background:linear-gradient(180deg,#0b2b26d9,#0b2b2660 43%,transparent 65%,#0b2b26c9),linear-gradient(90deg,#0004,transparent 6%)}.cover-bird>.cover-top,.cover-bird>small,.cover-bird>strong,.cover-bird>.cover-bottom{z-index:5}.cover-bird>strong{font-size:clamp(27px,3vw,44px)}.cover-bird>small{font-size:7px}.cover-relay{--book-ink:#f3eddb;--book-ground:#263fbd;--book-art:#f6904c}.cover-relay>strong{font-size:clamp(28px,3.1vw,44px);text-transform:uppercase;letter-spacing:-.045em}.cover-relay>strong em{font-family:var(--s-sans);font-style:normal}.cover-relay .cover-art{top:42px}.cover-chesuncook{--book-ink:#2c4c3b;--book-ground:#e4dbc6}.cover-chesuncook>strong{font-family:AtelierSerif,Georgia,serif;font-size:clamp(24px,2.7vw,39px);font-style:italic;max-width:10ch}.cover-chesuncook .cover-illustration{position:absolute;left:10%;bottom:17%;width:82%;height:30%;object-fit:contain;mix-blend-mode:multiply}.cover-first90{--book-ink:#f3dec7;--book-ground:#865246;--book-art:#c4a585}.cover-first90>strong{font-size:clamp(29px,3.4vw,49px)}.cover-first90 .cover-art{opacity:.6;top:40px}.book-caption{display:block;margin:0 12px 0 10px;max-width:95%;font:400 14px/1.25 var(--s-sans);letter-spacing:-.02em}.book-caption small{display:block;font-size:9px;letter-spacing:0;line-height:1.6;color:#60705e;margin-top:7px}.book-detail-link{margin-left:10px;display:inline-flex;align-items:center;gap:10px;font:10px/1.5 var(--s-sans);min-height:44px;text-decoration:none}.book-detail-link:hover{text-decoration:underline}
/* Reader is a real, keyboard-accessible dialog; the book is live text. */
.book-reader{position:fixed;inset:0;margin:auto;padding:0;width:min(1170px,calc(100% - 40px));max-width:none;height:min(880px,calc(100dvh - 40px));max-height:calc(100dvh - 40px);border:1px solid #c8cdbf;border-radius:6px;background:#deded1;color:#173b3f;box-shadow:0 20px 70px #061e2666,0 70px 130px #061e2640;overflow:hidden;font:14px/1.6 var(--s-sans);--reader-accent:#456d62}.book-reader::backdrop{background:#112b31c9;backdrop-filter:blur(10px)}.book-reader[open]{display:flex;flex-direction:column}.book-reader-top{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:15px 25px;background:#f5f2e9;border-bottom:1px solid #c8cdbf;flex:none}.book-reader-top strong{font:400 17px/1.3 var(--s-sans);letter-spacing:-.025em}.book-reader-top small{display:block;font-size:9px;letter-spacing:.04em;color:#61725f;margin-top:3px}.book-reader button{min-height:44px;padding:10px 17px;border:1px solid #acb8a6;border-radius:30px;color:#173b3f;background:transparent;font:12px/1.3 var(--s-sans);cursor:pointer;transition:background .2s}.book-reader button:hover:not(:disabled){background:#d6dfcc}.book-reader button:disabled{opacity:.35;cursor:default}.book-reader button:focus-visible,.book-reader a:focus-visible{outline:2px solid #a58242;outline-offset:4px}.book-reader-stage{padding:35px 42px;flex:1;min-height:0;overflow:auto;display:flex;align-items:stretch;perspective:2200px;touch-action:pan-y;background:radial-gradient(ellipse at 50% 40%,#f0eee3,#d9dccd)}.book-spread{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:stretch;margin:auto;width:100%;min-height:520px;transform-style:preserve-3d;border-radius:3px;box-shadow:0 1px 0 #c0c5b6,0 3px 0 #ecebdd,0 5px 0 #b8bead,0 7px 0 #e9e6d6,2px 10px 8px #173b3f26,10px 22px 26px -10px #173b3f50,0 45px 50px -30px #173b3f66}.book-page{position:relative;min-width:0;background:#fcfaee;padding:34px 36px 44px;box-sizing:border-box;overflow-wrap:break-word;border-bottom:1px solid #d4d4bf;isolation:isolate}.book-page::after{position:absolute;inset:0;content:'';pointer-events:none;background:url('assets/brand/paper-grain.svg');opacity:.12;z-index:-1}.book-page:first-child{border-radius:3px 0 0 3px;background:linear-gradient(90deg,#f9f7eb 0%,#fcfaee 78%,#f5f1e1 94%,#d8d7c4 99%,#a7afa0 100%)}.book-page:nth-child(2){border-radius:0 3px 3px 0;background:linear-gradient(90deg,#b1b8a9,#e9e6d6 3%,#fcfaee 15%,#fcfaee 96%,#f3f0e2)}.book-page h2{font:400 clamp(28px,3.3vw,47px)/1.04 var(--s-sans);letter-spacing:-.055em;color:#173b3f;margin:22px 0!important;max-width:16ch}.book-page h3{font:400 20px/1.3 var(--s-sans);letter-spacing:-.025em;margin:23px 0 10px;color:#173b3f}.book-page p{font:14px/1.65 var(--s-sans);color:#52635a;margin:0 0 15px!important;max-width:none}.book-page .page-kicker{font-size:8px;letter-spacing:.13em;line-height:1.7;text-transform:uppercase;color:#59745f}.book-page .page-note{font-size:10px;line-height:1.6;color:#697764}.book-page .page-pull{font:italic 29px/1.18 AtelierSerif,Georgia,serif;color:#4f6d59;letter-spacing:-.03em}.book-page .page-number{position:absolute;bottom:17px;right:27px;font:9px var(--s-sans);color:#627b65}.book-page .page-divider{height:1px;background:#91a785;width:46px;margin:24px 0}.book-page img{display:block;width:100%;height:auto;max-height:230px;object-fit:contain;margin:18px 0;box-shadow:0 12px 18px -15px #173b3f55}.book-reader-bottom{flex:none;padding:12px 25px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#f5f2e9;border-top:1px solid #c5cbbd}.book-reader-bottom>a{font-size:11px;color:#173b3f;min-height:44px;display:flex;align-items:center;gap:10px}.book-reader-bottom nav{display:flex;align-items:center;gap:12px}.book-progress{min-width:80px;text-align:center;font-size:10px;color:#63745e}.book-reader-hint{font-size:9px;color:#708069;margin:0 16px 0 0}.book-flight{position:fixed;pointer-events:none;z-index:25;transform-origin:top left;box-shadow:15px 20px 35px #08262c55;overflow:hidden;border-radius:2px;transform-style:preserve-3d}.book-flight .book-cover{height:100%;min-height:0}.book-flight .book-cover>strong{font-size:clamp(28px,3vw,44px)}.book-reader.is-arriving .book-spread{opacity:0}.book-reader.is-arriving .book-reader-bottom{opacity:.45}.book-reader.is-arriving .book-reader-stage{overflow:hidden}.book-opening-cover,.book-flutter,.book-turn{position:absolute;left:50%;top:0;bottom:0;width:50%;z-index:15;transform-origin:left center;transform-style:preserve-3d;pointer-events:none}.book-opening-cover{animation:openCover .85s cubic-bezier(.19,.65,.25,1) forwards;box-shadow:12px 12px 25px #173b3f44;backface-visibility:hidden}.book-opening-cover>.book-cover{height:100%;min-height:0;padding:30px 30px 28px 35px}.book-opening-cover .book-cover>strong{font-size:clamp(36px,4.2vw,64px)}.book-opening-cover .cover-top{font-size:10px}.book-opening-cover .book-cover>small{font-size:10px}.book-opening-cover .cover-bottom{font-size:10px}.book-flutter{background:linear-gradient(90deg,#d8dccb,#fcfaee 13%,#fcfaee 88%,#dfe0d0);border:1px solid #d6dac9;box-shadow:5px 6px 12px #173b3f22;backface-visibility:hidden;animation:openLeaf .72s cubic-bezier(.2,.65,.3,1) forwards}.book-turn{animation:turnForward .72s cubic-bezier(.22,.65,.3,1) forwards;z-index:16}.book-turn.reverse{left:0;transform-origin:right center;animation-name:turnBackward}.turn-face{position:absolute;inset:0;backface-visibility:hidden;overflow:hidden;background:#fcfaee;box-shadow:0 0 22px #173b3f29}.turn-face>.book-page{height:100%;border:0;border-radius:0}.turn-back{transform:rotateY(180deg)}.turn-back .book-page{background:linear-gradient(90deg,#fcfaee 80%,#e8e6d6)}.book-turn.reverse .turn-back .book-page{background:linear-gradient(90deg,#e8e6d6,#fcfaee 18%)}
@keyframes openCover{0%{transform:rotateY(0)}100%{transform:rotateY(-174deg)}}@keyframes openLeaf{0%{transform:rotateY(0deg)}100%{transform:rotateY(-176deg)}}@keyframes turnForward{0%{transform:rotateY(0deg)}50%{transform:rotateY(-90deg) rotateX(1deg)}100%{transform:rotateY(-180deg)}}@keyframes turnBackward{0%{transform:rotateY(0deg)}50%{transform:rotateY(90deg) rotateX(1deg)}100%{transform:rotateY(180deg)}}
@media(max-width:1100px){.book-shelf{padding:58px 10px 20px}.book-cover{padding:17px 15px 16px 23px}.cover-top{font-size:6px}.book-cover>small{font-size:7px;margin-top:14px}.book-cover>strong{margin-top:14px}.book-cover .cover-bottom{font-size:6px}.book-caption{font-size:12px}.book-caption small{font-size:8px}.book-detail-link{font-size:9px}.book-reader-stage{padding:28px}.book-page{padding:30px 29px 42px}.book-reader-hint{display:none}}
@media(max-width:760px){.book-shelf{display:grid;grid-template-columns:1fr 1fr;gap:34px 12px;padding:44px 13px 24px}.book-item{width:100%;margin:0!important}.book-item:nth-child(odd){--fan-angle:-8deg}.book-item:nth-child(even){--fan-angle:8deg}.book-object{aspect-ratio:.69;margin-bottom:24px;transform:rotateZ(var(--fan-angle)) rotateY(-7deg) rotateX(3deg)}.book-cover{padding:15px 12px 14px 20px}.cover-top{font-size:5.5px;letter-spacing:.03em;padding-bottom:8px}.book-cover>small{font-size:6.5px;margin-top:13px;letter-spacing:.05em}.book-cover>strong{font-size:clamp(23px,4.65vw,36px);margin-top:13px;line-height:1.05}.cover-hospice>strong{font-size:clamp(25px,5.4vw,39px)}.cover-bird>strong{font-size:clamp(23px,4.5vw,35px)}.cover-relay>strong{font-size:clamp(23px,4.7vw,35px)}.cover-chesuncook>strong{font-size:clamp(21px,4.3vw,33px)}.cover-first90>strong{font-size:clamp(26px,5.3vw,40px)}.book-cover .cover-bottom{font-size:5.5px;letter-spacing:.04em;padding-top:8px;gap:4px}.cover-bottom b{font-size:12px}.book-caption{font-size:12px;margin-inline:2px}.book-caption small{font-size:8px}.book-detail-link{font-size:9px;margin-left:2px}.cover-hospice .cover-art,.cover-relay .cover-art,.cover-first90 .cover-art{top:30px}.book-reader{width:calc(100% - 14px);height:calc(100dvh - 14px);max-height:calc(100dvh - 14px);border-radius:4px}.book-reader-top{padding:12px 15px;gap:15px}.book-reader-top strong{font-size:15px}.book-reader-top small{font-size:8px}.book-reader button{padding:10px 13px;font-size:11px}.book-reader-stage{padding:20px 15px}.book-spread{grid-template-columns:1fr;min-height:480px;max-width:500px}.book-page{padding:29px 26px 42px;background:linear-gradient(90deg,#e9e6d6,#fcfaee 7%,#fcfaee 94%,#f0edde)!important}.book-page h2{font-size:34px}.book-page p{font-size:14px}.book-page img{max-height:220px}.book-page .page-pull{font-size:29px}.book-reader-bottom{padding:9px 12px;gap:5px;flex-wrap:wrap}.book-reader-bottom>a{font-size:10px;min-height:36px}.book-reader-bottom nav{gap:7px;margin-left:auto}.book-progress{min-width:53px;font-size:9px}.book-opening-cover,.book-flutter,.book-turn{left:0;width:100%}.book-opening-cover .book-cover>strong{font-size:45px}.book-opening-cover .cover-top{font-size:9px}.book-opening-cover .book-cover>small{font-size:9px}.book-opening-cover .cover-bottom{font-size:9px}.book-turn.reverse{left:0}.book-reader-stage{perspective:1700px}}
@media(max-width:400px){.book-shelf{gap:32px 9px;padding-inline:4px}.book-cover{padding-left:16px;padding-right:10px}.book-cover>strong{font-size:22px}.cover-hospice>strong{font-size:25px}.cover-relay>strong{font-size:22px}.cover-chesuncook>strong{font-size:20px}.cover-first90>strong{font-size:27px}.cover-bird>strong{font-size:22px}.book-cover>small{font-size:5.5px}.cover-top{font-size:5px}.book-reader-bottom>a{width:100%;justify-content:center;min-height:26px}.book-reader-bottom nav{width:100%;justify-content:space-between}.book-page h2{font-size:31px}}
@media(prefers-reduced-motion:reduce){.book-object{transform:none!important}.book-flight,.book-opening-cover,.book-flutter,.book-turn{display:none!important}.book-reader::backdrop{backdrop-filter:none}}
@media print{.book-shelf{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;padding:30px 0}.book-item{width:100%;margin:0!important}.book-object{transform:none;box-shadow:none}.book-reader{display:none!important}}

@media(max-width:760px){.book-item:nth-child(odd){--fan-angle:-6deg}.book-item:nth-child(even){--fan-angle:6deg}.book-object{width:94%;margin-inline:auto}}
