@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:400;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:500;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:600;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:700;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_6d7175c3-module__0QGgrW__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.plus_jakarta_sans_6d7175c3-module__0QGgrW__variable{--font-jakarta:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(../media/742f0fcf9aa5cfe6-s.0lx-wywuwot3e.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b524e3bdcc8dfcd3-s.0j_1ik2r9_gpb.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-weight:500;font-display:swap;src:url(../media/a083361d37caf3d1-s.p.08pvxdps0wo-e.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b221c6d9681431a7-s.0.sekgp0dvxz0.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(../media/af7efeee822b8a1b-s.13zscyw9.1y5o.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Barlow;font-style:normal;font-weight:600;font-display:swap;src:url(../media/6c98c9fb873995d2-s.p.0o4ax6vjjs2k3.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Barlow Fallback;src:local(Arial);ascent-override:103.43%;descent-override:20.69%;line-gap-override:0.0%;size-adjust:96.68%}.barlow_a98ae6a4-module__MSSg_q__className{font-family:Barlow,Barlow Fallback;font-style:normal}.barlow_a98ae6a4-module__MSSg_q__variable{--font-barlow:"Barlow", "Barlow Fallback"}
:root{--ink:#000;--paper:#fff;--muted:#0000008c;--border:#00000014;--font-display:var(--font-jakarta), "Plus Jakarta Sans", Helvetica, Arial, sans-serif;--font-body:var(--font-jakarta), "Plus Jakarta Sans", Helvetica, Arial, sans-serif;--ease-bia:cubic-bezier(.25, .46, .45, .94);--ease-slow:cubic-bezier(.76, 0, .24, 1);--ease-power:cubic-bezier(.525, 0, 0, 1);--header-pad:clamp(20px, 4vw, 40px);--logo-red-x:0px;--logo-red-y:0px;--logo-c-x:0px;--logo-c-y:0px;--logo-scale:1;--fold-y:50%}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{width:100%;color:var(--ink);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html.no-scroll,html.no-scroll body{height:100%;overflow:hidden}body{background:var(--paper);width:100%;min-height:100%;font-family:var(--font-jakarta,"Plus Jakarta Sans"), sans-serif;letter-spacing:.01em;font-size:16px;line-height:1.4;overflow-x:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}.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}.preloader{z-index:200;pointer-events:all;background:#000;flex-direction:column;justify-content:flex-end;align-items:flex-start;width:100%;height:100dvh;min-height:-webkit-fill-available;padding:clamp(24px,5vw,64px);display:flex;position:fixed;inset:0;overflow:hidden}.preloader-brand-wrap{overflow:visible}.preloader-brand{font-family:var(--font-barlow), var(--font-display), sans-serif;letter-spacing:.04em;text-transform:uppercase;color:#fff;gap:.22em;max-width:100%;font-size:clamp(3rem,13vw,11rem);font-weight:600;line-height:.88;display:flex}.pre-word-wrap{vertical-align:bottom;margin-bottom:-.08em;padding-bottom:.08em;display:inline-block;overflow:hidden}.pre-word{animation:preloaderWordUp 1s cubic-bezier(.525, 0, 0, 1) calc(80ms + var(--wi,0) * .14s) forwards;display:block;transform:translateY(115%)}@keyframes preloaderWordUp{to{transform:translateY(0)}}.preloader-sub-wrap{margin-top:clamp(12px,2vh,20px);overflow:hidden}.preloader-sub{letter-spacing:.2em;text-transform:uppercase;color:#fff;animation:preloaderUp .8s var(--ease-bia) .55s forwards;font-size:clamp(.65rem,2.5vw,1.1rem);display:block;transform:translateY(100%)}.preloader-line{background:#ffffff1a;height:1px;position:absolute;bottom:0;left:0;right:0;overflow:hidden}.preloader-line:after{content:"";transform-origin:0;animation:preloaderFill 1.8s var(--ease-bia) 0s forwards;background:#ffffff80;position:absolute;inset:0;transform:scaleX(0)}@keyframes preloaderUp{to{transform:translateY(0)}}@keyframes preloaderFill{to{transform:scaleX(1)}}.site-header{z-index:50;pointer-events:none;visibility:hidden;position:fixed;inset:0}.site-header.is-ready{visibility:visible}.logo-home,.logo-c-corner{pointer-events:auto;color:var(--ink);opacity:0;transition:color .4s ease, opacity .5s var(--ease-bia);z-index:52;text-decoration:none;position:fixed}.site-header.logos-scrolling .logo-home,.site-header.logos-scrolling .logo-c-corner{transition:none}.site-header.logos-active .logo-home,.site-header.logos-active .logo-c-corner{opacity:1}.site-header.on-hero .logo-home,.site-header.on-hero .logo-c-corner{color:#fff}.logo-home{top:var(--header-pad);left:var(--header-pad)}.logo-c-corner{bottom:var(--header-pad);right:var(--header-pad)}.logo-wordmark{font-family:var(--font-barlow), var(--font-display), sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#e63030;font-size:clamp(13px,1.4vw,18px);font-weight:600;line-height:1;display:block}.header-controls{top:var(--header-pad);right:var(--header-pad);z-index:51;pointer-events:auto;opacity:0;transition:opacity .8s var(--ease-bia);align-items:center;gap:16px;display:flex;position:fixed}.site-header.is-ready .header-controls{opacity:1}.menu-btn{flex-direction:row;align-items:center;gap:14px;height:44px;display:flex}.menu-label{text-transform:uppercase;letter-spacing:.15em;color:#e63030;white-space:nowrap;max-width:100px;font-size:20px;font-weight:800;transition:opacity .25s,max-width .3s,margin .3s;overflow:hidden}.menu-lines{flex-direction:column;align-items:flex-end;gap:7px;display:flex}.menu-btn.is-open .menu-label{opacity:0;max-width:0;margin:0}.site-header.on-hero .menu-line{background:#fff}.menu-line{background:var(--ink);width:24px;height:1px;transition:transform .5s var(--ease-slow), width .3s, background .4s;display:block}.menu-line.short{width:14px}.menu-btn:hover .menu-line.short{width:24px}.menu-btn.is-open .menu-line{background:var(--ink)!important}.menu-btn.is-open .menu-line:not(.short){width:24px;transform:translateY(4px)rotate(45deg)}.menu-btn.is-open .menu-line.short{width:24px;transform:translateY(-4px)rotate(-45deg)}.overlay-close{z-index:39;opacity:0;visibility:hidden;pointer-events:none;background:0 0;border:0;position:fixed;inset:0}.nav-overlay{z-index:48;pointer-events:auto;background:var(--paper);transition:transform .75s var(--ease-slow);position:fixed;inset:0;overflow:hidden;transform:translateY(-100%)}.nav-overlay.is-open{transform:translateY(0)}.nav-tabs .nav-tab{opacity:0;transform:translateY(48px)}.nav-overlay.is-revealed .nav-tabs .nav-tab{animation:menuItemUp .7s var(--ease-bia) forwards;animation-delay:calc(50ms + var(--i,0) * 90ms)}@keyframes menuItemUp{0%{opacity:0;transform:translateY(44px)}to{opacity:1;transform:translate(0,0)}}@keyframes stackItemUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translate(0,0)}}.nav-overlay-inner{z-index:1;height:100%;padding:clamp(100px, 14vh, 140px) var(--header-pad) 60px;pointer-events:auto;grid-template-columns:minmax(140px,22%) 1fr;gap:clamp(24px,5vw,64px);max-width:1500px;margin:0 auto;display:grid;position:relative}.nav-tabs,.nav-panels{z-index:2;position:relative}.nav-tabs{border-left:1px solid #25252526;flex-direction:column;gap:1rem;padding-left:1.5rem;display:flex}.nav-tab{text-transform:uppercase;letter-spacing:.05em;color:#25252559;text-align:left;font-size:clamp(1.25rem,2.5vw,2rem);font-weight:500;transition:color .3s,transform .3s;display:block}a.nav-tab--page{text-decoration:none}.nav-tab:hover,.nav-tab.active{color:#e63030}.nav-tab.active{transform:translate(6px)}.nav-panels{grid-template:1fr/1fr;min-height:55vh;max-height:calc(100vh - 180px);display:grid;position:relative;overflow:hidden}.nav-panel{opacity:0;pointer-events:none;width:100%;max-height:calc(100vh - 180px);transition:opacity .45s var(--ease-bia), transform .45s var(--ease-bia);z-index:0;grid-area:1/1;overflow-y:auto;transform:translateY(10px)}.nav-panel.active{opacity:1;pointer-events:auto;z-index:1;transform:translate(0,0)}.nav-panel.is-entering .about-links>li,.nav-panel.is-entering .nav-panel-stack>.subscribe-form,.nav-panel.is-entering .overlay-contact .menu-stack-row,.nav-panel.is-entering .social-links>.social-icon-link{opacity:0;transition:opacity .55s var(--ease-bia), transform .55s var(--ease-bia);transform:translateY(28px)}.nav-panel.is-entering .about-links>li,.nav-panel.is-entering .overlay-contact .menu-stack-row,.nav-panel.is-entering .subscribe-form.menu-item,.nav-panel.is-entering .social-links>.social-icon-link{transition-delay:calc(90ms * var(--i,0))}.nav-panel.active:not(.is-entering) .about-links>li,.nav-panel.active:not(.is-entering) .nav-panel-stack>.subscribe-form,.nav-panel.active:not(.is-entering) .overlay-contact .menu-stack-row,.nav-panel.active:not(.is-entering) .social-links>.social-icon-link{opacity:1;transform:translate(0,0)}.nav-panel.active:not(.is-entering) .social-links>.social-icon-link:hover{transform:translateY(-4px)scale(1.1)}.nav-projects-viewall{margin-bottom:1.25rem}.nav-viewall-link{text-transform:uppercase;letter-spacing:.14em;border-bottom:1px solid #25252540;padding-bottom:4px;font-size:.7rem;transition:border-color .25s,opacity .25s}.nav-viewall-link:hover{border-color:var(--ink);opacity:.7}.nav-projects-layout{grid-template-columns:1fr minmax(200px,32%);align-items:start;gap:clamp(24px,4vw,48px);display:grid}.project-list{list-style:none}.project-link{border-bottom:1px solid #2525251f;grid-template-columns:clamp(72px,8vw,96px) 1fr;align-items:center;gap:clamp(16px,2vw,24px);padding:1.1rem 0;transition:opacity .35s,border-color .35s;display:grid}.project-list li.is-dim .project-link{opacity:.35}.project-list li.is-active .project-link{opacity:1;border-color:#25252559}.project-thumb{aspect-ratio:1;background:#2525250f;position:relative;overflow:hidden}.project-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .6s var(--ease-bia);transform:scale(1.02)}.project-link:hover .project-thumb img{transform:scale(1.08)}.project-meta{flex-direction:column;gap:.35rem;min-width:0;display:flex}.project-name{text-transform:uppercase;letter-spacing:.04em;transition:transform .35s var(--ease-bia);font-size:clamp(1rem,1.8vw,1.5rem);font-weight:500}.project-link:hover .project-name{transform:translate(4px)}.project-tagline{color:var(--muted);transition:transform .4s var(--ease-bia), opacity .35s;font-size:clamp(.8rem,1.2vw,.95rem);font-weight:400;line-height:1.35}.project-link:hover .project-tagline{opacity:1;transform:translate(6px)}.nav-project-preview{opacity:0;transition:opacity .4s var(--ease-bia), transform .5s var(--ease-bia);pointer-events:none;position:sticky;top:clamp(100px,14vh,140px);transform:translate(12px)scale(.96)}.nav-project-preview.is-visible{opacity:1;transform:translate(0,0)scale(1)}.nav-project-preview-frame{aspect-ratio:1;background:#2525250d;overflow:hidden}.nav-project-preview-img{background-position:50%;background-size:cover;width:100%;height:100%;transition:opacity .35s}.nav-project-preview-img.is-swapping{opacity:.4}.nav-panel-stack{flex-direction:column;min-height:calc(100dvh - 200px);display:flex}.nav-panel-stack .overlay-contact{flex-direction:column;flex:1;display:flex}.about-links{flex-direction:column;flex:1;list-style:none;display:flex}.about-links li{border-bottom:1px solid #2525251f;flex:1;justify-content:center;align-items:center;display:flex}.about-links a{text-align:center;width:100%;padding:1.5rem 1rem;transition:opacity .35s;display:block}.about-links .link-title{transition:transform .4s var(--ease-bia)}.about-links a:hover .link-title{transform:translateY(-2px)}.link-title{text-transform:uppercase;letter-spacing:.04em;color:var(--ink);margin-bottom:.4em;font-size:clamp(1.35rem,3.8vw,2.65rem);font-weight:500;display:block}.link-desc{color:var(--muted);letter-spacing:.02em;font-size:clamp(.7rem,1.1vw,.82rem);display:block}.menu-stack-row{text-align:center;border-bottom:1px solid #2525251f;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:1.25rem 1rem;transition:opacity .35s;display:flex}.menu-stack-row:hover .label{transform:translateY(-2px)}.menu-stack-row .label{transition:transform .4s var(--ease-bia)}.subscribe-form{flex-shrink:0;justify-content:center;padding:1.25rem 0 .5rem;display:flex}.subscribe-btn{text-transform:uppercase;letter-spacing:.12em;border-bottom:3px solid var(--ink);font-size:1.15rem}.overlay-contact .label,.contact-grid .label{text-transform:uppercase;letter-spacing:.04em;color:var(--ink);margin-bottom:.35em;font-size:clamp(1.35rem,3.8vw,2.65rem);font-weight:500;display:block}.overlay-contact .value,.contact-grid .value{color:var(--ink);letter-spacing:.02em;max-width:28em;font-size:clamp(1.7rem,1.1vw,.82rem);font-weight:400;line-height:1.4;display:block}.nav-panel-stack--contact .social-links{flex-shrink:0;justify-content:center;gap:2rem;padding:1.5rem 0 .5rem}.contact-grid .value{font-size:clamp(1.1rem,2vw,1.6rem);font-weight:500}.section-hero{background:var(--paper);position:relative}.hero-sticky-media{z-index:0;background:#1a1a1a;height:100dvh;position:sticky;top:0;overflow:hidden}.hero-image,.hero-bg-photo{object-fit:cover;object-position:center 42%;will-change:transform;width:100%;height:100%;display:block;position:absolute;inset:0}.hero-image-overlay,.hero-bg-scrim{pointer-events:none;z-index:1;background:linear-gradient(#0000002e 0%,#0000 40%),linear-gradient(#0000 40%,#0009 100%);position:absolute;inset:0}.hero-bg-anim{mix-blend-mode:screen;z-index:1;position:absolute;inset:0;overflow:hidden}.hero-bg-blob{filter:blur(55px);opacity:.5;will-change:transform;border-radius:50%;position:absolute}.hero-bg-blob--1{background:radial-gradient(circle,#e63030 0%,#0000 65%);width:60vw;height:60vw;animation:14s ease-in-out infinite blobDrift;top:-15%;left:-10%}.hero-bg-blob--2{background:radial-gradient(circle,#2563eb 0%,#0000 65%);width:50vw;height:50vw;animation:18s ease-in-out infinite reverse blobDrift;top:-5%;right:-10%}.hero-bg-blob--3{background:radial-gradient(circle,#7c3aed 0%,#0000 65%);width:45vw;height:45vw;animation:16s ease-in-out 4s infinite blobDrift;bottom:-10%;left:25%}@keyframes blobDrift{0%,to{transform:translate(0)scale(1)}33%{transform:translate(4vw,3vh)scale(1.05)}66%{transform:translate(-3vw,5vh)scale(.96)}}.hero-scroll-track{z-index:2;margin-top:-100dvh;position:relative}.hero-scroll-spacer{pointer-events:none;height:52vh}.hero-title-stage{z-index:10;pointer-events:none;justify-content:flex-start;align-items:center;height:100dvh;display:flex;position:sticky;top:0}.hero-scroll-indicator{bottom:clamp(32px,5vh,52px);left:var(--header-pad);opacity:0;align-items:center;gap:14px;transition:opacity .6s 2.5s;display:flex;position:absolute}.hero-scroll-indicator.is-visible{opacity:1}.hero-scroll-line{transform-origin:0;background:#ffffff80;width:36px;height:1px;animation:2.4s ease-in-out 2.8s infinite scrollLinePulse;display:block}@keyframes scrollLinePulse{0%,to{opacity:.5;transform:scaleX(1)}50%{opacity:1;transform:scaleX(1.5)}}.hero-scroll-label{letter-spacing:.22em;text-transform:uppercase;color:#ffffff80;font-size:9px;font-weight:500}.hero-title-shift{width:100%;max-width:min(1340px,94vw);padding:0 var(--header-pad);text-align:left;will-change:transform, opacity;margin:0 auto}.hero-title-landed{width:100%;max-width:min(1340px,94vw);padding:clamp(24px, 5vh, 48px) var(--header-pad) 0;text-align:left;visibility:hidden;opacity:0;pointer-events:none;will-change:opacity;margin:0 auto}.hero-eyebrow--ink,.hero-title-landed .hero-eyebrow{color:#00000073}.hero-eyebrow-sep{opacity:.5;margin:0 .4em}.hero-eyebrow{text-transform:uppercase;letter-spacing:.16em;color:#ffffffa6;margin-bottom:1.6em;font-size:clamp(.65rem,.85vw,.78rem);font-weight:400}.hero-title{font-family:var(--font-jakarta,"Plus Jakarta Sans"), sans-serif;text-transform:uppercase;letter-spacing:-.035em;font-size:clamp(3.5rem,8.5vw,7.5rem);font-weight:800;line-height:.88}.hero-line{color:#fff;white-space:nowrap;max-width:100%;display:block}.hero-line--ink{color:#000}.hero-line--split{--fold-y:100%;background:linear-gradient(to bottom, #fff 0%, #fff var(--fold-y), var(--ink) var(--fold-y), var(--ink) 100%);-webkit-text-fill-color:transparent;color:#0000;-webkit-background-clip:text;background-clip:text}.hero-body{background:var(--paper);z-index:4;flex-direction:column;width:100%;display:flex;position:relative}.hero-body-inner{width:100%;max-width:min(1340px,94vw);padding:0 var(--header-pad) clamp(64px, 10vh, 120px);margin:0 auto}.hero-intro{padding-top:clamp(48px,5vh,72px)}.hero-stats{border-top:1px solid #00000014;border-bottom:1px solid #00000014;margin-bottom:clamp(36px,5vh,60px);display:flex}.hero-stat{border-right:1px solid #00000014;flex:none;padding:clamp(16px,2.5vh,24px) clamp(20px,3vw,40px)}.hero-stat:last-child{border-right:none}.hero-stat--wide{flex:1}.hero-stat-value{letter-spacing:-.02em;color:var(--ink);font-size:clamp(1.1rem,1.6vw,1.5rem);font-weight:700;line-height:1.1;display:block}.hero-stat-label{letter-spacing:.2em;text-transform:uppercase;color:var(--muted);margin-top:5px;font-size:8px;font-weight:500;display:block}.hero-intro-bottom{justify-content:space-between;align-items:flex-start;gap:clamp(24px,5vw,80px);display:flex}.hero-desc{color:var(--ink);max-width:820px;margin:0;font-size:clamp(1.6rem,1.05vw,1.05rem);line-height:1.75}.hero-cta{background:var(--ink);color:#fff;text-transform:uppercase;letter-spacing:.16em;white-space:nowrap;flex-shrink:0;align-items:center;gap:10px;padding:14px 28px;font-size:14px;font-weight:900;transition:background .25s,gap .25s;display:inline-flex}.hero-cta:hover{background:#e63030;gap:16px}.section-marquee{background:var(--paper);border-top:1px solid #0000000f;border-bottom:1px solid #0000000f;padding:clamp(32px,5vw,60px) 0;overflow:hidden}.marquee-track{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 12% 88%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 12% 88%,#0000 100%)}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-33.333%)}}.marquee-row{align-items:center;gap:0;width:max-content;animation:40s linear infinite marquee-scroll;display:flex}.section-marquee:hover .marquee-row{animation-play-state:paused}.marquee-logo{height:clamp(60px,8vw,84px);font-family:var(--font-display);color:#000;white-space:nowrap;border-right:1px solid #00000014;flex-shrink:0;justify-content:center;align-items:center;padding:0 clamp(40px,6vw,80px);display:flex}.marquee-logo-img{object-fit:contain;filter:grayscale()brightness(0)opacity(.65);pointer-events:none;-webkit-user-select:none;user-select:none;width:auto;transition:filter .3s,opacity .3s;display:block}.marquee-logo--img:hover .marquee-logo-img{filter:grayscale(0)brightness()opacity()}html.dark .marquee-logo-img{filter:grayscale()brightness(0)invert()opacity(.65)}html.dark .marquee-logo--img:hover .marquee-logo-img{filter:grayscale(0)brightness()invert(0)opacity()}.section-cap{border-top:1px solid #0000001f;justify-content:space-between;align-items:center;margin-bottom:clamp(48px,8vh,96px);padding-top:clamp(16px,2.5vh,24px);display:flex}.section-cap-no,.section-cap-label{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:clamp(.62rem,.78vw,.72rem);font-weight:400}.section-usp{padding:clamp(56px, 8vh, 100px) var(--header-pad);background:var(--paper)}.usp-inner{max-width:1500px;margin:0 auto}.usp-headline{text-align:center;margin-bottom:clamp(48px,9vh,100px)}.usp-headline.reveal{opacity:1;transition:none;transform:none}.usp-title{font-family:var(--font-jakarta,"Plus Jakarta Sans"), sans-serif;text-transform:uppercase;letter-spacing:-.02em;font-size:clamp(2.8rem,7vw,6rem);font-weight:700;line-height:.92}.usp-line-wrap{margin-bottom:-.06em;padding-bottom:.06em;display:block;overflow:hidden}.usp-line{transition:transform 1s cubic-bezier(.525,0,0,1);transition-delay:calc(var(--i,0) * .1s);display:block;transform:translateY(110%)}.usp-headline.is-visible .usp-line{transform:translateY(0)}.usp-cards{grid-template-columns:repeat(3,1fr);align-items:start;gap:clamp(10px,1.2vw,18px);display:grid}.usp-card{flex-direction:column;min-height:clamp(340px,48vh,520px);display:flex;position:relative;overflow:hidden}.usp-card.reveal{opacity:0;transition:opacity .9s cubic-bezier(.525,0,0,1),transform .9s cubic-bezier(.525,0,0,1);transform:translateY(56px)}.usp-card--1.reveal{transition-delay:0s}.usp-card--2.reveal{transition-delay:.15s}.usp-card--3.reveal{transition-delay:.3s}.usp-card.reveal.is-visible{opacity:1;transform:translateY(0)}.usp-card--1{background:var(--ink);color:#fff}.usp-card--2{color:#fff;background:#797d7a;margin-top:clamp(32px,5vh,72px)}.usp-card--3{color:var(--ink);background:#ffa574;margin-top:clamp(64px,10vh,144px)}.usp-card-content{z-index:1;flex:1;padding:clamp(28px,3.5vw,48px) clamp(24px,3vw,40px);position:relative}.usp-card-title{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.08em;margin-bottom:1.2em;font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:500}.usp-card-text{opacity:.8;font-size:clamp(.9rem,1.4vw,1rem);font-weight:500;line-height:1.7}.usp-card-no{letter-spacing:-.04em;opacity:.12;z-index:1;pointer-events:none;font-size:clamp(5rem,14vw,9rem);font-weight:800;line-height:1;position:absolute;bottom:clamp(10px,3vh,20px);right:clamp(24px,3vw,40px)}.usp-card--3 .usp-card-no{opacity:.18}.usp-card-deco{flex-shrink:0;height:clamp(100px,16vh,160px);position:relative;overflow:hidden}@media (max-width:768px){.usp-cards{grid-template-columns:1fr;max-width:440px;margin:0 auto}.usp-card--2,.usp-card--3{margin-top:0}}.section-feed{z-index:6;padding:clamp(48px, 8vh, 80px) var(--header-pad) clamp(64px, 10vh, 100px);background:var(--paper);position:relative}.feed-inner{max-width:1500px;margin:0 auto}.feed-heading{font-family:var(--font-jakarta,"Plus Jakarta Sans"), sans-serif;text-transform:uppercase;letter-spacing:-.02em;margin-bottom:clamp(32px,6vh,72px);font-size:clamp(2.8rem,7vw,6rem);font-weight:700;line-height:.92}.feed-heading.reveal{opacity:1;transition:none;transform:none}.feed-heading .usp-line-wrap{margin-bottom:-.06em;padding-bottom:.06em;display:block;overflow:hidden}.feed-heading.is-visible .usp-line{transform:translateY(0)}.feed-list{list-style:none}.feed-item{border-bottom:1px solid #2525251f}a.feed-card{color:inherit;cursor:pointer;padding:clamp(20px,3vw,32px) 0;text-decoration:none;display:block}.feed-headline{pointer-events:none;max-width:100%;color:var(--ink);transition:color .45s var(--ease-bia), transform .55s var(--ease-bia), opacity .45s var(--ease-bia), background-size .5s var(--ease-bia);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 2px;font-weight:500;display:inline-block}a.feed-card .feed-headline{opacity:.88}a.feed-card:hover .feed-headline{opacity:1;background-size:100% 2px;transform:translate(6px)}.feed-headline--mobile{letter-spacing:-.02em;margin-bottom:.75rem;font-size:clamp(1.05rem,2.2vw,1.65rem);line-height:1.25;display:block}.feed-headline--desktop{letter-spacing:-.02em;font-size:clamp(1.05rem,2vw,1.55rem);line-height:1.3;display:none}.feed-row{justify-content:space-between;align-items:flex-end;gap:clamp(16px,3vw,32px);display:flex}.feed-thumb{aspect-ratio:1.35;clip-path:inset(0 round 4px);width:clamp(72px,12vw,120px);transition:clip-path .45s var(--ease-bia);border-radius:4px;flex-shrink:0;overflow:hidden}a.feed-card:hover .feed-thumb{clip-path:inset(8px round 4px)}.feed-thumb img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform .55s var(--ease-bia);display:block}a.feed-card:hover .feed-thumb img{transform:scale(1.05)}.feed-body{transition:transform .55s var(--ease-bia);display:none}a.feed-card:hover .feed-body{transform:translate(6px)}.feed-meta{color:var(--muted);letter-spacing:.04em;pointer-events:none;transition:color .45s var(--ease-bia), transform .55s var(--ease-bia);margin-top:auto;font-size:clamp(.75rem,1vw,.85rem)}a.feed-card:hover .feed-meta{color:var(--ink)}.feed-cta{letter-spacing:.02em;color:var(--muted);pointer-events:none;transition:color .45s var(--ease-bia), transform .55s var(--ease-bia);flex-shrink:0;align-items:center;gap:.35em;margin-left:auto;font-size:clamp(.95rem,1.6vw,1.35rem);font-weight:500;display:inline-flex}a.feed-card:hover .feed-cta{color:var(--ink);transform:translate(4px)}.feed-arrow{width:.75em;height:.75em;display:inline-block;position:relative}.feed-arrow:before,.feed-arrow:after{content:"";transition:transform .25s var(--ease-bia);background:currentColor;position:absolute}.feed-arrow:before{transform-origin:100%;width:100%;height:2px;top:42%;right:0;transform:rotate(-45deg)}.feed-arrow:after{background:0 0;border-bottom:2px solid;border-right:2px solid;width:.35em;height:.35em;bottom:0;right:0}.feed-footer{margin-top:clamp(28px,4vh,48px)}.feed-viewall{letter-spacing:.02em;border-bottom:2px solid var(--ink);align-items:center;gap:.5em;padding-bottom:.15em;font-size:clamp(1rem,1.8vw,1.35rem);font-weight:500;text-decoration:none;transition:border-color .25s,transform .25s;display:inline-flex;position:relative}.feed-viewall:hover{border-color:#0000}.feed-viewall:hover .feed-viewall-text{transform:translate(6px)}.feed-viewall-text{transition:transform .3s var(--ease-bia);display:inline-block}.feed-viewall-icon{flex-shrink:0;width:.85em;height:.85em;position:relative}.feed-viewall-icon:before,.feed-viewall-icon:after{content:"";background:var(--ink);position:absolute}.feed-viewall-icon:before{width:2px;height:65%;top:0;left:0}.feed-viewall-icon:after{width:75%;height:2px;transition:width .3s var(--ease-bia);bottom:0;left:0}.feed-viewall:hover .feed-viewall-icon:after{width:110%}@media (min-width:1024px){.feed-headline--mobile{display:none}.feed-headline--desktop{display:block}.feed-row{grid-template-columns:repeat(12,1fr);align-items:end;gap:clamp(16px,2vw,24px);display:grid}.feed-thumb{grid-column:1/span 3;width:100%;max-width:none}.feed-body{flex-direction:column;grid-column:5/span 5;align-items:flex-start;min-height:clamp(120px,14vw,180px);display:flex}.feed-cta{grid-column:9/span 3;justify-self:end;margin-left:0}.feed-footer{grid-template-columns:repeat(12,1fr);gap:clamp(16px,2vw,24px);display:grid}.feed-viewall{grid-column:5/span 8}}.section-contact{min-height:100dvh;padding:clamp(40px, 8vh, 80px) var(--header-pad) clamp(48px, 6vh, 72px);flex-direction:column;justify-content:flex-end;display:flex;position:relative}.contact-logo-stage{pointer-events:none;z-index:1;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.contact-brand{opacity:.3;-webkit-user-select:none;user-select:none;pointer-events:none;width:min(95%,1150px);height:auto}html.dark .contact-brand{opacity:.08;filter:invert()}.contact-block{z-index:2;width:100%;position:relative}.contact-grid{border-top:1px solid #25252526;grid-template-columns:repeat(4,1fr);gap:clamp(12px,2vw,24px);max-width:1500px;margin:0 auto;padding-top:clamp(32px,5vh,56px);display:grid}.social-links{gap:1.25rem;margin-top:2rem;display:flex}.social-icon-link{width:84px;height:84px;color:inherit;opacity:.55;border:1.5px solid;border-radius:50%;justify-content:center;align-items:center;transition:opacity .3s,transform .3s,color .3s,border-color .3s,background-color .3s;display:flex}.social-icon-link:hover{opacity:1;transform:translateY(-4px)scale(1.1)}.social-icon-link--linkedin:hover{color:#0077b5;background-color:#0077b514;border-color:#0077b5}.social-icon-link--instagram:hover{color:#e1306c;background-color:#e1306c14;border-color:#e1306c}.social-icon-link--facebook:hover{color:#1877f2;background-color:#1877f214;border-color:#1877f2}.social-icon{width:40px;height:40px}@keyframes social-toast-in{0%{opacity:0;transform:translateY(8px)}15%{opacity:1;transform:translateY(0)}80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-6px)}}.social-coming-soon{letter-spacing:.08em;text-transform:uppercase;opacity:0;align-items:center;gap:.4em;margin-top:1rem;font-size:.8rem;animation:2.2s forwards social-toast-in;display:flex}.social-coming-soon-platform{font-weight:600}.contact-grid a{flex-direction:column;gap:.5rem;display:flex}.contact-grid a:hover{opacity:.55}.reveal{opacity:0;transition:opacity var(--duration,.8s) var(--ease-bia), transform var(--duration,.8s) var(--ease-bia);transition-delay:var(--delay,0s);transform:translateY(24px)}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (max-width:1024px){.nav-overlay-inner,.nav-projects-layout{grid-template-columns:1fr}.nav-project-preview{display:none}.nav-tabs{border-bottom:1px solid #25252526;border-left:none;flex-direction:row;gap:.5rem 1.5rem;padding-bottom:1rem;padding-left:0}.hero-stats{flex-wrap:wrap}.hero-stat--wide{border-top:1px solid #00000014;border-right:none;flex-basis:100%}.hero-intro-bottom{flex-direction:column;gap:28px}.hero-scroll-spacer{height:48vh}.contact-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.nav-tabs{border-bottom:none;border-left:1px solid #25252526;flex-flow:column;gap:.6rem;padding-bottom:0;padding-left:1rem}.nav-tab{text-align:left;font-size:clamp(1rem,4.5vw,1.3rem)}.menu-label{font-size:16px}.contact-grid{grid-template-columns:1fr}.contact-logo-stage{justify-content:center;align-items:flex-start;padding-top:clamp(48px,10vh,100px)}.contact-brand{width:min(80%,320px)}.hero-title{font-size:clamp(2.6rem,13vw,3.8rem)}.hero-line{white-space:normal}.hero-stats{flex-direction:column}.hero-stat{border-bottom:1px solid #0000000f;border-right:none;padding:14px 20px}.hero-stat:last-child{border-bottom:none}.hero-stat--wide{border-top:none}}:root{--proj-bg:#fff;--proj-fg:#0a0a0a;--proj-accent:#e63030;--proj-muted:#00000073;--proj-border:#0000001a;--proj-gold:#e63030;--proj-ease:cubic-bezier(.25, .46, .45, .94);--proj-pad:clamp(20px, 4vw, 48px)}body.projects-page{background:var(--proj-bg);color:var(--proj-fg);line-height:1.5;overflow-x:hidden}body.projects-page .site-header.on-hero .logo-home,body.projects-page .site-header.on-hero .logo-c-corner{fill:#000}body.projects-page .nav-projects-viewall{display:none}.proj-reveal{opacity:0;transition:opacity .8s var(--proj-ease), transform .8s var(--proj-ease);transition-delay:calc(90ms * var(--i,0));transform:translateY(40px)}.proj-reveal.is-visible{opacity:1;transform:translate(0,0)}.projects-hero{min-height:100svh;padding:0 var(--proj-pad) clamp(60px, 10vh, 100px);background:var(--proj-bg) center / cover no-repeat;align-items:flex-end;display:flex;position:relative;overflow:hidden}.projects-hero:before{content:"";background-image:linear-gradient(var(--proj-border) 1px, transparent 1px), linear-gradient(90deg, var(--proj-border) 1px, transparent 1px);opacity:.12;z-index:1;background-size:60px 60px;position:absolute;inset:0}.projects-hero:after{content:"";background:linear-gradient(to top, var(--proj-bg) 0%, #ffffff8c 45%, transparent 78%), linear-gradient(to right, #ffffff73 0%, transparent 55%);pointer-events:none;z-index:2;position:absolute;inset:0}.projects-hero-bg{object-fit:cover;object-position:center top;z-index:0;width:100%;height:100%;position:absolute;inset:0}.projects-hero-num{right:var(--proj-pad);letter-spacing:-.06em;color:#0000000d;-webkit-user-select:none;user-select:none;pointer-events:none;z-index:3;font-size:clamp(140px,26vw,380px);font-weight:700;line-height:1;position:absolute;top:50%;transform:translateY(-50%)}.projects-hero-text{z-index:3;max-width:720px;position:relative}.projects-label{letter-spacing:.22em;text-transform:uppercase;color:var(--proj-accent);align-items:center;gap:12px;margin-bottom:28px;font-size:11px;display:flex}.projects-label:before{content:"";background:var(--proj-accent);width:32px;height:1px;display:block}.projects-hero-title{letter-spacing:-.02em;font-size:clamp(32px,5.5vw,72px);font-weight:700;line-height:1.15}.projects-hero-sub{color:#00000080;letter-spacing:.06em;margin-top:24px;font-size:14px}.projects-filter{padding:48px var(--proj-pad) 0;flex-wrap:wrap;align-items:center;gap:8px;max-width:1280px;margin:0 auto;display:flex}.projects-filter-btn{border:2px solid var(--proj-border);letter-spacing:.14em;text-transform:uppercase;padding:8px 20px;font-size:15px;transition:border-color .2s,color .2s,background .2s}.projects-filter-btn:hover{border-color:#ff3b5c66}.projects-filter-btn.is-active{border-color:var(--proj-accent);color:var(--proj-accent);background:#ff3b5c0f}.projects-list{padding:0 var(--proj-pad);max-width:1280px;margin:0 auto}.projects-section-header{border-top:1px solid var(--proj-border);align-items:baseline;gap:32px;padding:100px 0 48px;display:flex}.projects-section-title{letter-spacing:-.03em;font-size:clamp(28px,4vw,48px);font-weight:700}.work-item{border-top:1px solid var(--proj-border);grid-template-columns:1fr 1fr;align-items:center;gap:clamp(40px,6vw,80px);padding:clamp(80px,12vh,120px) 0;scroll-margin-top:100px;display:grid}.work-item:last-child{border-bottom:1px solid var(--proj-border)}.work-item.is-hidden,.fs-row.is-hidden,.projects-archive.is-hidden{display:none}.work-item.reverse{direction:rtl}.work-item.reverse>*{direction:ltr}.work-meta{align-items:center;gap:20px;margin-bottom:24px;display:flex}.work-num{letter-spacing:-.04em;color:var(--proj-border);font-size:clamp(56px,8vw,96px);font-weight:700;line-height:1}.work-cats{flex-direction:column;gap:4px;display:flex}.work-cat{letter-spacing:.18em;text-transform:uppercase;color:var(--ink);font-size:16px}.work-name{letter-spacing:-.03em;margin-bottom:16px;font-size:clamp(32px,5vw,56px);font-weight:700;line-height:1}.work-tagline{color:#000000b3;margin-bottom:28px;font-size:clamp(15px,2vw,20px);font-weight:500;line-height:1.5}.work-desc{color:#0000008c;max-width:440px;margin-bottom:36px;font-size:14px;line-height:2}.work-link{letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid #0003;align-items:center;gap:10px;padding-bottom:6px;font-size:12px;font-weight:500;transition:border-color .2s,color .2s;display:inline-flex}.work-link:hover{border-color:var(--proj-accent);color:var(--proj-accent)}.work-link svg{transition:transform .2s}.work-link:hover svg{transform:translate(3px,-3px)}.mockup-frame{background:#f0f0f0;border-radius:12px;overflow:hidden;box-shadow:0 20px 60px #0000001f,0 0 0 1px #00000014}.mockup-bar{background:#e8e8ee;border-bottom:1px solid #0000000f;align-items:center;gap:6px;padding:12px 16px;display:flex}.mockup-dot{border-radius:50%;width:10px;height:10px}.mockup-dot:first-child{background:#ff5f57}.mockup-dot:nth-child(2){background:#ffbd2e}.mockup-dot:nth-child(3){background:#28c840}.mockup-url-bar{color:#0006;letter-spacing:.04em;background:#ffffffb3;border-radius:4px;flex:1;margin-left:12px;padding:4px 10px;font-size:11px}.mockup-screen{height:clamp(220px,32vw,420px);position:relative;overflow:hidden}.mockup-screen img{object-fit:cover;object-position:top center;width:100%;height:100%;transition:transform .6s var(--proj-ease);display:block}.mockup-frame:hover .mockup-screen img{transform:translateY(-6%)}.projects-cta{min-height:70vh;padding:clamp(80px, 12vh, 120px) var(--proj-pad) clamp(48px, 6vh, 72px);border-top:1px solid var(--proj-border);flex-direction:column;justify-content:flex-end;display:flex;position:relative;overflow:hidden}.projects-cta:before{content:"";background-image:linear-gradient(var(--proj-border) 1px, transparent 1px), linear-gradient(90deg, var(--proj-border) 1px, transparent 1px);opacity:.35;pointer-events:none;background-size:60px 60px;position:absolute;inset:0}.projects-cta-inner{z-index:1;width:100%;max-width:1280px;margin:0 auto;position:relative}.projects-cta-title{letter-spacing:-.03em;margin-bottom:32px;font-size:clamp(40px,7vw,96px);font-weight:700;line-height:1.05}.projects-cta-link{letter-spacing:.14em;text-transform:uppercase;border:1px solid var(--proj-gold);color:var(--ink);align-items:center;gap:10px;padding:14px 28px;font-size:15px;transition:background .25s,color .25s;display:inline-flex}.projects-cta-link:hover{background:#e6303014}.projects-footer{border-top:1px solid var(--proj-border);color:#0006;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:48px;padding-top:28px;font-size:12px;display:flex}@media (max-width:768px){.projects-hero{padding:0 20px 60px}.projects-hero-num{font-size:clamp(90px,28vw,180px);right:20px}.projects-list,.projects-filter{padding-left:16px;padding-right:16px}.work-item{grid-template-columns:1fr;gap:40px;padding:72px 0}.work-item.reverse{direction:ltr}.projects-section-header{flex-direction:column;gap:8px;padding:60px 0 32px}}.site-footer{padding:clamp(20px, 2.5vw, 28px) var(--header-pad);background:var(--paper);border-top:1px solid #0000001a}.site-footer-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1500px;margin:0 auto;display:flex}.site-footer-copy{color:var(--muted);letter-spacing:.03em;font-size:12px}.site-footer-nav{gap:clamp(20px,3vw,48px);display:flex}.site-footer-nav a{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:12px;transition:color .2s}.site-footer-nav a:hover{color:var(--ink)}@media (max-width:480px){.site-footer-inner{flex-direction:column;align-items:flex-start;gap:12px}}.detail-page{background:var(--paper)}.detail-main{grid-template-columns:55% 45%;min-height:100vh;display:grid}.detail-gallery{flex-direction:row;display:flex}.detail-gallery-aside{-webkit-backdrop-filter:blur(6px);z-index:5;background:0 0;flex-direction:column;flex-shrink:0;width:72px;height:100vh;margin-right:-72px;padding-top:68px;padding-bottom:24px;display:flex;position:sticky;top:0}.detail-counter{color:var(--ink);flex-direction:column;flex-shrink:0;align-items:center;padding:0 0 130px;display:flex}.detail-counter-num,.detail-counter-den{font-variant-numeric:tabular-nums;font-size:14px;font-weight:400;line-height:1.5}.detail-counter-line{background:var(--ink);width:14px;height:1px;margin:2px 0;display:block}.detail-thumbs{scrollbar-width:none;flex-direction:column;align-items:center;gap:6px;padding:0 8px;display:flex;overflow-y:auto}.detail-thumbs::-webkit-scrollbar{display:none}.detail-thumb{cursor:pointer;opacity:.38;background:#ddd;border:none;flex-shrink:0;width:48px;height:48px;padding:0;transition:opacity .2s;position:relative;overflow:hidden}.detail-thumb:hover{opacity:.7}.detail-thumb.is-active{opacity:1;outline:1.5px solid var(--ink);outline-offset:2px}.detail-thumb img{object-fit:cover;width:100%;height:100%;display:block}.detail-thumb-play{color:#fff;background:#00000059;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.detail-gallery-images{flex-direction:column;flex:1;min-width:0;display:flex}.detail-img-wrap{cursor:none;width:100%;position:relative;overflow:hidden}.gallery-zoom-cursor{pointer-events:none;z-index:200;opacity:0;flex-direction:column;align-items:center;gap:5px;transition:opacity .2s;display:flex;position:fixed;transform:translate(-50%,-50%)}.gallery-zoom-cursor.is-visible{opacity:1}.gallery-zoom-text{letter-spacing:.22em;text-transform:uppercase;color:#fff;mix-blend-mode:difference;font-size:9px;font-weight:600}.gallery-zoom-line{mix-blend-mode:difference;background:#fff;width:100%;height:1px;display:block}.gallery-lightbox{z-index:150;cursor:default;background:#000000ed;justify-content:center;align-items:center;animation:.28s both lbFadeIn;display:flex;position:fixed;inset:0}@keyframes lbFadeIn{0%{opacity:0}to{opacity:1}}.gallery-lightbox-content{max-width:88vw;max-height:88vh;animation:.32s cubic-bezier(.25,.46,.45,.94) both lbScaleIn;position:relative}@keyframes lbScaleIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.gallery-lightbox-media{object-fit:contain;width:auto;max-width:88vw;height:auto;max-height:88vh;display:block}.gallery-lightbox-iframe{background:#000;border:none;width:min(88vw,960px);height:min(88vh,540px)}.gallery-lightbox-counter{letter-spacing:.12em;color:#ffffff73;font-variant-numeric:tabular-nums;pointer-events:none;font-size:10px;position:absolute;top:28px;left:28px}.gallery-lightbox-close{color:#fff;cursor:pointer;z-index:5;background:#ffffff14;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:42px;height:42px;transition:background .2s;display:flex;position:absolute;top:20px;right:20px}.gallery-lightbox-close:hover{background:#ffffff2e}.gallery-lightbox-arrow{color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:5;background:#ffffff12;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:background .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.gallery-lightbox-arrow:hover{background:#ffffff2e}.gallery-lightbox-arrow--prev{left:24px}.gallery-lightbox-arrow--next{right:24px}.detail-img-wrap img,.detail-img-wrap video{object-fit:contain;width:100%;height:100vh;transition:transform .6s cubic-bezier(.25,.46,.45,.94);display:block}.detail-img-play-overlay{pointer-events:none;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.detail-img-play-overlay svg{color:#fff;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#00000073;border-radius:50%;width:56px;height:56px;padding:16px;transition:transform .3s,background .3s}.detail-img-wrap:hover .detail-img-play-overlay svg{background:#000000a6;transform:scale(1.1)}.detail-img-wrap:hover img,.detail-img-wrap:hover video{transform:scale(1.03)}.detail-img-wrap:after{content:attr(data-index);letter-spacing:.14em;text-transform:uppercase;color:#fff;opacity:.6;font-size:10px;font-weight:500;position:absolute;bottom:24px;left:28px}.detail-info{scrollbar-width:none;border-left:1px solid #00000014;align-items:flex-start;height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.detail-info::-webkit-scrollbar{display:none}.detail-info-inner{width:100%;padding:clamp(72px,9vh,120px) clamp(36px,5vw,72px) clamp(48px,6vh,80px)}.detail-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin-bottom:18px;font-size:11px;font-weight:500}.detail-title{letter-spacing:-.03em;color:var(--ink);margin-bottom:14px;font-size:clamp(36px,4vw,62px);font-weight:700;line-height:.95}.detail-tagline{color:var(--muted);letter-spacing:.01em;margin-bottom:32px;font-size:clamp(13px,1.1vw,15px);font-style:italic;font-weight:400}.detail-desc{color:var(--ink);opacity:.85;max-width:400px;margin-bottom:16px;font-size:clamp(14px,1.1vw,16px);line-height:1.8}.detail-section{border-top:1px solid #00000014;margin-top:28px;padding-top:20px}.detail-section-label{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:11px;font-weight:500}.detail-section-text{color:var(--ink);opacity:.85;max-width:400px;font-size:clamp(14px,1.1vw,16px);line-height:1.75}.detail-outcome{flex-direction:column;gap:10px;display:flex}.detail-outcome-point{color:var(--ink);opacity:.85;max-width:400px;padding-left:16px;font-size:clamp(14px,1.1vw,16px);line-height:1.65;position:relative}.detail-outcome-point:before{content:"·";opacity:.6;font-size:18px;line-height:1.4;position:absolute;left:0}.stack-a-chips{flex-wrap:wrap;gap:8px;display:flex}.stack-a-chip{border:1px solid var(--ink);letter-spacing:.04em;color:var(--ink);cursor:default;background:0 0;align-items:center;padding:8px 16px;font-size:11px;font-weight:500;transition:background .2s,color .2s;display:inline-flex}.stack-a-chip:hover{background:var(--ink);color:#fff}.stack-a-specs{border:1px solid #0000001a;flex-wrap:wrap;gap:0;margin-top:24px;display:flex}.stack-a-spec{border-bottom:1px solid #00000014;border-right:1px solid #00000014;flex:40%;padding:12px 16px}.stack-a-spec:nth-child(2n){border-right:none}.stack-a-spec dt{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:6px;font-size:10px;font-weight:500}.stack-a-spec dd{color:var(--ink);font-size:14px;font-weight:600}.detail-actions{border-top:1px solid #00000014;align-items:center;gap:24px;margin-top:32px;padding-top:24px;display:flex}.detail-live-btn{letter-spacing:.16em;text-transform:uppercase;color:#fff;background:var(--ink);border-radius:4px;align-items:center;gap:8px;padding:10px 18px;font-size:10px;font-weight:600;transition:opacity .2s;display:inline-flex}.detail-live-btn:hover{opacity:.75}.detail-back{letter-spacing:.18em;text-transform:uppercase;color:var(--ink);opacity:.4;align-items:center;gap:10px;font-size:10px;font-weight:500;transition:opacity .25s,gap .25s;display:inline-flex}.detail-back:hover{opacity:1;gap:14px}@media (max-width:860px){.detail-main{grid-template-columns:1fr}.detail-info{border-top:1px solid #00000014;border-left:none;height:auto;position:relative}.detail-info-inner{max-width:100%;padding:110px 24px 52px}.detail-specs{grid-template-columns:1fr 1fr}.detail-gallery{flex-direction:column}.detail-gallery-aside{background:var(--paper);z-index:4;border-top:1px solid var(--border);flex-direction:row;order:2;align-items:center;gap:16px;width:100%;height:auto;margin-right:0;padding:10px 20px;position:static}.detail-gallery-images{order:1}.detail-counter{flex-direction:row;flex-shrink:0;align-items:center;gap:6px;padding:0}.detail-counter-line{width:14px;height:1px;margin:0}.detail-thumbs{flex-direction:row;flex:1;align-items:center;gap:6px;padding:0;overflow:auto hidden}.detail-thumb{flex-shrink:0;width:36px;height:36px}.detail-gallery-images{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none;flex-direction:row;height:72vw;overflow-x:auto}.detail-gallery-images::-webkit-scrollbar{display:none}.detail-img-wrap{scroll-snap-align:start;cursor:pointer;flex:0 0 100%;height:72vw}.detail-img-wrap img,.detail-img-wrap video{object-fit:contain;width:100%;height:72vw}}.detail-tabs{margin-top:28px}.detail-tab-bar{border-bottom:1px solid #00000014;gap:30px;margin-bottom:24px;display:flex}.detail-tab-btn{letter-spacing:.01em;color:var(--ink);opacity:.45;cursor:pointer;white-space:nowrap;background:0 0;border:none;outline:none;padding:0 0 13px;font-size:14px;font-weight:500;transition:opacity .25s,color .25s;position:relative}.detail-tab-btn:after{content:"";background:var(--ink);transform-origin:100%;width:100%;height:1px;transition:transform .38s cubic-bezier(.76,0,.24,1);position:absolute;bottom:-1px;left:0;transform:scaleX(0)}.detail-tab-btn:hover{opacity:.65}.detail-tab-btn:hover:after{transform-origin:100%;transform:scaleX(1)}.detail-tab-btn.is-active{opacity:1}.detail-tab-btn.is-active:after{transform-origin:0;transition:none;transform:scaleX(1)}.detail-tab-panel{animation:.22s both tabFadeIn}@keyframes tabFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.detail-tab-panel--hidden{display:none}.main{position:relative}.about-page{padding-top:0}.about-hero{padding:clamp(120px, 16vh, 180px) var(--header-pad) clamp(80px, 10vh, 160px);border-bottom:1px solid #00000014}.about-hero-grid{grid-template-columns:1fr 1fr;align-items:start;gap:clamp(40px,6vw,100px);display:grid}.about-hero-heading{font-family:var(--font-display);letter-spacing:-.03em;color:var(--ink);font-size:clamp(2.2rem,4.5vw,5.5rem);font-weight:700;line-height:.95}.about-hero-body{color:var(--ink);opacity:.72;margin-bottom:1.4em;font-size:clamp(14px,1.25vw,18px);line-height:1.75}.about-hero-body:last-child{margin-bottom:0}.about-line-wrap{margin-bottom:-.06em;padding-bottom:.16em;display:block;overflow:hidden}.about-line{display:block}.about-hero-left .about-line{animation:aboutLineUp 1s cubic-bezier(.525, 0, 0, 1) calc(var(--i,0) * .13s) both;animation-play-state:paused}.about-hero-anim-ready .about-line{animation-play-state:running}@keyframes aboutLineUp{0%{transform:translateY(108%)}to{transform:translateY(0)}}.about-mission{padding:clamp(80px, 12vw, 140px) var(--header-pad);background:var(--ink);color:#fff}.about-mission-label{font-family:var(--font-display);letter-spacing:-.025em;color:#fff;margin-bottom:clamp(32px,5vw,60px);font-size:clamp(1.6rem,2.5vw,2.8rem);font-weight:700;display:block}.about-mission-quote{font-family:var(--font-display);letter-spacing:-.03em;color:#fff;font-size:clamp(2.6rem,6.5vw,7.5rem);font-weight:700;line-height:.92}.about-mission-quote .about-line{animation:aboutLineUp 1s cubic-bezier(.525, 0, 0, 1) calc(var(--i,0) * .13s) both;animation-play-state:paused}.about-mission-quote.about-mission-anim-ready .about-line{animation-play-state:running}.about-name{padding:clamp(60px, 12vw, 10px) var(--header-pad)}.about-name-label{text-transform:uppercase;color:var(--ink);font-family:var(--font-display);letter-spacing:-.025em;margin-bottom:clamp(40px,6vw,20px);font-size:clamp(1.6rem,2.5vw,2.8rem);font-weight:700}.about-name-row{border-top:1px solid #00000014;grid-template-columns:clamp(72px,14vw,180px) 1fr;align-items:center;gap:clamp(20px,4vw,56px);padding:clamp(20px,3vw,40px) 0;display:grid}.about-name-char{font-family:var(--font-display);color:var(--ink);letter-spacing:-.04em;-webkit-user-select:none;user-select:none;font-size:clamp(64px,12vw,160px);font-weight:800;line-height:.88}.about-name-row--brand{display:block}.about-name-row--brand .about-name-char{color:var(--ink);font-size:clamp(56px,10vw,140px)}.about-name-meaning{flex-direction:column;gap:8px;display:flex}.about-name-word{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:clamp(1.2rem,2vw,2.2rem);font-weight:700;display:block}.about-name-desc{color:var(--muted);max-width:500px;font-size:clamp(.85rem,1.1vw,1rem);line-height:1.75;display:block}.about-services{padding:clamp(64px, 9vw, 20px) var(--header-pad);border-top:1px solid #00000014}.about-services-header{justify-content:space-between;align-items:baseline;margin-bottom:clamp(32px,5vw,60px);display:flex}.about-services-heading{font-family:var(--font-display);letter-spacing:-.025em;font-size:clamp(1.6rem,2.5vw,2.8rem);font-weight:700}.about-services-count{letter-spacing:-.025em;color:#0003;font-size:clamp(1.6rem,2.5vw,2.8rem);font-weight:700}.about-services-grid{border-top:1px solid #00000014;border-left:1px solid #00000014;grid-template-columns:repeat(4,1fr);display:grid}.about-service-card{border-bottom:1px solid #00000014;border-right:1px solid #00000014;flex-direction:column;gap:14px;padding:clamp(28px,3.5vw,48px) clamp(22px,2.8vw,36px);transition:background .3s;display:flex}.about-service-card.reveal{transition:background .3s ease, opacity .7s var(--ease-bia), transform .7s var(--ease-bia);transition-delay:var(--delay,0s);transform:translateY(52px)}.about-service-card:hover{background:#00000006}.about-service-num{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:19px;font-weight:500}.about-service-title{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);font-size:clamp(.95rem,1.5vw,1.4rem);font-weight:600;line-height:1.2}.about-service-desc{color:var(--muted);margin-top:auto;font-size:17px;line-height:1.75}.about-team{padding:clamp(64px, 9vw, 110px) var(--header-pad)}.about-team-header{justify-content:space-between;align-items:baseline;margin-bottom:clamp(32px,5vw,60px);display:flex}.about-team-heading{font-family:var(--font-display);letter-spacing:-.025em;font-size:clamp(1.6rem,2.5vw,2.8rem);font-weight:700}.about-team-count{letter-spacing:-.025em;color:#0003;font-size:clamp(1.6rem,2.5vw,2.8rem);font-weight:700}.team-grid{grid-template-columns:repeat(3,1fr);gap:clamp(24px,3vw,40px) clamp(20px,3vw,36px);list-style:none;display:grid}.team-grid li.reveal{transition-delay:var(--delay,0s);transform:translateY(52px)}.team-grid li.reveal.is-visible{transform:translateY(0)}.team-card{cursor:pointer}.team-card-img-wrap{aspect-ratio:4/5;background:#e8e8e8;border-radius:4px;margin-bottom:14px;position:relative;overflow:hidden}.team-card-img{width:100%;height:calc(100% + var(--team-shift,2rem));object-fit:cover;object-position:top center;will-change:transform;transition:transform .1s linear;display:block;position:absolute;inset:0}.team-card:hover .team-card-img{transition:transform .55s cubic-bezier(.25,.46,.45,.94)!important;transform:scale(1.04)!important}.team-card-name{color:var(--ink);margin-bottom:4px;font-size:13px;font-weight:500;transition:-webkit-text-decoration .2s,text-decoration .2s}.team-card:hover .team-card-name{text-underline-offset:3px;text-decoration:underline}.team-card-role{color:var(--ink);font-size:12px;transition:color .2s}.team-card:hover .team-card-role{color:var(--ink)}.team-modal-backdrop{z-index:200;-webkit-backdrop-filter:blur(8px);background:#0c0c0e8c;justify-content:center;align-items:center;padding:20px;animation:.2s both tmFadeIn;display:flex;position:fixed;inset:0}@keyframes tmFadeIn{0%{opacity:0}to{opacity:1}}.team-modal{background:#fff;border-radius:20px;flex-direction:column;width:min(880px,100%);max-height:90vh;animation:.3s cubic-bezier(.22,1,.36,1) both tmSlideUp;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 16px #0000000f,0 24px 64px #00000024}html.dark .team-modal{background:#1a1a1e}@keyframes tmSlideUp{0%{opacity:0;transform:translateY(28px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.team-modal-close{z-index:10;cursor:pointer;color:#222;background:#0000000f;border:none;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;transition:background .18s,transform .2s;display:flex;position:absolute;top:22px;right:22px}html.dark .team-modal-close{color:#f0efe8;background:#ffffff1a}.team-modal-close:hover{background:#0000001f;transform:rotate(90deg)}html.dark .team-modal-close:hover{background:#ffffff2e}.team-modal-top{flex:1;min-height:0;display:flex;overflow:hidden}.team-modal-photo{background:#e8e8e8;flex:0 0 46%;position:relative;overflow:hidden}html.dark .team-modal-photo{background:#2a2a2e}.team-modal-photo img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.team-modal-body{flex-direction:column;flex:1;padding:44px 44px 36px;display:flex;overflow-y:auto}.team-modal-name{color:#0c0c0e;letter-spacing:-.02em;margin-bottom:6px;font-size:clamp(28px,3.5vw,40px);font-weight:700;line-height:1.1}html.dark .team-modal-name{color:#f0efe8}.team-modal-role{color:var(--ink);margin-bottom:16px;font-size:13px;font-weight:400}.team-modal-meta{border-bottom:1px solid #ebebeb;flex-wrap:wrap;gap:16px;margin-bottom:22px;padding-bottom:20px;display:flex}html.dark .team-modal-meta{border-bottom-color:#ffffff14}.team-modal-meta-item{color:#555;align-items:center;gap:6px;font-size:12px;font-weight:500;display:flex}html.dark .team-modal-meta-item{color:#f0efe88c}.team-modal-linkedin{color:#0a66c2;border:1.5px solid #0a66c2;border-radius:100px;align-self:flex-start;align-items:center;gap:8px;margin-top:24px;padding:10px 20px;font-size:13px;font-weight:500;text-decoration:none;transition:color .26s;display:inline-flex;position:relative;overflow:hidden}.team-modal-linkedin:before{content:"";z-index:0;background:#0a66c2;transition:transform .3s cubic-bezier(.25,.46,.45,.94);position:absolute;inset:0;transform:translate(-101%)}.team-modal-linkedin:hover:before{transform:translate(0)}.team-modal-linkedin:hover{color:#fff}.team-modal-linkedin>*{z-index:1;position:relative}.team-modal-bio{color:#333;flex:1;margin-bottom:32px;font-size:15px;line-height:1.75}html.dark .team-modal-bio{color:#f0efe8bf}.team-modal-tags-section{margin-top:auto}.team-modal-tags-label{color:#555;margin-bottom:12px;font-size:13px;font-weight:500}html.dark .team-modal-tags-label{color:#f0efe88c}.team-modal-tags{flex-wrap:wrap;gap:8px;display:flex}.team-modal-tag{color:#222;background:#f3f3f5;border:none;border-radius:100px;padding:7px 16px;font-size:13px;font-weight:500}html.dark .team-modal-tag{color:#f0efe8;background:#ffffff14}.team-modal-nav{background:#fff;border-top:1px solid #ebebeb;flex-shrink:0;justify-content:space-between;align-items:center;padding:18px 32px;display:flex}html.dark .team-modal-nav{background:#1a1a1e;border-top-color:#ffffff14}.team-modal-counter{letter-spacing:.08em;color:var(--ink);font-variant-numeric:tabular-nums;font-size:15px}.team-modal-nav-btn{color:#222;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;min-width:120px;padding:10px 0;font-size:18px;font-weight:500;transition:opacity .18s,gap .18s;display:flex}html.dark .team-modal-nav-btn{color:#f0efe8}.team-modal-nav-btn:hover:not(:disabled){gap:10px}.team-modal-nav-btn:disabled{opacity:0;pointer-events:none}.team-modal-nav-btn--next{justify-content:flex-end}@media (max-width:600px){.team-modal{border-radius:16px;max-height:92vh}.team-modal-top{flex-direction:column}.team-modal-photo{flex:0 0 280px;width:100%}.team-modal-photo img{object-fit:contain;object-position:center center}.team-modal-body{padding:28px 24px 20px;overflow-y:auto}.team-modal-name{font-size:26px}.team-modal-nav{padding:14px 20px}.team-modal-nav-btn{min-width:80px;font-size:12px}}.about-values{border-top:1px solid #00000014;grid-template-columns:repeat(4,1fr);display:grid}.about-value-item{padding:clamp(28px, 4vw, 48px) var(--header-pad);border-right:1px solid #00000014;flex-direction:column;gap:8px;display:flex}.about-value-item:last-child{border-right:none}.about-value-label{letter-spacing:.18em;text-transform:uppercase;color:var(--muted);font-size:9px;font-weight:500}.about-value-number{font-family:var(--font-display);letter-spacing:-.02em;color:var(--ink);font-size:clamp(1.4rem,2.2vw,2.4rem);font-weight:700}@media (max-width:900px){.about-hero-grid{grid-template-columns:1fr;gap:32px}.about-services-grid,.team-grid,.about-values{grid-template-columns:repeat(2,1fr)}.about-value-item:nth-child(2){border-right:none}.about-value-item:nth-child(3){border-top:1px solid #00000014}.about-value-item:nth-child(4){border-top:1px solid #00000014;border-right:none}}@media (max-width:560px){.about-services-grid{grid-template-columns:1fr}.team-grid{grid-template-columns:repeat(2,1fr);gap:16px 12px}.about-values{grid-template-columns:1fr 1fr}.about-name-row{grid-template-columns:clamp(52px,18vw,80px) 1fr;gap:16px}}html.dark{--ink:#f0efe8;--paper:#0c0c0e;--muted:#f0efe88c;--border:#ffffff14;--proj-bg:#0a0a0f;--proj-fg:#f0efe8;--proj-border:#ffffff1a;--proj-muted:#f0efe873}html.dark .hero-line--ink{color:#f0efe8}html.dark .hero-eyebrow--ink,html.dark .hero-title-landed .hero-eyebrow{color:#f0efe873}html.dark .detail-info{border-top-color:#ffffff14;border-left-color:#ffffff14}html.dark .detail-section,html.dark .detail-actions{border-top-color:#ffffff14}html.dark .detail-tab-bar{border-bottom-color:#ffffff14}html.dark .detail-tab-btn:after{background:var(--ink)}html.dark .detail-live-btn{color:#0c0c0e;background:#f0efe8}html.dark .stack-a-specs{border-color:#ffffff1a}html.dark .stack-a-spec{border-color:#ffffff14}html.dark .detail-thumb{background:#222}html.dark .work-tagline{color:#f0efe8bf}html.dark .work-desc{color:#f0efe88c}html.dark .work-link{border-bottom-color:#f0efe840}html.dark .work-num{color:#ffffff0f}html.dark .mockup-frame{background:#111118;box-shadow:0 20px 60px #00000080,0 0 0 1px #ffffff0f}html.dark .mockup-bar{background:#1a1a24;border-bottom-color:#ffffff0f}html.dark .mockup-url-bar{color:#f0efe859;background:#ffffff0f}html.dark .projects-footer{color:#f0efe866}html.dark .projects-hero-sub{color:#f0efe880}html.dark #nav-overlay{background:#111}html.dark .nav-tab{color:#f0efe859}html.dark .nav-tab:hover,html.dark .nav-tab.active{color:#e63030}html.dark .nav-tabs{border-color:#f0efe826}html.dark .nav-viewall-link{border-bottom-color:#f0efe840}html.dark .project-link{border-bottom-color:#f0efe81f}html.dark .project-list li.is-active .project-link{border-color:#f0efe859}html.dark .project-thumb{background:#f0efe80f}html.dark .nav-project-preview-frame{background:#f0efe80d}html.dark .about-links li,html.dark .menu-stack-row{border-bottom-color:#f0efe81f}html.dark .hero-cta,html.dark .usp-card--1{color:var(--paper)}html.dark .usp-card--3{color:#0c0c0e}html.dark .about-mission,html.dark .about-mission-label,html.dark .about-mission-quote{color:var(--paper)}html.dark .hero-stats{border-top-color:#ffffff14;border-bottom-color:#ffffff14}html.dark .hero-stat{border-right-color:#ffffff14}html.dark .hero-stat--wide{border-top-color:#ffffff14}html.dark .section-marquee{border-top-color:#ffffff0f;border-bottom-color:#ffffff0f}html.dark .marquee-logo{color:var(--ink);border-right-color:#ffffff14}html.dark .section-cap{border-top-color:#ffffff1f}html.dark .site-footer{border-top-color:#ffffff1a}html.dark .about-name-row,html.dark .about-services,html.dark .about-values{border-top-color:#ffffff14}html.dark .about-value-item{border-right-color:#ffffff14}.credits-list{flex-direction:column;gap:0;margin-top:4px;display:flex}.credits-row{border-bottom:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:16px;padding:12px 0;display:flex}.credits-row:first-child{border-top:1px solid var(--border)}.credits-role{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);flex-shrink:0;font-size:11px;font-weight:500}.credits-name{color:var(--ink);text-align:right;font-size:15px;font-weight:600}.credits-press{margin-top:24px}.credits-press-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:10px;font-size:11px;font-weight:500}.credits-press-link{color:var(--ink);border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:10px;padding:12px 0;font-size:14px;font-weight:500;transition:color .2s;display:flex}.credits-press-link:first-of-type{border-top:1px solid var(--border)}.credits-press-link:hover{color:#e63030}.detail-related{border-top:1px solid var(--border);padding:clamp(60px,8vw,100px) clamp(24px,5vw,80px)}.detail-related-header{justify-content:space-between;align-items:center;margin-bottom:clamp(32px,4vw,52px);display:flex}.detail-related-label{letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-size:11px}.detail-related-all{color:var(--muted);align-items:center;gap:6px;font-size:12px;text-decoration:none;transition:color .2s;display:flex}.detail-related-all:hover{color:var(--ink)}.detail-related-grid{grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.5vw,32px);display:grid}.detail-related-card{color:inherit;flex-direction:column;gap:16px;text-decoration:none;display:flex}.detail-related-thumb{aspect-ratio:4/3;background:var(--border);border-radius:4px;overflow:hidden}.detail-related-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.25,.46,.45,.94);display:block}.detail-related-card:hover .detail-related-thumb img{transform:scale(1.04)}.detail-related-info{flex-direction:column;gap:4px;display:flex}.detail-related-num{letter-spacing:.12em;color:var(--muted);font-size:10px}.detail-related-title{color:var(--ink);font-size:clamp(14px,1.2vw,17px);font-weight:500;line-height:1.3;transition:opacity .2s}.detail-related-card:hover .detail-related-title{opacity:.65}.detail-related-tagline{color:var(--muted);font-size:12px}@media (max-width:700px){.detail-related-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:440px){.detail-related-grid{grid-template-columns:1fr}}.projects-archive{border-top:1px solid var(--border);padding:clamp(48px,6vw,80px) clamp(24px,5vw,80px)}.projects-archive-list{flex-direction:column;display:flex}.fs-row{color:inherit;border-bottom:1px solid var(--border);padding-bottom:0;text-decoration:none;display:block;overflow:hidden}.fs-row:first-child{border-top:1px solid var(--border)}.fs-strip{width:100%;height:clamp(180px,28vw,320px);position:relative;overflow:hidden}.fs-strip:after{content:"";z-index:1;pointer-events:none;background:0 0;transition:background .3s;position:absolute;inset:0}.fs-row:hover .fs-strip:after{background:#00000014}.fs-track{width:max-content;height:100%;animation:28s linear infinite fsScroll;display:flex}.fs-row:hover .fs-track{animation-play-state:paused}@keyframes fsScroll{0%{transform:translate(0)}to{transform:translate(-33.333%)}}.fs-media{flex:none;width:clamp(260px,30vw,420px);height:100%;margin-right:2px;overflow:hidden}.fs-media img{object-fit:cover;width:100%;height:100%;display:block}.fs-info{align-items:center;gap:24px;padding:20px 0;transition:gap .2s;display:flex}.fs-row:hover .fs-info{gap:28px}.fs-num{letter-spacing:.12em;color:var(--muted);flex-shrink:0;min-width:28px;font-size:11px}.fs-titles{flex:1;min-width:0}.fs-title{color:var(--ink);margin-bottom:3px;font-size:clamp(16px,1.8vw,22px);font-weight:500;line-height:1.2}.fs-tagline{color:var(--muted);font-size:13px}.fs-arrow{color:var(--muted);flex-shrink:0;transition:color .2s,transform .2s}.fs-row:hover .fs-arrow{color:var(--ink);transform:translate(2px,-2px)}@media (max-width:600px){.fs-strip{height:52vw}.fs-media{width:72vw}}.theme-toggle{background:var(--ink);width:34px;height:34px;color:var(--paper);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .25s,color .25s,transform .2s;display:flex}.notfound-page{text-align:center;justify-content:center;align-items:center;min-height:100dvh;display:flex;position:relative;overflow:hidden}.notfound-gif{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.notfound-page:after{content:"";z-index:0;background:linear-gradient(#0003 0%,#0000008c 50%,#000000bf 100%);position:absolute;inset:0}.notfound-inner{z-index:1;flex-direction:column;align-items:center;gap:1rem;margin-top:55vh;padding:2rem;display:flex;position:relative}.notfound-code{letter-spacing:.16em;text-transform:uppercase;color:#fff;opacity:.7;font-size:1.7rem;font-weight:600}.notfound-heading{letter-spacing:-.03em;color:#fff;text-shadow:0 2px 24px #00000059;margin:0;font-size:clamp(2.5rem,9vw,6rem);font-weight:700;line-height:1.05}.notfound-sub{color:#fff;margin:0;font-size:1rem;line-height:1.6}.notfound-btn{color:#000;background:#fff;border-radius:999px;align-items:center;gap:.5rem;margin-top:.5rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:600;text-decoration:none;transition:opacity .2s;display:inline-flex}.notfound-btn:hover{opacity:.8}#pt-overlay{z-index:10000;pointer-events:none;display:flex;position:fixed;inset:0;overflow:hidden}.pt-col{background:var(--ink);transform-origin:bottom;will-change:transform;flex:1;transform:scaleY(0)}#pt-overlay[data-state=covering] .pt-col{animation:.5s cubic-bezier(.76,0,.24,1) forwards ptCover;animation-delay:calc(var(--col) * 50ms)}#pt-overlay[data-state=uncovering] .pt-col{transform-origin:top;animation:.55s cubic-bezier(.76,0,.24,1) forwards ptUncover;animation-delay:calc(var(--col) * 50ms);transform:scaleY(1)}@keyframes ptCover{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes ptUncover{0%{transform:scaleY(1)}to{transform:scaleY(0)}}.theme-toggle:hover{transform:scale(1.1)}
.nl-backdrop{z-index:300;-webkit-backdrop-filter:blur(4px);background:#00000059;justify-content:center;align-items:center;padding:24px;animation:.35s both nlFadeIn;display:flex;position:fixed;inset:0}@keyframes nlFadeIn{0%{opacity:0}to{opacity:1}}.nl-modal{background:#fff;border:1px solid #00000014;width:100%;max-width:560px;padding:clamp(28px,5vw,48px);animation:.4s cubic-bezier(.25,.46,.45,.94) both nlSlideUp;position:relative}@keyframes nlSlideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.nl-topbar{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.nl-dash{background:#0003;width:28px;height:1px;display:block}.nl-close{letter-spacing:.2em;text-transform:uppercase;color:#00000059;cursor:pointer;background:0 0;border:none;align-items:center;gap:6px;font-family:inherit;font-size:11px;font-weight:500;transition:color .2s;display:flex}.nl-close:hover{color:#000}.nl-label{letter-spacing:.22em;text-transform:uppercase;color:#e63030;margin-bottom:20px;font-size:13px;font-weight:600}.nl-heading{color:#000;letter-spacing:-.02em;margin-bottom:20px;font-size:clamp(2rem,5vw,2.8rem);font-style:italic;font-weight:400;line-height:1.15}.nl-desc{color:#00000080;max-width:400px;margin-bottom:36px;font-size:1.12rem;line-height:1.7}.nl-form{margin-bottom:40px;font-size:1.12rem}.nl-input-row{border-bottom:1px solid #00000026;align-items:center;gap:12px;padding-bottom:12px;transition:border-color .2s;display:flex}.nl-input-row:focus-within{border-color:#000}.nl-input{color:#000;background:0 0;border:none;outline:none;flex:1;font-family:inherit;font-size:1rem}.nl-input::placeholder{color:#0000004d}.nl-submit{color:#0006;cursor:pointer;background:0 0;border:none;flex-shrink:0;align-items:center;padding:0;transition:color .2s,transform .2s;display:flex}.nl-submit:hover{color:#000;transform:translate(2px,-2px)}.nl-submit:disabled{opacity:.4;cursor:not-allowed}.nl-spinner{border:1.5px solid #00000026;border-top-color:#000;border-radius:50%;width:16px;height:16px;animation:.7s linear infinite nlSpin;display:block}@keyframes nlSpin{to{transform:rotate(360deg)}}.nl-error{color:#e63030;margin-top:10px;font-size:.8rem}.nl-footer{letter-spacing:.2em;text-transform:uppercase;color:#43484c;font-size:12px}.nl-success{text-align:center;padding:16px 0 40px}.nl-success-title{color:#000;margin-bottom:12px;font-size:1.5rem;font-weight:600}.nl-success-sub{color:#00000080;margin-bottom:28px;font-size:.9rem;line-height:1.6}.nl-close-btn{letter-spacing:.18em;text-transform:uppercase;color:#00000080;cursor:pointer;background:0 0;border:1px solid #00000026;padding:10px 24px;font-family:inherit;font-size:10px;transition:color .2s,border-color .2s}.nl-close-btn:hover{color:#000;border-color:#000}html.dark .nl-modal{background:#111;border-color:#ffffff14}html.dark .nl-dash{background:#ffffff26}html.dark .nl-close{color:#ffffff59}html.dark .nl-close:hover,html.dark .nl-heading{color:#fff}html.dark .nl-desc{color:#ffffff73}html.dark .nl-input-row{border-bottom-color:#ffffff1f}html.dark .nl-input-row:focus-within{border-color:#fff}html.dark .nl-input{color:#fff}html.dark .nl-input::placeholder{color:#ffffff40}html.dark .nl-submit{color:#fff6}html.dark .nl-submit:hover{color:#fff}html.dark .nl-spinner{border-color:#fff #ffffff26 #ffffff26}html.dark .nl-success-title{color:#fff}html.dark .nl-success-sub{color:#ffffff73}html.dark .nl-close-btn{color:#ffffff73;border-color:#ffffff26}html.dark .nl-close-btn:hover{color:#fff;border-color:#fff}
