.wk-root{--wk-apps:var(--page-violet-400,#a78bfa);--wk-projects:var(--page-violet-500,#8b5cf6);--wk-clients:var(--page-violet-700,#6d28d9);--wk-apps-ink:#08060f;--wk-projects-ink:#08060f;--wk-clients-ink:#fff;--wk-ease:cubic-bezier(.25, 1, .5, 1);--wk-switch-stuck:76px;--wk-band-anchor:calc(var(--header-offset) + var(--wk-switch-stuck) + 8px)}@media (min-width:900px){.wk-root{--wk-band-anchor:var(--header-offset)}}.wk-top{position:relative;overflow-x:clip}.wk-hero{z-index:1;min-height:380px;padding-top:20px;padding-bottom:64px;position:relative}.wk-hero-text{max-width:100%;opacity:calc(1 - .28 * var(--wk-k,0));transform:translateY(calc(-20px * var(--wk-k,0)));will-change:opacity, transform;flex-direction:column;align-items:flex-start;display:flex}.wk-hero-text .ap-answer{opacity:calc(1 - var(--wk-k,0))}.wk-h1-t{font-family:var(--page-font-display);letter-spacing:-.025em;font-variation-settings:"wdth" 112;text-wrap:balance;padding-bottom:.06em;font-size:clamp(40px,6.4cqi,112px);font-weight:900;line-height:.98}.wk-scene{z-index:0;pointer-events:none;height:500px;position:absolute;inset:0 0 auto;overflow:visible}.wk-top[data-wk-gone="1"] .wk-scene{visibility:hidden}.wk-bp-w{opacity:calc(.34 * var(--wk-k,0))}.wk-bp-n{opacity:calc(.9 * var(--wk-k,0))}.wk-scene[data-poster="1"] .wk-bp-w{opacity:.34}.wk-scene[data-poster="1"] .wk-bp-n{opacity:.9}.wk-blocks{animation:wk-enter 1.2s var(--wk-ease) both;position:absolute;inset:0}.wk-flow{animation:3.2s ease-in-out infinite alternate wk-flow;position:absolute;inset:0}.wk-top[data-wk-moving="1"] .wk-flow{animation-play-state:paused}.wk-blk{border-radius:3px;position:absolute}@keyframes wk-enter{0%{opacity:0;transform:translate(-72px)}to{opacity:1;transform:none}}@keyframes wk-flow{0%{transform:translate(0)}to{transform:translateX(calc(var(--wk-gap,40px) * .7))}}.wk-scene svg{width:100%;height:100%;position:absolute;inset:0}.wk-scene-light{background:radial-gradient(closest-side,#8b5cf638,#8b5cf600);border-radius:50%;width:70%;height:120%;position:absolute;top:-30%;right:-10%}@media (min-width:900px){.wk-hero{margin-top:calc(-1 * var(--header-offset));padding-top:var(--hero-text-top);min-height:calc(60svh - 80px);padding-bottom:64px}.wk-hero-text{max-width:min(860px,62cqi)}.wk-scene{height:70svh}}.wk-root{--wk-dock-fade:var(--page-dur-base,.24s);--wk-dock-ease:var(--page-ease-out,cubic-bezier(.25, 1, .5, 1))}.wk-switch{z-index:6;transition:padding var(--page-dur-fast), background var(--page-dur-fast), box-shadow var(--page-dur-fast);padding:8px 0 24px;position:sticky;top:0}.wk-switch[data-stuck=true]{background:var(--page-glass-bg-scrolled,#08070db8);-webkit-backdrop-filter:var(--page-glass-filter,blur(16px));box-shadow:var(--page-glass-shadow-scrolled,0 12px 32px -16px #0009);padding:6px 0}@media (min-width:900px){.wk-switch{z-index:auto;transition:opacity var(--wk-dock-fade) var(--wk-dock-ease), visibility 0s linear 0s;position:relative;top:auto}.wk-switch[data-docked=true]{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--wk-dock-fade) var(--wk-dock-ease), visibility 0s linear var(--wk-dock-fade)}}@media (prefers-reduced-motion:reduce){.wk-switch,.wk-switch[data-docked=true]{--wk-dock-fade:var(--page-dur-fast)}}.wk-tabs{border-radius:var(--page-radius-button);border:1px solid var(--page-line-strong);-webkit-backdrop-filter:blur(8px);background:#05060a99;grid-template-columns:1fr 1fr 1fr;gap:4px;padding:4px;display:grid}.wk-tab{border-radius:calc(var(--page-radius-button) - 4px);min-height:52px;color:var(--page-ink-2);font-family:var(--page-font-display);font-variation-settings:"wdth" 112;cursor:pointer;transition:background var(--page-dur-fast), color var(--page-dur-fast);background:0 0;border:0;justify-content:center;align-items:center;padding:0 8px;font-size:15px;font-weight:800;display:flex;position:relative}.wk-tab:hover{color:var(--page-ink);background:var(--page-surface-hover)}.wk-tab[aria-selected=true]{color:var(--page-ink);background:var(--page-surface-active);box-shadow:inset 0 0 0 1px var(--page-line-strong)}.wk-tab-bar{background:var(--page-violet-400);transform-origin:0;height:3px;transition:transform .24s var(--wk-ease);border-radius:3px;position:absolute;bottom:6px;left:14px;right:14px;transform:scaleX(0)}.wk-tab[data-kind=apps] .wk-tab-bar{background:var(--wk-apps)}.wk-tab[data-kind=projects] .wk-tab-bar{background:var(--wk-projects)}.wk-tab[data-kind=clients] .wk-tab-bar{background:var(--wk-clients)}.wk-tab[aria-selected=true] .wk-tab-bar{transform:scaleX(1)}.wk-tab:focus-visible{box-shadow:var(--page-focus);outline:0}.wk-tab-l{display:none}@media (min-width:900px){.wk-tabs{grid-template-columns:1fr 1fr 1fr;gap:8px;padding:6px}.wk-tab{min-height:60px;font-size:20px}.wk-tab-l{display:inline}.wk-tab-s{display:none}}.wk-band{z-index:1;scroll-margin-top:var(--wk-band-anchor);padding-top:32px;padding-bottom:56px;position:relative}@media (min-width:900px){.wk-band{padding-top:48px;padding-bottom:80px}}.wk-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px 32px;margin-bottom:28px;display:flex}.wk-h2{font-family:var(--page-font-display);letter-spacing:-.02em;font-variation-settings:"wdth" 118;flex-wrap:wrap;align-items:baseline;gap:14px;margin:0;font-size:clamp(32px,3.6cqi,56px);font-weight:900;line-height:1.04;display:flex}.wk-mark{--mk:var(--wk-apps);background:linear-gradient(var(--mk), var(--mk)) left center / 100% 100% no-repeat;color:var(--wk-apps-ink);-webkit-box-decoration-break:clone;box-decoration-break:clone;transition:background-size .4s var(--wk-ease) 80ms, color .16s linear .16s;border-radius:10px;padding:0 .12em}.wk-mark[data-kind=projects]{--mk:var(--wk-projects);color:var(--wk-projects-ink)}.wk-mark[data-kind=clients]{--mk:var(--wk-clients);color:var(--wk-clients-ink)}.wk-fx .wk-head:not(.is-in) .wk-mark{color:var(--page-ink);background-size:0 100%;transition:none}.wk-cnt{font-family:var(--page-font-mono);color:var(--page-ink-2);font-size:16px;font-weight:500}.wk-tools{flex-wrap:wrap;align-items:center;gap:12px 24px;display:flex}.wk-search{border-radius:var(--page-radius-button);border:1px solid var(--page-line-strong);background:#05060a99;align-items:center;gap:8px;min-width:min(100%,320px);height:52px;padding:0 6px 0 20px;display:flex}.wk-search:focus-within{border-color:var(--page-violet-400);box-shadow:var(--page-focus)}.wk-search input{min-width:0;height:100%;color:var(--page-ink);font-family:var(--page-font-body);appearance:none;background:0 0;border:0;outline:0;flex:1;font-size:15px}.wk-search input::placeholder{color:var(--page-ink-3)}.wk-search button{background:var(--page-surface-active);height:40px;color:var(--page-ink);font-family:var(--page-font-body);cursor:pointer;border:0;border-radius:12px;flex:none;padding:0 16px;font-size:14px;font-weight:600}.wk-all{min-height:44px;color:var(--page-ink);text-underline-offset:6px;text-decoration:underline;-webkit-text-decoration-color:var(--wk-apps);text-decoration-color:var(--wk-apps);align-items:center;font-size:15px;font-weight:600;display:inline-flex}.wk-grid{grid-template-columns:minmax(0,1fr);gap:12px;margin:0;padding:0;list-style:none;display:grid}.wk-grid>li{min-width:0;display:flex}@media (min-width:640px){.wk-grid-2,.wk-grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:900px){.wk-grid{gap:16px}}@media (min-width:1200px){.wk-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}}.wk-sum{color:var(--page-ink-2);text-wrap:pretty;margin-top:20px;font-size:17px;line-height:1.5}.wk-appr{font-family:var(--page-font-mono);letter-spacing:.06em;color:var(--page-ink-3);font-size:11px}.wk-list{flex-direction:column;gap:20px;margin:0;padding:0;list-style:none;display:flex}.wk-proj{border-radius:var(--page-radius-card);border:1px solid var(--page-line-strong);background:var(--page-bg-raised);color:var(--page-ink);grid-template-columns:minmax(0,1fr);gap:16px;padding:12px;text-decoration:none;display:grid}.wk-proj:hover{border-color:var(--page-violet-300);box-shadow:inset 0 0 80px -40px #a78bfa59}@media (min-width:900px){.wk-proj{grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:center;gap:32px;padding:16px}}.wk-frame{aspect-ratio:16/9;background:radial-gradient(90% 120% at 20% 0%, #8b5cf62e, transparent 60%), var(--page-bg);border-radius:18px;position:relative;overflow:hidden}.wk-frame i{background:var(--wk-projects);position:absolute}.wk-frame i:first-child{height:1px;top:14px;left:14px;right:14px}.wk-frame i:nth-child(2){width:1px;top:14px;bottom:14px;right:14px}.wk-frame i:nth-child(3){height:1px;bottom:14px;left:14px;right:14px}.wk-frame i:nth-child(4){width:1px;top:14px;bottom:14px;left:14px}.wk-frame-mg{font-family:var(--page-font-display);font-variation-settings:"wdth" 125;color:var(--page-violet-300);text-shadow:0 0 40px #8b5cf680;place-items:center;font-size:clamp(48px,8cqi,112px);font-weight:900;display:grid;position:absolute;inset:0}.wk-proj-body{flex-direction:column;align-items:flex-start;gap:14px;padding:8px 4px;display:flex}.wk-chips{flex-wrap:wrap;gap:8px;display:flex}.wk-kind{border-radius:var(--page-radius-full);background:var(--wk-projects);height:30px;color:var(--wk-projects-ink);font-family:var(--page-font-mono);letter-spacing:.1em;text-transform:uppercase;align-items:center;padding:0 12px;font-size:12px;font-weight:600;display:inline-flex}.wk-kind[data-kind=clients]{background:var(--wk-clients);color:var(--wk-clients-ink)}.wk-year{border-radius:var(--page-radius-full);border:1px solid var(--page-line-strong);height:30px;font-family:var(--page-font-mono);color:var(--page-ink);align-items:center;padding:0 12px;font-size:12px;display:inline-flex}.wk-proj-n{font-family:var(--page-font-display);letter-spacing:-.02em;font-variation-settings:"wdth" 118;font-size:clamp(32px,3.4cqi,52px);font-weight:900;line-height:1.05}.wk-proj-l{color:var(--page-ink-2);text-wrap:pretty;max-width:46ch;font-size:17px;line-height:1.55}.wk-view{align-items:center;min-height:44px;font-size:15px;font-weight:600;display:inline-flex}.wk-fx [data-wk-in]{transition:opacity .4s var(--wk-ease), transform .4s var(--wk-ease)}.wk-fx .wk-head:not(.is-in),.wk-fx .wk-quiet:not(.is-in),.wk-fx .wk-rv:not(.is-in){opacity:0;transform:translateY(12px)}.wk-frame i{transition:transform .4s var(--wk-ease)}.wk-frame i:first-child{transform-origin:0}.wk-frame i:nth-child(2){transform-origin:top;transition-delay:80ms}.wk-frame i:nth-child(3){transform-origin:100%;transition-delay:.16s}.wk-frame i:nth-child(4){transform-origin:bottom;transition-delay:.24s}.wk-fx .wk-frame:not(.is-in) i:first-child,.wk-fx .wk-frame:not(.is-in) i:nth-child(3){transform:scaleX(0)}.wk-fx .wk-frame:not(.is-in) i:nth-child(2),.wk-fx .wk-frame:not(.is-in) i:nth-child(4){transform:scaleY(0)}.wk-frame-mg{transition:opacity .4s var(--wk-ease) .24s}.wk-fx .wk-frame:not(.is-in) .wk-frame-mg{opacity:0}@media (prefers-reduced-motion:reduce){.wk-fx .wk-head:not(.is-in),.wk-fx .wk-quiet:not(.is-in),.wk-fx .wk-rv:not(.is-in){opacity:0;transform:none}.wk-fx [data-wk-in]{transition:opacity .15s linear}.wk-fx .wk-frame:not(.is-in) i{transform:none}.wk-frame i{transition:none}.wk-fx .wk-frame:not(.is-in) .wk-frame-mg{opacity:1}.wk-fx .wk-head:not(.is-in) .wk-mark{background-size:100% 100%}.wk-hero-text{transform:none}.wk-tab-bar{transition:none}}.wk-quiet{border-radius:var(--page-radius-card);border:1px dashed var(--page-line-strong);background:var(--page-surface);flex-direction:column;align-items:flex-start;gap:20px;padding:28px;display:flex}.wk-quiet p{max-width:46ch;color:var(--page-ink-2);text-wrap:pretty;margin:0;font-size:18px;line-height:1.5}.wk-dhero{padding-bottom:64px;position:relative;overflow:clip visible}.wk-dtext{z-index:1;flex-direction:column;align-items:flex-start;padding-top:20px;padding-bottom:8px;display:flex;position:relative}.wk-deye{flex-wrap:wrap;align-items:center;gap:10px;margin-top:12px;display:flex}.wk-dh1{flex-direction:column;gap:10px;margin:12px 0 0;display:flex}.wk-dh1-big{font-family:var(--page-font-display);letter-spacing:-.025em;font-variation-settings:"wdth" 112;overflow-wrap:anywhere;font-size:clamp(44px,12cqi,64px);font-weight:900;line-height:.95}.wk-dh1-tail{font-family:var(--page-font-display);font-variation-settings:"wdth" 112;text-wrap:balance;font-size:clamp(22px,5cqi,28px);font-weight:700;line-height:1.15}.wk-dh1-tail .ul-hl,.wk-dh1-tail mark{padding:0 .12em}.wk-dans{max-width:36rem;color:var(--page-ink-2);text-wrap:pretty;margin:20px 0 0;font-size:18px;line-height:1.6}.wk-dcta{flex-wrap:wrap;gap:12px;margin-top:28px;display:flex}.wk-dscene{z-index:0;pointer-events:none;height:260px;margin-top:8px;position:relative}.wk-mock{aspect-ratio:16/10;border:1px solid var(--page-glass-edge);background:linear-gradient(160deg, color-mix(in oklab, var(--page-violet-500) 18%, #0b0914), #08070d 70%);border-radius:14px;flex-direction:column;width:min(86%,560px);display:flex;position:absolute;top:50%;left:50%;overflow:hidden;transform:translate(-50%,-50%);box-shadow:0 40px 80px #0000008c,inset 0 1px #ffffff24}.wk-mock-bar{border-bottom:1px solid var(--page-line);gap:6px;padding:10px 12px;display:flex}.wk-mock-bar span{background:var(--page-line-strong);border-radius:50%;width:8px;height:8px}.wk-mock-body{flex-direction:column;flex:1;gap:10px;padding:16px;display:flex}.wk-mock-body span{background:var(--page-line-strong);border-radius:4px;height:8px;display:block}.wk-mock-body span:first-child{background:var(--page-violet-400);opacity:.8;width:36%;height:10px}.wk-mock-cap{font-family:var(--page-font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--page-ink-3);font-size:11px;position:absolute;bottom:10px;right:12px}.wk-dlight{background:radial-gradient(closest-side,#8b5cf647,#0000);border-radius:50%;width:80%;height:140%;position:absolute;top:-30%;right:-10%}@media (min-width:900px){.wk-dhero{margin-top:calc(-1 * var(--header-offset));box-sizing:border-box;flex-direction:column;min-height:100svh;display:flex}.wk-dtext{padding-top:var(--hero-text-top);max-width:min(760px,52cqi);padding-bottom:56px}.wk-dh1-big{font-variation-settings:"wdth" 125;font-size:clamp(44px,min(8cqi,11svh),128px)}.wk-dh1-tail{font-size:clamp(20px,min(2.4cqi,3.6svh),38px)}.wk-dscene{width:52%;height:min(62svh,100svh - 168px);margin-top:0;position:absolute;top:120px;right:0}}.wk-dsec{z-index:1;flex-direction:column;gap:24px;padding-top:56px;display:flex;position:relative}@media (min-width:900px){.wk-dsec{gap:32px;padding-top:88px}}.wk-dsec h2{font-family:var(--page-font-display);letter-spacing:-.02em;font-variation-settings:"wdth" 118;text-wrap:balance;margin:0;font-size:clamp(32px,3.6cqi,56px);font-weight:900;line-height:1.04}.wk-ctx{max-width:62ch;color:var(--page-ink-2);margin:0;font-size:18px;line-height:1.6}.wk-ctx-lead{max-width:40ch;font-family:var(--page-font-display);letter-spacing:-.015em;text-wrap:balance;overflow-wrap:anywhere;margin:0;font-size:clamp(24px,2.6cqi,40px);font-weight:800;line-height:1.15}.wk-dsec-ctx{gap:20px}.wk-steps{border-top:1px solid var(--page-line-strong);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.wk-steps li{border-bottom:1px solid var(--page-line-strong);gap:6px;padding:22px 0;display:grid}.wk-steps .n{font-family:var(--page-font-mono);color:var(--page-ink-3);font-size:13px}.wk-steps .h{font-family:var(--page-font-display);font-variation-settings:"wdth" 112;font-size:24px;font-weight:800}.wk-steps .b{color:var(--page-ink-2);font-size:16px;line-height:1.55}.wk-results{grid-template-columns:minmax(0,1fr);gap:16px;margin:0;padding:0;list-style:none;display:grid}@media (min-width:900px){.wk-results{grid-template-columns:repeat(3,minmax(0,1fr))}}.wk-results li{border-radius:var(--page-radius-card);border:1px solid var(--page-line-strong);background:var(--page-surface);font-family:var(--page-font-display);font-variation-settings:"wdth" 112;flex-direction:column;gap:10px;padding:24px;font-size:22px;font-weight:800;display:flex}.wk-results small{font-family:var(--page-font-mono);color:var(--page-ink-3);font-size:12px;font-weight:400}.wk-quote{flex-direction:column;gap:16px;margin:0;display:flex}.wk-quote blockquote{font-family:var(--page-font-display);font-variation-settings:"wdth" 112;text-wrap:balance;margin:0;font-size:clamp(24px,3cqi,44px);font-weight:800;line-height:1.2}.wk-quote figcaption{font-family:var(--page-font-mono);color:var(--page-ink-2);font-size:13px}.wk-sample{border-radius:var(--page-radius-card);border:1px solid var(--page-line-strong);background:var(--page-bg-raised);gap:24px;padding:28px;display:grid}.wk-sample img{border-radius:14px;width:100%;height:auto;display:block}.wk-dtail{padding-top:64px;padding-bottom:96px}.wk-mockwrap{position:absolute;inset:0}.wk-cs-stage{perspective:1600px;transform-style:preserve-3d;position:absolute;inset:0}.wk-cs-plane{width:78%;aspect-ratio:var(--page-screen-ratio,16 / 10);border:1px solid var(--page-glass-edge);background:linear-gradient(160deg, color-mix(in oklab, var(--page-violet-500) 18%, #0b0914), #08070d 70%);will-change:transform, opacity;border-radius:14px;flex-direction:column;display:flex;position:absolute;top:50%;left:50%;overflow:hidden;box-shadow:0 20px 40px #0006}.wk-cs-plane[data-front="1"]{box-shadow:0 40px 80px #0000008c,inset 0 1px #ffffff24}@media (min-width:900px){.wk-cs-plane{width:70%}}.wk-cs-bar{border-bottom:1px solid var(--page-line);flex:none;align-items:center;gap:6px;height:28px;padding:0 12px;display:flex}.wk-cs-bar span{background:var(--page-line-strong);border-radius:50%;width:8px;height:8px}.wk-cs-plane img{object-fit:cover;object-position:top;flex:1;width:100%;min-height:0;display:block}@media (min-width:900px){.wk-dsec-tech{grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);align-items:start;gap:32px 56px;display:grid}.wk-sticky{top:calc(var(--header-offset) + 24px);flex-direction:column;gap:12px;display:flex;position:sticky}.wk-sticky .wk-ctx{max-width:22rem;font-size:15px}}.wk-sticky{flex-direction:column;gap:12px;display:flex}.wk-dsec-rail{gap:28px}.wk-rail-head{justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.wk-dsec .wk-rail-head h2{text-wrap:balance}.wk-rail-btns{gap:8px;display:flex}.wk-rail-btns button{border:1px solid var(--page-line-strong);background:var(--page-surface);width:48px;height:48px;color:var(--page-ink);cursor:pointer;transition:background var(--page-dur-fast), opacity var(--page-dur-fast);border-radius:999px;place-items:center;font-size:20px;display:grid}.wk-rail-btns button:hover:not(:disabled){background:var(--page-surface-hover)}.wk-rail-btns button:focus-visible{box-shadow:var(--page-focus);outline:0}.wk-rail-btns button:disabled{opacity:.35;cursor:default}.wk-rail{overscroll-behavior-x:contain;scroll-snap-type:x proximity;scrollbar-width:none;gap:20px;margin:0;padding:4px 0 16px;list-style:none;display:flex;overflow-x:auto}.wk-rail::-webkit-scrollbar{display:none}.wk-rail:focus-visible{box-shadow:var(--page-focus);outline:0}.wk-rail li{scroll-snap-align:start;flex:none}.wk-rail img{border:1px solid var(--page-glass-edge);border-radius:14px;width:auto;max-width:86vw;height:320px;display:block}@media (min-width:900px){.wk-rail img{height:400px}}@media (prefers-reduced-motion:reduce){.wk-cs-plane{will-change:auto}}
