:root{font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif;color:#20201f;background:#fafaf9;font-synthesis:none;-webkit-font-smoothing:antialiased;font-size:16px}
*{box-sizing:border-box}body{margin:0}button{font:inherit;color:inherit}button:focus-visible{outline:2px solid #2357bf;outline-offset:10px}button{touch-action:manipulation}button:disabled{cursor:default}::selection{background:#cfdbfa}
.home{min-height:700px;height:100svh;display:flex;flex-direction:column;overflow:hidden;background:radial-gradient(ellipse at 50% 82%,#f3f3f0 0, #fafaf9 56%)}
.intro{text-align:center;padding:clamp(65px,13svh,150px) 24px 36px;flex:none;position:relative;z-index:2}.intro h1{font-size:clamp(48px,5.1vw,76px);font-weight:500;letter-spacing:-.055em;line-height:1.05;margin:0}.intro p{font-size:17px;font-weight:400;letter-spacing:-.02em;color:#72726e;margin:19px 0 0}
.library{display:flex;align-items:flex-end;justify-content:center;flex:1;min-height:350px;padding:25px 20px max(95px,12svh)}
.books{display:flex;position:relative;width:660px;max-width:100%;align-items:flex-end;justify-content:center;isolation:isolate}.books:before{content:"";position:absolute;left:10%;right:8%;height:15px;bottom:2px;background:#33332628;filter:blur(12px);border-radius:50%;z-index:-1}
.book{--tilt:0deg;position:relative;flex:1;min-width:0;aspect-ratio:3/8;border:0;background:transparent;padding:0;cursor:pointer;isolation:isolate;transform-origin:50% 93%;transition:transform .24s steps(3,end);-webkit-tap-highlight-color:transparent}
.book:nth-child(1){--tilt:-3deg}.book:nth-child(2){--tilt:1deg}.book:nth-child(3){--tilt:-2deg}.book:nth-child(4){--tilt:2deg}
.book-art{position:absolute;inset:0;display:block;background-image:url('assets/books.png');background-size:400% 100%;background-repeat:no-repeat;background-position-x:var(--position,0%);filter:drop-shadow(3px 5px 2px #25251a20);pointer-events:none;transform-origin:50% 94%}
.book-art{transform:translateY(11.6%)}.art-0{--position:0%}.art-1{--position:33.333333%}.art-2{--position:66.666667%}.art-3{--position:100%}
.book:before{content:"";position:absolute;left:24%;right:19%;bottom:2%;height:10px;background:#19191230;border-radius:50%;filter:blur(5px);transition:opacity .2s}
.book-caption{position:absolute;bottom:-39px;left:0;right:0;font-size:13px;color:#666663;opacity:0;transform:translateY(4px);transition:opacity .2s,transform .2s;white-space:nowrap}
@media(hover:hover){.book:hover{transform:translateY(-16px) rotate(var(--tilt))}.book:hover .book-caption{opacity:1;transform:translateY(16px) rotate(calc(-1 * var(--tilt)))}.book:hover:before{opacity:.2}}
.book:focus-visible{transform:translateY(-16px) rotate(var(--tilt));outline-offset:-4px;border-radius:12px}.book:focus-visible .book-caption{opacity:1;transform:translateY(16px)}.book.selected{visibility:hidden}
dialog{--accent:#c4442f;--paper:#f7f4ed;max-width:none;max-height:none;width:100%;height:100%;margin:0;padding:0;border:0;background:transparent;overflow:hidden;color:#20201f}dialog::backdrop{background:#fafaf900;transition:background .25s}dialog.reading::backdrop{background:#fafaf9}
.reader{height:100%;overflow-y:auto;overscroll-behavior:contain;background:#fafaf9;opacity:0;visibility:hidden}.reading .reader{visibility:visible;opacity:1;transition:opacity .18s steps(2,end)}
.reader-nav{position:sticky;top:0;height:78px;z-index:5;display:flex;align-items:center;justify-content:space-between;padding:0 5vw;background:#fafaf9ed;backdrop-filter:blur(12px);font-size:14px}.reader-nav button{background:transparent;border:0;cursor:pointer;padding:12px 0 12px 20px}.reader-nav button span{font-size:26px;vertical-align:-2px;margin-left:12px;font-weight:300}
.project-hero{padding:clamp(50px,10vh,130px) 5vw 55px;min-height:calc(88svh - 78px);display:flex;flex-direction:column}.eyebrow{font-size:12px;letter-spacing:.04em;font-weight:400}.project-hero .eyebrow{margin:0 0 5vw;color:#71716d}.project-hero h2{font-size:clamp(72px,16vw,250px);line-height:.86;letter-spacing:-.075em;font-weight:500;margin:0 0 65px;max-width:100%}.hero-bottom{display:flex;justify-content:space-between;align-items:flex-end;margin-top:auto}.hero-bottom p{font-size:16px;color:#777770;margin:0}.hero-bottom span{font-size:35px;font-weight:300}
.spread{padding:100px 8vw;min-height:85svh}.object-spread{display:grid;grid-template-columns:1fr 1fr;gap:10vw;align-items:center}.spread-note{align-self:start;padding-top:60px}.spread-note p{font-size:clamp(25px,3vw,46px);letter-spacing:-.04em;line-height:1.12;margin:25px 0}.book-figure{margin:0;justify-self:center}.editorial-art{position:relative;width:230px;max-width:100%;aspect-ratio:3/8;transform:rotate(7deg)}.book-figure figcaption{font-size:12px;color:#72726e;text-align:center;margin-top:28px}
.statement{background:var(--accent);color:var(--ink,#fff9ec);padding:36px 5vw 70px;min-height:100svh}.statement p{font-size:clamp(90px,19vw,300px);line-height:.84;letter-spacing:-.065em;font-weight:500;margin:80px 0 0}.statement p span{display:block;text-align:right;margin-bottom:-.84em}.outcome{display:grid;grid-template-columns:2fr 1fr;align-items:center;gap:8vw}.outcome h3{font-size:clamp(45px,6vw,96px);line-height:1;letter-spacing:-.055em;font-weight:400;margin:30px 0}.content-note{max-width:300px;font-size:17px;line-height:1.6;color:#77776f;align-self:end;margin:0 0 25px}.project-footer{padding:32px 5vw 45px;display:flex;justify-content:space-between;gap:30px;border-top:1px solid #dfdfda}.project-footer button{font-size:16px;cursor:pointer;background:none;border:0;padding:12px 0;text-align:left}.project-footer button span{margin-left:16px}
.transition{position:fixed;inset:0;pointer-events:none;perspective:1400px;z-index:10}.reading .transition{display:none}.flying-book{position:absolute;transform-origin:center center;transform-style:preserve-3d}.flying-book .book-art{backface-visibility:hidden}.opening-pages{position:absolute;left:50%;top:50%;width:min(580px,76vw);height:min(440px,60vh);transform:translate(-50%,-50%);display:flex;opacity:0;filter:drop-shadow(0 20px 30px #0002)}.opening-pages>div{width:50%;height:100%;background:linear-gradient(90deg,#fbfaf5 84%,#e5e0d5);transform-origin:right center}.opening-pages>div+div{background:linear-gradient(90deg,#ddd7cb,#f9f7f0 12%);transform-origin:left center}
@media(min-width:1600px){.books{width:740px}}@media(max-width:600px){.home{min-height:580px}.intro{padding-top:85px}.intro h1{font-size:53px}.intro p{font-size:16px;margin-top:15px}.library{min-height:270px;padding:15px 17px max(85px,12svh)}.books{width:430px}.book-caption{font-size:12px;bottom:-30px}.reader-nav{height:66px;padding:0 6vw}.project-hero{padding:65px 6vw 35px;min-height:72svh}.project-hero h2{font-size:23vw;max-width:85%;margin-top:28px;line-height:.95}.spread{padding:65px 7vw;min-height:70svh}.object-spread{grid-template-columns:1fr 1fr;gap:18px}.spread-note{padding-top:20px}.spread-note p{font-size:25px}.editorial-art{width:150px}.statement{min-height:75svh;padding:30px 6vw 60px}.statement p{font-size:24vw;margin-top:65px}.outcome{grid-template-columns:1fr;gap:40px}.outcome h3{font-size:14vw}.content-note{max-width:270px}.project-footer{padding:25px 6vw;gap:20px}.project-footer button{font-size:14px}.project-footer button span{margin-left:4px}}
@media(max-height:650px) and (min-width:601px){.home{min-height:580px}.intro{padding-top:42px}.intro h1{font-size:48px}.library{padding-bottom:65px;min-height:310px}.books{width:470px}}
@media(prefers-reduced-motion:reduce){*,*:before{animation:none!important;transition:none!important;scroll-behavior:auto!important}.book:hover,.book:focus-visible{transform:none}}
