@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}.mobile-topbar{display:none}.mobile-fullscreen-menu{width:100%;max-width:none;height:100dvh;max-height:none;color:var(--ink);background:0 0;border:0;margin:0;padding:24px;overflow:hidden}.mobile-menu-top{justify-content:space-between;align-items:start;display:flex}.personal-mark{letter-spacing:-.05em;color:inherit;font-size:16px;font-weight:650;line-height:1.05;text-decoration:none}.mobile-menu-top button,.mobile-topbar button{color:inherit;font:inherit;background:0 0;border:0;padding:8px 0}.mobile-fullscreen-menu nav{flex-direction:column;justify-content:center;align-items:flex-end;gap:24px;min-height:calc(100% - 80px);display:flex}.mobile-fullscreen-menu nav a{letter-spacing:-.05em;color:var(--muted);font-size:clamp(42px,12vw,76px);line-height:1.2;text-decoration:none}.mobile-fullscreen-menu nav a:hover{color:var(--ink)}.mobile-fullscreen-menu::backdrop{background:0 0}.mobile-menu-curtain{z-index:-1;pointer-events:none;grid-template-columns:repeat(12,1fr);display:grid;position:absolute;inset:0}.mobile-menu-curtain>span{background:var(--surface,#fafafa);transform-origin:50%}.mobile-menu-top,.mobile-fullscreen-menu nav{position:relative}.mobile-fullscreen-menu nav a{perspective:600px;overflow:hidden}.mobile-fullscreen-menu nav a>span{transform-origin:50% 100%;backface-visibility:hidden;display:block}.personal-mark:focus:not(:focus-visible),.mobile-fullscreen-menu .personal-mark:focus{outline:none}.mobile-fullscreen-menu .personal-mark:focus-visible{filter:drop-shadow(0 0 3px)}@media (width<=700px){body:not(.case-page)>.header{display:none!important}.mobile-topbar{z-index:40;color:var(--ink);justify-content:space-between;align-items:start;padding:22px 24px;display:flex;position:fixed;top:0;left:0;right:0}body:has([data-contact-active]) .mobile-topbar{color:#f5f5f5}body:not(:has([data-one-page])):has(.mobile-topbar)>main{padding-top:76px}}@media (prefers-reduced-motion:reduce){.mobile-fullscreen-menu[open]{animation:none}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@font-face{font-family:Inter;src:url(/fonts/inter-latin.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}*{box-sizing:border-box}body{color:#252622;-webkit-font-smoothing:antialiased;background:#f6f5f2;margin:0;font-family:Inter,Arial,sans-serif;font-size:16px}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline-offset:6px;outline:2px solid #726344}button{border:0}a{transition:opacity .2s}a:hover{opacity:.75}.header{justify-content:space-between;align-items:center;gap:24px;height:108px;padding:0 3.5%;display:flex}.wordmark{letter-spacing:-2.7px;font-size:39px;font-weight:600;line-height:1}.logo-dot{vertical-align:top;letter-spacing:0;margin:4px 0 0 5px;font-size:13px;display:inline-block}.header nav{gap:40px;margin-left:auto;margin-right:9%;display:flex}.header nav a[aria-current=page]{border-bottom:1px solid;padding-bottom:4px}.language{letter-spacing:.04em;color:#62665b;font-size:12px}.language .active{color:#222}.divider{color:#b1b0a9;padding:0 8px}.portfolio,.case{padding:0 3.5%}.eyebrow{border-top:1px solid #d5d5ce;justify-content:space-between;align-items:center;padding:17px 0 20px;font-size:12px;display:flex}.muted{color:#62665b;margin-left:12px}.practice{color:#62665b}.project-image{background:var(--project-bg);height:clamp(360px,60vh,750px);display:block;position:relative;overflow:hidden}.project-image:hover{opacity:1}.project-image img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.65,.3,1)}.project-image:hover img{transform:scale(1.025)}.image-label{background:#f6f5f2e0;border-radius:30px;padding:9px 13px;font-size:12px;position:absolute;top:25px;left:28px}.open-project{background:#f6f5f2;border-radius:50%;place-items:center;width:64px;height:64px;font-size:31px;transition:transform .25s;display:grid;position:absolute;bottom:30px;right:30px}.project-image:hover .open-project{transform:rotate(45deg)}.project-meta{grid-template-columns:1.25fr 1fr auto;align-items:center;gap:30px;padding:24px 0 23px;display:grid}.project-title{align-items:flex-start;gap:20px;display:flex}.project-index{color:#62665b;padding-top:12px;font-size:12px}h1{letter-spacing:-.065em;margin:0;font-size:clamp(48px,5.2vw,82px);font-weight:450;line-height:1.03}.title-period{color:#85876e}.demo-label{text-transform:uppercase;letter-spacing:.12em;color:#62665b;font-size:10px}.project-description p{margin:8px 0 0;font-size:15px}.text-link{align-items:center;gap:28px;font-size:14px;display:inline-flex}.text-link span{font-size:24px}.viewer-bottom{border-top:1px solid #d5d5ce;justify-content:space-between;align-items:center;padding:13px 0;display:flex}.project-dots{gap:12px;display:flex}.project-dot{color:#62665b;background:0 0;padding:10px 4px;font-size:12px;position:relative}.project-dot:after{content:"";background:currentColor;height:1px;transition:transform .25s;position:absolute;bottom:4px;left:4px;right:4px;transform:scaleX(0)}.project-dot.active{color:#252622}.project-dot.active:after{transform:scaleX(1)}.viewer-hint{color:#62665b;font-size:12px}.viewer-arrows{gap:9px;display:flex}.viewer-arrows button{background:0 0;border:1px solid #c7c8c0;border-radius:50%;width:43px;height:43px;font-size:21px;transition:background .2s,color .2s}.viewer-arrows button:hover{color:#fff;background:#252622}.slide.current .project-image{animation:.4s ease-out reveal}.slide.current .project-meta{animation:.35s ease-out rise}@keyframes reveal{0%{opacity:.45;clip-path:inset(0 1.5%)}to{opacity:1;clip-path:inset(0)}}@keyframes rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.section{border-top:1px solid #c7c8c0;grid-template-columns:1fr 3fr;gap:40px;margin:100px 3.5% 0;padding:70px 0;display:grid}.section-label{font-size:12px}.section h2{letter-spacing:-.055em;max-width:850px;margin:0 0 40px;font-size:clamp(42px,5vw,76px);font-weight:450;line-height:1.05}.about-columns{grid-template-columns:1fr 1fr;gap:60px;display:grid}.about-columns p{max-width:450px;margin:0;font-size:19px;line-height:1.6}.about-columns p+p{color:#62665b}.services{flex-wrap:wrap;gap:14px 25px;margin-top:55px;font-size:13px;display:flex}.services span:before{content:"↗";margin-right:10px}.contact{margin-top:30px}.contact-content>p{color:#66685f;max-width:400px;line-height:1.7}form{margin-top:42px}.form-row{grid-template-columns:1fr 1fr;gap:40px;display:grid}label{margin-bottom:30px;font-size:13px;display:block}input,textarea{resize:vertical;color:#252622;background:0 0;border:0;border-bottom:1px solid #b6b8ad;border-radius:0;width:100%;padding:15px 0;font-size:16px;display:block}input::placeholder,textarea::placeholder{color:#8a8c82}.form-bottom{justify-content:space-between;align-items:center;gap:24px;display:flex}.form-bottom p{color:#62665b;max-width:270px;font-size:12px}.submit{color:#fff;background:#252622;border-radius:40px;align-items:center;gap:40px;padding:18px 25px;font-size:14px;transition:background .2s;display:flex}.submit:hover{background:#535748}.submit span{font-size:23px}.form-status{min-height:1.3em;font-size:14px}footer{border-top:1px solid #c7c8c0;justify-content:space-between;align-items:center;margin:50px 3.5% 0;padding:40px 0;display:flex}footer>span{color:#62665b;font-size:12px}.case-top{color:#62665b;border-top:1px solid #c7c8c0;justify-content:space-between;padding:20px 0;font-size:12px;display:flex}.case-title{justify-content:space-between;align-items:end;padding:50px 0;display:flex}.case-title p{max-width:280px;font-size:22px;line-height:1.4}.case-hero{width:100%;height:auto;display:block}.case-details{grid-template-columns:1fr 1fr 1fr;gap:60px;padding:80px 0;display:grid}.case-details h2{margin-top:0;font-size:15px;font-weight:500}.case-details p{color:#65675e;line-height:1.7}.case-details>div:first-child p{font-size:12px}.case-gallery{grid-template-columns:1.25fr 1fr;gap:20px;display:grid}.case-gallery img{object-fit:cover;width:100%;height:100%}.case-statement{background:#e6e6df;flex-direction:column;justify-content:space-between;gap:50px;padding:40px;display:flex}.case-statement span{font-size:12px}.case-statement p{letter-spacing:-.05em;font-size:clamp(30px,4vw,64px);line-height:1.1}.next-case{border-top:1px solid #c7c8c0;margin-top:90px;padding:30px 0;display:block}.next-case>span{font-size:13px}.next-case strong{letter-spacing:-.06em;justify-content:space-between;margin-top:20px;font-size:clamp(60px,9vw,140px);font-weight:450;display:flex}.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}[hidden]{display:none!important}::view-transition-new(root){animation:.25s both rise}@keyframes fade-out{to{opacity:0}}@media (width>=1600px){body{max-width:2200px;margin:auto}}@media (width<=800px){.header{gap:15px;height:86px;padding:0 5%}.wordmark{font-size:32px}.header nav{gap:20px;margin:0}.header nav a{font-size:12px}.nav-arrow{display:none}.language{font-size:11px}.divider{padding:0 4px}.portfolio,.case{padding:0 5%}.practice{display:none}.eyebrow{font-size:10px}.project-image{height:58vh;min-height:350px}.project-image img{object-position:center}.project-meta{grid-template-columns:1fr auto;gap:15px}.project-description{grid-area:2/1}.project-meta>.text-link{grid-area:1/2/3}.project-title{gap:12px}h1{font-size:55px}.project-description p{font-size:14px}.demo-label{font-size:10px}.viewer-hint{display:none}.section{grid-template-columns:1fr;gap:30px;margin:70px 5% 0;padding:35px 0}.section h2{font-size:48px}.about-columns{gap:25px}.about-columns p{font-size:16px}.services{margin-top:30px}.contact{margin-top:25px}.case-title{padding:25px 0;display:block}.case-title p{font-size:18px}.case-details{grid-template-columns:1fr;gap:20px;padding:40px 0}.case-gallery{grid-template-columns:1fr}.case-statement{min-height:350px}.case-top{gap:20px;font-size:10px}.case-top .text-link{font-size:12px}footer{flex-wrap:wrap;gap:25px;margin:40px 5% 0}footer>span:nth-child(2){display:none}}@media (width<=480px){.header{flex-wrap:wrap;height:auto;min-height:96px;padding-top:20px;padding-bottom:17px}.header nav{order:3;justify-content:space-between;width:100%;margin-top:6px}.header .language{margin-left:auto}.project-image{height:49svh;min-height:320px}.image-label{font-size:10px;top:15px;left:15px}.open-project{width:48px;height:48px;font-size:25px;bottom:17px;right:17px}.eyebrow>span:last-child{font-size:9px}.project-meta>.text-link{gap:12px;font-size:12px}.about-columns,.form-row{grid-template-columns:1fr}.form-row{gap:0}.section h2{font-size:43px}.form-bottom{flex-direction:column;align-items:start}.submit{justify-content:space-between;width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.project-image:hover img{transform:none}::view-transition-old(root),::view-transition-new(root){animation:none!important}}@media (width<=480px){.project-title{grid-column:1/-1;min-width:0}.project-meta>.text-link{white-space:nowrap;grid-row:2;align-self:end}.project-description{min-width:0}.project-description p{line-height:1.5}.case-title h1{font-size:clamp(48px,16vw,77px)}.project-title h1{font-size:clamp(40px,13vw,55px)}.project-dot{min-width:24px;min-height:44px}.project-dots{gap:5px}.viewer-arrows button{width:40px;height:40px}}body{color:#151515;background:#fafafa}.header{height:104px;padding:0 28px}.header .wordmark{letter-spacing:-1.8px;font-size:27px;font-weight:650}.header nav a{font-size:12px}.header .language{font-size:11px}.gallery{--frame-width:44vw;--gap:5px;min-height:calc(100svh - 104px)}.gallery-window{width:100%;overflow:hidden}.gallery-track{--position:2;gap:var(--gap);transform:translateX(calc(50vw - var(--frame-width)/2 - var(--position)*(var(--frame-width) + var(--gap))));will-change:transform;transition:transform .5s cubic-bezier(.22,.68,.15,1);display:flex}.gallery-frame{flex:0 0 var(--frame-width);background:#dedede;height:clamp(420px,65svh,850px);display:block;position:relative;overflow:hidden}.gallery-frame:hover{opacity:1}.gallery-frame img{object-fit:cover;width:100%;height:100%;transition:transform .6s;display:block}.gallery-frame:hover img{transform:scale(1.018)}.gallery-open{color:#171717;opacity:0;background:#ffffffdf;border-radius:50%;place-items:center;width:48px;height:48px;font-size:27px;transition:opacity .2s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.gallery-frame.is-current .gallery-open,.gallery-frame:hover .gallery-open{opacity:1}.gallery-caption{grid-template-columns:1fr 1fr 1fr;align-items:start;gap:35px;padding:25px 28px 45px;display:grid}.gallery-credit{font-size:12px;line-height:1.5}.gallery-credit>span{color:#707070}.gallery-credit p{margin:2px 0}.gallery-control{justify-content:center;align-items:center;gap:20px;font-size:11px;display:flex}.gallery-control button{background:0 0;min-width:40px;min-height:40px;padding:8px;font-size:20px}.gallery-control button:hover{color:#888}.gallery-descriptions{justify-self:end;width:100%;max-width:380px}.gallery-descriptions h1{letter-spacing:-.8px;margin:0;font-size:24px;font-weight:500;line-height:1.2}.gallery-category{color:#707070;margin:3px 0 17px;font-size:12px;display:block}.gallery-descriptions p{margin:0 0 12px;font-size:13px;line-height:1.6}.gallery-detail-link{border-bottom:1px solid #999;padding-bottom:3px;font-size:12px}.gallery-descriptions [data-description]:not([hidden]){animation:.3s caption-in}@keyframes caption-in{0%{opacity:0;transform:translateY(5px)}to{opacity:1;transform:none}}.about.section{margin-top:100px}.section h2{font-size:clamp(38px,4vw,62px)}footer .wordmark{letter-spacing:-1.8px;font-size:27px}@media (width>=1600px){body{max-width:none}}@media (width<=800px){.header{height:90px;padding:0 20px}.gallery{--frame-width:68vw;min-height:calc(100svh - 90px)}.gallery-frame{height:60svh;min-height:360px}.gallery-caption{grid-template-columns:1fr 1.5fr;gap:24px;padding:22px 20px 35px}.gallery-control{grid-area:2/1;justify-content:start;gap:12px}.gallery-descriptions{grid-area:1/2/3}.gallery-credit{font-size:11px}.gallery-descriptions p{font-size:12px}.gallery-descriptions h1{font-size:22px}}@media (width<=480px){.header{height:94px;padding-top:16px;padding-bottom:12px}.header .wordmark{font-size:26px}.header nav{gap:20px;margin-right:0}.gallery{--frame-width:79vw;--gap:4px}.gallery-frame{height:52svh;min-height:320px}.gallery-caption{grid-template-columns:1fr auto;gap:22px 15px;padding:20px 18px 30px}.gallery-credit{grid-area:2/1}.gallery-descriptions{grid-area:1/1/auto/-1;justify-self:start;max-width:330px}.gallery-descriptions p{font-size:13px}.gallery-descriptions h1{font-size:24px}.gallery-control{grid-area:2/2;align-self:start;gap:4px}.gallery-control button{min-width:30px}.gallery-control [data-counter]{font-size:10px}.gallery-open{width:42px;height:42px;font-size:24px}.about.section{margin-top:50px}}@media (prefers-reduced-motion:reduce){.gallery-track,.gallery-frame img{transition:none!important}.gallery-descriptions [data-description]{animation:none!important}}.case-title h1{font-size:clamp(52px,7vw,100px)}.case-hero{object-fit:cover;max-height:75svh}.case-title{padding:35px 0}.case-title p{font-size:18px}.project-overview{min-height:calc(100svh - 104px);padding-bottom:24px;position:relative}.overview-toolbar{z-index:2;gap:14px;display:flex;position:absolute;top:-61px;left:46%}.overview-toolbar button{color:#747474;background:0 0;padding:6px 0;font-size:11px}.overview-toolbar [aria-pressed=true]{color:#161616}.overview-canvas{height:calc(100svh - 340px);min-height:420px;margin:0 28px;position:relative}.overview-project{aspect-ratio:1;width:clamp(110px,13vw,200px);animation:.65s both thumbnail-in;animation-delay:calc(var(--order)*80ms);position:absolute;overflow:hidden}.overview-project:first-child{top:8%;left:16%}.overview-project:nth-child(2){top:48%;left:61%}.overview-project:nth-child(3){top:4%;left:82%}.overview-project:nth-child(4){top:63%;left:3%}.overview-project:nth-child(5){top:71%;left:40%}.overview-project img{object-fit:cover;width:100%;height:100%;transition:transform .5s,filter .4s}.overview-project:hover{opacity:1}.overview-project:hover img,.overview-project:focus-visible img{filter:brightness(.62);transform:scale(1.07)}.overview-hover{text-align:center;color:#fff;opacity:0;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:12px;font-size:11px;transition:opacity .25s,transform .25s;display:flex;position:absolute;inset:0;transform:translateY(8px)}.overview-hover strong{font-size:17px;font-weight:500}.overview-project:hover .overview-hover,.overview-project:focus-visible .overview-hover{opacity:1;transform:none}.overview-enter{color:#111;background:#fff;border-radius:50%;place-items:center;width:30px;height:30px;margin-top:7px;font-size:20px;display:grid}.overview-list-name{display:none}.overview-signature{pointer-events:none;justify-content:space-between;align-items:end;gap:50px;padding:35px 28px 0;display:flex}.overview-signature h1{letter-spacing:-.085em;color:#e8e8e8;font-size:clamp(90px,17vw,280px);font-weight:650;line-height:.8}.overview-signature p{color:#696969;max-width:320px;margin:0 5vw 0 0;font-size:13px;line-height:1.55}.overview-signature p span{margin-top:12px;font-size:10px;display:block}.is-list .overview-canvas{height:auto;min-height:0;padding:35px 5vw}.is-list .overview-project{aspect-ratio:auto;border-bottom:1px solid #dedede;align-items:center;gap:30px;width:100%;padding:15px 0;animation:.3s both thumbnail-in;display:flex;position:relative;top:auto;left:auto;overflow:visible}.is-list .overview-project img{width:75px;height:80px}.is-list .overview-hover{display:none}.is-list .overview-list-name{grid-template-columns:30px 1fr 1fr 30px;align-items:center;gap:20px;width:100%;font-size:12px;display:grid}.is-list .overview-list-name strong{letter-spacing:-1px;font-size:28px;font-weight:450}.case-hidden-nav{display:none!important}.case-close{margin-left:auto;font-size:12px}.case-page .language{display:block}.project-case-view{flex-direction:column;min-height:calc(100svh - 104px);display:flex}.case-image-gallery{position:relative}.case-image-strip{scroll-snap-type:x mandatory;scrollbar-width:none;gap:5px;padding:0;display:flex;position:relative;overflow-x:auto}.case-image-strip::-webkit-scrollbar{display:none}.case-image{scroll-snap-align:start;background:#eee;flex:0 0 43vw;height:53svh;min-height:300px;padding:0;display:block;position:relative;overflow:hidden}.case-image img{object-fit:cover;width:100%;height:100%;transition:transform .5s;display:block}.case-image:hover img{transform:scale(1.03)}.case-image>span{opacity:0;background:#fffd;border-radius:50%;place-items:center;width:42px;height:42px;font-size:23px;transition:opacity .2s;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.case-image:hover>span,.case-image:focus-visible>span{opacity:1}.case-image-controls{align-items:center;gap:20px;font-size:11px;display:flex;position:absolute;top:calc(100% + 22px);left:28px}.case-image-controls button{background:0 0;min-width:32px;min-height:32px;font-size:19px}.project-case-caption{grid-template-columns:1fr 1fr;gap:50px;padding:25px 28px 30px;display:grid}.project-case-credit{padding-top:58px;font-size:11px}.project-case-credit>span{color:#6d6d6d}.project-case-credit p{margin:4px 0}.project-case-description h1{letter-spacing:-.7px;font-size:24px;font-weight:500;line-height:1.2}.project-case-bottom{justify-content:space-between;gap:30px;margin-top:auto;padding:25px 28px;font-size:11px;line-height:1.5;display:flex}.project-case-bottom>a>span{color:#727272;font-size:10px;display:block}.project-case-bottom>a:last-child{text-align:right}.project-case-bottom>span{color:#6d6d6d}.image-lightbox{background:#fafafa;border:none;width:100vw;max-width:none;height:100svh;max-height:none;margin:0;padding:65px 0 50px;position:fixed;inset:0;overflow:hidden}.image-lightbox::backdrop{background:#fafafa}.image-lightbox[open]{animation:.35s zoom-open}.image-lightbox>img{object-fit:contain;width:100%;height:100%}.lightbox-close{background:0 0;font-size:12px;position:absolute;top:27px;right:28px}.lightbox-controls{align-items:center;gap:25px;font-size:12px;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.lightbox-controls button{background:0 0;min-width:44px;min-height:36px;font-size:22px}@keyframes thumbnail-in{0%{opacity:0;transform:translateY(35px)}to{opacity:1;transform:none}}@keyframes zoom-open{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@property --panel-open{syntax:"<percentage>";inherits:false;initial-value:0%}::view-transition-new(root){mask-image:repeating-linear-gradient(to right,#000 0 var(--panel-open),transparent var(--panel-open) 25%);animation:.55s cubic-bezier(.2,.65,.3,1) both panels-open}@keyframes panels-open{0%{--panel-open:0%}to{--panel-open:25%}}@media (width<=800px){.overview-toolbar{top:-52px;left:43%}.overview-canvas{height:65svh;min-height:430px;margin:0 20px}.overview-project{width:19vw;min-width:105px}.overview-project:nth-child(3){top:8%;left:77%}.overview-project:nth-child(2){top:48%;left:62%}.overview-signature{gap:25px;padding:30px 20px}.overview-signature h1{font-size:18vw}.overview-signature p{max-width:230px;margin:0;font-size:11px}.case-image{flex-basis:68vw}.project-case-caption{gap:30px}.project-case-description p{font-size:12px}}@media (width<=480px){.overview-toolbar{justify-content:center;margin:4px 0 10px;position:static}.overview-canvas{height:62svh;min-height:430px;margin:0 18px}.overview-project{width:31vw;min-width:0}.overview-project:first-child{top:5%;left:8%}.overview-project:nth-child(2){top:28%;left:58%}.overview-project:nth-child(3){top:72%;left:56%}.overview-project:nth-child(4){top:50%;left:3%}.overview-project:nth-child(5){width:24vw;top:84%;left:12%}.overview-signature{margin-top:65px;display:block}.overview-signature h1{font-size:24vw}.overview-signature p{max-width:260px;margin-top:25px}.overview-hover{padding:5px}.overview-hover strong{font-size:15px}.overview-hover>span:not(.overview-enter){font-size:10px}.is-list .overview-canvas{padding:10px 0}.is-list .overview-project{gap:15px;min-width:0}.is-list .overview-project img{width:56px;height:65px}.is-list .overview-list-name{grid-template-columns:1fr 15px;gap:8px}.is-list .overview-list-name>span:first-child{display:none}.is-list .overview-list-name strong{font-size:22px}.is-list .overview-list-name>span:nth-child(3){grid-row:2;font-size:10px}.is-list .overview-list-name>span:last-child{grid-area:1/2/3}.case-page .header{flex-wrap:nowrap;height:70px;min-height:70px}.case-image{flex-basis:83vw;height:50svh;min-height:320px}.case-image>span{opacity:1}.project-case-caption{flex-direction:column-reverse;gap:20px;padding:65px 20px 20px;display:flex}.project-case-credit{padding:0}.project-case-description{max-width:100%}.case-image-controls{top:calc(100% + 12px);left:16px}.project-case-description p{font-size:13px}.project-case-bottom{gap:15px;padding:25px 20px}.project-case-bottom>span{display:none}.image-lightbox{padding-top:65px}.case-close{margin-left:auto!important}.overview-signature p span{font-size:10px}}@media (prefers-reduced-motion:reduce){.overview-project,.image-lightbox[open]{animation:none!important}.overview-project img,.overview-hover,.case-image img{transition:none!important}::view-transition-new(root){animation:none!important;mask-image:none!important}}.is-list .overview-project:nth-child(n){aspect-ratio:auto;width:100%;top:auto;left:auto}.case-image-gallery{--case-frame:43vw}.case-image{flex-basis:var(--case-frame)}.case-image:last-child{margin-right:calc(100vw - var(--case-frame))}@media (width<=800px){.case-image-gallery{--case-frame:68vw}}@media (width<=480px){.case-image-gallery{--case-frame:83vw}}.editorial-page{margin:0 5%;padding-top:50px}.editorial-intro{max-width:1100px;padding:25px 0 70px}.editorial-kicker{color:#62665b;margin-bottom:32px;font-size:12px;display:block}.editorial-intro h1{letter-spacing:-.06em;max-width:1000px;font-size:clamp(46px,6.7vw,104px);font-weight:450;line-height:1.04}.editorial-intro>p{max-width:590px;margin:35px 0 0 auto;font-size:19px;line-height:1.65}.service-directory>a{border-top:1px solid #d3d3ce;grid-template-columns:45px 135px 1fr 40px;align-items:center;gap:35px;padding:25px 0;display:grid}.service-directory>a:hover{opacity:1}.service-directory img{object-fit:cover;width:135px;height:145px;transition:transform .35s}.service-directory>a:hover img{transform:scale(.95)}.service-number{color:#666;align-self:start;padding-top:9px;font-size:12px}.service-directory h2{letter-spacing:-.04em;margin:0 0 13px;font-size:clamp(25px,3.3vw,49px);font-weight:450}.service-directory p{color:#64645f;margin:0;font-size:15px}.service-arrow{font-size:34px}.editorial-cta{border-top:1px solid #c9cac2;margin-top:110px;padding:35px 0 55px;display:block}.editorial-cta>span{color:#64645f;font-size:13px}.editorial-cta strong{letter-spacing:-.05em;justify-content:space-between;gap:30px;margin-top:24px;font-size:clamp(35px,5.8vw,88px);font-weight:450;line-height:1.15;display:flex}.service-feature{grid-template-columns:1fr 1fr;align-items:center;gap:9%;display:grid}.service-feature>img{object-fit:cover;width:100%;height:600px}.service-feature ul{margin:0 0 35px;padding:0;list-style:none}.service-feature li{border-bottom:1px solid #d3d3ce;padding:20px 0;font-size:20px;line-height:1.4}.service-feature>div>p{color:#64645f;font-size:17px;line-height:1.65}.editorial-inline{border-bottom:1px solid;margin-top:20px;padding-bottom:5px;font-size:14px;display:inline-block}.editorial-process{border-top:1px solid #d3d3ce;margin-top:100px;padding-top:30px}.editorial-process>div{grid-template-columns:repeat(3,1fr);gap:60px;display:grid}.editorial-process article>span{color:#666;font-size:12px}.editorial-process h2{letter-spacing:-1px;font-size:27px;font-weight:450}.editorial-process p{color:#62665b;font-size:16px;line-height:1.65}.about-editorial{grid-template-columns:1fr 1fr;align-items:start;gap:10%;display:grid}.about-word-art{letter-spacing:-.08em;color:#969c8e;padding:40px 0;font-size:clamp(90px,13vw,200px);line-height:.95}.about-editorial h2{letter-spacing:-.03em;margin:35px 0 22px;font-size:29px;font-weight:450}.about-editorial p{color:#62665b;font-size:17px;line-height:1.75}.about-disciplines{border-top:1px solid #d3d3ce;margin-top:90px;padding-top:30px}.about-disciplines>a{letter-spacing:-.03em;border-bottom:1px solid #deded8;justify-content:space-between;padding:22px 0;font-size:clamp(23px,3vw,40px);display:flex}.contact-page .contact.section{grid-template-columns:1fr 2fr;margin:0;padding:35px 0 50px}.contact-page .contact h2{margin-bottom:25px;font-size:35px}.contact-page .contact-content>p{font-size:16px}.home-contact-link{border-top:1px solid #d3d3ce;margin:40px 3.5% 80px;padding-top:35px}.home-contact-link>a{letter-spacing:-.05em;font-size:clamp(35px,5vw,70px)}.header nav{gap:25px;margin-right:4%}.overview-toolbar{left:40%}@media (width<=950px){.overview-toolbar{left:32%}.header nav{gap:17px;margin-right:0}.editorial-page{padding-top:25px}.service-feature{gap:6%}.service-feature>img{height:480px}.editorial-process>div{gap:30px}.service-directory>a{grid-template-columns:25px 100px 1fr 30px;gap:22px}.service-directory img{width:100px;height:120px}}@media (width<=600px){.editorial-page{margin:0 5%;padding-top:20px}.editorial-intro{padding:15px 0 40px}.editorial-intro h1{overflow-wrap:break-word;font-size:46px}.editorial-kicker{margin-bottom:25px;font-size:11px}.editorial-intro>p{margin-top:25px;font-size:16px}.service-directory>a{grid-template-columns:75px 1fr 20px;gap:15px;padding:22px 0}.service-number{display:none}.service-directory img{width:75px;height:98px}.service-directory h2{overflow-wrap:anywhere;font-size:25px}.service-directory p{font-size:13px;line-height:1.5}.service-arrow{font-size:23px}.service-feature,.about-editorial{grid-template-columns:1fr;gap:35px}.service-feature>img{height:380px}.service-feature li{font-size:18px}.service-feature>div>p,.about-editorial p{font-size:16px}.editorial-process{margin-top:65px}.editorial-process>div{grid-template-columns:1fr;gap:20px}.editorial-process h2{margin:12px 0}.editorial-process p{margin-top:10px}.editorial-cta{margin-top:65px;padding:25px 0 35px}.editorial-cta strong{font-size:40px}.about-word-art{padding:0;font-size:115px}.about-editorial h2:first-child{margin-top:0}.about-disciplines{margin-top:50px}.contact-page .contact.section{grid-template-columns:1fr;gap:15px}.contact-page .contact h2{font-size:30px}.overview-toolbar{position:static}.header nav{gap:14px}.header nav a{font-size:12px}}@media (prefers-reduced-motion:reduce){.service-directory img{transition:none}}.contact-page form{margin-top:0}.studio-frame{grid-template-columns:1fr 1fr;gap:0;min-height:calc(100svh - 104px);padding:0 28px 45px;display:grid}.studio-rail{flex-direction:column;justify-content:space-between;align-self:start;height:calc(100svh - 155px);padding:24px 35px 0 0;display:flex;position:sticky;top:25px}.studio-note{color:#71716c;max-width:275px}.studio-note p{margin:0 0 11px;font-size:15px;line-height:1.45}.studio-note>span{color:#73736f;font-size:11px}.studio-rail h1{letter-spacing:-.065em;overflow-wrap:anywhere;max-width:100%;margin:50px 0 0;font-size:clamp(66px,10vw,160px);font-weight:550;line-height:.85}.studio-content{width:100%;max-width:420px;padding:24px 0 0}.studio-copy{margin:0 0 30px}.studio-copy h2,.studio-disciplines h2{letter-spacing:-.025em;margin:0 0 19px;font-size:21px;font-weight:500;line-height:1.2}.studio-copy p{margin:0 0 15px;font-size:14px;line-height:1.6}.studio-image{margin:30px 0 35px}.studio-image img{object-fit:cover;filter:grayscale();width:100%;height:390px;display:block}.studio-image figcaption{color:#71716c;margin-top:9px;font-size:10px}.studio-disciplines{margin-top:40px}.studio-disciplines>a{border-bottom:1px solid #deded8;justify-content:space-between;gap:20px;padding:13px 0;font-size:14px;display:flex}.studio-content .editorial-cta{border-top:0;margin-top:45px;padding:22px 0}.studio-content .editorial-cta>span{font-size:12px}.studio-content .editorial-cta strong{letter-spacing:-.035em;margin-top:10px;font-size:28px;line-height:1.2}.studio-content .service-directory>a{grid-template-columns:60px 1fr 20px;gap:18px;padding:22px 0}.studio-content .service-number{display:none}.studio-content .service-directory img{width:60px;height:78px}.studio-content .service-directory h2{letter-spacing:-.04em;font-size:23px;line-height:1.15}.studio-content .service-directory p{font-size:12px;line-height:1.5}.studio-content .service-arrow{font-size:20px}.studio-content .service-feature{flex-direction:column;align-items:stretch;gap:30px;display:flex}.studio-content .service-feature>img{height:350px}.studio-content .service-feature .editorial-kicker{color:#222;margin-bottom:15px;font-size:13px}.studio-content .service-feature li{padding:12px 0;font-size:15px}.studio-content .service-feature>div>p{font-size:14px;line-height:1.6}.studio-content .editorial-process{border-top:0;margin-top:45px;padding-top:0}.studio-content .editorial-process>div{display:block}.studio-content .editorial-process article{grid-template-columns:24px 1fr;gap:5px 10px;margin:22px 0;display:grid}.studio-content .editorial-process article>span{padding-top:3px}.studio-content .editorial-process h2{margin:0;font-size:18px}.studio-content .editorial-process p{grid-column:2;margin:5px 0;font-size:14px}.studio-content .contact.section{border:0;margin:32px 0 0;padding:0;display:block}.studio-content .contact .section-label{display:none}.studio-content .contact form{margin:0}.studio-content .form-row{display:block}.studio-content input,.studio-content textarea{font-size:14px}.studio-content .form-bottom{flex-direction:column;align-items:stretch;gap:14px}.studio-content .form-bottom p{max-width:none;margin:0}.studio-content .submit{color:#191919;background:0 0;border-bottom:1px solid #222;border-radius:0;justify-content:space-between;padding:12px 0}.studio-content .submit:hover{color:#65655c}.studio-content .editorial-kicker{margin-bottom:26px;font-size:11px}.studio-frame+footer{border:0}.studio-content>*{animation:.45s both studio-appear}.studio-content>:nth-child(2){animation-delay:80ms}.studio-content>:nth-child(3){animation-delay:.14s}@keyframes studio-appear{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (width>=1500px){.studio-content{max-width:460px}}@media (width<=900px){.studio-frame{grid-template-columns:45% 55%;padding:0 22px 40px}.studio-rail{padding-right:28px}.studio-rail h1{font-size:10vw}.studio-content{padding-right:15px}.studio-note p{font-size:13px}.studio-copy h2{font-size:20px}}@media (width<=600px){.studio-frame{flex-direction:column;padding:0 20px 30px;display:flex}.studio-rail{flex-direction:column-reverse;gap:25px;height:auto;padding:26px 0 30px;position:static}.studio-rail h1{overflow-wrap:normal;hyphens:auto;margin:0;font-size:clamp(54px,17vw,96px);line-height:.95}.studio-note{max-width:280px}.studio-note p{font-size:13px}.studio-note>span{display:none}.studio-content{max-width:none;padding:0}.studio-copy h2{max-width:340px;font-size:21px}.studio-copy p{font-size:15px}.studio-image img{height:340px}.studio-content .service-directory h2{font-size:24px}.studio-content .service-feature li,.studio-content .service-feature>div>p,.studio-content .editorial-process p{font-size:15px}.studio-content input,.studio-content textarea{font-size:16px}.studio-content .editorial-cta strong{font-size:32px}.studio-content .service-feature>img{height:340px}}@media (prefers-reduced-motion:reduce){.studio-content>*{animation:none!important}}.studio-portrait img{aspect-ratio:1;object-fit:cover;object-position:center 25%;filter:none;height:auto}body[data-page=contact\/]{flex-direction:column;min-height:100dvh;display:flex}body[data-page=contact\/]>.header{flex-shrink:0}body[data-page=contact\/]>main{flex:1}body[data-page=contact\/] .studio-frame{min-height:0;padding-bottom:24px}body[data-page=contact\/] .studio-rail{height:auto;min-height:0}body[data-page=contact\/]>footer{flex-shrink:0;margin-top:0;padding-top:24px;padding-bottom:24px}:root{--surface:#fafafa;--ink:#151515;--secondary:#71716c;--line:#d5d5ce;--ghost:#e8e8e8;color-scheme:light}:root[data-theme=dark]{--surface:#151515;--ink:#f2f1ed;--secondary:#aaa9a3;--line:#42423e;--ghost:#30302e;color-scheme:dark}body{background:var(--surface);color:var(--ink);transition:background-color .25s,color .25s}.header{gap:20px}.image-lightbox,.image-lightbox::backdrop{background:var(--surface);color:var(--ink)}.overview-signature h1{color:var(--ghost)}[data-theme=dark] :is(.studio-note,.studio-note>span,.studio-image figcaption,.language,.divider,.overview-signature p,.overview-toolbar button,.project-case-credit>span,.project-case-description>span,.project-case-bottom>a>span,.project-case-bottom>span,.editorial-kicker,.service-directory p,.service-feature>div>p,.editorial-process p,.editorial-process article>span,.editorial-cta>span,.form-bottom p,footer>span,.about-columns p+p,.demo-label,.contact-content>p){color:var(--secondary)}[data-theme=dark] :is(.language .active,.overview-toolbar [aria-pressed=true],input,textarea,.studio-content .submit,.studio-content .service-feature .editorial-kicker){color:var(--ink)}[data-theme=dark] :is(footer,.section,.service-directory>a,.service-feature li,.studio-disciplines>a,.is-list .overview-project,input,textarea,.studio-content .submit,.editorial-cta,.editorial-process){border-color:var(--line)}[data-theme=dark] :is(input,textarea)::placeholder{color:#96968f}[data-theme=dark] .case-image{background:#262624}.case-image>span{color:#151515}.editorial-cursor{z-index:2147483647;pointer-events:none;background:var(--ink);opacity:0;will-change:transform;border-radius:50%;width:10px;height:10px;transition:opacity .14s,width .24s cubic-bezier(.2,0,.2,1),height .24s cubic-bezier(.2,0,.2,1),background-color .15s;position:fixed;top:0;left:0;transform:translate(-100px,-100px)}.editorial-cursor[data-visible=true]{opacity:1}.editorial-cursor[data-interactive=true]{mix-blend-mode:difference;background:#fff;width:60px;height:60px}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){body.has-editorial-cursor,body.has-editorial-cursor *{cursor:none!important}}@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.editorial-cursor{display:none}}@media (width<=480px){.header{gap:12px}.header .language{margin-left:auto}.case-page .header{gap:12px}.case-page .header .language{margin-left:0}}@media (prefers-reduced-motion:reduce){body{transition:none}}.image-lightbox{padding:58px 0 44px}.lightbox-strip{scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;gap:5px;width:100%;height:100%;display:flex;position:relative;overflow-x:auto}.lightbox-strip::-webkit-scrollbar{display:none}.lightbox-strip>img{object-fit:cover;scroll-snap-align:start;flex:0 0 92vw;width:92vw;height:100%}.lightbox-strip>img:last-child{margin-right:8vw}.lightbox-close{top:18px}.lightbox-controls{bottom:4px}@media (width<=600px){.lightbox-strip>img{flex-basis:94vw;width:94vw}.lightbox-strip>img:last-child{margin-right:6vw}.lightbox-strip>img{object-fit:contain}.image-lightbox{padding-top:58px}}.case-page footer{display:flex}footer .language{white-space:nowrap;margin-left:auto}.header nav{margin-right:0}.flow-canvas{--card:clamp(120px,13vw,205px);height:calc(100svh - 340px);min-height:430px;position:relative;overflow:clip visible}.flow-project{left:0;top:var(--lane);width:var(--card);aspect-ratio:1;animation:project-drift var(--flow-duration,40s) linear infinite;animation-delay:var(--delay);will-change:transform;position:absolute;overflow:hidden}.flow-project img{object-fit:cover;width:100%;height:100%;transition:filter .25s,scale .4s}.flow-project:hover,.flow-project:focus-visible{opacity:1}.flow-project:hover img,.flow-project:focus-visible img{filter:brightness(.55);scale:1.04}.flow-project:hover .overview-hover,.flow-project:focus-visible .overview-hover{opacity:1;transform:none}.flowing-overview:has(.flow-project:hover) .flow-project,.flowing-overview:has(.flow-project:focus-visible) .flow-project,.flowing-overview.is-paused .flow-project{animation-play-state:paused!important}.flowing-overview .overview-toolbar{left:46%}@keyframes project-drift{0%{transform:translateX(max(100vw,calc(var(--card)*var(--project-count,5)*1.6)))}to{transform:translateX(calc(-1 * var(--card)))}}.project-stack{grid-template-columns:1fr 1fr;gap:25px;min-height:calc(100svh - 104px);padding:20px 28px 45px;display:grid;overflow:hidden}.stack-title{flex-direction:column;justify-content:flex-end;align-items:flex-start;padding-bottom:8px;display:flex}.stack-title p{max-width:250px;color:var(--secondary);align-self:flex-start;margin-bottom:auto;font-size:13px}.stack-title h1{letter-spacing:-.075em;font-size:clamp(65px,9.5vw,155px);font-weight:550}.stack-title>span{color:var(--secondary);margin-top:18px;font-size:10px}.stack-canvas{grid-template-columns:repeat(3,1fr);align-content:end;align-self:stretch;gap:6px;display:grid}.stack-project{aspect-ratio:1;animation:1s cubic-bezier(.22,.7,.2,1) both project-drop;animation-delay:calc(var(--order)*.13s);background:var(--surface);display:block;position:relative;overflow:hidden}.stack-project:nth-child(2),.stack-project:nth-child(4){grid-column:2}.stack-project img{object-fit:cover;width:100%;height:100%;transition:scale .4s}.stack-project>span{color:#fff;background:linear-gradient(#0000,#0009);justify-content:space-between;padding:24px 10px 10px;font-size:12px;display:flex;position:absolute;inset:auto 0 0}.stack-project strong{font-weight:500}.stack-project:hover{opacity:1}.stack-project:hover img{scale:1.05}@keyframes project-drop{0%{opacity:0;transform:translateY(-95svh)rotate(-8deg)}65%{opacity:1;transform:translateY(0)rotate(1deg)}82%{transform:translateY(-18px)rotate(-1deg)}to{opacity:1;transform:none}}@media (width<=600px){.flow-canvas{--card:125px;height:58svh;min-height:400px}.flowing-overview .overview-toolbar{justify-content:center;margin:0 0 10px;position:static}.flowing-overview .overview-signature{margin-top:0}.project-stack{grid-template-columns:1fr;gap:45px;min-height:calc(100svh - 120px);padding:20px}.stack-title h1{font-size:20vw}.stack-title p{margin:0 0 30px}.stack-canvas{justify-self:end;width:90%;min-height:320px}.stack-project>span{padding:18px 6px 6px;font-size:10px}}.flow-project{animation:project-drift var(--flow-duration,40s) linear infinite!important;animation-delay:var(--delay)!important}.flowing-overview.is-paused .flow-project,.flowing-overview:has(.flow-project:hover) .flow-project,.flowing-overview:has(.flow-project:focus-visible) .flow-project{animation-play-state:paused!important}.flowing-overview.is-running .flow-project{animation-play-state:running!important}.flowing-overview.is-running:has(.flow-project:hover) .flow-project,.flowing-overview.is-running:has(.flow-project:focus-visible) .flow-project{animation-play-state:paused!important}.stack-project{animation:1s cubic-bezier(.22,.7,.2,1) both project-drop!important;animation-delay:calc(var(--order)*.13s)!important}.flow-project{perspective:850px;overflow:visible}.flow-card-surface{width:100%;height:100%;transform-style:preserve-3d;transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .35s;display:block;position:relative;transform:scale(1);box-shadow:0 0 #0000}.flow-card-surface>img{display:block}.flow-project:hover,.flow-project:focus-visible{z-index:5}@media (hover:hover) and (pointer:fine){.flow-project:hover .flow-card-surface{transform:scale(1.17) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg));box-shadow:var(--shadow-x,0px) var(--shadow-y,20px) 35px -10px #0006;transition:transform .18s ease-out,box-shadow .18s ease-out}.flow-project:hover img{scale:1}}.flow-project:focus-visible .flow-card-surface{transform:scale(1.1);box-shadow:0 18px 30px -10px #0005}.flow-card-surface{transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s!important}html .flowing-overview.is-running .flow-project,html .flowing-overview.is-running:has(.flow-project:hover) .flow-project,html .flowing-overview.is-running:has(.flow-project:focus-visible) .flow-project{animation-play-state:running!important}.stack-canvas{grid-template-columns:repeat(4,1fr);align-content:end}.stack-project:nth-child(n){grid-column:auto}.stack-project:first-child{grid-column:3}.stack-project>span{font-size:10px}.stack-title{align-self:start;min-height:calc(100svh - 180px);position:sticky;top:125px}@media (width<=600px){.stack-canvas{grid-template-columns:repeat(3,1fr);width:100%}.stack-title{min-height:0;position:static}.stack-project:first-child{grid-column:2}}.page-display-title.page-display-title{color:var(--ghost);letter-spacing:-.085em;text-transform:lowercase;overflow-wrap:normal;hyphens:none;margin:0;font-size:clamp(64px,17vw,280px);font-weight:650;line-height:.8}.studio-rail .page-display-title,.stack-title .page-display-title,.project-case-credit .page-display-title{font-size:min(17vw,calc(100cqw / (var(--title-letters,8) * .49)));text-wrap:balance;max-width:100%}.studio-rail .page-display-title{margin-top:50px}.project-case-credit .page-display-title{margin:16px 0 28px}.project-case-credit{align-self:end;padding-top:58px}.stack-title .page-display-title{margin-top:40px}@media (width<=600px){.page-display-title.page-display-title{font-size:min(24vw,calc(100cqw / (var(--title-letters,8) * .49)))}.overview-signature .page-display-title{font-size:24vw}.studio-rail .page-display-title{margin:0}.project-case-credit .page-display-title{margin:10px 0 25px}.project-case-credit{width:100%;padding-top:0}.stack-title .page-display-title{margin-top:0}}.studio-rail,.stack-title{width:100%;min-width:0}body{isolation:isolate}.page-display-title.page-display-title{z-index:-1;pointer-events:none;max-width:calc(100vw - 56px);font-size:min(17vw,calc((100vw - 56px) / (var(--title-letters,8) * .49)));text-wrap:balance;position:fixed;bottom:24px;left:28px;margin:0!important}.studio-rail,.stack-title,.project-case-credit{container-type:normal}.studio-rail{height:auto;position:static}.stack-title .page-display-title,.studio-rail .page-display-title,.project-case-credit .page-display-title{font-size:min(17vw,calc((100vw - 56px) / (var(--title-letters,8) * .49)));position:fixed;bottom:24px;left:28px}@media (width<=600px){.page-display-title.page-display-title{max-width:calc(100vw - 40px);font-size:min(24vw,calc((100vw - 40px) / (var(--title-letters,8) * .49)));bottom:20px;left:20px}}body:has(.project-stack){max-width:none;min-height:100svh}.project-stack{min-height:0;padding:0;display:block;overflow:visible}.stack-title{min-height:0;padding:0;position:static;container-type:normal}.stack-canvas{width:100%;height:calc(100svh - 104px);min-height:0;display:block;position:relative}.stack-project:nth-child(n){aspect-ratio:1;grid-column:auto;width:clamp(120px,13vw,205px);height:clamp(120px,13vw,205px);position:absolute;overflow:hidden}.stack-project>span{text-align:center;color:#fff;opacity:0;background:#0008;justify-content:center;align-items:center;gap:10px;padding:16px;font-size:14px;line-height:1.35;transition:opacity .25s;display:flex;inset:0}.stack-project:hover>span,.stack-project:focus-visible>span{opacity:1}.stack-project:focus-visible{outline:2px solid var(--ink);outline-offset:3px;z-index:2}.stack-title .page-display-title{font-size:min(17vw,calc((100vw - 56px) / (var(--title-letters,8) * .49)));margin:0;position:fixed;bottom:24px;left:28px}body:has(.project-stack) footer{border:0;margin-top:12px;padding:16px 0}body:has(.project-stack) footer .wordmark{display:none}@media (width<=600px){.project-stack{padding:0}.stack-project:nth-child(n){width:125px;height:125px}.stack-title .page-display-title{font-size:min(24vw,calc((100vw - 40px) / (var(--title-letters,8) * .49)));bottom:20px;left:20px}.stack-project>span{font-size:12px}}.stack-canvas{gap:0}body:has(.project-stack) main{min-height:calc(100svh - 104px)}body:has(.project-stack) footer{z-index:1;background:var(--surface);min-height:76px;margin:0;padding:28px;position:relative}@media (width>=481px) and (width<=800px){.stack-canvas{height:calc(100svh - 90px)}body:has(.project-stack) main{min-height:calc(100svh - 90px)}}@media (width<=480px){.stack-canvas{height:calc(100svh - 96px)}body:has(.project-stack) main{min-height:calc(100svh - 96px)}body:has(.project-stack) footer{padding:24px 20px}}::view-transition-new(root){animation:.45s both scene-in!important;mask-image:none!important}::view-transition-old(root){animation:.45s both scene-out!important}::view-transition-group(*){animation-duration:.8s!important;animation-timing-function:cubic-bezier(.22,.75,.2,1)!important}::view-transition-old(*),::view-transition-new(*){mix-blend-mode:normal}::view-transition-old(project-forma),::view-transition-old(project-loop),::view-transition-old(project-edition),::view-transition-old(project-aether),::view-transition-old(project-fieldwork){object-fit:cover;height:100%;animation:.8s both resolution-out!important}::view-transition-new(project-forma),::view-transition-new(project-loop),::view-transition-new(project-edition),::view-transition-new(project-aether),::view-transition-new(project-fieldwork){object-fit:cover;height:100%;animation:.8s both resolution-in!important}::view-transition-old(site-header),::view-transition-old(site-footer){animation:.5s both scene-out!important}::view-transition-new(site-header),::view-transition-new(site-footer){animation:.5s both scene-in!important}.stack-project[data-matched]{animation:none!important}[data-morphing] .flow-project{animation-play-state:paused!important}[data-morphing] .studio-content>*{animation:none!important}@keyframes scene-in{0%{opacity:0}to{opacity:1}}@keyframes scene-out{0%{opacity:1}to{opacity:0}}@keyframes resolution-out{0%,30%{opacity:1}85%,to{opacity:0}}@keyframes resolution-in{0%,20%{opacity:0}75%,to{opacity:1}}[data-geometry] .flow-project{animation-play-state:paused!important}.studio-content>[data-entered]{animation:none!important}html[data-morphing] .flowing-overview.is-running .flow-project,html[data-geometry] .flowing-overview.is-running .flow-project{animation-play-state:paused!important}::view-transition-old(page-title){animation:.8s both resolution-out!important}::view-transition-new(page-title){animation:.8s both resolution-in!important}::view-transition-group(page-title){z-index:-1}body{background:var(--bg,#f7f7f7);max-width:none;margin:0}.header{z-index:30;background:0 0;height:60px;padding:16px 18px;position:relative}.header .wordmark{letter-spacing:-1.5px;font-size:23px}.header nav a{border-radius:30px;padding:8px 12px;font-size:14px;text-decoration:none}.header nav a[aria-current=page],.case-close{background:var(--text,#24252a);color:var(--bg,#f7f7f7);border-radius:30px;padding:8px 14px}main{min-height:calc(100svh - 60px);padding:0}.reference-home{flex-direction:column;justify-content:flex-end;min-height:calc(100svh - 60px);padding:0 18px 24px;display:flex;position:relative}.reference-hero{position:absolute;inset:-60px 0 190px;overflow:hidden}.reference-slide{opacity:0;animation:24s infinite hero-cycle;animation-delay:calc(var(--slide)*6s);pointer-events:none;position:absolute;inset:0}.reference-slide img{object-fit:cover;width:100%;height:100%}@keyframes hero-cycle{0%,24%{opacity:1;pointer-events:auto;transform:scale(1)}28%,to{opacity:0;pointer-events:none;transform:scale(1.035)}}.reference-home-caption{grid-template-columns:1fr 1fr;align-items:end;gap:24px;display:grid;position:relative}.reference-home-caption h1{letter-spacing:-.085em;color:var(--text,#24252a);margin:0;font-size:clamp(76px,12vw,180px);font-weight:650;line-height:.78}.reference-home-caption p{max-width:460px;margin:0;font-size:clamp(18px,1.6vw,24px);font-weight:500;line-height:1.2}.reference-work{padding:0 18px}.reference-work-images{scroll-snap-type:x mandatory;scrollbar-width:none;gap:4px;display:flex;overflow-x:auto}.reference-work-images a{scroll-snap-align:start;flex:0 0 62%;height:52svh;overflow:hidden}.reference-work-images img{object-fit:cover;width:100%;height:100%;transition:transform .7s}.reference-work-images a:hover img{transform:scale(1.025)}.reference-work-label{flex-direction:column;gap:5px;padding-top:22px;text-decoration:none;display:flex}.reference-work-label strong{font-size:20px;font-weight:500}.reference-work-label span{color:var(--muted,#999);font-size:14px}.page-display-title{max-width:100%;margin:0 0 40px;z-index:auto!important;color:var(--text,#24252a)!important;opacity:1!important;font-size:clamp(56px,9vw,130px)!important;line-height:.9!important;position:relative!important;bottom:auto!important;left:auto!important}.project-case-view{flex-direction:column;min-height:calc(100svh - 60px);padding:0 18px;display:flex}.case-image-gallery{margin:0 -18px}.case-image-strip{gap:4px;height:52svh;padding:0 18px}.case-image{aspect-ratio:1.5;flex:none;width:auto;height:100%}.case-image img{object-fit:cover;width:100%;height:100%}.case-image>span{display:none}.case-image-controls{margin:0;padding:10px 18px;font-size:12px;position:relative;inset:auto}.project-case-caption{grid-template-columns:1fr 1fr;gap:24px;margin:10px 0 30px;padding:0;display:grid;position:relative}.project-case-description{max-width:490px}.project-case-description h1{letter-spacing:-.03em;margin:0 0 5px;font-size:21px;font-weight:500;line-height:1.2}.project-case-description>span{color:var(--muted,#999);font-size:14px}.project-case-description p{margin:24px 0 0;font-size:14px;line-height:1.5}.project-case-bottom{margin-top:auto;padding:24px 0 16px;font-size:14px}.project-case-bottom>span{display:none}.project-case-bottom a:last-child{margin-left:auto}.case-page footer{margin-top:60px}.sr-only{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=700px){.header{height:60px;padding:12px}.header nav a{padding:7px;font-size:12px}.reference-home-caption{grid-template-columns:1fr;gap:24px}.reference-home-caption h1{font-size:19vw}.reference-home-caption p{max-width:340px;font-size:18px}.reference-hero{bottom:220px}.reference-work{padding:0 12px}.reference-work-images a,.reference-work-images a:nth-child(2){flex-basis:88%;height:40svh}.project-case-view{padding:0 12px}.project-case-caption{grid-template-columns:1fr}.project-case-credit{display:none}.case-image-strip{height:43svh}.case-image{aspect-ratio:auto;width:88vw}.project-case-bottom{gap:24px}.reference-work-label strong{font-size:18px}}@media (prefers-reduced-motion:reduce){.reference-slide{animation:none}.reference-slide:first-child{opacity:1;pointer-events:auto}.reference-work-images img{transition:none}}.header{background:var(--bg,#f7f7f7)}.reference-hero{top:0}.reference-slide:focus-visible{opacity:1;z-index:3;pointer-events:auto;animation-play-state:paused}html{scroll-behavior:smooth;scroll-padding-top:75px}body:has([data-one-page])>.header{position:sticky;top:0}.one-about,.one-services{grid-template-columns:1fr 1fr;gap:30px;max-width:1400px;margin:auto;padding:110px 18px;display:grid}.one-about h2,.one-contact h2{letter-spacing:-.04em;margin:0 0 30px;font-size:clamp(30px,4vw,60px);font-weight:500;line-height:1.1}.one-about p{max-width:580px;font-size:18px;line-height:1.5}.one-services h2{font-size:22px;font-weight:500}.one-services a{border-bottom:1px solid #8884;justify-content:space-between;padding:20px 0;font-size:24px;text-decoration:none;display:flex}.one-contact{grid-template-columns:1fr 1fr;gap:40px;padding:100px 18px;display:grid}.one-contact .contact{padding:0;display:block}.project-overlay{background:var(--bg,#f7f7f7);border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0}.project-overlay iframe{border:0;width:100%;height:100%;display:block}.project-overlay-close{z-index:50;background:var(--text,#24252a);color:var(--bg,#fff);cursor:pointer;border:0;border-radius:30px;padding:10px 16px;position:absolute;top:14px;right:18px}@keyframes overlay-in{0%{opacity:0;transform:translateY(35px)}to{opacity:1;transform:none}}@media (width<=700px){.one-about,.one-services,.one-contact{grid-template-columns:1fr;gap:25px;padding:65px 14px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-overlay[open]{animation:none}}body:has([data-one-page])>.header{background:color-mix(in srgb,var(--bg) 82%,transparent);backdrop-filter:blur(12px);position:fixed;inset:0 0 auto}.header nav{gap:0;margin:0 0 0 auto}.header nav a{color:var(--muted);border:0!important;padding:8px 12px!important}.header nav a[aria-current=page]{color:var(--bg)}.reference-home{height:100svh;min-height:700px;padding-bottom:28px}.reference-hero{inset:0 0 185px}.reference-home-caption h1{letter-spacing:-.075em;font-size:clamp(90px,13vw,190px);font-weight:650}.reference-home-caption p{max-width:440px;font-size:20px}.reference-montage{grid-template-columns:1fr 1fr;gap:22vh 18vw;padding:18vh 13.5vw 25vh;display:grid;position:relative;overflow:hidden}.reference-montage>a{transform:translateY(var(--offset,0px));will-change:transform;align-self:start;position:relative}.reference-montage>a:nth-child(2n){margin-top:30vh}.reference-montage img{aspect-ratio:1;object-fit:cover;width:100%;display:block}.reference-montage a>span{color:#fff;opacity:0;text-shadow:0 1px 10px #000;transition:opacity .25s;position:absolute;bottom:16px;left:16px}.reference-montage>a:hover,.reference-montage>a:hover>span{opacity:1}.one-about,.one-services,.one-contact{grid-template-columns:1fr 1fr;gap:0;max-width:none;min-height:95svh;padding:80px 18px 100px;position:relative}.one-about>div:last-child,.one-contact>div:last-child{max-width:425px}.one-about h2{margin-bottom:45px;font-size:42px;font-weight:500;line-height:1.14}.one-about p{margin-bottom:26px;font-size:14px;line-height:1.45}.one-section-heading{flex-direction:column;justify-content:space-between;padding-right:60px;display:flex}.one-section-heading>span{color:var(--muted);max-width:380px;font-size:20px}.one-section-heading h2{letter-spacing:-.065em;margin:120px 0 0;font-size:clamp(65px,9.6vw,145px);font-weight:600;line-height:.9;position:sticky;top:calc(100svh - 140px);bottom:24px}.one-services{min-height:0;padding-top:0;padding-bottom:170px}.one-services h2{font-size:20px}.one-services>div{max-width:425px}.one-services a{font-size:18px}.one-contact h3{letter-spacing:-.04em;margin:0 0 50px;font-size:30px;font-weight:500}.one-contact .contact{border:0;max-width:none;margin:0;padding:0}.one-contact .section-label{display:none}.one-contact form{margin:0}.one-contact .submit{padding:12px 22px}.one-contact .form-bottom{flex-direction:column;align-items:start}.reference-work{padding-top:60px;padding-right:0}.reference-work-images a{flex-basis:77%;height:51svh}.reference-work-images a:nth-child(2){flex-basis:55%}.reference-work-label{padding-top:22px}.reference-work-row{margin-bottom:48px}.project-overlay[open]{animation:none}.overlay-header{z-index:3;background:var(--bg);justify-content:space-between;align-items:center;height:60px;padding:0 18px;display:flex;position:sticky;top:0}.overlay-header .wordmark{letter-spacing:-1.5px;font-size:23px}.project-overlay-close{position:static}.project-case-description h2{letter-spacing:-.03em;margin:0 0 5px;font-size:21px;font-weight:500}.project-overlay .project-case-view{min-height:calc(100dvh - 60px)}@media (width<=700px){.header{flex-wrap:nowrap;gap:8px;min-height:60px;padding:12px}.header .wordmark{font-size:21px}.header nav{order:0;gap:0;width:auto;margin:0}.header nav a{font-size:11px;padding:7px!important}.reference-home{min-height:600px;padding:0 12px 28px}.reference-home-caption h1{font-size:20vw}.reference-home-caption p{font-size:17px}.reference-hero{bottom:235px}.reference-montage{gap:12vh 10vw;padding:15vh 8vw}.reference-montage>a:nth-child(2n){margin-top:18vh}.one-about,.one-services,.one-contact{grid-template-columns:1fr;gap:40px;min-height:0;padding:70px 12px}.one-section-heading h2{margin:30px 0 0;font-size:22vw;position:static}.one-section-heading>span{font-size:17px}.one-about h2{font-size:32px}.one-section-heading h2{font-size:22vw}.reference-work{padding-left:12px}.reference-work-images a,.reference-work-images a:nth-child(2){flex-basis:88%;height:44svh}}:root{--bg:var(--surface);--text:var(--ink);--muted:var(--secondary)}.header nav a[aria-current=page]{background:var(--ink);color:var(--surface)!important}.reference-home .reference-slide:hover{opacity:1}.project-overlay::backdrop{background:var(--surface)}[data-one-page]{--reference-gutter:1.4vw}body:has([data-one-page])>.header{backdrop-filter:none;background:0 0}.reference-home{height:200svh;min-height:0;padding:0}.reference-hero{z-index:-1;opacity:var(--hero-opacity,1);transform:translateY(var(--hero-y,0px)) scale(var(--hero-scale,1));will-change:transform,opacity;pointer-events:var(--hero-events,auto);position:fixed;inset:0}.reference-hero:after{content:"";background:linear-gradient(transparent,var(--surface));pointer-events:none;position:absolute;inset:55% 0 0}.reference-slide img{object-fit:cover;height:82%}.reference-home-caption{padding:0 var(--reference-gutter);pointer-events:none;opacity:var(--caption-opacity,1);z-index:0;grid-template-columns:1fr 1fr;gap:0;display:grid;position:fixed;inset:auto 0 28px}.reference-home-caption h1{visibility:hidden}.reference-home-caption p{pointer-events:auto;grid-column:2;max-width:425px;font-size:20px;line-height:1.2}.reference-fixed-title{z-index:0;pointer-events:none;letter-spacing:-.075em;color:var(--ink);font-size:clamp(90px,12.5vw,180px);font-weight:650;line-height:.8;position:fixed;bottom:24px;left:24px}.reference-fixed-title span{will-change:transform,opacity;transition:opacity .55s,transform .75s cubic-bezier(.2,.75,.2,1);display:block}.reference-fixed-title [data-title-home]{opacity:var(--title-opacity,1)}.reference-fixed-title [data-title-about]{white-space:nowrap;opacity:0;font-size:.78em;position:absolute;bottom:0;left:0;transform:translateY(20px)}[data-about-active] .reference-fixed-title [data-title-about]{opacity:1;transform:none}.reference-montage{z-index:1;padding:0;display:block;position:relative;overflow:visible}.montage-scene{height:100svh;padding:24px var(--reference-gutter);grid-template-columns:1fr 1fr;display:grid;position:relative}.montage-scene>a{--tile-size:24vw;width:var(--tile-size);height:var(--tile-size);aspect-ratio:1;transform:translateY(var(--offset,0px));will-change:transform;place-self:start center;position:relative}.montage-scene>a:nth-child(2){align-self:end}.montage-scene-single{grid-template-columns:1fr}.montage-scene-single>a{--tile-size:18vw;align-self:center}.montage-scene:first-child>a:nth-child(2){--tile-size:30vw}.montage-scene img{object-fit:cover;width:100%;height:100%;transition:filter .5s,transform .8s cubic-bezier(.2,.75,.2,1);display:block}.montage-scene a>span{text-align:center;color:#fff;opacity:0;background:#0002;flex-direction:column;justify-content:center;align-items:center;padding:16px;transition:opacity .35s;display:flex;position:absolute;inset:0}.montage-scene strong{font-size:24px;font-weight:500;line-height:1.1}.montage-scene small{margin-top:8px;font-size:13px}.montage-scene a:hover{opacity:1}.montage-scene a:hover img{filter:brightness(.65);transform:scale(1.02)}.montage-scene a:hover>span,.montage-scene a:focus-visible>span{opacity:1}.one-about{background:var(--surface);z-index:0;min-height:110svh;padding-top:100px}.one-about .one-section-heading h2{visibility:hidden}.one-about>div:last-child{max-width:33.2vw}.one-about>div:last-child h2{font-size:32px;font-weight:500;line-height:1.2}.one-section-heading>span{max-width:380px;padding-left:30px}.one-services{background:var(--surface);min-height:60svh;margin-top:-25svh;padding-top:0}.one-services>h2{visibility:hidden}.one-services>div{max-width:33.2vw;margin-left:0}.one-contact{background:var(--surface);min-height:92svh;padding-top:100px}.one-contact .one-section-heading h2{font-size:9vw}.one-contact .form-row{grid-template-columns:1fr 1fr;gap:24px;display:grid}[data-one-page]:not([data-view=works])>#works,[data-one-page][data-view=works]>:not(#works):not(.project-overlay){display:none}[data-one-page][data-view=works] .reference-work{padding-top:61px}body:has([data-view=works])>.header{background:var(--surface)}.reference-work-images{cursor:grab;scroll-snap-type:x proximity}.reference-work-images:active{cursor:grabbing}.project-overlay .project-case-description{max-width:425px}.project-overlay .project-case-description p{font-size:14px;line-height:1.45}.project-overlay .project-case-bottom{padding-top:35px}@media (width<=700px){[data-one-page]{--reference-gutter:12px}.reference-home{height:150svh}.reference-hero:after{inset:50% 0 0}.reference-home-caption{grid-template-columns:1fr;bottom:24px}.reference-home-caption p{grid-column:1;max-width:330px;font-size:16px}.reference-fixed-title{font-size:20vw;bottom:115px;left:12px}.reference-home-caption h1{display:none}.montage-scene{gap:6vw;height:85svh;padding:24px 8vw}.montage-scene>a,.montage-scene:first-child>a:nth-child(2){--tile-size:36vw}.montage-scene-single>a{--tile-size:52vw}.montage-scene strong{font-size:17px}.montage-scene small{font-size:11px}.one-about{min-height:90svh;padding-top:70px}.one-about>div:last-child,.one-services>div{max-width:none}.one-about .one-section-heading h2{display:none}.one-about .one-section-heading>span{padding:0}.one-about>div:last-child h2{font-size:30px}.one-services{min-height:0;margin-top:0}.one-contact .one-section-heading h2{font-size:20vw}.one-contact .form-row{display:block}[data-about-active] .reference-fixed-title{opacity:.12;bottom:24px}.one-about,.one-services{z-index:1;background:color-mix(in srgb,var(--surface) 94%,transparent)}}@media (prefers-reduced-motion:reduce){.reference-fixed-title span,.montage-scene img{transition:none}}.reference-hero{z-index:0}.reference-home-caption,.reference-fixed-title{z-index:2}.reference-montage{z-index:3}.one-about,.one-services,.one-contact{z-index:1}.reference-fixed-title{max-width:48vw}.one-contact{color:#d5d6d8;background:#272a32;min-height:100dvh;padding-top:120px;padding-bottom:28px}.one-contact>div:last-child{max-width:33.2vw}.one-contact h3{letter-spacing:-.025em;margin-bottom:60px;font-size:20px;line-height:1.2}.one-contact .one-section-heading h2{color:#f5f5f5;letter-spacing:-.07em;align-self:start;margin:0;font-size:9.6vw;position:static}.one-contact .one-section-heading{padding-right:0}.reference-contact-details{grid-template-columns:1fr 1fr;gap:30px;max-width:480px;font-size:14px;display:grid}.reference-contact-details small{color:#929399;font-size:14px}.reference-contact-details p{margin:8px 0 30px;font-size:14px;line-height:1.45}.one-contact .form-row{display:block}.one-contact label{margin-bottom:26px;font-size:14px}.one-contact input,.one-contact textarea{padding:10px 0;font-size:16px;color:#ddd!important;border-color:#696b73!important}.one-contact input::placeholder,.one-contact textarea::placeholder{color:#96989f}.one-contact textarea{resize:vertical;min-height:200px}.one-contact .form-bottom{flex-direction:column-reverse;gap:15px}.one-contact .submit{color:#dedee1;background:0 0;border:1px solid #8e9097;border-radius:0;width:100%;padding:14px;display:block}.one-contact .submit span{display:none}.one-contact .form-bottom p{color:#9fa1a8;max-width:none}.one-contact .form-status{color:#dedee1}body:has([data-one-page])>footer{color:#ccc;background:#272a32;border:0;margin:0;padding:22px 18px}body:has([data-one-page])>footer .wordmark{display:none}body:has([data-one-page])>footer .language,body:has([data-one-page])>footer .language .active{color:#ddd}@media (width<=700px){.one-contact{padding:60px 12px 24px}.one-contact>div:last-child{max-width:none}.one-contact .one-section-heading h2{margin-top:40px;font-size:20vw}.reference-contact-details{gap:18px;font-size:12px}.reference-contact-details small,.reference-contact-details p{font-size:12px}.one-contact h3{font-size:20px}.one-contact textarea{min-height:150px}}.reference-slide img{height:100%}.reference-hero:after{background:linear-gradient(transparent,var(--surface) 75%)}[data-one-page][data-view=works]{flex-direction:column;display:flex}[data-one-page][data-view=works]>#works{order:0}[data-one-page][data-view=works]>#contact{order:1;display:grid}body:has([data-one-page])>.header{background:0 0}.reference-hero-canvas{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;inset:0}.reference-hero:after{z-index:2}.reference-hero[data-webgl] .reference-slide{opacity:1;animation:none}.reference-hero[data-webgl] .reference-slide img{visibility:hidden}.letter-window{vertical-align:bottom;line-height:1.25;display:inline-block;position:relative;overflow:hidden}.letter-line{display:block}.letter-line+.letter-line{position:absolute;top:100%;left:0}.motion-letter{transition:transform .55s cubic-bezier(.22,.75,.2,1);transition-delay:var(--letter-delay);display:inline-block}a:hover>.letter-window .motion-letter,a:focus-visible>.letter-window .motion-letter,button:hover>.letter-window .motion-letter,button:focus-visible>.letter-window .motion-letter{transform:translateY(-100%)}.reference-fixed-title span.title-letter{transition:transform .85s cubic-bezier(.22,.75,.2,1),opacity .65s;transition-delay:var(--letter-delay);display:inline-block}.reference-fixed-title [data-title-about]{opacity:1;transform:none}.reference-fixed-title [data-title-about] .title-letter{opacity:0;transform:translateY(110%)rotate(7deg)}[data-about-active] .reference-fixed-title [data-title-home]{opacity:1;transform:none}[data-about-active] .reference-fixed-title [data-title-home] .title-letter{opacity:0;transform:translateY(-110%)rotate(-7deg)}[data-about-active] .reference-fixed-title [data-title-about] .title-letter{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.motion-letter,.reference-fixed-title span.title-letter{transition:none!important}}.reference-home-caption h1{visibility:visible;clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.reference-intro,.reference-scene-curtain{z-index:1000;background:var(--surface);pointer-events:none;will-change:transform;position:fixed;inset:0}.reference-intro{place-items:center;display:grid}.reference-intro-word{letter-spacing:-.075em;color:var(--ink);font-size:clamp(64px,12vw,180px);font-weight:650;line-height:1.15;display:flex;overflow:hidden}.reference-intro-word>span{display:inline-block}.reference-scene-curtain{z-index:25;background:var(--surface)}@media (prefers-reduced-motion:reduce){.reference-intro,.reference-scene-curtain{display:none}}.reference-fixed-title [data-title-home]{white-space:nowrap}@media (width<=700px){.reference-fixed-title{max-width:calc(100vw - 24px)}}.reference-slide{animation-play-state:var(--hero-cycle-state,running)}.header nav{gap:16px}.header nav a,.header nav a[aria-current=page]{border-radius:0;color:var(--muted)!important;background:0 0!important;border:0!important;padding:8px 0!important}.header nav a:hover,.header nav a:focus-visible{opacity:1;color:var(--ink)!important}.reference-fixed-title [data-title-projects]{white-space:nowrap;opacity:1;position:absolute;bottom:0;left:0;transform:none}.reference-fixed-title [data-title-projects] .title-letter{opacity:0;transform:translateY(110%)rotate(7deg)}[data-projects-active] .reference-fixed-title [data-title-home]{opacity:1;transform:none}[data-projects-active] .reference-fixed-title [data-title-home] .title-letter{opacity:0;transform:translateY(-110%)rotate(-7deg)}[data-projects-active] .reference-fixed-title [data-title-projects] .title-letter{opacity:.14;transform:none}@media (width<=700px){.header nav{gap:12px}.header nav a{font-size:12px}}.reference-fixed-title [data-title-contact]{white-space:nowrap;color:#f5f5f5;font-size:.78em;position:absolute;bottom:0;left:0}.reference-fixed-title [data-title-contact] .title-letter{opacity:0;transform:translateY(110%)rotate(7deg)}[data-contact-active] .reference-fixed-title [data-title-about] .title-letter{opacity:0;transform:translateY(-110%)rotate(-7deg)}[data-contact-active] .reference-fixed-title [data-title-contact] .title-letter{opacity:1;transform:none}[data-contact-active] .reference-fixed-title{opacity:1}.one-contact .one-section-heading h2{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}[data-one-page][data-contact-active] .reference-fixed-title{bottom:var(--contact-title-bottom,24px)}body:has([data-one-page])>footer{padding-inline:24px}@media (width<=700px){body:has([data-one-page])>footer{padding-inline:12px}}.reference-montage>.montage-scene{height:78svh}@media (width<=700px){.reference-montage>.montage-scene{height:58svh;min-height:380px}.reference-montage>.montage-scene-single{height:48svh;min-height:300px}}.reference-magnetic{transition:translate 1.2s cubic-bezier(.16,1,.3,1)}.reference-hover-char{opacity:0;filter:blur(4px);transition:opacity .4s,filter .4s,transform .5s;display:inline-block;transform:translateY(-25%)}.montage-scene>a:hover .reference-hover-char,.montage-scene>a:focus-visible .reference-hover-char{opacity:1;filter:blur();transform:translateY(0)}.reference-page-curtain{z-index:9998;pointer-events:none;grid-template-columns:repeat(12,1fr);display:grid;position:fixed;inset:0}.reference-page-curtain[hidden]{display:none}.reference-page-curtain>span{background:var(--surface,#fafafa);transform-origin:50%;transform:scaleY(0)}@media (prefers-reduced-motion:reduce){.reference-magnetic{translate:none!important}.reference-hover-char{opacity:1;filter:none;transform:none}.reference-page-curtain{display:none!important}}@media (hover:none){.reference-hover-char{opacity:1;filter:none;transform:none}}.editorial-cursor[data-kind=gallery]{background:var(--ink);mix-blend-mode:normal;width:64px;height:64px;color:var(--surface);place-items:center;display:grid}.editorial-cursor[data-kind=gallery]:after{content:"↔";font-size:24px}.editorial-cursor[data-kind=input]{border-radius:1px;width:3px;height:24px}.editorial-cursor[data-kind=nav]{width:var(--nav-width,76px);mix-blend-mode:normal;z-index:0;background:#000;border-radius:24px;height:38px}.header nav,.header>.wordmark{z-index:1;position:relative}body.has-editorial-cursor .header nav a:hover{opacity:1;color:#fff!important}.close-control.case-close,.close-control.project-overlay-close,.close-control.lightbox-close{z-index:10001;background:var(--ink,#24252a);min-width:76px;min-height:40px;color:var(--surface,#fafafa);opacity:1;cursor:pointer;border:0;border-radius:30px;justify-content:center;align-items:center;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:500;line-height:1.25;text-decoration:none;display:inline-flex;position:fixed;inset:14px 18px auto auto;margin:0!important}.close-control:focus-visible{outline-offset:4px;outline:2px solid}@media (width<=700px){.close-control.case-close,.close-control.project-overlay-close,.close-control.lightbox-close{top:10px;right:12px}}.editorial-cursor[data-kind=explore],.editorial-cursor[data-kind=zoom]{color:#272a32;mix-blend-mode:normal;width:88px;height:46px;box-shadow:none;background:#fff;border-radius:999px;place-items:center;display:grid}.editorial-cursor[data-kind=explore]:after,.editorial-cursor[data-kind=zoom]:after{content:"Explore";letter-spacing:-.025em;font-family:inherit;font-size:16px;font-weight:500;line-height:1}.editorial-cursor[data-kind=zoom]:after{content:"Zoom"}.montage-scene>a{overflow:visible}.project-preview-ripple{pointer-events:none;visibility:hidden;filter:brightness();z-index:0;width:140%;height:140%;transition:filter .5s;position:absolute;top:-20%;left:-20%}.montage-scene>a:hover .project-preview-ripple{filter:brightness(.65)}.montage-scene>a>span{z-index:1}.montage-scene>a:hover img{transform:none}.pasionel-logo{width:100%;height:auto;display:block;overflow:visible}.wordmark .pasionel-logo{width:112px;max-width:100%}.reference-fixed-title [data-title-home]{width:44vw;line-height:0}.reference-intro-word{width:min(64vw,800px);overflow:visible}.reference-fixed-title .pasionel-logo .title-letter{display:block}@media (width<=700px){.wordmark .pasionel-logo{width:96px}.reference-fixed-title [data-title-home]{width:85vw}}.reference-fixed-title .pasionel-logo .title-letter{transition:transform .85s cubic-bezier(.22,.75,.2,1),opacity .65s;transition-delay:var(--letter-delay)}@media (prefers-reduced-motion:reduce){.reference-fixed-title .pasionel-logo .title-letter{transition:none}}.pasionel-logo .logo-part{transform-box:view-box;transform-origin:50%}.reference-fixed-title .pasionel-logo .title-letter{transition:transform 1.1s cubic-bezier(.22,.75,.2,1),opacity .8s;transition-delay:var(--letter-delay);will-change:transform,opacity}[data-about-active] .reference-fixed-title [data-title-home] .logo-part,[data-projects-active] .reference-fixed-title [data-title-home] .logo-part{transform:translateY(-65%)rotate(-3deg)}@media (prefers-reduced-motion:reduce){.reference-fixed-title .pasionel-logo .title-letter{transition:none}}body:not(.case-page)>.header{transition:transform .38s cubic-bezier(.22,.75,.2,1);position:sticky;top:0}body:not(.case-page)>.header[data-scroll-hidden]{pointer-events:none;transform:translateY(-110%)}body:not(.case-page)>.header:focus-within{pointer-events:auto;transform:translateY(0)}body>footer>.wordmark{flex-shrink:0;margin-inline-end:28px}@media (prefers-reduced-motion:reduce){body:not(.case-page)>.header{transition:none}}body:has([data-one-page])>.header{position:fixed}.mobile-section-title,.brand-initial{display:none}@media (width<=700px){[data-one-page] .reference-fixed-title{display:none}}.wordmark .personal-logo,.personal-mark .personal-logo{width:42px;height:46px;overflow:visible}.reference-intro-word:has(.personal-logo){width:clamp(110px,18vw,220px)}.reference-fixed-title [data-title-home]{white-space:normal;letter-spacing:-.075em;width:46vw;font-size:7.4vw;line-height:.85}.reference-home-caption{bottom:28px}.reference-home-caption p{max-width:480px}@media (width<=700px){.personal-mark .personal-logo{width:34px;height:38px}.reference-home-caption{opacity:1;padding:0 24px 32px;display:block;position:absolute;inset:auto 0 0}.reference-home-caption h1{visibility:visible;clip-path:none;white-space:normal;letter-spacing:-.075em;width:auto;height:auto;margin:0 0 24px;font-size:clamp(48px,13vw,88px);line-height:.88;display:block;position:static;overflow:visible}.reference-home-caption p{max-width:34ch;font-size:20px;line-height:1.3}.reference-home{height:100svh;min-height:680px;position:relative}.reference-hero:after{inset:40% 0 0}}.reference-slide picture{width:100%;height:100%;display:block}html[data-theme=dark] .reference-hero canvas,html[data-theme=dark] .reference-slide img{filter:brightness(.72)}.reference-montage>.montage-scene{gap:0;min-height:44vw;padding-inline:0}.reference-montage>.montage-scene>a,.reference-montage>.montage-scene:first-child>a:nth-child(2){--tile-size:40vw;justify-self:start}.reference-montage>.montage-scene>a:nth-child(2),.reference-montage>.montage-scene-single>a{justify-self:end}@media (width<=700px){.reference-montage>.montage-scene>a,.reference-montage>.montage-scene:first-child>a:nth-child(2){--tile-size:50vw}}.reference-montage>.montage-scene:first-child>a:nth-child(2){justify-self:end}.reference-montage>.montage-scene-single{height:40vw;min-height:40vw;padding-block:0}.reference-montage>.montage-scene-single>a{place-self:start}@media (width<=700px){.reference-montage>.montage-scene-single{height:50vw;min-height:50vw;margin-top:max(24px - 50vw,50vw + 48px - max(58svh,380px))}}.reference-intro .intro-logo-stroke{fill:currentColor;fill-opacity:0;stroke:currentColor;stroke-dasharray:1;stroke-dashoffset:1px;stroke-linecap:round;stroke-linejoin:round;stroke-width:.42px;stroke-opacity:1;opacity:0;animation:1.4s cubic-bezier(.65,0,.35,1) forwards intro-logo-draw,.42s 1.12s forwards intro-logo-fill}.reference-intro .intro-logo-sweep{animation-delay:.52s,1.64s}.reference-intro .intro-logo-eye{animation-delay:1.58s,1.9s}.reference-intro .intro-logo-eye-right{transform-box:fill-box;transform-origin:50%;animation:.52s cubic-bezier(.65,0,.35,1) 1.58s forwards intro-logo-draw,.32s 1.9s forwards intro-logo-fill,.62s ease-in-out 2.6s forwards intro-logo-blink}@keyframes intro-logo-draw{0%{opacity:1;fill-opacity:0;stroke-opacity:1;stroke-dashoffset:1px}to{opacity:1;fill-opacity:0;stroke-opacity:1;stroke-dashoffset:0}}@keyframes intro-logo-fill{to{fill-opacity:1;stroke-opacity:0}}@keyframes intro-logo-blink{0%,35%,72%,to{transform:scaleY(1)}50%{transform:scaleY(.08)}}
