:root{--bar-h:44px;--topbar-h:30px;--radius-win:8px;--dur-fast:.14s;--dur-med:.26s;--ease-out:cubic-bezier(.25, 1, .5, 1);--ease-spring:cubic-bezier(.32, .72, 0, 1);--font-ui:"Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--accent:#2f7bf6;--accent-text:#fff;--text:#1b1b1b;--text-dim:#0000008c;--win-bg:#f4f6fb;--win-border:#0000002e;--win-shadow:0 18px 50px #00000059;--titlebar-bg:linear-gradient(#fefefe, #e7eefc);--titlebar-text:#1b1b1b;--titlebar-h:36px;--glass:#ffffff8c;--glass-strong:#ffffffc7;--glass-border:#fff9;--bar-bg:#1428508c;--bar-text:#fff;--bar-blur:18px;--menu-bg:#fafafceb;--menu-text:#1b1b1b;--menu-hover:#2f7bf629;--icon-label:#fff;--icon-label-shadow:0 1px 2px #000000f2, 0 0 7px #0009;--selection:#3c8cff59;--ctrl-radius:4px}[data-os=win][data-mode=light]{--font-ui:"Segoe UI", system-ui, sans-serif;--accent:#2f7bf6;--text:#1a1a1a;--text-dim:#0000008c;--win-bg:#eef3fb;--win-border:#78a0dcb3;--win-shadow:0 22px 60px #0a1e4673;--titlebar-h:30px;--titlebar-bg:linear-gradient(180deg, #ffffffeb, #d2e4fad1);--titlebar-text:#16335c;--glass:#bed7f573;--glass-strong:#ebf4ffd9;--glass-border:#ffffffb3;--bar-bg:linear-gradient(180deg, #78b4f58c, #143c829e);--bar-text:#fff;--menu-bg:#f4f9fff0;--menu-text:#15315a;--menu-hover:#2f7bf62e;--ctrl-radius:3px}[data-os=win][data-mode=dark]{--font-ui:"Segoe UI", system-ui, sans-serif;--accent:#4f97ff;--text:#eaf1fb;--text-dim:#fff9;--win-bg:#1d2330;--win-border:#5a82be8c;--win-shadow:0 22px 60px #0009;--titlebar-h:30px;--titlebar-bg:linear-gradient(180deg, #3c5078f2, #1c2842e6);--titlebar-text:#eaf1fb;--glass:#283c6480;--glass-strong:#1e2d4bd9;--glass-border:#78a0dc59;--bar-bg:linear-gradient(180deg, #283c64b3, #0a1428cc);--bar-text:#eaf1fb;--menu-bg:#182032f2;--menu-text:#eaf1fb;--menu-hover:#4f97ff40}[data-os=mac][data-mode=light]{--font-ui:-apple-system, "SF Pro Text", "Helvetica Neue", system-ui, sans-serif;--accent:#0a84ff;--text:#1d1d1f;--text-dim:#00000080;--win-bg:#f6f6f8;--win-border:#0000001f;--win-shadow:0 30px 70px #00000052;--radius-win:12px;--titlebar-h:38px;--titlebar-bg:linear-gradient(180deg, #fbfbfd, #ededf0);--titlebar-text:#3a3a3c;--glass:#ffffff8c;--glass-strong:#fffc;--glass-border:#ffffffb3;--bar-bg:#ffffff9e;--bar-text:#1d1d1f;--menu-bg:#fafafccc;--menu-text:#1d1d1f;--menu-hover:var(--accent)}[data-os=mac][data-mode=dark]{--font-ui:-apple-system, "SF Pro Text", "Helvetica Neue", system-ui, sans-serif;--accent:#0a84ff;--text:#f5f5f7;--text-dim:#ffffff8c;--win-bg:#2a2a2e;--win-border:#ffffff1a;--win-shadow:0 30px 70px #0009;--radius-win:12px;--titlebar-h:38px;--titlebar-bg:linear-gradient(180deg, #3a3a3e, #313135);--titlebar-text:#e6e6ea;--glass:#28282d8c;--glass-strong:#232328d1;--glass-border:#ffffff24;--bar-bg:#1e1e229e;--bar-text:#f5f5f7;--menu-bg:#28282dd1;--menu-text:#f5f5f7;--menu-hover:var(--accent)}[data-os=linux][data-mode=light]{--font-ui:"Cantarell", "Ubuntu", system-ui, sans-serif;--accent:#e95420;--text:#2b2b2b;--text-dim:#0000008c;--win-bg:#fafafa;--win-border:#00000029;--win-shadow:0 24px 60px #0006;--radius-win:12px;--titlebar-h:44px;--titlebar-bg:linear-gradient(180deg, #fdfdfd, #ededed);--titlebar-text:#2b2b2b;--glass:#f5f5f599;--glass-strong:#fafafad9;--glass-border:#00000014;--bar-bg:#141418d1;--bar-text:#fff;--menu-bg:#fcfcfcf7;--menu-text:#2b2b2b;--menu-hover:#e9542029;--ctrl-radius:999px}[data-os=linux][data-mode=dark]{--font-ui:"Cantarell", "Ubuntu", system-ui, sans-serif;--accent:#e95420;--text:#efefef;--text-dim:#ffffff8c;--win-bg:#242424;--win-border:#ffffff1a;--win-shadow:0 24px 60px #000000a6;--radius-win:12px;--titlebar-h:44px;--titlebar-bg:linear-gradient(180deg, #303030, #262626);--titlebar-text:#efefef;--glass:#28282899;--glass-strong:#242424d9;--glass-border:#ffffff1a;--bar-bg:#0c0c0ed9;--bar-text:#fff;--menu-bg:#222222f7;--menu-text:#efefef;--menu-hover:#e9542047;--ctrl-radius:999px}@font-face{font-family:Archivo;src:url(/fonts/archivo-var-latin.woff2)format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Archivo;src:url(/fonts/archivo-var-latin-ext.woff2)format("woff2");font-weight:100 900;font-stretch:62% 125%;font-style:normal;font-display:swap;unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Archivo Fallback;src:local(Arial),local(Helvetica Neue),local(Helvetica);size-adjust:99%;ascent-override:88.9%;descent-override:21.2%;line-gap-override:0%}:root{--dur-micro:.12s;--dur-sm:.2s;--dur-md:.32s;--dur-lg:.56s;--dur-xl:.9s;--ease-expo:cubic-bezier(.16, 1, .3, 1);--ease-snap:cubic-bezier(.2, 0, 0, 1);--ease-inout:cubic-bezier(.76, 0, .24, 1);--spring:linear(0, .006 1.2%, .029 2.8%, .065 4.2%, .112 5.8%, .166 7.2%, .225 8.8%, .479 14.8%, .589 17.5%, .689 20.2%, .775 23%, .848 25.8%, .908 28.5%, .958 31.5%, .994 34.5%, 1.017 37.2%, 1.033 40%, 1.043 43.2%, 1.046 46.8%, 1.042 52%, 1.015 66.8%, 1.004 75.8%, .998 87.8%, 1);--font-sans:"Archivo", "Archivo Fallback", system-ui, -apple-system, sans-serif;--site-header-h:64px}body{margin:0}picture{display:contents}.img-fade{opacity:0;transition:opacity var(--dur-lg) var(--ease-snap)}.img-fade.is-loaded{opacity:1}.countup{font-variant-numeric:tabular-nums;display:inline-grid}.countup>:not(.sr-only){grid-area:1/1}.countup-ghost{visibility:hidden}.case-film{object-fit:cover;object-position:top center;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity var(--dur-lg) var(--ease-snap);display:block;position:absolute;inset:0}.case-film.is-playing{opacity:1}html[data-view=site]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-padding-top:calc(var(--site-header-h) + 16px);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;background:#f4f4f1}html[data-view=site][data-mode=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#0d0f0e}html[data-view=site] body{font-family:var(--font-sans)}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.skip-link{z-index:100;color:#fff;font:700 14px/1 var(--font-sans);transition:transform var(--dur-sm) var(--ease-snap);background:#111;border-radius:999px;padding:10px 16px;text-decoration:none;position:fixed;top:12px;left:16px;transform:translateY(-160%)}.skip-link:focus-visible{outline-offset:3px;outline:2px solid #34d399;transform:none}::view-transition-old(root){animation-duration:var(--dur-md);animation-timing-function:var(--ease-snap)}::view-transition-new(root){animation-duration:var(--dur-md);animation-timing-function:var(--ease-snap)}::view-transition-group(case-media){animation-duration:var(--dur-lg);animation-timing-function:var(--ease-inout)}::view-transition-old(case-media){object-fit:cover;object-position:top center;height:100%;animation-duration:var(--dur-lg);animation-timing-function:var(--ease-inout);overflow:clip}::view-transition-new(case-media){object-fit:cover;object-position:top center;height:100%;animation-duration:var(--dur-lg);animation-timing-function:var(--ease-inout);overflow:clip}html[data-vt=nav] .cs-page .vt-case-media{view-transition-name:case-media}html[data-vt=theme]::view-transition-old(root){mix-blend-mode:normal;animation:none}html[data-vt=theme]::view-transition-new(root){mix-blend-mode:normal;animation:none}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation:none!important}::view-transition-old(*){animation:none!important}::view-transition-new(*){animation:none!important}.cs-page *,.cs-page :before,.cs-page :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.lp{--lp-maxw:1280px;--lp-pad:clamp(16px, 4vw, 48px);--card-r:18px}.lp-section{max-width:var(--lp-maxw);padding:clamp(128px, 15vw, 216px) var(--lp-pad) 0;margin:0 auto}.lp-section:focus{outline:none}.lp-kicker{color:var(--s-dim);font-size:15px;font-weight:600}.lp-h2{letter-spacing:-.035em;text-transform:uppercase;text-wrap:balance;max-width:17ch;margin:18px 0 0;font-size:clamp(32px,4.7vw,70px);font-weight:800;font-stretch:125%;line-height:.98}.lp-h2--sm{font-size:clamp(30px,3.6vw,52px)}.lp-sec-intro{max-width:56ch;color:var(--s-dim);text-wrap:pretty;margin:18px 0 0;font-size:clamp(16px,1.3vw,19px);line-height:1.55}.lp-btn{letter-spacing:-.01em;white-space:nowrap;cursor:pointer;height:48px;transition:transform var(--dur-micro) var(--ease-snap), background-color var(--dur-sm) var(--ease-snap), border-color var(--dur-sm) var(--ease-snap), color var(--dur-sm) var(--ease-snap);border:1px solid #0000;border-radius:999px;align-items:center;gap:10px;padding:0 22px;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.lp-btn svg{transition:transform var(--dur-md) var(--ease-expo)}.lp-btn:active{transform:scale(.97)}.lp-btn--primary{background:var(--s-ink);color:var(--s-bg)}.lp-btn--ghost{color:var(--s-ink);border-color:var(--s-line-strong);background:0 0}.lp-arrow-link{text-align:left;font:inherit;color:var(--s-ink);cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:4px 0;font-size:15px;font-weight:700;text-decoration:none;display:inline-flex}.lp-arrow-link svg{transition:transform var(--dur-md) var(--ease-expo);flex:none}@media (hover:hover) and (pointer:fine){.lp-btn--primary:hover{background:color-mix(in srgb, var(--s-ink) 86%, var(--s-green))}.lp-btn--ghost:hover{border-color:var(--s-ink)}.lp-btn:hover svg,.lp-arrow-link:hover svg{transform:translate(3px)}.lp-arrow-link:hover svg[class*=up]{transform:translate(2px,-2px)}}.lp-copy{align-items:center;gap:2px;display:inline-flex}.lp-copy-addr{color:var(--s-ink);padding:2px 0;font-size:15px;font-weight:650;text-decoration:none}.lp-copy-btn{width:36px;height:36px;color:var(--s-dim);cursor:pointer;transition:background-color var(--dur-sm) var(--ease-snap), color var(--dur-sm) var(--ease-snap), transform var(--dur-micro) var(--ease-snap);background:0 0;border:0;border-radius:999px;place-items:center;display:inline-grid;position:relative}.lp-copy-btn:active{transform:scale(.9)}.lp-copy-ico{transition:opacity var(--dur-sm) var(--ease-snap), transform var(--dur-lg) var(--spring);grid-area:1/1;display:grid}.lp-copy-ico--done{color:var(--s-green-ink);opacity:0;transform:scale(.4)}.lp-copy[data-copied=true] .lp-copy-ico--idle{opacity:0;transform:scale(.4)}.lp-copy[data-copied=true] .lp-copy-ico--done{opacity:1;transform:none}.lp-copy-tip{background:var(--s-ink);color:var(--s-bg);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-sm) var(--ease-snap), translate var(--dur-md) var(--ease-expo);border-radius:7px;padding:5px 8px;font-size:11.5px;font-weight:700;position:absolute;bottom:calc(100% + 4px);left:50%;translate:-50% 4px}.lp-copy[data-copied=true] .lp-copy-tip{opacity:1;translate:-50%}@media (hover:hover) and (pointer:fine){.lp-copy-btn:hover{background:color-mix(in srgb, var(--s-ink) 7%, transparent);color:var(--s-ink)}}.lp-hero{max-width:var(--lp-maxw);padding:clamp(64px, 13vh, 150px) var(--lp-pad) 0;margin:0 auto;container-type:inline-size}.lp-avail{border:1px solid var(--s-line);background:var(--s-surface);color:var(--s-dim);border-radius:999px;align-items:center;gap:10px;margin:0 0 clamp(20px,3vh,32px);padding:7px 14px 7px 10px;font-size:14px;font-weight:500;line-height:1.2;display:inline-flex}.lp-flag{border-radius:3px;flex:none;box-shadow:0 0 0 1px #00000014}.lp-h1{letter-spacing:-.035em;text-transform:uppercase;color:var(--s-faint);margin:clamp(6px,1vh,12px) 0 0;font-size:clamp(36px,6.1cqi,92px);font-weight:800;font-stretch:125%;line-height:.94}.lp-h1-vis{display:block}@media (width>=760px){.lp-h1-part{display:block}}.lp-w{vertical-align:top;margin:-.04em -.06em -.12em;padding:.04em .06em .12em;display:inline-block;overflow:hidden}.lp-w.is-strong{color:var(--s-ink)}.lp-w-in{display:inline-block}.lp-hero-cta{flex-wrap:wrap;align-items:center;gap:12px;margin-top:clamp(28px,4.4vh,44px);display:flex}.lp-hello{letter-spacing:-.02em;color:var(--s-dim);margin:0;font-size:clamp(19px,2vw,28px);font-weight:650}.lp-lede{letter-spacing:-.02em;max-width:42ch;color:var(--s-dim);text-wrap:pretty;margin:clamp(18px,2.6vh,28px) 0 0;font-size:clamp(19px,1.8vw,26px);font-weight:500;line-height:1.4}@media (prefers-reduced-motion:no-preference){.lp:not(.lp-restored) .lp-hero[data-ready=false] .lp-w-in{transform:translateY(108%)}.lp:not(.lp-restored) .lp-hero[data-ready=true] .lp-w-in{animation:lp-rise var(--dur-xl) var(--ease-expo) both;animation-delay:calc(var(--line,0) * 85ms)}.lp:not(.lp-restored) .lp-hero[data-ready=false] .lp-enter{opacity:0}.lp:not(.lp-restored) .lp-hero[data-ready=true] .lp-enter{animation:lp-fade-up .8s var(--ease-expo) both;animation-delay:calc(.14s + var(--d,0) * .11s)}}@keyframes lp-rise{0%{transform:translateY(108%)}to{transform:none}}@keyframes lp-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:no-preference){.lp:not(.lp-restored) .reveal{opacity:0;transition:opacity .7s var(--ease-snap) var(--reveal-delay,0s), transform .9s var(--ease-expo) var(--reveal-delay,0s);transform:translateY(24px)}.lp:not(.lp-restored) .reveal.is-in{opacity:1;transform:none}}.lp-work{padding-top:clamp(104px,17vh,184px)}.lp-work-head{margin-bottom:clamp(36px,5vw,64px)}.lp-grid{gap:clamp(40px,4.6vw,64px) clamp(16px,2.2vw,32px);display:grid}.lp-grid--featured{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-grid--more{grid-template-columns:repeat(4,minmax(0,1fr));gap:40px clamp(16px,2vw,24px)}.lp-card{min-width:0;color:inherit;border-radius:var(--card-r);outline-offset:6px;flex-direction:column;text-decoration:none;display:flex}.lp-card--hero{grid-column:1/-1}.lp-card--hero .lp-card-media{aspect-ratio:2}.lp-more-head{border-top:1px solid var(--s-line);margin:clamp(80px,9vw,128px) 0 clamp(24px,2.6vw,36px);padding-top:20px}.lp-more-title{color:var(--s-dim);margin:0;font-size:15px;font-weight:650}.lp-card-media{aspect-ratio:16/10;border-radius:var(--card-r);isolation:isolate;background:radial-gradient(120% 120% at 25% 0%, color-mix(in srgb, var(--p) 30%, var(--s-surface)), color-mix(in srgb, var(--p) 10%, var(--s-surface)));box-shadow:inset 0 0 0 1px var(--s-line);transition:transform var(--dur-md) var(--ease-snap);display:block;position:relative;overflow:hidden}.lp-card-zoom{transition:transform var(--dur-lg) var(--ease-expo);display:block;position:absolute;inset:0}.lp-card-img{object-fit:cover;object-position:top center;width:100%;height:100%;display:block}.lp-card-media{container-type:inline-size}.cv{background:color-mix(in srgb, var(--p) 16%, #ecebe6);--cv-ease:cubic-bezier(.16, 1, .3, 1);--cv-dur:.78s;display:block;position:absolute;inset:0;overflow:hidden}.cv img{width:100%;height:auto;display:block}.cv-screen{aspect-ratio:16/10;width:86%;transition:transform var(--cv-dur) var(--cv-ease);background:#fff;border-radius:1.4cqi;position:absolute;top:9%;left:7%;overflow:hidden;box-shadow:0 0 0 1px #1111110f,0 1px 2px #1111110d,0 1.2cqi 2.4cqi -1cqi #11111124;-webkit-mask-image:linear-gradient(#000 58%,#0000 97%);mask-image:linear-gradient(#000 58%,#0000 97%)}.cv-screen>img{object-fit:cover;object-position:top left;width:100%;height:100%}.cv-scrim{opacity:0;transition:opacity var(--cv-dur) var(--cv-ease);background:#0e121b66;position:absolute;inset:0}.cv-panel{opacity:0;transition:transform var(--cv-dur) var(--cv-ease), opacity .36s ease;position:absolute;overflow:hidden}.cv-panel img{object-fit:cover;object-position:top left;width:100%;height:100%}.cv-panel--right{transform:translate(104%);box-shadow:-1.5cqi 0 3cqi -1cqi #0e121b59}.cv-panel--left{border-radius:.6cqi;transform:translate(-122%);box-shadow:1.5cqi 0 3cqi -1cqi #00000073}.cv-panel--up{transform:translateY(10%);box-shadow:0 1.5cqi 3cqi -1cqi #00000080}.lp-card[data-hot] .cv-scrim{opacity:1}.lp-card[data-hot] .cv-panel{opacity:1;transform:none}.lp-card[data-hot] .cv--panel .cv-screen{transform:translateY(-1.5%)}.cv-panel--pop{transform-origin:100%;border-radius:1cqi 0 0 1cqi;transform:scale(.88)translate(5%);box-shadow:-1.5cqi 0 3.5cqi -1cqi #0e121b66}.cv-screen:has(>.cv-panel--pop)>img{transition:transform var(--cv-dur) var(--cv-ease), filter var(--cv-dur) var(--cv-ease)}.lp-card[data-hot] .cv-screen:has(>.cv-panel--pop)>img{filter:blur(1.5px);transform:scale(.97)}.cv--zoom .cv-screen>img,.cv--pan .cv-screen>img{transition:transform 1.5s var(--cv-ease)}.cv--zoom .cv-screen>img{transform-origin:34% 46%}.lp-card[data-hot] .cv--zoom .cv-screen>img{transform:scale(1.14)}.lp-card[data-hot] .cv--pan .cv-screen>img{transform:scale(1.1)translate(3.5%)}.lp-card[data-hot] :is(.cv--zoom,.cv--pan) .cv-panel{transition-delay:.14s}.cv-phone{width:var(--pw);padding:calc(var(--pw) * .018);transition:transform var(--cv-dur) var(--cv-ease);background:#151618;border-radius:15%/7%;display:block;position:absolute;box-shadow:inset 0 0 0 1px #ffffff12,0 0 0 1px #11111129,0 .4cqi .8cqi #11111114,0 2.4cqi 4cqi -2cqi #1111114d}.cv-phone-body{background:#000;border-radius:13.4%/6.2%;display:block;overflow:hidden}.cv-side{--pw:21cqi;top:22%;right:8%;transform:translateY(58%)}.cv--phone .cv-screen{width:80%}.lp-card[data-hot] .cv-side{transform:none}.lp-card[data-hot] .cv--phone .cv-screen{transform:translate(-3%)scale(.985)}.cv--swing .cv-screen{transform-origin:0%}.cv--swing .cv-side{transform-origin:100% 100%}.lp-card[data-hot] .cv--swing .cv-screen{transform:perspective(1400px)rotateY(9deg)scale(.96)}.lp-card[data-hot] .cv--swing .cv-side{transform:perspective(1000px)translate(-16%)translateY(-3%)rotateY(-16deg)rotate(-4deg)}.cv-fan-m,.cv-fan-l,.cv-fan-r{--pw:27cqi;top:11%;left:36.5%}.cv-fan-m{z-index:2;transform:translateY(3%)}.cv-fan-l{transform:translate(-46%)translateY(9%)scale(.9)rotate(-4deg)}.cv-fan-r{transform:translate(46%)translateY(9%)scale(.9)rotate(4deg)}.lp-card[data-hot] .cv-fan-m{transform:translateY(-2%)}.lp-card[data-hot] .cv-fan-l{transform:translate(-112%)translateY(7%)scale(.94)rotate(-7deg)}.lp-card[data-hot] .cv-fan-r{transform:translate(112%)translateY(7%)scale(.94)rotate(7deg)}.lp-card--hero .cv-screen{width:70%;left:9%}.lp-card--hero .cv-side{--pw:16cqi;top:16%;right:10%}@media (prefers-reduced-motion:reduce){.cv,.cv *{transition:none!important}}.lp-card-media:after{content:"";z-index:2;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--s-line);pointer-events:none;position:absolute;inset:0}.lp-card-mark{letter-spacing:-.03em;text-transform:uppercase;color:color-mix(in srgb, var(--p) 72%, var(--s-ink));place-items:center;font-size:clamp(28px,4vw,52px);font-weight:800;font-stretch:125%;display:grid;position:absolute;inset:0}.lp-card-cta{z-index:3;background:var(--s-ink);height:38px;color:var(--s-bg);opacity:0;transition:opacity var(--dur-sm) var(--ease-snap), translate var(--dur-md) var(--ease-expo);border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:13px;font-weight:700;display:inline-flex;position:absolute;bottom:14px;left:14px;translate:0 10px}.lp-card-cta svg{transition:transform var(--dur-md) var(--ease-expo)}@media (hover:hover) and (pointer:fine){.lp-card:hover .lp-card-cta{opacity:1;translate:0}.lp-card:hover .lp-card-cta svg{transform:translate(3px)}}.lp-card:focus-visible .lp-card-cta{opacity:1;translate:0}@media (hover:none){.lp-card-cta{opacity:1;height:34px;padding:0 13px;font-size:12.5px;translate:0}}.lp-card:active .lp-card-media{transform:scale(.985)}.lp-card-body{flex-direction:column;gap:8px;padding:22px 2px 0;display:flex}.lp-card-top{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.lp-card-name{letter-spacing:-.025em;margin:0;font-size:clamp(20px,1.9vw,28px);font-weight:800;font-stretch:125%;line-height:1.1}.lp-card--hero .lp-card-name{font-size:clamp(28px,3.4vw,50px)}.lp-card--feat .lp-card-name{font-size:clamp(24px,2.5vw,38px)}.lp-card--compact .lp-card-body{gap:6px;padding-top:16px}.lp-card--compact .lp-card-name{font-size:clamp(18px,1.5vw,22px)}.lp-card--compact .lp-card-hook{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14.5px;display:-webkit-box;overflow:hidden}.lp-card-year{color:var(--s-faint);font-variant-numeric:tabular-nums;flex:none;font-size:12.5px;font-weight:600}.lp-card-scope{letter-spacing:.01em;color:var(--s-faint);font-size:12.5px;font-weight:650}.lp-card-hook{max-width:52ch;color:var(--s-dim);text-wrap:pretty;font-size:clamp(15px,1.15vw,17px);line-height:1.45}.lp-card-foot{flex-wrap:wrap;align-items:baseline;gap:6px 18px;margin-top:4px;display:flex}.lp-card-outcome{color:var(--s-ink);align-items:baseline;gap:8px;font-size:13.5px;font-weight:700;display:inline-flex}.lp-card-outcome:before{content:"";background:var(--p);border-radius:50%;flex:none;width:7px;height:7px;translate:0 -1px}.site[data-mode=dark] .lp-card-media{background:radial-gradient(120% 120% at 25% 0%, color-mix(in srgb, var(--p) 30%, #10201a), color-mix(in srgb, var(--p) 10%, #0f1513))}.lp-card-media:before{content:"";z-index:4;background:var(--s-bg);transform-origin:50% 0;pointer-events:none;position:absolute;inset:0;transform:scaleY(0)}@media (prefers-reduced-motion:no-preference){.lp:not(.lp-restored) .lp-card:not(.is-in) .lp-card-media:before{transform:scaleY(1)}.lp:not(.lp-restored):has(.lp-hero[data-ready=false]) .lp-card--lead .lp-card-media:before{transform:scaleY(1)}.lp:not(.lp-restored) .lp-card:not(.lp-card--lead):not(.is-in) :is(.lp-card-img,.lp-card-mark,.cv){scale:1.12}.lp:not(.lp-restored) .lp-card:not(.is-in) .lp-card-body{opacity:0;transform:translateY(14px)}.lp:not(.lp-restored):has(.lp-hero[data-ready=false]) .lp-card--lead .lp-card-body{opacity:0;transform:translateY(14px)}.lp:not(.lp-restored) .lp-card.is-in .lp-card-media:before{transition:transform 1s var(--ease-inout) var(--reveal-delay,0s)}.lp:not(.lp-restored) .lp-card:not(.lp-card--lead).is-in :is(.lp-card-img,.lp-card-mark,.cv){transition:scale 1.5s var(--ease-expo) calc(var(--reveal-delay,0s) + .12s), opacity var(--dur-lg) var(--ease-snap)}.lp:not(.lp-restored) .lp-card.is-in .lp-card-body{transition:opacity .7s var(--ease-snap) calc(var(--reveal-delay,0s) + .26s), transform .9s var(--ease-expo) calc(var(--reveal-delay,0s) + .26s)}}.lp-nda{max-width:66ch;margin-top:clamp(44px,5vw,72px)}.lp-nda p{border-top:1px solid var(--s-line);color:var(--s-dim);margin:0;padding-top:20px;font-size:15px;line-height:1.65}.lp-lead-band{--band-ink:var(--s-bg);--band-dim:color-mix(in srgb, var(--s-bg) 70%, transparent);--band-line:color-mix(in srgb, var(--s-bg) 18%, transparent);background:var(--s-ink);color:var(--band-ink);border-radius:24px;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:48px clamp(40px,6vw,96px);padding:clamp(40px,6vw,96px);display:grid}.lp-lead-head{flex-direction:column;align-items:flex-start;display:flex}.lp-lead-band .lp-h2{max-width:13ch;margin:0;font-size:clamp(30px,3.3vw,48px)}.lp-lead-band .lp-sec-intro{color:var(--band-dim);margin-bottom:32px}.lp-lead-list{margin:0;padding:0;list-style:none}.lp-lead-item{border-top:1px solid var(--band-line);color:var(--band-dim);text-wrap:pretty;padding:20px 0;font-size:clamp(16px,1.3vw,18px);line-height:1.5}.lp-lead-item:last-child{border-bottom:1px solid var(--band-line)}.lp-lead-item strong{color:var(--band-ink);font-weight:700}.lp-lead-band .lp-btn--primary{background:var(--s-green-btn);color:#fff}.site[data-mode=dark] .lp-lead-band .lp-btn--primary{color:var(--s-bg)}@media (hover:hover) and (pointer:fine){.lp-lead-band .lp-btn--primary:hover{background:color-mix(in srgb, var(--s-green-btn) 86%, var(--s-bg))}}.lp-cme{padding-top:clamp(40px,5vw,72px)}.lp-cme-card{background:var(--s-surface);box-shadow:inset 0 0 0 1px var(--s-line);color:inherit;outline-offset:6px;border-radius:28px;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);align-items:center;gap:clamp(24px,4vw,64px);padding:clamp(18px,2.4vw,32px);text-decoration:none;display:grid}.lp-cme-text{flex-direction:column;align-items:flex-start;gap:16px;padding:clamp(6px,1.4vw,20px);display:flex}.lp-cme-label{color:var(--s-dim);font-size:15px;font-weight:600}.lp-cme-title{letter-spacing:-.03em;text-wrap:balance;font-size:clamp(24px,2.7vw,40px);font-weight:800;font-stretch:118%;line-height:1.05}.lp-cme-body{max-width:50ch;color:var(--s-dim);text-wrap:pretty;font-size:16px;line-height:1.6}.lp-cme-media{aspect-ratio:16/9;background:var(--s-bg);border-radius:18px;display:block;overflow:hidden}.lp-cme-media img{object-fit:cover;width:100%;height:100%;transition:scale var(--dur-lg) var(--ease-expo);display:block}@media (hover:hover) and (pointer:fine){.lp-cme-card:hover .lp-cme-media img{scale:1.03}.lp-cme-card:hover .lp-arrow-link svg{transform:translate(3px)}.lp-cme-card:hover .u-link{background-position:0 100%;background-size:100% 1px}}.lp-about-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:start;gap:clamp(28px,4.4vw,76px);margin-top:clamp(40px,5vw,68px);display:grid}.lp-media-frame{background:var(--s-surface);box-shadow:inset 0 0 0 1px var(--s-line);border-radius:22px;position:relative;overflow:hidden}.lp-media-frame img{object-fit:cover;width:100%;height:100%;display:block}.lp-about-portrait{aspect-ratio:4/5}.lp-bio p{color:var(--s-dim);text-wrap:pretty;margin:0 0 18px;font-size:clamp(17px,1.55vw,21px);line-height:1.6}.lp-bio p:first-child{color:var(--s-ink);font-weight:550}.lp-facts{border-top:1px solid var(--s-line);grid-template-columns:repeat(2,minmax(0,1fr));margin:30px 0 0;display:grid}.lp-fact{border-bottom:1px solid var(--s-line);flex-direction:column;gap:4px;padding:16px 18px 16px 0;display:flex}.lp-fact dt{color:var(--s-faint);font-size:14px}.lp-fact dd{color:var(--s-ink);margin:0;font-size:15.5px;font-weight:600}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.lp-media-frame .lp-drift{height:112%;animation:linear both lp-drift;animation-timeline:view();animation-range:cover;position:absolute;inset:-6% 0 auto}}}@keyframes lp-drift{0%{transform:translateY(-4%)}to{transform:translateY(4%)}}.lp-footer{max-width:var(--lp-maxw);padding:clamp(120px, 15vw, 210px) var(--lp-pad) 28px;margin:0 auto;position:relative;container-type:inline-size}.lp-plane{pointer-events:none;z-index:2;width:100vw;position:absolute;top:0;bottom:0;left:50%;overflow:hidden;translate:-50%}.lp-plane-trail{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.lp-plane-trail circle{fill:var(--s-ink);opacity:0}.lp-plane-body{will-change:transform;width:34px;height:24px;position:absolute;top:-12px;left:-17px}.lp-plane-body svg{filter:drop-shadow(0 6px 8px #00000024);display:block;overflow:visible}.lp-plane-top{fill:#fdfdfb;stroke:var(--s-ink);stroke-width:1.3px;stroke-linejoin:round}.lp-plane-fold{fill:#e4e4de;stroke:var(--s-ink);stroke-width:1.3px;stroke-linejoin:round}.lp-plane-keel{fill:#c9c9c1;stroke:var(--s-ink);stroke-width:1.1px;stroke-linejoin:round}.site[data-mode=dark] :is(.lp-plane-top,.lp-plane-fold,.lp-plane-keel){stroke:#0d0f0ee6}.lp-cta-block{flex-direction:column;align-items:flex-start;display:flex}.lp-cta-lead{color:var(--s-dim);margin:0;font-size:clamp(18px,1.6vw,22px);font-weight:600}.lp-cta{letter-spacing:-.045em;text-transform:uppercase;color:var(--s-ink);transition:translate var(--dur-lg) var(--spring), color var(--dur-md) var(--ease-snap);border-radius:12px;align-items:center;gap:.16em;margin-top:18px;font-size:clamp(40px,12cqi,156px);font-weight:800;font-stretch:125%;line-height:.9;text-decoration:none;display:inline-flex}.lp-cta[data-magnet]{transition:translate 80ms linear, color var(--dur-md) var(--ease-snap)}.lp-cta-arrow{transition:transform var(--dur-lg) var(--ease-expo);display:inline-grid}.lp-cta-arrow svg{width:.62em;height:.62em}@media (hover:hover) and (pointer:fine){.lp-cta:hover{color:var(--s-green-ink)}.lp-cta:hover .lp-cta-arrow{transform:rotate(-45deg)}}.lp-cta:focus-visible .lp-cta-arrow{transform:rotate(-45deg)}.lp-cta-sub{color:var(--s-dim);margin:20px 0 0;font-size:16px}.lp-contact-row{flex-wrap:wrap;align-items:center;gap:12px 28px;margin-top:26px;display:flex}.lp-base{border-top:1px solid var(--s-line);color:var(--s-faint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 24px;margin-top:clamp(96px,12vw,160px);padding-top:18px;font-size:13px;display:flex}.lp-totop{font:inherit;color:var(--s-dim);cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;padding:4px 0;font-weight:650;display:inline-flex}.lp-totop svg{transition:transform var(--dur-md) var(--ease-expo)}@media (hover:hover) and (pointer:fine){.lp-totop:hover{color:var(--s-ink)}.lp-totop:hover svg{transform:translateY(-2px)}}@media (width<=1080px){.lp-grid--more{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-lead-band{grid-template-columns:minmax(0,1fr)}}@media (width<=860px){.lp-hero-row{grid-template-columns:1fr}.lp-hero-cta{justify-content:flex-start}.lp-cme-card,.lp-about-grid{grid-template-columns:1fr}.lp-about-portrait{aspect-ratio:4/3}}@media (width<=680px){.lp-grid--featured{grid-template-columns:1fr}.lp-card--hero .lp-card-media{aspect-ratio:16/10}}@media (width<=520px){.lp-grid--more,.lp-facts{grid-template-columns:1fr}}.site,.cs-page{--s-bg:#f4f4f1;--s-surface:#fff;--s-ink:#111;--s-dim:#57574f;--s-faint:#6b6b62;--s-line:#1111111a;--s-line-strong:#1111112e;--s-green:#1f9d57;--s-green-ink:#14723f;--s-green-btn:#13733f;--s-focus:#14723f;font-family:var(--font-sans);color:var(--s-ink);letter-spacing:-.01em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.55}.site[data-mode=dark],.cs-page[data-mode=dark]{--s-bg:#0d0f0e;--s-surface:#161a18;--s-ink:#f1f3f0;--s-dim:#f1f3f0b3;--s-faint:#f1f3f08f;--s-line:#ffffff1c;--s-line-strong:#fff3;--s-green:#34d399;--s-green-ink:#6ee7b3;--s-green-btn:#34d399;--s-focus:#6ee7b3}.site{background:var(--s-bg);min-height:100vh;overflow-x:clip}.site *,.cs-page *{box-sizing:border-box}.site ::selection{background:color-mix(in srgb, var(--s-green) 28%, transparent)}.cs-page ::selection{background:color-mix(in srgb, var(--s-green) 28%, transparent)}.site :focus-visible,.cs-page .site-top :focus-visible{outline:2px solid var(--s-focus);outline-offset:3px}:where(.site,.cs-page .site-top) button{font:inherit;color:inherit}.u-link{transition:background-size var(--dur-sm) var(--ease-snap);background:linear-gradient(currentColor 0 0) 100% 100%/0 1px no-repeat}@media (hover:hover) and (pointer:fine){:is(a,button):hover>.u-link,a.u-link:hover{background-position:0 100%;background-size:100% 1px}}:is(a,button):focus-visible>.u-link,a.u-link:focus-visible{background-position:0 100%;background-size:100% 1px}.site-top{z-index:30;height:var(--site-header-h);--nav-pad:clamp(16px, 4vw, 48px);padding:0 max(var(--nav-pad), calc((100% - 1280px) / 2 + var(--nav-pad)));background:color-mix(in srgb, var(--s-bg) 90%, transparent);-webkit-backdrop-filter:saturate(1.4)blur(14px);transition:border-color var(--dur-md) var(--ease-snap), background-color var(--dur-md) var(--ease-snap);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky;top:0}.site-top.is-condensed,.cs-page .site-top{border-bottom-color:var(--s-line)}.site-top-left{align-items:center;gap:14px;min-width:0;display:flex}.site-top-name{letter-spacing:-.015em;color:var(--s-ink);cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:6px 0;font-size:16px;font-weight:800;font-stretch:112%}.site-back{border:1px solid var(--s-line-strong);background:var(--s-surface);height:34px;color:var(--s-ink);cursor:pointer;transition:border-color var(--dur-sm) var(--ease-snap), transform var(--dur-micro) var(--ease-snap);border-radius:999px;align-items:center;gap:6px;padding:0 14px 0 11px;font-size:13px;font-weight:650;display:inline-flex}.site-back svg{transition:transform var(--dur-md) var(--ease-expo)}@media (hover:hover) and (pointer:fine){.site-back:hover{border-color:var(--s-ink)}.site-back:hover svg{transform:translate(-3px)}}.site-nav-links{align-items:center;gap:clamp(14px,2vw,26px);display:flex;position:absolute;left:50%;transform:translate(-50%)}.site-nav-link{color:var(--s-dim);cursor:pointer;transition:color var(--dur-sm) var(--ease-snap);background:0 0;border:0;padding:8px 2px;font-size:13.5px;font-weight:600;position:relative}.site-nav-link:after{content:"";transform-origin:100%;height:1.5px;transition:transform var(--dur-md) var(--ease-expo);background:currentColor;border-radius:2px;position:absolute;bottom:3px;left:2px;right:2px;transform:scaleX(0)}.site-nav-link.is-active{color:var(--s-ink)}.site-nav-link.is-active:after{transform-origin:0;transform:scaleX(1)}@media (hover:hover) and (pointer:fine){.site-nav-link:hover{color:var(--s-ink)}.site-nav-link:hover:after{transform-origin:0;transform:scaleX(1)}}.site-top-actions{align-items:center;gap:8px;display:flex}.site-icon-btn{border:1px solid var(--s-line-strong);background:var(--s-surface);width:36px;height:36px;color:var(--s-ink);cursor:pointer;transition:border-color var(--dur-sm) var(--ease-snap), transform var(--dur-micro) var(--ease-snap);border-radius:999px;place-items:center;display:inline-grid;position:relative}.site-icon-btn:active,.site-back:active,.site-pill-link:active,.site-top-cta:active{transform:scale(.96)}.site-icon-btn:after{content:attr(data-tip);background:var(--s-ink);color:var(--s-bg);letter-spacing:0;white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--dur-sm) var(--ease-snap), translate var(--dur-sm) var(--ease-snap);border-radius:7px;padding:6px 9px;font-size:11.5px;font-weight:650;position:absolute;top:calc(100% + 8px);left:50%;translate:-50% -4px}@media (hover:hover) and (pointer:fine){.site-icon-btn:hover{border-color:var(--s-ink)}.site-icon-btn:hover:after{opacity:1;transition-delay:.35s;translate:-50%}}.site-icon-btn:focus-visible:after{opacity:1;translate:-50%}.site-theme-ico{transition:transform var(--dur-lg) var(--ease-expo), opacity var(--dur-sm) var(--ease-snap);grid-area:1/1;display:grid}.site-theme[data-mode=light] .site-theme-ico--sun,.site-theme[data-mode=dark] .site-theme-ico--moon{opacity:0;transform:rotate(-90deg)scale(.6)}.site-pill-link{border:1px solid var(--s-line-strong);background:var(--s-surface);height:36px;color:var(--s-ink);white-space:nowrap;transition:border-color var(--dur-sm) var(--ease-snap), transform var(--dur-micro) var(--ease-snap);border-radius:999px;align-items:center;gap:5px;padding:0 14px;font-size:13px;font-weight:650;text-decoration:none;display:inline-flex}.site-pill-link svg{transition:transform var(--dur-md) var(--ease-expo)}@media (hover:hover) and (pointer:fine){.site-pill-link:hover{border-color:var(--s-ink)}.site-pill-link:hover svg{transform:translate(2px,-2px)}}.site-top-cta{background:var(--s-green-btn);color:#fff;white-space:nowrap;height:36px;transition:translate var(--dur-lg) var(--spring), transform var(--dur-micro) var(--ease-snap), filter var(--dur-sm) var(--ease-snap);border-radius:999px;align-items:center;padding:0 16px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.site-top-cta[data-magnet]{transition:translate 80ms linear, transform var(--dur-micro) var(--ease-snap), filter var(--dur-sm) var(--ease-snap)}[data-mode=dark] .site-top-cta{color:#062217}@media (hover:hover) and (pointer:fine){.site-top-cta:hover{filter:brightness(1.08)}}.site-progress{display:none}@supports (animation-timeline:scroll()){@media (prefers-reduced-motion:no-preference){.site-progress{background:var(--s-green);transform-origin:0;pointer-events:none;height:2px;animation:linear both site-progress;animation-timeline:scroll(root);display:block;position:absolute;bottom:-1px;left:0;right:0}}}@keyframes site-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (width<=980px){.site-nav-links{display:none}}@media (width<=640px){.site-resume{display:none}.site-top-name{font-size:15px}}@media (width<=400px){.site-top{gap:8px}.site-top-actions{gap:6px}.site-top-cta{padding:0 13px}.cs-page .site-top-name{display:none}}.cs-page{background:var(--s-bg);min-height:100vh}.cs-main{outline:none;display:block}.cs-page :is(.bn-nav,.cm-nav,.gf-nav,.ar-nav,.ot-nav){top:var(--site-header-h)}.cs-missing{text-align:center;color:var(--s-dim);padding:120px 24px}.cs-loading{height:calc(100vh - var(--site-header-h));place-items:start center;padding-top:30vh;display:grid}.cs-loading-bar{background:linear-gradient(90deg, transparent, var(--s-green), transparent) 0 0 / 50% 100% no-repeat, var(--s-line);width:120px;height:2px;animation:cs-loading 1.1s var(--ease-inout) infinite;border-radius:2px}@keyframes cs-loading{0%{background-position:-100% 0,0 0}to{background-position:200% 0,0 0}}.os-boot{color:#ffffffb8;font:600 14px/1 var(--font-sans);letter-spacing:.01em;background:#0b0d10;grid-auto-flow:column;place-content:center;align-items:center;gap:10px;display:grid;position:fixed;inset:0}.os-boot-dot{width:8px;height:8px;animation:os-boot .9s var(--ease-inout) infinite alternate;background:#34d399;border-radius:50%}@keyframes os-boot{0%{opacity:.25;transform:scale(.7)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.os-boot-dot,.cs-loading-bar{animation:none}}.cs-missing p{margin:0 0 18px}.cs-retry{border:1px solid var(--s-line-strong,#1111112e);background:var(--s-surface,#fff);height:40px;color:var(--s-ink,#111);font:650 14px/1 var(--font-sans);cursor:pointer;border-radius:999px;align-items:center;padding:0 18px;text-decoration:none;display:inline-flex}
