.has-flipbook .project-meta{margin-bottom:35px}
.book-section{margin:0 0 38px}
.book-section-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px}
.book-section-heading .eyebrow{margin:0 0 9px;font-size:12px;letter-spacing:.15em}
.book-section-heading h2{font-size:clamp(23px,2.1vw,29px);margin:0;letter-spacing:-.04em}
.book-section-heading>p{margin:0 0 3px;font:12px/1.6 Consolas,monospace;white-space:nowrap}
.book-section-heading>p span{padding:0 8px;color:#777}
.book-viewer{--book-ratio:1.458824;position:relative;isolation:isolate;border:1px solid #d9dbd4;border-radius:7px;background:#eceee8;overflow:hidden;color:#111}
.book-toolbar{position:relative;z-index:4;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:18px 22px;border-bottom:1px solid #dadcd5;background:#f5f6f1}
.book-edition{display:flex;align-items:center;gap:10px;min-width:0;font-size:12px;font-weight:650;line-height:1.45}
.book-edition small{display:block;margin-top:2px;font-size:12px;font-weight:450;letter-spacing:.035em;color:#444}
.book-edition-mark{height:24px;width:3px;background:var(--gold);flex:none}
.book-tools{display:flex;align-items:center;gap:4px;flex:none}
.book-tool{display:inline-flex;justify-content:center;align-items:center;width:40px;height:40px;padding:11px;background:transparent;border:1px solid transparent;border-radius:4px;color:#111;transition:background .18s,border-color .18s}
.book-tool svg{width:18px;height:18px}
.book-tool:hover,.book-tool[aria-expanded=true],.book-tool[aria-pressed=true]{background:#e3e6dc;border-color:#d2d6c8}
.book-tool:disabled{opacity:.35;cursor:default}
.book-stage{position:relative;padding:49px 40px 43px;overflow:hidden;background:radial-gradient(ellipse at 50% 100%,#dfe3d9 0,transparent 70%);touch-action:pan-y}
.book-stage:focus-visible{outline-offset:-5px}
.book-offset{position:relative;width:100%;max-width:min(100%,var(--book-max-width,1488px),calc((100dvh - 300px)*var(--book-spread-ratio,2.917647)));margin:0 auto;transition:transform .55s cubic-bezier(.22,.61,.36,1)}
.book-viewer.is-portrait .book-offset{max-width:min(100%,max(230px,calc((100dvh - 300px)*var(--book-ratio,1.458824))))}
.book-viewer.is-front:not(.is-turning):not(.is-portrait) .book-offset{transform:translateX(-25%)}
.book-viewer.is-back:not(.is-turning):not(.is-portrait) .book-offset{transform:translateX(25%)}
.book-document{position:relative;width:100%;filter:drop-shadow(0 14px 10px #18201121) drop-shadow(0 3px 2px #00000018)}
.book-document:not(.stf__parent){aspect-ratio:var(--book-spread-ratio,2.917647)}
.book-document:not(.stf__parent) .book-page{display:none}
.book-document:not(.stf__parent) .book-page:first-child{display:block;width:50%;margin-left:50%}
.book-page{background:#fff;overflow:hidden;user-select:none;-webkit-user-select:none}
.book-page img{display:block;width:100%;height:100%;max-width:none;object-fit:contain;pointer-events:none;user-select:none;-webkit-user-select:none}
.book-page::after{content:"";position:absolute;inset:0;pointer-events:none}
.book-page.--left:not(.--hard)::after{background:linear-gradient(to left,#00000014,transparent 6%)}
.book-page.--right:not(.--hard)::after{background:linear-gradient(to right,#00000014,transparent 6%)}
.book-page.--hard{background:#151515}
.book-navigation{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;padding:15px 22px 13px;border-top:1px solid #d9dcd3;background:#f5f6f1}
.book-nav-button{display:inline-flex;align-items:center;gap:8px;min-height:42px;width:fit-content;border:0;background:transparent;padding:6px 2px;font-size:12px;font-weight:600;color:#111}
.book-nav-button:last-child{justify-self:end}
.book-nav-button svg{height:18px;width:18px;transition:transform .2s}
.book-nav-button:hover:not(:disabled) svg{transform:translateX(-3px)}
.book-nav-button:last-child:hover:not(:disabled) svg{transform:translateX(3px)}
.book-nav-button:disabled{opacity:.28;cursor:default}
.book-position{text-align:center;min-width:112px;line-height:1.5}
.book-position>span{display:block;font-size:12px;font-weight:600}
.book-position small{font:12px/1.7 Consolas,monospace;letter-spacing:.07em}
.book-count-divider{padding:0 4px;color:#6a7063}
.book-hint{display:flex;justify-content:center;align-items:center;gap:14px;margin:0;padding:0 18px 16px;background:#f5f6f1;font-size:12px;line-height:1.7;color:#444}
.book-hint>span{font-size:12px;letter-spacing:.12em;color:#111}
.book-viewer .book-hint{width:100%;max-width:none}
.book-overview{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-x:contain;padding:16px 22px;border-top:1px solid #d9dcd3;background:#f5f6f1;scrollbar-width:thin;scrollbar-color:#b9bfb0 transparent}
.book-overview[hidden]{display:none}
.book-thumbnail{display:block;flex:0 0 76px;padding:3px 3px 0;border:1px solid transparent;border-radius:3px;background:transparent;min-height:72px}
.book-thumbnail img{width:100%;height:auto;aspect-ratio:1.458824;object-fit:contain;background:#fff}
.book-thumbnail>span{font:12px/2 Consolas,monospace;display:block;color:#111}
.book-thumbnail:hover{background:#e5e8df}
.book-thumbnail[aria-current=page]{border-color:#8b752b;background:#f1e8c9}
.book-originals{margin-top:19px;border-bottom:1px solid var(--line)}
.book-originals>summary{list-style:none;display:flex;align-items:center;justify-content:space-between;padding:13px 0;cursor:pointer;font-size:12px;font-weight:600}
.book-originals>summary::-webkit-details-marker{display:none}
.book-originals[open]>summary{margin-bottom:15px}
.book-originals .project-gallery{padding-bottom:24px}
.book-viewer:fullscreen,.book-viewer.is-expanded{width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;border:0;border-radius:0;overflow-y:auto;background:#eceee8}
.book-viewer.is-expanded{position:fixed;inset:0;z-index:99999}
body.book-expanded{overflow:hidden}
.book-viewer:fullscreen .book-toolbar,.book-viewer.is-expanded .book-toolbar{padding:15px 30px}
.book-viewer:fullscreen .book-stage,.book-viewer.is-expanded .book-stage{padding:35px 65px}
.book-viewer:fullscreen .book-offset,.book-viewer.is-expanded .book-offset{max-width:min(var(--book-max-width,1488px),calc((100dvh - 245px)*var(--book-spread-ratio,2.917647)))}
.book-viewer:fullscreen.is-portrait .book-offset,.book-viewer.is-expanded.is-portrait .book-offset{max-width:min(100%,max(230px,calc((100dvh - 245px)*var(--book-ratio,1.458824))))}
.book-zoom-dialog{inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;border:0;background:#eceee8;color:#111;overflow:hidden;z-index:100001}
.book-zoom-dialog::backdrop{background:#10130ce6}
.book-zoom-dialog[open]{display:flex;flex-direction:column}
.book-zoom-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;flex:none;min-height:70px;padding:12px 24px;background:#f5f6f1;border-bottom:1px solid #d9dcd3}
.book-zoom-bar strong{font-size:12px;font-weight:600}
.book-zoom-bar>div{display:flex;align-items:center;gap:5px}
.book-zoom-fit{height:40px;min-width:40px;border:1px solid #d2d6c8;border-radius:3px;background:transparent;padding:7px;font-size:12px}
[data-book-zoom-percent]{font:12px/1.6 Consolas,monospace;min-width:42px;text-align:center}
.book-zoom-scroll{overflow:auto;flex:1;min-height:0;overscroll-behavior:contain;touch-action:pan-x pan-y pinch-zoom}
.book-zoom-image-wrap{display:flex;align-items:center;justify-content:center;min-width:100%;min-height:100%;width:max-content;padding:30px}
.book-zoom-image-wrap img{max-width:none;flex:none;height:auto;box-shadow:0 12px 30px #18201121;cursor:zoom-in}
.book-viewer.is-error .book-stage,.book-viewer.is-error .book-tools,.book-viewer.is-error .book-navigation{display:none}
.book-viewer.is-error .book-hint{padding-top:18px}
.book-collection-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 30px}
.book-collection-nav a{display:block;padding:8px 12px;border:1px solid var(--line);border-radius:3px;font-size:12px;line-height:1.6}
.book-collection-nav a:hover{background:var(--soft);border-color:#a5ad97}
.book-collection-nav~.book-section{scroll-margin-top:50px;margin-bottom:46px}
.book-archive-note{border-left:2px solid var(--gold);padding:1px 0 1px 12px;margin:0 0 20px;font-size:12px;line-height:1.8;max-width:760px}
@media(max-width:900px){.book-section-heading{display:block}.book-section-heading>p{margin:12px 0 0}.book-stage{padding:35px 24px}.book-toolbar{padding:14px 16px}.book-edition{font-size:12px}.book-tool{width:38px;height:38px;padding:10px}.book-navigation{padding:12px 16px}.book-hint{font-size:12px}}
@media(max-width:600px){
 .has-flipbook .project-meta{margin-bottom:28px}
 .book-section-heading{margin-bottom:18px}.book-section-heading h2{font-size:24px}.book-section-heading>p{font-size:12px}
 .book-toolbar{padding:10px 11px;gap:8px}.book-edition{font-size:12px;max-width:170px;gap:7px}.book-edition small{font-size:12px;margin-top:3px}.book-edition-mark{height:29px;width:2px}.book-tools{gap:0}.book-tool{width:36px;height:40px;padding:10px}
 .book-stage{padding:30px 16px}.book-navigation{padding:10px 12px;gap:8px}.book-nav-button{font-size:12px;gap:3px;min-height:44px}.book-nav-button svg{width:16px;height:16px}.book-position{min-width:82px}.book-position>span,.book-position small{font-size:12px}
 .book-hint{padding-bottom:12px;gap:8px;font-size:12px}.book-overview{padding:13px 12px;gap:8px}.book-thumbnail{flex-basis:70px;min-height:66px}
 .book-viewer:fullscreen .book-toolbar,.book-viewer.is-expanded .book-toolbar{padding:12px 14px}.book-viewer:fullscreen .book-stage,.book-viewer.is-expanded .book-stage{padding:30px 20px}
 .book-zoom-bar{padding:8px 10px;min-height:60px;gap:6px}.book-zoom-bar strong{font-size:12px;max-width:100px}.book-zoom-bar>div{gap:1px}.book-zoom-image-wrap{padding:15px}.book-zoom-fit{min-width:32px}.book-zoom-bar .book-tool{width:32px}
}
@media(max-width:360px){.book-edition{font-size:12px}.book-edition small{font-size:12px}.book-tools .book-tool{width:31px;padding:8px}.book-navigation{padding:10px}.book-nav-button{font-size:12px}}
@media(prefers-reduced-motion:reduce){.book-offset,.book-tool,.book-nav-button svg{transition:none}}
@media print{.book-viewer,.book-zoom-dialog{display:none!important}.book-originals>.project-gallery{display:grid!important}.book-originals{display:block}.book-originals>summary{display:none}}
