:root{--bg:#f7f7f3;--ink:#232522;--muted:#747772;--line:#d8dbd4;--accent:#b74430}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font-family:Arial,'Malgun Gothic',sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}header{height:110px;margin:0 3.4vw;display:flex;align-items:center;border-bottom:1px solid var(--line);gap:36px}.brand img{width:178px;height:auto;display:block}.brand-note{font-size:10px;line-height:1.7;color:var(--muted)}nav{margin-left:auto;display:flex;gap:40px;font-size:13px}nav sup{font-size:9px;color:var(--muted)}nav .active{border-bottom:1px solid;padding:6px 0}main{padding:0 3.4vw}.intro{display:flex;align-items:flex-end;justify-content:space-between;padding:60px 0 45px}.eyebrow{font-size:10px;letter-spacing:1.8px;margin:0 0 19px;display:block}.eyebrow i{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;margin-right:8px}h1{font-size:clamp(60px,7.5vw,116px);font-weight:400;letter-spacing:-.065em;line-height:1;margin:0}h1 span{color:var(--accent)}.intro-copy{font-size:13px;line-height:1.9;letter-spacing:-.04em;margin:0 0 8px}.archive-bar{border-top:1px solid var(--line);padding:19px 0;display:flex;justify-content:space-between;align-items:center;font-size:12px}.archive-bar small{margin-left:8px;color:var(--muted)}.archive-bar label{display:flex;gap:12px;align-items:center}.archive-bar input{border:0;background:none;width:150px;font-size:12px;padding:4px;color:var(--ink)}.grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:34px 18px}.photo{position:relative;overflow:hidden;aspect-ratio:4/3;background:#e5e6df}.photo img{height:100%;width:100%;object-fit:cover;transition:transform .65s}.project-card:hover img{transform:scale(1.04)}.open{position:absolute;right:12px;bottom:12px;width:32px;height:32px;display:grid;place-items:center;background:var(--bg);border-radius:50%;opacity:0;transform:translateY(8px);transition:.25s}.project-card:hover .open,.project-card:focus-visible .open{opacity:1;transform:none}.card-caption{display:flex;justify-content:space-between;gap:12px;padding-top:12px;align-items:baseline}.card-caption h2{font-size:13px;font-weight:400;line-height:1.5;margin:0}.card-caption>span{font-size:10px;color:var(--muted);flex-shrink:0}.studio{margin:100px 0 70px;border-top:1px solid var(--line);padding-top:46px;display:grid;grid-template-columns:1fr 1fr}.studio h2{font-weight:400;font-size:clamp(27px,3.5vw,52px);letter-spacing:-.06em;line-height:1.45;margin:0 0 34px}.studio p{max-width:510px;font-size:13px;line-height:2;word-break:keep-all}footer{margin:0 3.4vw;padding:32px 0;display:flex;gap:35px;align-items:center;border-top:1px solid var(--line)}footer img{width:110px}footer span{font-size:10px;line-height:1.8;color:var(--muted)}footer a{margin-left:auto;font-size:11px}footer small{font-size:9px;color:var(--muted)}.back{display:inline-block;margin:35px 0 50px;font-size:12px}.project-title{display:flex;justify-content:space-between;gap:24px;align-items:end;padding-bottom:40px;border-bottom:1px solid var(--line)}.project-title h1{font-size:clamp(40px,6vw,90px);max-width:1000px;line-height:1.1}.project-title>span{color:var(--muted);font-size:13px}.project-info{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;padding:45px 0 60px}.narrative p{font-size:14px;line-height:2.1;margin:0 0 18px;word-break:keep-all}.project-info dl{margin:0;font-size:12px}.project-info dl div{display:grid;grid-template-columns:95px 1fr;gap:15px;padding:10px 0;border-bottom:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0;line-height:1.7}.gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;align-items:start}.gallery-image{display:block;padding:0;margin:0;border:0;background:none;text-align:left;cursor:zoom-in;min-width:0}.gallery-image.wide{grid-column:1/-1}.gallery-image img{width:100%;height:auto;display:block}.gallery-image span{display:block;margin:10px 0 15px;font-size:10px;color:var(--muted)}.next{display:grid;grid-template-columns:1fr 2fr auto;align-items:center;gap:20px;border-top:1px solid var(--line);padding:45px 0;margin-top:60px}.next span{font-size:10px;letter-spacing:1px}.next strong{font-size:clamp(24px,4vw,55px);font-weight:400;letter-spacing:-.04em}.next b{font-size:40px;font-weight:400}.lightbox{border:0;padding:55px 15px 15px;background:#171916;width:96vw;max-width:1600px;height:95vh;max-height:95vh}.lightbox::backdrop{background:#000d}.lightbox img{width:100%;height:100%;object-fit:contain}.close{position:absolute;right:20px;top:18px;background:none;border:0;color:white;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}[hidden]{display:none!important}.empty{padding:40px;text-align:center;font-size:14px}
@media(min-width:1800px){main,header,footer{max-width:1800px;margin-left:auto;margin-right:auto}}@media(max-width:1000px){.grid{grid-template-columns:repeat(3,minmax(0,1fr))}.brand-note{display:none}.intro-copy{max-width:220px}.project-info{gap:6%}}@media(max-width:650px){header{height:84px;margin:0 20px}.brand img{width:135px}nav{gap:22px;font-size:12px}main{padding:0 20px}.intro{padding:34px 0 28px;display:block}.intro-copy{margin:22px 0 0;max-width:none;font-size:12px}h1{font-size:66px}.eyebrow{font-size:9px}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 12px}.card-caption{gap:5px;display:block}.card-caption h2{font-size:12px}.card-caption>span{font-size:9px;display:block;margin-top:4px}.open{display:none}.photo{aspect-ratio:1/1}.archive-bar input{width:125px}.studio{grid-template-columns:1fr;gap:20px;margin:60px 0 45px}.studio h2{font-size:32px}footer{margin:0 20px;gap:20px;flex-wrap:wrap}footer img{width:90px}footer small{width:100%}.back{margin:25px 0 35px}.project-title{padding-bottom:28px}.project-title h1{font-size:44px;overflow-wrap:anywhere}.project-info{grid-template-columns:1fr;gap:20px;padding:28px 0 40px}.narrative p{font-size:13px}.gallery{gap:14px}.gallery-image span{font-size:9px}.next{grid-template-columns:1fr auto;gap:15px}.next span{grid-column:1/-1}.next strong{font-size:26px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.intro .phone-title{font-size:clamp(21px,3.1vw,48px);letter-spacing:-.055em;white-space:nowrap}@media(max-width:650px){.intro .phone-title{font-size:clamp(16px,5vw,27px)}}
footer span{word-break:keep-all;line-height:1.9}@media(max-width:650px){footer span{flex:1;min-width:0;font-size:10px}footer a{margin-left:0}}
.brand{display:flex;flex-direction:column;align-items:center;gap:5px;flex-shrink:0}.brand-caption{display:block;font-size:11px;line-height:1.4;letter-spacing:.04em;white-space:nowrap}@media(max-width:650px){.brand{gap:3px}.brand-caption{font-size:10px;letter-spacing:0}}
