*{box-sizing:border-box}body{--indent:.5em;margin:0;color:#222;background:#fff;font:14px/1.65 Arial,"Hiragino Kaku Gothic ProN",sans-serif;overflow-wrap:anywhere}img{max-width:100%;height:auto}button{font:inherit;color:inherit;cursor:pointer}a{color:inherit}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:1px solid #555;outline-offset:3px}:focus:not(:focus-visible){outline:none}[hidden]{display:none!important}.skip-link{position:absolute;top:-100px}.skip-link:focus{top:0}.site-header{padding:26px 4vw 20px;border-bottom:1px solid #ddd}.header-inner{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.site-name{margin:0;font-size:16px}.language{display:flex;gap:10px;margin:0;font-size:11px}.global-nav{display:flex;flex-wrap:wrap;gap:10px 24px;margin-top:16px;font-size:12px}main{margin:80px 4vw 0}.project-layout{--title-w:180px;--available:calc(92vw - 2 * (var(--title-w) + 32px));--h:max(360px,min(calc(var(--available) * 2 / 3),1200px,max(calc(100dvh - var(--all-h)),min(calc(100dvh - var(--pt-h)),480px))));--w:calc(var(--h) * 1.5);display:grid;grid-template-columns:minmax(0,1fr) var(--w) minmax(0,1fr);column-gap:32px;align-items:start}.meta{grid-column:1;grid-row:1/3;width:var(--title-w);min-width:0;max-width:var(--title-w)}.project-title{font-size:20px;line-height:1.3;font-weight:400;margin:0 0 8px;overflow-wrap:normal;word-break:normal}.project-title span{display:block;font-size:12px;margin-top:5px}.project-location,.project-year{font-size:12px;margin:0 0 5px;padding-left:var(--indent)}.text-button{display:block;margin-top:16px;border:0;padding:0 0 0 var(--indent);background:none;font-size:12px}.gallery{grid-column:2;min-width:0;position:relative}.gallery figure{margin:0 0 24px}.gallery img{display:block}.gallery :is(figcaption,.gallery-caption){text-align:center;font-size:10px;margin:8px 0 0}.project-text{font-size:13px;line-height:1.9}.project-text-copy{max-width:38em}.project-text p{margin:0 0 1em}.project-text br{display:none}.thumbs-wrap{grid-column:2;position:relative;min-width:0;margin-top:16px}.thumbs{display:flex;gap:8px;overflow:auto}.thumbs :is(a,button){flex:none;display:block;border:1px solid transparent;padding:2px}.thumbs img{display:block;height:56px;width:auto;max-width:none}.thumbs :is(a,button)[aria-current=true]{border-color:#555}.thumb-arrow{position:absolute;top:0;height:62px;width:24px;border:0;padding:0;background:none;font-size:24px}.thumb-arrow.prev{right:calc(100% + 4px)}.thumb-arrow.next{left:calc(100% + 4px)}.flickr-links{margin:24px 0 0;font-size:12px}.flickr-links p,.flickr-links ul{margin:0;padding:0;list-style:none}.project-nav{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:12px;border-top:1px solid #ccc;margin-top:24px;padding:10px 0 0;font-size:12px}.work-card{display:grid;align-content:center;align-items:center;column-gap:10px;min-width:0;text-decoration:none!important}.previous-work{grid-column:1;grid-row:1;justify-self:start;grid-template:"photo arrow label" auto "photo arrow title" auto / auto auto minmax(0,1fr)}.next-work{grid-column:3;grid-row:1;justify-self:end;text-align:right;grid-template:"label arrow photo" auto "title arrow photo" auto / minmax(0,1fr) auto auto}.work-card img{grid-area:photo;width:120px;height:80px;object-fit:contain}.nav-arrow{grid-area:arrow}.work-card .nav-label{grid-area:label;align-self:end}.nav-title{grid-area:title;align-self:start}.enhanced .gallery figure{display:none;margin:0}.enhanced .gallery figure.active{display:grid;grid-template-rows:var(--h) auto}.enhanced .gallery figure>:is(img,.image-button){width:100%;height:100%;object-fit:contain;min-height:0}.enhanced .thumbs{overflow:hidden}

@media(max-width:1029px){main{margin-top:30px}.project-layout{--w:min(100%,1000px);--h:auto;display:flex;flex-direction:column;gap:0;max-width:1000px;margin:auto}.meta{width:100%;max-width:none;min-width:0;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 16px;margin-bottom:16px}.project-title{font-size:20px;margin:0 auto 0 0}.project-title span{display:inline;margin:0 0 0 8px}.project-location,.project-year{margin:0;padding:0;white-space:nowrap}.text-button{flex-basis:100%;text-align:left;margin-top:12px}.gallery,.thumbs-wrap{width:100%}.enhanced .gallery figure.active{display:block}.enhanced .gallery figure>:is(img,.image-button){width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;object-position:center}.thumb-arrow.prev{right:100%}.thumb-arrow.next{left:100%}}
@media(max-width:600px){.site-header{padding:20px 24px}.site-name{font-size:14px}main{margin-left:24px;margin-right:24px}.meta .project-title{flex-basis:100%;font-size:18px}.project-nav{gap:8px}.previous-work{grid-template:"photo photo" auto "arrow label" auto "arrow title" auto / auto minmax(0,1fr)}.next-work{grid-template:"photo photo" auto "label arrow" auto "title arrow" auto / minmax(0,1fr) auto auto}.work-card img{max-width:100%;height:auto;aspect-ratio:3/2;margin-bottom:8px}.thumb-arrow{width:24px}}
.meta-details{display:contents}@media(max-width:1029px){.meta-details{display:flex;gap:16px;flex-wrap:wrap}.meta .project-title{white-space:nowrap}}

@media(min-width:1030px){body{--header-h:110px;--top-gap:80px;--number-h:25px;--thumb-gap:16px;--thumb-h:62px;--flickr-gap:24px;--flickr-h:40px;--flickr-total:0px;--nav-gap:24px;--nav-h:91px;--footer-gap:16px;--footer-h:70px;--tail-gap:24px;--pt-h:calc(var(--header-h) + var(--top-gap) + var(--number-h) + var(--thumb-gap) + var(--thumb-h) + var(--tail-gap));--all-h:calc(var(--pt-h) - var(--tail-gap) + var(--flickr-total) + var(--nav-gap) + var(--nav-h) + var(--footer-gap) + var(--footer-h))}body:has(.flickr-links){--flickr-total:calc(var(--flickr-gap) + var(--flickr-h))}.enhanced .site-header{height:var(--header-h)}.enhanced main{margin-top:var(--top-gap)}.enhanced .gallery figure.active{grid-template-rows:var(--h) var(--number-h)}.enhanced .gallery :is(figcaption,.gallery-caption){height:var(--number-h);margin:0;padding-top:8px;line-height:16.5px}.enhanced .thumbs-wrap{height:var(--thumb-h);margin-top:var(--thumb-gap)}.enhanced .thumbs{height:var(--thumb-h)}.enhanced .flickr-links{height:var(--flickr-h);margin-top:var(--flickr-gap);line-height:20px}.enhanced .project-nav{height:var(--nav-h);margin-top:var(--nav-gap)}
}

@media(max-width:600px){.project-nav .work-card{width:100%}.project-nav .work-card img{width:100%;max-width:120px;height:auto;justify-self:start}.project-nav .next-work img{justify-self:end}}html[lang=en] .project-title{overflow-wrap:normal;word-break:normal;white-space:normal}html[lang=en] .work-card{overflow-wrap:normal;word-break:normal}

@media(max-width:1029px){html[lang=en] .meta .project-title{white-space:normal}html[lang=en] .project-location{white-space:normal}}.drawing-figure img,.image-viewer img.inverted{filter:invert(1)}.enhanced .drawing-set{display:none}.drawing-set h2{font-size:14px;font-weight:400}.drawing-button{display:block;border:0;background:none;font-size:12px;line-height:1.65;padding:0 0 0 var(--indent);margin:5px 0 0;text-align:left}.image-viewer{max-width:100vw;max-height:100dvh;width:100vw;height:100dvh;border:0;padding:24px;background:#fff}.image-viewer[open]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.image-viewer::backdrop{background:#fff}.image-viewer img{width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 110px);object-fit:contain;min-height:0}.image-viewer button{background:#fff;border:1px solid #ccc;padding:6px 12px}
@media(max-width:1029px){.project-actions{display:flex;flex-basis:100%;flex-wrap:wrap;gap:4px 24px;margin-top:12px}.project-actions .text-button{flex-basis:auto;margin:0}.project-actions .drawing-button{padding:0;margin:0}}.thumb-button{appearance:none;background:none;margin:0;font:inherit}.image-button{appearance:none;display:block;position:relative;padding:0;margin:0;border:0;background:none;min-width:0;line-height:0}.gallery .image-button>img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center}
:is(a,.text-button,.drawing-button,.image-viewer button){text-decoration:none}:is(a:not(.work-card),.text-button,.drawing-button,.image-viewer button):hover:not(:active),.work-card:hover:not(:active) :is(.nav-label,.nav-title),:is(.text-button,.drawing-button)[aria-current=true]{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}html[lang=en] body{--indent:0}
@media(max-width:1029px){body{--indent:0}}.work-index{grid-column:2;grid-row:1;align-self:center;transform:translateY(.825em);text-align:center;white-space:nowrap;max-width:none}.work-index .nav-label{text-align:center;white-space:nowrap;overflow-wrap:normal;word-break:normal}
@media(max-width:600px){.work-index{font-size:11px;transform:none}.work-index .index-return{display:block}}html[lang=en] .work-index,html[lang=en] .work-index .nav-label{white-space:normal;overflow-wrap:normal;word-break:normal}html[lang=en] .work-index .index-return{display:inline}
@media(max-width:600px){html[lang=en] .work-index{max-width:7em}}.site-footer{position:relative;margin-top:16px;border-top:1px solid #ddd;padding:24px max(4vw,72px) 24px 4vw;font-size:12px}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;flex-wrap:nowrap}.footer-copyright{margin:0}.footer-social{display:flex;gap:24px;margin-top:0;flex-wrap:nowrap}
@media(max-width:600px){.site-footer{padding:22px 72px 22px 24px}.footer-inner{display:block}.footer-social{margin-top:12px}}
@media(min-width:1030px){.enhanced .site-footer{height:var(--footer-h);margin-top:var(--footer-gap)}}.to-top-fab{position:absolute;right:16px;bottom:16px;width:40px;height:40px;border:1px solid #aaa;border-radius:50%;background:#fff;text-align:center;line-height:38px;z-index:5;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility 0s linear .2s}.enhanced .to-top-fab.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition:opacity .2s ease,visibility 0s}
@media(prefers-reduced-motion:reduce){.to-top-fab,.enhanced .to-top-fab.is-visible{transition:none}}.enhanced.single-photo .gallery figure:not(.drawing-figure).active{grid-template-rows:var(--h)}

/* One selected view: photo, drawing, or text. No overlay or photo resizing. */
/* Fixed stage; only the centered text field scrolls on wide screens. */
.enhanced .text-view{display:none}
.enhanced .text-view.active{display:grid;grid-template-rows:var(--h) var(--number-h,auto)}
.enhanced .text-viewport{position:relative;min-width:0;min-height:0}
.enhanced .project-text{background:#fff}
@media(min-width:1030px){.enhanced .text-viewport{width:80%;height:100%;margin-inline:auto}.enhanced .project-text{height:100%;overflow-y:auto;padding-right:12px;scrollbar-width:thin;scrollbar-color:#ccc transparent}.enhanced .project-text-copy{max-width:none}.enhanced .project-text::-webkit-scrollbar{width:6px}.enhanced .project-text::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}.enhanced .project-text::-webkit-scrollbar-track{background:transparent}.enhanced .text-viewport:after{content:"";position:absolute;inset:auto 12px 0 0;height:24px;background:linear-gradient(transparent,#fff);pointer-events:none;opacity:0}.enhanced .text-viewport.has-more:after{opacity:1}}
@media(max-width:1029px){.enhanced .text-view.active{display:block}}

/* One-line paragraph spacing, with first-line indentation. */
.project-text-copy p{margin:0;padding:0;text-indent:1em}
.project-text-copy p+p{margin-top:1.9em}
.main-arrow{display:none}
@media(min-width:1030px){.enhanced .main-arrow{display:block;position:absolute;top:calc(var(--h) / 2);transform:translateY(-50%);width:16px;height:40px;margin:0;padding:0;border:0;background:none;color:#555}.main-arrow.prev{right:calc(100% + 4px)}.main-arrow.next{left:calc(100% + 4px)}.main-arrow:before{content:"";position:absolute;inset:0;background:currentColor;clip-path:polygon(0 0,1px 0,100% 50%,1px 100%,0 100%,calc(100% - 1px) 50%)}.main-arrow.prev:before{transform:scaleX(-1)}.main-arrow:hover:not([aria-disabled=true]){color:#222}.main-arrow[aria-disabled=true]{color:#ccc;cursor:default}}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
h1.project-title,html[lang=en] h1.project-title{word-break:auto-phrase;text-wrap:balance}
