@charset "UTF-8";
:root{--paper:#f5f5f5;--ink:#434343;--line:#d2d2d2;--pad:clamp(20px,4vw,72px)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #434343;outline-offset:6px}p,h1,h2,h3{margin:0}img{display:block;width:100%;height:auto}header{position:absolute;z-index:5;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;padding:25px var(--pad)}.brand{font-size:40px;line-height:1;font-weight:900;letter-spacing:-3px}.brand span{font-size:15px;letter-spacing:0;vertical-align:top}nav{display:flex;gap:35px;font-size:14px}nav a{border-bottom:1px solid transparent;padding:6px 0}nav a:hover{border-color:currentColor}sup{font-size:10px}.skip{position:fixed;top:-100px;left:20px;background:#f5f5f5;padding:15px;z-index:50}.skip:focus{top:15px}.hero{position:relative;min-height:930px;height:120svh;max-height:1300px;padding:135px var(--pad) 30px;overflow:hidden;display:flex;flex-direction:column}.hero-meta{display:flex;justify-content:space-between;line-height:1.4;font-size:14px}.hero h1{position:relative;z-index:1;font-size:clamp(130px,31.8vw,540px);font-weight:900;letter-spacing:-.075em;line-height:.88;margin-top:52px;margin-left:-.025em}.hero h1 span{font-size:.1em;letter-spacing:0;position:absolute;right:0;top:10px}.hero-stage{position:absolute;inset:0;pointer-events:none;z-index:2}.floating{position:absolute;object-fit:cover;box-shadow:0 16px 28px #43434322;will-change:transform}.one{width:19%;left:10%;top:40%;transform:rotate(-11deg)}.two{width:27%;left:37%;top:34%;transform:rotate(7deg)}.three{width:17%;right:11%;top:47%;transform:rotate(-8deg)}.hero-foot{margin-top:auto;display:flex;justify-content:space-between;align-items:end;position:relative;z-index:3;line-height:1.35;font-size:14px}.hero-foot>a{display:flex;align-items:center;gap:15px}.scroll-line{height:40px;width:1px;background:currentColor}.small{font-size:12px}.work{padding:60px var(--pad) 145px}.section-bar{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px;gap:20px;font-size:14px}.section-bar h2{font-weight:400;font-size:14px}.project-grid{display:grid;grid-template-columns:repeat(12,1fr);column-gap:30px;row-gap:90px;padding-top:60px;align-items:start}.p1{grid-column:1/8}.p2{grid-column:9/13;margin-top:180px}.p3{grid-column:2/6}.p4{grid-column:7/13;margin-top:140px}.project-open{display:block;text-align:left;border:0;background:none;padding:0;width:100%}.image-wrap{position:relative;overflow:hidden;background:var(--paper)}.image-wrap img{transition:transform .8s cubic-bezier(.16,1,.3,1)}.project-open:hover img{transform:scale(1.035)}.view{position:absolute;bottom:20px;left:20px;padding:13px 18px;background:var(--paper);border-radius:30px;font-size:14px;transform:translateY(80px);transition:transform .3s}.project-open:hover .view,.project-open:focus-visible .view{transform:translateY(0)}.project-label{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.project-label h3{font-size:clamp(22px,2.4vw,36px);font-weight:500;letter-spacing:-.045em}.project-label span{font-size:13px}.project p{font-size:14px;margin-top:6px;color:#575757}.about{background:var(--ink);color:var(--paper);padding:55px var(--pad) 100px}.about .section-bar{border-color:#606060}.about-grid{display:grid;grid-template-columns:1fr 3fr;gap:40px;margin-top:80px}.eyebrow{font-size:14px;line-height:1.45}.about h2{font-size:clamp(42px,6.4vw,98px);line-height:1;letter-spacing:-.055em;font-weight:500}.about h2 span{color:#a9a9a5}.about-copy{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:850px;margin-top:55px;line-height:1.6}.disciplines{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:40px 0 0}.disciplines li{border:1px solid #666;padding:10px 15px;border-radius:30px;font-size:14px}footer{padding:55px var(--pad) 25px}.contact-title{display:block;font-size:clamp(50px,14.3vw,250px);line-height:1.1;letter-spacing:-.07em;font-weight:800;margin:50px 0 70px;white-space:nowrap}.contact-title span{color:inherit}.contact-title:hover{color:#555}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;font-size:13px}dialog{width:100%;max-width:none;height:100%;max-height:none;margin:0;border:0;padding:0;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#434343}.detail-toolbar{position:sticky;top:0;background:var(--paper);z-index:1;display:flex;justify-content:space-between;align-items:center;padding:20px var(--pad);border-bottom:1px solid var(--line);font-size:14px}.detail-toolbar button,#next-project{background:none;border:1px solid var(--line);border-radius:30px;padding:12px 20px}.detail-content{padding:50px var(--pad) 70px;max-width:1300px;margin:auto}.detail-heading h2{font-size:clamp(46px,8vw,110px);font-weight:600;letter-spacing:-.06em;margin:10px 0}.detail-heading p{margin-bottom:40px}.detail-content>img{max-width:650px;margin:0 auto}.detail-text{display:grid;grid-template-columns:1fr 2fr;gap:30px;margin:50px 0;border-top:1px solid var(--line);padding-top:25px;line-height:1.6}.detail-text h3{font-size:16px;font-weight:400}body.modal-open{overflow:hidden}
@media(min-width:1600px){.hero{min-height:1100px}}@media(max-width:700px){header{padding-top:20px}nav{gap:16px;font-size:13px}.brand{font-size:32px}.hero{min-height:700px;height:95svh;max-height:950px;padding-top:110px}.hero-meta{font-size:12px;gap:15px}.hero-meta p:last-child{max-width:140px}.hero h1{margin-top:50px}.one{width:28%;left:4%;top:44%}.two{width:39%;left:32%;top:39%}.three{width:25%;right:2%;top:51%}.hero-foot{font-size:12px;gap:15px}.hero-foot .small{display:none}.work{padding-top:35px;padding-bottom:75px}.project-grid{display:block;padding-top:35px}.project{margin:0 0 50px}.p2{width:78%;margin-left:auto}.p3{width:78%}.project:last-child{margin-bottom:0}.view{transform:none;bottom:12px;left:12px;padding:9px 13px;font-size:12px}.about{padding-top:35px;padding-bottom:60px}.about-grid{grid-template-columns:1fr;gap:30px;margin-top:40px}.about-copy{grid-template-columns:1fr;gap:20px;margin-top:30px}.about h2{font-size:clamp(39px,8.6vw,60px)}footer{padding-top:35px}.contact-title{margin:45px 0}.footer-bottom{flex-wrap:wrap;gap:18px}.detail-text{grid-template-columns:1fr}.section-bar{font-size:12px}.section-bar h2{font-size:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}.floating{will-change:auto}}
.case-heading{padding:135px var(--pad) 50px}.case-heading h1{font-size:clamp(65px,12vw,190px);line-height:1;letter-spacing:-.07em;font-weight:700;margin:50px 0 30px}.case-meta{display:flex;justify-content:space-between;font-size:14px;gap:20px}.case-image{background:var(--paper);padding:65px var(--pad)}.case-image img{max-width:700px;margin:auto;box-shadow:0 20px 60px #43434311}.case-story{padding:70px var(--pad) 100px}.case-story-grid{display:grid;grid-template-columns:1fr 2fr;gap:50px;margin-top:50px}.case-story h2{font-size:clamp(40px,5vw,80px);line-height:1.05;font-weight:500;letter-spacing:-.05em;max-width:850px}.case-story-grid>div>p{max-width:650px;line-height:1.65;margin-top:35px;font-size:18px}.next-case{background:var(--paper);color:var(--ink);padding:55px var(--pad) 80px}.next-case>span{font-size:14px}.next-case>a{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:35px}.next-case h2{font-size:clamp(45px,7vw,110px);line-height:1.05;font-weight:500;letter-spacing:-.055em}.next-case img{width:18%;max-width:200px;transform:rotate(5deg);transition:transform .4s}.next-case a:hover img{transform:rotate(0)}.next-case a:hover h2{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:12px}
@media(max-width:700px){.case-heading{padding-top:110px;padding-bottom:30px}.case-heading h1{font-size:clamp(50px,13vw,85px);margin:35px 0 25px}.case-meta{font-size:12px;flex-wrap:wrap}.case-image{padding:30px var(--pad)}.case-story{padding-top:35px;padding-bottom:55px}.case-story-grid{grid-template-columns:1fr;gap:30px;margin-top:30px}.case-story-grid>div>p{font-size:16px}.next-case{padding-top:35px;padding-bottom:50px}.next-case>a{gap:15px}.next-case h2{font-size:40px}.next-case img{width:24%}}
