@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(../media/a2947afc6a06879b-s.138s14ivx2xer.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(../media/651aaf1801011892-s.3b2emle-7szv-.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo;font-style:normal;font-weight:100 900;font-stretch:100%;font-display:swap;src:url(../media/75affa71d1e2f6a7-s.p.13rul5q9jl2r0.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo Fallback;src:local(Arial);ascent-override:88.96%;descent-override:21.28%;line-gap-override:0.0%;size-adjust:98.7%}.archivo_39d29e0f-module__wDrSvq__className{font-family:Archivo,Archivo Fallback;font-style:normal}.archivo_39d29e0f-module__wDrSvq__variable{--font-display:"Archivo", "Archivo Fallback"}
@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/c3cb240f9c892514-s.270md_-rr62el.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:DM Sans;font-style:normal;font-weight:100 1000;font-display:swap;src:url(../media/5c285b27cdda1fe8-s.p.0lsanbtneewqp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:DM Sans Fallback;src:local(Arial);ascent-override:94.9%;descent-override:29.66%;line-gap-override:0.0%;size-adjust:104.53%}.dm_sans_d2d63cd0-module__vMhcjq__className{font-family:DM Sans,DM Sans Fallback;font-style:normal}.dm_sans_d2d63cd0-module__vMhcjq__variable{--font-body:"DM Sans", "DM Sans Fallback"}
:root{--ink:#101113;--paper:#f3f0e8;--signal:#f15a37;--line:#10111326}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--font-body), Arial, sans-serif;-webkit-font-smoothing:antialiased;margin:0}a{color:inherit}a:focus-visible{outline:3px solid var(--signal);outline-offset:5px}button:focus-visible{outline:3px solid var(--signal);outline-offset:4px}.site-header{border-bottom:1px solid var(--line);z-index:10;grid-template-columns:minmax(180px,.8fr) minmax(250px,1.2fr) minmax(220px,.8fr);align-items:center;width:100%;min-height:86px;padding:0 3.2vw;display:grid;position:absolute}.site-header p{text-align:center;margin:0;font-size:clamp(1.1rem,1.2vw,1.25rem);font-weight:560}.wordmark{font-family:var(--font-display), Arial, sans-serif;align-items:center;min-height:44px;font-size:clamp(1.35rem,1.6vw,1.65rem);font-weight:700;text-decoration:none;display:inline-flex}.header-link{background:var(--signal);border:1px solid var(--ink);white-space:nowrap;justify-self:end;align-items:center;gap:.7rem;min-height:54px;padding:0 1.2rem;font-size:clamp(1rem,1.05vw,1.08rem);font-weight:720;text-decoration:none;transition:background-color .16s,color .16s,transform .16s;display:inline-flex}.header-link:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}.header-link:active{transform:translateY(0)}.hero{contain:paint;isolation:isolate;height:100svh;min-height:0;max-height:100svh;padding:clamp(122px,16vh,166px) 3.2vw 5vh;position:relative;overflow:clip}.hero-grid{background-image:linear-gradient(to right, var(--line) 1px, transparent 1px), linear-gradient(to bottom, var(--line) 1px, transparent 1px);opacity:.34;pointer-events:none;background-size:clamp(46px,6vw,88px) clamp(46px,6vw,88px);position:absolute;inset:0}.hero-for,.hero h1,.hero-summary,.hero-index{z-index:2;position:relative}.hero-for{align-items:baseline;gap:.9rem;max-width:46rem;margin:0 0 clamp(18px,3vh,36px);font-size:clamp(1rem,1.15vw,1.14rem);display:flex}.hero-for strong{font-size:clamp(1.08rem,1.25vw,1.24rem);font-weight:750}.hero-for span{opacity:.76}.hero-for .hero-name{color:var(--signal);opacity:1}.hero h1{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.06em;max-width:12ch;margin:0;font-size:clamp(4rem,8.5vw,9rem);font-weight:650;line-height:.86}.hero-title-primary,.hero-title-build,.hero-title-build-copy{display:block}.hero-title-build{background:linear-gradient(90deg, color-mix(in srgb, var(--signal) 10%, transparent), transparent 72%);border-left:3px solid var(--signal);max-width:9.5ch;margin-top:clamp(1rem,2.4vh,1.8rem);margin-left:clamp(.5rem,5vw,5rem);padding:clamp(.75rem,1.3vh,1rem) clamp(.9rem,1.4vw,1.4rem);position:relative}.hero-title-build:after{background:var(--signal);content:"";width:min(8rem,42%);height:1px;position:absolute;bottom:0;left:0}.hero-title-build-copy{letter-spacing:-.045em;font-size:clamp(2.2rem,4vw,4.6rem);font-weight:520;line-height:.92}.hero-summary{max-width:25rem;margin-top:clamp(18px,2.5vh,34px);margin-left:auto}.hero-summary>p:first-child{margin:0 0 1.4rem;font-size:clamp(1rem,1.2vw,1.2rem);line-height:1.55}.hero-actions{flex-wrap:wrap;align-items:stretch;gap:.7rem;display:flex}.primary-link{background:var(--signal);border:1px solid var(--ink);color:var(--ink);align-items:center;gap:1.6rem;min-height:54px;padding:0 1.3rem;font-size:.88rem;font-weight:700;text-decoration:none;transition:background-color .16s,transform .16s;display:inline-flex}.secondary-link{border:1px solid var(--ink);align-items:center;gap:1.2rem;min-height:54px;padding:0 1.2rem;font-size:.88rem;font-weight:700;text-decoration:none;transition:background-color .16s,color .16s,transform .16s;display:inline-flex}.secondary-link:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}.secondary-link:active{transform:translateY(0)}.primary-link:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}.primary-link:active{transform:translateY(0)}.hero-index{margin:0;font-size:.68rem;position:absolute;bottom:5vh;left:3.2vw}.trace{pointer-events:none;z-index:1;width:62vw;height:clamp(110px,17vh,180px);position:absolute;bottom:4.8vh;left:12vw}.trace-line{border-color:var(--signal);opacity:.72;border-style:solid;display:block;position:absolute}.trace-line-one{border-width:1px 0 0;width:28%;top:38%;left:0}.trace-line-two{border-width:1px 1px 0 0;width:13%;height:34%;top:38%;left:28%}.trace-line-three{border-width:0 0 1px;width:21%;top:72%;left:41%}.trace-line-four{border-width:0 1px 1px 0;width:13%;height:40%;top:32%;left:62%}.trace-line-five{border-width:1px 0 0;width:25%;top:32%;left:75%}.trace-node,.trace-output{background:var(--paper);border:1px solid var(--ink);letter-spacing:-.01em;white-space:nowrap;padding:.42rem .62rem;font-size:clamp(.7rem,.78vw,.82rem);font-weight:560;position:absolute}.trace-node-one{top:15%;left:2%;transform:rotate(-1.5deg)}.trace-node-two{top:47%;left:21%;transform:rotate(1deg)}.trace-node-three{top:79%;left:46%;transform:rotate(-1deg)}.trace-node-four{top:2%;left:68%;transform:rotate(1.5deg)}.trace-output{background:var(--ink);border-color:var(--ink);color:var(--paper);top:17%;right:0}.trace-pulse{background:var(--signal);box-shadow:0 0 0 4px color-mix(in srgb, var(--signal) 20%, transparent);border-radius:50%;width:8px;height:8px;animation:5.4s linear infinite follow-line;position:absolute;top:38%;left:0;transform:translate(-50%,-50%)}@keyframes follow-line{0%{top:38%;left:0}37%{top:38%;left:41%}41%{top:72%;left:41%}72%{top:72%;left:75%}78%{top:32%;left:75%}to{top:32%;left:100%}}.preview-next{background:var(--ink);color:var(--paper);align-items:center;min-height:52vh;padding:8vw 3.2vw;display:flex}.preview-next p{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.045em;max-width:12ch;margin:0;font-size:clamp(3rem,7vw,7rem);line-height:.95}@media (min-width:761px) and (max-width:960px){.hero{grid-template-rows:auto auto minmax(0,1fr) 104px;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);column-gap:32px;padding:116px 28px 18px;display:grid}.hero-for{grid-area:1/1/auto/-1;margin:0 0 12px}.hero h1{grid-area:2/1;align-self:start;min-width:0;max-width:10.5ch;font-size:clamp(3.75rem,8.2vw,4.6rem)}.hero-title-build{max-width:none;margin-top:1rem;margin-left:clamp(.25rem,3vw,1.5rem);padding:.65rem .5rem .75rem .75rem}.hero-title-build-copy{font-size:clamp(2rem,4.6vw,2.45rem)}.hero-summary{grid-area:2/2;align-self:start;min-width:0;max-width:20rem;margin:0}.hero-summary>p:first-child{margin-bottom:1rem;font-size:1rem;line-height:1.45}.primary-link{min-height:50px}.trace{grid-area:4/1/auto/-1;align-self:end;width:calc(100% - 72px);height:104px;margin-left:72px;position:relative;bottom:auto;left:auto}.hero-index{bottom:25px;left:28px}}@media (min-width:961px){.hero h1{transform:translateY(clamp(10px,1.6vh,18px))}.hero-summary{width:min(25rem,30vw);margin:0;position:absolute;top:clamp(300px,41vh,395px);right:3.2vw}.trace{border-top:1px solid var(--line);width:82vw;height:clamp(104px,15vh,144px);bottom:3.4vh;left:9vw}}@media (min-width:961px) and (max-height:699px){.hero-summary{top:270px}.hero-summary>p:first-child{font-size:.95rem;line-height:1.4}}@media (max-width:760px){.site-header{grid-template-columns:1fr auto;min-height:72px;padding:0 20px}.site-header p{display:none}.header-link{gap:.45rem;min-height:48px;padding:0 .85rem;font-size:.78rem}.hero{contain:none;grid-template-rows:auto auto auto minmax(0,1fr) 146px;grid-template-columns:1fr;height:auto;min-height:100svh;max-height:none;padding:84px 20px 22px;display:grid;overflow:visible}.hero-for{flex-direction:column;grid-area:1/1;align-items:flex-start;gap:.2rem;margin:0 0 10px}.hero-for strong{font-size:1.1rem}.hero-for span{font-size:.98rem}.hero h1{grid-area:2/1;max-width:100%;font-size:clamp(3.05rem,14.4vw,3.6rem);line-height:.88}.hero-title-build{max-width:calc(100% - .3rem);margin-top:.85rem;margin-left:.3rem;padding:.6rem .45rem .7rem .7rem}.hero-title-build-copy{font-size:clamp(1.75rem,8.2vw,2.2rem);line-height:.94}.hero-summary{grid-area:3/1;align-self:start;max-width:21rem;margin:14px 0 0}.hero-summary>p:first-child{max-width:20rem;margin:0 0 .85rem;font-size:.94rem;line-height:1.4}.primary-link,.secondary-link{min-height:48px}.trace{--mobile-trace-inset:clamp(32px, 10vw, 46px);height:clamp(132px,36vw,150px);margin-left:var(--mobile-trace-inset);width:calc(100% - var(--mobile-trace-inset));grid-area:5/1;align-self:end;position:relative;bottom:auto;left:auto;transform:translateY(-38px)}.trace-line{border-color:var(--signal);opacity:1;border-width:0;display:block}.trace-line-one{border-top-width:1px;width:50%;top:88%;left:0}.trace-line-two{border-top-width:1px;border-left-width:1px;width:20%;height:24%;top:64%;left:50%}.trace-line-three{border-top-width:1px;border-left-width:1px;width:16%;height:24%;top:40%;left:70%}.trace-line-four{border-top-width:1px;border-left-width:1px;width:14%;height:24%;top:16%;left:86%}.trace-line-five{display:none}.trace-node-one,.trace-node-two,.trace-node-three,.trace-node-four,.trace-output{background:var(--paper);border:1px solid var(--ink);color:var(--ink);width:auto;height:auto;padding:.38rem .5rem;font-size:0;display:block;right:auto;transform:none}.trace-node-one:before,.trace-node-two:before,.trace-node-three:before,.trace-node-four:before,.trace-output:before{display:none}.trace-node-one:after,.trace-node-two:after,.trace-node-three:after,.trace-node-four:after,.trace-output:after{content:attr(data-mobile-label);letter-spacing:.01em;white-space:nowrap;font-size:.62rem;font-weight:650;line-height:1;position:static}.trace-node-one{top:calc(88% - 27px);left:0}.trace-node-two{top:calc(88% - 27px);left:30%}.trace-node-three{top:calc(64% - 27px);left:52%}.trace-node-four{top:calc(40% - 27px);left:72%;transform:translate(-75%)}.trace-output{background:var(--ink);color:var(--paper);top:calc(16% - 27px);right:0}.trace-pulse{box-shadow:0 0 0 4px color-mix(in srgb, var(--signal) 20%, transparent);will-change:left, top;width:8px;height:8px;animation:5.8s linear infinite mobile-stair;top:88%;left:0}.hero-index{bottom:25px;left:20px}.preview-next{min-height:70vh;padding:18vw 20px}}@keyframes mobile-stair{0%{opacity:0;top:88%;left:0}2%{opacity:1;top:88%;left:0}39%{top:88%;left:50%}46%{top:64%;left:50%}62%{top:64%;left:70%}69%{top:40%;left:70%}82%{top:40%;left:86%}89%{top:16%;left:86%}98%{opacity:1;top:16%;left:100%}to{opacity:0;top:16%;left:100%}}@media (max-width:380px){.hero{padding-top:78px}.hero h1{font-size:clamp(2.7rem,13.2vw,3.05rem)}.hero-title-build-copy{font-size:clamp(1.55rem,7.4vw,1.75rem)}.hero-for span{font-size:.92rem}.hero-summary>p:first-child{font-size:.88rem}.hero-summary{margin-top:10px}.trace{height:126px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}main{overflow:clip}button,input{font:inherit}button{color:inherit}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.section-index{letter-spacing:.02em;margin:0;font-size:.68rem}.reveal{opacity:0;transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1);transform:translateY(36px)}.reveal.is-visible{opacity:1;transform:none}.friction{background:var(--ink);color:var(--paper);min-height:100svh;position:relative}.friction-stage{flex-direction:column;height:100svh;padding:5vh 3.2vw;display:flex;position:relative;overflow:hidden}.friction-copy{flex:1;width:100%;max-width:94rem;min-height:0;margin:0 auto;position:relative}.problem-line{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.04em;opacity:0;max-width:12ch;margin:0;font-size:clamp(2.25rem,4.4vw,5rem);font-weight:650;line-height:.92;transition:opacity .38s,transform .62s cubic-bezier(.2,.7,.2,1);position:absolute}.problem-line:first-child{top:5%;left:2%;transform:translate(-44px,16px)rotate(-2deg)}.problem-line:nth-child(2){top:23%;right:3%;transform:translate(40px,-18px)rotate(1.5deg)}.problem-line:nth-child(3){top:42%;left:8%;transform:translate(-32px,34px)rotate(1deg)}.problem-line:nth-child(4){top:60%;right:4%;transform:translate(32px,30px)rotate(-1.5deg)}.problem-line:nth-child(5){top:78%;left:28%;transform:translate(-16px,30px)rotate(1deg)}@media (min-width:761px){.problem-line:nth-child(5){max-width:17ch;top:72%}}.problem-line.is-active{opacity:.32;transform:translate(0)rotate(0)}.problem-line.is-current{opacity:1}.familiar{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.07em;opacity:0;text-align:left;text-wrap:balance;white-space:normal;z-index:3;width:min(90vw,15ch);margin:0;font-size:clamp(3.5rem,7.6vw,8.4rem);font-weight:700;line-height:.84;transition:opacity .42s,transform .64s cubic-bezier(.2,.7,.2,1);position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-35%)scale(.84)}.familiar.is-active{opacity:1;transform:translate(-50%,-50%)scale(1)}.friction.is-complete .problem-line{opacity:0;transform:translateY(-18px)scale(.96)}.friction.is-complete .mess-lines{opacity:1}.mess-lines{pointer-events:none;position:absolute;inset:0}.mess-lines span{border-top:1px solid var(--signal);opacity:.3;transition:opacity .4s,transform .56s cubic-bezier(.2,.7,.2,1),top .56s cubic-bezier(.2,.7,.2,1),width .56s;display:block;position:absolute}.mess-lines span:first-child{width:38%;top:25%;left:2%;transform:rotate(8deg)}.mess-lines span:nth-child(2){width:44%;top:48%;right:-4%;transform:rotate(-11deg)}.mess-lines span:nth-child(3){width:52%;bottom:24%;left:-5%;transform:rotate(-7deg)}.mess-lines span:nth-child(4){width:33%;bottom:12%;right:9%;transform:rotate(4deg)}.mess-lines.state-4 span{opacity:.18;width:80%;top:50%;left:10%;right:auto;transform:rotate(0)}.mess-lines.state-5 span{opacity:.65;width:76%;top:82%;left:12%;right:auto;transform:rotate(0)}.story{background:var(--paper);padding:clamp(90px,10vw,160px) 3.2vw}.story-intro{grid-template-columns:minmax(76px,.25fr) 1.75fr;align-items:start;gap:3vw;display:grid}.story-intro h2{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.06em;max-width:12ch;margin:0;font-size:clamp(3.5rem,7.6vw,8rem);font-weight:440;line-height:.86}.story-body{border-top:1px solid var(--ink);grid-template-columns:minmax(250px,.72fr) 1.28fr;gap:7vw;margin:clamp(70px,9vw,150px) 0 0 16.5%;padding-top:2rem;display:grid}.story-copy{align-self:start;max-width:26rem}.story-copy p{margin:0 0 1.2rem;font-size:clamp(1.1rem,1.6vw,1.65rem);line-height:1.45}.build-sequence{margin:0;padding:0;list-style:none}.build-sequence li{border-bottom:1px solid var(--line);font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.05em;grid-template-columns:3rem 1fr;align-items:center;min-height:clamp(82px,10vw,140px);font-size:clamp(2.1rem,4.8vw,5.1rem);line-height:1;display:grid}.build-sequence li span{font-family:var(--font-body), Arial, sans-serif;letter-spacing:0;align-self:start;padding-top:1.2rem;font-size:.64rem}.story-realization{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.06em;max-width:13ch;margin:clamp(70px,9vw,140px) 0 0;font-size:clamp(3.8rem,8vw,8.5rem);font-weight:430;line-height:.87}.work-showcase{background:#ebe8e0;padding:clamp(90px,10vw,160px) 3.2vw;overflow:hidden}.work-heading{border-bottom:1px solid var(--ink);grid-template-columns:minmax(0,1.25fr) minmax(230px,.75fr);align-items:end;gap:3vw;padding-bottom:1rem;display:grid}.work-heading>div:first-child{grid-template-columns:minmax(76px,.25fr) 1.75fr;align-items:end;gap:3vw;display:grid}.work-heading-aside{justify-content:space-between;align-items:end;gap:1.5rem;display:flex}.rail-nav{flex-shrink:0;gap:6px;display:flex}.rail-nav button{border:1px solid var(--ink);cursor:pointer;background:0 0;place-items:center;width:44px;height:44px;font-size:1rem;transition:background-color .16s,color .16s,transform .16s;display:grid}.rail-nav button:hover{background:var(--ink);color:var(--paper)}.rail-nav button:active{transform:translateY(1px)}.work-heading .section-index{margin-bottom:.45rem}.work-heading h2{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.05em;margin:0;font-size:clamp(2.6rem,5vw,5.2rem);font-weight:470;line-height:1}.work-heading p{max-width:24rem;margin:0;font-size:.85rem;line-height:1.55}.work-rail{overscroll-behavior-inline:contain;scroll-snap-type:inline mandatory;scrollbar-color:var(--signal) transparent;grid-auto-columns:minmax(310px,31vw);grid-auto-flow:column;margin-right:-3.2vw;display:grid;overflow-x:auto}.project-card{border-bottom:1px solid var(--ink);border-right:1px solid var(--ink);color:inherit;scroll-snap-align:start;flex-direction:column;min-height:455px;padding:1.25rem;text-decoration:none;transition:background-color .18s,color .18s;display:flex}.project-card.has-preview{min-height:clamp(490px,36vw,560px)}.project-preview{aspect-ratio:16/10;border:1px solid;flex:none;margin:1rem 0 1.35rem;position:relative;overflow:hidden}.project-preview img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .32s cubic-bezier(.2,.7,.2,1);display:block}.project-card.has-preview .project-type{margin-top:0}.project-card.has-preview .project-link,.project-card.has-preview .project-status{margin-top:auto}a.project-card.has-preview:hover .project-preview img,a.project-card.has-preview:focus-visible .project-preview img{transform:scale(1.02)}a.project-card:hover,a.project-card:focus-visible{background:var(--ink);color:var(--paper)}a.project-card{cursor:pointer}.project-topline{justify-content:space-between;font-size:.62rem;display:flex}.project-type{margin:auto 0 .8rem;font-size:.68rem}.project-card h4{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.055em;overflow-wrap:normal;margin:0;font-size:clamp(2rem,2.8vw,3.4rem);font-weight:470;line-height:.92}.project-summary{max-width:32rem;margin:1.4rem 0 2.4rem;font-size:.8rem;line-height:1.6}.project-link,.project-status{border-top:1px solid;justify-content:space-between;align-items:center;padding-top:.8rem;font-size:.65rem;font-weight:700;display:flex}.project-link span{transition:transform .16s}a.project-card:hover .project-link span,a.project-card:focus-visible .project-link span{transform:translate(3px,-3px)}.project-status{opacity:.68}.more-work{border-top:1px solid var(--ink);grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:clamp(42px,6vw,92px);margin-top:clamp(72px,9vw,140px);padding-top:clamp(30px,4vw,58px);display:grid}.more-work-heading h3{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.06em;max-width:9ch;margin:0;font-size:clamp(3rem,5.8vw,6.5rem);font-weight:460;line-height:.88}.more-work-heading>p:last-child{max-width:23rem;margin:clamp(28px,4vw,52px) 0 0;font-size:clamp(1rem,1.2vw,1.18rem);line-height:1.55}.more-work-list{border-top:1px solid var(--ink)}.more-work-item{border-bottom:1px solid var(--ink);color:inherit;grid-template-columns:2rem minmax(150px,.65fr) minmax(130px,.55fr) minmax(220px,1.3fr) 4.5rem;align-items:start;gap:1rem;min-height:clamp(118px,11vw,158px);padding:1.35rem 0;text-decoration:none;transition:background-color .18s,color .18s,padding .18s;display:grid}a.more-work-item:hover,a.more-work-item:focus-visible{background:var(--ink);color:var(--paper);padding-left:1rem;padding-right:1rem}.more-work-index,.more-work-type,.more-work-status{font-size:.7rem}.more-work-name{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.05em;overflow-wrap:anywhere;min-width:0;font-size:clamp(1.7rem,2.6vw,3rem);line-height:.95}.more-work-summary{max-width:34rem;font-size:clamp(.82rem,1vw,.95rem);line-height:1.55}.more-work-status{justify-content:flex-end;gap:.55rem;display:flex}.more-work-status span{transition:transform .16s}a.more-work-item:hover .more-work-status span,a.more-work-item:focus-visible .more-work-status span{transform:translate(3px,-3px)}.custom-build-kicker{color:var(--signal);letter-spacing:.02em;margin:0 0 clamp(30px,4vw,54px);font-size:clamp(.84rem,1vw,1rem);font-weight:650}.story-capabilities{z-index:20;margin:clamp(28px,3vw,44px) 0 0;position:relative}.story-capabilities.is-open{z-index:70}.story-capabilities-trigger{background:var(--signal);border:1px solid var(--ink);color:var(--ink);cursor:pointer;text-align:left;justify-content:space-between;align-items:center;gap:clamp(36px,6vw,88px);width:min(100%,390px);min-height:58px;padding:0 1.2rem;font-size:clamp(1rem,1.25vw,1.2rem);font-weight:700;transition:background-color .16s,color .16s,transform .16s;display:inline-flex}.story-capabilities-trigger span:last-child{transition:transform .18s}.story-capabilities-trigger:hover,.story-capabilities-trigger:focus-visible,.story-capabilities.is-open .story-capabilities-trigger{background:var(--ink);color:var(--paper);transform:translateY(-2px)}.story-capabilities-trigger:focus-visible{outline:3px solid var(--signal);outline-offset:3px}.story-capabilities-trigger:active{transform:translateY(0)}.story-capabilities-trigger:hover span:last-child,.story-capabilities-trigger:focus-visible span:last-child,.story-capabilities.is-open .story-capabilities-trigger span:last-child{transform:translate(4px,-4px)}.story-capabilities-panel{background:var(--ink);color:var(--paper);overscroll-behavior-y:contain;scrollbar-gutter:stable;padding:clamp(26px,3.2vw,48px);animation:.24s cubic-bezier(.2,.7,.2,1) both capability-panel-in;position:fixed;inset:8vh max(3.2vw,50vw - 550px);overflow:auto;box-shadow:0 30px 70px #00000038}.story-capabilities-panel-header{border-bottom:1px solid color-mix(in srgb, var(--paper) 28%, transparent);justify-content:flex-end;align-items:center;margin-bottom:clamp(24px,3vw,42px);padding-bottom:.9rem;display:flex}.story-capabilities-panel-header button{color:var(--paper);cursor:pointer;background:0 0;border:0;padding:.35rem 0;font-size:.72rem}.story-capabilities-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(30px,3.5vw,52px) clamp(24px,3vw,46px);display:grid}.story-capability-group{border-top:1px solid var(--signal);padding-top:.75rem}.story-capability-group h3{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.035em;margin:0 0 .85rem;font-size:clamp(1.15rem,1.6vw,1.75rem);font-weight:540;line-height:1}.story-capability-group ul{margin:0;padding:0;list-style:none}.story-capability-group li{color:color-mix(in srgb, var(--paper) 78%, transparent);font-size:clamp(.68rem,.78vw,.8rem);line-height:1.55;display:inline}.story-capability-group li:not(:last-child):after{color:var(--signal);content:" · "}@keyframes capability-panel-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.contact{background:var(--ink);color:var(--paper);grid-template-columns:minmax(76px,.22fr) minmax(0,1.05fr) minmax(300px,.73fr);gap:clamp(42px,6vw,92px);min-height:min(88svh,860px);padding:clamp(88px,9vw,136px) 3.2vw;display:grid;position:relative;overflow:hidden}.floating-contact{z-index:50;gap:8px;transition:opacity .24s,transform .28s cubic-bezier(.2,.7,.2,1),visibility linear;display:flex;position:fixed;bottom:26px;right:26px}.floating-contact.is-hidden{opacity:0;pointer-events:none;visibility:hidden;transition:opacity .2s,transform .22s,visibility 0s linear .22s;transform:translateY(16px)}.floating-contact a{border:1px solid var(--ink);white-space:nowrap;align-items:center;gap:.8rem;min-height:48px;padding:0 1.05rem;font-size:.86rem;font-weight:700;text-decoration:none;transition:background-color .16s,color .16s,transform .16s;display:inline-flex}.floating-contact-call{background:var(--signal)}.floating-contact-whatsapp{background:var(--ink);color:var(--paper)}.floating-contact a:hover{background:var(--ink);color:var(--paper);transform:translateY(-2px)}.floating-contact-whatsapp:hover{background:var(--signal);color:var(--ink)}.floating-contact a:active{transform:translateY(0)}.contact-grid{opacity:.7;pointer-events:none;background-image:linear-gradient(90deg,#f3f0e814 1px,#0000 1px),linear-gradient(#f3f0e814 1px,#0000 1px);background-size:clamp(46px,6vw,88px) clamp(46px,6vw,88px);position:absolute;inset:0}.contact>:not(.contact-grid){z-index:1;position:relative}.contact>.section-index{color:var(--signal);grid-area:1/1}.contact h2{font-family:var(--font-display), Arial, sans-serif;letter-spacing:-.06em;grid-area:1/2;max-width:11ch;margin:0;font-size:clamp(3.6rem,6vw,6.5rem);font-weight:520;line-height:.88}.contact-action{border-top:1px solid #f3f0e861;flex-direction:column;grid-area:1/3;align-self:center;gap:1.5rem;margin:0;padding-top:1.5rem;display:flex}.contact-action p{max-width:25rem;margin:0;font-size:clamp(1.02rem,1.3vw,1.24rem);line-height:1.55}.contact-links{gap:.75rem;display:grid}.contact-action a{background:var(--signal);border:1px solid var(--paper);color:var(--ink);justify-content:space-between;align-items:center;gap:2rem;min-height:58px;padding:0 1.35rem;font-weight:700;text-decoration:none;transition:background-color .16s,transform .16s;display:inline-flex}.contact-action a:hover{background:var(--paper);color:var(--ink);transform:translateY(-2px)}.contact-action .contact-whatsapp{color:var(--paper);background:0 0}.contact-action .contact-whatsapp:hover{background:var(--signal);color:var(--ink)}.contact-action a:active{transform:translateY(0)}.site-footer{background:var(--paper);justify-content:space-between;align-items:center;padding:28px 3.2vw;font-size:clamp(1rem,1.15vw,1.15rem);display:flex}.site-footer a{text-underline-offset:4px;align-items:center;min-height:44px;display:inline-flex}.site-footer p{margin:0}@media (max-width:760px){.reveal{transform:translateY(22px)}.friction{min-height:360svh}.friction-stage{height:100svh;padding:28px 20px;position:sticky;top:0}.friction-copy{place-items:center;display:grid}.problem-line{text-align:left;width:min(100%,13ch);max-width:13ch;font-size:clamp(1.85rem,8.4vw,3rem);transition:opacity .26s,transform .48s cubic-bezier(.2,.7,.2,1);top:50%;right:auto;transform:translate(-50%,calc(28px - 50%))scale(.97)}.problem-line:before{color:var(--signal);font-family:var(--font-body), Arial, sans-serif;letter-spacing:.02em;margin-bottom:1rem;font-size:.68rem;font-weight:650;display:block}.problem-line:first-child,.problem-line:nth-child(2),.problem-line:nth-child(3),.problem-line:nth-child(4),.problem-line:nth-child(5){top:50%;left:50%;right:auto}.problem-line:first-child:before{content:"01 / 05"}.problem-line:nth-child(2):before{content:"02 / 05"}.problem-line:nth-child(3):before{content:"03 / 05"}.problem-line:nth-child(4):before{content:"04 / 05"}.problem-line:nth-child(5):before{content:"05 / 05"}.problem-line.is-active{opacity:0;transform:translate(-50%,calc(-50% - 26px))scale(.97)}.problem-line.is-current{opacity:1;transform:translate(-50%,-50%)scale(1)}.friction.is-complete .problem-line{opacity:0;transform:translate(-50%,calc(-50% - 26px))scale(.97)}.familiar{white-space:normal;width:min(88vw,13ch);font-size:clamp(2.8rem,12.5vw,4.8rem)}.friction[data-scroll-driven=true] .problem-line,.friction[data-scroll-driven=true].is-complete .problem-line,.friction[data-scroll-driven=true] .familiar{opacity:var(--friction-item-opacity,0);transform:translate3d(-50%, calc(-50% + var(--friction-item-y,28px)), 0) scale(var(--friction-item-scale,.975));will-change:opacity, transform;transition:none}.mess-lines.state-5 span{top:84%}.story{padding:86px 20px}.story-intro{grid-template-columns:1fr;gap:2rem}.story-intro h2{font-size:clamp(3.8rem,16vw,5.4rem)}.story-body{grid-template-columns:1fr;gap:4rem;margin-left:0}.build-sequence li{grid-template-columns:2.3rem 1fr;min-height:88px;font-size:clamp(2.4rem,12vw,4rem)}.story-realization{font-size:clamp(3.9rem,16vw,5.4rem)}.work-showcase{padding:86px 20px}.work-heading{grid-template-columns:1fr;align-items:start;gap:1rem}.work-heading>div{grid-template-columns:1fr;align-items:start;gap:.8rem}.work-heading h2{font-size:clamp(3.5rem,15vw,5rem)}.work-rail{grid-auto-columns:84vw;margin-right:-20px}.project-card{min-height:430px}.project-card.has-preview{min-height:520px}.more-work{grid-template-columns:1fr;gap:38px;margin-top:64px;padding-top:28px}.more-work-heading h3{font-size:clamp(3.7rem,16vw,5.2rem)}.more-work-heading>p:last-child{margin-top:28px}.more-work-item{grid-template-columns:2rem 1fr auto;gap:.7rem 1rem;min-height:0;padding:1.25rem 0}.more-work-index{grid-area:1/1}.more-work-name{grid-area:1/2;font-size:clamp(1.45rem,7vw,2rem)}.more-work-status{grid-area:1/3}.more-work-type,.more-work-summary{grid-column:2/-1}.more-work-type{grid-row:2}.more-work-summary{grid-row:3}.custom-build-kicker{margin-bottom:28px}.story-capabilities{margin:32px 0 0}.story-capabilities.is-open:before{content:"";pointer-events:none;background:#0f12166b;position:fixed;inset:0}.story-capabilities-trigger{width:100%;min-height:58px;padding:0 18px;font-size:1rem}.story-capabilities-panel{bottom:max(86px, calc(76px + env(safe-area-inset-bottom)));max-height:none;left:12px;right:12px;top:max(80px, calc(68px + env(safe-area-inset-top)));width:auto;margin:0;padding:26px 18px 32px;position:fixed;box-shadow:0 24px 70px #00000052}.story-capabilities-panel-header{background:var(--ink);z-index:2;position:sticky;top:-26px}.story-capabilities-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px 18px}.story-capability-group h3{font-size:1.12rem}.story-capability-group li{font-size:.7rem}.contact{grid-template-columns:1fr;gap:0;min-height:0;padding:78px 20px;display:grid}.contact>.section-index{grid-area:auto/1}.contact h2{grid-area:auto/1;max-width:11ch;margin:40px 0 0;font-size:clamp(3rem,13.5vw,4.8rem);line-height:.87}.contact-action{grid-area:auto/1;margin-top:44px}.contact-action p{margin:0}.contact-action a{justify-content:space-between}.site-footer{flex-direction:column;align-items:flex-start;gap:.6rem;padding:24px 20px 92px}.floating-contact{background:var(--paper);border-top:1px solid var(--line);padding:8px 12px max(8px, env(safe-area-inset-bottom));grid-template-columns:1.35fr 1fr;gap:8px;width:100%;display:grid;bottom:0;left:0;right:0}.floating-contact a{justify-content:space-between;gap:.5rem;min-height:52px;padding:0 .85rem;font-size:.82rem}}@media (min-width:761px) and (max-width:900px){.contact{grid-template-columns:76px 1fr}.contact h2{grid-column:2}.contact-action{grid-area:2/2;margin-top:42px}}@media (min-width:761px) and (max-width:1200px){.more-work{grid-template-columns:1fr}.more-work-item{grid-template-columns:2rem minmax(190px,.9fr) minmax(120px,.55fr) minmax(180px,1.2fr) 4.5rem;gap:.8rem}.more-work-name{font-size:clamp(1.4rem,2.4vw,2rem)}}@media (prefers-reduced-motion:reduce){.friction{min-height:100svh}.reveal{opacity:1;transform:none}.story-capabilities-panel{animation:none}}@media (max-width:360px){.story-capabilities-grid{grid-template-columns:1fr}}
