@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/Geist-Variable-Latin.woff2)format("woff2")}@font-face{font-family:Gambarino;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Gambarino-Regular.woff2)format("woff2")}@font-face{font-family:Lay Grotesk;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/LayGrotesk-Regular.otf)format("opentype")}@font-face{font-family:Instrument Serif;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/InstrumentSerif-Regular.ttf)format("truetype")}@font-face{font-family:Trattatello;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/Trattatello.ttf)format("truetype")}@font-face{font-family:Geist Pixel Square;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/geist-pixel/GeistPixel-Square.woff2)format("woff2")}@font-face{font-family:Geist Pixel Circular;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/geist-pixel/GeistPixel-Circle.woff2)format("woff2")}@font-face{font-family:Geist Pixel Grid;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/GeistPixel-Grid.woff2)format("woff2")}@font-face{font-family:Geist Pixel Line;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/geist-pixel/GeistPixel-Line.woff2)format("woff2")}*{box-sizing:border-box}:root{--bg:#fdfcf8;--glyph-blue:#1943f5;--intro-highlight-blue:#2f56ff;--intro-scroll-length:230svh;--ink:#0a0a0a;--muted-ink:#949494;--nav-selection:#ededed}html{background:var(--bg);overscroll-behavior:none;height:100%}body{background:var(--bg);min-height:100vh;color:var(--ink);margin:0;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;overflow-x:clip}body.is-startup-loading{overflow:hidden}body.is-startup-loading .site-header{visibility:hidden;opacity:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}.site-header{z-index:7000;pointer-events:none;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;min-height:76px;padding:14px clamp(18px,3vw,48px);display:grid;position:fixed;top:0;left:0}.site-logo,.section-nav,.contact-link{pointer-events:auto}.site-logo{cursor:pointer;transform-origin:50%;background:0 0;border:0;border-radius:0;justify-self:start;place-items:center;width:42px;height:42px;padding:0;display:grid;overflow:visible}.site-logo img{object-fit:contain;mix-blend-mode:multiply;-webkit-user-select:none;user-select:none;pointer-events:none;width:38px;height:38px;display:block}.section-nav{align-items:center;gap:9px;height:36px;padding:0;display:flex;position:relative}.section-nav__selection{z-index:0;background:var(--nav-selection);pointer-events:none;transform-origin:50%;will-change:transform, width;border-radius:6px;width:0;height:28px;position:absolute;top:4px;left:0}.section-nav__button{z-index:1;color:#969696;letter-spacing:0;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;min-width:0;height:28px;padding:0 10px;font-size:13px;font-weight:500;line-height:1;transition:color .22s;display:grid;position:relative}.section-nav__button:hover{color:#6f6f6f}.section-nav__button.is-active{color:#3f3f3f}.section-nav__button:focus-visible,.site-logo:focus-visible,.contact-link:focus-visible{outline:2px solid var(--glyph-blue);outline-offset:3px}.contact-link{color:#111;letter-spacing:0;justify-self:end;padding:8px 0;font-size:13px;font-weight:400;line-height:1;text-decoration:none;position:relative}.contact-link:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .26s;position:absolute;bottom:3px;left:0;right:0;transform:scaleX(0)}.contact-link:hover:after,.contact-link:focus-visible:after{transform-origin:0;transform:scaleX(1)}html.is-startup-transitioning,html.is-startup-transitioning body,html.is-camera-intro-locked,html.is-camera-intro-locked body,html.is-intro-reveal-locked,html.is-intro-reveal-locked body,html.is-case-study-open,html.is-case-study-open body,html.is-case-study-transitioning,html.is-case-study-transitioning body,html.is-page-transitioning,html.is-page-transitioning body{overscroll-behavior:none;overflow:hidden}main{background:var(--bg);min-height:100vh}.empty-route-page{background:var(--bg);min-height:100vh;display:none}body[data-current-page=work] .empty-route-page,body[data-current-page=work] .about-page,body[data-current-page=about] .experience,body[data-current-page=about] .intro-page,body[data-current-page=about] .intro-owl-flight-layer,body[data-current-page=about] .work-page,body[data-current-page=about] .capability-cards,body[data-current-page=about] .project-page,body[data-current-page=about] .work-owl-scene,body[data-current-page=about] .work-owl-flight-layer,body[data-current-page=experience] .experience,body[data-current-page=experience] .intro-page,body[data-current-page=experience] .intro-owl-flight-layer,body[data-current-page=experience] .about-page,body[data-current-page=experience] .work-page,body[data-current-page=experience] .capability-cards,body[data-current-page=experience] .project-page,body[data-current-page=experience] .work-owl-scene,body[data-current-page=experience] .work-owl-flight-layer{display:none!important}body[data-current-page=experience] .empty-route-page{display:block}.playground-page{padding:clamp(112px,14vh,156px) clamp(22px,4vw,64px) 96px}.playground-page__inner{width:min(100%,1480px);margin:0 auto}.playground-grid{grid-template-columns:minmax(0,1fr);gap:clamp(76px,10vw,144px);display:grid}.playground-item{width:min(100%,726px);margin:0 auto}.playground-item video{background:#f2f2f2;border-radius:4px;width:100%;height:auto;display:block}@media (width<=760px){.playground-page{padding:108px 16px 64px}.playground-grid{gap:64px}}.experience{z-index:2;background:var(--bg);min-height:320vh;position:relative}.stage{z-index:2;background:var(--bg);width:100vw;min-width:100vw;height:100vh;position:relative;overflow:hidden}.experience>.pin-spacer,.experience>.pin-spacer>.stage{width:100vw!important;min-width:100vw!important}.stage.is-camera-handoff{z-index:10;will-change:transform;width:100vw!important;height:100vh!important;position:fixed!important;inset:0!important;transform:none!important}.scene{background:var(--bg);width:100%;height:100%;display:block;position:absolute;inset:0}.hero-intro{z-index:3;width:100%;color:var(--ink);visibility:hidden;opacity:0;pointer-events:none;text-align:center;-webkit-user-select:none;user-select:none;justify-items:center;padding:0 clamp(28px,8vw,120px);display:grid;position:absolute;top:clamp(132px,25vh,230px);left:0;right:0}.hero-intro__statement{--typer-fg:#202020;--typer-bg:var(--bg);--typer-accent:var(--glyph-blue);--typer-accent-ink:#fff;--typer-radius:5px;color:#202020b0;font-synthesis:none;letter-spacing:0;text-align:center;text-wrap:balance;max-width:min(640px,100vw - 56px);margin:0;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:21px;font-weight:400;line-height:1.38}.hero-intro__name{color:#202020;font-weight:400}.hero-intro__dash{margin:0 .22em;display:inline-block}.hero-typer-word{white-space:nowrap;display:inline-block}.hero-intro__statement .hero-typer-char{box-sizing:content-box;color:inherit;background:0 0;transition:none;display:inline-block}.hero-intro__statement .hero-typer-char.charInit{color:#0000}.hero-intro__statement .hero-typer-char.charFill{color:var(--typer-bg);background:var(--typer-fg);border-radius:var(--typer-radius)}.hero-intro__statement .hero-typer-char.charFill:has(+.charFill){border-top-right-radius:0;border-bottom-right-radius:0}.hero-intro__statement .hero-typer-char.charFill+.charFill{border-radius:0}.hero-intro__statement .hero-typer-char.charFill+.charFill:last-child{border-radius:0 var(--typer-radius) var(--typer-radius) 0}.hero-intro__statement .hero-typer-char.charFill+.charFill:has(+:not(.charFill)){border-radius:0 var(--typer-radius) var(--typer-radius) 0}.hero-intro__statement .hero-typer-char.charInverse{color:var(--typer-bg);background:var(--typer-fg)}.hero-intro__statement .hero-typer-char.charAccent{color:var(--typer-accent);background:0 0}.hero-intro__statement .hero-typer-char.charAccentInverse{color:var(--typer-accent-ink);background:var(--typer-accent);border-radius:var(--typer-radius)}.hero-intro__statement .hero-typer-char.charAccentInverse:has(+.charAccentInverse){border-top-right-radius:0;border-bottom-right-radius:0}.hero-intro__statement .hero-typer-char.charAccentInverse+.charAccentInverse{border-radius:0}.hero-intro__statement .hero-typer-char.charAccentInverse+.charAccentInverse:last-child{border-radius:0 var(--typer-radius) var(--typer-radius) 0}.hero-intro__statement .hero-typer-char.charAccentInverse+.charAccentInverse:has(+:not(.charAccentInverse)){border-radius:0 var(--typer-radius) var(--typer-radius) 0}.hero-intro__statement .hero-typer-char.charAccentFill{color:var(--typer-accent);background:var(--typer-accent)}.hero-intro__statement .hero-typer-char.charBorder{color:var(--typer-fg);position:relative}.hero-intro__statement .hero-typer-char.charBorder:after{border:1px solid var(--typer-accent);border-radius:var(--typer-radius);content:"";display:inline-block;position:absolute;inset:0}.hero-intro__statement .hero-typer-char.charBorder:has(+.charBorder):after{border-right:1px solid #0000;border-top-right-radius:0;border-bottom-right-radius:0}.hero-intro__statement .hero-typer-char.charBorder+.charBorder:after{border-left:1px solid #0000;border-right:1px solid #0000;border-radius:0}.hero-intro__statement .hero-typer-char.charBorder+.charBorder:last-child:after{border-right:1px solid var(--typer-accent);border-radius:0 var(--typer-radius) var(--typer-radius) 0;border-left:1px solid #0000}.hero-intro__statement .hero-typer-char.charBorder+.charBorder:has(+:not(.charBorder)):after{border-right:1px solid var(--typer-accent);border-radius:0 var(--typer-radius) var(--typer-radius) 0;border-left:1px solid #0000}.hero-intro-line{will-change:transform;display:block}.hero-intro-char{will-change:transform;display:inline-block}.hero-intro-line-mask{display:block;overflow:clip}.stage.is-camera-handoff .scene{visibility:visible!important}.intro-page{min-height:var(--intro-scroll-length);background:var(--bg);position:relative;overflow:visible}.intro-frame{z-index:1;visibility:hidden;opacity:0;background:var(--bg);font-synthesis:none;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;width:100vw;height:100svh;margin:0 auto;position:fixed;top:0;left:0;overflow:hidden}.intro-composition{width:100vw;height:100%;position:relative}.intro-card{background:var(--bg);width:100%;height:100%;min-height:100svh;position:relative;overflow:hidden}.intro-copy{--typer-fg:#050505;--typer-bg:var(--bg);--typer-accent:var(--glyph-blue);--typer-accent-ink:#fff;--typer-radius:5px;--intro-highlight-radius:5px;color:#050505;letter-spacing:0;text-wrap:pretty;-webkit-user-select:none;user-select:none;cursor:default;width:min(640px,100% - 48px);margin:0;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:clamp(18px,1.92vw,29px);font-style:normal;font-weight:400;line-height:1.06;position:absolute;top:50%;left:clamp(28px,6vw,96px);transform:translateY(-50%)}.about-page{background:var(--bg);width:100vw;height:100svh;min-height:100svh;position:relative;overflow:hidden}.about-quote-stage{z-index:2;text-align:center;pointer-events:none;place-items:center;width:min(760px,100vw - clamp(44px,12vw,180px));min-height:100svh;margin:0 auto;display:grid;position:absolute;inset:0;overflow:hidden}.about-quote{color:#171717;letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;text-wrap:pretty;justify-items:center;gap:.08em;max-width:100%;margin:0;font-family:Gambarino,Georgia,Times New Roman,serif;font-size:clamp(18px,2.25vw,34px);font-weight:400;line-height:1.12;display:grid;position:relative}.about-quote-line{display:block}.about-quote-word.footer-glitch-word{vertical-align:baseline;display:inline-block;position:relative}.about-quote-word.footer-glitch-word:before{width:clamp(7px,.55vw,11px);height:clamp(7px,.55vw,11px)}.about-quote .footer-glitch-word__copy{margin:-.05em -.01em -.08em;padding:.05em .01em .08em;display:inline-block}html.is-about-story-ready .about-page{height:auto;min-height:100svh;overflow:visible}.about-story{background:var(--bg);width:100%;min-height:100svh;padding:clamp(116px,15vh,156px) 0 clamp(92px,12vh,132px);display:none}html.is-about-story-ready .about-story{display:block}.about-story__inner{justify-items:center;width:min(620px,100vw - 64px);margin:0 auto;display:grid}.about-story [data-about-story-item]{opacity:0;visibility:hidden;will-change:transform, opacity;transition:opacity .42s,transform .52s cubic-bezier(.16,1,.3,1),visibility 0s linear .52s;transform:translateY(18px)}.about-story [data-about-story-item].is-visible{opacity:1;visibility:visible;transition-delay:0s;transform:translate(0,0)}.about-story__photo{background:#111;margin:0;display:block;overflow:hidden}.about-story__photo img{object-fit:cover;width:100%;height:100%;display:block}.about-story__photo--avatar{aspect-ratio:.78;border-radius:0;justify-self:start;width:clamp(76px,6.8vw,116px)}.about-story__text{color:#252525;letter-spacing:0;text-align:left;text-wrap:pretty;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;width:100%;margin:clamp(34px,5.4vh,58px) 0 0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.6}.about-story__portrait-pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:clamp(30px,5.8vw,74px);width:100%;margin-top:clamp(46px,7.5vh,78px);display:grid}.about-story__photo--portrait{aspect-ratio:.78;width:100%}.about-story__photo--landscape{aspect-ratio:1.72;width:100%;margin-top:clamp(48px,7.2vh,84px)}.about-story__photo--book,.about-story__photo--four-three{aspect-ratio:4/3;width:100%;margin-top:clamp(48px,7.2vh,84px)}.about-story__socials{letter-spacing:0;flex-wrap:wrap;justify-content:center;gap:12px 18px;width:min(100%,440px);margin-top:clamp(42px,6.4vh,72px);margin-bottom:24px;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:13px;font-weight:400;line-height:1;display:flex}.about-story__socials a{color:#181818;place-items:center;min-height:28px;text-decoration:none;display:inline-grid;position:relative}.about-story__socials a:focus-visible{outline:2px solid var(--glyph-blue);outline-offset:4px}.about-story__socials a:after,.site-footer__socials a:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .26s;position:absolute;bottom:3px;left:0;right:0;transform:scaleX(0)}.about-story__socials a:hover:after,.about-story__socials a:focus-visible:after,.site-footer__socials a:hover:after,.site-footer__socials a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.intro-word{--intro-highlight-alpha:0;--intro-highlight-scale-x:.92;--intro-highlight-scale-y:.82;--intro-punctuation-alpha:1;opacity:0;visibility:hidden;color:#050505;white-space:nowrap;isolation:isolate;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;will-change:transform, opacity;margin:0 .012em .08em;padding:.1em;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-weight:400;line-height:1;display:inline-block;position:relative;transform:translate(0,0)}.intro-word:before{z-index:-1;border-radius:var(--intro-highlight-radius);opacity:var(--intro-highlight-alpha);transform:scale3d(var(--intro-highlight-scale-x), var(--intro-highlight-scale-y), 1);transform-origin:0;content:"";will-change:transform, opacity;background:#f4f4f1d1;position:absolute;inset:0}.intro-word.is-intro-highlight{color:#fff;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-weight:400}.intro-word.has-intro-punctuation{margin-right:.2em}.intro-word.is-intro-highlight:before{border-radius:var(--intro-highlight-radius);background:var(--intro-highlight-blue)}.intro-punctuation{color:currentColor;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-style:normal;font-weight:inherit;opacity:var(--intro-punctuation-alpha);position:absolute;top:.1em;left:calc(100% + .02em)}.intro-word.is-intro-highlight .intro-punctuation{color:#050505}.intro-word .intro-typer-char{box-sizing:content-box;color:inherit;background:0 0;transition:none;display:inline-block}.intro-word .intro-typer-char.charInit{color:#0000}.intro-word .intro-typer-char.charFill{color:var(--typer-bg);background:var(--typer-fg);border-radius:var(--typer-radius)}.intro-word .intro-typer-char.charFill:has(+.charFill){border-top-right-radius:0;border-bottom-right-radius:0}.intro-word .intro-typer-char.charFill+.charFill{border-radius:0}.intro-word .intro-typer-char.charFill+.charFill:last-child{border-radius:0 var(--typer-radius) var(--typer-radius) 0}.intro-word .intro-typer-char.charFill+.charFill:has(+:not(.charFill)){border-radius:0 var(--typer-radius) var(--typer-radius) 0}.intro-word .intro-typer-char.charInverse{color:var(--typer-bg);background:var(--typer-fg)}.intro-word .intro-typer-char.charAccent{color:var(--typer-accent);background:0 0}.intro-word .intro-typer-char.charAccentInverse{color:var(--typer-accent-ink);background:var(--typer-accent);border-radius:var(--typer-radius)}.intro-word .intro-typer-char.charAccentInverse:has(+.charAccentInverse){border-top-right-radius:0;border-bottom-right-radius:0}.intro-word .intro-typer-char.charAccentInverse+.charAccentInverse{border-radius:0}.intro-word .intro-typer-char.charAccentInverse+.charAccentInverse:last-child{border-radius:0 var(--typer-radius) var(--typer-radius) 0}.intro-word .intro-typer-char.charAccentInverse+.charAccentInverse:has(+:not(.charAccentInverse)){border-radius:0 var(--typer-radius) var(--typer-radius) 0}.intro-word .intro-typer-char.charAccentFill{color:var(--typer-accent);background:var(--typer-accent)}.intro-word .intro-typer-char.charBorder{color:var(--typer-fg);position:relative}.intro-word .intro-typer-char.charBorder:after{border:1px solid var(--typer-accent);border-radius:var(--typer-radius);content:"";display:inline-block;position:absolute;inset:0}.intro-word .intro-typer-char.charBorder:has(+.charBorder):after{border-right:1px solid #0000;border-top-right-radius:0;border-bottom-right-radius:0}.intro-word .intro-typer-char.charBorder+.charBorder:after{border-left:1px solid #0000;border-right:1px solid #0000;border-radius:0}.intro-word .intro-typer-char.charBorder+.charBorder:last-child:after{border-right:1px solid var(--typer-accent);border-radius:0 var(--typer-radius) var(--typer-radius) 0;border-left:1px solid #0000}.intro-word .intro-typer-char.charBorder+.charBorder:has(+:not(.charBorder)):after{border-right:1px solid var(--typer-accent);border-radius:0 var(--typer-radius) var(--typer-radius) 0;border-left:1px solid #0000}.intro-owl-flight-layer{z-index:2;opacity:0;pointer-events:none;will-change:opacity, transform;position:fixed;inset:0;overflow:visible;transform:translate(0,0)}.intro-owl{--intro-owl-x:48px;--intro-owl-scale-x:1;opacity:0;visibility:hidden;width:min(56vw,900px);height:min(88vh,900px);transform:translate3d(var(--intro-owl-x), -50%, 0) scaleX(var(--intro-owl-scale-x));transform-origin:50%;pointer-events:none;will-change:opacity, transform;position:absolute;top:50%;right:clamp(22px,4.2vw,76px)}.intro-owl-cursor-label{z-index:6500;color:#050505;letter-spacing:0;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;-webkit-user-select:none;user-select:none;will-change:transform, opacity;background:#ecece8eb;border-radius:2px;justify-content:center;align-items:center;min-height:23px;padding:.045em .14em .075em;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:13px;font-weight:400;line-height:1;display:inline-flex;position:fixed;top:0;left:0;transform:translate(0,0)}.intro-owl-cursor-label__char{width:auto;min-width:0;text-align:initial;display:inline-block}.intro-owl-cursor-label__char.is-space{width:.34em;min-width:.34em}.intro-owl.is-work-owl{width:clamp(360px,38vw,680px);height:clamp(360px,62vh,680px);transform:translate3d(calc(-50% + var(--intro-owl-x)), -50%, 0) scaleX(var(--intro-owl-scale-x));left:50%;right:auto}.work-page{z-index:1;background:var(--bg);min-height:100vh;padding:100svh 2rem 0;position:relative;overflow:clip visible}.work-wave{width:100%;min-height:100svh;position:relative}.work-wave-caption{--work-wave-caption-inset:clamp(20px, calc(3vw + 2px), 50px);z-index:40;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .16s,visibility .16s step-end;position:fixed;inset:0}.work-wave-caption.is-visible{opacity:1;visibility:visible;transition:opacity .16s,visibility step-start}.work-wave-caption__name{right:max(var(--work-wave-caption-inset), env(safe-area-inset-right));bottom:max(var(--work-wave-caption-inset), env(safe-area-inset-bottom));color:var(--ink);letter-spacing:0;text-transform:lowercase;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:19px;font-weight:400;line-height:1;position:absolute}.work-wave-images{flex-direction:column;align-items:flex-start;display:flex}.work-wave-image{position:relative;overflow:visible}.work-wave-image__frame{transform-origin:50%;will-change:auto;position:absolute;inset:0;overflow:hidden}.work-wave-image__frame img{object-fit:cover;transform-origin:50%;will-change:auto;width:100%;height:100%;display:block}.work-wave-image__frame.is-render-active{will-change:transform, opacity}.work-wave-image__frame.is-render-active img{will-change:transform}.capability-cards{z-index:2;background:0 0;height:500svh;position:relative}.capability-cards__stage{isolation:isolate;place-items:center;width:100%;height:100svh;display:grid;position:sticky;top:0;overflow:hidden}.capability-cards__glyph-burst{z-index:0;visibility:hidden;opacity:0;pointer-events:none;contain:strict;will-change:opacity;width:100%;height:100%;display:block;position:absolute;inset:0}.capability-cards__deck{z-index:1;justify-content:center;align-items:center;gap:clamp(20px,3.2vw,52px);width:min(1120px,76vw);display:flex;position:relative}.capability-card{--capability-card-radius:clamp(10px, .85vw, 14px);--capability-card-padding:clamp(9px, .8vw, 12px);--capability-card-section-gap:clamp(10px, .9vw, 14px);--capability-card-inner-radius:calc(var(--capability-card-radius) - var(--capability-card-padding));z-index:1;aspect-ratio:5/7;opacity:1;perspective:1200px;transform-origin:50%;will-change:auto;flex:1 1 0;max-width:300px;position:relative}body.capability-cards-active .capability-card{will-change:transform, opacity}.capability-card:first-child{z-index:3}.capability-card:nth-child(2){z-index:2}.capability-card__hover-label{z-index:7;color:#0a0a0a;letter-spacing:-.03em;white-space:nowrap;pointer-events:none;opacity:0;visibility:hidden;transform-origin:50%;will-change:opacity;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:clamp(20px,1.85vw,30px);font-weight:500;line-height:1;top:clamp(-58px,-4vw,-42px);left:50%;transform:translate(-50%)}.capability-card__float{will-change:auto;animation:2.2s ease-in-out infinite paused capability-card-float;position:absolute;inset:0}body.capability-cards-active .capability-card__float{will-change:transform;animation-play-state:running}.capability-card:nth-child(2) .capability-card__float{animation-delay:.24s}.capability-card:nth-child(3) .capability-card__float{animation-delay:.48s}.capability-card__magnet{transform-origin:50%;will-change:auto;position:absolute;inset:0}body.capability-cards-active .capability-card__magnet{will-change:transform}.capability-card__hover-target{z-index:6;border-radius:var(--capability-card-radius);cursor:default;position:absolute;inset:0}@keyframes capability-card-float{0%,to{transform:translate(0,0)}50%{transform:translateY(-5%)}}.capability-card__inner{width:100%;height:100%;-webkit-transform-style:preserve-3d;transform-style:preserve-3d;will-change:auto;position:relative}body.capability-cards-active .capability-card__inner{will-change:transform}.capability-card__face{border-radius:var(--capability-card-radius);backface-visibility:hidden;border:1px solid #0a0a0a14;flex-direction:column;justify-content:space-between;padding:clamp(14px,1.35vw,20px);display:flex;position:absolute;inset:0;overflow:hidden}.capability-card__face--front{color:#071c58;padding:0;transform:translateZ(.1px)}.capability-card__face--front img{object-fit:cover;width:100%;height:100%;display:block}.capability-card__face--back{gap:var(--capability-card-section-gap);padding:var(--capability-card-padding);color:#071c58;background:#fff;border-color:#071c5812;grid-template-rows:minmax(0,58%) minmax(0,1fr);display:grid;transform:rotateY(180deg)translateZ(.1px);box-shadow:0 22px 34px -30px #071c583d,0 8px 16px -16px #071c5829,inset 0 -34px 40px -60px #071c582e}.capability-card__cover{border-radius:var(--capability-card-inner-radius);background:#fff;place-items:center;width:100%;display:grid;position:relative;overflow:hidden}.capability-card__cover:after{display:none}.capability-card__cover img{z-index:1;border-radius:inherit;object-fit:contain;object-position:center center;mix-blend-mode:normal;filter:none;width:100%;height:100%;display:block;position:absolute;inset:0}.capability-card__content{flex-direction:column;justify-content:center;min-height:0;padding:clamp(13px,1.35vw,20px) clamp(15px,1.45vw,22px) clamp(16px,1.55vw,24px);display:flex;position:relative}.capability-card__keyword-field{isolation:isolate;flex-wrap:wrap;place-content:center flex-start;align-items:center;gap:clamp(7px,.72vw,11px) clamp(8px,.82vw,13px);width:100%;height:100%;margin:0;padding:0;display:flex;position:relative}.capability-card__keyword{--capability-highlight-alpha:0;--capability-highlight-scale-x:.76;--capability-highlight-scale-y:.68;z-index:1;color:#050505;letter-spacing:0;text-transform:lowercase;white-space:nowrap;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;padding:.11em .26em .15em;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:clamp(14px,1.18vw,18px);font-weight:400;line-height:1;transition:color .18s;display:inline-block;position:relative}.capability-card__keyword:before{z-index:0;opacity:var(--capability-highlight-alpha);transform:scale3d(var(--capability-highlight-scale-x), var(--capability-highlight-scale-y), 1);transform-origin:0;content:"";will-change:auto;background:#ecece8eb;border-radius:2px;transition:opacity .18s;position:absolute;inset:0}body.capability-cards-active .capability-card__keyword:before{will-change:transform, opacity}.capability-card__keyword-text{z-index:1;display:inline-block;position:relative}.capability-card__blue-runner{z-index:2;background:var(--intro-highlight-blue);opacity:0;pointer-events:none;transform-origin:0 0;will-change:transform, opacity, width, height;border-radius:2px;width:96px;height:clamp(20px,1.7vw,26px);position:absolute;top:0;left:0;overflow:hidden;transform:translate(0,0)}.capability-card__blue-runner[data-runner-index="1"]{background:var(--glyph-blue)}.capability-card__blue-copy{color:#fff;pointer-events:none;transform-origin:0 0;will-change:transform;flex-wrap:wrap;place-content:center flex-start;align-items:center;gap:clamp(7px,.72vw,11px) clamp(8px,.82vw,13px);display:flex;position:absolute;top:0;left:0;transform:translate(0,0)}.capability-card__blue-copy .capability-card__keyword{color:#fff}.capability-card__blue-copy .capability-card__keyword:before{display:none}.capability-owl-peek{z-index:6500;pointer-events:none;visibility:hidden;opacity:0;transform-origin:50% 100%;will-change:transform, opacity;width:clamp(170px,13.5vw,270px);transition:none;position:fixed;bottom:0;left:50%;transform:translate(-50%,112%)}.capability-owl-peek img{-webkit-user-select:none;user-select:none;width:100%;height:auto;display:block}.work-owl-scene.site-footer{--footer-owl-size:clamp(300px, 30vw, 490px);--footer-word-gap:clamp(24px, 3.2vw, 46px);--footer-edge-padding:clamp(18px, 4vw, 64px);z-index:1;background:var(--bg);width:100vw;min-height:190svh;color:var(--ink);pointer-events:auto;padding:0;position:relative;overflow:visible}.site-footer__stage{isolation:isolate;place-items:center;width:100%;height:100svh;min-height:620px;display:grid;position:sticky;top:0;overflow:hidden}.site-footer__glyph-burst{z-index:1;visibility:hidden;opacity:0;contain:strict;pointer-events:none;will-change:auto;width:100%;height:100%;display:block;position:absolute;inset:0}.site-footer__title{z-index:3;color:#050505;font-synthesis:none;letter-spacing:0;pointer-events:none;text-rendering:geometricprecision;-webkit-font-smoothing:antialiased;margin:0;font-family:Geist Pixel Square,Geist Pixel Grid,Geist Pixel Line,SF Mono,Menlo,monospace;line-height:.82;position:absolute;inset:0}.site-footer__word{width:max-content;max-width:calc(100vw - var(--footer-edge-padding) * 2);color:currentColor;white-space:nowrap;transform-origin:50%;-webkit-user-select:none;user-select:none;will-change:auto;font-size:clamp(2.15rem,4.6vw,4.4rem);font-weight:500;line-height:.82;display:inline-block;position:absolute;left:50%;transform:translate(-50%,-50%)}.site-footer__word--design{top:calc(50% - var(--footer-word-gap))}.site-footer__word--engineer{top:calc(50% + var(--footer-word-gap))}.footer-glitch-word{--copy-opacity:0;--dot-opacity:0;--dot-scale:.78;--origin-x:0%;--dot-x:0%;--step-scale:.18;--shift:0px;--pixel-jitter:0px;--pixel-contrast:0px;--clip-left:0%;--clip-right:100%;position:absolute}.footer-glitch-word.is-pixelating{filter:drop-shadow(var(--pixel-jitter) 0 0 currentColor) drop-shadow(calc(var(--pixel-jitter) * -1) 0 0 currentColor)}.footer-glitch-word[data-footer-origin=right]{--origin-x:100%;--dot-x:100%}.footer-glitch-word:before{z-index:2;left:var(--dot-x);width:clamp(9px,.74vw,16px);height:clamp(9px,.74vw,16px);opacity:var(--dot-opacity);content:"";pointer-events:none;transform:translate3d(-50%, -50%, 0) scale(var(--dot-scale));transform-origin:50%;will-change:opacity, transform;background:currentColor;border-radius:999px;position:absolute;top:50%}.footer-glitch-word__copy{z-index:1;opacity:var(--copy-opacity);clip-path:inset(0 var(--clip-right) 0 var(--clip-left));transform:translate3d(var(--shift), 0, 0) scale(var(--step-scale));transform-origin:var(--origin-x) 50%;will-change:clip-path, opacity, transform;margin:-.08em -.02em -.15em;padding:.08em .02em .15em;display:block;position:relative}.footer-glitch-word.is-pixelating .footer-glitch-word__copy{text-shadow:var(--pixel-contrast) 0 0 currentColor, calc(var(--pixel-contrast) * -1) 0 0 currentColor}.site-footer__mono-glow{z-index:1;opacity:0;visibility:hidden;pointer-events:none;transform-origin:50% 100%;will-change:auto;height:100%;position:absolute;bottom:-9svh;left:-2vw;right:-2vw;transform:scaleY(0)}.site-footer__mono-glow svg{width:100%;height:100%;display:block}.site-footer__mono-glow-tile{transform-origin:50% 100%;display:block;position:absolute;top:0;bottom:0;overflow:hidden;transform:scaleY(0)}.site-footer__mono-glow-tile img{-webkit-user-select:none;user-select:none;pointer-events:none;max-width:none;height:100%;display:block;position:absolute;top:0}.work-owl-flight-layer{--work-owl-size:var(--footer-owl-size);z-index:2;opacity:0;visibility:hidden;pointer-events:none;transform-origin:50%;will-change:auto;width:100vw;height:100%;position:absolute;inset:0;transform:translate(-100vw)}.work-owl-flight-layer:not([data-work-owl-visible=true]){opacity:0!important;visibility:hidden!important}.work-owl-canvas{z-index:2;width:var(--work-owl-size);aspect-ratio:167/157;transform-origin:50%;-webkit-user-select:none;user-select:none;will-change:auto;display:block;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)scaleX(-1)}.site-footer__copy-button{--footer-copy-y:24px;--footer-copy-scale:.92;--footer-copy-magnet-x:0px;--footer-copy-magnet-y:0px;z-index:4;left:50%;top:calc(50% + var(--footer-owl-size) * .5);background:var(--intro-highlight-blue);min-width:0;min-height:0;box-shadow:none;color:#fff;letter-spacing:0;text-transform:lowercase;opacity:0;visibility:hidden;cursor:pointer;transform:translate3d(calc(-50% + var(--footer-copy-magnet-x)), calc(var(--footer-copy-y) + var(--footer-copy-magnet-y)), 0) scale(var(--footer-copy-scale));transform-origin:50%;will-change:auto;border:0;border-radius:2px;place-items:center;padding:4px 7px 5px;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:13px;font-weight:400;line-height:1;transition:background .18s,color .18s;display:inline-grid;position:absolute}.site-footer__copy-button:hover,.site-footer__copy-button:focus-visible{background:var(--glyph-blue);color:#fff}.site-footer__copy-button:focus-visible,.site-footer__socials a:focus-visible{outline:2px solid var(--glyph-blue);outline-offset:4px}.site-footer__socials{z-index:4;right:var(--footer-edge-padding);bottom:max(clamp(20px, 5svh, 52px), env(safe-area-inset-bottom));left:var(--footer-edge-padding);opacity:0;visibility:hidden;will-change:auto;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px clamp(14px,2.4vw,32px);display:flex;position:absolute;transform:translateY(16px)}.site-footer__socials a{color:#ffffffeb;letter-spacing:0;text-transform:lowercase;opacity:0;visibility:hidden;text-shadow:0 1px 12px #ffffff7a;will-change:auto;place-items:center;min-height:28px;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:13px;font-weight:700;line-height:1;text-decoration:none;transition:color .18s;display:inline-grid;position:relative;transform:translateY(12px)}.site-footer .footer-glitch-word:before,.site-footer .footer-glitch-word__copy{will-change:auto}.work-owl-scene[data-footer-interaction-state=playing] .site-footer__glyph-burst{will-change:opacity}.work-owl-scene[data-footer-interaction-state=playing] .site-footer__word,.work-owl-scene[data-footer-interaction-state=playing] .footer-glitch-word:before,.work-owl-scene[data-footer-interaction-state=playing] .site-footer__mono-glow,.work-owl-scene[data-footer-interaction-state=playing] .work-owl-flight-layer,.work-owl-scene[data-footer-interaction-state=playing] .site-footer__copy-button,.work-owl-scene[data-footer-interaction-state=playing] .site-footer__socials,.work-owl-scene[data-footer-interaction-state=playing] .site-footer__socials a{will-change:opacity, transform}.work-owl-scene[data-footer-interaction-state=playing] .footer-glitch-word__copy{will-change:clip-path, opacity, transform}.work-owl-scene[data-footer-interaction-state=playing] .work-owl-canvas{will-change:transform}.site-footer__socials a:hover,.site-footer__socials a:focus-visible{color:#fff}.project-page{background:var(--bg);position:relative;overflow:hidden}.project-showcase{background:var(--bg);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:clamp(88px,10vh,118px) clamp(22px,4vw,64px) clamp(54px,7vh,82px);display:flex;position:relative}.project-page__glyph-burst{z-index:2;visibility:hidden;opacity:0;contain:strict;pointer-events:none;will-change:opacity;width:100vw;height:100svh;display:block;position:fixed;inset:0}.project-showcase__media{z-index:3;place-items:center;width:min(42vw,440px);display:grid;position:relative}.project-file{--project-folder-radius:clamp(16px, 1.75vw, 28px);aspect-ratio:1;cursor:pointer;perspective:1000px;background:0 0;border:0;place-items:center;width:min(42vw,420px);padding:0;display:grid;position:relative}.project-file:focus-visible{outline:2px solid var(--glyph-blue);outline-offset:12px}.project-folder-icon{width:100%;height:100%;transform-style:preserve-3d;will-change:transform;transition:transform .32s;display:block;position:relative;transform:translate(0,0)}.project-file:hover .project-folder-icon,.project-file:focus-visible .project-folder-icon{transform:translateY(-4px)rotateX(1.2deg)}.project-file__folder-back,.project-file__folder-front,.project-file__paper,.project-file__skill-tags{pointer-events:none;display:block;position:absolute}.project-file__folder-back{z-index:1;filter:drop-shadow(0 18px 42px #1943f524);width:93.7%;height:76%;bottom:18%;left:3.15%;overflow:visible}.project-file__paper{z-index:2;background:var(--bg);transform-origin:50% 100%;will-change:transform;border:1px solid #0a0a0a29;border-radius:clamp(6px,.7vw,11px);width:80%;height:50%;transition:transform .42s cubic-bezier(.22,1,.36,1);top:19%;left:10%;overflow:hidden;transform:translateY(10%);box-shadow:0 10px 24px #0a0a0a14,0 2px 7px #0a0a0a0f,inset 0 1px #ffffffb8}.project-file__skill-tags{z-index:2;inset:0;overflow:visible}.project-file__skill-tag{color:#171717;letter-spacing:0;text-align:center;white-space:nowrap;opacity:0;visibility:hidden;transform-origin:50%;backface-visibility:hidden;will-change:transform, opacity;background:linear-gradient(#ffffffeb,#f7f8fad1);border:1px solid #1943f557;border-radius:999px;place-items:center;min-width:clamp(40px,4.6vw,72px);height:clamp(24px,2.5vw,32px);padding:0 clamp(10px,1.1vw,14px);font-family:Lay Grotesk,Inter,system-ui,sans-serif;font-size:clamp(10px,1vw,12px);font-weight:700;line-height:1;display:inline-grid;position:absolute;top:86%;left:50%;transform:translate(-50%,-50%)scale(.72);box-shadow:0 9px 18px #0a0a0a12,0 2px 6px #0a0a0a0d,inset 0 1px #fffffff0}.project-file__folder-front{z-index:3;border-radius:var(--project-folder-radius);-webkit-backdrop-filter:blur(11px)saturate(1.18);backdrop-filter:blur(11px)saturate(1.18);background:linear-gradient(#7e98ffad 0%,#5b7bfa99 44%,#395cf761 72%,#ffffffbd 100%),radial-gradient(130% 128% at 50% 122%,#ffffffe6 0%,#1943f538 52%,#1943f51a 100%);border:0;height:57%;bottom:6%;left:2%;right:2%;overflow:hidden;box-shadow:inset 0 2px 4px #ffffffb8,inset 1px 1px #ffffff75,inset -1px 0 #1943f514,inset 0 -28px 50px #ffffff94,0 28px 56px #1943f529}.project-file__folder-front:after{content:"";background:linear-gradient(#fff0 0%,#ffffffc7 100%);height:48%;position:absolute;inset:auto 0 0}.project-file:hover .project-file__paper,.project-file:focus-visible .project-file__paper,.project-file.is-opening .project-file__paper{transform:translateY(-5%)}.project-file.is-opening .project-file__paper{visibility:hidden}.project-copy{z-index:3;text-align:center;width:min(42vw,420px);margin-top:clamp(10px,1.8vh,18px);display:block;position:relative}.project-copy__text{width:100%;min-width:0}.project-copy h2{--typer-fg:#111;--typer-bg:var(--bg);--typer-accent:var(--glyph-blue);--typer-accent-ink:#fff;--typer-radius:5px;color:#111111b8;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;max-width:100%;margin:0;font-family:Geist,Geist Sans,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:clamp(22px,1.9vw,31px);font-style:normal;font-weight:400;line-height:1.1;overflow:hidden}.project-title-typer-word{white-space:nowrap;display:inline-block}.project-copy h2 .project-title-typer-char{box-sizing:content-box;color:inherit;font-weight:inherit;background:0 0;transition:none;display:inline-block}.project-copy h2 .project-title-typer-char.charInit{color:#0000}.project-copy h2 .project-title-typer-char.charFill{color:var(--typer-bg);background:var(--typer-fg);border-radius:var(--typer-radius)}.project-copy h2 .project-title-typer-char.charFill:has(+.charFill){border-top-right-radius:0;border-bottom-right-radius:0}.project-copy h2 .project-title-typer-char.charFill+.charFill{border-radius:0}.project-copy h2 .project-title-typer-char.charFill+.charFill:last-child{border-radius:0 var(--typer-radius) var(--typer-radius) 0}.project-copy h2 .project-title-typer-char.charFill+.charFill:has(+:not(.charFill)){border-radius:0 var(--typer-radius) var(--typer-radius) 0}.project-copy h2 .project-title-typer-char.charInverse{color:var(--typer-bg);background:var(--typer-fg)}.project-copy h2 .project-title-typer-char.charAccent{color:var(--typer-accent);background:0 0}.project-copy h2 .project-title-typer-char.charAccentInverse{color:var(--typer-accent-ink);background:var(--typer-accent);border-radius:var(--typer-radius)}.project-copy h2 .project-title-typer-char.charAccentInverse:has(+.charAccentInverse){border-top-right-radius:0;border-bottom-right-radius:0}.project-copy h2 .project-title-typer-char.charAccentInverse+.charAccentInverse{border-radius:0}.project-copy h2 .project-title-typer-char.charAccentInverse+.charAccentInverse:last-child{border-radius:0 var(--typer-radius) var(--typer-radius) 0}.project-copy h2 .project-title-typer-char.charAccentInverse+.charAccentInverse:has(+:not(.charAccentInverse)){border-radius:0 var(--typer-radius) var(--typer-radius) 0}.project-copy h2 .project-title-typer-char.charAccentFill{color:var(--typer-accent);background:var(--typer-accent)}.project-copy h2 .project-title-typer-char.charBorder{color:var(--typer-fg);position:relative}.project-copy h2 .project-title-typer-char.charBorder:after{border:1px solid var(--typer-accent);border-radius:var(--typer-radius);content:"";display:inline-block;position:absolute;inset:0}.project-copy h2 .project-title-typer-char.charBorder:has(+.charBorder):after{border-right:1px solid #0000;border-top-right-radius:0;border-bottom-right-radius:0}.project-copy h2 .project-title-typer-char.charBorder+.charBorder:after{border-left:1px solid #0000;border-right:1px solid #0000;border-radius:0}.project-copy h2 .project-title-typer-char.charBorder+.charBorder:last-child:after{border-right:1px solid var(--typer-accent);border-radius:0 var(--typer-radius) var(--typer-radius) 0;border-left:1px solid #0000}.project-copy h2 .project-title-typer-char.charBorder+.charBorder:has(+:not(.charBorder)):after{border-right:1px solid var(--typer-accent);border-radius:0 var(--typer-radius) var(--typer-radius) 0;border-left:1px solid #0000}.case-study-layer{z-index:5000;visibility:hidden;pointer-events:none;background:#fff0;position:fixed;inset:0}.case-study-layer.is-active{visibility:visible;pointer-events:auto}.case-study-page{z-index:4;overscroll-behavior-y:contain;touch-action:pan-y;-webkit-overflow-scrolling:touch;background:var(--bg);visibility:hidden;scrollbar-gutter:stable;will-change:transform;width:100%;height:100%;max-height:100dvh;position:absolute;inset:0;overflow:hidden auto}.case-study-page:before{z-index:3;content:"";pointer-events:none;background:0 0;height:132px;position:fixed;top:0;left:0;right:0}.case-study-page.is-open{visibility:visible;will-change:auto}.case-study-page__close{z-index:4;color:#999;cursor:pointer;visibility:hidden;opacity:0;will-change:transform, opacity;background:0 0;border:0;align-items:center;width:auto;height:auto;padding:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-size:12px;font-weight:400;line-height:1;transition:color .16s;display:inline-flex;position:fixed;top:82px;left:clamp(34px,3vw,44px);transform:translateY(8px)}.case-study-page__close-icon{display:none}.case-study-page__close:hover{color:#202020}.case-study-page__close:focus-visible{outline:2px solid var(--glyph-blue);outline-offset:4px}.case-study-progress{z-index:4;visibility:hidden;opacity:0;pointer-events:none;width:124px;position:fixed;top:168px;left:clamp(34px,3vw,44px)}.case-study-progress__list{gap:16px;margin:0;padding:0;list-style:none;display:grid}.case-study-progress__button{color:#929292;text-align:left;cursor:pointer;visibility:hidden;opacity:0;will-change:transform, opacity;background:0 0;border:0;width:100%;padding:0;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-size:12px;font-weight:400;line-height:1.2;transition:color .16s;display:block;transform:translateY(8px)}.case-study-progress__button:hover,.case-study-progress__button.is-active{color:#171717}.case-study-progress__button:focus-visible{outline:2px solid var(--glyph-blue);outline-offset:4px}.case-study-article{color:#252525;letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;width:min(726px,100vw - 260px);margin:0 auto;padding:96px 0 clamp(92px,15vh,144px);font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-size:16px;font-weight:400;line-height:1.6}.case-study-hero{grid-template-columns:minmax(0,1fr) 164px;align-content:start;column-gap:68px;min-height:0;padding:0 0 clamp(72px,10vh,104px);display:grid}.case-study-hero__mark{border-radius:12px;grid-column:1;width:64px;height:64px;margin:48px 0 60px;display:block;overflow:hidden}.case-study-hero__eyebrow{display:none}.case-study-hero__title{color:#202020;letter-spacing:0;grid-column:1;margin:0 0 34px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,Arial,sans-serif;font-size:19px;font-style:normal;font-weight:600;line-height:1.3}.case-study-hero__summary{color:#222;white-space:pre-line;text-wrap:pretty;grid-column:1;max-width:none;margin:0 0 32px;font-size:16px;line-height:1.6}.case-study-hero__intro{color:#222;text-wrap:pretty;grid-column:1;max-width:none;margin:0;font-size:16px;line-height:1.6}.case-study-meta{grid-area:3/2/span 3;align-content:start;gap:58px;margin:0;padding:0;display:grid}.case-study-meta div{min-width:0}.case-study-meta dt{color:#202020;letter-spacing:0;margin-bottom:30px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,Arial,sans-serif;font-size:19px;font-weight:600;line-height:1.3}.case-study-meta dd{color:#262626;margin:0;font-size:16px;font-weight:400;line-height:1.6}.case-study-meta__year-label,.case-study-meta{display:none}.case-study-hero__website{color:#202020;text-underline-offset:4px;grid-area:3/2;place-self:start;font-size:16px;line-height:1.6;text-decoration-thickness:1px}.case-study-hero__website:hover{color:var(--glyph-blue)}.case-study-hero__website[hidden]{display:none}.case-study-section{width:100%;margin-left:auto;margin-right:auto;scroll-margin-top:110px}.case-study-section>h2,.case-study-section>p{width:100%;margin-left:auto;margin-right:auto}#case-study-overview>h2,#case-study-challenge>h2,#case-study-system>h2{display:none}.case-study-section+.case-study-section{margin-top:clamp(180px,24vh,260px)}.case-study-section h2{color:#202020;margin:0 0 24px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,Arial,sans-serif;font-size:19px;font-weight:600;line-height:1.3}.case-study-section p{white-space:pre-line;text-wrap:pretty;margin:0 0 30px;font-size:16px;line-height:1.6}.case-study-media{width:100%;margin:40px 50%;transform:translate(-50%)}.case-study-media__surface{isolation:isolate;background:radial-gradient(circle at 72% 28%,#1943f540,#0000 28%),linear-gradient(145deg,#edf1ff 0%,#fdfcf8 48%,#dce5ff 100%);border:1px solid #1111111a;border-radius:2px;flex-direction:column;justify-content:space-between;min-height:clamp(330px,52vw,560px);padding:clamp(20px,3vw,34px);display:flex;position:relative;overflow:hidden}.case-study-media__surface:before{z-index:-1;content:"";border:1px solid #1943f533;border-radius:50%;position:absolute;inset:12%;transform:rotate(-8deg)scale(1.16)}.case-study-media__surface:after{z-index:-1;aspect-ratio:1;content:"";background:#1943f51f;border-radius:24%;width:58%;position:absolute;bottom:-24%;right:-8%;transform:rotate(24deg)}.case-study-media__surface.has-videos{background:0 0;border:0;min-height:0;padding:0;overflow:visible}.case-study-media__surface.has-videos:before,.case-study-media__surface.has-videos:after{display:none}.case-study-media__videos{gap:clamp(180px,24vh,260px);display:grid}.case-study-media__video-copy{color:#252525;white-space:pre-line;text-wrap:pretty;width:100%;font-size:16px;line-height:1.6;margin:0 0 40px!important}.case-study-media__video-copy a{color:inherit;text-underline-offset:3px;text-decoration-thickness:1px}.case-study-media__continued-video{margin-top:40px}.case-study-media__videos video{background:#f2f2f2;border:0;border-radius:4px;width:100%;height:auto;display:block}.case-study-media--wide .case-study-media__surface{background:linear-gradient(#1111110e 1px,#0000 1px) 0 0/32px 32px,linear-gradient(90deg,#1111110e 1px,#0000 1px) 0 0/32px 32px,linear-gradient(135deg,#f4f0ff,#fdfcf8 54%,#e6ebff);min-height:clamp(280px,40vw,440px)}.case-study-media--portrait{width:100%}.case-study-media--portrait .case-study-media__surface{background:radial-gradient(circle at 50% 42%,#1943f53d,#0000 24%),linear-gradient(170deg,#e9edff 0%,#fdfcf8 62%,#e1e7ff 100%);min-height:clamp(480px,74vw,700px)}.case-study-page[data-project-id=project-two] .case-study-media__surface{background:radial-gradient(circle at 68% 30%,#f2793547,#0000 28%),linear-gradient(145deg,#fff0e7 0%,#fdfcf8 48%,#f2dcff 100%)}.case-study-page[data-project-id=project-two] .case-study-media--wide .case-study-media__surface{background:linear-gradient(#502a6e0f 1px,#0000 1px) 0 0/32px 32px,linear-gradient(90deg,#502a6e0f 1px,#0000 1px) 0 0/32px 32px,linear-gradient(135deg,#f7e8ff,#fdfcf8 52%,#ffe7dc)}.case-study-page[data-project-id=project-two] .case-study-media--portrait .case-study-media__surface{background:radial-gradient(circle at 50% 42%,#f2793540,#0000 24%),linear-gradient(170deg,#f6e6ff 0%,#fdfcf8 62%,#ffe2d5 100%)}.case-study-page[data-project-id=project-two] .case-study-media__surface:before{border-color:#9b50c433}.case-study-page[data-project-id=project-two] .case-study-media__surface:after{background:#f2793521}.case-study-page[data-project-id=project-two] .case-study-media__surface.has-videos{background:0 0}.case-study-page[data-project-id=project-two] .case-study-media__surface.has-videos:before,.case-study-page[data-project-id=project-two] .case-study-media__surface.has-videos:after{display:none}.case-study-media .case-study-media__surface.has-videos{background:0 0;border:0;min-height:0;padding:0;overflow:visible}.case-study-media .case-study-media__surface.has-videos:before,.case-study-media .case-study-media__surface.has-videos:after{display:none}.case-study-media__index,.case-study-media__label{z-index:1;position:relative}.case-study-media__index{color:#11111180;letter-spacing:.07em;text-transform:uppercase;font-size:11px;font-weight:700;line-height:1}.case-study-media__label{color:#252525;text-wrap:balance;max-width:70%;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Helvetica Neue,Arial,sans-serif;font-size:19px;font-style:normal;font-weight:600;line-height:1.3}.case-study-media figcaption{color:#929292;margin-top:12px;font-size:12px;font-weight:500;line-height:1.4}.case-study-section--outcome{padding-bottom:clamp(26px,5vh,52px)}.case-study-endnote{color:#343434;border-top:1px solid #11111124;padding-top:24px;font-weight:700;margin-top:clamp(54px,9vh,84px)!important}.case-study-split-word,.case-study-split-line,.case-study-hero__mark,.case-study-media{will-change:transform, opacity}.case-study-paper-warp{z-index:1;pointer-events:none;contain:layout paint;will-change:transform;width:100vw;height:100vh;display:block;position:fixed;inset:0;overflow:visible;transform:translate(0,0)}.case-study-paper-warp svg{width:100vw;height:100vh;display:block;overflow:visible}.case-study-paper-warp__sheet{stroke:#1624262e;stroke-width:1.25px;vector-effect:non-scaling-stroke;shape-rendering:geometricprecision}.case-study-folder-mask{z-index:2;pointer-events:none;will-change:transform, visibility;position:fixed;overflow:hidden;transform:translate(0,0)}.case-study-folder-mask:after{content:"";background:linear-gradient(#fff0 0%,#ffffffc7 100%);height:48%;position:absolute;inset:auto 0 0}.startup-loader{z-index:8500;background:var(--bg);min-height:100svh;color:var(--ink);pointer-events:auto;contain:layout paint style;outline:none;place-items:center;display:grid;position:fixed;inset:0;overflow:hidden}.startup-loader.is-hidden{visibility:hidden;opacity:0}.startup-entry{text-align:center;visibility:hidden;justify-items:center;gap:clamp(16px,2.2vh,22px);width:min(520px,100vw - 40px);margin-top:-1vh;display:grid}.startup-entry__logo{object-fit:contain;filter:none;-webkit-user-select:none;user-select:none;pointer-events:none;will-change:transform, opacity;width:clamp(68px,6.6vw,88px);height:clamp(68px,6.6vw,88px);display:block}.startup-entry__message{max-width:410px;color:var(--ink);letter-spacing:-.01em;text-wrap:balance;-webkit-font-smoothing:antialiased;text-rendering:geometricprecision;margin:0;font-family:Gambarino,Georgia,Times New Roman,serif;font-size:clamp(18px,1.9vw,23px);font-weight:400;line-height:1.25}.startup-entry__word.footer-glitch-word{vertical-align:baseline;white-space:nowrap;display:inline-block;position:relative}.startup-entry__word.footer-glitch-word:before{width:clamp(5px,.44vw,7px);height:clamp(5px,.44vw,7px)}.startup-entry__word .footer-glitch-word__copy{margin:-.05em -.01em -.08em;padding:.05em .01em .08em;display:inline-block}.startup-entry__sound-button{background:var(--intro-highlight-blue);color:#fff;letter-spacing:0;text-transform:lowercase;cursor:pointer;min-width:0;min-height:0;box-shadow:none;will-change:transform, opacity;border:0;border-radius:2px;align-items:center;gap:7px;padding:5px 9px 6px;font-family:Geist,Helvetica Neue,Helvetica,Arial,system-ui,sans-serif;font-size:15px;font-weight:400;line-height:1;transition:background .18s,color .18s,transform .18s;display:inline-flex}.startup-entry__sound-button:hover{background:var(--glyph-blue);transform:translateY(-1px)}.startup-entry__sound-button:active{transform:translateY(0)scale(.985)}.startup-entry__sound-dot{background:currentColor;border-radius:50%;width:5px;height:5px}.startup-entry__silent-button{right:50%;bottom:max(22px, env(safe-area-inset-bottom));color:#1111117a;cursor:pointer;visibility:hidden;will-change:opacity, transform;background:0 0;border:0;padding:8px 12px;font-size:14px;font-weight:400;line-height:1;transition:color .18s;position:absolute;transform:translate(50%)}.startup-entry__silent-button:hover{color:#111111e0}.startup-entry__sound-button:focus-visible,.startup-entry__silent-button:focus-visible{outline:2px solid var(--glyph-blue);outline-offset:4px}.startup-entry__sound-button:disabled,.startup-entry__silent-button:disabled{cursor:default;pointer-events:none}.startup-entry,.startup-entry__silent-button{-webkit-user-select:none;user-select:none}@media (width<=620px){.startup-entry{gap:17px;width:calc(100vw - 32px);margin-top:-3vh}.startup-entry__message{max-width:300px;font-size:clamp(17px,5vw,21px)}.startup-entry__silent-button{bottom:max(22px, env(safe-area-inset-bottom))}}.page-transition{z-index:9000;visibility:hidden;opacity:0;pointer-events:none;contain:layout paint style;position:fixed;inset:0;overflow:hidden}.route-transition-snapshot{z-index:8950;background:var(--bg);pointer-events:none;-webkit-user-select:none;user-select:none;contain:layout paint style;will-change:opacity;position:fixed;inset:0;overflow:hidden}.route-transition-snapshot__stage{isolation:isolate;pointer-events:none;overflow:hidden;position:absolute!important;transform:none!important}.route-transition-snapshot--capability{background:0 0}.route-transition-snapshot__capability-stage{isolation:isolate;pointer-events:none;overflow:hidden;position:absolute!important;transform:none!important}body .route-transition-snapshot .work-owl-flight-layer{display:block!important}.page-transition.is-active{visibility:visible;pointer-events:auto}.page-transition.is-covered{background:var(--bg)}.page-transition__canvas{-webkit-user-select:none;user-select:none;pointer-events:none;width:100%;height:100%;display:block;position:absolute;inset:0}@media (width<=620px){.work-wave-caption{--work-wave-caption-inset:14px}.work-wave-caption__name{font-size:18px}.site-header{min-height:64px;padding:10px 12px}.site-logo{width:34px;height:34px}.site-logo img{width:31px;height:31px}.section-nav{gap:7px;height:34px}.section-nav__selection{height:26px;top:4px}.section-nav__button{height:26px;padding:0 7px;font-size:11px}.contact-link{font-size:11px}.project-showcase{min-height:100vh;padding:84px 22px 54px}.project-showcase__media,.project-copy{width:100%}.project-file{aspect-ratio:1;width:min(70vw,320px)}.project-file__skill-tag{min-width:36px;height:24px;padding:0 9px;font-size:10px}.project-copy{width:min(78vw,360px);margin-top:12px}.project-copy h2{font-size:clamp(22px,6.4vw,29px)}.work-owl-scene.site-footer{--footer-owl-size:min(92vw, 410px);--footer-word-gap:clamp(18px, 5.8vw, 34px);--footer-edge-padding:16px;min-height:172svh;padding:0}.site-footer__stage{min-height:100svh}.site-footer__mono-glow{height:100%;bottom:-7svh;left:-10vw;right:-10vw}.site-footer__word{font-size:clamp(1.3rem,5vw,2.1rem)}.site-footer__copy-button{top:calc(50% + var(--footer-owl-size) * .52);font-size:12px}.site-footer__socials{bottom:max(18px, env(safe-area-inset-bottom));gap:7px 15px}.site-footer__socials a{min-height:24px;font-size:12px}.intro-owl.is-work-owl{width:min(72vw,420px);height:min(58svh,420px)}}@media (width<=760px){.work-wave{padding-bottom:100svh}.capability-cards{height:500svh;padding:0 clamp(8px,3vw,18px)}.capability-cards__stage{height:100svh;position:sticky;overflow:hidden}.capability-cards__deck{flex-wrap:nowrap;gap:clamp(7px,2vw,12px);width:min(100%,520px);display:flex}.capability-card{aspect-ratio:5/8;opacity:1;flex:1 1 0;width:100%;min-width:0;max-width:150px}.capability-card__hover-label{font-size:clamp(12px,3.7vw,17px);top:clamp(-34px,-7vw,-25px)}.capability-card__inner{transform:rotateY(180deg)}.capability-card__face{padding:clamp(7px,2vw,10px)}.capability-card__face--back{--capability-card-padding:clamp(5px, 1.8vw, 8px);--capability-card-section-gap:clamp(5px, 1.6vw, 8px);grid-template-rows:minmax(0,50%) minmax(0,1fr)}.capability-card__content{padding:clamp(3px,1vw,5px) clamp(4px,1.3vw,6px) clamp(5px,1.5vw,7px)}.capability-card__keyword-field{gap:3px 4px}.capability-card__keyword{padding:.12em .22em .16em;font-size:clamp(6px,2.05vw,8px);font-weight:400}.capability-card__blue-runner{width:58px;height:clamp(10px,3vw,12px)}.capability-card__blue-copy{gap:3px 4px}}@media (width>=761px) and (width<=1080px){.capability-cards__deck{gap:clamp(14px,2.2vw,24px);width:min(88vw,940px)}.capability-card{aspect-ratio:5/7}.capability-card__face--back{--capability-card-section-gap:clamp(10px, 1.25vw, 14px);grid-template-rows:minmax(0,57%) minmax(0,1fr)}.capability-card__content{padding:0 clamp(10px,1.35vw,15px) clamp(4px,.75vw,8px)}.capability-card__keyword-field,.capability-card__blue-copy{gap:clamp(3px,.45vw,5px) clamp(5px,.65vw,7px)}.capability-card__keyword{font-size:clamp(14px,1.18vw,18px)}}@media (width<=1080px){.case-study-progress{width:120px;top:168px;left:28px}.case-study-progress__list{grid-template-columns:1fr;gap:16px}.case-study-progress__button{font-size:12px}.case-study-page__close{font-size:12px;top:82px;left:28px}.case-study-article{width:min(726px,100vw - 210px);padding-top:104px}.case-study-hero{grid-template-columns:minmax(0,1fr) 150px;column-gap:48px;min-height:0;padding:0 0 88px}.case-study-hero__mark,.case-study-hero__title,.case-study-hero__summary,.case-study-hero__intro{grid-column:1}.case-study-meta{grid-area:3/2/span 3;grid-template-columns:1fr;gap:48px;margin-top:0;display:grid}.case-study-meta dt{margin-bottom:24px;font-size:19px}.case-study-meta dd{font-size:16px}.case-study-section,.case-study-media{width:100%}.intro-owl{width:min(43vw,420px);height:min(52svh,420px);right:clamp(14px,3vw,34px)}.intro-copy{width:min(640px,100% - 48px)}.intro-owl.is-work-owl{width:min(64vw,540px);height:min(58svh,540px)}.work-owl-scene.site-footer{--footer-owl-size:min(48vw, 430px);--footer-word-gap:clamp(22px, 4.5vw, 42px)}.site-footer__word{font-size:clamp(2rem,5.2vw,4rem)}}@media (width>=621px) and (width<=1080px){.intro-copy{width:min(46vw,460px);top:50%;bottom:auto;left:clamp(28px,6vw,64px);transform:translateY(-50%)}.intro-owl{width:min(56vw,900px);height:min(88vh,900px);transform:translate3d(var(--intro-owl-x), -50%, 0) scaleX(var(--intro-owl-scale-x));top:50%;bottom:auto;right:clamp(22px,4.2vw,76px)}}@supports (height:100dvh){.stage{height:100dvh}.stage.is-camera-handoff{height:100dvh!important}.about-page{height:100dvh;min-height:100dvh}.work-page{min-height:100dvh;padding-top:100dvh;padding-bottom:0}.project-showcase{min-height:100dvh}}@media (width<=620px){.case-study-page:before{height:112px}.work-owl-scene.site-footer{--footer-owl-size:min(92vw, 410px);--footer-word-gap:clamp(18px, 5.8vw, 34px);--footer-edge-padding:16px;min-height:172svh}.site-footer__stage{min-height:100svh}.site-footer__word{font-size:clamp(1.3rem,5vw,2.1rem)}.site-footer__copy-button{top:calc(50% + var(--footer-owl-size) * .52);font-size:12px}.site-footer__socials{bottom:max(18px, env(safe-area-inset-bottom));gap:7px 15px}.site-footer__socials a{min-height:24px;font-size:12px}.case-study-page__close{font-size:12px;top:82px;left:22px}.case-study-progress{display:none}.case-study-progress__list{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.case-study-progress__button{text-align:left;font-size:11px}.case-study-article{width:calc(100vw - 32px);padding-top:96px;padding-bottom:82px;font-size:16px}.case-study-hero{min-height:0;padding:0 6px 88px;display:block}.case-study-hero__mark{width:58px;height:58px;margin:36px 0 48px}.case-study-hero__title{margin-bottom:28px;font-size:19px}.case-study-hero__summary{margin:0 0 28px;font-size:16px}.case-study-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:48px}.case-study-hero__website{margin-top:36px;display:inline-block}.case-study-meta dt{margin-bottom:12px;font-size:19px}.case-study-meta dd{font-size:16px}.case-study-section{width:100%;margin-left:auto;margin-right:auto}.case-study-section+.case-study-section{margin-top:clamp(140px,20vh,200px)}.case-study-media__videos{gap:clamp(140px,20vh,200px)}.case-study-media,.case-study-media--portrait{width:calc(100vw - 28px);margin-top:40px;margin-bottom:40px}.case-study-media__surface{border-radius:20px;min-height:64svh}.case-study-media--wide .case-study-media__surface{min-height:48svh}.case-study-media--portrait .case-study-media__surface{min-height:76svh}.case-study-media__label{max-width:86%;font-size:clamp(30px,10vw,42px)}.intro-owl{--intro-owl-mobile-size:min(98vw, 420px);width:var(--intro-owl-mobile-size);height:var(--intro-owl-mobile-size);transform:translate3d(calc(-50% + var(--intro-owl-x)), 0, 0) scaleX(var(--intro-owl-scale-x));inset:auto auto -7svh 50%}.intro-card{min-height:0}.intro-copy{text-align:center;width:calc(100% - clamp(40px,12vw,64px));font-size:clamp(15px,4.5vw,19px);line-height:1.06;top:38%;left:50%;transform:translate(-50%,-50%)}.about-quote-stage{width:calc(100vw - 44px)}.about-quote{font-size:clamp(18px,5.2vw,24px);line-height:1.16}.about-story{padding-top:112px;padding-bottom:86px}.about-story__inner{width:min(430px,100vw - 42px)}.about-story__text{width:100%;margin-top:34px;font-size:16px;line-height:1.6}.about-story__portrait-pair{gap:24px;width:100%;margin-top:42px}.about-story__photo--landscape{width:100%;margin-top:44px}.about-story__socials{width:100%;margin-top:42px}}@media (width<=360px){.site-header{padding-left:8px;padding-right:8px}.site-logo{width:30px;height:30px}.site-logo img{width:28px;height:28px}.section-nav{gap:5px}.section-nav__button{padding:0 5px;font-size:10px}.contact-link{font-size:10px}}@media (width<=620px) and (height<=700px){.intro-owl{bottom:-7svh}.intro-copy{font-size:15px;top:37%}}@media (prefers-reduced-motion:reduce){.intro-word{will-change:auto;transform:none!important}.intro-word .intro-typer-char.charInit,.hero-intro__statement .hero-typer-char.charInit,.project-copy h2 .project-title-typer-char.charInit{color:inherit}.work-wave-image__frame,.work-wave-image__frame img{will-change:auto;transform:none!important}.work-wave-caption{transition:none}.capability-cards{height:auto;padding:100px 22px 80px}.capability-cards__stage{height:auto;position:relative}.capability-cards__deck{grid-template-columns:minmax(0,1fr);gap:28px;width:min(100%,420px);display:grid}.capability-card{will-change:auto;width:100%;max-width:none;opacity:1!important;transform:none!important}.capability-card__float,body.capability-cards-active .capability-card__float{will-change:auto;animation:none}.capability-card__inner{will-change:auto;transform:rotateY(180deg)!important}.project-folder-icon,.project-file__paper,.project-file__skill-tag,.case-study-paper-warp,.case-study-folder-mask{will-change:auto;transition:none!important}.project-folder-icon,.project-file__paper,.case-study-paper-warp,.case-study-folder-mask{transform:none!important}.case-study-progress__fill,.case-study-split-word,.case-study-split-line{will-change:auto}}@media (width<=760px) and (prefers-reduced-motion:reduce){.capability-cards{padding:clamp(92px,16svh,132px) clamp(8px,3vw,18px) 80px}.capability-cards__deck{flex-wrap:nowrap;gap:clamp(7px,2vw,12px);width:min(100%,520px);display:flex}.capability-card{flex:1 1 0;min-width:0;max-width:150px}}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}.lenis.lenis-autoToggle{transition-behavior:allow-discrete;transition-property:overflow;transition-duration:1ms}.slot-text{white-space:pre;display:inline-flex}.char-slot{vertical-align:bottom;flex:none;justify-content:center;line-height:1.3;display:inline-flex;position:relative;overflow:visible clip}.char-slot.is-resizing{overflow-x:clip}.char-sizer{visibility:hidden;white-space:pre}.char-face{white-space:pre;will-change:transform;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}
