@font-face{font-family:GeistMono;src:url(../media/GeistMono_Variable.p.3ms9vq719j3f8.woff2)format("woff2");font-display:swap;font-weight:100 900}.geistmono_157ca88a-module__-wkyYG__className{font-family:GeistMono,ui-monospace,SFMono-Regular,Roboto Mono,Menlo,Monaco,Liberation Mono,DejaVu Sans Mono,Courier New,monospace}.geistmono_157ca88a-module__-wkyYG__variable{--font-geist-mono:"GeistMono", ui-monospace, SFMono-Regular, Roboto Mono, Menlo, Monaco, Liberation Mono, DejaVu Sans Mono, Courier New, monospace}
@font-face{font-family:GeistSans;src:url(../media/Geist_Variable-s.p.0mrjj4bg00-he.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:GeistSans Fallback;src:local(Arial);ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.0%;size-adjust:106.28%}.geistsans_d5a4f12f-module__aeC9ba__className{font-family:GeistSans,GeistSans Fallback}.geistsans_d5a4f12f-module__aeC9ba__variable{--font-geist-sans:"GeistSans", "GeistSans Fallback"}
:root{--canvas:#dfe4e7;--paper:#f3f0e8;--ink:#101112;--muted:#596164;--signal:#e34b32;--line:color-mix(in srgb, var(--ink) 11%, transparent);--sans:var(--font-geist-sans), "PingFang SC", "Microsoft YaHei", sans-serif;--mono:var(--font-geist-mono), ui-monospace, monospace;--page-gutter:clamp(20px, 3vw, 48px);--header-height:110px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--canvas:#0f1112;--paper:#171a1b;--ink:#e9eceb;--muted:#a8b0b2;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@media (prefers-color-scheme:dark){:root[data-theme=auto]{--canvas:#0f1112;--paper:#171a1b;--ink:#e9eceb;--muted:#a8b0b2;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--canvas)}body{background:var(--canvas);min-width:320px;color:var(--ink);font-family:var(--sans);text-rendering:optimizelegibility;margin:0;transition:background-color .24s,color .24s}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit;font:inherit}:focus-visible{outline:2px solid var(--signal);outline-offset:4px}.site-header{z-index:20;width:100%;height:var(--header-height);padding:0 var(--page-gutter);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--canvas) 86%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);grid-template-columns:1fr auto auto;align-items:center;gap:clamp(20px,2.4vw,32px);display:grid;position:fixed;top:0;left:0}.site-header:after{pointer-events:none;background-image:linear-gradient(to right, transparent calc(30% - .5px), var(--line) 30%, transparent calc(30% + .5px)), linear-gradient(to right, transparent calc(50.625% - .5px), var(--line) 50.625%, transparent calc(50.625% + .5px)), linear-gradient(to right, transparent calc(71.25% - .5px), var(--line) 71.25%, transparent calc(71.25% + .5px));content:"";position:absolute;inset:0}.site-header:before{z-index:2;pointer-events:none;background:linear-gradient(color-mix(in srgb, var(--ink) 28%, transparent), color-mix(in srgb, var(--ink) 28%, transparent)) 30% 50% / 11px 1px no-repeat, linear-gradient(color-mix(in srgb, var(--ink) 28%, transparent), color-mix(in srgb, var(--ink) 28%, transparent)) 30% 50% / 1px 11px no-repeat, linear-gradient(color-mix(in srgb, var(--ink) 28%, transparent), color-mix(in srgb, var(--ink) 28%, transparent)) 50.625% 50% / 11px 1px no-repeat, linear-gradient(color-mix(in srgb, var(--ink) 28%, transparent), color-mix(in srgb, var(--ink) 28%, transparent)) 50.625% 50% / 1px 11px no-repeat, linear-gradient(color-mix(in srgb, var(--ink) 28%, transparent), color-mix(in srgb, var(--ink) 28%, transparent)) 71.25% 50% / 11px 1px no-repeat, linear-gradient(color-mix(in srgb, var(--ink) 28%, transparent), color-mix(in srgb, var(--ink) 28%, transparent)) 71.25% 50% / 1px 11px no-repeat;content:"";width:100%;height:12px;position:absolute;bottom:-6px;left:0}.wordmark{letter-spacing:-.015em;width:fit-content;font-size:clamp(18px,1.6vw,25px);font-weight:720}.site-nav,.preference-controls{font-family:var(--mono);letter-spacing:.04em;align-items:center;gap:clamp(16px,2.3vw,38px);font-size:12px;display:flex}.site-nav{gap:26px}.preference-controls{gap:18px}.site-nav a,.utility-button{transition:color .18s,opacity .18s}@media (hover:hover){.site-nav a:hover,.utility-button:hover{opacity:.55}}.site-nav a:focus-visible,.utility-button:focus-visible{color:var(--signal);opacity:1}.utility-button{cursor:pointer;font-family:var(--mono);background:0 0;border:0;padding:8px 0;font-size:12px}.mobile-menu-button,.mobile-menu-panel{display:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.hero{min-height:max(720px,100svh);padding:calc(var(--header-height) + 34px) var(--page-gutter) 24px;border-bottom:1px solid var(--line);background:radial-gradient(circle at 35% 18%, #fffdf72e 0, #fffdf70d 24%, transparent 48%), radial-gradient(circle at 82% 62%, #bed8e21f 0, transparent 44%), var(--canvas);isolation:isolate;position:relative;overflow:clip}.hero-grid{z-index:-1;inset:var(--header-height) 0 0;background-image:linear-gradient(to right, transparent calc(30% - .5px), var(--line) 30%, transparent calc(30% + .5px)), linear-gradient(to right, transparent calc(50.625% - .5px), var(--line) 50.625%, transparent calc(50.625% + .5px)), linear-gradient(to right, transparent calc(71.25% - .5px), var(--line) 71.25%, transparent calc(71.25% + .5px)), linear-gradient(to bottom, transparent calc(88.4% - .5px), var(--line) 88.4%, transparent calc(88.4% + .5px));position:absolute}.hero-role,.hero-location,.hero-scroll{z-index:5;font-family:var(--mono);letter-spacing:.04em;margin:0;font-size:12px;position:absolute}.hero-role{top:calc(var(--header-height) + 39px);left:var(--page-gutter);font-size:14px}.hero-pointer-feedback{pointer-events:none}.hero-pointer-readout{z-index:5;top:calc(var(--header-height) + 41px);right:var(--page-gutter);color:var(--muted);font-family:var(--mono);font-variant-numeric:tabular-nums;letter-spacing:.04em;white-space:nowrap;align-items:center;gap:7px;font-size:10px;line-height:1;display:inline-flex;position:absolute}.hero-pointer-live-dot{opacity:.45;background:var(--signal);border-radius:50%;width:4px;height:4px;transition:opacity .12s,transform .12s cubic-bezier(.25,1,.5,1);transform:scale(.7)}.hero-pointer-live-dot.is-live{opacity:1;transform:scale(1)}.hero-pointer-follower{z-index:6;border:1px solid color-mix(in srgb, var(--ink) 42%, transparent);opacity:0;border-radius:50%;width:18px;height:18px;transition:transform .12s cubic-bezier(.25,1,.5,1),opacity 80ms linear;position:fixed;top:0;left:0;transform:translate(-32px,-32px)translate(-50%,-50%)}.hero-pointer-follower:before,.hero-pointer-follower:after{background:var(--signal);content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-pointer-follower:before{width:6px;height:1px}.hero-pointer-follower:after{width:1px;height:6px}.hero-pointer-follower.is-visible{opacity:.82}@media (prefers-reduced-motion:reduce),(pointer:coarse){.hero-pointer-follower{transition:none;display:none}}@media (prefers-reduced-motion:reduce){.hero-pointer-feedback{display:none}}@media (max-width:620px),(pointer:coarse){.hero-pointer-readout{display:none}}.hero-signature{z-index:2;position:absolute;inset:0}.say-hi-canvas{cursor:default;width:100%;height:100%;position:relative}.say-hi-canvas canvas{z-index:1;opacity:0;width:100%;height:100%;transition:opacity .22s;display:block;position:relative}.say-hi-canvas.is-ready canvas{opacity:1}.say-hi-fallback{background-image:url(/hero-say-hi-desktop-light.webp?v=20260906-pointer);background-position:50%;background-size:cover;display:block;position:absolute;inset:0}.say-hi-loading{opacity:0;animation:1ms step-start 1.2s forwards say-hi-loading-still;position:absolute;inset:0}.say-hi-runtime-fallback{opacity:0}.say-hi-runtime-fallback.is-visible{opacity:1}html[data-theme=dark] .say-hi-fallback{background-image:url(/hero-say-hi-desktop-dark.webp?v=20260906-pointer)}@media (min-width:720px) and (min-aspect-ratio:3/2){.say-hi-fallback{background-image:url(/hero-say-hi-desktop-wide-light.webp?v=20260906-pointer)}html[data-theme=dark] .say-hi-fallback{background-image:url(/hero-say-hi-desktop-wide-dark.webp?v=20260906-pointer)}}@media (prefers-color-scheme:dark){html:not([data-theme]) .say-hi-fallback,html[data-theme=auto] .say-hi-fallback{background-image:url(/hero-say-hi-desktop-dark.webp?v=20260906-pointer)}}@media (min-width:720px) and (min-aspect-ratio:3/2) and (prefers-color-scheme:dark){html:not([data-theme]) .say-hi-fallback,html[data-theme=auto] .say-hi-fallback{background-image:url(/hero-say-hi-desktop-wide-dark.webp?v=20260906-pointer)}}@media not (min-width:720px){.say-hi-fallback{background-image:url(/hero-say-hi-mobile-light.webp?v=20260906-pointer)}html[data-theme=dark] .say-hi-fallback{background-image:url(/hero-say-hi-mobile-dark.webp?v=20260906-pointer)}}@media (not (min-width:720px)) and (prefers-color-scheme:dark){html:not([data-theme]) .say-hi-fallback,html[data-theme=auto] .say-hi-fallback{background-image:url(/hero-say-hi-mobile-dark.webp?v=20260906-pointer)}}.hero-title{z-index:4;bottom:11.4%;left:var(--page-gutter);letter-spacing:-.01em;max-width:11.5ch;margin:0;font-size:clamp(60px,5.65vw,92px);font-weight:700;line-height:.84;position:absolute}.hero-title>span{display:block}.hero-title-period{color:var(--signal);font-weight:inherit}.hero-mobile-note,.hero-scroll-label{display:none}.hero-location{bottom:42px;left:var(--page-gutter)}.hero-principles{z-index:5;font-family:var(--mono);letter-spacing:.025em;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;padding:0;font-size:10px;line-height:1.15;list-style:none;display:grid;position:absolute;bottom:40px;left:53%;right:112px}.hero-principles li{gap:3px;display:grid;position:relative}.hero-principles li.is-active:before{background:var(--signal);content:"";border-radius:50%;width:4px;height:4px;position:absolute;top:2px;left:-13px}.hero-principles small{font:inherit;white-space:nowrap}.hero-scroll{right:var(--page-gutter);align-items:center;transition:opacity .18s;display:flex;bottom:42px}.hero-scroll-arrow{font-family:var(--sans);font-size:22px;font-weight:320;line-height:1}.hero-scroll:hover{opacity:.55}.section-eyebrow,.case-index,.site-footer{font-family:var(--mono);letter-spacing:.06em;margin:0;font-size:11px}.work-section{padding:0 var(--page-gutter) 28px;border-bottom:1px solid var(--line);background-color:var(--canvas);background-image:linear-gradient(to right, var(--line) 1px, transparent 1px);background-position:var(--page-gutter) 0;background-size:25% 100%;position:relative}.section-intro{border-bottom:1px solid var(--line);grid-template-columns:repeat(12,1fr);align-items:center;gap:16px;min-height:82px;padding:0 16px;display:grid}.section-intro .section-eyebrow{grid-column:1/4}.case-row{border-bottom:1px solid var(--line);grid-template-columns:repeat(12,1fr);gap:16px;min-height:420px;padding:24px 0;transition:clip-path .72s cubic-bezier(.22,1,.36,1),opacity .52s,transform .72s cubic-bezier(.22,1,.36,1);display:grid;position:relative}.case-list[data-reveal-ready=true] .case-row[data-develop]:not([data-revealed=true]){opacity:0;clip-path:inset(0 0 12%);transform:translateY(38px)}.case-index{z-index:2;color:var(--signal);grid-area:1/1/auto/2;margin:18px 0 0 16px}.case-copy{flex-direction:column;grid-area:1/1/auto/5;align-items:flex-start;padding:66px clamp(24px,3vw,52px) 28px 16px;display:flex}.case-copy h3{letter-spacing:-.065em;text-transform:uppercase;margin:0;font-size:clamp(46px,4.25vw,68px);font-weight:680;line-height:.9}.case-meta-line{color:var(--muted);font-family:var(--mono);letter-spacing:.045em;text-transform:uppercase;flex-direction:column;gap:5px;margin-top:24px;font-size:11px;display:flex}.case-lede{letter-spacing:-.018em;max-width:32ch;margin:24px 0 0;font-size:clamp(15px,1.2vw,18px);line-height:1.35}.case-cta{border-bottom:1px solid var(--ink);width:min(230px,100%);font-family:var(--mono);letter-spacing:.05em;justify-content:space-between;margin-top:auto;padding:14px 0 8px;font-size:12px;transition:color .18s,border-color .18s;display:flex}.case-cta span{color:var(--signal);font-size:18px;line-height:.7;transition:transform .32s cubic-bezier(.22,1,.36,1)}.case-cta:hover,.case-cta:focus-visible{border-color:var(--signal);color:var(--signal)}.case-cta:hover span,.case-cta:focus-visible span{transform:translate(5px)}.case-media{--media-position-x:50%;--media-position-y:12%;--media-scale:1.16;aspect-ratio:2.75;border:1px solid var(--line);background:color-mix(in srgb, var(--canvas) 88%, white);grid-area:1/5/auto/13;align-self:center;transition:border-color .26s,box-shadow .42s,transform .42s cubic-bezier(.22,1,.36,1);position:relative;overflow:hidden;box-shadow:0 18px 52px #30434b14}.case-row-1 .case-media{--media-position-x:53%;--media-position-y:28%;--media-scale:1.18}.case-row-2 .case-media{--media-position-x:100%;--media-position-y:10%;--media-scale:1.44}.case-media img{object-fit:cover;object-position:var(--media-position-x) var(--media-position-y);width:100%;height:100%;transform:scale(var(--media-scale));transform-origin:var(--media-position-x) var(--media-position-y);transition:transform .9s cubic-bezier(.2,.7,.1,1);display:block}.case-media:hover,.case-media:focus-visible{border-color:color-mix(in srgb, var(--signal) 62%, var(--line));transform:translateY(-3px);box-shadow:0 24px 62px #30434b21}.case-media:hover img,.case-media:focus-visible img{transform:scale(calc(var(--media-scale) + .025))}.about-contact-stage{background-color:var(--canvas);background-image:linear-gradient(to right, var(--line) 1px, transparent 1px);background-position:var(--page-gutter) 0;background-size:25% 100%}.about-section,.contact-section{padding:48px var(--page-gutter);border-bottom:1px solid var(--line);grid-template-columns:repeat(12,1fr);gap:16px;display:grid;position:relative}.about-section{min-height:530px}.contact-section{min-height:470px;overflow:hidden}.about-section .section-eyebrow,.contact-section .section-eyebrow{grid-column:1/3}.about-section h2{letter-spacing:-.065em;grid-column:1/7;align-self:center;margin:0;font-size:clamp(54px,5.5vw,84px);font-weight:680;line-height:.92}.about-body{font-family:var(--mono);letter-spacing:-.02em;grid-column:1/5;align-self:end;margin:0;font-size:clamp(15px,1.2vw,18px);line-height:1.45}.contact-section .section-eyebrow,.contact-note{color:var(--muted)}.contact-ribbon{pointer-events:none;width:69%;height:250px;position:absolute;top:72px;left:-3%;overflow:visible}.contact-ribbon path{fill:none;stroke-linecap:round;stroke-linejoin:round}.contact-ribbon-shadow{stroke:#43545b24;stroke-width:32px;filter:blur(12px)}.contact-ribbon-stroke{stroke:url(#contact-glass);stroke-width:25px;filter:drop-shadow(0 9px 9px #43545b1f)}.contact-ribbon-highlight{stroke:#ffffffb3;stroke-width:4px}.contact-ribbon circle{stroke:none}.contact-ribbon-dot-shadow{fill:#43545b29;filter:blur(8px)}.contact-ribbon-dot{fill:url(#contact-glass);filter:drop-shadow(0 7px 7px #43545b1f)}.contact-ribbon-dot-highlight{fill:#ffffffbd}.contact-email{z-index:2;font-family:var(--mono);letter-spacing:-.045em;white-space:nowrap;grid-column:9/13;align-self:center;margin-top:10px;font-size:clamp(18px,2vw,31px);position:relative}.contact-email span{color:var(--signal)}.contact-note{grid-column:1/5;align-self:end;margin:0 0 76px;font-size:13px;line-height:1.5}.contact-links{grid-column:10/13;justify-content:space-between;align-self:end;align-items:center;gap:20px;margin-bottom:72px;display:flex}.contact-links a{border-bottom:1px solid var(--line);font-family:var(--mono);font-size:12px;transition:border-color .18s,color .18s}.contact-links a:hover{border-color:var(--signal);color:var(--signal)}.site-footer{right:var(--page-gutter);bottom:32px;left:var(--page-gutter);border-top:1px solid var(--line);grid-template-columns:1fr 1fr auto;padding-top:20px;display:grid;position:absolute}.case-page{min-height:100svh;padding-top:var(--header-height);background:var(--canvas)}.case-stage{min-height:calc(100svh - var(--header-height));padding:28px var(--page-gutter) 32px;background-image:linear-gradient(to right, var(--line) 1px, transparent 1px);background-position:var(--page-gutter) 0;background-size:25% 100%;grid-template-columns:repeat(12,1fr);gap:16px;display:grid}.case-toolbar,.case-intro,.case-facts{grid-column:1/13}.case-toolbar{justify-content:space-between;align-items:center;display:flex}.case-back,.case-meta,.case-detail-block figcaption,.case-fact h2,.case-actions{font-family:var(--mono);letter-spacing:.055em;font-size:11px}.case-back{align-items:center;gap:16px;width:fit-content;display:flex}.case-meta{color:var(--muted);gap:clamp(24px,4vw,64px);display:flex}.case-intro{grid-template-columns:repeat(12,1fr);align-items:end;gap:16px;padding-top:12px;display:grid}.case-intro h1{letter-spacing:-.08em;text-transform:uppercase;grid-column:1/9;margin:0;font-size:clamp(76px,9vw,142px);font-weight:690;line-height:.82}.case-intro h1:after{color:var(--signal);content:"."}.case-intro>p{max-width:34ch;font-family:var(--mono);grid-column:9/13;margin:0 0 10px;font-size:14px;line-height:1.45}.case-detail-block{grid-column:2/12;min-width:0;margin:0}.case-detail-media{border:1px solid var(--line);background:color-mix(in srgb, var(--canvas) 84%, white);height:min(45vh,480px);position:relative;overflow:hidden;box-shadow:0 22px 64px #2f424a1a}.case-detail-media img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.case-detail-block figcaption{max-width:56ch;color:var(--muted);margin:8px 0 0 auto;line-height:1.5}.case-facts{border-top:1px solid var(--line);grid-template-columns:repeat(12,1fr);gap:16px;padding-top:24px;display:grid}.case-fact:first-child{grid-column:1/5}.case-fact:nth-child(2){grid-column:5/9}.case-fact h2{margin:0;font-weight:520}.case-fact h2:before{color:var(--signal);content:"•";margin-right:14px}.case-fact p{max-width:42ch;margin:18px 0 0;font-size:14px;line-height:1.45}.case-actions{flex-direction:column;grid-column:9/13;justify-content:flex-end;display:flex}.case-actions a{border-bottom:1px solid var(--line);justify-content:space-between;padding:14px 0;display:flex}.case-actions a:first-child{border-top:1px solid var(--line);font-weight:640}.case-actions span{color:var(--signal);font-size:18px;line-height:.65}.case-page-leai .case-stage{grid-template-rows:auto minmax(560px,1fr) auto}.case-page-leai .case-intro{flex-direction:column;grid-area:2/1/auto/5;justify-content:flex-start;align-items:flex-start;padding:46px 36px 36px 0;display:flex}.case-page-leai .case-intro h1{max-width:11ch;font-size:clamp(46px,4.1vw,64px);line-height:.88}.case-page-leai .case-intro h1:after{content:none}.case-page-leai .case-intro h1 span{display:block}.case-page-leai .case-intro h1 span:last-child:after{color:var(--signal);content:"."}.case-kicker{font-family:var(--mono);letter-spacing:.055em;margin-bottom:20px;font-size:13px}.case-kicker:after{color:var(--signal);content:"•";margin-left:8px}.case-page-leai .case-intro>p{max-width:33ch;margin-top:36px;font-size:14px}.case-page-leai .case-detail-block{grid-area:2/5/auto/13;grid-template-rows:minmax(0,1fr) auto;min-height:560px;display:grid}.case-page-leai .case-detail-media{height:auto;min-height:0}.case-page-leai .case-facts{grid-row:3}@media (max-width:900px){:root{--header-height:80px}.site-header{grid-template-columns:1fr auto}.site-nav,.desktop-preference-controls{display:none}.mobile-menu-button{cursor:pointer;min-width:48px;min-height:44px;font-family:var(--mono);letter-spacing:.06em;background:0 0;border:0;justify-content:flex-end;align-items:center;padding:0;font-size:11px;display:inline-flex}.mobile-menu-panel:not([hidden]){width:100%;min-height:calc(100dvh - var(--header-height));padding:28px var(--page-gutter) 24px;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--canvas) 96%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overscroll-behavior:contain;grid-template-rows:minmax(0,1fr) auto;animation:.18s ease-out both mobile-menu-enter;display:grid;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.mobile-menu-nav{letter-spacing:-.055em;flex-direction:column;font-size:clamp(34px,8vw,58px);font-weight:650;line-height:.95;display:flex}.mobile-menu-nav a{border-top:1px solid var(--line);align-items:center;min-height:72px;display:flex}.mobile-menu-nav a:last-child{border-bottom:1px solid var(--line)}.mobile-menu-preferences{flex-direction:column;align-items:stretch;gap:0;padding-top:32px;display:flex}.mobile-menu-preferences .utility-button{border-top:1px solid var(--line);text-align:left;min-height:48px;padding:0}.mobile-menu-preferences .utility-button:last-child{border-bottom:1px solid var(--line)}.hero{min-height:max(680px,100svh)}.hero-signature{inset:0}.hero-title{font-size:clamp(50px,8.8vw,76px);bottom:13%}.hero-principles{display:none}.about-section h2{grid-column:1/8}.about-body{grid-column:1/6}.contact-email{grid-column:8/13}.case-hero-summary{grid-column:1/8}.case-external{grid-column:9/13}}@media (max-width:620px){.site-header:before,.site-header:after{display:none}.site-header{grid-template-columns:1fr auto;gap:12px}.site-nav,.desktop-preference-controls{display:none}.mobile-menu-button{cursor:pointer;min-width:48px;min-height:44px;font-family:var(--mono);letter-spacing:.06em;background:0 0;border:0;justify-content:flex-end;align-items:center;padding:0;font-size:11px;display:inline-flex}.mobile-menu-panel:not([hidden]){width:100%;min-height:calc(100dvh - var(--header-height));padding:28px var(--page-gutter) 24px;border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--canvas) 96%, transparent);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);overscroll-behavior:contain;grid-template-rows:minmax(0,1fr) auto;animation:.18s ease-out both mobile-menu-enter;display:grid;position:absolute;top:100%;left:0;right:0;overflow-y:auto}.mobile-menu-nav{letter-spacing:-.055em;flex-direction:column;font-size:clamp(34px,12vw,52px);font-weight:650;line-height:.95;display:flex}.mobile-menu-nav a{border-top:1px solid var(--line);align-items:center;min-height:72px;display:flex}.mobile-menu-nav a:last-child{border-bottom:1px solid var(--line)}.mobile-menu-preferences{flex-direction:column;align-items:stretch;gap:0;padding-top:32px;display:flex}.mobile-menu-preferences .utility-button{border-top:1px solid var(--line);text-align:left;min-height:48px;padding:0}.mobile-menu-preferences .utility-button:last-child{border-bottom:1px solid var(--line)}.hero{height:clamp(680px,100svh,800px);min-height:0;padding-bottom:24px}.hero-grid{background-size:50% 100%,100% 100%}.hero-role{top:calc(var(--header-height) + 28px);white-space:nowrap;max-width:none;font-size:10px;line-height:1.4}.hero-signature{inset:0}.hero-title{max-width:calc(100% - var(--page-gutter) * 2);font-size:clamp(31px,9.55vw,44px);line-height:1;top:172px;bottom:auto}.hero-location,.hero-scroll{font-size:10px;bottom:24px}.hero-scroll{gap:8px}.hero-scroll-label{display:inline}.hero-mobile-note{z-index:4;bottom:126px;left:var(--page-gutter);max-width:26ch;color:var(--muted);margin:0;font-size:15px;line-height:1.6;display:block;position:absolute}.hero-principles{display:none}.work-section{background-size:50% 100%;padding-bottom:24px}.section-intro{grid-template-columns:repeat(4,1fr);min-height:62px;padding:0}.section-intro .section-eyebrow{grid-column:1/3}.case-row,.case-row-2{grid-template-columns:repeat(4,1fr);gap:12px;min-height:0;padding:32px 0 40px;display:grid}.case-row .case-index,.case-row-2 .case-index{text-align:left;grid-area:1/1/auto/2;margin:0}.case-row .case-copy,.case-row-2 .case-copy{grid-area:1/1/auto/5;padding:38px 0 26px}.case-copy h3{font-size:clamp(42px,12vw,52px)}.case-meta-line{margin-top:16px}.case-lede{max-width:34ch;margin-top:18px;font-size:17px}.case-cta{width:100%;margin-top:26px}.case-row .case-media,.case-row-2 .case-media{aspect-ratio:1.9;grid-area:2/1/auto/5;margin-top:0}.case-row-1 .case-media{--media-position-x:54%;--media-position-y:24%;--media-scale:1.32}.case-row-2 .case-media{--media-position-x:100%;--media-position-y:6%;--media-scale:1.46}.about-contact-stage{background-size:50% 100%}.about-section,.contact-section{padding:36px var(--page-gutter) 28px;grid-template-columns:repeat(4,1fr);gap:12px;min-height:520px}.about-section .section-eyebrow,.contact-section .section-eyebrow{grid-column:1/3}.about-section h2{grid-column:1/5;align-self:center;margin-top:26px;font-size:clamp(46px,13.5vw,58px)}.about-body{grid-column:1/5;align-self:end;max-width:34ch;margin-bottom:12px;font-size:16px}.contact-note,.contact-links{grid-column:1/5;margin:0}.contact-note{align-self:end;margin-bottom:92px}.contact-links{right:var(--page-gutter);bottom:88px;left:var(--page-gutter);position:absolute}.contact-ribbon{width:128%;height:220px;top:76px;left:-18%}.contact-email{grid-column:1/5;align-self:start;margin-top:262px;font-size:clamp(16px,4.8vw,20px)}.site-footer{grid-template-columns:1fr auto;gap:8px}.site-footer span:nth-child(2){display:none}.case-stage,.case-page-leai .case-stage{padding:24px var(--page-gutter) 36px;background-size:50% 100%;grid-template-rows:none;grid-template-columns:repeat(4,1fr);gap:12px}.case-toolbar,.case-intro,.case-page-leai .case-intro,.case-detail-block,.case-page-leai .case-detail-block,.case-facts,.case-page-leai .case-facts{grid-area:auto/1/auto/5}.case-meta{gap:0}.case-meta span:first-child{display:none}.case-intro,.case-page-leai .case-intro{padding:42px 0 24px;display:block}.case-intro h1,.case-page-leai .case-intro h1{max-width:10ch;font-size:clamp(48px,14vw,62px);line-height:.86}.case-kicker{margin-bottom:16px}.case-intro>p,.case-page-leai .case-intro>p{max-width:34ch;margin:26px 0 0;font-size:13px}.case-detail-media,.case-page-leai .case-detail-media{height:330px;min-height:0;padding:0}.case-page-leai .case-detail-media{height:380px}.case-page-leai .case-detail-block{min-height:0;display:block}.case-detail-block figcaption{max-width:32ch;font-size:10px}.case-facts,.case-page-leai .case-facts{grid-template-columns:repeat(4,1fr);gap:28px 12px;padding-top:28px;display:grid}.case-fact:first-child,.case-fact:nth-child(2),.case-actions{grid-column:1/5}.case-fact p{margin-top:14px;font-size:15px}.case-actions{margin-top:8px}}@keyframes mobile-menu-enter{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes say-hi-loading-still{to{opacity:1}}@media (prefers-contrast:more){:root{--line:color-mix(in srgb, var(--ink) 38%, transparent);--muted:var(--ink)}.site-header,.mobile-menu-panel:not([hidden]){background:var(--canvas)}.case-media{border-color:var(--ink);box-shadow:none}.case-cta{border-bottom-width:2px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.case-list[data-reveal-ready=true] .case-row[data-develop]{opacity:1;clip-path:none;transform:none}}
.portfolio-label,.portfolio-status{font-family:var(--mono);letter-spacing:.035em;margin:0;font-size:11px;font-weight:450;line-height:1.5}.portfolio-work,.portfolio-about,.portfolio-contact{scroll-margin-top:var(--header-height)}.portfolio-work{padding:0 var(--page-gutter);background:var(--canvas)}.portfolio-section-heading{border-bottom:1px solid var(--line);grid-template-columns:1fr 2fr;align-items:end;gap:24px;padding:clamp(64px,8vw,128px) 0 56px;display:grid}.portfolio-section-heading>.portfolio-label{color:var(--muted);grid-column:1/-1}.portfolio-section-heading h2{letter-spacing:-.04em;grid-column:1/-1;margin:0;font-size:clamp(42px,5.4vw,80px);font-weight:560;line-height:1.02}.portfolio-section-note{color:var(--muted);grid-column:2;margin:0;font-size:15px;line-height:1.55}.portfolio-project.case-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,2fr);align-items:center;gap:clamp(28px,4vw,64px);min-height:0;padding:clamp(48px,6vw,88px) 0}.portfolio-project-copy{min-width:0;padding-bottom:24px}.portfolio-project-topline{color:var(--muted);justify-content:space-between;margin-bottom:30px;display:flex}.portfolio-project-topline>:first-child{color:color-mix(in srgb, var(--signal) 75%, var(--ink))}.portfolio-project-copy h3{letter-spacing:-.04em;margin:0;font-size:clamp(34px,3.5vw,54px);font-weight:620;line-height:1.06}.portfolio-project-category{color:var(--muted);font-family:var(--mono);letter-spacing:.025em;margin:14px 0 0;font-size:10px;line-height:1.5}.portfolio-project-summary{letter-spacing:-.025em;max-width:29ch;margin:30px 0 24px;font-size:clamp(17px,1.5vw,22px);line-height:1.45}.portfolio-focus{max-width:36ch;color:var(--muted);flex-wrap:wrap;gap:7px 18px;margin:0 0 34px;padding:0;font-size:12px;line-height:1.6;list-style:none;display:flex}.portfolio-project-role-label{color:var(--muted);font-family:var(--mono);margin:0 0 10px;font-size:10px;line-height:1.5}.portfolio-focus li:not(:last-child):after{color:var(--signal);content:"/";padding-left:18px}.portfolio-text-link{border-bottom:1px solid var(--ink);min-width:172px;min-height:44px;font-family:var(--mono);letter-spacing:.035em;justify-content:space-between;align-items:center;gap:28px;font-size:11px;transition:color .18s,border-color .18s;display:inline-flex}.portfolio-text-link span{font-family:var(--sans);font-size:23px;line-height:1}.portfolio-text-link:hover{color:color-mix(in srgb, var(--signal) 75%, var(--ink));border-color:var(--signal)}.portfolio-project-visual{min-width:0}.portfolio-project-image{background:color-mix(in srgb, var(--ink) 4%, var(--canvas));border:1px solid var(--line);padding:clamp(16px,2.3vw,36px);display:block;position:relative;overflow:hidden}.portfolio-project-image img{aspect-ratio:8/5;object-fit:contain;border:1px solid #141e2814;width:100%;height:auto;transition:transform .45s cubic-bezier(.22,1,.36,1);display:block;box-shadow:0 8px 28px #141e281a}.portfolio-image-action{width:fit-content;min-height:44px;font-family:var(--mono);letter-spacing:.04em;align-items:center;gap:28px;margin:18px 0 -8px auto;font-size:10px;display:flex}.portfolio-image-action>span{font-size:21px}.portfolio-project-image:hover img{transform:translateY(-4px)}.portfolio-project-caption{color:var(--muted);font-family:var(--mono);justify-content:space-between;align-items:center;gap:20px;padding-top:15px;font-size:10px;line-height:1.5;display:flex}.portfolio-status{align-items:center;gap:8px;display:inline-flex}.portfolio-status:before{background:var(--signal);content:"";border-radius:50%;flex:0 0 5px;width:5px;height:5px;display:block}.portfolio-about{padding:clamp(72px, 9vw, 136px) var(--page-gutter);border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:44px clamp(50px,9vw,144px);display:grid}.portfolio-about>.portfolio-label{color:var(--muted);grid-column:1/-1}.portfolio-about-intro h2{letter-spacing:-.04em;white-space:pre-line;margin:0;font-size:clamp(38px,4.3vw,66px);font-weight:550;line-height:1.1}.portfolio-about-intro>p{max-width:44ch;margin:30px 0;font-size:17px;line-height:1.65}.portfolio-about-intro>.portfolio-label{color:var(--muted)}.portfolio-principles{align-content:start;margin:0;padding:0;list-style:none;display:grid}.portfolio-principles li{border-top:1px solid var(--line);grid-template-columns:32px 1fr;gap:18px;padding:26px 0;display:grid}.portfolio-principle-number{color:color-mix(in srgb, var(--signal) 75%, var(--ink));font-family:var(--mono);padding-top:4px;font-size:10px}.portfolio-principles h3{letter-spacing:-.025em;margin:0;font-size:22px;font-weight:520;line-height:1.3}.portfolio-principles p{max-width:46ch;color:var(--muted);margin:12px 0 0;font-size:15px;line-height:1.65}.portfolio-contact{padding:clamp(60px, 7vw, 108px) var(--page-gutter) 24px;background:color-mix(in srgb, var(--ink) 3%, var(--canvas))}.portfolio-contact-topline{color:var(--muted);justify-content:space-between;align-items:baseline;gap:28px;display:flex}.portfolio-contact-topline>p:last-child{max-width:38ch;margin:0;font-size:14px;line-height:1.6}.portfolio-contact h2{letter-spacing:-.04em;margin:clamp(50px,6vw,88px) 0 28px;font-size:clamp(36px,5vw,74px);font-weight:520;line-height:1.12}.portfolio-email{border-bottom:1px solid var(--ink);letter-spacing:-.035em;align-items:baseline;gap:clamp(18px,4vw,64px);width:fit-content;max-width:100%;padding-bottom:12px;font-size:clamp(21px,3.1vw,48px);font-weight:420;line-height:1.4;transition:color .18s,border-color .18s;display:flex}.portfolio-email span{color:var(--signal)}.portfolio-email:hover{color:color-mix(in srgb, var(--signal) 75%, var(--ink));border-color:var(--signal)}.portfolio-footer{border-top:1px solid var(--line);color:var(--muted);font-family:var(--mono);grid-template-columns:1fr auto auto;align-items:center;gap:36px;margin-top:clamp(72px,9vw,136px);padding-top:22px;font-size:10px;line-height:1.5;display:grid}.portfolio-footer a{align-items:center;gap:14px;min-height:44px;display:flex}.portfolio-footer a:hover{color:var(--ink)}.portfolio-case{padding:calc(var(--header-height) + 32px) var(--page-gutter) 0}.portfolio-case-toolbar{border-bottom:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;padding-bottom:24px;display:flex}.portfolio-case-toolbar a{align-items:center;gap:16px;min-height:44px;display:inline-flex}.portfolio-case-intro{padding:58px 0 44px}.portfolio-case-intro>.portfolio-label{color:var(--muted)}.portfolio-case-intro h1{letter-spacing:-.04em;margin:22px 0;font-size:clamp(58px,8vw,96px);font-weight:600;line-height:1.04}.portfolio-case-intro h1:after{color:var(--signal);content:"."}.portfolio-case-summary{letter-spacing:-.025em;max-width:36ch;margin:0;font-size:clamp(22px,2.5vw,36px);line-height:1.4}.portfolio-case-overview{border-top:1px solid var(--line);grid-template-columns:1.4fr 1fr auto;align-items:end;gap:clamp(28px,5vw,80px);margin-top:56px;padding-top:24px;display:grid}.portfolio-case-overview>div>p{max-width:50ch;color:var(--muted);margin:12px 0 0;font-size:14px;line-height:1.6}.portfolio-case-figure{background:color-mix(in srgb, var(--ink) 4%, var(--canvas));border:1px solid var(--line);margin:0;padding:clamp(16px,3vw,48px)}.portfolio-case-figure img{border:1px solid #141e2814;width:100%;height:auto;display:block;box-shadow:0 8px 32px #141e281a}.portfolio-case-figure figcaption{color:var(--muted);font-family:var(--mono);justify-content:space-between;gap:20px;margin-top:20px;font-size:10px;line-height:1.5;display:flex}.portfolio-case-context,.portfolio-case-outcome{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:36px;padding:clamp(56px,7vw,108px) 0;display:grid}.portfolio-case-context>p,.portfolio-case-outcome>p{letter-spacing:-.025em;max-width:42ch;margin:0;font-size:clamp(24px,2.4vw,34px);line-height:1.45}.portfolio-case-process{grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:36px;padding:clamp(56px,7vw,108px) 0 0;display:grid}.portfolio-case-process-intro p{max-width:30ch;color:var(--muted);margin:22px 0 0;font-size:16px;line-height:1.65}.portfolio-case-process .portfolio-principles li{padding:32px 0}.portfolio-case-process .portfolio-principles h3{font-size:26px}.portfolio-case-process .portfolio-principles p{max-width:64ch;font-size:16px}.portfolio-next{grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:clamp(48px,6vw,88px) 0;display:grid}.portfolio-next>.portfolio-label{color:var(--muted);grid-column:1/-1}.portfolio-next-title{letter-spacing:-.04em;font-size:clamp(36px,5vw,76px);line-height:1.1}.portfolio-next-arrow{color:var(--signal);font-size:clamp(40px,5vw,76px);line-height:1;transition:transform .22s}.portfolio-next:hover .portfolio-next-arrow{transform:translate(4px,-4px)}@media (max-width:760px){.portfolio-section-heading{padding:60px 0 34px;display:block}.portfolio-section-heading h2{margin:22px 0 18px}.portfolio-section-note{max-width:34ch;font-size:14px}.portfolio-project.case-row{grid-template-columns:minmax(0,1fr);gap:30px;padding:36px 0 44px}.portfolio-project-copy{padding:0}.portfolio-project-topline{margin-bottom:22px}.portfolio-project-copy h3{font-size:40px}.portfolio-project-summary{max-width:32ch;margin:22px 0 18px;font-size:20px}.portfolio-focus{gap:5px 12px;max-width:none;margin-bottom:20px}.portfolio-focus li:not(:last-child):after{padding-left:12px}.portfolio-project-image{padding:14px}.portfolio-image-action{margin-top:8px}.portfolio-project-caption{gap:14px}.portfolio-about{padding:62px var(--page-gutter);grid-template-columns:minmax(0,1fr);gap:30px}.portfolio-about-intro>p{margin:24px 0;font-size:16px}.portfolio-principles h3{font-size:21px}.portfolio-principles li{grid-template-columns:24px 1fr;gap:12px;padding:22px 0}.portfolio-contact-topline{flex-direction:column;gap:18px}.portfolio-contact h2{max-width:12ch;margin-top:48px}.portfolio-email{letter-spacing:-.025em;justify-content:space-between;gap:10px;width:100%;font-size:clamp(16px,5.2vw,24px)}.portfolio-footer{grid-template-columns:1fr auto;gap:14px 24px;margin-top:70px;font-size:9px}.portfolio-footer>span{grid-column:1/-1}.portfolio-case{padding-top:calc(var(--header-height) + 16px)}.portfolio-case-toolbar{padding-bottom:12px}.portfolio-case-intro{padding:34px 0 30px}.portfolio-case-intro h1{font-size:clamp(42px,11vw,70px)}.portfolio-case-summary{font-size:24px}.portfolio-case-overview{grid-template-columns:minmax(0,1fr);gap:26px;margin-top:32px}.portfolio-case-overview>.portfolio-text-link{justify-self:start}.portfolio-case-figure{padding:12px}.portfolio-case-figure figcaption{flex-direction:column;gap:7px;margin-top:12px;font-size:9px}.portfolio-case-context,.portfolio-case-outcome,.portfolio-case-process{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:48px}.portfolio-case-context,.portfolio-case-outcome{padding-bottom:48px}.portfolio-case-context>p,.portfolio-case-outcome>p{font-size:23px}.portfolio-case-process-intro p{max-width:40ch}.portfolio-case-process .portfolio-principles h3{font-size:23px}.portfolio-case-process .portfolio-principles p{font-size:15px}}@media (prefers-reduced-motion:reduce){.portfolio-project-image img,.portfolio-next-arrow{transition:none;transform:none}}
