@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/f639721981034f88-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/9766a7e9e2e0ad5a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/b66cf8e69499582a-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/aa016aab0e6d1295-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Geist;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/22a5144ee8d83bca-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Geist Fallback;src:local("Arial");ascent-override:95.94%;descent-override:28.16%;line-gap-override:0.00%;size-adjust:104.76%}.__className_8eaea4{font-family:Geist,Geist Fallback;font-style:normal}.__variable_8eaea4{--font-geist:"Geist","Geist Fallback"}:root{--bg:#f3f1ed;--surface:#ffffff;--surface-2:#e9e5df;--ink:#1b1714;--ink-soft:#5d554e;--accent:#4a2c1d;--accent-hover:#6b4029;--on-accent:#fbf8f4;--glow:rgba(34,211,238,0.28);--glow-soft:rgba(34,211,238,0.14);--font:var(--font-geist),"SF Pro Text",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;--text:1.0625rem;--display:clamp(2.6rem,1.6rem + 4.6vw,5.4rem);--gutter:clamp(16px,3vw,32px);--column:720px;--radius-pill:999px;--radius-bubble:22px;--spring:cubic-bezier(0.22,1,0.36,1);--liquid-blend:multiply;--liquid-opacity:0.5;--liquid-blur:56px;color-scheme:light}:root[data-theme=dark]{--bg:#1a1613;--surface:#26201c;--surface-2:#322a24;--ink:#f3f1ed;--ink-soft:#b3a99f;--accent:#d8a57c;--accent-hover:#e8bd99;--on-accent:#1a1613;--glow:rgba(34,211,238,0.4);--glow-soft:rgba(34,211,238,0.16);--liquid-blend:screen;--liquid-opacity:0.42;--liquid-blur:64px;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#1a1613;--surface:#26201c;--surface-2:#322a24;--ink:#f3f1ed;--ink-soft:#b3a99f;--accent:#d8a57c;--accent-hover:#e8bd99;--on-accent:#1a1613;--glow:rgba(34,211,238,0.4);--glow-soft:rgba(34,211,238,0.16);--liquid-blend:screen;--liquid-opacity:0.42;--liquid-blur:64px;color-scheme:dark}}*,:after,:before{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;min-height:100dvh;background:var(--bg);color:var(--ink);font-family:var(--font);font-size:var(--text);line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;transition:background-color .35s var(--spring),color .35s var(--spring)}.liquid{position:fixed;inset:0;z-index:30;width:100%;height:100%;pointer-events:none;mix-blend-mode:var(--liquid-blend);opacity:var(--liquid-opacity);filter:blur(var(--liquid-blur))}.stage{position:relative;z-index:1}.theme-toggle{width:40px;padding:0;justify-content:center}button,textarea{font:inherit;color:inherit}a{color:var(--accent);text-underline-offset:.18em;text-decoration-thickness:.08em}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}::selection{background:var(--accent);color:var(--on-accent)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.topbar{position:fixed;inset:0 0 auto 0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px var(--gutter);background:var(--bg)}.wordmark{background:none;border:0;padding:0;font-weight:600;font-size:1.0625rem;letter-spacing:-.01em;cursor:pointer}.topnav{display:flex;align-items:center;gap:4px}.btn,.navlink{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px;border:0;border-radius:var(--radius-pill);font-size:.9375rem;font-weight:500;text-decoration:none;cursor:pointer;transition:background-color .2s var(--spring),transform .2s var(--spring)}.navlink{background:transparent;color:var(--ink)}.navlink:hover{background:var(--surface-2);color:var(--ink)}.btn{background:var(--accent)}.btn,.btn:hover{color:var(--on-accent)}.btn:hover{background:var(--accent-hover)}.btn:active,.navlink:active{transform:scale(.96)}.stage{width:100%;max-width:calc(var(--column) + var(--gutter) * 2);margin:0 auto;padding:0 var(--gutter)}.stage.is-hero{min-height:100dvh;padding-top:88px;padding-bottom:48px}.hero,.stage.is-hero{display:flex;align-items:center}.hero{width:100%;flex-direction:column;text-align:center}.avatar-hero{width:min(300px,62vw);aspect-ratio:1;margin-bottom:28px}.avatar{position:relative;margin:0 auto}.avatar-disc{position:relative;aspect-ratio:1;border-radius:50%;overflow:hidden;background:#ffffff}.avatar-still{position:absolute;top:calc(-100% * 8 / 712);left:50%;height:calc(100% * 720 / 712);width:auto;max-width:none;transform:translateX(-50%);-webkit-user-select:none;-moz-user-select:none;user-select:none}.avatar-canvas{position:absolute;inset:0;width:100%;height:100%}.avatar-thought{position:absolute;top:2%;right:-10%;display:flex;align-items:flex-end;gap:5px}.avatar-thought span{display:block;border-radius:50%;background:var(--accent)}.avatar-thought span:first-child{width:8px;height:8px}.avatar-thought span:nth-child(2){width:11px;height:11px;margin-bottom:8px}.avatar-thought span:nth-child(3){width:14px;height:14px;margin-bottom:18px}.hero h1{margin:0;font-size:var(--display);font-weight:650;line-height:.98;letter-spacing:-.045em}.wave{display:inline-block;transform-origin:70% 80%}.subtitle{margin:16px 0 0;font-size:clamp(1.125rem,1rem + .6vw,1.5rem);font-weight:500;letter-spacing:-.015em;color:var(--ink-soft)}.hero-composer{width:100%;margin-top:40px}.composer{display:flex;align-items:flex-end;gap:10px;width:100%;padding:6px 6px 6px 20px;background:var(--surface);border-radius:26px;transition:box-shadow .25s var(--spring)}.composer:focus-within{box-shadow:0 0 0 2px var(--accent)}.composer textarea{flex:1 1;min-height:40px;padding:9px 0 8px;border:0;outline:none;background:transparent;resize:none;line-height:1.45;font-size:var(--text)}.composer textarea::placeholder{color:var(--ink-soft);font-size:.9375rem}.is-hero .composer textarea{font-size:1.0625rem}.send{flex:none;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:var(--accent);color:var(--on-accent);cursor:pointer;transition:background-color .2s var(--spring),transform .15s var(--spring),opacity .2s}.send:hover:not(:disabled){background:var(--accent-hover)}.send:active:not(:disabled){transform:scale(.92)}.send:disabled{opacity:.3;cursor:default}.chips,.quick{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.chips{margin-top:24px}.chip{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border:0;border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font-size:.9688rem;font-weight:500;cursor:pointer;transition:background-color .2s var(--spring),color .2s var(--spring)}.chip:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.chip:disabled{opacity:.45;cursor:default}.chip-small{min-height:36px;padding:0 14px;font-size:.875rem}.stage.is-chat{padding-top:80px;padding-bottom:200px}.chat-head{position:-webkit-sticky;position:sticky;top:72px;z-index:10;display:flex;align-items:center;gap:16px;padding:8px 0 20px;background:var(--bg)}.avatar-chat{width:96px;aspect-ratio:1;flex:none}.chat-title{margin:0;font-size:1.5rem;font-weight:650;letter-spacing:-.03em;line-height:1.1}.chat-sub{margin:4px 0 0;color:var(--ink-soft);font-size:.9375rem}.thread{flex-direction:column;gap:14px;padding-top:8px}.msg,.thread{display:flex}.msg-user{justify-content:flex-start}.msg-assistant{justify-content:flex-end}.bubble{max-width:min(88%,62ch);padding:12px 18px;border-radius:var(--radius-bubble);overflow-wrap:anywhere}.msg-user .bubble{background:var(--surface-2);border-bottom-left-radius:8px}.msg-assistant .bubble{background:var(--surface);border-bottom-right-radius:8px;box-shadow:0 0 0 1px var(--glow),0 0 28px var(--glow-soft)}.bubble.is-streaming{box-shadow:0 0 0 1px var(--glow),0 0 36px var(--glow)}.bubble>:first-child{margin-top:0}.bubble>:last-child{margin-bottom:0}.bubble ol,.bubble p,.bubble ul{margin:0 0 .7em}.bubble ol,.bubble ul{padding-left:1.2em}.bubble li+li{margin-top:.25em}.bubble strong{font-weight:650}.bubble h1,.bubble h2,.bubble h3{margin:.6em 0 .35em;font-size:1.0625rem;font-weight:650;letter-spacing:-.01em}.bubble code{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:.875em;padding:.1em .35em;border-radius:6px}.bubble code,.bubble pre{background:var(--surface-2)}.bubble pre{margin:0 0 .7em;padding:12px 14px;border-radius:12px;overflow-x:auto}.bubble pre code{padding:0;background:none}.bubble table{border-collapse:collapse;margin:0 0 .7em;font-size:.9375rem}.bubble td,.bubble th{padding:6px 10px;border:1px solid var(--surface-2);text-align:left}.bubble-error{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.bubble-error .chip{background:var(--surface-2)}.typing{display:inline-flex;gap:6px;padding:16px 18px}.typing span{width:8px;height:8px;border-radius:50%;background:var(--accent);opacity:.6}.dock{position:fixed;inset:auto 0 0 0;z-index:20;padding:12px var(--gutter) calc(16px + env(safe-area-inset-bottom));background:var(--bg)}.dock-inner{max-width:var(--column);margin:0 auto;display:flex;flex-direction:column;gap:10px}.quick{justify-content:flex-start}@media (max-width:560px){.navlink span{display:none}.navlink{width:40px;padding:0;justify-content:center}.hero-composer{margin-top:32px}.is-hero .composer textarea{font-size:1rem;min-height:58px}.composer textarea::placeholder{font-size:.875rem}.chips{gap:8px}.chip{font-size:.9375rem;padding:0 16px}.chat-head{top:68px}.avatar-chat{width:72px}.quick{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 calc(var(--gutter) * -1);padding:0 var(--gutter)}.quick::-webkit-scrollbar{display:none}.quick li{flex:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;scroll-behavior:auto!important}}.projects{position:relative;margin:4px 0}.projects-rail{list-style:none;margin:0;padding:4px 2px 6px;display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding:0 2px;scrollbar-width:none;overscroll-behavior-x:contain}.projects-rail::-webkit-scrollbar{display:none}.project{flex:0 0 min(300px,80%);scroll-snap-align:start;display:flex;flex-direction:column;background:var(--surface);border-radius:20px;overflow:hidden;box-shadow:0 0 0 1px var(--glow-soft)}.projects.is-single .project{flex-basis:100%}.project-shot{position:relative;display:block;padding:0;border:0;background:#f4f3f1;cursor:zoom-in;aspect-ratio:16/10;overflow:hidden}.project-shot img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s var(--spring)}.project-shot:hover img{transform:scale(1.04)}.project-zoom{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--accent);color:var(--on-accent);opacity:0;transform:scale(.85);transition:opacity .2s var(--spring),transform .2s var(--spring)}.project-shot:focus-visible .project-zoom,.project-shot:hover .project-zoom{opacity:1;transform:scale(1)}.project-body{display:flex;flex-direction:column;flex:1 1;padding:14px 16px 16px}.project-platform{margin:0;font-size:.8125rem;font-weight:500;color:var(--ink-soft)}.project h3{margin:2px 0 6px;font-size:1.125rem;font-weight:650;letter-spacing:-.02em;line-height:1.2}.project-summary{margin:0 0 14px;font-size:.9375rem;line-height:1.45}.badges{list-style:none;margin:auto 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px}.badge{padding:5px 10px;border-radius:var(--radius-pill);background:var(--surface-2);font-size:.8125rem;font-weight:550;line-height:1.2}.badge-lead{background:var(--accent);color:var(--on-accent)}.projects-nav{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.projects-nav button{display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:50%;background:var(--surface);color:var(--ink);cursor:pointer;transition:background-color .2s var(--spring),opacity .2s,transform .15s var(--spring)}.projects-nav button:hover:not(:disabled){background:var(--accent);color:var(--on-accent)}.projects-nav button:active:not(:disabled){transform:scale(.92)}.projects-nav button:disabled{opacity:.35;cursor:default}.lightbox{width:min(1200px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);padding:0;border:0;border-radius:22px;background:var(--surface);color:var(--ink)}.lightbox::-webkit-backdrop{background:rgba(20,16,13,.6)}.lightbox::backdrop{background:rgba(20,16,13,.6)}.lightbox[open]{animation:lightbox-in .28s var(--spring)}@keyframes lightbox-in{0%{opacity:0;transform:translateY(12px) scale(.98)}}.lightbox-inner{display:flex;flex-direction:column;max-height:calc(100dvh - 32px)}.lightbox-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px 14px}.lightbox-head h3{margin:0 0 4px;font-size:1.25rem;font-weight:650;letter-spacing:-.02em}.lightbox-head p{margin:0;max-width:75ch;font-size:.9375rem;color:var(--ink-soft)}.lightbox-close{flex:none;display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:var(--surface-2);color:var(--ink);cursor:pointer}.lightbox-close:hover{background:var(--accent);color:var(--on-accent)}.lightbox-image{overflow:auto;background:#f4f3f1}.lightbox-image img{display:block;min-width:100%;max-width:none;height:auto}.lightbox-image.is-tall img{min-width:0;max-width:100%;margin:0 auto}@media (max-width:560px){.project{flex-basis:82%}.projects-nav{display:none}.lightbox-image:not(.is-tall) img{min-width:200%}}@media (prefers-reduced-motion:reduce){.lightbox[open]{animation:none}}.booking{position:relative;width:100%;background:var(--surface);overflow:hidden}.booking iframe{display:block;width:100%;height:100%;border:0;transition:opacity .3s var(--spring)}.booking-in-chat{height:700px;border-radius:20px;box-shadow:0 0 0 1px var(--glow),0 0 28px var(--glow-soft)}.booking-in-dialog{height:min(700px,calc(100dvh - 160px))}.booking-dialog{width:min(760px,calc(100vw - 32px))}.booking-loading,.booking-missing{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;color:var(--ink-soft);font-size:.9375rem;text-align:center}.booking-missing{position:static;min-height:180px;border-radius:20px}.booking-missing p{margin:0;max-width:40ch}.bubble-actions{display:flex;flex-wrap:wrap;gap:8px}.bubble-actions .chip{gap:8px}@media (max-width:560px){.booking-in-chat{height:640px}.btn-book{padding:0 12px}}