:root{--color-background: #F3F1EA;--color-text: #111110;--color-border: #1111101F;--color-line: #11111066;--color-surface: #E9E6DD;--color-accent: #FF4A1C;--color-on-accent: #111110;--font-primary: "Bricolage Grotesque", "Helvetica Neue", Helvetica, Arial, sans-serif;--font-serif: "Instrument Serif", "Times New Roman", serif;--font-mono: "Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--font-size-xxs: .8vw;--font-size-xs: 1vw;--font-size-s: 1.25vw;--font-size-m: 1.55vw;--font-size-l: 2vw;--radius-xs: 6px;--radius-s: 8px;--ease-out: cubic-bezier(.18, .66, .18, 1);--ease-in-out: cubic-bezier(.76, 0, .47, .95)}:root[data-theme=dark]{--color-background: #0F0F0E;--color-text: #F1EFE8;--color-border: #F1EFE826;--color-line: #F1EFE870;--color-surface: #1C1C1A}@media(max-width:768px){:root{--font-size-xxs: 2vw;--font-size-xs: 3.3vw;--font-size-s: clamp(.8rem, 3.7vw, 1.5rem);--font-size-m: clamp(.8rem, 3.7vw, 1.5rem);--font-size-l: 5vw}}@font-face{font-family:Bricolage Grotesque;src:url(/assets/font/BricolageGrotesque-latin-ext.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque;src:url(/assets/font/BricolageGrotesque-latin.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"Instrument Serif";src:url(/assets/font/InstrumentSerif-Italic-latin.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Geist Mono;src:url(/assets/font/GeistMono-latin.woff2) format("woff2");font-weight:400 500;font-style:normal;font-display:swap}html{font-family:var(--font-primary);background:var(--color-background);color:var(--color-text);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{min-height:100vh;font-size:var(--font-size-s);font-weight:400;letter-spacing:-.005em;margin:0;padding:0}*,*:before,*:after{box-sizing:border-box}h1,h2,h3,h4,h5,h6,p{margin:0;font-weight:400}ul,ol{margin:0;padding:0;list-style:none}li{margin:0;padding:0}a{color:inherit;text-decoration:none}button,input,textarea,select{margin:0;padding:0;border:0;border-radius:0;background:none;color:inherit;font:inherit;letter-spacing:inherit}button{cursor:pointer}img{display:block;max-width:100%;object-fit:cover}:focus-visible{outline:1px solid var(--color-text);outline-offset:3px}.o-40{opacity:.4}.text-link{position:relative}.text-indent{text-indent:4vw}.text-numb{position:relative}.text-numb:before{content:"01";position:absolute;top:.25em;left:0;text-indent:0;font-family:var(--font-mono);font-size:var(--font-size-xxs);letter-spacing:0}.text-box{overflow:hidden;display:block;padding-bottom:1px;text-wrap:nowrap;white-space:nowrap}.text-link:before{content:"";display:block;position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:var(--color-text);z-index:-1}.link-line,.link-line-active{position:relative;width:fit-content;padding-bottom:1px}.link-line:before{content:"";display:block;position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--color-text);z-index:-1;transform:scaleX(0);transform-origin:bottom right;transition:transform .7s cubic-bezier(.18,.83,.27,1)}.link-line:hover:before,a:hover>.link-line:before,a:focus-visible .link-line:before{transform:scaleX(1);transform-origin:bottom left}.cta{padding-bottom:1px}.cta-text{display:flex;align-items:center;gap:.5vw}.cta-icon{width:1vw;padding-top:.15vw}.cta-icon-up{width:.7vw;padding-top:.2vw}.infos-box{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:flex-start;padding-top:2.5vw;width:100%}.border{position:absolute;top:0;left:0;height:1px;width:100%;background:var(--color-border);transform-origin:left;transform:scaleX(0)}.infos-box-right{display:flex;justify-content:space-between;align-items:flex-start}.infos-box-text{width:21vw;font-size:var(--font-size-m);line-height:120%}.desktop-el{display:block}.mobile-el{display:none}@media(max-width:768px){.desktop-el{display:none}.mobile-el{display:block}.link-line:before{transform:scaleX(1)}.text-indent{text-indent:10vw}.cta-text{gap:2vw}.cta-icon{width:3vw;padding-top:.15vw}.cta-icon-up{width:2.5vw;padding-top:.2vw}.infos-box{padding-top:7vw}.infos-box-right{flex-direction:column;gap:10vw;justify-content:inherit;align-items:inherit}.infos-box-text{width:100%}}.loader{position:fixed;z-index:1500;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;background:var(--color-background);display:flex;flex-direction:column;justify-content:space-between;padding:1.7vw 2.5vw}.loader-name{font-family:var(--font-mono);font-size:clamp(.7rem,1vw,1rem);text-transform:uppercase;letter-spacing:.04em}.loader-counter{align-self:flex-end;font-size:16vw;line-height:.8;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.loader-counter i{font-family:var(--font-serif);font-size:.5em;letter-spacing:0;color:var(--color-accent)}.loader-panel{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:var(--color-text);transform:translateY(101%)}.loader.is-loaded .loader-counter,.loader.is-loaded .loader-name{transition:transform 1s var(--ease-in-out);transform:translateY(-5rem)}.loader.is-loaded .loader-panel{transition:transform 1s var(--ease-in-out);transform:translateY(0)}.loader.is-leaving{background:transparent;transition:transform .9s var(--ease-in-out);transform:translateY(-101%)}.loader.is-leaving .loader-counter,.loader.is-leaving .loader-name{visibility:hidden}@media(max-width:768px){.loader{padding:5vw 4vw}.loader-counter{font-size:30vw}}.home-title-letter,.text-in,.nav-in,.scroll-in{display:inline-block;transform:translateY(105%)}.is-ready .home-title-letter,.is-ready .text-in,.is-ready .nav-in,.is-ready .scroll-in.is-visible{animation:txt-in 1.2s var(--ease-out) var(--stagger-delay, 0s) both}.is-ready .scroll-in.is-static{transform:none;animation:none}@keyframes txt-in{0%{transform:translateY(105%)}to{transform:translateY(0)}}.is-ready .border.is-visible{animation:border-in 1.7s var(--ease-out) both}@keyframes border-in{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.project-card,.project-image{opacity:0;transition:opacity 1.7s var(--ease-out)}.is-ready .project-card.is-visible,.is-ready .project-image.is-visible{opacity:1}.transition-overlay{visibility:hidden;pointer-events:none;position:fixed;z-index:1400;top:0;right:0;bottom:0;left:0}.transition-block,.transition-back{position:absolute;top:0;right:0;bottom:0;left:0}.transition-back{z-index:0;background:#0000003b;opacity:0}.transition-block{z-index:1;display:flex;justify-content:center;align-items:center;background:var(--color-text);color:var(--color-background);transform:translateY(102%)}.transition-label{overflow:hidden;font-family:var(--font-serif);font-style:italic;font-size:9vw;line-height:1.1;padding:0 .1em}.transition-label span{display:block;transform:translateY(105%)}.transition-overlay.is-in,.transition-overlay.is-out{visibility:visible}.transition-overlay.is-in{pointer-events:auto}.is-in .transition-block{animation:panel-in 1s var(--ease-in-out) both}.is-in .transition-back{animation:back-in 1s ease-in-out both}.is-in .transition-label span{animation:txt-in .9s var(--ease-out) .35s both}.is-out .transition-block{animation:panel-out .9s var(--ease-in-out) both}.is-out .transition-label span{transform:none}@keyframes panel-in{0%{transform:translateY(102%)}to{transform:translateY(0)}}@keyframes panel-out{0%{transform:translateY(0)}to{transform:translateY(-102%)}}@keyframes back-in{0%{opacity:0}to{opacity:1}}.transition-wrapper.page-exit{animation:page-exit 1s var(--ease-in-out) both}@keyframes page-exit{0%{transform:translateY(0)}to{transform:translateY(-7rem)}}@media(max-width:768px){.transition-label{font-size:18vw}}.el-in{opacity:0;transform:translateY(1rem)}.is-ready .el-in{animation:el-in 1.7s var(--ease-out) both}@keyframes el-in{0%{opacity:0;transform:translateY(1rem)}to{opacity:1;transform:translateY(0)}}@media(max-width:768px){.el-in{transform:translateY(7vw)}@keyframes el-in{0%{opacity:0;transform:translateY(7vw)}to{opacity:1;transform:translateY(0)}}}header{position:sticky;z-index:1000;top:0;left:0;width:100%;padding:1.7vw 1.8vw}.navbar{position:relative;width:100%;height:fit-content;display:flex;justify-content:space-between;align-items:center;padding-bottom:2px}.nav-links-wrapper{position:absolute;top:0;left:50%;transform:translate(-50%)}.nav-logo,.nav-button,.nav-links-wrapper{padding:.3vw .7vw;border-radius:var(--radius-xs);background:var(--color-background)}.nav-links{overflow:hidden;display:flex;align-items:center;gap:.5vw}.nav-link{cursor:pointer;display:flex;align-items:flex-start;gap:.12vw}.nav-link-count{font-family:var(--font-mono);font-size:var(--font-size-xxs);letter-spacing:0}@media(max-width:768px){header{padding:4vw;display:flex;justify-content:space-between;align-items:center}.navbar{width:auto;padding-bottom:0}.nav-logo,.burger-button{padding:1vw 2vw;border-radius:var(--radius-xs);background:var(--color-background)}.burger-button{position:relative;z-index:100001;display:flex;align-items:center;box-shadow:0 0 0 1px inset var(--color-border);opacity:0;transform:scale(.8)}.burger-button.is-animated{animation:burger-button-in 1s var(--ease-out) both}@keyframes burger-button-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.burger-button-text{overflow:hidden;display:flex;flex-direction:column;height:1.25em;line-height:1.25;text-align:left}.burger-button-text-el{display:block;transition:transform .7s var(--ease-out)}.burger-button.is-open .burger-button-text-el{transform:translateY(-100%)}.burger-mobile{overflow:hidden;visibility:hidden;position:fixed;z-index:100000;top:0;right:0;bottom:0;left:0;width:100%;height:100dvh;pointer-events:none}.burger-mobile-overlay{position:absolute;z-index:0;top:0;left:0;width:100%;height:100%;background:#0002;opacity:0;transition:opacity .9s var(--ease-out)}.burger-mobile.is-open{visibility:visible;pointer-events:auto}.burger-mobile.is-open .burger-mobile-overlay{opacity:1}.burger-mobile.is-open .burger-wrapper{transform:translateY(0)}body.menu-open{overflow:hidden}.burger-wrapper{position:relative;z-index:1;width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;background:var(--color-background);padding:7rem 10vw 10vw;transform:translate(101%);transition:transform .7s var(--ease-out)}.burger-title{position:relative;display:flex;flex-direction:column;padding-bottom:5vw;margin-bottom:10vw}.burger-border{position:absolute;left:0;bottom:0;width:100%;height:1px;background:var(--color-border);transform:scaleX(0);transition:1.7s var(--ease-out) .1s;transform-origin:left}.burger-links{display:flex;flex-direction:column;gap:0}.burger-link{overflow:hidden}.burger-link-el{display:flex;align-items:start;gap:1vw}.burger-link-text{font-size:clamp(1.5rem,15vw,4rem);line-height:1.1}.burger-link-count{padding-top:.6rem;font-size:clamp(.8rem,5vw,1.5rem)}.cta-burger{display:flex;align-items:center;gap:.7rem}.cta-text-burger{font-size:clamp(.8rem,7vw,2rem)}.cta-icon-burger{width:6vw;max-width:1.8rem;min-width:1rem;padding-top:.15rem}.burger-title-el{display:inline-block}.burger-title-el,.burger-link-el,.cta-burger{opacity:0;transform:translateY(102%)}.burger-mobile.is-closing .burger-title-el,.burger-mobile.is-closing .burger-link-el,.burger-mobile.is-closing .cta-burger{opacity:1;transform:translateY(0)}.burger-mobile.is-open .burger-title-el{animation:burger-element-in .8s var(--ease-out) .1s both}.burger-mobile.is-open .burger-link-el{animation:burger-element-in .8s var(--ease-out) var(--stagger-delay) both}.burger-mobile.is-open .cta-burger{animation:burger-element-in .8s var(--ease-out) .6s both}.burger-mobile.is-open .burger-border{transform:scaleX(1)}@keyframes burger-element-in{0%{opacity:0;transform:translateY(102%)}to{opacity:1;transform:translateY(0)}}}.footer{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:flex-start;padding-top:2.5vw;margin:0 2.5vw 4vw}.footer-right{display:flex;justify-content:space-between;align-items:flex-start}.footer-box{display:flex;flex-direction:column;gap:2vw}.footer-text{font-size:var(--font-size-m);line-height:120%}.footer-text-open{width:21vw}.footer-text .text-box+.text-box-gap{margin-top:1.2em}@media(max-width:768px){.footer{padding-top:7vw;margin:0 4vw 15vw}.footer-right{flex-direction:column;gap:10vw;justify-content:initial;align-items:initial}.footer-box{gap:5vw;max-width:100%}.footer-text{font-size:var(--font-size-xs);line-height:130%}.footer-text-open{width:100%}}.home-hero{display:flex;flex-direction:column;align-items:center;gap:3.5vw;padding:6vw 2.5vw 7vw;width:100%}.home-title-wrapper{display:flex;justify-content:center;align-items:flex-end;gap:2vw;perspective:25vw;margin-top:-.66vw}.home-title-box{overflow:hidden;display:flex;align-items:flex-start;height:.72em;font-size:16.2vw;line-height:1;letter-spacing:0;-webkit-user-select:none;user-select:none}.home-title-letter{margin-top:-.13em}.home-title-box-1{transform:translate(9vw)}.home-title-box-2{transform:translate(-9vw)}.home-title-image-box{position:relative;overflow:hidden;flex:none;width:14vw;height:10vw;border-radius:var(--radius-xs);transform:scale(1.1) translate(1.5vw) rotateY(90deg);opacity:0;transform-style:preserve-3d;transform-origin:center}.home-title-box-1.is-animated,.home-title-box-2.is-animated{transform:translate(0);transition:transform 1.5s cubic-bezier(.66,0,.23,1)}.home-title-image-box.is-animated{opacity:1;transform:scale(1) translate(0) rotateY(0);transition:transform 1.5s cubic-bezier(.28,.54,.39,1),opacity .9s ease .1s}.home-title-image{position:absolute;top:50%;left:50%;width:100%;height:100%;object-fit:cover;transform:translate(-50%,-50%);opacity:0}.home-title-image.is-animated{animation:show-image 6s cubic-bezier(0,.57,1,.44) infinite}.home-title-image-1.is-animated{animation-delay:0s}.home-title-image-2.is-animated{animation-delay:1.5s}.home-title-image-3.is-animated{animation-delay:3s}.home-title-image-4.is-animated{animation-delay:4.5s}@keyframes show-image{0%{opacity:1;transform:translate(-50%,-50%) scale(1.2)}25%{opacity:1;transform:translate(-50%,-50%) scale(1)}25.01%,to{opacity:0;transform:translate(-50%,-50%) scale(1)}}.home-hero-subtitle-wrapper{display:flex;flex-direction:column;align-items:center;margin-bottom:4.5vw}.home-hero-subtitle{overflow:hidden;display:flex;height:4.3vw;font-size:3.6vw;line-height:118%;white-space:nowrap}.home-work{padding:5vw 2.5vw 9vw}.home-work-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:3.5vw}.home-work-header-title{font-size:3.6vw}.home-work-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px}@media(max-width:768px){.home-hero{gap:7vw;padding:25vw 4vw}.home-title-box{font-size:20.6vw}.home-title-box-1{transform:translate(11.5vw)}.home-title-box-2{transform:translate(-11.5vw)}.home-title-image-box{width:19vw;height:13vw}.home-hero-subtitle-wrapper{margin-bottom:15vw}.home-hero-subtitle{height:8.5vw;font-size:6.6vw}.home-work{display:flex;flex-direction:column;padding:5vw 4vw 30vw}.home-work-header{margin-bottom:7vw}.home-work-header-title{font-size:6vw}.home-work-grid{display:flex;flex-direction:column;gap:7vw;margin-bottom:24vw}.home-work .cta{margin:auto}}.work-hero{padding:2.5vw 2.5vw 7vw}.work-hero-title-wrapper{display:flex;justify-content:center;align-items:center;padding:6vw 0 12vw}.work-hero-title{display:flex;gap:1.5vw;font-size:8vw;line-height:100%;padding-bottom:.12em}.work-title-image{width:8.5vw;height:8.5vw;padding:1.6vw;background:var(--color-accent);border-radius:var(--radius-xs)}.work-title-image img{width:100%;height:100%;object-fit:contain}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:2vw 2.5vw 9vw}.project-card{cursor:pointer;display:flex;flex-direction:column;gap:.7vw;margin-bottom:5vw;backface-visibility:hidden}.project-card-box{position:relative;overflow:clip;width:100%;height:33vw;border-radius:var(--radius-s);background:var(--color-surface)}.project-card-image{width:100%;height:100%;transition:transform 1s cubic-bezier(.21,.83,.27,1.01)}.project-card:hover .project-card-image{transform:scale(1.02)}.project-card-box.is-contained{display:flex;justify-content:center;align-items:center;padding:3.4vw}.is-contained .project-card-image{width:auto;height:auto;max-height:100%;border-radius:var(--radius-xs);box-shadow:0 1.2vw 3vw -1vw #00000040}.project-card-title-box{display:flex;align-items:baseline;gap:.6vw}.project-card-title{font-size:var(--font-size-m)}.project-card-title-number{font-family:var(--font-mono);font-size:var(--font-size-xxs);letter-spacing:0}.project-card-arrow{width:1.2vw;opacity:0;transform:translate(-.3vw);transition:1s cubic-bezier(.21,.83,.27,1.01)}.project-card:hover .project-card-arrow,.project-card:focus-visible .project-card-arrow{opacity:1;transform:translate(0)}@media(max-width:768px){.work-hero{padding:4vw 4vw 7vw}.work-hero-title-wrapper{padding:20vw 0 25vw}.work-hero-title{gap:2vw;font-size:11vw}.work-title-image{width:12vw;height:12vw;padding:2.2vw}.work-grid{display:flex;flex-direction:column;gap:10vw;padding:6vw 4vw 30vw}.project-card-box{height:60vw}.project-card-box.is-contained{padding:6vw}.project-card{gap:2vw;margin-bottom:0}.project-card-title-box{gap:2vw}.project-card-arrow{display:none}}.archive-hero{padding:2.5vw 2.5vw 7vw}.archive-hero-title-wrapper{display:grid;grid-template-columns:1fr 1fr;padding:3vw 0 9vw}.archive-hero-title{font-size:8vw;line-height:90%}.archive-hero-title .text-box{padding-bottom:.14em;margin-bottom:-.14em}.archive{padding:2.5vw 2.5vw 15vw}.archive-list-header{margin-bottom:4vw}.list-last-el{text-align:end;justify-self:end}.archive-list{display:flex;flex-direction:column}.archive-list-header,.archive-list-text{overflow:hidden;display:grid;grid-template-columns:4vw calc(50% - 4vw) 1fr 1fr;align-items:baseline;width:100%}.archive-list-el{position:relative;display:block;cursor:default;width:100%;padding:.3vw 0}a.archive-list-el{cursor:pointer}.archive-list-el:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:var(--color-line);opacity:0}.archive-list-text-box{transition:.7s var(--ease-out)}.archive-name,.archive-detail{font-size:var(--font-size-m)}.archive-name{overflow:hidden;text-overflow:ellipsis;padding-right:2vw}.archive-link{display:inline-flex;align-items:center;gap:.45vw}.archive-list-image-box{pointer-events:none;overflow:hidden;position:absolute;z-index:999;top:50%;left:18.7vw;transform:translateY(-45%);width:26vw;height:16.5vw;border-radius:var(--radius-s);background:var(--color-surface);opacity:0;transition:height .7s var(--ease-out)}.archive-list-image{width:100%;height:100%;transform:scale(1.1);transition:.7s var(--ease-out)}.archive-list-el.is-hover .archive-list-image{transform:scale(1)}.archive-list-el.is-hover .archive-list-image-box{opacity:1;height:19.5vw}.archive-list-el.is-hover:after{opacity:1}@media(max-width:768px){.archive-hero{padding:4vw 4vw 7vw}.archive-hero-title-wrapper{padding:15vw 0 20vw}.archive-hero-title{font-size:12vw;line-height:90%}.archive{padding:20vw 4vw 30vw}.list-last-el{display:none}.archive-list{display:grid;grid-template-columns:1fr 1fr;gap:1px}.archive-list-header,.archive-list-text{display:none}.archive-list-el{padding:0}.archive-list-el:after{display:none}.archive-list-text-box{display:none}.archive-list-image-box{position:initial;z-index:1;transform:translateY(0);width:auto;height:auto;aspect-ratio:4 / 3;opacity:1}.archive-list-image,.archive-list-el.is-hover .archive-list-image{transform:scale(1)}.archive-list-el.is-hover .archive-list-image-box{opacity:1;height:auto}}.about{position:relative;display:grid;grid-template-columns:43vw 1fr;align-items:start}.about-photo-box{position:sticky;top:5.6vw;height:calc(100dvh - 5.6vw);padding:7vw 2.5vw 2vw;display:flex;justify-content:center;align-items:start}.about-right{display:flex;flex-direction:column;gap:12vw;padding:6.3vw 2.5vw 2vw 0;min-width:0}.about-photo-wrapper{overflow:hidden;width:18vw;aspect-ratio:3 / 4;border-radius:var(--radius-xs)}.about-photo{width:100%;height:100%;object-position:54% 40%;transform:scale(1.3);transform-origin:center}.about-first{display:flex;flex-direction:column;gap:3vw}.about-first-text{max-width:46vw;font-size:2.5vw;line-height:1.2}.alinea-1{text-indent:7vw}.alinea-2{text-indent:2vw}.about-second{padding-left:7vw;margin-bottom:12vw;display:flex;flex-direction:column;gap:12vw}.about-group{display:flex;flex-direction:column;gap:5vw}.about-group-label{position:relative;padding-top:2.5vw}.about-service,.about-credit{display:flex;flex-direction:column;gap:7vw}.about-infos-box{display:flex;flex-direction:column;gap:3vw}.about-infos-head{display:flex;flex-direction:column;gap:1vw}.about-title{max-width:44vw;font-size:3vw;line-height:1.12}.about-bullets{display:flex;flex-direction:column;gap:1.6vw}.about-service-text{position:relative;padding-left:6vw;font-size:var(--font-size-m);line-height:130%}.about-service-lines{max-width:25vw}.about-numb{position:absolute;top:.2em;left:0;font-family:var(--font-mono);font-size:var(--font-size-xxs);letter-spacing:0}.about-text{max-width:38vw;font-size:var(--font-size-m);line-height:130%}.about-certs{display:grid;grid-template-columns:1fr 1fr;gap:3px;row-gap:3vw}.cert-card{display:flex;flex-direction:column;gap:.7vw;min-width:0}.cert-card.project-card{margin-bottom:0;cursor:default}a.cert-card.project-card{cursor:pointer}.cert-card .project-card-box{height:auto;aspect-ratio:1.414 / 1}.cert-card .project-card-image{object-fit:contain}.cert-card-caption{display:grid;grid-template-columns:1.6vw 1fr;align-items:baseline;padding-right:1.5vw;line-height:1.25}.cert-card-issuer{grid-column:2;margin-top:.25vw}.cta-text-about{font-size:3vw}.cta-icon-about{width:2.5vw;padding-top:.2vw;margin-right:.7vw}@media(max-width:768px){.about{display:flex;flex-direction:column;justify-content:center;align-items:center}.about-photo-box{position:initial;height:fit-content;padding:20vw 4vw 15vw;justify-content:initial;align-items:initial}.about-photo-wrapper{width:40vw}.about-right{gap:20vw;padding:5vw 4vw 25vw;width:100%}.about-first{gap:7vw}.about-first-text{max-width:100%;font-size:5vw}.alinea-1{text-indent:15vw}.alinea-2{text-indent:5vw}.about-second{padding-left:10vw;margin-bottom:12vw;gap:20vw}.about-group{gap:12vw}.about-group-label{padding-top:7vw}.about-service,.about-credit{gap:15vw}.about-infos-box{gap:5vw}.about-infos-head{gap:2.5vw}.about-title{max-width:100%;font-size:7vw}.about-bullets{gap:4vw}.about-service-text{padding-left:15vw}.about-service-lines,.about-text{max-width:100%}.about-certs{row-gap:7vw}.cert-card{gap:2vw}.cert-card-caption{grid-template-columns:4.5vw 1fr;padding-right:3vw;font-size:var(--font-size-xs)}.cert-card-issuer{margin-top:1vw}.about-credit .cta{margin-top:7vw}.cta-text-about{font-size:9.7vw}.cta-icon-about{width:7vw;padding-top:.2vw;margin-right:2.5vw}}.project{position:relative;display:grid;grid-template-columns:43vw 1fr;align-items:start}.project-image-box{display:flex;flex-direction:column;gap:1vw;padding:0 2.5vw 2vw 0}.project-image{width:100%;border-radius:var(--radius-xs);background:var(--color-surface)}.project-infos{position:sticky;top:5.6vw;height:calc(100dvh - 5.6vw);padding:0 2.5vw 2vw;display:flex;flex-direction:column;justify-content:space-between}.project-number{position:absolute;top:-3.4vw;right:2.5vw;font-family:var(--font-mono);font-size:var(--font-size-xxs);letter-spacing:0}.project-title{font-size:4vw;line-height:1.1;margin:3vw 0 6vw}.project-desc-box{position:relative;display:grid;grid-template-columns:1.2fr 2fr;align-items:start}.project-details{display:flex;flex-direction:column;gap:2vw;min-width:0}.project-desc{max-width:20vw}@media(max-width:768px){.project{display:flex;flex-direction:column;gap:20vw;align-items:initial;padding:5vw 4vw 7vw}.project-image-box{gap:1vw;padding:0}.project-infos{position:initial;height:auto;padding:0 2.5vw}.project-number{top:7vw;right:6vw}.project-title{font-size:10vw;margin:10vw 0 15vw}.project-desc-box{grid-template-columns:1fr 2fr}.project-details{gap:7vw}.project-desc{max-width:100%}.next-project-mobile{margin:10vw auto 25vw;width:fit-content}}html{transition:background-color .5s ease,color .5s ease}::selection{background:var(--color-accent);color:var(--color-on-accent)}body:after{content:"";position:fixed;z-index:1200;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:.3;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0  0 0 0 0 0  0 0 0 0 0  0 0 0 .16 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}[data-theme=dark] body:after{mix-blend-mode:screen;opacity:.35;filter:invert(1)}[data-word]{white-space:nowrap}.label{font-family:var(--font-mono);font-size:.78em;text-transform:uppercase;letter-spacing:.03em}.serif{font-family:var(--font-serif);font-style:italic;font-size:1.07em;letter-spacing:-.01em;padding-right:.05em}.icon{flex:none;display:block;width:1em;height:auto}.cta-text .icon{width:1vw}.cta-text .icon-up{width:.7vw}.dot{display:inline-block;width:.5em;height:.5em;border-radius:50%;background:var(--color-accent)}.clock{display:inline-flex;align-items:center;gap:.6em;margin-top:.6vw}@media(max-width:768px){.cta-text .icon{width:3vw}.cta-text .icon-up{width:2.5vw}.clock{margin-top:2vw}}.nav-right{display:flex;align-items:stretch;gap:.4vw}.theme-toggle{display:flex;align-items:center;gap:.45vw;padding:.3vw .7vw;border-radius:var(--radius-xs);background:var(--color-background);transition:background-color .5s ease}.nav-logo,.nav-button,.nav-links-wrapper,.burger-button{transition:background-color .5s ease}.theme-toggle-icon{width:.75em;height:.75em;border-radius:50%;box-shadow:0 0 0 1px inset currentColor;background:linear-gradient(90deg,currentColor 50%,transparent 50%);transition:transform .7s var(--ease-out)}[data-theme=dark] .theme-toggle-icon{transform:rotate(180deg)}@media(max-width:768px){.nav-right{display:none}.burger-foot{display:flex;justify-content:space-between;align-items:flex-end;gap:4vw}.burger-foot .theme-toggle{gap:2vw;padding:1.5vw 3vw;box-shadow:0 0 0 1px inset var(--color-border)}}.home-services{padding:5vw 2.5vw 7vw}.service-row{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:start;padding:2.2vw 0 2.8vw}.service-head{display:flex;align-items:baseline;gap:1.6vw}.service-title{font-size:3.6vw;line-height:1.1;transition:transform .7s var(--ease-out)}.service-row:hover .service-title{transform:translate(1vw)}.service-body{display:flex;justify-content:space-between;align-items:flex-start;gap:2vw;padding-top:.9vw}.service-desc{width:21vw;font-size:var(--font-size-m);line-height:120%}.service-tools{text-align:right;line-height:1.5}.marquee{overflow:hidden;padding:1vw 0 6vw;white-space:nowrap;-webkit-user-select:none;user-select:none}.marquee-track{display:inline-flex;animation:marquee 38s linear infinite;will-change:transform}.marquee-item{display:inline-flex;align-items:center;gap:.32em;padding-right:.32em;font-size:9vw;line-height:1.15;letter-spacing:-.02em}.marquee-item:after{content:"";flex:none;width:.16em;height:.16em;border-radius:50%;background:var(--color-accent)}@keyframes marquee{to{transform:translate(-50%)}}@media(max-width:768px){.home-services{padding:5vw 4vw 18vw}.service-row{grid-template-columns:1fr;gap:4vw;padding:6vw 0 8vw}.service-head{gap:4vw}.service-title{font-size:8vw}.service-body{padding:0 0 0 9vw;gap:4vw}.service-desc{width:auto;flex:1}.marquee{padding:0 0 20vw}.home-work-more{display:flex;justify-content:center}.marquee-item{font-size:16vw}}.filter-bar{display:flex;flex-wrap:wrap;gap:.5vw}.work-filter{padding:3vw 2.5vw 0}.archive-filter{margin-bottom:3.5vw}.filter-chip{display:flex;align-items:baseline;gap:.5vw;padding:.5vw 1vw;border-radius:100px;box-shadow:0 0 0 1px inset var(--color-border);font-family:var(--font-mono);font-size:var(--font-size-xs);text-transform:uppercase;letter-spacing:.03em;transition:background-color .5s var(--ease-out),color .5s var(--ease-out),box-shadow .5s var(--ease-out)}.filter-chip:hover{box-shadow:0 0 0 1px inset var(--color-text)}.filter-chip.is-active{background:var(--color-text);color:var(--color-background);box-shadow:0 0 0 1px inset var(--color-text)}.filter-chip-count{opacity:.5;font-size:.8em}.project-card-title-box{padding-right:.8vw}.project-card-tag{margin-left:auto;font-family:var(--font-mono);font-size:var(--font-size-xxs);text-transform:uppercase;letter-spacing:.03em;opacity:.5}.project-card-arrow.icon{width:1.2vw}.archive-index{font-family:var(--font-mono);font-size:var(--font-size-xxs);letter-spacing:0;opacity:.5}.archive-link .icon{width:.7vw}@media(max-width:768px){.filter-bar{gap:2vw}.work-filter{padding:9vw 4vw 0}.archive-filter{margin-bottom:8vw}.filter-chip{gap:1.5vw;padding:1.8vw 3.5vw;font-size:2.9vw}.project-card-tag{font-size:2.6vw}}.cursor-badge{position:fixed;z-index:1300;top:0;left:0;pointer-events:none}.cursor-badge-inner{display:flex;justify-content:center;align-items:center;width:6.4vw;height:6.4vw;margin:-3.2vw 0 0 -3.2vw;border-radius:50%;background:var(--color-accent);color:var(--color-on-accent);font-family:var(--font-mono);font-size:.85vw;text-transform:uppercase;letter-spacing:.04em;transform:scale(0);transition:transform .5s var(--ease-out)}.cursor-badge.is-active .cursor-badge-inner{transform:scale(1)}@media(hover:none),(max-width:768px){.cursor-badge{display:none}}.footer-cta{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:start;margin:0 2.5vw;padding:2.5vw 0 8vw}.footer-cta-title{font-size:6.6vw;line-height:1.02;letter-spacing:-.025em}.footer-cta-title .text-box{padding-bottom:.14em;margin-bottom:-.1em}.footer-cta-link{display:inline-flex;align-items:center;gap:.25em}.footer-cta-link .icon{width:.62em;transition:transform .7s var(--ease-out)}.footer-cta-link:hover .icon{transform:translate(.08em,-.08em)}@media(max-width:768px){.footer-cta{grid-template-columns:1fr;gap:8vw;margin:0 4vw;padding:7vw 0 20vw}.footer-cta-title{font-size:12.5vw}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01s!important;animation-delay:0s!important;transition-duration:.01s!important;transition-delay:0s!important}.home-title-image.is-animated{animation:none}.home-title-image-1{opacity:1}}
