@font-face{font-family:__Urbanist_472caf;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/680d078f20ab2e33-s.woff2) format("woff2");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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Urbanist_472caf;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/a22b1dc24103c00d-s.p.woff2) format("woff2");unicode-range:u+00??,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:__Urbanist_Fallback_472caf;src:local("Arial");ascent-override:95.93%;descent-override:25.24%;line-gap-override:0.00%;size-adjust:99.04%}.__className_472caf{font-family:__Urbanist_472caf,__Urbanist_Fallback_472caf;font-style:normal}.__variable_472caf{--font-urbanist:"__Urbanist_472caf","__Urbanist_Fallback_472caf"}@font-face{font-family:__JetBrains_Mono_3c557b;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__JetBrains_Mono_3c557b;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__JetBrains_Mono_3c557b;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:__JetBrains_Mono_3c557b;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__JetBrains_Mono_3c557b;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.woff2) format("woff2");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-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__JetBrains_Mono_3c557b;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.p.woff2) format("woff2");unicode-range:u+00??,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:__JetBrains_Mono_Fallback_3c557b;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_3c557b{font-family:__JetBrains_Mono_3c557b,__JetBrains_Mono_Fallback_3c557b;font-style:normal}.__variable_3c557b{--font-jetbrains:"__JetBrains_Mono_3c557b","__JetBrains_Mono_Fallback_3c557b"}.dock-container{width:max-content;position:fixed;bottom:1.5em;left:50%;transform:translateX(-50%);padding:.5em .35em;display:flex;justify-content:center;background-color:var(--dark-bg-color);border:1px solid var(--dark-card-border);border-radius:40px;cursor:pointer;z-index:1000000;box-shadow:0 10px 30px #00000080;backdrop-filter:blur(12px)}.dock{margin:0 auto;display:flex;justify-content:space-around}.dock-item{position:relative;width:40px;height:40px;background:var(--dark-btn-bg);border:1px solid var(--dark-card-border);border-radius:30px;margin:0;transform:scale(1);transition:.7s cubic-bezier(.075,.82,.165,1);transform-origin:bottom}.dock-item,.dock-item-link-wrap{display:flex;justify-content:center;align-items:center}.dock-item-link-wrap{position:absolute;top:0;left:0;width:100%;height:100%}@media (max-width:900px){.dock-container{bottom:1em;max-width:96vw;padding:.35em .2em}.dock-item{width:32px;height:32px}}.optimized-image-wrapper{position:relative;overflow:hidden;background-color:#1a1a1a;border-radius:inherit}.image-skeleton{position:absolute;inset:0;z-index:1;background-color:#1c1c1c;overflow:hidden;display:flex;align-items:center;justify-content:center;border-radius:inherit}.image-skeleton:after{content:"";position:absolute;inset:0;transform:translate3d(-100%,0,0);background:linear-gradient(90deg,#0000,#ffffff0d 50%,#0000);animation:imageShimmer 1.6s ease-in-out infinite}@keyframes imageShimmer{to{transform:translate3d(100%,0,0)}}.image-spinner{width:28px;height:28px;border:2px solid #404040;border-top-color:#d9d9d9;border-radius:50%;animation:imageSpin .8s linear infinite}@keyframes imageSpin{to{transform:rotate(1turn)}}.optimized-image{display:block}.optimized-image.img-loading{opacity:0;transform:scale(1.02)}.optimized-image.img-loaded{opacity:1;transform:scale(1)}.image-error-fallback{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background-color:#1f1f1f;color:var(--dark-text-tertiary);font-size:12px;padding:1em;text-align:center}.page-photos{width:100%;display:flex;gap:.5em;margin-bottom:10em}.photos-col{flex:1 1;width:100%;display:flex;flex-direction:column}@keyframes photoCardEnter{0%{opacity:0;transform:translate3d(0,24px,0)}to{opacity:1;transform:translateZ(0)}}.photo-card{position:relative;border-radius:8px;margin-bottom:.5em;border:1px solid var(--dark-card-border);background-color:var(--dark-card-bg);animation:photoCardEnter .4s cubic-bezier(.16,1,.3,1) both}.photo-card.photo-card-priority{animation:none!important;opacity:1!important;transform:none!important}.photo-card-btn{position:absolute;inset:0;width:100%;height:100%;padding:0;margin:0;border:none;background:#0000;cursor:pointer;z-index:4;border-radius:8px}.photo-card-btn:focus-visible{outline:2px solid #fff;outline-offset:-2px}.photo-card-img-wrap{width:100%;aspect-ratio:16/10;position:relative;overflow:hidden;border-radius:7px}.photo-card img,.photo-card-img-wrap .optimized-image-wrapper{width:100%;height:100%}.photo-card img{display:block;object-fit:cover;transition:transform .5s cubic-bezier(.16,1,.3,1)}.photo-card:hover img{transform:scale(1.04)}.photo-overlay{position:absolute;bottom:0;left:0;width:100%;padding:1.5em 1em 1em;background:linear-gradient(0deg,#000000e6 0,#0006 60%,#0000);opacity:0;transition:opacity .25s ease;display:flex;justify-content:space-between;align-items:flex-end;border-bottom-left-radius:7px;border-bottom-right-radius:7px;pointer-events:none;z-index:2}.photo-card:hover .photo-overlay{opacity:1}.photo-overlay-info h2,.photo-overlay-info h3{font-size:15px;font-weight:600;color:#fff;margin-bottom:.2em}.photo-overlay-info span{font-size:11px;font-weight:500;color:var(--dark-text-tertiary);text-transform:uppercase;letter-spacing:.04em}.photo-overlay-action{font-size:12px;color:var(--dark-text-secondary);background-color:#ffffff1a;padding:.35em .7em;border-radius:4px;backdrop-filter:blur(4px)}.lightbox-backdrop{position:fixed;inset:0;top:0;left:0;right:0;bottom:0;width:100%;height:100%;background:#000000e0;backdrop-filter:blur(14px);z-index:2000000;display:flex;justify-content:center;align-items:center;padding:2em;animation:fadeInModal .25s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeInModal{0%{opacity:0}to{opacity:1}}.lightbox-modal{position:relative;max-width:92vw;max-height:88vh;display:flex;flex-direction:column;align-items:center;animation:scaleInModal .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes scaleInModal{0%{transform:scale(.96) translateY(8px)}to{transform:scale(1) translateY(0)}}.lightbox-img-wrapper{max-width:100%;max-height:75vh;border-radius:10px;overflow:hidden;border:1px solid var(--dark-card-border);box-shadow:0 24px 48px #000000b3}.lightbox-img-wrapper img{max-width:100%;max-height:75vh;object-fit:contain;display:block}.lightbox-footer{margin-top:1em;width:100%;display:flex;justify-content:space-between;align-items:center;gap:1em}.lightbox-info h2,.lightbox-info h3{font-size:16px;font-weight:600;color:var(--dark-text-color)}.lightbox-info p{font-size:13px;color:var(--dark-text-tertiary)}.lightbox-actions{display:flex;align-items:center;gap:.75em}.lightbox-link-btn{padding:.5em 1em;border-radius:6px;background-color:var(--dark-btn-bg);border:1px solid var(--dark-card-border);color:var(--dark-text-color);font-size:13px;text-decoration:none;transition:all .2s ease;display:inline-flex;align-items:center;gap:.5em}.lightbox-link-btn:hover{background-color:#333}.lightbox-close-btn{width:36px;height:36px;border-radius:50%;background-color:var(--dark-btn-bg);border:1px solid var(--dark-card-border);color:var(--dark-text-color);display:flex;justify-content:center;align-items:center;cursor:pointer;padding:0;margin:0;transition:background-color .2s ease}.lightbox-close-btn:hover{background-color:#383838}@media (max-width:900px){.page-photos{flex-direction:column}.photo-overlay{opacity:1}.lightbox-backdrop{padding:1em}.lightbox-footer{flex-direction:column;align-items:flex-start}}.page-work{width:100%;display:flex;gap:.5em;margin-bottom:10em}.col{flex:1 1;width:100%;height:100%}.work-item{position:relative;border:1px solid var(--dark-card-border);border-radius:8px;overflow:hidden;margin-bottom:.5em;padding:.25em}.work-item.type-img{padding:0}.work-item-img{position:relative}.work-item-info{position:absolute;bottom:0;left:0;width:100%;display:flex;justify-content:space-between;padding:1em;background:linear-gradient(0deg,#000000bf 0,#0000);pointer-events:none}.work-item-info .work-name,p#work-name{font-size:14px;font-weight:500;line-height:20px;color:var(--dark-text-color);margin:0}.work-item-info .work-date,p#work-date{font-size:14px;font-weight:500;line-height:20px;color:var(--dark-text-tertiary);margin:0}.work-item-img-wrapper{width:100%;height:100%;border-radius:8px;overflow:hidden}.work-item-img-wrapper img{transform:scale(1.125);display:block}.work-200 img{height:200px}.work-250 img{height:250px}.work-300 img{height:300px}.work-350 img{height:350px}.work-400 img{height:400px}.work-450 img{height:450px}.work-500 img{height:500px}.work-550 img{height:550px}@media (max-width:900px){.page-work{flex-direction:column}}.project-item{position:relative;width:100%;display:flex;align-items:center;padding:1em;border-radius:10px;gap:.5em;overflow:hidden;cursor:pointer;transition:background-color .2s ease}.project-item:hover{background-color:var(--dark-card-bg)}.project-title{flex-shrink:0}.project-title p{color:#fff;font-weight:600;font-size:15px}.project-copy{flex-shrink:0}.project-copy p{color:var(--dark-text-secondary);font-size:13.5px;font-weight:400}.project-divider{flex-grow:1;height:1px;background-color:var(--dark-card-border);margin-left:.5em;margin-right:.5em}.project-year{flex-shrink:0}.project-year p{color:var(--dark-text-tertiary);font-size:13px;font-weight:500}@media (max-width:900px){.project-copy{display:none}}.page-documents{padding:.5em;width:50%;margin:5em auto}.documents-header{margin-bottom:2.5em}.documents-header h1{font-size:26px;font-weight:600;color:#fff;line-height:34px;margin-bottom:.35em}.documents-header p{color:var(--dark-text-secondary);font-size:14px;font-weight:400;line-height:1.5}.documents-grid{display:flex;flex-direction:column;gap:1em}.document-card{display:flex;justify-content:space-between;align-items:center;padding:1.25em;background-color:var(--dark-card-bg);border:1px solid var(--dark-card-border);border-radius:10px;gap:1.5em;transition:border-color .2s ease,background-color .2s ease}.document-card:hover{border-color:#404040;background-color:#1f1f1f}.document-card-info{flex:1 1}.document-card-badge{display:inline-block;font-size:11px;font-weight:600;color:var(--dark-text-tertiary);margin-bottom:.35em;text-transform:uppercase;letter-spacing:.05em}.document-card-title{font-size:16px;font-weight:600;color:#fff;margin-bottom:.35em}.document-card-desc{font-size:13.5px;color:var(--dark-text-secondary);font-weight:400;line-height:1.5}.document-card-action{flex-shrink:0}.document-download-btn{display:inline-flex;align-items:center;gap:.5em;padding:.6em 1em;border-radius:6px;background-color:var(--dark-btn-bg);border:1px solid var(--dark-card-border);color:var(--dark-text-color);font-size:13px;text-decoration:none;transition:all .2s ease}.document-download-btn:hover{background-color:#333;border-color:#4d4d4d}@media (max-width:900px){.page-documents{width:100%}.document-card{flex-direction:column;align-items:flex-start}.document-card-action{width:100%}.document-download-btn{width:100%;justify-content:center}}.post-header{width:100%;display:flex;justify-content:space-between;align-items:flex-start;gap:1em}.post-actions{gap:.5em}.post-actions,.post-link{display:flex;align-items:center}.post-link{width:40px;height:40px;justify-content:center;border-radius:100%;background-color:var(--dark-card-bg);border:1px solid var(--dark-card-border);color:var(--dark-text-color);transition:all .2s ease}.post-link:hover{background-color:#2e2e2e;transform:translateY(-2px)}.post-info{margin-bottom:2em}.post-info h1{font-size:24px;line-height:32px;margin-bottom:.25em}.post-info p:nth-child(2){color:var(--dark-text-tertiary);font-size:14px}.post-meta-tags{display:flex;flex-wrap:wrap;gap:.4em;margin-top:.75em}.post-tag{font-size:11px;font-weight:500;padding:.25em .6em;border-radius:4px;background-color:var(--dark-card-bg);border:1px solid var(--dark-card-border);color:var(--dark-text-secondary)}.post-content p{margin-bottom:1em;color:var(--dark-text-color);line-height:1.7;font-size:14px}.post-img{position:relative;width:100%;margin:2em 0;border-radius:8px;overflow:hidden;border:1px solid var(--dark-card-border)}.post-img img{width:100%;height:auto;display:block;object-fit:cover}.post-pdf-section{margin:1.5em 0;display:flex;flex-direction:column;gap:.5em}.post-pdf-link{display:inline-flex;align-items:center;gap:.5em;padding:.75em 1em;border-radius:6px;background-color:var(--dark-card-bg);border:1px solid var(--dark-card-border);color:var(--dark-text-color);font-size:13px;transition:background-color .2s ease;width:-moz-fit-content;width:fit-content}.post-pdf-link:hover{background-color:#2e2e2e}.next-project-footer{margin-top:4em;padding-top:2em;border-top:1px solid var(--dark-card-border);display:flex;justify-content:space-between;align-items:center}.next-project-link{color:var(--dark-text-secondary);font-size:14px;transition:color .2s ease}.next-project-link:hover{color:var(--dark-text-color)}.white-space{width:100%;height:160px}.home-hero-wrap{position:relative;width:100%;height:100vh;overflow:hidden}.spline-container,.spline-container canvas{position:relative;width:100%;height:100vh;pointer-events:auto;touch-action:pan-y;-webkit-user-select:none;user-select:none}.spline-container.is-scrolling,.spline-container.is-scrolling canvas,html.lenis-scrolling .spline-container,html.lenis-scrolling .spline-container canvas{pointer-events:none!important}.hero-header{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;z-index:100000;width:90%;max-width:800px;pointer-events:none}.hero-header h1{font-size:24px;font-weight:600;line-height:1.3;color:var(--dark-text-color);letter-spacing:-.02em}.hero-subtitle{color:var(--dark-text-secondary);font-size:15px;font-weight:400;line-height:1.45;margin-top:8px}.live-clock{position:absolute;top:2em;left:2em;z-index:100000;pointer-events:none}.live-clock p{font-weight:500;font-size:13px}.hero-scroll-hint,.live-clock p{font-family:var(--font-jetbrains),"JetBrains Mono",monospace;color:var(--dark-text-tertiary)}.hero-scroll-hint{position:absolute;bottom:5.5em;left:50%;transform:translateX(-50%);z-index:100000;display:inline-flex;align-items:center;gap:.5em;font-size:12px;letter-spacing:.02em;text-decoration:none;cursor:pointer;pointer-events:auto;padding:.45em .9em;border-radius:20px;background:#131313b3;border:1px solid var(--dark-card-border);backdrop-filter:blur(8px);transition:all .25s ease;animation:bounceHint 2.4s ease-in-out infinite}.hero-scroll-hint:hover{color:var(--dark-text-color);border-color:#525252;background:#1c1c1cd9}@keyframes bounceHint{0%,to{transform:translate(-50%)}50%{transform:translate(-50%,6px)}}.container.home-content{width:60%;max-width:960px;margin:4em auto 8em;padding:1em}.home-section{margin-bottom:5em}.home-section-title{font-size:22px;font-weight:600;color:var(--dark-text-color);letter-spacing:-.02em;margin-bottom:1.25em;line-height:1.35}.home-services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1.25em}.home-service-card{background:var(--dark-card-bg);border:1px solid var(--dark-card-border);border-radius:12px;padding:1.6em;transition:border-color .25s ease,transform .25s ease}.home-service-card:hover{border-color:#474747;transform:translateY(-2px)}.home-service-card h3{font-size:16px;font-weight:600;color:var(--dark-text-color);margin-bottom:.75em;letter-spacing:-.01em}.home-service-card p{font-size:13.5px;line-height:1.6;color:var(--dark-text-secondary);font-weight:400}.home-local-box{background:var(--dark-card-bg);border:1px solid var(--dark-card-border);border-radius:12px;padding:2em}.home-local-box p{font-size:14px;line-height:1.65;color:var(--dark-text-secondary);font-weight:400;margin-bottom:1em}.home-local-box p:last-child{margin-bottom:0}.home-local-tags{display:flex;flex-wrap:wrap;gap:.6em;margin-top:1.5em}.home-local-tag{background:var(--dark-btn-bg);border:1px solid var(--dark-card-border);padding:.35em .8em;border-radius:6px;font-size:12px;color:var(--dark-text-tertiary);font-family:var(--font-jetbrains),"JetBrains Mono",monospace}.home-cta-wrap{display:flex;flex-wrap:wrap;gap:1em;margin-top:2em}.home-cta-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.85em 1.5em;border-radius:8px;font-size:13.5px;font-weight:500;text-decoration:none;transition:all .2s ease}.home-cta-btn.primary{background:var(--dark-text-color);color:var(--dark-bg-color)}.home-cta-btn.primary:hover{opacity:.9}.home-cta-btn.secondary{background:var(--dark-btn-bg);border:1px solid var(--dark-card-border);color:var(--dark-text-color)}.home-cta-btn.secondary:hover{background:#2e2e2e80}@media (max-width:900px){.hero-header h1{font-size:20px}.hero-subtitle{font-size:14px}.container.home-content{width:100%;padding:1.25em;margin:3em auto 6em}.home-services-grid{grid-template-columns:1fr}.home-section-title{font-size:19px}.home-local-box{padding:1.4em}.home-cta-wrap{flex-direction:column}.home-cta-btn{width:100%}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent-horizontal],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-property:overflow;transition-duration:1ms;transition-behavior:allow-discrete}:root{font-family:var(--font-urbanist),"Urbanist",Inter,system-ui,Avenir,Helvetica,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--dark-bg-color:#131313;--dark-text-color:#fafafa;--dark-text-secondary:#a8a8a8;--dark-text-tertiary:#8a8a8a;--dark-btn-bg:#202020;--dark-card-bg:#1a1a1a;--dark-card-border:#262626}*{margin:0;padding:0;box-sizing:border-box}body,html{width:100%;min-height:100vh;background-color:var(--dark-bg-color);color:var(--dark-text-color);overflow-x:hidden}img{width:100%;height:100%;object-fit:cover}.container.page-post,.container.page-projects{padding:.5em;width:50%;margin:5em auto}.container{padding:.5em}h1{font-size:16px}h1,p{color:var(--dark-text-color);font-weight:500;line-height:20px}p{font-size:14px}a,p{text-decoration:none}button{width:100%;border-radius:8px;padding:1em 0;margin-top:.3em;background-color:var(--dark-btn-bg);outline:none;border:none;color:var(--dark-text-color);cursor:pointer;transition:background-color .2s ease}button:hover{background-color:rgba(46,46,46,.233)}.site-brand{position:fixed;top:2em;right:2em;z-index:100000;color:var(--dark-text-color);font-family:var(--font-urbanist),"Urbanist",sans-serif;font-size:15px;font-weight:600;letter-spacing:-.01em;text-decoration:none;transition:opacity .2s ease,transform .2s ease;-webkit-user-select:none;user-select:none}.site-brand:hover{opacity:.7}@media (max-width:900px){.site-brand{top:1.5em;right:1.5em;font-size:14px}.container,.container.page-post,.container.page-projects{width:100%}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}