@font-face{font-family:manrope;src:url(../media/manrope_latin_wght_normal-s.p.2xs28az5j2efm.woff2)format("woff2");font-display:swap;font-weight:200 800}@font-face{font-family:manrope Fallback;src:local(Arial);ascent-override:106.45%;descent-override:29.96%;line-gap-override:0.0%;size-adjust:100.14%}.manrope_e5b63b80-module__C7vi4a__className{font-family:manrope,manrope Fallback}.manrope_e5b63b80-module__C7vi4a__variable{--font-manrope:"manrope", "manrope Fallback"}
@font-face{font-family:mono;src:url(../media/ibm_plex_mono_latin_400_normal-s.19gbeb610ur4n.woff2)format("woff2");font-display:swap;font-weight:400}@font-face{font-family:mono Fallback;src:local(Arial);ascent-override:77.95%;descent-override:20.91%;line-gap-override:0.0%;size-adjust:131.49%}.mono_8ca4d167-module__jI4Bwa__className{font-family:mono,mono Fallback;font-weight:400}.mono_8ca4d167-module__jI4Bwa__variable{--font-plex:"mono", "mono Fallback"}
@font-face{font-family:pixel;src:url(../media/silkscreen_latin_400_normal-s.21ajxjsno3x-m.woff2)format("woff2");font-display:swap}@font-face{font-family:pixel Fallback;src:local(Arial);ascent-override:67.93%;descent-override:16.49%;line-gap-override:0.0%;size-adjust:151.62%}.pixel_f7458161-module__BrKWUq__className{font-family:pixel,pixel Fallback}.pixel_f7458161-module__BrKWUq__variable{--font-pixel:"pixel", "pixel Fallback"}
@font-face{font-family:"serif";src:url(../media/instrument_serif_latin_400_italic-s.3bg-hzmj1g17f.woff2)format("woff2");font-display:swap}@font-face{font-family:serif Fallback;src:local(Arial);ascent-override:121.98%;descent-override:38.19%;line-gap-override:0.0%;size-adjust:81.16%}.serif_9afff64e-module__Ci3yoW__className{font-family:"serif",serif Fallback}.serif_9afff64e-module__Ci3yoW__variable{--font-serif:"serif", "serif Fallback"}
.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}:root{--background:#141513;--surface:#1d1e1a;--foreground:#edeee7;--muted:#a3a69a;--accent:#e1e59a;--line:#ffffff18;--font-sans:var(--font-manrope), sans-serif;--font-mono:var(--font-plex), monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{background-color:var(--background);color:var(--foreground);scroll-behavior:smooth;scroll-padding-top:110px}body{background:var(--background);color:var(--foreground);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0}button:disabled{cursor:default}svg{stroke-width:1.6px;flex-shrink:0}h1,h2,h3,p{margin:0}::selection{background:var(--accent);color:var(--background)}:focus-visible{outline:2px solid var(--accent);outline-offset:6px}img{max-width:100%;height:auto;display:block}button,a{touch-action:manipulation}[hidden]{display:none!important}.container{width:min(1120px,100% - 112px);margin-inline:auto}.muted{color:var(--muted)}.accent{color:var(--accent)}.skip-link{background:var(--accent);color:var(--background);z-index:20;padding:12px 18px;position:fixed;top:12px;left:16px;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:10;height:96px;position:relative}.nav-inner{justify-content:space-between;align-items:center;gap:28px;width:calc(100% - 112px);max-width:1328px;height:100%;margin:auto;display:flex}.wordmark{letter-spacing:-.7px;font-size:17px;font-weight:700}.wordmark-period{color:var(--accent);padding-left:1px}.desktop-nav{gap:35px;margin-left:auto;margin-right:38px;display:flex}.desktop-nav a{color:#b9bcb2;font-size:13px;transition:color .2s}.desktop-nav a:hover,.desktop-nav a[aria-current]{color:var(--accent)}.nav-contact{background:var(--foreground);color:var(--background);border-radius:100px;align-items:center;gap:24px;padding:12px 18px;font-size:12px;transition:background .2s,transform .2s;display:flex}.nav-contact:hover{background:var(--accent);transform:translateY(-2px)}.menu-toggle,.mobile-nav{display:none}.hero{isolation:isolate;border-bottom:1px solid var(--line);justify-content:center;align-items:center;min-height:min(760px,100svh - 96px);display:flex;position:relative;overflow:hidden}.dither-canvas{z-index:-1;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#0000,#000 13% 82%,#0000);mask-image:linear-gradient(#0000,#000 13% 82%,#0000)}.hero-content{text-align:center;z-index:1;pointer-events:none;width:100%;padding:70px 24px 115px;position:relative}.hero-content a{pointer-events:auto}.hero-eyebrow{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:2.2px;color:#c3c7b4;margin-bottom:32px;font-size:10px}.hero h1{letter-spacing:-6px;font-size:clamp(54px,6.5vw,96px);font-weight:500;line-height:1.09}.hero h1 span{color:var(--accent)}.hero-description{color:#b4b7ab;max-width:550px;margin:29px auto 0;font-size:14px;line-height:1.9}.hero-actions{justify-content:center;align-items:center;gap:34px;margin-top:32px;display:flex}.button{white-space:nowrap;border-radius:100px;justify-content:center;align-items:center;gap:25px;padding:16px 22px;font-size:12px;font-weight:600;transition:transform .25s,background .25s;display:inline-flex}.button-primary{background:var(--accent);color:#202217}.button:hover{background:#eef2bd;transform:translateY(-3px)}.text-link{align-items:center;gap:12px;padding-block:10px;font-size:12px;line-height:1.5;display:inline-flex}.text-link svg{transition:transform .25s}.text-link:hover svg{transform:translate(3px,-3px)}.text-link:hover{color:var(--accent)}.hero-corner{color:#95998b;font-size:11px;font-style:italic;position:absolute;bottom:30px;left:56px}.section{padding-block:105px}.section-heading{margin-bottom:44px}.section-kicker{color:var(--muted);margin-bottom:16px;font-size:12px}.section-heading h2{letter-spacing:-2.5px;font-size:48px;font-weight:500;line-height:1.15}.count{font-family:var(--font-mono);letter-spacing:0;color:var(--muted);vertical-align:top;margin:9px 0 0 15px;font-size:12px;display:inline-block}.project-list{flex-direction:column;gap:150px;display:flex}.project-link{display:block}.project-art{background:#22251e;border-radius:12px;position:relative;overflow:hidden}.project-art img{filter:saturate(.85);width:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s}.project-link:hover .project-art img{filter:saturate();transform:scale(1.025)}.project-open{width:56px;height:56px;color:var(--background);background:var(--accent);opacity:0;border-radius:50%;place-items:center;transition:opacity .25s,transform .25s;display:grid;position:absolute;bottom:26px;right:26px;transform:translateY(10px)}.project-link:hover .project-open,.project-link:focus-visible .project-open{opacity:1;transform:translateY(0)}.project-caption{grid-template-columns:1fr 1fr 30px;align-items:center;gap:32px;margin-top:22px;display:grid}.project-category{color:var(--muted);font-size:10px}.project-caption h3{letter-spacing:-1px;align-items:center;gap:14px;margin-top:5px;font-size:25px;font-weight:500;display:flex}.project-index{font-family:var(--font-mono);color:#9b9f91;letter-spacing:0;font-size:10px}.project-caption p{color:var(--muted);max-width:350px;font-size:13px;line-height:1.8}.project-caption-arrow{justify-self:end}.about-section{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:1fr 2.2fr;gap:65px;padding-block:115px;display:grid}.section-label{color:var(--muted);flex-direction:column;align-items:flex-start;gap:30px;padding-top:8px;font-size:12px;display:flex}.section-label svg{color:var(--accent)}.story-text{letter-spacing:-1.7px;font-size:42px;font-weight:500;line-height:1.45}.story-text span{display:inline}.about-details{align-items:flex-start;gap:45px;margin-top:35px;display:flex}.about-details p{color:var(--muted);max-width:390px;font-size:13px;line-height:1.9}.about-details a{flex-shrink:0}.services-section{grid-template-columns:1fr 1.3fr;gap:100px;padding-block:125px;display:grid}.section-description{color:var(--muted);max-width:260px;margin-top:25px;font-size:13px;line-height:1.8}.capability{border-bottom:1px solid var(--line)}.capability:first-child{border-top:1px solid var(--line)}.capability h3{letter-spacing:-.5px;font-size:20px;font-weight:500}.capability h3 button{text-align:left;background:0 0;justify-content:space-between;align-items:center;gap:20px;width:100%;padding:25px 0;display:flex}.capability h3 button:hover{color:var(--accent)}.capability-content p{color:var(--muted);max-width:400px;padding:0 25px 28px 0;font-size:13px;line-height:1.9}.site-footer{border-top:1px solid var(--line);background:#10110f;padding-top:82px}.footer-top{grid-template-columns:1fr 2.2fr;gap:65px;display:grid}.footer-top>p{color:var(--muted);padding-top:10px;font-size:13px;line-height:1.9}.footer-contact{letter-spacing:-3px;padding-right:65px;font-size:clamp(40px,5.5vw,74px);font-weight:500;line-height:1.15;display:block;position:relative}.footer-contact span{color:var(--accent)}.footer-contact>svg{width:50px;height:50px;transition:transform .3s;position:absolute;top:10px;right:0}.footer-contact:hover>svg{transform:translate(6px,-6px)}.contact-row{justify-content:space-between;align-items:center;gap:30px;margin-top:55px;display:flex}.email-group{align-items:center;gap:14px;font-size:14px;display:flex;position:relative}.email-group>a:hover{color:var(--accent)}.copy-button{border:1px solid var(--line);width:38px;height:38px;color:var(--muted);background:0 0;border-radius:50%;place-items:center;display:grid}.copy-button:hover{color:var(--accent);border-color:var(--accent)}.copy-status{color:var(--accent);font-size:11px;position:absolute;top:44px}.social-links{gap:24px;display:flex}.social-links a{color:#b5b8ac;align-items:center;gap:6px;font-size:11px;display:flex}.social-links a:hover{color:var(--accent)}.physics-wrap{margin-top:85px}.physics-caption{color:#9fa292;justify-content:space-between;align-items:center;font-size:11px;display:flex}.reset-physics{color:var(--muted);background:0 0;align-items:center;gap:8px;padding:12px;font-size:10px;display:flex}.reset-physics:hover{color:var(--accent)}.physics-area{height:245px;margin-top:15px;position:relative;overflow:hidden}.physics-static{flex-wrap:wrap;place-content:flex-end center;gap:12px;height:100%;padding-bottom:20px;display:flex}.skill-object{color:#d2d8b4;letter-spacing:-.4px;white-space:nowrap;-webkit-user-select:none;user-select:none;background:#20221c;border:1px solid #ffffff0c;border-radius:100px;justify-content:center;align-items:center;padding:19px 28px;font-size:17px;display:inline-flex}.skill-1{color:#b6c5bc;background:#1c2420}.skill-2{color:var(--accent);background:#282b1e}.physics-area[data-physics=active] .skill-object{cursor:grab;touch-action:none;will-change:transform;position:absolute;top:0;left:0}.is-dragging .skill-object{cursor:grabbing!important}.physics-loading{height:393px}.footer-bottom{border-top:1px solid var(--line);min-height:90px;color:var(--muted);justify-content:space-between;align-items:center;gap:25px;font-size:10px;display:flex}.footer-name{color:var(--foreground);font-size:13px;font-weight:600}.back-top{align-items:center;gap:9px;padding:12px 0;display:flex}.back-top:hover{color:var(--accent)}.inner-page{padding-top:70px;padding-bottom:110px}.page-intro{max-width:920px;margin-bottom:65px}.page-intro h1,.contact-intro h1{letter-spacing:-4px;font-size:clamp(45px,6vw,80px);font-weight:500;line-height:1.15}.page-intro>p:last-child{color:var(--muted);max-width:620px;margin-top:26px;font-size:16px;line-height:1.9}.page-intro .button{margin-top:28px}.bio-grid{border-top:1px solid var(--line);grid-template-columns:1fr 2.2fr;gap:65px;padding-block:55px;display:grid}.bio-grid>h2{font-size:15px;font-weight:500}.bio-grid .story-text{letter-spacing:-1px;margin-bottom:32px;font-size:30px}.body-copy{color:var(--muted);margin-bottom:22px;font-size:15px;line-height:1.95}.experience article+article{border-top:1px solid var(--line);margin-top:50px;padding-top:35px}.experience-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:8px;display:flex}.experience-heading h3{font-size:23px;font-weight:500}.experience-heading span{font-family:var(--font-mono);color:var(--muted);font-size:10px}.experience .accent{margin-bottom:20px;font-size:12px}.contact-intro{padding-top:95px;padding-bottom:100px}.contact-intro>p:not(.section-kicker){max-width:500px;color:var(--muted);margin:30px 0;line-height:1.9}.back-link{margin-bottom:45px}.case-cover{border-radius:12px;width:100%;height:auto;display:block}.case-video{aspect-ratio:16/9;background:#0d0d0d;position:relative;overflow:hidden}.case-video img,.case-video video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.case-video video{opacity:0;transition:opacity .6s}.case-video video.is-playing{opacity:1}.case-meta{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:20px;padding:35px 0 60px;display:flex}.case-meta>div>span{font-family:var(--font-mono);color:var(--muted);font-size:10px}.case-meta p{margin-top:10px;font-size:13px}.case-body{grid-template-columns:220px 1fr;gap:70px;margin-top:70px;display:grid}.case-contents{flex-direction:column;align-self:start;gap:18px;display:flex;position:sticky;top:45px}.case-contents p{color:var(--muted);margin-bottom:10px;font-size:10px}.case-contents a{color:var(--muted);font-size:12px;transition:color .2s}.case-contents a:hover,.case-contents a[aria-current]{color:var(--accent)}.case-section{max-width:680px;margin-bottom:130px;scroll-margin-top:70px}.case-section h2{letter-spacing:-.9px;margin-bottom:20px;font-size:27px;font-weight:500}.case-section p{color:#b5b8ad;font-size:16px;line-height:1.95}.case-section .button{margin-top:28px}.case-section-wide{max-width:none}.case-section-wide>h2,.case-section-wide>p{max-width:680px}.case-figure{margin:72px 0 0}.case-figure img{border-radius:12px;width:100%;height:auto;display:block}.case-figure figcaption{max-width:680px;margin-bottom:28px}.case-figure-index{font-family:var(--font-mono);color:var(--muted);margin-bottom:12px;font-size:11px;display:block}.case-figure-title{letter-spacing:-.6px;color:var(--foreground);font-size:21px;font-weight:500;display:block}.case-figure figcaption p{margin-top:8px}.case-figure-details{border-top:1px solid var(--line);margin-top:30px}.case-figure-details>div{border-bottom:1px solid var(--line);grid-template-columns:180px 1fr;gap:24px;padding:24px 0;display:grid}.case-figure-details dt{font-family:var(--font-mono);color:var(--muted);font-size:11px;line-height:31px}.case-figure-details dd{color:#b5b8ad;max-width:680px;margin:0;font-size:16px;line-height:1.95}.next-project{border-top:1px solid var(--line);margin-top:45px;padding-top:40px;display:block}.next-project>span{color:var(--muted);font-size:12px}.next-project h2{letter-spacing:-2px;justify-content:space-between;align-items:center;margin-top:15px;font-size:55px;font-weight:500;display:flex}.next-project:hover h2{color:var(--accent)}@media (min-width:1600px){.hero{min-height:780px}.hero h1{font-size:105px}.hero-content{padding-bottom:125px}}@media (max-width:1100px){.container,.nav-inner{width:calc(100% - 72px)}.hero h1{letter-spacing:-4px}.desktop-nav{gap:22px;margin-right:15px}.hero-corner{left:36px}.about-section,.footer-top,.bio-grid{grid-template-columns:1fr 2.4fr;gap:40px}.story-text{font-size:35px}.services-section{gap:55px}.section-heading h2{font-size:40px}.about-details{flex-direction:column;gap:15px}.social-links{gap:16px}.case-body{grid-template-columns:170px 1fr;gap:40px}}@media (max-width:760px){.container,.nav-inner{width:calc(100% - 40px)}.site-header{height:78px}.nav-inner{gap:18px}.wordmark{font-size:15px}.desktop-nav{display:none}.nav-contact{gap:10px;margin-left:auto;padding:10px 14px;font-size:11px}.menu-toggle{width:36px;height:36px;color:var(--foreground);background:0 0;place-items:center;padding:0;display:grid}.mobile-nav:not([hidden]){background:#23251f;border:1px solid #ffffff18;border-radius:16px;flex-direction:column;padding:18px;display:flex;position:absolute;top:68px;left:20px;right:20px;box-shadow:0 20px 40px #0005}.mobile-nav a{justify-content:space-between;padding:17px 10px;font-size:16px;display:flex}.hero{min-height:620px}.hero-content{padding:75px 20px 115px}.hero-eyebrow{letter-spacing:1.6px;margin-bottom:30px;font-size:8px}.hero h1{letter-spacing:-2.7px;font-size:clamp(40px,7.7vw,60px);line-height:1.16}.hero-description{max-width:380px;margin-top:27px;font-size:13px;line-height:1.9}.hero-actions{gap:23px;margin-top:30px}.button{gap:15px;padding:15px 19px}.hero-corner{font-size:10px;bottom:22px;left:20px}.section{padding-block:75px}.section-heading{margin-bottom:30px}.section-heading h2{letter-spacing:-1.8px;font-size:37px}.section-kicker{font-size:11px}.project-list{gap:96px}.project-art{border-radius:8px}.project-caption{grid-template-columns:1fr 24px;gap:12px;margin-top:18px}.project-caption h3{font-size:23px}.project-caption p{grid-row:2;max-width:310px;font-size:12px}.project-caption-arrow{grid-area:1/2}.project-category{font-size:9px}.project-open{display:none}.about-section{grid-template-columns:1fr;gap:32px;padding-block:65px}.section-label{flex-direction:row;justify-content:space-between;align-items:center}.story-text{letter-spacing:-1.3px;font-size:32px;line-height:1.45}.about-details{margin-top:25px}.services-section{grid-template-columns:1fr;gap:15px;padding-block:75px}.section-description{max-width:100%;margin-top:18px}.capability h3{font-size:20px}.site-footer{padding-top:55px}.footer-top{grid-template-columns:1fr;gap:25px}.footer-top>p br{display:none}.footer-contact{letter-spacing:-2px;padding-right:45px;font-size:clamp(40px,8vw,60px)}.footer-contact>svg{width:35px;height:35px;top:6px}.contact-row{flex-direction:column;align-items:flex-start;gap:30px;margin-top:30px}.email-group{font-size:13px}.social-links{flex-wrap:wrap;gap:24px}.physics-wrap{margin-top:55px}.physics-area{height:290px}.skill-object{padding:17px 22px;font-size:13px}.physics-loading{height:392px}.physics-caption{font-size:10px}.footer-bottom{flex-wrap:wrap;gap:18px;padding-block:22px}.footer-bottom>span{order:3;width:100%;font-size:9px}.footer-name{font-size:12px}.back-top{font-size:10px}.inner-page{padding-top:40px;padding-bottom:65px}.page-intro{margin-bottom:40px}.page-intro h1,.contact-intro h1{letter-spacing:-2.5px;font-size:clamp(40px,7.5vw,58px)}.page-intro>p:last-child{font-size:14px}.bio-grid{grid-template-columns:1fr;gap:28px;padding-block:35px}.bio-grid .story-text{font-size:28px}.body-copy{font-size:14px}.experience-heading{align-items:flex-start}.experience-heading h3{font-size:21px}.experience-heading span{font-size:9px}.contact-intro{padding-block:65px}.contact-intro>p:not(.section-kicker){font-size:14px}.back-link{margin-bottom:30px}.case-cover{border-radius:8px}.case-meta{flex-direction:column;align-items:flex-start;padding:25px 0 30px}.case-meta p{font-size:11px}.case-body{margin-top:30px;display:block}.case-contents{border-bottom:1px solid var(--line);flex-flow:wrap;gap:12px 20px;margin-bottom:35px;padding-bottom:25px;display:flex;position:relative;top:auto}.case-contents p{width:100%;margin:0}.case-contents a{font-size:11px}.case-section{margin-bottom:85px}.case-section h2{font-size:24px}.case-section p{font-size:14px}.case-figure{margin:52px 0 0}.case-figure img{border-radius:8px}.case-figure figcaption{margin-bottom:22px}.case-figure-details{margin-top:22px}.case-figure-details>div{grid-template-columns:1fr;gap:8px;padding:20px 0}.case-figure-details dt{line-height:1.4}.case-figure-details dd{font-size:14px}.case-figure-title{font-size:18px}.next-project h2{font-size:42px}}@media (max-width:400px){.nav-contact{display:none}.menu-toggle{margin-left:auto}.hero{min-height:580px}.hero h1{letter-spacing:-2px;font-size:39px}.hero-content{padding-inline:16px}.hero-description{max-width:310px;font-size:12px}.hero-actions{gap:19px}.hero-actions .text-link{font-size:11px}.desktop-break{display:none}.social-links{gap:20px}.story-text{font-size:29px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important;animation:none!important}.project-art img{transform:none!important}.physics-area{height:auto;min-height:230px}.physics-static{padding-top:25px}.skill-object{padding:14px 18px;font-size:12px}.story-text span{opacity:1!important}}.site-header{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#141513f0;height:80px;position:sticky;top:0}.hero{min-height:min(760px,100svh - 80px)}.case-contents{top:115px}.contents-links{flex-direction:column;gap:18px;display:flex}.contents-toggle{display:none}@media (max-width:760px){.site-header{height:78px}.hero{min-height:620px}.case-contents{top:0}.case-contents>p{display:none}.contents-toggle{background:0 0;justify-content:space-between;align-items:center;width:100%;padding:12px 0;font-size:12px;display:flex}.contents-links{width:100%;padding-top:8px;display:none}.contents-links.is-open{gap:16px;display:flex}.hero-description{max-width:355px;font-size:14px}.footer-top>p{line-height:1.8}}@media (max-width:400px){.hero{min-height:580px}.hero-description{max-width:310px;font-size:13px}}.skeleton{isolation:isolate;position:relative}.skeleton-frame{display:block}.skeleton:before{content:"";z-index:0;border-radius:inherit;pointer-events:none;opacity:0;background:linear-gradient(100deg,#0000 20%,#ffffff0e 50%,#0000 80%) 0 0/200% 100%,#1b1c19;animation:.25s .4s forwards skeleton-appear,1.5s ease-in-out .4s infinite skeleton-shimmer;position:absolute;inset:0}.skeleton.is-loaded:before{opacity:0;animation:none}.skeleton-frame>img{z-index:1;position:relative}.case-video>img{z-index:1}.case-video>video{z-index:2}.case-figure .skeleton-frame{border-radius:12px}@keyframes skeleton-appear{to{opacity:1}}@keyframes skeleton-shimmer{0%{background-position:150% 0,0 0}to{background-position:-50% 0,0 0}}@media (prefers-reduced-motion:reduce){.skeleton:before{animation:.25s .4s forwards skeleton-appear}}.page-skeleton{flex-direction:column;display:flex}.skeleton-block{border-radius:8px;max-width:100%;display:block}.resume-button{min-height:52px;margin-top:30px;padding-inline:26px;font-size:13px}.section-bar{display:none}@media (max-width:760px){.case-contents{display:none}.section-bar{left:14px;right:14px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:60;background:var(--glass-bg);border:1px solid var(--glass-line);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);visibility:hidden;border-radius:999px;padding:3px 6px;transition:transform .45s cubic-bezier(.22,1,.36,1),visibility 0s linear .45s;display:block;position:fixed;transform:translateY(calc(100% + 110px))}.section-bar.is-visible{visibility:visible;transition:transform .45s cubic-bezier(.22,1,.36,1),visibility;transform:none}.section-bar-track{scrollbar-width:none;scroll-snap-type:x proximity;gap:2px;display:flex;overflow-x:auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 18px calc(100% - 18px),#0000);mask-image:linear-gradient(90deg,#0000,#000 18px calc(100% - 18px),#0000)}.section-bar-track::-webkit-scrollbar{display:none}.section-bar-track a{scroll-snap-align:center;white-space:nowrap;color:var(--muted);border-radius:999px;flex:none;padding:9px 10px;font-size:13px;transition:background .25s,color .25s}.section-bar-track a[aria-current]{color:var(--accent)}}.contact-actions{flex-wrap:wrap;gap:14px;display:flex}.contact-actions .button{gap:12px;min-height:56px;padding-inline:26px;font-size:14px}.contact-actions .button svg:last-child{margin-left:6px}.button-secondary{color:var(--foreground);background:#ffffff0f;box-shadow:inset 0 0 0 1px #ffffff29}.button-secondary:hover{color:#fff;background:#0a66c2;box-shadow:inset 0 0 0 1px #0a66c2}@media (max-width:760px){.contact-actions .button,.contact-actions .text-link{justify-content:center;width:100%}}.mobile-dock{display:none}@media (max-width:760px){.site-header{display:none}body{padding-bottom:calc(80px + env(safe-area-inset-bottom))}.mobile-dock{left:14px;right:14px;bottom:calc(14px + env(safe-area-inset-bottom));z-index:70;background:var(--glass-bg);border:1px solid var(--glass-line);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);box-shadow:var(--glass-shadow);border-radius:28px;display:block;position:fixed;overflow:hidden}.mobile-dock-panel nav{flex-direction:column;align-items:flex-end;gap:4px;padding:22px 22px 8px;animation:.4s cubic-bezier(.22,1,.36,1) dock-open;display:flex}.mobile-dock-panel nav[hidden]{display:none}.mobile-dock-panel a{letter-spacing:-.5px;color:var(--foreground);padding:9px 0;font-size:22px;transition:color .2s}.mobile-dock-panel a[aria-current]{color:var(--accent)}.mobile-dock-bar{justify-content:space-between;align-items:center;height:56px;padding:0 8px 0 16px;display:flex}.mobile-dock-name{letter-spacing:-.4px;align-items:center;gap:10px;font-size:15px;font-weight:700;display:inline-flex}.mobile-dock-toggle{width:42px;height:42px;color:var(--foreground);background:#ffffff12;border:0;border-radius:50%;place-items:center;display:grid}.mobile-dock-toggle svg{transition:transform .35s cubic-bezier(.22,1,.36,1)}.mobile-dock.is-open .mobile-dock-toggle svg{transform:rotate(180deg)}.mail-fallback{bottom:calc(86px + env(safe-area-inset-bottom))}@keyframes dock-open{0%{opacity:0;transform:translateY(16px)}}}:root{--glass-bg:#1a1a189e;--glass-line:#ffffff1a;--glass-blur:blur(22px) saturate(1.6) brightness(.85);--glass-shadow:0 18px 44px #00000080, inset 0 1px 0 #ffffff0f}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){:root{--glass-bg:#1e1e1c}}
:root{--background:#131313;--surface:#202020;--foreground:#eeede8;--muted:#aaa9a4;--lavender:#c8aff8;--yellow:#fff098}.site-header{-webkit-backdrop-filter:none;backdrop-filter:none;pointer-events:none;background:0 0;height:90px;padding-top:10px}.nav-inner{pointer-events:auto;border:1px solid #0000;border-radius:60px;height:70px;padding:0 14px;transition:width .65s cubic-bezier(.22,1,.36,1),background .5s,border-color .5s,height .5s}.site-header.is-compact .nav-inner{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#202020ed;border-color:#ffffff12;width:min(740px,100% - 40px);height:60px}.wordmark{align-items:center;gap:10px;min-width:155px;display:inline-flex;position:relative}.wordmark-text{position:relative}.orb-mark{border-radius:50%;flex:none;box-shadow:0 0 14px #78b4ff59}.wordmark-full{transition:opacity .25s,transform .4s;display:inline-block}.wordmark-short{opacity:0;letter-spacing:inherit;white-space:nowrap;transition:opacity .3s;position:absolute;top:0;left:0}.is-compact .wordmark-full{opacity:0;transform:translateY(-8px)}.is-compact .wordmark-short{opacity:1}.desktop-nav{gap:30px;margin-inline:auto}.nav-label{height:20px;display:block;overflow:hidden}.nav-label>span{line-height:20px;transition:transform .4s cubic-bezier(.22,1,.36,1);display:block}.desktop-nav a:hover .nav-label>span,.desktop-nav a:focus-visible .nav-label>span,.wordmark:hover .nav-label>span,.wordmark:focus-visible .nav-label>span{transform:translateY(-100%)}.mobile-nav{pointer-events:auto}.hero{background:#191b19;border:1px solid #ffffff0c;border-radius:26px;min-height:min(820px,100svh - 112px);margin:4px 20px 0}.dither-canvas{z-index:0;opacity:.85;-webkit-mask-image:none;mask-image:none}.hero-liquid{width:100%}.hero-content{padding:100px 24px 110px}.hero-eyebrow{margin-bottom:38px}.hero h1{letter-spacing:-.075em;font-size:clamp(60px,7.6vw,118px);font-weight:450;line-height:1.07}.hero h1 .hero-line{color:var(--foreground);white-space:nowrap;display:block}.hero h1 .rolling-words span{color:#fff}.hero h1 .word-intro{margin-block:-.12em;padding-block:.12em;display:block;overflow:clip}.hero h1 .word-intro.is-done{overflow:visible}.hero h1 .hero-letter{color:inherit;transition:transform .3s ease-out,text-shadow .3s;display:inline-block}.word-stage{vertical-align:bottom;text-align:left;width:4.55em;height:1.22em;margin-bottom:-.08em;margin-left:.13em;display:inline-block;position:relative}.hero h1 .rotating-word{white-space:nowrap;display:inline-block}.word-serif{font-family:var(--font-serif), serif;letter-spacing:-.035em;font-size:1.11em;line-height:1}.word-pixel{font-family:var(--font-pixel), monospace;letter-spacing:-.085em;padding-top:.28em;font-size:.66em}.word-code{font-family:var(--font-mono);letter-spacing:-.07em;padding-top:.15em;font-size:.73em}.hero-description{color:#bfc1b9;margin-top:35px}.hero-actions{margin-top:34px}:is(button,.button,.nav-contact,.text-link,.social-links a,.back-top){isolation:isolate;position:relative;overflow:hidden}:is(button,.button,.nav-contact,.text-link,.social-links a,.back-top):before{content:"";pointer-events:none;z-index:-1;top:var(--ripple-y,50%);left:var(--ripple-x,50%);width:var(--ripple-size,400px);height:var(--ripple-size,400px);background:var(--ripple-color,#c8aff833);border-radius:50%;transition:transform .65s cubic-bezier(.2,.7,.2,1);position:absolute;transform:translate(-50%,-50%)scale(0)}:is(button,.button,.nav-contact,.text-link,.social-links a,.back-top):hover:before,:is(button,.button,.nav-contact,.text-link,.social-links a,.back-top):focus-visible:before{transform:translate(-50%,-50%)scale(1)}.button,.nav-contact{--ripple-color:#c8aff8}.button:hover,.nav-contact:hover{transform:none}.click-ripple{pointer-events:none;opacity:0;background:currentColor;border-radius:50%;animation:.7s ease-out click-ripple;position:absolute;transform:translate(-50%,-50%)scale(0)}@keyframes click-ripple{0%{opacity:.25;transform:translate(-50%,-50%)scale(0)}to{opacity:0;transform:translate(-50%,-50%)scale(1)}}.project-link{--project-accent:var(--accent);position:relative}.case-meta{--project-accent:var(--accent);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:44px 64px;padding-block:64px;display:grid}.case-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:32px 0 0;display:grid}.case-metric{background:#1e1e1d;border-radius:10px;flex-direction:column;justify-content:space-between;gap:32px;min-width:0;min-height:170px;padding:28px;display:flex}.case-metric dt{color:var(--muted);font-size:15px;line-height:1.5}.case-metric dd{color:var(--project-accent);letter-spacing:-.04em;flex-wrap:wrap;order:-1;align-items:baseline;gap:8px 12px;margin:0;font-size:clamp(24px,2.1vw,30px);line-height:1.3;display:flex}.case-metric s{color:#b8b8b5;text-decoration-thickness:1px}@media (max-width:600px){.case-metrics{grid-template-columns:1fr;gap:12px}.case-metric{min-height:150px;padding:24px}}.case-meta>div>span{text-transform:uppercase;letter-spacing:.06em;font-size:11px}.case-meta p{max-width:480px;margin-top:16px;font-size:16px;line-height:1.7}.project-tools,.project-platforms{flex-wrap:wrap;gap:8px;margin:12px 0 0 -8px;padding:0;list-style:none;display:flex}.project-platforms{margin-bottom:8px}.project-tool,.platform-icon{width:40px;height:40px;color:var(--foreground);border-radius:8px;place-items:center;display:grid;position:relative}.project-tool>svg{stroke-width:0;transition:transform .18s}.platform-icon>svg{transition:transform .18s}.project-tool:is(:hover,:focus-visible)>svg,.platform-icon:is(:hover,:focus-visible)>svg{transform:scale(1.12)}.project-tool-label,.platform-label{background:var(--foreground);color:var(--background);white-space:nowrap;visibility:hidden;pointer-events:none;z-index:2;border-radius:7px;padding:5px 9px;font-size:12px;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}.project-tool:is(:hover,:focus-visible) .project-tool-label,.platform-icon:is(:hover,:focus-visible) .platform-label{visibility:visible}@media (prefers-reduced-motion:reduce){.platform-icon:is(:hover,:focus-visible)>svg{transform:none}}@media (max-width:600px){.case-meta{grid-template-columns:1fr;gap:32px;padding-block:36px}}@media (prefers-reduced-motion:reduce){.project-tool:is(:hover,:focus-visible)>svg{transform:none}}.case-meta .project-tags{margin-top:12px}.project-nextphase{--project-accent:#f3cf98}.project-solar-cad-studio{--project-accent:#a9e9c6}.project-marketing-hub{--project-accent:#aecbff}.project-connectin{--project-accent:#e2f3a0}.project-communication-hub{--project-accent:#bfc5ff}.project-scanme{--project-accent:var(--lavender)}.project-cursor{z-index:3;pointer-events:none;white-space:nowrap;background:var(--project-accent);color:#202020;opacity:0;border-radius:100px;align-items:center;gap:14px;padding:14px 20px;font-size:12px;transition:opacity .2s,scale .3s;display:none;position:absolute;translate:-50% -50%;scale:.7}.project-open{display:none}.project-tags{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.project-tags>span{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.4px;color:#bcbbb6;border:1px solid #ffffff24;border-radius:6px;align-items:center;gap:7px;padding:6px 10px;font-size:9px;transition:border-color .3s,color .3s,transform .3s;display:inline-flex}.project-tags>span>span{color:var(--project-accent);font-size:13px}.project-link:hover .project-tags>span,.case-meta .project-tags>span:hover{border-color:var(--project-accent);color:var(--project-accent)}.project-outcome{color:var(--project-accent);margin-top:5px;transition:color .3s,transform .3s;display:block}.project-link:hover .project-outcome{transform:translate(5px)}.project-caption{margin-top:18px}.project-caption p{max-width:430px}.services-section{display:block}.services-section>div:first-child .section-heading{justify-content:space-between;align-items:end;gap:40px;display:flex}.service-cards{perspective:1000px;grid-template-columns:repeat(2,minmax(0,1fr));gap:35px;display:grid}.service-cards>div{min-width:0}.service-card{color:#242027;height:100%;min-height:470px;transform-style:preserve-3d;border-radius:22px;flex-direction:column;padding:38px;display:flex}.lavender{--service-color:var(--lavender)}.yellow{--service-color:var(--yellow)}.service-card{background:var(--service-color)}.service-label{font:11px var(--font-mono);letter-spacing:1px;text-transform:uppercase;margin-bottom:27px}.service-card h3{letter-spacing:-1.3px;max-width:400px;font-size:clamp(26px,2.5vw,35px);font-weight:500;line-height:1.22}.service-description{margin:30px 0 50px;font-size:17px;line-height:1.65}.service-button{color:#242027;background:#e0cffb;align-self:flex-start;margin-top:auto;padding:13px 19px}.service-button:hover{background:#ece2ff}.yellow .service-button{background:#fff7bc}.service-principles{grid-template-columns:repeat(2,minmax(0,1fr));gap:65px 90px;padding:45px 0 130px;display:grid}.principle-number{font:11px var(--font-mono);color:var(--accent)}.service-principles h2{letter-spacing:-.6px;margin:20px 0 15px;font-size:24px;font-weight:500}.service-principles p{color:var(--muted);line-height:1.9}.services-overview{margin-bottom:130px}.service-detail{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:70px;padding:80px 0;scroll-margin-top:90px;display:grid}.service-detail-tags{font:10px var(--font-mono);color:var(--service-color);flex-wrap:wrap;gap:8px;margin-bottom:30px;display:flex}.service-detail-tags span{border:1px solid #ffffff24;border-radius:20px;padding:7px 10px}.service-detail h2{color:var(--service-color);letter-spacing:-2px;font-size:48px;font-weight:500}.service-detail-intro{margin-top:20px;font-size:23px;line-height:1.5}.service-detail>div:last-child>p{color:var(--muted);line-height:1.9}.service-detail h3{margin-top:30px;font-size:14px;font-weight:500}.service-detail ul{margin:22px 0 35px;padding:0;list-style:none}.service-detail li{color:var(--muted);gap:12px;margin-bottom:16px;font-size:14px;line-height:1.8;display:flex}.service-detail li svg{color:var(--service-color);margin-top:4px}.service-detail .service-button{background:var(--service-color)}.focused-services{padding-block:100px}.focused-services .story-text{max-width:760px}.focused-grid{grid-template-columns:1fr 1fr;gap:70px;margin-top:55px;display:grid}.focused-grid h3{margin-bottom:20px;font-size:25px;font-weight:500}.focused-grid p{color:var(--muted);margin-bottom:20px;line-height:1.9}.services-faq{max-width:820px;padding-block:40px}.services-faq h2{letter-spacing:-1px;margin-bottom:30px;font-size:36px;font-weight:500}.services-faq details{border-bottom:1px solid var(--line)}.services-faq summary{cursor:pointer;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;font-size:17px;list-style:none;display:flex}.services-faq summary::-webkit-details-marker{display:none}.services-faq summary span{color:var(--accent);font-size:24px;transition:transform .3s}.services-faq details[open] summary span{transform:rotate(45deg)}.services-faq details p{color:var(--muted);padding-bottom:25px;line-height:1.9;animation:.4s both page-enter}.site-footer{background:#101010;padding-top:90px;overflow:clip}.footer-top{display:block}.footer-top>p{margin-bottom:22px}.footer-contact{letter-spacing:-.06em;gap:.2em;padding-right:90px;font-size:clamp(48px,7vw,100px);display:inline-flex}.footer-contact>svg{width:60px;height:60px;top:20px}.contact-row{flex-wrap:wrap;justify-content:flex-start;gap:18px 30px;margin-top:35px}.email-group{background:#1b1b1b;border-radius:12px;gap:3px;padding-inline:14px 5px;transition:background .3s}.email-group:hover,.email-group:focus-within{background:#292929}.email-group>a{align-items:center;gap:10px;padding-block:14px;font-size:12px;display:inline-flex}.copy-button{opacity:0;border:0;border-radius:6px;width:34px;height:38px;transition:opacity .25s,transform .25s;transform:translate(-7px)}.email-group:hover .copy-button,.email-group:focus-within .copy-button{opacity:1;transform:none}.copy-status{top:53px;left:10px}.social-links{gap:12px}.social-links a{background:#1b1b1b;border-radius:12px;gap:8px;padding:15px 13px;font-size:12px}.social-links a svg:last-child{opacity:0;transition:transform .25s,opacity .25s;transform:translate(-6px,4px)}.social-links a:hover svg:last-child,.social-links a:focus-visible svg:last-child{opacity:1;transform:none}.footer-signature{white-space:nowrap;color:#666;letter-spacing:-.065em;-webkit-user-select:none;user-select:none;margin:70px -1vw 0;font-size:clamp(50px,12.1vw,178px);font-weight:650;line-height:1.1}.physics-wrap{margin-top:55px}.physics-area{height:460px}.physics-loading{height:562px}.skill-object{letter-spacing:-.2px;padding:17px 14px;font-size:12px}.physics-static{align-content:flex-start;padding-top:30px}.skill-1{color:#c7b1ef;background:#242127}.skill-2{color:#a1dbc0;background:#1d2723}.about-playground{margin:65px 0 85px}.about-playground>p{text-align:center;color:var(--muted);padding-top:70px;font-size:23px}.about-playground .physics-caption{display:none}.bio-grid .story-text{margin-bottom:45px;line-height:1.6}.experience>div>div+div{margin-top:55px}.page-transition{animation:.65s cubic-bezier(.22,1,.36,1) both page-enter}@keyframes page-enter{0%{opacity:.2;filter:blur(3px);transform:translateY(22px)}to{opacity:1;filter:none;transform:none}}.route-loading{min-height:65vh;padding-block:100px}.route-loading p{color:var(--muted);margin-bottom:45px}.route-loading>span{background:#242424;border-radius:8px;width:80%;height:60px;margin-bottom:20px;animation:1s ease-in-out infinite alternate loading-breathe;display:block}.route-loading>span:last-child{width:50%}@keyframes loading-breathe{to{opacity:.3}}@media (hover:hover) and (pointer:fine){.project-cursor{display:flex}.project-link:hover{cursor:none}.project-link:hover .project-cursor{opacity:1;scale:1}}@media (max-width:1000px){.service-card{min-height:440px;padding:30px}.service-description{font-size:15px}.service-detail{gap:35px}.contact-row{gap:25px}}@media (max-width:760px){.site-header{height:78px;padding-top:4px}.nav-inner{gap:12px;height:66px;padding-inline:0}.is-compact .nav-inner{padding-inline:15px}.wordmark{flex-shrink:0;min-width:0}.wordmark-short{left:0}.hero{border-radius:19px;min-height:610px;margin:0 10px}.hero-content{padding:85px 12px 100px}.hero h1{letter-spacing:-.07em;font-size:clamp(39px,8.3vw,65px)}.hero-eyebrow{letter-spacing:1.1px;font-size:8px}.hero-description{padding-inline:10px}.hero-actions{gap:16px}.hero-actions .button{padding-inline:16px;font-size:11px}.hero-actions .text-link{font-size:11px}.services-section>div:first-child .section-heading{display:block}.service-cards{grid-template-columns:1fr;gap:22px}.service-card{min-height:395px;padding:30px}.service-card h3{font-size:31px}.service-description{font-size:16px}.service-principles{grid-template-columns:1fr;gap:40px;padding-bottom:75px}.services-overview{margin-bottom:65px}.service-detail{grid-template-columns:1fr;gap:30px;padding-block:55px}.service-detail h2{font-size:40px}.focused-services{padding-block:65px}.focused-grid{grid-template-columns:1fr;gap:35px}.services-faq h2{font-size:30px}.services-faq summary{font-size:15px}.footer-contact{letter-spacing:-.06em;padding-right:55px;font-size:clamp(45px,10vw,70px)}.footer-contact>svg{width:36px;height:36px;top:8px}.contact-row{gap:25px}.social-links{gap:7px}.social-links a{padding-inline:10px;font-size:11px}.footer-signature{margin-top:60px;font-size:11.3vw}.physics-area{height:440px}.skill-object{padding:17px 18px;font-size:12px}.about-playground{margin-block:0 50px}.about-playground>p{padding-top:30px;font-size:18px}}@media (hover:none){.copy-button,.social-links a svg:last-child{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.page-transition,.route-loading>span,.click-ripple{animation:none}.hero-letter{text-shadow:none!important;transform:none!important}.rotating-word{opacity:1!important;filter:none!important;transform:none!important}.physics-area,.about-playground .physics-area{height:auto;min-height:160px}.physics-loading{height:250px}.project-cursor{transition:none}}html[data-opening=intro],html[data-opening=wipe]{overflow:hidden}.opening-screen{z-index:100;color:var(--foreground);isolation:isolate;place-items:center;display:grid;position:fixed;inset:0}.opening-backdrop{z-index:-1;background:#111;position:absolute;inset:0}.opening-center{text-align:center;padding:24px}.opening-orb{width:64px;height:64px;margin:0 auto 32px;transform:scale(1.35)}.opening-name{letter-spacing:-.055em;justify-content:center;font-size:clamp(30px,5.5vw,78px);font-weight:500;display:flex}.opening-name>span{animation:.85s cubic-bezier(.22,1,.36,1) both name-arrive;animation-delay:calc(var(--letter) * 35ms);display:inline-block}.opening-caption{color:var(--muted);font:10px var(--font-mono);letter-spacing:.8px;margin-top:25px;animation:.6s .5s both opening-caption}.opening-skip{font:11px var(--font-mono);color:var(--foreground);z-index:3;background:0 0;align-items:center;gap:20px;padding:14px;display:flex;position:absolute;bottom:35px;right:40px}.opening-skip:focus-visible{outline-color:var(--accent)}.opening-panels{pointer-events:none;z-index:2;display:flex;position:absolute;inset:0;overflow:hidden}.opening-panels>span{background:var(--accent);flex:1;margin-right:-1px;transform:translateY(101%)}.opening-wipe .opening-panels>span{animation:1.02s cubic-bezier(.65,0,.25,1) both staggered-open;animation-delay:calc(var(--panel) * 75ms)}.opening-wipe .opening-center,.opening-wipe .opening-skip{animation:.25s both opening-dismiss}.opening-wipe .opening-backdrop{animation:10ms .62s forwards backdrop-dismiss}@keyframes name-arrive{0%{opacity:0;filter:blur(8px);transform:translateY(28px)rotateX(-65deg)}to{opacity:1;filter:none;transform:none}}@keyframes opening-caption{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes staggered-open{0%{transform:translateY(101%)}43%,55%{transform:translateY(0)}to{transform:translateY(-101%)}}@keyframes opening-dismiss{to{opacity:0;transform:translateY(-15px)}}@keyframes backdrop-dismiss{to{opacity:0}}html[data-opening=intro] .hero-content{opacity:0;transform:translateY(25px)}html[data-opening=wipe] .hero-content{animation:.9s .65s both hero-unveil}@keyframes hero-unveil{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:none}}.scroll-reveal{transition:opacity .85s cubic-bezier(.22,1,.36,1),transform .85s cubic-bezier(.22,1,.36,1),filter .85s cubic-bezier(.22,1,.36,1)}.scroll-reveal[data-revealed=false]{opacity:0;filter:blur(5px);transform:translateY(36px)}.scroll-reveal[data-revealed=true],.scroll-reveal:focus-within{opacity:1;filter:none;transform:none}@media (max-width:760px){.opening-skip{bottom:22px;right:18px}.opening-orb{margin-bottom:28px}.opening-caption{font-size:9px}}@media (prefers-reduced-motion:reduce){.opening-screen{display:none}.scroll-reveal[data-revealed],html[data-opening] .hero-content{opacity:1;filter:none;transform:none}}.opening-screen .opening-skip{position:absolute}.hero{border:0;align-items:stretch}.hero-liquid{min-height:inherit;align-items:stretch;display:flex}.hero-liquid>div{min-height:inherit;justify-content:center;align-items:center;display:flex}.hero-content{width:100%}.word-stage{width:5.15em;margin-left:.18em}.word-pixel{letter-spacing:-.09em;transform-origin:0;padding-top:.12em;font-size:.86em}.word-code{letter-spacing:-.08em;padding-top:.02em;font-size:.94em}.hero h1{font-size:clamp(52px,7vw,108px)}.text-link{border-radius:999px;justify-content:center;min-height:52px;padding:16px 22px}.contact-actions .text-link .contact-brand-icon{transform:none}:is(.hero-actions,.contact-actions) .text-link{--ripple-color:var(--lavender)}:is(.hero-actions,.contact-actions) .text-link:is(:hover,:focus-visible){color:#242027}.hero-actions .button,.hero-actions .text-link{min-height:52px}.project-tags>span{border-radius:999px;padding:8px 13px}.project-outcome,.case-meta .project-outcome{color:var(--project-accent);letter-spacing:-.035em;margin-top:12px;font-size:clamp(20px,1.8vw,27px);line-height:1.4}.about-section,.services-section,.work-section,.bio-grid,.experience article,.footer,.footer-bottom,.next-project{border:0}.about-section{padding-block:130px}.bio-grid{padding-block:100px}.bio-grid>div>.story-text{min-height:0;margin:0 0 40px;padding-block:0;display:block}.experience article{padding-block:70px}.service-card{isolation:isolate;position:relative;overflow:hidden}.service-card:before{content:"";z-index:-1;opacity:.16;pointer-events:none;background-image:radial-gradient(#252128 .7px,#0000 .9px);background-size:5px 5px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(135deg,#0000 30%,#000);mask-image:linear-gradient(135deg,#0000 30%,#000)}.service-card:after{content:"+ : . + : . + : . + : . + : .";width:160px;font:20px/1.8 var(--font-mono);letter-spacing:12px;opacity:.1;pointer-events:none;z-index:-1;position:absolute;bottom:20px;right:18px}.service-button{--ripple-color:#ece2ff}.service-button:is(:hover,:focus-visible){background:#ece2ff}.yellow .service-button{--ripple-color:#fffbdc}.yellow .service-button:is(:hover,:focus-visible){background:#fffbdc}.service-detail{scroll-margin-top:115px}.footer-signature{color:#858585}.email-group{border-radius:999px;gap:0;padding-inline:16px}.copy-button{width:0;min-width:0;margin:0;padding:0;transition:width .25s,margin .25s,opacity .25s}.copy-button svg{flex-shrink:0}.email-group:hover .copy-button,.email-group:focus-within .copy-button{width:32px;margin-left:8px}.social-links a{border-radius:999px;gap:0;padding:15px 16px}.social-links a svg:first-child{flex-shrink:0;margin-right:8px}.social-links a svg:last-child{width:0;margin-left:0;transition:width .25s,margin .25s,opacity .25s,transform .25s}.social-links a:hover svg:last-child,.social-links a:focus-visible svg:last-child{width:14px;margin-left:8px}.skill-object{background:var(--project-accent,var(--lavender));color:#20221e;padding:18px 21px;font-size:14px;font-weight:600}.physics-static{justify-content:center}.physics-greeting{text-align:center;white-space:nowrap;margin:0;padding:8px 15px;font-size:clamp(28px,4vw,52px);font-weight:500;line-height:1.3;position:absolute;top:45%;left:50%;transform:translate(-50%)}.physics-greeting span{color:var(--muted);margin-top:8px;font-size:14px;display:block}.about-playground .physics-area{height:650px}.working-story{padding-block:70px 150px}.work-facts{grid-template-columns:1fr 1fr;align-items:center;gap:60px;padding-bottom:160px;display:grid}.work-facts strong{letter-spacing:-.07em;font-size:clamp(90px,12vw,170px);font-weight:450;line-height:1}.work-facts strong span{color:var(--accent)}.work-facts p{color:var(--muted);max-width:370px;line-height:1.7}.work-stack{padding-top:65px}.work-stack article{background:var(--background,#111);border-radius:24px 24px 0 0;min-height:65svh;padding:45px 7% 100px;position:sticky}.work-stack h2{letter-spacing:-.05em;margin:20px 0 28px;font-size:clamp(30px,4vw,56px);font-weight:450}.work-stack .story-text{max-width:880px;font-size:clamp(23px,2.7vw,38px)}.principle-journey{height:300svh;margin:50px 0 130px}.principle-sticky{flex-direction:column;justify-content:center;align-items:center;height:calc(100svh - 120px);display:flex;position:sticky;top:100px;overflow:hidden}.principle-arc{flex:none;width:100%;height:auto;display:block;overflow:visible}.principle-panels{width:min(480px,85%);min-height:220px;margin-top:-4px;position:relative}.principle-panels article{position:relative}.principle-panels h2{letter-spacing:-.04em;margin:8px 0 12px;font-size:20px;font-weight:550}.principle-panels .principle-number{color:var(--muted)}.principle-panels p{color:var(--muted);font-size:17px;line-height:1.65}.typed-line{display:block}.route-sweep{z-index:90;pointer-events:none;animation:1.2s forwards sweep-hide;position:fixed;inset:0;overflow:hidden}.route-sweep span{transform-origin:top;background:#292a29;animation:1s cubic-bezier(.76,0,.24,1) both sweep-out;position:absolute;inset:-10%}.route-sweep span:last-child{background:#3b3c3b;animation-delay:-.12s}@keyframes sweep-out{0%,12%{transform:translateY(0)}to{transform:translateY(110%)}}@keyframes sweep-hide{99%{visibility:visible}to{visibility:hidden}}@media (hover:none){.copy-button{opacity:1;width:32px;margin-left:8px}.social-links a svg:last-child{opacity:1;width:14px;margin-left:8px}}@media (max-width:700px){.hero h1{font-size:clamp(31px,7.4vw,52px)}.hero-content{padding-inline:12px}.hero h1 .hero-line{white-space:normal}.hero .word-stage{text-align:center;width:max-content;max-width:100%;min-height:1.3em;margin-inline:auto;display:block}.hero-actions{gap:8px}.hero-actions .text-link{padding:16px 22px}.about-section,.bio-grid{padding-block:65px}.bio-grid>div>.story-text{min-height:0;margin-bottom:28px;padding-block:0}.work-facts{grid-template-columns:1fr;gap:25px;padding-bottom:90px}.work-stack article{min-height:65svh;padding:30px 15px 70px}.principle-arc{width:100%;margin-bottom:24px}.principle-panels p{font-size:16px}.about-playground .physics-area{height:600px}.skill-object{padding:15px 17px;font-size:12px}}@media (prefers-reduced-motion:reduce){.route-sweep{display:none}.typed-line>span{animation:none}.work-stack article{min-height:auto;position:relative;top:auto!important}.principle-journey{height:auto}.principle-sticky{height:auto;position:relative;top:auto;overflow:visible}.principle-arc{display:none}.principle-panels article{opacity:1;margin-bottom:65px;position:relative;transform:none}}.journey-static{height:auto}.journey-static .principle-sticky{height:auto;position:relative;top:auto;overflow:visible}.journey-static .principle-arc{display:none}.journey-static .principle-panels article{opacity:1;margin-bottom:65px;position:relative;transform:none}.site-footer{border-top:0}.email-group.is-expanded .copy-button{opacity:1;width:32px;margin-left:8px;transform:none}@media (max-width:700px){.hero h1{font-size:clamp(36px,8.6vw,52px)}}.service-detail{border-top:0;padding-block:100px}.copy-button[aria-disabled=true]{pointer-events:none}.rolling-mask{vertical-align:bottom;margin-block:-.12em;margin-inline:-.08em;padding-block:.12em;padding-inline:.08em;display:inline-block;overflow:clip}.rolling-word{display:inline-block}.contact-row.social-links{flex-wrap:wrap;gap:12px;display:flex}.journey-static .principle-panels{min-height:0}.mail-fallback{z-index:1000;width:min(520px,100vw - 32px);color:var(--foreground);background:#20211f;border:1px solid #ffffff24;border-radius:20px;grid-template-columns:42px minmax(0,1fr) 36px;gap:14px;padding:20px;font-size:13px;animation:.35s cubic-bezier(.22,1,.36,1) mail-fallback-in;display:grid;position:fixed;bottom:28px;left:50%;translate:-50%;box-shadow:0 16px 48px #0008}.mail-fallback-icon{width:42px;height:42px;color:var(--accent);background:#dce49c12;border-radius:13px;place-items:center;display:grid}.mail-fallback-message{min-width:0;line-height:1.6}.mail-fallback-message p{color:#b9bbb3;margin:0}.mail-fallback-message .mail-fallback-title{color:var(--foreground);margin-bottom:5px;font-size:15px;font-weight:650}.mail-fallback strong{color:var(--accent);overflow-wrap:anywhere;-webkit-user-select:text;user-select:text;margin-top:4px;font-weight:500;display:block}.mail-fallback-actions{flex-wrap:wrap;grid-column:2/4;gap:8px;display:flex}.mail-fallback-actions a,.mail-fallback-actions button{min-height:40px;color:var(--foreground);font:inherit;white-space:nowrap;cursor:pointer;background:#ffffff09;border:1px solid #ffffff14;border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:8px 13px;font-size:12px;transition:background .2s,color .2s;display:inline-flex}.mail-fallback-actions a:hover,.mail-fallback-actions button:hover{background:var(--accent);color:#202217}.mail-fallback .mail-fallback-close{color:#b9bbb3;cursor:pointer;background:0 0;border:1px solid #ffffff14;border-radius:50%;grid-area:1/3;align-self:start;place-items:center;width:36px;height:36px;padding:0;transition:background .2s,color .2s;display:grid}.mail-fallback .mail-fallback-close:hover{color:#fff;background:#ffffff12}.mail-fallback :is(a,button):focus-visible{outline:2px solid var(--accent);outline-offset:3px}@keyframes mail-fallback-in{0%{opacity:0;transform:translateY(16px)}}@media (max-width:760px){.mail-fallback{bottom:calc(86px + env(safe-area-inset-bottom));grid-template-columns:36px minmax(0,1fr) 36px;gap:12px;padding:16px}.mail-fallback-icon{width:36px;height:36px}.mail-fallback-actions{grid-column:1/-1}.mail-fallback-actions>*{flex:1}}@media (prefers-reduced-motion:reduce){.mail-fallback{animation:none}}.button{letter-spacing:-.1px;font-size:13px;font-weight:700}.nav-contact,.text-link,.social-links a,.back-top,.mail-fallback-actions a,.mail-fallback-actions button{font-weight:600}.section-bar-track a{font-weight:500}.section-bar-track a[aria-current]{font-weight:700}body:has(.not-found-page) .site-footer{display:none}.not-found-page{text-align:center;place-items:center;min-height:calc(100svh - 90px);padding:50px 24px 120px;display:grid}.not-found-content{width:100%}.not-found-code{cursor:pointer;-webkit-user-select:none;user-select:none;color:#515151;letter-spacing:-.065em;padding-right:.065em;font-size:clamp(150px,32vw,460px);font-weight:500;line-height:.95;position:relative}.not-found-particles{opacity:0;pointer-events:none;touch-action:pan-y;width:100%;height:100%;position:absolute;left:0}.has-particles .not-found-fallback{opacity:0}.has-particles .not-found-particles{opacity:1}.not-found-content>p{max-width:380px;color:var(--muted);text-wrap:balance;margin:40px auto 24px;font-size:14px;line-height:1.7}.not-found-page .not-found-home{background:var(--foreground);color:var(--background);min-height:44px;padding:12px 22px}@media (max-width:600px){.not-found-page{min-height:calc(100svh - 78px);padding:32px 24px 110px}.not-found-content>p{max-width:270px;margin-top:28px}}
.principle-print{display:none}@media print{@page{size:A4;margin:10mm;background:#131313}html,body{color:var(--foreground);background:var(--background)!important;scroll-behavior:auto!important;height:auto!important;padding-bottom:0!important;overflow:visible!important}*,:before,:after{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important;transition:none!important;animation:none!important}body .site-experience,body .site-experience [data-reveal][data-revealed],body .site-experience [data-reveal],body .site-experience :is(.page-intro,.contact-intro,.section-label,.about-details,.story-text,.story-text span,.bio-grid>*,.experience article,.case-meta,.footer-top,.contact-row,.footer-signature,.services-faq>*,.rolling-word,.rotating-word,.word-intro>span,.hero-letter,.skeleton img,.service-card){opacity:1!important;visibility:visible!important;filter:none!important;clip-path:none!important;transform:none!important}.opening-screen,.route-sweep,.skip-link,.mobile-dock,.mobile-nav,.menu-toggle,.section-bar,.mail-fallback,.case-contents,.project-cursor,.project-open,.copy-button,.copy-status,.reset-physics,.physics-loading,.back-top,.principle-sticky,video,nextjs-portal,.skeleton:before,.ripple-control:before,.ripple-control:after{display:none!important}.container{width:100%!important;max-width:none!important}.inner-page{padding:20px 0 0!important}.site-header{height:72px!important;padding:0!important;display:block!important;position:static!important}.site-header .nav-inner{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:0 0!important;border:0!important;width:100%!important;height:60px!important;padding:0!important}.site-header .wordmark-full{opacity:1!important;transform:none!important}.wordmark-short{display:none!important}.desktop-nav{gap:18px!important;display:flex!important}.nav-contact{display:inline-flex!important}.hero{break-inside:avoid;min-height:0!important;margin:0 0 32px!important}.hero-content{padding:48px 18px!important}.hero h1{font-size:48px!important}.hero h1 .hero-line{white-space:normal!important}.hero-eyebrow{margin-bottom:24px!important;font-size:10px!important}.hero-description{margin:24px auto!important;font-size:14px!important}.hero-actions{margin-top:24px!important}.hero canvas{display:none!important}.hero{background-color:#191b19;background-image:radial-gradient(#b6bca52b .7px,#0000 .9px);background-size:7px 7px}.word-stage{width:auto!important}.rotating-word{position:static!important}.page-intro,.contact-intro{margin:0 0 32px!important;padding:16px 0!important}.page-intro h1,.contact-intro h1{font-size:46px!important}.section,.working-story,.services-overview,.focused-services,.services-faq{margin-block:0!important;padding-block:28px!important}.section-heading{margin-bottom:24px!important}.section-heading h2{font-size:32px!important}h1,h2,h3,summary{break-after:avoid}p,li,dd{orphans:3;widows:3}.project-list{display:block!important}.project-entry{break-inside:auto!important;margin-bottom:36px!important}.project-art,.case-cover,.case-figure .skeleton-frame{break-inside:avoid}.project-art{break-after:avoid}.project-caption{break-inside:avoid;grid-template-columns:1fr 1fr!important;gap:18px!important;display:grid!important}.project-caption h3{font-size:24px!important}.project-caption p{font-size:13px!important}.project-outcome,.case-meta .project-outcome{font-size:20px!important}.project-caption-arrow{display:none}.project-tags{gap:6px!important;margin-block:12px!important}.project-tags>span{padding:8px 10px!important}img{opacity:1!important;max-width:100%!important}.project-art img,.case-figure img,.case-video img{object-fit:contain!important;width:100%!important;height:auto!important;max-height:145mm!important;display:block!important;position:static!important;transform:none!important}.case-video{aspect-ratio:auto!important}.case-body{display:block!important}.case-section{max-width:none!important;margin-bottom:32px!important}.case-section p{line-height:1.7!important}.case-meta,.case-metrics{break-inside:avoid;grid-template-columns:1fr 1fr!important;gap:24px!important;padding-block:28px!important}.case-metric{min-height:120px!important;padding:22px!important}.case-figure{margin-top:28px!important}.case-figure figcaption,.case-figure-details>div{break-inside:avoid}.about-section,.bio-grid,.service-detail{gap:24px!important;padding-block:28px!important}.service-cards{grid-template-columns:1fr 1fr!important;gap:20px!important}.service-card{break-inside:avoid;min-height:310px!important;padding:24px!important}.service-card h3{font-size:25px!important}.service-description{margin-top:20px!important;font-size:14px!important}.work-stack article{break-inside:avoid;min-height:0!important;margin-bottom:20px!important;padding:24px!important;position:static!important}.work-stack{padding-bottom:0!important}.principle-journey{height:auto!important;margin:24px 0!important}.principle-print{grid-template-columns:1fr 1fr;gap:24px;display:grid}.principle-print article{break-inside:avoid}.principle-print h2{margin:10px 0;font-size:23px}.principle-print p{color:var(--muted);line-height:1.65}.work-facts strong{font-size:0!important}.work-facts strong>*{display:none}.work-facts strong:after{content:attr(aria-label);font-size:48px}details{break-inside:avoid}details::details-content{content-visibility:visible!important;display:block!important}details>:not(summary){display:block!important}.physics-area,.about-playground .physics-area{height:auto!important;min-height:0!important;overflow:visible!important}.physics-wrap{margin:24px 0!important}.physics-static{gap:10px;flex-wrap:wrap!important;height:auto!important;display:flex!important}.physics-area .physics-static .skill-object{position:static!important;transform:none!important}.physics-greeting{font-size:44px!important;position:static!important}.site-footer{padding:32px 0 0!important}.footer-contact{font-size:50px!important}.footer-signature{margin-block:28px!important;font-size:68px!important}.contact-row{margin-block:24px!important}.footer-bottom{min-height:60px!important}.not-found-page{min-height:0!important;padding-block:70px!important}.not-found-particles{display:none!important}.not-found-code{font-size:220px!important}.not-found-fallback{opacity:1!important}}
@media (forced-colors:active){:root{--background:Canvas;--surface:Canvas;--foreground:CanvasText;--muted:CanvasText;--accent:LinkText;--line:CanvasText}body .story-text span,body .site-experience [data-reveal],body .site-experience [data-reveal][data-revealed],body .site-experience :is(.page-intro,.contact-intro,.section-label,.about-details,.bio-grid>*,.experience article,.case-meta,.footer-top,.contact-row,.footer-signature,.services-faq>*){opacity:1!important;filter:none!important;transform:none!important}.hero canvas,.principle-arc,.not-found-particles{display:none}.not-found-code .not-found-fallback{opacity:1;color:canvastext}.hero,.service-card,.service-detail,.case-metric,.skill-object{color:canvastext;background:canvas;border:1px solid canvastext}.button,.nav-contact,.social-links a,.project-tags>span{border:1px solid buttontext}a{color:linktext}:focus-visible{outline:2px solid highlight}}
