.particle-network{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;pointer-events:auto;overflow:hidden}.particle-network canvas{width:100%!important;height:100%!important}.header{width:100%;height:calc(var(--vh, 1vh) * 100);display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;position:relative;overflow:hidden;background:#e0dbd3;padding-bottom:env(safe-area-inset-bottom)}@supports (height: 100svh){.header{height:100svh;height:calc(var(--vh, 1svh) * 100)}}.header-top{width:100%;display:flex;justify-content:space-between;align-items:flex-start;z-index:3;position:absolute;top:0;left:0;padding:2rem}.header-name{font-size:2rem;font-weight:900;color:#000;letter-spacing:-.01em}.header-contact{display:flex;align-items:center;gap:1rem;text-decoration:none}.header-contact svg{color:#000;transition:transform .2s ease}.header-contact:hover svg{transform:scale(1.25)}.header-disciplines{position:absolute;top:4.5rem;left:2rem;display:flex;flex-direction:column;gap:.25rem;z-index:2;opacity:.7}.header-disciplines span{font-size:1rem;color:#000;font-weight:400;line-height:1}.header-content{position:absolute;bottom:2rem;left:2rem;z-index:2;max-width:calc(100% - 4rem)}.header-title{font-size:clamp(1.5rem,5vw,5rem);font-weight:900;letter-spacing:-.03em;line-height:1;margin:0;display:block;overflow:visible}.title-char{display:inline-block;transform-origin:bottom center;cursor:pointer;position:relative;will-change:transform;transition:color .3s ease}.scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:.5rem;z-index:2;cursor:pointer;opacity:.7;transition:opacity .3s ease}.scroll-indicator:hover{opacity:1}.scroll-text{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;font-weight:500;color:#1a1a1a}.scroll-mouse{color:#1a1a1a}.scroll-wheel{animation:scrollWheel 2s ease-in-out infinite}@keyframes scrollWheel{0%{transform:translateY(0);opacity:1}to{transform:translateY(12px);opacity:0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes scrollLine{0%{opacity:0;transform:translateY(-40px)}50%{opacity:1}to{opacity:0;transform:translateY(40px)}}@media(max-width:768px){.header-top{padding:1.5rem}.header-name{font-size:1.125rem}.header-title{font-size:clamp(2.5rem,12vw,4rem)}.header-content{left:50%;transform:translate(-50%);bottom:6rem;max-width:calc(100% - 3rem);text-align:center}.header-disciplines{left:1.5rem;top:3rem}.scroll-indicator{bottom:2rem}}.shader-image-container{position:relative;width:100%;border-radius:0;overflow:hidden;cursor:pointer;box-shadow:none;border:none}.shader-image-container:hover{box-shadow:none}.image-wrapper-inner{position:relative;width:100%;height:100%;overflow:hidden}.shader-image-container img,.shader-image-container video{width:100%;height:auto;display:block;transition:transform .6s ease,filter .4s ease;will-change:transform,filter}.shader-image-container:not(.loaded) img,.shader-image-container:not(.loaded) video{opacity:0}.shader-image-container.loaded img,.shader-image-container.loaded video{opacity:1;transition:opacity .5s ease,transform .6s ease,filter .4s ease}.shader-image-container.hover img,.shader-image-container.hover video{transform:scale(1.05);filter:brightness(1.05) contrast(1.05) saturate(1.1)}.video-poster{width:100%;height:auto;display:block}.video-play-indicator{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;background:#0009;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;pointer-events:none;opacity:0;transition:opacity .3s ease;z-index:2}.shader-image-container.is-video .video-play-indicator{opacity:1}.shader-image-container.is-video:hover .video-play-indicator{opacity:.8;transform:translate(-50%,-50%) scale(1.1)}@media(max-width:768px){.video-play-indicator{width:50px;height:50px}.video-play-indicator svg{width:20px;height:20px}}.project-section{min-height:calc(var(--vh, 1vh) * 100);padding:6rem 2rem;display:flex;align-items:center;justify-content:center;position:relative}.project-container{max-width:800px;width:100%;margin:0 auto;position:relative}.image-wrapper{position:relative;width:100%}.empty-slot{width:100%;min-height:200px;visibility:hidden;pointer-events:none}.project-labels{position:relative;display:flex;flex-direction:column;gap:.15rem;margin-bottom:2rem;z-index:10}.project-labels.position-top-right{align-items:flex-end;text-align:right}.project-labels.position-bottom-left{align-items:flex-start;text-align:left;margin-top:2rem;margin-bottom:0}.project-label{display:block;padding:0;background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none;border-radius:0;font-size:.9rem;font-weight:400;letter-spacing:0;text-transform:none;color:#000000d9;border:none;transition:all .2s ease;cursor:default;text-align:inherit;line-height:1.5}.project-labels.dark-bg .project-label{color:#ffffffe6}.project-images{display:grid;gap:1rem;margin-top:0}.project-images.grid-2x2{grid-template-columns:repeat(2,1fr);max-width:1200px}.project-images.has-logo{position:relative}.project-logo-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:10;pointer-events:none;max-width:300px;width:40%}.project-logo-overlay img{width:100%;height:auto;display:block;filter:drop-shadow(0 10px 30px rgba(0,0,0,.3))}.project-logo-above{display:flex;justify-content:center;align-items:center;margin-bottom:3rem;pointer-events:none}.project-logo-above img{max-width:250px;width:auto;height:auto;display:block;filter:drop-shadow(0 10px 30px rgba(0,0,0,.3))}.project-images.single-column{grid-template-columns:1fr;max-width:800px;margin:0 auto}.project-images.bb-custom{display:flex;flex-direction:column;gap:1rem;max-width:1200px}.bb-logos-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding:0 .5rem}.bb-logo-name img,.bb-logo img{height:60px;width:auto;display:block}.bb-full-width{width:100%}.bb-bottom-row{display:flex;gap:1rem;align-items:flex-start}.bb-left-column{flex:1;display:flex;flex-direction:column;gap:1rem}.bb-right-column{flex:1}.project-images.omw-custom{display:flex;flex-direction:column;gap:1rem;max-width:1200px}.omw-grid-2x2{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}.omw-full-width{width:100%}.omw-banners-wrapper{display:flex;flex-direction:column;gap:1rem;flex:0 0 auto}.omw-banner-04{width:100%}.omw-logo-section{display:flex;gap:1rem;align-items:flex-start}.omw-logo-container{flex:1;display:flex;align-items:center;justify-content:center;padding:3rem 2rem 2rem}.omw-logo-container img{width:auto;max-width:250px;height:auto;filter:drop-shadow(0 10px 30px rgba(0,0,0,.3))}.omw-banners-column{display:flex;flex-direction:row;gap:1rem;align-items:flex-start;flex:0 0 auto}.omw-banners-column .image-wrapper:first-child .shader-image-container{width:auto;overflow:visible}.omw-banners-column .image-wrapper:first-child img{width:auto;height:auto;display:block;max-width:100%}.omw-banners-column .image-wrapper:last-child{align-self:stretch;display:flex;flex-direction:column}.omw-banners-column .image-wrapper:last-child .shader-image-container{height:100%;width:auto;overflow:visible}.omw-banners-column .image-wrapper:last-child .image-wrapper-inner{height:100%;display:flex;align-items:center}.omw-banners-column .image-wrapper:last-child img{width:auto;height:100%;max-height:100%;object-fit:contain}@media(max-width:768px){.project-section{padding:4rem 1.5rem}.project-images,.project-images.grid-2x2,.project-images.single-column{grid-template-columns:1fr;gap:1.5rem}.project-labels.position-top-right{top:0;right:0}.project-labels.position-bottom-left{bottom:0;left:0}.project-label{font-size:.85rem}.project-logo-overlay{max-width:200px;width:50%}.project-logo-above{margin-bottom:2rem}.project-logo-above img{max-width:150px}.project-images.bb-custom{gap:1.5rem}.bb-logos-row{margin-bottom:1.5rem;padding:0}.bb-logo-name img,.bb-logo img{height:40px}.bb-bottom-row{flex-direction:column;gap:1.5rem}.bb-left-column,.project-images.omw-custom{gap:1.5rem}.omw-grid-2x2{grid-template-columns:1fr;gap:1.5rem}.omw-logo-section{flex-direction:column;gap:1.5rem}.omw-logo-container{padding:1rem}.omw-logo-container img{max-width:150px}.omw-banners-wrapper{gap:1.5rem}.omw-banners-column{flex-direction:column;gap:1.5rem}.omw-banners-column img{height:auto;object-fit:contain}.omw-banners-column .image-wrapper:last-child img{width:100%;height:auto}}.video-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;height:calc(var(--vh, 1vh) * 100);background:#000000e6;z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;padding:2rem;touch-action:none;overscroll-behavior:contain}.video-overlay-content{position:relative;width:100%;max-width:1200px;max-height:90vh;aspect-ratio:16/9;background:#000;border-radius:0;overflow:visible;box-shadow:0 20px 50px #00000080}.video-wrapper{width:100%;height:100%;overflow:hidden;border-radius:0}.overlay-video{width:100%;height:100%;object-fit:contain;display:block}.video-overlay .close-button{position:absolute;top:-40px;right:-40px;width:40px;height:40px;border-radius:50%;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s ease;padding:0;opacity:1!important;pointer-events:auto}.video-overlay .close-button:hover{background:#fff3;transform:scale(1.1)}@media(max-width:768px){.video-overlay{padding:1rem;padding-top:env(safe-area-inset-top,1rem);padding-bottom:env(safe-area-inset-bottom,1rem)}.video-overlay-content{width:100%;max-width:100%;height:auto;max-height:calc(var(--vh, 1vh) * 90);aspect-ratio:auto;min-height:200px;overflow:visible}.overlay-video{max-height:100%}.video-overlay .close-button{position:absolute;top:-56px;right:0;width:36px;height:36px;background:#000000b3;border:2px solid rgba(255,255,255,.3);opacity:1!important;transition:none}.video-overlay .close-button.on-video{top:.5rem;right:.5rem}}.image-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;height:calc(var(--vh, 1vh) * 100);background:#000000e6;z-index:10000;display:flex;align-items:center;justify-content:center;opacity:0;padding:2rem;touch-action:none;overscroll-behavior:contain}.image-overlay-content{position:relative;display:flex;align-items:center;justify-content:center;width:fit-content;max-width:90vw;max-height:90vh;background:transparent;border-radius:0;overflow:visible;box-shadow:0 20px 50px #00000080}.overlay-image{max-width:100%;max-height:90vh;width:auto;height:auto;object-fit:contain;display:block;border-radius:0}.close-button{position:absolute;top:-40px;right:-40px;width:40px;height:40px;border-radius:50%;background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;transition:all .2s ease;padding:0}.close-button:hover{background:#fff3;transform:scale(1.1)}@media(max-width:768px){.image-overlay{padding:1rem;padding-top:env(safe-area-inset-top,1rem);padding-bottom:env(safe-area-inset-bottom,1rem)}.image-overlay-content{width:fit-content;max-width:100%;max-height:calc(var(--vh, 1vh) * 90)}.overlay-image{max-height:calc(var(--vh, 1vh) * 90)}.close-button{top:-56px;right:0;width:36px;height:36px;background:#000000b3;border:2px solid rgba(255,255,255,.3)}}.footer-landscape{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0;opacity:.6;pointer-events:none;overflow:hidden}.footer-landscape canvas{width:100%!important;height:100%!important}.back-to-top{position:fixed;right:2rem;bottom:2rem;width:48px;height:48px;border-radius:50%;background:#0009;border:2px solid rgba(255,255,255,.3);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:1000;opacity:0;scale:.8;pointer-events:none;transition:background-color .3s ease,border-color .3s ease,transform .2s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.back-to-top:hover{background:#000c;border-color:#fff9;transform:translateY(-4px)}.back-to-top:active{transform:translateY(-2px)}.back-to-top svg{width:20px;height:20px}@media(max-width:768px){.back-to-top{right:1.5rem;bottom:1.5rem;width:44px;height:44px}.back-to-top svg{width:18px;height:18px}}@media(hover:none)and (pointer:coarse){.back-to-top{background:#000c;border-color:#ffffff80}}.app{width:100%;min-height:calc(var(--vh, 1vh) * 100);position:relative;transition:background-color 1s ease;font-family:Lato,sans-serif;font-weight:500}.cursor,.cursor-dot{position:fixed;pointer-events:none;z-index:9999;mix-blend-mode:difference}.cursor{width:40px;height:40px;border:2px solid white;border-radius:50%;transform:translate(-50%,-50%)}.cursor-dot{width:6px;height:6px;background:#fff;border-radius:50%;transform:translate(-50%,-50%);transition:width .2s,height .2s,background-color .2s,border-radius .2s,border .2s}.cursor-dot.play{width:0;height:0;background:transparent;border-radius:0;border-top:8px solid transparent;border-bottom:8px solid transparent;border-left:14px solid white}.cursor-dot.pointer{width:8px;height:8px;background:#fff;border-radius:0;border:2px solid white;transform:rotate(45deg)}body.overlay-open .cursor,body.overlay-open .cursor-dot{mix-blend-mode:normal;z-index:10001}body.overlay-open .cursor{border-color:#fff}body.overlay-open .cursor-dot{background:#fff}body.overlay-open .cursor-dot.play{border-left-color:#fff}body.overlay-open .cursor-dot.pointer{background:#fff;border-color:#fff}@media(hover:none)and (pointer:coarse){.cursor,.cursor-dot{display:none}}.footer{padding:6rem 2rem 2rem;background:#e0dbd3;border-top:1px solid rgba(0,0,0,.1);min-height:40vh;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden;pointer-events:none}.footer-content{max-width:1400px;margin:0 auto;width:100%;display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:2rem;position:relative;z-index:1;pointer-events:none}.footer-left h3{font-size:1.5rem;font-weight:700;color:#000;margin-bottom:.5rem;letter-spacing:-.01em;pointer-events:none}.footer-left p{font-size:.875rem;color:#0009;line-height:1.6;pointer-events:none}.footer-right a{color:#000;text-decoration:none;transition:transform .2s ease;display:inline-block;pointer-events:auto}.footer-right a:hover{transform:scale(1.25)}.footer-bottom{max-width:1400px;margin:0 auto;width:100%;padding-top:3rem;text-align:center;position:relative;z-index:1;pointer-events:none}.footer-bottom p{font-size:.75rem;color:#0006;letter-spacing:.05em;pointer-events:none}@media(max-width:768px){.footer{padding:4rem 1.5rem 2rem;min-height:30vh}.footer-content{flex-direction:column}.footer-left h3{font-size:1.25rem}.footer-bottom{padding-top:2rem}}.more-work-button{position:fixed;left:2rem;bottom:2rem;padding:.75rem 1.5rem;border-radius:50px;background:#0009;border:2px solid rgba(255,255,255,.3);color:#fff;text-decoration:none;font-size:.875rem;font-weight:500;letter-spacing:.05em;cursor:pointer;z-index:1000;transition:background-color .3s ease,border-color .3s ease,transform .2s ease;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center}.more-work-button:hover{background:#000c;border-color:#fff9;transform:translateY(-2px)}.more-work-button:active{transform:translateY(0)}@media(max-width:768px){.more-work-button{left:1.5rem;bottom:1.5rem;padding:.625rem 1.25rem;font-size:.8125rem}}@media(hover:none)and (pointer:coarse){.more-work-button{background:#000c;border-color:#ffffff80}}*{margin:0;padding:0;box-sizing:border-box;cursor:none!important}body{font-family:Lato,sans-serif;font-weight:500;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;background:#e0dbd3}#root{width:100%;min-height:100vh}html{scroll-behavior:auto}html.lenis{height:auto}.lenis.lenis-smooth{scroll-behavior:auto}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:hidden}.lenis.lenis-scrolling iframe{pointer-events:none}@media(hover:none)and (pointer:coarse){*{cursor:auto!important}}
