/* Work-page photo journal; motion is local and respects reduced motion. */
.work-storybook{--book-ink:#0b2530;--book-petrol:#183c43;--book-teal:#83aaa2;--book-champagne:#d4c09b;--book-paper:#eee6d6;--book-muted:#a7bab7;--book-hairline:rgba(187,208,200,.22);background:var(--book-ink);color:var(--book-paper);isolation:isolate;position:relative}
.work-storybook a,.work-storybook button{-webkit-tap-highlight-color:transparent}.work-storybook a:focus-visible,.work-storybook button:focus-visible{outline:2px solid var(--book-champagne);outline-offset:6px}.work-storybook h1,.work-storybook h2,.work-storybook p{margin-top:0}.work-storybook h1,.work-storybook .book-chapter h2,.work-storybook .book-archive-heading h2,.work-storybook .work-closing h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.05em}.work-storybook h1 em,.work-storybook h2 em{font-weight:400;color:var(--book-champagne)}.book-kicker{font:500 .7rem/1.4 var(--body,Arial,sans-serif);letter-spacing:.12em;color:var(--book-teal);text-transform:none}.book-kicker>span{display:inline-block;margin-right:18px;color:var(--book-champagne)}
.book-cover{display:grid;grid-template-columns:.85fr 1.15fr;gap:8%;align-items:center;min-height:min(850px,92svh);padding:105px 7% 130px;background:radial-gradient(ellipse at 85% 25%,#254b4a66,transparent 60%)}.book-cover-copy{position:relative;z-index:2}.book-cover h1{font-size:clamp(4.1rem,6.7vw,7.4rem);line-height:.98;margin:35px 0 30px}.book-cover-deck{max-width:330px;font-size:1rem;line-height:1.8;color:var(--book-muted)}.book-read-link{display:inline-flex;align-items:center;gap:34px;padding:19px 0 13px;margin-top:17px;border-bottom:1px solid var(--book-teal);text-decoration:none;color:var(--book-paper);font-size:.8rem}.book-read-link span{font-size:1.4rem;color:var(--book-champagne)}.book-edition{display:flex;align-items:center;gap:12px;margin-top:39px!important;font-size:.62rem;letter-spacing:.05em;color:var(--book-muted)}.book-edition>span{width:22px;height:1px;background:var(--book-hairline)}.book-cover-art{position:relative;margin-top:12px;padding-bottom:15%;perspective:1200px}.book-margin-note{position:absolute;right:-29px;top:8%;writing-mode:vertical-rl;font-size:.58rem;letter-spacing:.14em;color:var(--book-muted)}
.book-frame{position:relative;margin:0;background:#cfc3aa;padding:9px;box-shadow:0 20px 65px #071b2855;color:#263c3c}.book-frame button{display:block;width:100%;padding:0;border:0;background:#1d4145;position:relative;overflow:hidden;cursor:zoom-in}.book-frame img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.book-frame button:hover img{transform:scale(1.035)}.book-frame figcaption{padding:12px 4px 6px;font-family:Georgia,'Times New Roman',serif;font-size:.78rem;font-style:italic;line-height:1.3}.book-photo-open{position:absolute;right:11px;bottom:11px;width:30px;height:30px;border:1px solid #eee6d699;background:#0b25308c;display:grid;place-items:center;color:#eee6d6;font:1.2rem/1 Arial,sans-serif;opacity:0;transition:opacity .2s}.book-frame button:hover .book-photo-open,.book-frame button:focus-visible .book-photo-open{opacity:1}.book-cover-main{transform:rotate(2deg)}.book-cover-main button{aspect-ratio:1.23}.book-cover-main img{object-position:50% 32%}.book-cover-inset{position:absolute;bottom:-4%;left:-11%;width:34%;transform:rotate(-7deg);z-index:2}.book-cover-inset button{aspect-ratio:.76}.book-cover-inset figcaption{font-size:.68rem}
.book-body{display:grid;grid-template-columns:150px minmax(0,1fr);gap:4%;padding:0 7%}.book-rail{position:sticky;top:calc(var(--owner-offset,0px) + 110px);align-self:start;margin-top:120px;padding:0 0 25px}.book-rail-heading{font-size:.62rem;color:var(--book-champagne);letter-spacing:.12em;margin-bottom:22px}.book-progress{height:2px;background:var(--book-hairline);margin:0 20px 26px 0}.book-progress>span{display:block;height:100%;width:100%;transform:scaleX(var(--book-progress,0));transform-origin:left;background:var(--book-teal);transition:transform .12s linear}.book-rail ol{list-style:none;padding:0;margin:0}.book-rail li{margin:0 0 7px}.book-rail li a{display:flex;align-items:center;gap:13px;color:var(--book-muted);font-size:.71rem;line-height:1.5;text-decoration:none;padding:12px 0;transition:color .25s}.book-rail li a>span{font-size:.6rem;color:#789893}.book-rail li a>i{height:4px;width:4px;border-radius:50%;background:var(--book-champagne);margin-left:auto;opacity:0;transition:opacity .25s}.book-rail li a[aria-current=step]{color:var(--book-paper)}.book-rail li a[aria-current=step]>i{opacity:1}.book-rail-archive{display:block;margin-top:25px;padding-top:23px;border-top:1px solid var(--book-hairline);font-size:.66rem;text-decoration:none;color:var(--book-teal)}
.book-chapters{min-width:0}.book-chapter{position:relative;min-height:900px;padding:93px 0 42px;border-top:1px solid var(--book-hairline);scroll-margin-top:160px}.book-chapter-heading{max-width:620px;position:relative;z-index:3}.book-chapter h2{font-size:clamp(2.8rem,4.4vw,4.8rem);line-height:1.06;margin:27px 0 23px}.book-chapter-heading>p:last-child{max-width:425px;font-size:.9rem;line-height:1.8;color:var(--book-muted)}.book-spread{position:relative;margin:48px 6% 60px 3%;padding:0 8% 6% 0;perspective:1300px}.book-frame-main{width:87%;transform:translateY(var(--book-drift,0)) rotate(-1.8deg);transition:transform .2s linear}.book-frame-main button{aspect-ratio:1.38}.book-frame-main img{object-position:50% 40%}.book-frame-inset{position:absolute;width:32%;right:-2%;bottom:-2%;transform:translateY(calc(var(--book-drift,0px)*-.5)) rotate(5deg);z-index:2;transition:transform .2s linear}.book-frame-inset button{aspect-ratio:.78}.book-folio{position:absolute;right:-4%;top:-56px;font:italic 7rem/1 Georgia,'Times New Roman',serif;color:#7da29a25;z-index:-1}.book-page-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.59rem;line-height:1.5;letter-spacing:.04em;color:#8ca7a4}.book-chapter-rooflines .book-spread{margin-right:10%;padding-right:9%;padding-bottom:12%}.book-chapter-rooflines .book-frame-main{transform:translateY(var(--book-drift,0)) rotate(1.6deg)}.book-chapter-rooflines .book-frame-main button{aspect-ratio:1.45}.book-chapter-rooflines .book-frame-inset{width:34%;right:-4%;bottom:0;transform:translateY(calc(var(--book-drift,0px)*-.5)) rotate(-5deg)}.book-chapter-details .book-spread{margin-left:14%;padding-bottom:3%;padding-right:17%}.book-chapter-details .book-frame-main{width:81%;max-width:470px;transform:translateY(var(--book-drift,0)) rotate(-2deg)}.book-chapter-details .book-frame-main button{aspect-ratio:.78}.book-chapter-details .book-frame-inset{width:39%;right:0;bottom:9%;transform:translateY(calc(var(--book-drift,0px)*-.5)) rotate(7deg)}.book-chapter-details .book-frame-inset button{aspect-ratio:1}.book-chapter-details .book-folio{right:3%;top:0}.book-chapter-people .book-frame-main button{aspect-ratio:1.48}.book-chapter-people .book-frame-inset{width:40%;right:-3%;bottom:-3%}.book-chapter-people .book-frame-inset button{aspect-ratio:1.2}
.work-archive{padding:110px 7% 90px;margin-top:80px;background:linear-gradient(145deg,#214a4c,#15343d)}.book-archive-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:end;margin-bottom:58px}.book-archive-heading h2{font-size:clamp(2.8rem,4.8vw,5.3rem);line-height:1.04;margin:25px 0 0}.book-archive-heading>p{max-width:360px;margin:0 0 6px auto;color:var(--book-muted);font-size:.9rem;line-height:1.8}.work-archive .portfolio-toolbar{display:flex;gap:25px;justify-content:space-between;align-items:center;margin-bottom:38px;padding-top:26px;border-top:1px solid var(--book-hairline)}.work-archive .portfolio-filters{display:flex;flex-wrap:wrap;gap:7px}.work-archive .portfolio-filters button{border:1px solid #a2b6aa55;color:var(--book-paper);background:transparent;border-radius:999px;padding:11px 19px;font-size:.73rem;text-transform:none;letter-spacing:0}.work-archive .portfolio-filters button[aria-pressed=true]{background:var(--book-champagne);border-color:var(--book-champagne);color:var(--book-ink)}.work-archive #gallery-count{margin:0;white-space:nowrap;font-size:.68rem;color:var(--book-muted)}.work-archive .portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:37px 26px;align-items:start}.work-archive .gallery-card{margin:0;min-width:0}.work-archive .gallery-card[hidden]{display:none!important}.work-archive .project-open{padding:0;background:#1a3a41;aspect-ratio:1.23;border:1px solid #94aaa32c;border-radius:2px}.work-archive .project-open img{width:100%;height:100%;object-fit:cover}.work-archive .gallery-card[data-photo-id="928"] img{object-position:50% 35%}.work-archive .gallery-card[data-photo-id="441"] img{object-position:50% 45%}.work-archive .gallery-card[data-photo-id="929"] img{object-position:50% 33%}.work-archive .gallery-expand{background:#d4c09be6;color:var(--book-ink);width:34px;height:34px;font-size:1.1rem;border-radius:50%}.work-archive .gallery-card figcaption{padding:18px 0}.work-archive .gallery-card figcaption>span{font-size:.59rem;letter-spacing:.04em;color:#9fb7b2;text-transform:none}.work-archive .gallery-card h2{font:400 1.4rem/1.2 Georgia,'Times New Roman',serif;letter-spacing:-.015em;color:var(--book-paper);margin:12px 0 9px}.work-archive .gallery-card p{font-size:.76rem;line-height:1.65;color:var(--book-muted)}.work-archive .portfolio-source-note{max-width:760px;font-size:.69rem;line-height:1.8;color:#9fb7b2;border-top:1px solid var(--book-hairline);padding-top:27px;margin-top:36px}
.work-closing{position:relative;overflow:hidden;text-align:center;padding:105px 7% 140px;background:radial-gradient(ellipse at 50% 100%,#28515180,transparent 70%)}.work-closing h2{font-size:clamp(3.3rem,6vw,6.5rem);line-height:1.04;margin:31px 0}.book-contact-link{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;text-decoration:none;color:var(--book-paper);border-bottom:1px solid var(--book-champagne);padding:15px 0;font-size:.8rem}.book-contact-link>span{font-size:1.4rem;color:var(--book-champagne)}.book-closing-mark{position:absolute;bottom:17px;left:0;right:0;text-align:center;font-family:Georgia,'Times New Roman',serif;font-size:clamp(3rem,9vw,10rem);letter-spacing:-.055em;color:#8cac9f13;pointer-events:none}
.work-modal-open{overflow:hidden}.storybook-lightbox.project-lightbox{background:#102e39;color:#eee6d6;border:1px solid #8eaaa45c;border-radius:5px;padding:22px;width:min(1120px,95vw);max-width:95vw;max-height:94dvh;box-shadow:0 24px 100px #061723aa}.storybook-lightbox::backdrop{background:#081f2bdf;backdrop-filter:blur(9px)}.storybook-lightbox .project-lightbox-top{font-size:.8rem;color:#d4c09b;gap:24px}.storybook-lightbox .project-lightbox-top button{color:#eee6d6;width:38px;height:38px;border:1px solid #8eaaa44d;border-radius:50%;flex:none;font:1.5rem/1 Arial,sans-serif}.storybook-lightbox>img{display:block;height:auto;width:100%;max-height:67dvh;object-fit:contain;background:#0b2530}.storybook-lightbox-caption{font-size:.8rem;line-height:1.65;color:#aec1ba;margin:16px 0 0}.storybook-lightbox .project-lightbox-nav button{color:#eee6d6;border-color:#7b99915c;font-size:.8rem;border-radius:30px;padding:10px 20px;background:transparent}.storybook-lightbox .project-lightbox-nav button:hover{background:#284c50}.storybook-lightbox button:focus-visible{outline:2px solid #d4c09b;outline-offset:4px}
@media(min-width:1500px){.book-cover,.book-body,.work-archive{padding-left:max(7%,calc((100vw - 1400px)/2));padding-right:max(7%,calc((100vw - 1400px)/2))}.book-chapter{min-height:980px}}
@media(max-width:1000px){.book-cover{padding:75px 6% 110px;gap:6%;min-height:700px}.book-cover h1{font-size:5.4rem}.book-cover-deck{font-size:.9rem}.book-body{padding:0 5%;grid-template-columns:125px minmax(0,1fr);gap:4%}.book-chapter{min-height:770px;padding-top:75px}.book-chapter h2{font-size:3.35rem}.book-rail{top:calc(var(--owner-offset,0px) + 110px);margin-top:95px}.book-rail li a{font-size:.64rem;gap:10px}.book-spread{margin:42px 3% 58px 0}.book-frame-main{width:91%}.book-frame-inset{width:35%;right:-3%}.work-archive{padding:80px 6%}.work-archive .portfolio-grid{gap:28px 19px}.work-archive .gallery-card h2{font-size:1.28rem}}
@media(max-width:760px){.book-cover{grid-template-columns:1fr;gap:55px;min-height:0;padding:62px 7% 90px}.book-cover h1{font-size:clamp(4.2rem,13vw,6.7rem);margin:29px 0 24px}.book-cover-deck{max-width:400px}.book-edition{margin-top:27px!important}.book-cover-art{margin:0 3% 0 12%;padding-bottom:11%}.book-cover-main button{aspect-ratio:1.42}.book-cover-inset{width:29%;left:-12%;bottom:-5%}.book-cover-inset button{aspect-ratio:.77}.book-margin-note{right:-22px;font-size:.53rem}.book-body{display:block;padding:0 7%}.book-rail{z-index:6;top:calc(var(--owner-offset,0px) + 70px);margin:0 -8.15%;padding:14px 7% 12px;background:#0b2530f5;backdrop-filter:blur(14px);border-top:1px solid var(--book-hairline);border-bottom:1px solid var(--book-hairline)}.book-rail-heading,.book-rail-archive{display:none}.book-progress{position:absolute;left:0;right:0;bottom:-1px;margin:0;height:2px}.book-rail ol{display:flex;justify-content:space-between;gap:12px}.book-rail li{margin:0;min-width:0}.book-rail li a{font-size:.62rem;gap:7px;padding:7px 0;white-space:nowrap}.book-rail li a>span{font-size:.56rem}.book-rail li a>i{display:none}.book-chapter{padding:72px 0 37px;min-height:0;scroll-margin-top:160px}.book-chapter:first-child{border-top:0}.book-chapter h2{font-size:clamp(2.6rem,8vw,4rem);margin:22px 0 20px}.book-chapter-heading>p:last-child{font-size:.84rem;line-height:1.75}.book-spread{margin:37px 3% 44px 0;padding:0 6% 12% 0}.book-frame-main{width:92%}.book-frame-main button{aspect-ratio:1.35}.book-frame-inset{width:34%;right:-2%;bottom:0}.book-frame{padding:6px}.book-frame figcaption{font-size:.68rem;padding:10px 3px 4px}.book-frame-inset figcaption{font-size:.57rem}.book-folio{font-size:5rem;right:1%;top:-41px}.book-page-bottom{font-size:.53rem;gap:22px}.book-chapter-rooflines .book-spread{padding-bottom:17%;margin-right:3%}.book-chapter-rooflines .book-frame-inset{width:35%;right:-2%}.book-chapter-details .book-spread{margin-left:3%;padding-right:15%;padding-bottom:4%}.book-chapter-details .book-frame-main{width:83%}.book-chapter-details .book-frame-inset{width:38%;right:0;bottom:12%}.book-chapter-people .book-frame-inset{width:42%;right:-2%;bottom:0}.work-archive{margin-top:43px;padding:68px 7% 65px}.book-archive-heading{grid-template-columns:1fr;gap:23px;margin-bottom:33px}.book-archive-heading h2{font-size:3.2rem}.book-archive-heading>p{margin:0;max-width:440px;font-size:.83rem}.work-archive .portfolio-toolbar{display:block}.work-archive .portfolio-filters{gap:7px}.work-archive .portfolio-filters button{padding:9px 14px;font-size:.66rem}.work-archive #gallery-count{margin-top:17px;font-size:.63rem}.work-archive .portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:25px 16px}.work-archive .project-open{aspect-ratio:1}.work-archive .gallery-card h2{font-size:1.13rem;line-height:1.25;margin:9px 0 7px}.work-archive .gallery-card figcaption{padding:13px 0}.work-archive .gallery-card p{font-size:.67rem}.work-archive .gallery-card figcaption>span{font-size:.5rem}.work-archive .gallery-expand{width:27px;height:27px;bottom:9px;right:9px;font-size:1rem}.work-archive .portfolio-source-note{font-size:.64rem}.work-closing{padding:76px 7% 110px}.work-closing h2{font-size:3.6rem}.storybook-lightbox.project-lightbox{padding:15px}.storybook-lightbox .project-lightbox-top{font-size:.7rem;line-height:1.5}.storybook-lightbox-caption{font-size:.73rem}.storybook-lightbox>img{max-height:65dvh}}
@media(max-width:390px){.book-rail li a{font-size:.57rem;gap:5px}.book-rail ol{gap:6px}.book-cover h1{font-size:4rem}.book-cover-inset figcaption{font-size:.51rem}.work-archive .portfolio-grid{gap:23px 13px}}
@media(prefers-reduced-motion:reduce){.work-storybook *{scroll-behavior:auto!important}.book-frame-main,.book-frame-inset{--book-drift:0px!important;transition:none}.book-frame img,.book-photo-open,.book-progress>span{transition:none}.book-frame button:hover img{transform:none}}
