@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Instrument+Serif:ital@0;1&display=swap');
:root{--bg:#090909;--paper:#f1efe8;--muted:#96938c;--panel:#141414;--accent:#b69a73;--line:rgba(241,239,232,.14);--ease:cubic-bezier(.16,1,.3,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}body{margin:0;background:var(--bg);color:var(--paper);font-family:'DM Sans',Arial,sans-serif;overflow-x:hidden}body.lock{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}.wrap{width:min(1420px,calc(100% - 72px));margin:auto}.serif{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400}.kicker{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.progress{position:fixed;top:0;left:0;height:2px;width:0;background:var(--accent);z-index:100}.nav{position:fixed;z-index:80;top:0;width:100%;padding:25px 0;transition:transform .45s var(--ease),background .3s}.nav.scrolled{background:rgba(9,9,9,.72);backdrop-filter:blur(16px)}.nav.hide{transform:translateY(-105%)}.navin{display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:.13em;text-transform:uppercase}.brand{font-weight:600}.navlinks{display:flex;align-items:center;gap:27px}.lang{background:none;border:0;padding:0;cursor:pointer;color:var(--accent);letter-spacing:.13em;text-transform:uppercase}.menu{display:none;background:none;border:0;font-size:11px;letter-spacing:.13em;text-transform:uppercase}
.hero{min-height:100svh;position:relative;display:flex;align-items:flex-end;padding:0 0 8vh;overflow:hidden}.heroGlow{position:absolute;width:55vw;height:55vw;right:-16vw;top:-22vw;background:radial-gradient(circle,rgba(182,154,115,.12),transparent 65%);filter:blur(10px)}.heroGrid{position:absolute;inset:0;opacity:.13;background-image:linear-gradient(var(--line) 1px,transparent 1px),linear-gradient(90deg,var(--line) 1px,transparent 1px);background-size:8vw 8vw;mask-image:linear-gradient(to bottom,black,transparent 78%)}.hero h1{font-size:clamp(62px,9.5vw,154px);line-height:.82;letter-spacing:-.067em;font-weight:300;margin:26px 0 0;max-width:1280px}.hero h1 span{display:block;overflow:hidden}.hero h1 i{display:block;font-style:normal;transform:translateY(110%);animation:intro 1.2s var(--ease) forwards}.hero h1 span:nth-child(2) i{animation-delay:.1s}.hero h1 span:nth-child(3) i{animation-delay:.2s}@keyframes intro{to{transform:none}}.heroFoot{display:flex;justify-content:space-between;align-items:end;margin-top:46px;color:var(--muted);font-size:13px;line-height:1.55}.scrollHint{font-size:10px;letter-spacing:.15em;text-transform:uppercase;display:flex;align-items:center;gap:10px}.scrollHint:before{content:"";width:45px;height:1px;background:var(--accent)}
.statement{min-height:112vh;display:flex;align-items:center;border-top:1px solid var(--line)}.statement p{font-size:clamp(43px,6.3vw,94px);line-height:1;letter-spacing:-.05em;font-weight:300;max-width:1250px;margin:0;color:#50504d}.statement strong{color:var(--paper);font-weight:300}.statement em{color:var(--accent)}
.visualBreak{height:78vh;min-height:620px;position:relative;overflow:hidden;border-block:1px solid var(--line)}.visualBreak .photo{position:absolute;inset:-12%;background:linear-gradient(90deg,rgba(9,9,9,.25),rgba(9,9,9,.05)),url('https://upload.wikimedia.org/wikipedia/commons/9/9f/Black_and_white_facade_%28Unsplash%29.jpg') center 42%/cover no-repeat;filter:grayscale(1) contrast(1.1);transform:scale(1.04)}.visualBreak:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(9,9,9,.8),transparent 50%,rgba(9,9,9,.2))}.visualCopy{position:absolute;z-index:2;bottom:8vh;left:max(36px,calc((100vw - 1420px)/2));max-width:850px}.visualCopy h2{font-size:clamp(50px,7vw,105px);font-weight:300;letter-spacing:-.055em;line-height:.9;margin:15px 0 0}
.section{padding:145px 0}.sectionHead{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin-bottom:70px}.sectionHead p{color:var(--muted);font-size:16px;line-height:1.65;max-width:600px;margin:0}.pillars{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.pillar{padding:42px 35px 55px 0;border-right:1px solid var(--line)}.pillar+.pillar{padding-left:35px}.pillar:last-child{border-right:0}.pillar .n{color:var(--accent);font-size:11px}.pillar h3{font-size:clamp(30px,3.2vw,49px);font-weight:300;letter-spacing:-.04em;line-height:1;margin:90px 0 25px}.pillar p{color:var(--muted);line-height:1.65;margin:0}
.refs{border-top:1px solid var(--line)}.ref{display:grid;grid-template-columns:70px 1fr auto;align-items:center;padding:29px 0;border-bottom:1px solid var(--line);position:relative}.ref>*{position:relative;z-index:1}.ref .num{color:var(--accent);font-size:11px}.ref .name{font-size:clamp(35px,4.5vw,68px);font-weight:300;letter-spacing:-.045em}.ref .meta{color:var(--muted);font-size:12px;text-align:right}
.work{background:#0c0c0c;border-block:1px solid var(--line)}.workGrid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}.case{background:var(--bg);min-height:570px;padding:38px;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;cursor:pointer;border:0;text-align:left}.case:after{content:"";position:absolute;width:440px;height:440px;right:-300px;bottom:-300px;border-radius:50%;background:radial-gradient(circle,rgba(182,154,115,.19),transparent 68%);transition:.7s var(--ease)}.case:hover:after{right:-180px;bottom:-180px}.caseTop{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.15em;text-transform:uppercase}.case h3{font-size:clamp(39px,4vw,64px);line-height:.95;letter-spacing:-.05em;font-weight:300;margin:0;max-width:620px}.caseBottom{display:flex;justify-content:space-between;align-items:end}.caseBottom span:first-child{color:var(--muted);font-size:12px}.arrow{font-size:32px;color:var(--accent);transition:transform .35s}.case:hover .arrow{transform:translate(7px,-7px)}
.metrics{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line)}.metric{padding:58px 30px 58px 0;border-right:1px solid var(--line)}.metric+.metric{padding-left:30px}.metric:last-child{border:0}.metric b{font-size:clamp(52px,6.5vw,94px);font-weight:300;letter-spacing:-.06em}.metric span{display:block;color:var(--muted);margin-top:8px;line-height:1.5}
.journey{position:relative}.timeline{margin-left:20vw;border-left:1px solid var(--line)}.milestone{min-height:48vh;padding:0 0 95px 58px;position:relative}.milestone:before{content:"";position:absolute;left:-4px;top:7px;width:7px;height:7px;border-radius:50%;background:var(--accent)}.year{font-size:11px;letter-spacing:.15em;color:var(--accent)}.milestone h3{font-size:clamp(48px,6.5vw,100px);line-height:.9;letter-spacing:-.055em;font-weight:300;margin:20px 0}.milestone p{color:var(--muted);font-size:17px;line-height:1.65;max-width:600px}
.aboutGrid{display:grid;grid-template-columns:.9fr 1.35fr;gap:7vw;align-items:start}.profilePortrait{margin-top:38px;position:relative;overflow:hidden;aspect-ratio:4/5;background:#111}.profilePortrait img{width:100%;height:100%;object-fit:cover;object-position:50% 28%;filter:grayscale(1) contrast(1.05);display:block;transition:transform 1.2s var(--ease),filter .7s var(--ease)}.profilePortrait:after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(9,9,9,.25),transparent 45%);pointer-events:none}.profilePortrait:hover img{transform:scale(1.025);filter:grayscale(.15) contrast(1.02)}.aboutTitle{font-size:clamp(54px,7vw,108px);line-height:.88;letter-spacing:-.06em;font-weight:300;margin:15px 0}.aboutText{font-size:clamp(22px,2.3vw,35px);line-height:1.35;letter-spacing:-.025em;font-weight:300;margin:0 0 35px}.aboutSmall{color:var(--muted);line-height:1.7;max-width:650px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:36px}.tag{border:1px solid var(--line);padding:10px 13px;border-radius:999px;font-size:11px;color:var(--muted)}
.contact{min-height:90vh;display:flex;align-items:center;border-top:1px solid var(--line)}.contact h2{font-size:clamp(56px,10vw,155px);overflow-wrap:anywhere;line-height:.82;letter-spacing:-.07em;font-weight:300;margin:18px 0 55px}.contactLinks{display:flex;gap:28px;flex-wrap:wrap}.link{display:inline-flex;align-items:center;gap:18px;border-bottom:1px solid var(--accent);padding:0 0 8px;font-size:16px}.footer{padding:30px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.footer a:hover{color:var(--paper)}
.reveal{opacity:0;transform:translateY(32px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.in{opacity:1;transform:none}.cursor{position:fixed;z-index:120;pointer-events:none;width:13px;height:13px;border:1px solid var(--accent);border-radius:50%;transform:translate(-50%,-50%);transition:width .2s,height .2s,background .2s}.cursor.big{width:58px;height:58px;background:rgba(182,154,115,.12)}
.modal{position:fixed;z-index:110;inset:0;background:var(--paper);color:#0b0b0b;transform:translateY(102%);transition:transform .7s var(--ease);overflow:auto}.modal.open{transform:none}.modalBar{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;align-items:center;padding:24px max(36px,calc((100vw - 1420px)/2));background:rgba(241,239,232,.88);backdrop-filter:blur(14px);border-bottom:1px solid rgba(0,0,0,.12);font-size:11px;letter-spacing:.13em;text-transform:uppercase}.close{background:none;border:0;cursor:pointer;text-transform:uppercase;letter-spacing:.13em}.modalInner{width:min(1180px,calc(100% - 72px));margin:0 auto;padding:12vh 0 14vh}.modalKicker{font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#806b50}.modal h2{font-size:clamp(58px,8vw,118px);line-height:.85;letter-spacing:-.065em;font-weight:300;margin:24px 0 90px}.caseDetails{display:grid;grid-template-columns:1fr 2fr;gap:8vw;border-top:1px solid rgba(0,0,0,.18);padding-top:45px}.caseDetails h4{font-size:12px;text-transform:uppercase;letter-spacing:.13em;margin:0}.caseDetails p{font-size:clamp(20px,2vw,30px);line-height:1.4;margin:0 0 42px}.caseDetails .small{font-size:15px;line-height:1.7;color:#666}.caseStats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(0,0,0,.18);margin-top:70px}.caseStat{padding:35px 25px 0 0}.caseStat b{font-size:50px;font-weight:300}.caseStat span{display:block;color:#666;font-size:12px;margin-top:7px}
.mobileNav{display:none}
@media(max-width:820px){.wrap{width:calc(100% - 36px)}.navlinks>a,.navlinks>.lang{display:none}.menu{display:block}.hero{padding-bottom:7vh}.hero h1{font-size:clamp(58px,17vw,90px)}.heroFoot{display:block}.scrollHint{margin-top:24px}.statement{min-height:85vh}.visualBreak{height:65vh;min-height:500px}.visualCopy{left:18px;right:18px}.section{padding:95px 0}.sectionHead,.pillars,.workGrid,.metrics,.aboutGrid,.caseDetails{grid-template-columns:1fr}.sectionHead{gap:20px}.pillar{border-right:0;border-bottom:1px solid var(--line);padding:35px 0!important}.pillar h3{margin-top:45px}.ref{grid-template-columns:45px 1fr}.ref .meta{display:none}.case{min-height:430px;padding:27px}.metric{border-right:0;border-bottom:1px solid var(--line);padding:36px 0!important}.timeline{margin-left:8px}.milestone{min-height:38vh;padding-left:32px}.footer{gap:20px;flex-direction:column}.cursor{display:none}.modalInner{width:calc(100% - 36px);padding-top:8vh}.modal h2{margin-bottom:60px}.caseStats{grid-template-columns:1fr}.mobileNav{display:flex;position:fixed;z-index:95;inset:0;background:var(--paper);color:#0b0b0b;transform:translateY(-102%);transition:.65s var(--ease);padding:100px 18px 35px;flex-direction:column}.mobileNav.open{transform:none}.mobileNav a{font-size:clamp(45px,13vw,72px);letter-spacing:-.05em;border-bottom:1px solid rgba(0,0,0,.15);padding:8px 0}.mobileNav .mobileLang{margin-top:auto;background:none;border:0;text-align:left;padding:0;color:#806b50;text-transform:uppercase;letter-spacing:.15em}}

@media(max-width:820px){
  .hero{min-height:100svh;align-items:center;padding:92px 0 44px}
  .hero .wrap{width:calc(100% - 36px);min-width:0}
  .hero .kicker{font-size:10px;line-height:1.55;max-width:310px;margin-bottom:30px}
  .hero h1{font-size:13.1vw;line-height:.88;letter-spacing:-.058em;margin:0;max-width:100%;width:100%}
  .hero h1 span{width:100%;overflow:visible}
  .hero h1 i{white-space:nowrap;max-width:100%}
  .heroFoot{margin-top:44px;font-size:12px}
  .scrollHint{margin-top:28px}
  .heroGrid{background-size:16vw 16vw}
  .ref{padding:23px 0;grid-template-columns:38px minmax(0,1fr)}
  .ref .name{font-size:clamp(32px,10vw,48px);line-height:1}
}
@media(max-width:390px){.hero h1{font-size:12.6vw}.hero .kicker{max-width:285px}}
@media(hover:hover) and (pointer:fine){
  .ref{transition:padding .35s var(--ease),background .35s var(--ease)}
  .ref:hover{padding-left:10px;padding-right:10px;background:rgba(241,239,232,.035)}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.hero h1 i{transform:none}.reveal{opacity:1;transform:none}}

@media(max-width:820px){
  .modalBar{padding:20px 18px}
  .modalInner{width:calc(100% - 32px);padding-top:7vh}
  .modalKicker{font-size:10px;line-height:1.45}
  .modal h2{font-size:clamp(42px,12.5vw,64px);line-height:.92;letter-spacing:-.055em;margin:20px 0 52px;overflow-wrap:anywhere;word-break:normal;max-width:100%}
  .caseDetails p{font-size:clamp(20px,6vw,27px)}
  .caseDetails .small{font-size:16px}
}
@media(max-width:390px){.modal h2{font-size:11.8vw}.modalBar{font-size:10px}}


/* V12: former inline styles */
.v12-inline-1{font-size:clamp(38px,5vw,72px);line-height:.95;letter-spacing:-.045em;font-weight:300;margin:0 0 28px}
.v12-inline-2{margin-top:22px}
