:root{--ink:#111;--line:#d4d4d4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:#111;background:#fff;font:15px/1.6 Arial,Helvetica,sans-serif}body.modal-open{overflow:hidden}button,input,textarea,select{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer;color:inherit}img{max-width:100%;display:block}:focus-visible{outline:2px solid currentColor;outline-offset:5px}.skip{position:fixed;top:-100px;left:20px;z-index:99;background:#fff;padding:10px}.skip:focus{top:10px}header{height:88px;padding:0 4%;display:flex;align-items:center;justify-content:space-between;background:#fff}.brand{font-size:34px;letter-spacing:5px;line-height:1.1}.brand small{display:block;font-size:7px;letter-spacing:1.2px;margin-top:5px}nav{display:flex;gap:40px;font-size:13px}nav a:last-child{border-bottom:1px solid;padding-bottom:4px}.hero{height:calc(100svh - 88px);min-height:590px;max-height:1100px;position:relative;background:#222;color:#fff;overflow:hidden}.hero>img{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 48%}.shade{position:absolute;inset:0;background:linear-gradient(180deg,#0005,transparent 35%,#0009)}.hero-top,.hero-bottom{position:absolute;left:4%;right:4%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.4px}.hero-top{top:30px}.hero-bottom{bottom:25px}.hero-bottom button{background:none;border:0;color:#fff;font-size:11px;padding:0}.hero-copy{position:absolute;bottom:19%;left:7%;right:7%;display:flex;justify-content:space-between;align-items:end;gap:30px}h1{font-size:clamp(64px,8.6vw,140px);line-height:.97;letter-spacing:-6px;font-weight:400;margin:0}h1 span{color:#ddd}.hero-copy>a{display:flex;align-items:center;gap:28px;font-size:13px}.hero-copy b{border:1px solid #fff8;width:70px;height:70px;border-radius:50%;display:grid;place-items:center;font-size:35px;font-weight:400}.hero-copy>a:hover b{background:#fff;color:#111}.section{padding:100px 7%}.eyebrow{font-size:10px;letter-spacing:2px;margin:0 0 36px;text-transform:uppercase}h2{font-size:clamp(38px,4.5vw,72px);line-height:1.08;letter-spacing:-2px;font-weight:400;margin:0 0 28px}.intro{display:grid;grid-template-columns:1fr 1.6fr;gap:50px}.intro>div{max-width:780px}.lead{font-size:23px;line-height:1.45;letter-spacing:-.5px}.intro p:not(.eyebrow),.method p,.transformation p{color:#666}.microline{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:24px;margin-top:40px;font-size:9px;letter-spacing:1px}.works{background:#eee;padding-top:75px;padding-bottom:70px}.section-title{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:50px}.section-title h2{font-size:48px;margin:0}.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button{border:1px solid #bbb;border-radius:30px;padding:9px 17px;font-size:12px;background:none}.filters .active{background:#111;color:#fff;border-color:#111}.project-stack{display:flex;flex-direction:column;gap:40px}.project-card{position:sticky;top:20px;background:#eee;padding-bottom:15px}.project-card[hidden]{display:none}.project-visual{display:block;border:0;padding:0;width:100%;height:67vh;min-height:400px;max-height:760px;position:relative;overflow:hidden;text-align:left;background:#222;color:#fff}.project-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#0003,transparent 40%,#0007)}.project-visual img{height:100%;width:100%;object-fit:cover;transition:transform .9s}.project-visual:hover img{transform:scale(1.035)}.number,.arrow,.overlay,.image-note{position:absolute;z-index:1}.number{left:30px;top:22px;font-size:10px;letter-spacing:2px}.arrow{right:30px;top:18px;font-size:35px}.overlay{left:35px;bottom:35px;font-size:clamp(35px,4.5vw,68px);line-height:1.05;letter-spacing:-2px}.image-note{right:22px;bottom:18px;font-size:8px;letter-spacing:1px}.project-caption{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 0 10px}.project-caption h3{font-size:23px;font-weight:400;line-height:1.2;margin:0}.project-caption p{font-size:12px;color:#666;margin:6px 0 0}.project-caption>span{font-size:9px;letter-spacing:1.3px}.transformation{display:grid;grid-template-columns:1fr 1.1fr;gap:8%;align-items:center}.small,.caption{font-size:11px;color:#666}.text-link{display:inline-block;border-bottom:1px solid;padding-bottom:7px;margin-top:20px;font-size:13px}.comparison{height:630px;max-height:80vh;position:relative;overflow:hidden;background:#ddd}.comparison>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.before-image{clip-path:inset(0 calc(100% - var(--split)) 0 0)}.divider{position:absolute;left:var(--split);top:0;bottom:0;border-left:2px solid #fff;pointer-events:none}.divider span{position:absolute;top:50%;left:-23px;width:44px;height:44px;background:#fff;border-radius:50%;display:grid;place-items:center;font-size:22px;box-shadow:0 1px 15px #0004}.comparison input{position:absolute;inset:0;opacity:0;width:100%;height:100%;margin:0;cursor:ew-resize}.comparison:focus-within{outline:3px solid #333;outline-offset:5px}.label-before,.label-after{position:absolute;top:18px;z-index:1;background:white;padding:4px 9px;font-size:9px;letter-spacing:1px;pointer-events:none}.label-before{left:15px}.label-after{right:15px}.services{background:#151515;color:#fff}.services h2{margin-bottom:50px}details{border-top:1px solid #555;padding:25px 0}summary{display:flex;align-items:center;gap:35px;font-size:clamp(23px,3vw,40px);line-height:1.3;list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}summary span{font-size:10px;color:#aaa}summary b{margin-left:auto;font-weight:300;font-size:32px;transition:transform .2s}details[open] summary b{transform:rotate(45deg)}details p{color:#aaa;margin-left:50px;max-width:660px}.method{background:#f3f3f3;display:grid;grid-template-columns:1fr 1fr;gap:10%}.architect{margin:35px 0;color:#111!important}.architect small{color:#777;font-size:12px}.method ol{list-style:none;padding:0;margin:40px 0 0}.method li{display:flex;gap:35px;border-top:1px solid #ccc;padding:16px 0}.method li>span{font-size:10px;color:#777}.method h3{margin:0;font-size:18px;font-weight:400}.method li p{margin:3px 0 0;font-size:12px}footer{background:#111;color:white}footer h2{font-size:clamp(55px,7.6vw,115px);letter-spacing:-4px;margin-bottom:65px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:15%}form label{display:block;font-size:12px;margin:20px 0 10px}select,textarea{width:100%;padding:14px 0;color:#fff;background:#111;border:0;border-bottom:1px solid #555;border-radius:0;resize:vertical}.send{width:100%;background:white;color:#111;border:0;padding:17px 20px;margin-top:25px;text-align:left}.send:hover{background:#ddd}form small{display:block;color:#aaa;font-size:10px;margin-top:12px}.contact-links{display:flex;flex-direction:column;justify-content:center;align-items:start;gap:20px;font-size:17px}.contact-links span{font-size:12px;color:#888;margin-top:25px}.footer-bottom{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:90px;padding-top:30px;border-top:1px solid #444;font-size:9px;letter-spacing:1px;color:#999}.footer-bottom>a{font-size:70px;letter-spacing:8px;line-height:1;color:#fff}dialog{border:0;padding:0;color:#111;background:#fff}dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}#project-dialog{width:94vw;max-width:1400px;height:94vh;max-height:94vh}#project-dialog[open]{animation:slide-in .35s ease-out}.dialog-top{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;background:#fff;z-index:2;border-bottom:1px solid #ddd;padding:20px 5%;font-size:11px;letter-spacing:1px}.dialog-top button,#close-lightbox{background:none;border:0;padding:8px;font-size:13px}.dialog-content{padding:55px 6%}.dialog-content h2{font-size:clamp(40px,5vw,75px)}#project-location{color:#777;font-size:13px}.scope{border-top:1px solid #ddd;padding-top:20px;margin:30px 0;font-size:11px}.modal-gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px}.modal-gallery figure{margin:0}.modal-gallery figure:first-child{grid-column:1/-1}.modal-gallery button{padding:0;border:0;width:100%;background:#eee;cursor:zoom-in}.modal-gallery img{width:100%;height:500px;object-fit:contain}.modal-gallery figure:first-child img{height:65vh;object-fit:cover}.modal-gallery figcaption{font-size:11px;color:#777;margin-top:8px}#next-project{font-size:22px;margin-top:45px;padding:20px 0;background:none;border:0;border-top:1px solid #ccc;width:100%;text-align:left}#lightbox{background:#111;color:white;max-width:96vw;max-height:96vh;padding:14px}#close-lightbox{display:block;color:white;margin-left:auto}#lightbox img{max-height:80vh;max-width:90vw;object-fit:contain;margin:auto}#lightbox p{font-size:11px;margin:8px 0}.reveal{animation:reveal .8s ease-out both}@keyframes reveal{from{opacity:.3;transform:translateY(20px)}to{opacity:1;transform:none}}@keyframes slide-in{from{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}
@media(max-width:760px){header{height:75px;padding:0 6%}.brand{font-size:27px}nav{gap:18px;font-size:11px}nav a:nth-child(2){display:none}.hero{height:calc(90svh - 75px);min-height:510px}.hero-top{left:6%;right:6%;font-size:8px}.hero-top span:last-child{display:none}.hero-copy{display:block;bottom:23%;left:6%}h1{font-size:65px;letter-spacing:-3px}.hero-copy>a{margin-top:30px;gap:15px}.hero-copy b{width:45px;height:45px;font-size:26px}.hero-bottom{left:6%;right:6%;font-size:8px}.hero-bottom>span{max-width:90px;text-align:right}.section{padding:65px 6%}.intro,.transformation,.method,.contact-grid{grid-template-columns:1fr;gap:30px}.eyebrow{margin-bottom:25px}h2{font-size:41px;letter-spacing:-1.6px}.lead{font-size:20px}.microline{gap:15px;font-size:8px}.section-title{display:block}.section-title h2{font-size:36px}.filters{margin-top:25px}.project-card{position:relative;top:auto}.project-visual{height:65vh;min-height:390px}.project-caption{align-items:start}.project-caption h3{font-size:20px}.project-caption>span{max-width:100px;font-size:8px;text-align:right}.overlay{left:22px;bottom:40px;font-size:42px}.number{left:22px}.arrow{right:22px}.comparison{height:550px}summary{gap:20px}details p{margin-left:35px}.contact-links{margin-top:20px;font-size:16px}footer h2{font-size:57px;letter-spacing:-2px}.footer-bottom{flex-wrap:wrap;margin-top:65px}.footer-bottom>a{font-size:50px}.footer-bottom>span:nth-child(2){display:none}.modal-gallery{grid-template-columns:1fr}.modal-gallery img,.modal-gallery figure:first-child img{height:auto;max-height:65vh;object-fit:contain}.dialog-content{padding:35px 6%}.dialog-content h2{font-size:39px}.dialog-top{padding:14px 5%}#project-dialog{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh}.scope{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.project-card{position:relative;top:auto}}
