:root{--ink:#111918;--paper:#f1eee5;--blue:#79bff2;--blue-deep:#2355dd;--red:#f0442f;--steel:#c8d1d0;--line:rgba(17,25,24,.28)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit}a:focus-visible{outline:3px solid var(--red);outline-offset:4px}.masthead{align-items:center;background:var(--paper);border-bottom:1px solid var(--ink);display:grid;grid-template-columns:1fr 1fr 1fr;height:76px;padding:0 3vw;position:relative;z-index:10}.nameplate{font-size:18px;font-weight:800;letter-spacing:-.055em;text-decoration:none}.nameplate span{color:var(--blue-deep)}.header-axis{font-size:10px;font-weight:700;justify-self:center;letter-spacing:.14em}.masthead nav{display:flex;gap:34px;justify-self:end}.masthead nav a,footer a{font-size:11px;font-weight:800;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}.masthead nav a:hover,footer a:hover{color:var(--red)}
.hero{background:var(--ink);color:white;display:grid;grid-template-columns:7fr 5fr;min-height:calc(100vh - 76px);overflow:hidden;position:relative}.hero-grid{background-image:linear-gradient(55deg,transparent 49.4%,rgba(121,191,242,.42) 49.7%,rgba(121,191,242,.42) 50.3%,transparent 50.6%),linear-gradient(-55deg,transparent 49.4%,rgba(121,191,242,.22) 49.7%,rgba(121,191,242,.22) 50.3%,transparent 50.6%);background-size:160px 220px;inset:0 37% 0 0;opacity:.55;position:absolute}.hero-copy{align-self:center;padding:7vw 0 8vw 4vw;position:relative;z-index:2}.overline{font-size:10px;font-weight:800;letter-spacing:.18em;margin:0 0 36px}.hero h1{font-size:clamp(62px,8.1vw,128px);font-weight:600;letter-spacing:-.075em;line-height:.79;margin:0;position:relative}.hero h1 em{color:var(--blue);font-family:Georgia,"Times New Roman",serif;font-weight:400}.hero-intro{font-size:clamp(16px,1.35vw,20px);line-height:1.55;margin:58px 0 0 32%;max-width:500px}.portrait-platform{align-self:center;background:var(--blue);clip-path:polygon(14% 0,100% 0,100% 84%,83% 100%,0 100%,0 16%);margin:5vw 4vw 5vw -2vw;padding:1px;position:relative;z-index:3}.portrait-cut{background:#58aff0;clip-path:polygon(14% 0,100% 0,100% 100%,0 100%,0 16%);height:min(59vh,620px);overflow:hidden}.portrait-cut img{height:100%;object-fit:cover;object-position:center 36%;width:100%}.portrait-caption{align-items:end;background:var(--blue-deep);color:white;display:flex;font-size:9px;font-weight:800;justify-content:space-between;letter-spacing:.12em;line-height:1.45;min-height:82px;padding:18px 24px;text-transform:uppercase}.portrait-caption span:last-child{text-align:right}.down-link{align-items:center;background:var(--red);bottom:0;display:flex;font-size:10px;font-weight:800;gap:32px;justify-content:space-between;left:0;letter-spacing:.15em;padding:22px 4vw;text-decoration:none;width:230px;z-index:4}.down-link b{font-size:20px}.down-link:hover{background:white;color:var(--ink)}
.metrics{background:var(--steel);border-bottom:1px solid var(--ink);display:grid;grid-template-columns:repeat(3,1fr);margin-left:8vw;position:relative}.metrics:before{background:var(--steel);clip-path:polygon(100% 0,100% 100%,0 100%);content:"";left:-8vw;position:absolute;top:0;width:8vw;height:100%}.metrics div{align-items:end;display:grid;gap:20px;grid-template-columns:auto 1fr;min-height:165px;padding:36px}.metrics div+div{border-left:1px solid var(--ink)}.metrics b{font-family:Georgia,"Times New Roman",serif;font-size:58px;font-weight:400;letter-spacing:-.06em;line-height:.8}.metrics span{font-size:10px;font-weight:800;letter-spacing:.11em;line-height:1.5;text-transform:uppercase}
.about{display:grid;grid-template-columns:1fr 4fr;padding:120px 4vw 140px;position:relative}.section-code{font-size:38px;font-weight:500;letter-spacing:-.05em;line-height:.7}.section-code span{font-size:9px;font-weight:800;letter-spacing:.15em}.about-statement{background:var(--blue);clip-path:polygon(5% 0,100% 0,95% 100%,0 100%);margin-right:-4vw;padding:70px 10vw 78px 8vw}.about-statement p{font-family:Georgia,"Times New Roman",serif;font-size:clamp(42px,5.3vw,78px);letter-spacing:-.05em;line-height:1.03;margin:0;max-width:1050px}.about-statement em{color:var(--blue-deep);font-weight:400}.about-body{display:grid;gap:34px;grid-column:2;grid-template-columns:repeat(3,1fr);padding:85px 4vw 72px 8vw}.about-body p{font-size:16px;line-height:1.72;margin:0}.disciplines{border-bottom:1px solid var(--ink);border-top:1px solid var(--ink);display:grid;grid-column:1/3;grid-template-columns:repeat(3,1fr);margin-top:20px}.disciplines span{font-size:10px;font-weight:800;letter-spacing:.12em;padding:20px;text-align:center}.disciplines span:nth-child(n+4){border-top:1px solid var(--ink)}.disciplines span:not(:nth-child(3n+1)){border-left:1px solid var(--ink)}
.selected-work{background:var(--ink);color:white;overflow:hidden;padding:120px 4vw 145px;position:relative}.selected-work:before{background-image:linear-gradient(53deg,transparent 49.5%,rgba(121,191,242,.18) 49.7%,rgba(121,191,242,.18) 50.3%,transparent 50.5%),linear-gradient(-53deg,transparent 49.5%,rgba(121,191,242,.1) 49.7%,rgba(121,191,242,.1) 50.3%,transparent 50.5%);background-size:190px 260px;content:"";inset:0;position:absolute}.work-header{display:grid;grid-template-columns:1fr 4fr;position:relative}.section-code.light{color:var(--blue)}.work-header h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(52px,7vw,104px);font-weight:400;letter-spacing:-.06em;line-height:.87;margin:0 0 95px}.work-stack{margin:0 auto;max-width:1280px;position:relative}.project{background:var(--paper);color:var(--ink);display:grid;grid-template-columns:85px 1fr;min-height:335px;position:relative}.project:before{border-left:1px solid var(--ink);content:"";height:100%;left:85px;position:absolute}.project-index{font-family:Georgia,"Times New Roman",serif;font-size:27px;padding:28px 22px}.project-copy{display:flex;flex-direction:column;padding:35px 40px}.project-copy>p{font-size:9px;font-weight:800;letter-spacing:.15em;margin:0}.project h3{font-family:Georgia,"Times New Roman",serif;font-size:clamp(34px,4.2vw,64px);font-weight:400;letter-spacing:-.045em;line-height:1.02;margin:28px 0 40px;max-width:850px}.project-bottom{align-items:end;border-top:1px solid var(--ink);display:grid;gap:50px;grid-template-columns:1fr auto;margin-top:auto;padding-top:22px}.project-bottom>span{font-size:14px;line-height:1.55;max-width:650px}.project-bottom a{font-size:10px;font-weight:800;letter-spacing:.12em;text-decoration:none;text-transform:uppercase}.project-bottom a:hover{text-decoration:underline;text-underline-offset:5px}.p1{background:var(--blue);clip-path:polygon(4% 0,100% 0,100% 100%,0 100%,0 12%);margin-right:8vw}.p2{background:var(--steel);margin:-1px 0 0 11vw}.p3{background:var(--paper);clip-path:polygon(0 0,100% 0,100% 88%,96% 100%,0 100%);margin:-1px 6vw 0 4vw}
.contact{background:var(--red);display:grid;grid-template-columns:1fr 4fr;min-height:80vh;overflow:hidden;padding:110px 4vw;position:relative}.contact-brace{background-image:linear-gradient(55deg,transparent 48.8%,rgba(17,25,24,.85) 49%,rgba(17,25,24,.85) 51%,transparent 51.2%),linear-gradient(-55deg,transparent 48.8%,rgba(17,25,24,.85) 49%,rgba(17,25,24,.85) 51%,transparent 51.2%);background-size:230px 300px;bottom:-15%;opacity:.45;position:absolute;right:-5%;top:-15%;width:48%}.contact-copy{position:relative}.contact-copy>p{font-size:14px;font-weight:700;letter-spacing:.03em;margin:0 0 35px}.contact h2{font-size:clamp(78px,13vw,190px);font-weight:600;letter-spacing:-.085em;line-height:.7;margin:0}.contact h2 em{font-family:Georgia,"Times New Roman",serif;font-weight:400}.contact-copy>a{border-bottom:2px solid var(--ink);display:flex;font-size:11px;font-weight:800;justify-content:space-between;letter-spacing:.15em;margin-top:95px;max-width:430px;padding-bottom:14px;text-decoration:none}.contact-copy>a:hover{color:white;border-color:white}footer{align-items:center;background:var(--ink);color:white;display:flex;justify-content:space-between;padding:32px 4vw}footer>span{font-size:10px;letter-spacing:.14em}
@media(max-width:850px){.masthead{grid-template-columns:1fr auto}.header-axis{display:none}.masthead nav{gap:18px}.hero{display:block;min-height:auto;padding-bottom:90px}.hero-grid{inset:0}.hero-copy{padding:90px 20px 55px}.hero h1{font-size:clamp(55px,16vw,100px)}.hero-intro{margin:45px 0 0;max-width:520px}.portrait-platform{margin:0 20px 0 25vw}.portrait-cut{height:52vh;min-height:390px}.down-link{display:none}.metrics{grid-template-columns:1fr;margin-left:20px}.metrics:before{display:none}.metrics div{min-height:120px}.metrics div+div{border-left:0;border-top:1px solid var(--ink)}.about{display:block;padding:90px 20px}.section-code{margin-bottom:45px}.about-statement{clip-path:polygon(7% 0,100% 0,93% 100%,0 100%);margin:0 -20px;padding:55px 35px}.about-body{display:grid;grid-column:auto;grid-template-columns:1fr;padding:55px 0}.disciplines{grid-template-columns:1fr 1fr}.disciplines span:nth-child(n){border-bottom:0;border-left:0;border-top:1px solid var(--ink)}.disciplines span:nth-child(even){border-left:1px solid var(--ink)}.selected-work{padding:90px 20px}.work-header{display:block}.work-header h2{margin-bottom:60px}.project{grid-template-columns:55px 1fr}.project:before{left:55px}.project-index{font-size:20px;padding:24px 14px}.project-copy{padding:28px 22px}.project-bottom{display:block}.project-bottom a{display:block;margin-top:24px}.p1,.p2,.p3{margin:-1px 0 0}.contact{display:block;min-height:70vh;padding:90px 20px}.contact-brace{width:70%}footer{padding:28px 20px}}
@media(max-width:520px){.masthead nav a:first-child{display:none}.nameplate{font-size:16px}.portrait-platform{margin-left:15vw}.portrait-caption{padding:15px}.portrait-caption span:last-child{display:none}.metrics div{padding:28px 18px}.metrics b{font-size:48px}.work-header h2{font-size:55px}.project h3{font-size:32px}.contact h2{font-size:78px}footer .nameplate{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Compact identity treatment */
.masthead{grid-template-columns:1fr auto}
.hero{grid-template-columns:minmax(0,1fr) auto}
.portrait-platform{margin-left:1vw;width:clamp(155px,17vw,230px)}
.portrait-cut{height:clamp(220px,28vw,350px)}
footer .nameplate{text-transform:none}

@media(max-width:850px){.portrait-platform{margin:0 20px 0 auto;width:clamp(145px,34vw,220px)}.portrait-cut{height:clamp(215px,50vw,335px)}}
