:root{--ink:#f6f4ed;--gold:#d8bc88;--paper:#f2f0e9;--dark:#252720}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--dark);color:var(--ink);font-family:Arial,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--gold);outline-offset:6px}img{display:block;width:100%;object-fit:cover;filter:brightness(1.08) saturate(.94)}figure{margin:0}p{line-height:1.9;word-break:keep-all}h1,h2{margin:0;font-weight:550;letter-spacing:-.06em;word-break:keep-all}h2{font-size:clamp(32px,5vw,78px);line-height:1.3}em{font-style:normal;color:#8c8270}.eyebrow{font-size:11px;letter-spacing:1.8px;color:var(--gold);margin:0 0 27px;line-height:1.6}.paper{background:var(--paper);color:var(--dark)}.paper .eyebrow{color:#7a694e}.skip{position:fixed;top:-100px;z-index:99;background:var(--paper);color:var(--dark);padding:15px}.skip:focus{top:0}header{position:absolute;z-index:5;top:0;left:0;width:100%;padding:26px 6%;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff30}.brand{font-size:24px;font-weight:800;letter-spacing:-1.5px;white-space:nowrap;line-height:1.1}.brand span{display:block;font-size:9px;font-weight:500;letter-spacing:2px;margin-top:8px}.header-right{display:flex;align-items:center;gap:30px}.preview{font-size:9px;letter-spacing:1.5px;color:#eee8dc}.index-link{font-size:12px;padding:12px 0}.hero{height:210svh}.pin{position:sticky;top:0;height:100svh;overflow:hidden}.pin>img,.closing>img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover}.hero-photo{object-position:calc(30% + var(--p,0)*45%) center;transform:scale(calc(1 + var(--p,0)*.1));transform-origin:75% 50%}.shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#090e0c78,transparent 90%),linear-gradient(0deg,#090e0c66,transparent 65%)}.hero-title{position:absolute;left:6%;bottom:17%;opacity:calc(1 - var(--p,0)*2.2);transform:translateY(calc(var(--p,0)*-70px))}.hero h1{font-size:clamp(64px,13vw,190px);line-height:.9;letter-spacing:-.06em}.hero h1 span{display:block;font-size:18px;letter-spacing:0;margin-top:26px;font-weight:400}.scroll-link{display:inline-block;font-size:12px;margin-top:35px;padding-bottom:9px;border-bottom:1px solid #ffffff60}.hero-statement{position:absolute;left:6%;right:6%;top:48%;opacity:clamp(0,calc((var(--p,0) - .35)*2.5),1);transform:translateY(calc((1 - var(--p,0))*40px))}.hero-statement h2{font-size:clamp(30px,4.8vw,76px)}.photo-note{position:absolute;bottom:65px;right:6%;font-size:9px;letter-spacing:2px}.intro{padding:110px 6% 45px}.intro-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:7%}.copy{font-size:17px}.copy p:first-child{margin-top:0}.copy p+p{margin-top:27px}.project-meta{border-top:1px solid #25272030;display:flex;justify-content:space-between;gap:18px;padding-top:22px;margin-top:90px;font-size:11px;letter-spacing:.6px}.scene-section{padding:110px 6% 100px}.section-head{margin-bottom:60px}.image-pair{position:relative;padding-bottom:100px}.large{width:76%}.large img{aspect-ratio:3/2}.small{position:absolute;right:0;bottom:0;width:29%;border:12px solid var(--paper);border-right:0}.small img{aspect-ratio:2/3}.small figcaption{font-size:10px}figcaption{font-size:11px;margin-top:14px;color:#77756c;line-height:1.7}.after-copy{margin:45px 0 0 8%;font-size:18px}.wide{height:165svh}.zoom-photo{transform:scale(calc(1.02 + var(--p,0)*.055));object-position:55% center}.over-copy{position:absolute;bottom:15%;left:7%;right:6%;transform:translateY(calc(var(--p,0)*-35px))}.over-copy h2{font-size:clamp(45px,7vw,108px)}.over-copy p:last-child,.object-copy p:last-child{font-size:17px;max-width:500px;margin-top:30px;text-shadow:0 2px 14px #0009}.object{height:210svh}.object-wide{object-position:50% 50%}.object-detail{opacity:clamp(0,calc((var(--p,0) - .25)*1.7),1);transform:scale(calc(1.08 - var(--p,0)*.08))}.object .shade{background:linear-gradient(0deg,#090e0cc9,transparent 95%)}.object-copy{position:absolute;left:7%;bottom:12%;right:7%;transform:translateY(calc(var(--p,0)*-32px))}.object-copy h2{font-size:clamp(30px,4.3vw,65px)}.empty{padding:150px 6% 120px}.empty h2{font-size:clamp(48px,8.5vw,125px);margin-bottom:110px}.empty figure{width:80%;margin-left:auto}.empty figure img{aspect-ratio:16/10;object-position:58% 50%}.empty-copy{display:flex;justify-content:space-between;gap:30px;margin:80px 6% 0;font-size:17px}.big-number{font-size:clamp(80px,15vw,220px);letter-spacing:-.08em;color:#d5d0c4;line-height:1}.content-section{padding:100px 6%;background:#292b25}.content-section .section-head p:last-child{font-size:17px;margin-top:30px}.content-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;align-items:start}.content-grid figure:nth-child(2){margin-top:90px}.content-grid figure:nth-child(3){margin-top:180px}.content-grid img{aspect-ratio:4/5}.content-grid figcaption{color:#c5c2b6}.content-end{font-size:clamp(23px,3vw,40px);margin:90px 0 20px;line-height:1.6}.closing{position:relative;min-height:110svh;display:flex;align-items:center;padding:100px 7%}.closing>img{object-position:45% center}.closing .shade{background:linear-gradient(90deg,#090e0ca0,#090e0c20)}.closing-copy{position:relative}.closing h2{font-size:clamp(72px,12vw,170px);line-height:.94;letter-spacing:-.065em}.closing h2 em{color:var(--gold)}.closing-copy>p:not(.eyebrow){font-size:clamp(20px,2.5vw,31px);line-height:1.6;margin-top:40px}.closing-copy .small-copy{font-size:15px!important;margin-top:22px!important}.chapter-index{padding:80px 7%;display:grid;grid-template-columns:1fr 1fr;column-gap:8%}.chapter-index>.eyebrow{grid-column:1/-1}.chapter-index>a{display:flex;gap:20px;align-items:center;min-height:60px;border-bottom:1px solid #25272025;font-size:11px}.chapter-index>a span{flex:1;font-size:13px;letter-spacing:.6px}footer{display:flex;flex-wrap:wrap;align-items:center;gap:40px;padding:65px 6% 85px}footer p{font-size:12px;color:#ccc9bd}footer small{width:100%;font-size:11px;color:#b5b4aa;line-height:1.8}.home-link{font-size:13px;margin-left:auto;padding:15px 0}.hud{position:fixed;bottom:0;left:0;right:0;padding:14px 6%;z-index:10;display:flex;justify-content:space-between;pointer-events:none;font-size:9px;letter-spacing:1.4px;background:#252720e8;color:var(--ink)}.hud i{position:absolute;left:0;bottom:0;height:2px;width:100%;background:var(--gold);transform-origin:left;transform:scaleX(0)}
@media(max-width:700px){header{padding:23px 6%}.brand{font-size:21px}.preview{display:none}.hero{height:180svh}.hero-title{bottom:21%}.hero h1{font-size:clamp(70px,19vw,130px)}.hero-statement{top:49%}.hero-statement h2{font-size:clamp(29px,7.6vw,45px)}.photo-note{font-size:8px;bottom:65px}.intro{padding-top:85px}.intro-grid{display:block}.intro h2{font-size:clamp(30px,7.9vw,45px)}.copy{margin-top:38px;font-size:16px}.project-meta{margin-top:50px;flex-wrap:wrap;font-size:9px}.scene-section{padding-top:75px;padding-bottom:80px}.section-head{margin-bottom:36px}.image-pair{padding-bottom:95px}.large{width:94%}.large img{aspect-ratio:4/5;object-position:45%}.small{width:40%;border-width:7px}.small figcaption{display:none}.after-copy{margin:25px 0 0;font-size:16px}.wide{height:150svh}.over-copy{bottom:15%}.over-copy p:last-child,.object-copy p:last-child{font-size:15px;line-height:1.85}.over-copy h2{font-size:56px}.object{height:170svh}.object-wide{object-position:50%}.object-detail{object-position:58%}.object-copy{left:6%;bottom:12%}.object-copy h2{font-size:30px}.empty{padding:95px 6% 85px}.empty h2{font-size:clamp(46px,12vw,72px);margin-bottom:85px}.empty figure{width:100%}.empty figure img{aspect-ratio:4/5;object-position:53%}.empty-copy{margin:55px 0 0;gap:20px;font-size:15px}.big-number{font-size:70px}.empty-copy p{margin:0}.content-section{padding:80px 6%}.content-grid{grid-template-columns:1fr 1fr;gap:18px}.content-grid figure:nth-child(2){margin-top:65px}.content-grid figure:nth-child(3){grid-column:1/-1;width:78%;margin-top:25px}.content-grid figure:nth-child(3) img{aspect-ratio:4/3}.content-grid figcaption{font-size:10px}.content-end{margin-top:55px;font-size:23px}.closing{min-height:105svh;padding:100px 6%}.closing h2{font-size:20vw}.closing>img{object-position:44%}.chapter-index{grid-template-columns:1fr;padding:65px 6%}footer{gap:20px}footer .brand{width:100%}footer small{font-size:10px}.hud{font-size:8px}.hud>span:last-of-type{font-size:7px}}
@media(max-height:520px) and (orientation:landscape){.pin{height:120svh}.hero-title{bottom:15%}.hero h1{font-size:60px}.hero-statement{top:43%}.object-copy h2,.over-copy h2{font-size:30px}.object-copy p:last-child,.over-copy p:last-child{font-size:13px;margin-top:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.scroll-scene{height:auto}.pin{position:relative;min-height:100svh;height:auto}.pin>img{transform:none!important}.hero .pin{height:110svh}.hero-title{opacity:1;transform:none;top:125px;bottom:auto}.hero h1{font-size:clamp(58px,12vw,110px)}.hero-statement{opacity:1;transform:none;top:auto;bottom:15%}.hero-statement .eyebrow{display:none}.hero-statement h2{font-size:clamp(26px,5vw,50px)}.over-copy,.object-copy{position:relative;left:auto;right:auto;bottom:auto;transform:none;padding:28svh 6% 15svh}.object-detail{display:none}}
/* Intrinsic dimensions reserve space; responsive frames own the final ratio. */
figure img{height:auto}
.image-pair .large img,.image-pair .small img,.empty figure img,.content-grid img{height:auto;object-fit:cover}
@supports(aspect-ratio:1){.image-pair .large img,.image-pair .small img,.empty figure img,.content-grid img{height:100%}.image-pair .large img{height:auto;aspect-ratio:3/2}.image-pair .small img{height:auto;aspect-ratio:2/3}.empty figure img{height:auto;aspect-ratio:16/10}.content-grid img{height:auto;aspect-ratio:4/5}}
@media(max-width:700px){.image-pair .large img{aspect-ratio:4/5}.empty figure img{aspect-ratio:4/5}.content-grid figure:nth-child(3) img{aspect-ratio:4/3}}
/* V2: reveal materials while preserving the evening atmosphere. */
img{filter:brightness(1.23) contrast(.96) saturate(.98)}
.hero-photo{filter:brightness(1.3) contrast(.96) saturate(.96)}
.zoom-photo{filter:brightness(1.4) contrast(.94) saturate(.96)}
.object-wide,.object-detail{filter:brightness(1.65) contrast(.92) saturate(.94)}
.empty figure img{filter:brightness(1.45) contrast(.94) saturate(.96)}
.content-grid figure:last-child img,.closing>img{filter:brightness(1.12) saturate(.98)}
.shade{background:linear-gradient(90deg,#090e0c48,transparent 80%),linear-gradient(0deg,#090e0c30,transparent 55%)}
.object .shade{background:linear-gradient(0deg,#090e0c85,transparent 75%)}
.closing .shade{background:linear-gradient(90deg,#090e0c85,transparent 90%)}
.hero-title,.hero-statement,.object-copy,.over-copy{text-shadow:0 2px 20px #0008}
.material-story{padding:0 6% 110px}.material-heading{padding-top:20px;margin-bottom:48px}.material-heading h2{font-size:clamp(30px,3.8vw,56px)}
.material-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:6%;align-items:start}.material-grid figure:nth-child(2){margin-top:100px}.material-grid img{height:auto;aspect-ratio:4/3}.material-grid figure:nth-child(2) img{aspect-ratio:4/5;object-position:58% center}
.quiet-detail{padding:0 12% 110px;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.quiet-detail figure{max-width:480px}.quiet-detail img{height:auto;aspect-ratio:4/5;filter:brightness(1.4) contrast(.94) saturate(.98)}.quiet-detail p{font-size:clamp(22px,2.5vw,36px);letter-spacing:-.04em}
@media(max-width:700px){.material-story{padding-bottom:75px}.material-heading{margin-bottom:32px}.material-grid{grid-template-columns:1fr;gap:32px}.material-grid figure:nth-child(2){margin-top:0;width:78%;margin-left:auto}.quiet-detail{padding:0 6% 75px;grid-template-columns:1fr;gap:12px}.quiet-detail figure{width:80%}.quiet-detail p{font-size:23px;margin-left:15%}}
/* V3: large arrivals settle early so text remains still while reading. */
:root{--motion-distance:90px;--motion-side:45px}
.motion-reveal{--reveal:1;transform:translateY(calc((1 - var(--reveal))*var(--motion-distance)));opacity:calc(.45 + var(--reveal)*.55)}
figure.motion-reveal{transform:translate(calc((1 - var(--reveal))*var(--motion-side)*var(--direction)),calc((1 - var(--reveal))*var(--motion-distance))) scale(calc(.94 + var(--reveal)*.06));transform-origin:center;clip-path:inset(calc((1 - var(--reveal))*7%) 0 0)}
.wide{height:185svh}.zoom-photo{transform:scale(calc(1.03 + var(--travel,0)*.13));transform-origin:60% 50%}
.over-copy,.object-copy{transform:translateY(calc((1 - var(--arrival,1))*100px));opacity:calc(.5 + var(--arrival,1)*.5)}
.object{height:225svh}.object-wide{transform:scale(calc(1 + var(--travel,0)*.09))}
.object-detail{opacity:clamp(0,calc((var(--p,0) - .27)*2.7),1);transform:translateX(calc((1 - var(--travel,0))*6%)) scale(calc(1.18 - var(--travel,0)*.18));clip-path:inset(0 0 0 clamp(0%,calc((.7 - var(--p,0))*190%),100%))}
.closing-copy.motion-reveal{transform:translateY(calc((1 - var(--reveal))*110px)) scale(calc(.94 + var(--reveal)*.06));transform-origin:left center}
@media(max-width:700px){:root{--motion-distance:55px;--motion-side:18px}.wide{height:165svh}.object{height:195svh}.over-copy,.object-copy{transform:translateY(calc((1 - var(--arrival,1))*65px))}.closing-copy.motion-reveal{transform:translateY(calc((1 - var(--reveal))*65px)) scale(calc(.97 + var(--reveal)*.03))}}
@media(prefers-reduced-motion:reduce){.motion-reveal,.over-copy,.object-copy,.closing-copy.motion-reveal,figure.motion-reveal{transform:none!important;opacity:1!important;clip-path:none!important}.wide,.object{height:auto}.object-detail{display:none}}

.project-philosophy{padding:100px max(6vw,24px)}.project-philosophy h2{font-size:clamp(28px,3.8vw,57px);line-height:1.3}.project-compare{display:grid;grid-template-columns:1fr 1fr;margin-top:50px;border-top:1px solid #25272033}.project-compare>div,.project-compare>a{padding:28px 12px 12px 0}.project-compare>a{padding-left:24px;border-left:1px solid #25272033;text-decoration:none;color:inherit}.project-compare span{font-size:11px;letter-spacing:1px}.project-compare strong{display:block;font-size:clamp(54px,7vw,88px);font-weight:400;letter-spacing:-.06em;margin:25px 0 20px;color:#8b703e}.project-compare p{font-size:clamp(13px,1.4vw,16px);line-height:1.7;min-height:48px}.project-compare b{font-size:13px;font-weight:400}.project-compare a:hover b{text-decoration:underline;text-underline-offset:5px}.project-compare a:focus-visible{outline:2px solid #8b703e;outline-offset:6px}@media(max-width:420px){.project-philosophy{padding:76px 22px}.project-compare>a{padding-left:16px}.project-compare span{font-size:9px}.project-compare b{font-size:11px}}
