@font-face{font-family:DM;src:url('assets/sans-regular.ttf') format('truetype');font-weight:400;font-display:swap}@font-face{font-family:DM;src:url('assets/sans-medium.ttf') format('truetype');font-weight:500 700;font-display:swap}@font-face{font-family:Italiana;src:url('assets/display.ttf') format('truetype');font-weight:400;font-display:swap}
:root{--ink:#252820;--paper:#f4f1e9;--white:#fffdf7;--gold:#b7a177;--muted:#696b61;--line:#d7d5ca;--serif:'Italiana',Georgia,serif;--sans:'DM',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit}button,a,summary{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%}p{line-height:1.65;margin:0}h1,h2,h3,p{font-weight:400}h1,h2,h3{margin:0}h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:1.03}h2{font-size:clamp(44px,5.3vw,82px)}em{font-style:normal;color:var(--muted)}section{scroll-margin-top:90px}.section-pad{padding:100px max(5.5vw,24px)}.eyebrow{font-size:11px;font-weight:500;letter-spacing:.17em;text-transform:uppercase;line-height:1.6}.skip-link{position:fixed;left:16px;top:-100px;z-index:1000;background:var(--paper);color:var(--ink);padding:14px}.skip-link:focus{top:12px}:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.site-header{height:96px;padding:14px 5.5vw;display:flex;align-items:center;justify-content:space-between;background:var(--ink);color:var(--white);gap:32px;position:relative;z-index:20}.brand{display:block;width:178px;flex-shrink:0}.brand img{width:100%;height:auto}.desktop-nav{display:flex;gap:38px;margin-left:auto;margin-right:5vw;font-size:12px}.desktop-nav a{position:relative;padding:12px 0}.desktop-nav a:after,.text-link:after{content:'';position:absolute;height:1px;bottom:4px;left:0;right:0;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.desktop-nav a:hover:after,.text-link:hover:after{transform:scaleX(1)}.header-cta{font-size:12px;display:flex;align-items:center;gap:48px;border-bottom:1px solid #7b7f70;padding:13px 0}.header-cta span{font-size:24px;color:var(--gold)}.menu-toggle,.mobile-menu{display:none}.hero{position:relative;height:min(760px,calc(100svh - 96px));min-height:600px;overflow:hidden;background:var(--ink);color:var(--white)}.hero picture,.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-fit:cover;object-position:center 42%;animation:hero-drift 1.7s cubic-bezier(.19,1,.22,1) both}.hero-shade{background:linear-gradient(90deg,rgba(14,19,12,.56),rgba(14,19,12,0) 78%),linear-gradient(0deg,rgba(14,19,12,.62),rgba(14,19,12,0) 68%)}.hero-content{position:absolute;left:5.5vw;right:5.5vw;bottom:66px}.hero .eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:27px;color:#e5e8dc}.tiny-line{height:1px;width:34px;background:var(--gold)}h1{font-size:clamp(62px,7.8vw,118px);max-width:1060px;line-height:.99;letter-spacing:-.025em}h1 em{color:var(--white)}.hero-bottom{display:flex;align-items:center;gap:36px;margin-top:37px}.hero-bottom p{font-size:13px;color:#eeeee6;line-height:1.65}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:54px;padding:16px 24px;font-size:12px;transition:background .25s,transform .25s}.button span{font-size:22px;line-height:1}.button:hover{transform:translateY(-3px)}.button-light{color:var(--ink);background:var(--paper)}.button-light:hover{background:white}.hero-caption{position:absolute;right:5.5vw;bottom:66px;display:grid;grid-template-columns:1fr 20px;gap:5px 20px;min-width:160px;border-top:1px solid #aaa99c;padding-top:14px;font-size:12px}.hero-caption>span:first-child{grid-column:1;font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:#e3e4dd}.hero-caption strong{font-weight:400;grid-column:1}.hero-caption>span:last-child{grid-column:2;grid-row:1/3;align-self:center;font-size:22px}.intro{display:grid;grid-template-columns:1fr 2.2fr;gap:50px;padding-top:120px;padding-bottom:112px}.intro>.eyebrow{padding-top:8px}.intro h2{max-width:800px}.intro-copy{display:grid;grid-template-columns:1fr 1.35fr;gap:26px 50px;margin-top:36px;max-width:780px}.intro-copy>p:first-child{font-size:20px;line-height:1.5;max-width:250px}.intro-copy>p:nth-child(2){font-size:14px;color:var(--muted)}.intro-copy .text-link{grid-column:2}.text-link{font-size:12px;display:inline-flex;justify-content:space-between;gap:25px;position:relative;padding:9px 0;align-items:center;width:fit-content}.text-link span{font-size:22px}.projects{padding-top:66px;border-top:1px solid var(--line)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:60px}.section-heading .eyebrow{margin-bottom:18px}.section-heading h2{font-size:clamp(45px,5vw,74px)}.section-heading .text-link{margin-bottom:7px;border-bottom:1px solid var(--line)}.project-grid{display:grid;grid-template-columns:1.45fr 1fr;column-gap:6.3vw;row-gap:85px;align-items:start}.project-visual{width:100%;border:0;background:#e4e0d5;padding:0;display:block;position:relative;overflow:hidden;text-align:left}.project-visual img{width:100%;height:100%;object-fit:cover;transition:transform .9s cubic-bezier(.2,.7,.3,1)}.project-visual:hover img,.project-visual:focus-visible img{transform:scale(1.04)}.project-wide .project-visual{height:430px}.project-tall{margin-top:146px}.project-tall .project-visual{height:490px}.image-action{position:absolute;bottom:20px;left:20px;display:flex;align-items:center;gap:30px;font-size:11px;padding:12px 17px;background:rgba(255,253,247,.93);color:var(--ink)}.image-action>span{font-size:20px;line-height:1}.project-caption{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-top:20px}.project-caption h3{font-family:var(--serif);font-size:33px;letter-spacing:-.025em}.project-caption p{font-size:12px;color:var(--muted);margin-top:5px}.project-kind{font-size:9px;text-transform:uppercase;letter-spacing:.1em;line-height:1.6;padding-top:7px;max-width:130px;text-align:right}.project-tall .project-caption{display:block}.project-tall .project-kind{display:block;text-align:left;margin-top:10px;max-width:none}.project-landscape{margin-top:-78px}.project-landscape .project-visual{height:410px}.project-landscape img{object-position:center 54%}.project-note{padding-top:40px}.note-mark{display:block;color:var(--gold);font-size:62px;line-height:1}.project-note>p{font-family:var(--serif);font-size:40px;line-height:1.2;letter-spacing:-.02em;margin:28px 0 21px}.approach{background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.1fr 1fr;gap:10vw;padding-top:112px;padding-bottom:120px}.approach .eyebrow{color:#c2b395;margin-bottom:29px}.approach h2{font-size:clamp(43px,4.5vw,70px);line-height:1.08}.approach h2 em{color:#b9bdac}.approach-title>p:last-child{color:#c2c5b9;font-size:14px;max-width:355px;margin-top:30px}.service-list{padding-top:20px}details{border-top:1px solid #626755}details:last-child{border-bottom:1px solid #626755}summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:25px 0;font-size:17px;cursor:pointer}summary::-webkit-details-marker{display:none}summary span{font-size:28px;font-weight:400;color:#c5b38d;line-height:1;transition:transform .25s}details[open] summary span{transform:rotate(45deg)}details>div{padding:0 30px 27px 0}details p{font-size:13px;color:#c2c5b9}details a{display:inline-block;color:#efeee7;margin-top:16px;font-size:11px;text-decoration:underline;text-underline-offset:5px}.people{display:grid;grid-template-columns:1.08fr 1fr;gap:8vw;align-items:center;padding-top:120px;padding-bottom:120px}.people-image img{width:100%;height:560px;object-fit:cover;object-position:32% center}.people-image>span{display:block;font-size:10px;color:var(--muted);padding-top:13px}.people-copy .eyebrow{margin-bottom:28px}.people-copy h2{font-size:clamp(44px,4.5vw,68px);margin-bottom:30px}.people-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:385px;margin-bottom:18px}.people-copy .text-link{margin-top:14px;border-bottom:1px solid var(--line)}.testimonial{background:#e8e6da;position:relative;text-align:center;padding-top:82px;padding-bottom:76px}.testimonial .eyebrow{color:var(--muted)}blockquote{font-family:var(--serif);font-size:clamp(32px,3.8vw,58px);line-height:1.15;letter-spacing:-.035em;max-width:970px;margin:35px auto 31px}.quote-credit{display:flex;justify-content:center;align-items:center;gap:40px}.quote-credit p{font-size:12px}.quote-credit p span{display:block;font-size:10px;color:var(--muted)}.quote-credit .text-link{font-size:11px;border-bottom:1px solid #b8bcae}.quote-source{font-size:9px;color:var(--muted);margin-top:25px}.contact{display:grid;grid-template-columns:1.3fr 1fr;gap:9vw;align-items:center;padding-top:115px;padding-bottom:120px}.contact .eyebrow{margin-bottom:25px}.contact h2{font-size:clamp(52px,6vw,88px)}.contact-links{max-width:360px;margin-left:auto;width:100%}.contact-links>p:first-child{font-size:15px;margin-bottom:27px}.button-dark{background:var(--ink);color:var(--paper);width:100%;gap:20px}.button-dark:hover{background:#404536}.phone-link{display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-size:20px;border-bottom:1px solid var(--line)}.contact-note{font-size:10px;color:var(--muted);margin-top:16px}.footer{background:var(--ink);color:var(--paper);padding-top:56px;padding-bottom:25px}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-bottom:51px}.footer-brand{width:200px}.footer-top>p{font-size:11px;color:#bdc1b5}.footer-top>.text-link{font-size:11px}.footer-bottom{display:flex;justify-content:space-between;gap:24px;border-top:1px solid #505747;padding-top:23px;font-size:9px;color:#afb5a5;line-height:1.6}dialog{width:min(1120px,94vw);padding:0;border:0;background:var(--paper);color:var(--ink);max-height:90svh;overflow:auto}dialog::backdrop{background:rgba(11,15,10,.82);backdrop-filter:blur(6px)}.dialog-close{position:sticky;top:0;display:flex;justify-content:flex-end;gap:15px;align-items:center;width:100%;height:48px;border:0;border-bottom:1px solid var(--line);background:var(--paper);font-size:11px;padding:8px 22px;z-index:1}.dialog-close span{font-size:27px}.dialog-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:0}.gallery-stage{background:#deded5}.gallery-stage>img{width:100%;height:550px;object-fit:contain}.gallery-controls{padding:15px 25px;display:flex;align-items:center;justify-content:center;gap:28px;min-height:62px}.gallery-controls button{width:36px;height:36px;border:1px solid #a7ac9c;background:transparent}.gallery-controls[hidden]{display:none}.gallery-controls>span{font-size:11px}.dialog-copy{padding:50px 32px}.dialog-copy h2{font-size:50px;margin:22px 0}.dialog-copy>p:not(.eyebrow){font-size:13px;color:var(--muted)}.dialog-copy .text-link{margin-top:24px;border-bottom:1px solid var(--line)}.dialog-copy .dialog-source-note{font-size:10px!important;margin-top:48px}.reveal-ready{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.reveal-ready.in-view{opacity:1;transform:translateY(0)}@keyframes hero-drift{from{transform:scale(1.035)}to{transform:scale(1)}}
@media(min-width:1600px){.section-pad{padding-left:calc((100vw - 1440px)/2);padding-right:calc((100vw - 1440px)/2)}.hero-content{left:calc((100vw - 1440px)/2)}}
@media(max-width:1000px){.site-header{padding-left:4vw;padding-right:4vw}.desktop-nav{gap:22px;margin-right:2vw}.hero{min-height:600px}.hero-caption{display:none}.hero-content{left:5vw;right:5vw}.intro{grid-template-columns:1fr 2.5fr;gap:30px}.intro-copy{grid-template-columns:1fr;gap:22px}.intro-copy>p:first-child{max-width:430px}.intro-copy .text-link{grid-column:1}.project-grid{column-gap:5vw}.project-wide .project-visual{height:360px}.project-tall .project-visual{height:420px}.project-landscape .project-visual{height:320px}.project-caption{display:block}.project-kind{display:block;max-width:none;text-align:left;margin-top:8px}.approach{gap:6vw}.people{gap:5vw}.people-image img{height:480px}.footer-top{flex-wrap:wrap}.footer-top>.text-link{margin-left:auto}}
@media(max-width:700px){html{scroll-padding-top:75px}.section-pad{padding:70px 24px}.site-header{height:80px;padding:10px 24px;gap:18px}.brand{width:145px}.desktop-nav,.header-cta{display:none}.menu-toggle{display:flex;flex-direction:column;gap:6px;padding:12px 4px;background:none;border:0;width:32px;margin-left:auto}.menu-toggle span{display:block;width:24px;height:1px;background:var(--white);transition:transform .25s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}.mobile-menu:not([hidden]){display:flex;flex-direction:column;position:absolute;top:80px;left:0;right:0;background:var(--ink);padding:16px 24px 30px;border-top:1px solid #555e48;gap:0}.mobile-menu a{padding:16px 0;border-bottom:1px solid #555e48;font-family:var(--serif);font-size:29px}.hero{height:calc(90svh - 80px);min-height:565px;max-height:760px}.hero-image{object-position:51% 35%}.hero-shade{background:linear-gradient(0deg,rgba(12,18,10,.8),rgba(12,18,10,.11) 88%)}.hero-content{left:24px;right:24px;bottom:36px}.hero .eyebrow{font-size:9px;letter-spacing:.11em;gap:9px;max-width:250px;margin-bottom:21px}.tiny-line{width:20px;flex-shrink:0}h1{font-size:clamp(48px,10.4vw,73px);line-height:1.02;letter-spacing:-.02em}.hero-bottom{display:block;margin-top:27px}.hero-bottom p{font-size:11px;margin-top:19px}.hero-bottom .button{min-height:50px;padding:13px 18px;font-size:11px;gap:47px}.intro{display:block}.intro>.eyebrow{padding:0;margin-bottom:27px}h2{font-size:clamp(39px,8.8vw,56px)}.intro-copy{display:block;margin-top:26px}.intro-copy>p:first-child{font-size:19px;max-width:300px;margin-bottom:20px}.intro-copy>p:nth-child(2){font-size:13px;max-width:440px}.intro-copy .text-link{margin-top:20px}.projects{padding-top:55px}.section-heading{display:block;margin-bottom:32px}.section-heading h2{font-size:clamp(37px,8.5vw,52px)}.section-heading .eyebrow{margin-bottom:16px}.section-heading>.text-link{margin-top:20px}.project-grid{display:flex;flex-direction:column;gap:40px}.project{width:100%;margin:0}.project-wide .project-visual{height:340px}.project-tall .project-visual{height:410px}.project-landscape .project-visual{height:310px}.project-caption{margin-top:15px}.project-caption h3{font-size:30px}.project-caption p{font-size:12px}.project-kind{font-size:8px;margin-top:8px;padding:0}.image-action{bottom:15px;left:15px;font-size:10px;padding:10px 14px}.project-note{border-top:1px solid var(--line);width:100%;padding:25px 0 0;display:grid;grid-template-columns:55px 1fr;gap:20px}.note-mark{font-size:42px}.project-note>p{font-size:29px;margin:0}.project-note .text-link{grid-column:2;gap:10px;font-size:11px}.approach{display:block}.approach .eyebrow{font-size:9px;margin-bottom:25px}.approach h2{font-size:clamp(38px,8.5vw,53px)}.approach-title>p:last-child{font-size:13px;margin-top:23px}.service-list{padding-top:38px}summary{font-size:16px;padding:23px 0}details p{font-size:13px}.people{display:flex;flex-direction:column;gap:43px;align-items:stretch}.people-image img{height:390px;object-position:26% center}.people-copy .eyebrow{margin-bottom:24px}.people-copy h2{font-size:clamp(37px,8.5vw,54px);margin-bottom:24px}.people-copy>p:not(.eyebrow){font-size:13px;max-width:none}.testimonial{padding-top:55px;padding-bottom:50px}blockquote{font-size:35px;line-height:1.16;margin:27px 0}.quote-credit{gap:25px}.quote-credit .text-link{font-size:10px;gap:15px}.quote-source{font-size:8px;margin-top:24px}.contact{display:block}.contact h2{font-size:clamp(48px,11vw,65px)}.contact .eyebrow{font-size:9px;margin-bottom:22px}.contact-links{max-width:none;margin:33px 0 0}.contact-links>p:first-child{font-size:14px}.contact-note{max-width:280px}.footer{padding-top:40px;padding-bottom:23px}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:25px;padding-bottom:33px}.footer-brand{grid-column:1/3;width:175px;margin-bottom:7px}.footer-top>p{font-size:10px}.footer-top>.text-link{margin:0;font-size:10px}.footer-bottom{flex-direction:column;gap:8px;font-size:8px}.dialog-layout{display:block}.gallery-stage>img{height:360px}.dialog-copy{padding:30px 25px}.dialog-copy h2{font-size:43px;margin:17px 0}.dialog-copy .dialog-source-note{margin-top:25px}dialog{width:calc(100vw - 24px);max-height:94svh}.dialog-close{height:46px}.gallery-controls{padding:10px 20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}}

.footer-credentials{display:flex;align-items:center;gap:36px;padding:30px 0;border-top:1px solid #505747}.footer-credentials>img{width:220px;height:auto;flex-shrink:0}.credential-numbers{font-size:12px;color:#bdc1b5}.credential-numbers p+p{margin-top:7px}.footer-credentials>.text-link{margin-left:auto;font-size:11px}.country-acknowledgement{max-width:940px;font-size:12px;line-height:1.8;color:#bdc1b5;margin:0 0 30px}@media(max-width:700px){.footer-credentials{align-items:flex-start;flex-direction:column;gap:22px;padding:28px 0}.footer-credentials>img{width:200px}.footer-credentials>.text-link{margin-left:0}.country-acknowledgement{font-size:11px;margin-bottom:26px}}
