.project-story-dialog{width:min(1120px,94vw);max-width:100%;max-height:92dvh;border:0;padding:0;background:#fafaf7;color:#20332b;overscroll-behavior:contain;scrollbar-gutter:stable}
.project-story-dialog::backdrop{background:#10251fdb}.story-top{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:14px 26px;background:#fafaf7;border-bottom:1px solid #b8c4b7;font-size:12px}.story-top button{padding:11px 20px;min-height:44px;border:1px solid #7f8e79;background:transparent;color:inherit;font:inherit;cursor:pointer}.story-content{padding:36px 45px 45px}.story-content h2{font-size:clamp(36px,5vw,65px);line-height:1.05;letter-spacing:-.04em;margin:0 0 24px}.story-content>p{font-size:18px;line-height:1.6;max-width:720px}.story-context{max-width:760px;margin-top:32px}.story-context h4{font-size:32px;margin:0 0 20px}.story-context p{font-size:17px;line-height:1.65}.polish-gallery{margin:30px 0}.polish-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;background:#e8ece4}.polish-track figure{flex:0 0 100%;min-width:0;margin:0;scroll-snap-align:start;scroll-snap-stop:always}.polish-track img{height:min(53dvh,580px);width:100%;object-fit:contain;background:#e8ece4}.polish-track figcaption{padding:12px 16px;font:11px/1.5 Arial,sans-serif}.polish-controls{display:flex;justify-content:space-between;align-items:center;margin:14px 0}.polish-controls button{width:48px;height:48px;border:1px solid #9baa92;background:transparent;font-size:24px;cursor:pointer}.polish-controls button:disabled{opacity:.3}.polish-count{font-size:12px;font-variant-numeric:tabular-nums}.polish-thumbs{display:flex;gap:10px}.polish-thumbs button{width:76px;min-height:52px;background:transparent;border:1px solid transparent;padding:3px;cursor:pointer}.polish-thumbs button[aria-pressed=true]{border-color:#20332b}.polish-thumbs img{width:100%;height:48px;object-fit:cover}
@media(max-width:800px){.project-story-dialog{width:100%;height:100dvh;max-height:100dvh;margin:0}.story-top{padding:12px 6vw;padding-top:max(12px,env(safe-area-inset-top))}.story-content{padding:28px 6vw calc(30px + env(safe-area-inset-bottom))}.story-content h2{font-size:38px}.story-content>p,.story-context p{font-size:16px}.polish-track img{height:42dvh;min-height:170px}.polish-gallery{margin:24px 0}.story-context h4{font-size:29px}.story-top button{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){.polish-track{scroll-behavior:auto}}
/* A journal of finished homes: distinct rooms arrive as overlapping plates. */
.bounded-home .project-journal{display:block;margin-top:50px;padding-bottom:1px;isolation:isolate}
.bounded-home .project-journal>.journal-card{display:grid;grid-template-columns:64% 36%;margin:0 0 48px;background:#f0f0e8;min-height:470px;height:min(670px,70vw);border:1px solid #c7cfc0;overflow:hidden;box-shadow:0 -12px 35px #2036330c}
.bounded-home .project-journal>.journal-card:last-child{margin-bottom:0}
.bounded-home .journal-card .photo-wrap{height:100%;min-height:0}.bounded-home .journal-card img,.bounded-home .project-journal>.journal-card:nth-child(2) img{height:100%;width:100%;aspect-ratio:auto;object-fit:cover;object-position:center;transform:none}
.bounded-home .journal-card .journal-details{display:flex;flex-direction:column;justify-content:space-between;align-items:stretch;padding:36px clamp(24px,3.4vw,58px);gap:24px}
.bounded-home .journal-details .journal-number{font:68px/.9 'Embury Display',Georgia,serif;letter-spacing:-.06em;color:#7b8c70}.journal-number small{font:11px Arial,sans-serif;letter-spacing:.08em;margin-left:12px}
.bounded-home .journal-details h3{font-size:clamp(34px,3.5vw,55px);line-height:1.05;margin:14px 0 20px;max-width:11ch}.bounded-home .journal-details .journal-place{font:10px/1.6 Arial,sans-serif;text-transform:uppercase;letter-spacing:.09em;margin:0;color:#53634d;max-width:29ch}.bounded-home .journal-details .journal-copy{font-size:16px;line-height:1.6;max-width:28ch;color:#42523e;margin:0}.bounded-home .journal-details .journal-invitation{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #b6c2aa;padding-top:17px;font:13px Arial,sans-serif;gap:12px}.journal-invitation b{font-size:28px;font-weight:400}
.journal-stack .bounded-home .project-journal>.journal-card{position:sticky;top:calc(var(--polish-header,88px) + 12px + var(--journal-index)*7px);z-index:calc(var(--journal-index) + 1);height:var(--journal-height);min-height:0}
.bounded-home .journal-card:focus-visible{outline-offset:-5px}.bounded-home .journal-card:hover .journal-invitation b{transform:translate(3px,-3px)}
@media(min-width:801px) and (max-height:740px){.bounded-home .journal-card .journal-details{padding:24px;gap:16px}.bounded-home .journal-details .journal-number{font-size:48px}.bounded-home .journal-details h3{font-size:36px}.bounded-home .journal-details .journal-copy{font-size:14px}}
@media(max-width:800px){.bounded-home .project-journal>.journal-card{display:flex;flex-direction:column;margin:0 0 48px;min-height:0;height:auto}.bounded-home .journal-card .journal-details{order:-1;display:block;padding:20px 22px;flex:0 0 auto}.bounded-home .journal-details .journal-number{font-size:25px;float:right;margin-left:12px}.journal-number small{display:none}.bounded-home .journal-details h3{font-size:31px;max-width:none;margin:10px 0 0}.bounded-home .journal-details .journal-place{font-size:9px;max-width:25ch}.bounded-home .journal-details .journal-copy{display:none}.bounded-home .journal-details .journal-invitation{font-size:11px;padding-top:12px;margin-top:14px}.journal-invitation b{font-size:20px}.bounded-home .journal-card .photo-wrap{height:320px;flex:1;min-height:0}.bounded-home .journal-card img{min-height:0}.journal-stack .bounded-home .project-journal>.journal-card{height:var(--journal-height);min-height:0}.bounded-home .project-journal{margin-top:35px}}
@media print{.journal-stack .bounded-home .project-journal>.journal-card{position:static;height:450px;break-inside:avoid}}
/* Override the earlier portfolio aspect ratios so every journal plate is filled. */
.bounded-home .project-journal .journal-card .photo-wrap img{position:absolute;inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover}
