@font-face{font-family:Mona Sans;src:url(/assets/fonts/MonaSans-VF-cs.woff2) format("woff2");font-weight:200 900;font-style:normal;font-display:swap}:root{--paper: #F2F2EF;--paper-2: #FFFFFF;--paper-3: #EBEBE7;--ink: #0B0B0C;--ink-2: #56565B;--ph: #6E6E74;--line: rgb(11 11 12 / .13);--night: #0B0B0C;--night-2: #151518;--night-3: #1C1D21;--on-night: #F2F2EF;--on-night-2: #A2A2A9;--ph-night: #8C8C93;--line-night: rgb(242 242 239 / .14);--blue: #3751E8;--blue-deep: #2437B8;--live: #1FA463;--error-night: #FF8F85;--ok-night: #7DDBA6;--font: "Mona Sans", "Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;--fs-hero: clamp(3rem, 8.1vw, 9.6rem);--fs-display: clamp(2.75rem, 6.6vw, 8rem);--fs-display-s: clamp(2.2rem, 4.6vw, 5.5rem);--fs-lead: clamp(1.2rem, 1rem + .7vw, 1.75rem);--fs-q: clamp(1.1rem, 1rem + .45vw, 1.45rem);--fs-intro: 1.125rem;--fs-body: 1.0625rem;--fs-ui: 1rem;--fs-small: .9375rem;--fs-label: .875rem;--fs-micro: .8125rem;--fw-body: 400;--fw-lead: 450;--fw-ui: 500;--fw-label: 600;--fw-display: 520;--ls-display: -.035em;--ls-heading: -.025em;--ls-lead: -.015em;--ls-ui: -.01em;--s4: 4px;--s8: 8px;--s12: 12px;--s16: 16px;--s20: 20px;--s24: 24px;--s32: 32px;--s40: 40px;--s48: 48px;--s64: 64px;--margin: clamp(16px, 2.5vw, 40px);--gutter: clamp(12px, 1.4vw, 24px);--pad-card: clamp(24px, 2.6vw, 40px);--section-pad: clamp(96px, 11vw, 176px);--head-gap: clamp(48px, 6vw, 96px);--maxw: 1920px;--header-top: 14px;--header-h: 84px;--inset: 6px;--h-bar: 60px;--h-nav: 56px;--h-btn: 52px;--h-sm: 44px;--h-chip: 40px;--r-block: clamp(28px, 3.4vw, 56px);--r-card: 28px;--r-sm: 12px;--ring: inset 0 0 0 1px rgb(11 11 12 / .08);--ring-night: inset 0 0 0 1px rgb(242 242 239 / .08);--shadow-lift: 0 24px 48px -30px rgb(11 11 12 / .38);--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1);--ease-ripple: cubic-bezier(.4, 0, 0, 1);--ease-roll: cubic-bezier(.16, 1, .3, 1);--ease-jelly: cubic-bezier(.34, 5.56, .64, 1);--dur-press: .16s;--dur-fast: .25s;--dur-base: .5s;--dur-roll: .7s;--dur-panel: .7s}*,*:before,*:after{box-sizing:border-box}*{margin:0;padding:0}html{background:var(--night);-webkit-text-size-adjust:100%;text-size-adjust:100%;color-scheme:light}body{font-family:var(--font);font-size:var(--fs-body);line-height:1.55;font-weight:var(--fw-body);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:clip;text-rendering:optimizeLegibility}img,svg,video,canvas{display:block;max-width:100%}img{height:auto}a{color:inherit}button,input{font:inherit;color:inherit}button{background:none;border:0;cursor:pointer;-webkit-tap-highlight-color:transparent}ul,ol{list-style:none}h1,h2,h3{font-weight:inherit;text-wrap:balance}p{text-wrap:pretty}::selection{background:var(--blue);color:#fff}:focus-visible{outline:2px solid var(--blue);outline-offset:3px}[hidden]{display:none!important}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-stopped{overflow:clip}.sprite{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;top:var(--s12);left:var(--s12);z-index:100;display:inline-flex;align-items:center;height:var(--h-sm);padding:0 var(--s20);border-radius:999px;background:var(--ink);color:var(--paper);font-size:var(--fs-small);font-weight:var(--fw-ui);text-decoration:none;transform:translateY(-160%);transition:transform var(--dur-fast) var(--ease-out)}.skip-link:focus-visible{transform:none}.tnum{font-variant-numeric:tabular-nums}.review-role a,.footer-legal-nav a,.menu-small-link,.chat-noscript a{text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);transition:text-decoration-color var(--dur-fast) ease,color var(--dur-fast) ease}@media(hover:hover)and (pointer:fine){.review-role a:hover,.footer-legal-nav a:hover,.menu-small-link:hover,.chat-noscript a:hover{text-decoration-color:currentColor}}.wrap{width:100%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--margin)}.side-label{font-size:var(--fs-label);font-weight:var(--fw-label);line-height:1.3;letter-spacing:var(--ls-ui)}.section-head{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter);row-gap:var(--s24);margin-bottom:var(--head-gap)}.section-head .side-label{grid-column:1 / span 3;padding-top:.6em}.section-head .display{grid-column:4 / -1}.section-intro{grid-column:4 / span 5;max-width:44ch;font-size:var(--fs-intro);line-height:1.5}.display{font-size:var(--fs-display);font-weight:var(--fw-display);line-height:.9;letter-spacing:var(--ls-display)}.ink-part{display:block}.btn{--btn-bg: var(--ink);--btn-fg: var(--paper);--btn-ripple: var(--blue);--btn-fg-hover: #FFFFFF;--btn-border: transparent;position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:var(--s12);height:var(--h-btn);padding:0 var(--s24);border-radius:999px;background:var(--btn-bg);color:var(--btn-fg);box-shadow:inset 0 0 0 1px var(--btn-border);font-size:var(--fs-ui);font-weight:var(--fw-ui);line-height:1;letter-spacing:var(--ls-ui);white-space:nowrap;text-decoration:none;overflow:hidden;transform:translateZ(0);transition:transform .3s var(--ease-out),scale var(--dur-press) var(--ease-out);-webkit-tap-highlight-color:transparent;touch-action:manipulation}.btn-ripple{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:inherit;overflow:hidden;pointer-events:none}.btn-ripple>span{display:block;width:100%;height:100%;background:var(--btn-ripple);border-radius:50% 50% 0 0;opacity:0;transform:translateY(101%);transition:transform var(--dur-base) var(--ease-ripple),border-radius var(--dur-base) var(--ease-ripple),opacity 0s linear var(--dur-base)}.btn-title{position:relative;display:block;overflow:hidden;line-height:1.3}.btn-title>span{display:block;transition:transform var(--dur-roll) var(--ease-roll)}.btn-title>span:after{content:attr(data-text);position:absolute;left:0;top:110%;color:var(--btn-fg-hover)}.btn-arrow{position:relative;flex:none;display:grid;place-items:center;width:calc(var(--h-sm) - 2 * var(--inset));height:calc(var(--h-sm) - 2 * var(--inset));border-radius:50%;background:#fff;color:var(--blue);overflow:hidden}.btn-arrow svg{grid-area:1 / 1;transition:transform var(--dur-roll) var(--ease-roll)}.btn-arrow svg+svg{transform:translate(-230%)}.btn:active{scale:.96}@media(hover:hover)and (pointer:fine){.btn:hover{transform:scaleX(1.02) translateZ(0);transition:transform .6s var(--ease-jelly),scale var(--dur-press) var(--ease-out)}.btn:hover .btn-ripple>span{opacity:1;transform:translateY(0);border-radius:0;transition:transform var(--dur-base) var(--ease-ripple),border-radius .9s var(--ease-ripple),opacity 0s}.btn:hover .btn-title>span{transform:translateY(-110%)}.btn:hover .btn-arrow svg:first-child{transform:translate(230%)}.btn:hover .btn-arrow svg+svg{transform:none}}.btn--lg{height:var(--h-bar);padding:0 var(--s32);font-size:var(--fs-body)}.btn--blue{--btn-bg: var(--blue);--btn-fg: #FFFFFF;--btn-ripple: var(--ink);--btn-fg-hover: #FFFFFF}.btn--light{--btn-bg: var(--paper);--btn-fg: var(--ink);--btn-ripple: var(--blue);--btn-fg-hover: #FFFFFF}.btn--outline{--btn-bg: transparent;--btn-fg: var(--ink);--btn-ripple: var(--ink);--btn-fg-hover: var(--paper);--btn-border: rgb(11 11 12 / .28)}.btn--outline-light{--btn-bg: transparent;--btn-fg: var(--on-night);--btn-ripple: var(--paper);--btn-fg-hover: var(--ink);--btn-border: rgb(242 242 239 / .3)}.icon-btn{position:relative;isolation:isolate;flex:none;display:grid;place-items:center;width:calc(var(--h-bar) - 2 * var(--inset));height:calc(var(--h-bar) - 2 * var(--inset));border-radius:50%;overflow:hidden;transition:scale var(--dur-press) var(--ease-out),background-color var(--dur-fast) ease,color var(--dur-fast) ease;touch-action:manipulation}.icon-btn:active{scale:.96}.icon-btn:disabled{cursor:default}.icon-btn-fill{position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;border-radius:50% 50% 0 0;opacity:0;transform:translateY(101%);transition:transform var(--dur-base) var(--ease-ripple),border-radius var(--dur-base) var(--ease-ripple),opacity 0s linear var(--dur-base)}.icon-btn-icon{grid-area:1 / 1;transition:transform var(--dur-roll) var(--ease-roll)}.icon-btn-icon--next{transform:translateY(200%)}.icon-btn--x .icon-btn-icon--next{transform:translate(-200%)}@media(hover:hover)and (pointer:fine){.icon-btn:not(:disabled):hover .icon-btn-fill{opacity:1;transform:none;border-radius:0;transition:transform var(--dur-base) var(--ease-ripple),border-radius var(--dur-base) var(--ease-ripple),opacity 0s}.icon-btn:not(:disabled):hover .icon-btn-icon:first-of-type{transform:translateY(-200%)}.icon-btn--x:not(:disabled):hover .icon-btn-icon:first-of-type{transform:translate(200%)}.icon-btn:not(:disabled):hover .icon-btn-icon--next{transform:none}}.roll-link{position:relative;display:inline-block;overflow:hidden;line-height:1.3;white-space:nowrap;text-decoration:none;vertical-align:top}.roll-link>span{display:block;transition:transform var(--dur-roll) var(--ease-roll)}.roll-link>span:after{content:attr(data-text);position:absolute;left:0;top:100%}@media(hover:hover)and (pointer:fine){.roll-link:hover>span{transform:translateY(-100%)}}@media(hover:none){.roll-link{overflow:visible;padding-block:var(--s12)}.roll-link>span:after{display:none}}@property --glass-bg{syntax: "<color>"; inherits: true; initial-value: rgb(242 242 239 / .74);}@property --glass-text{syntax: "<color>"; inherits: true; initial-value: #0B0B0C;}@property --glass-muted{syntax: "<color>"; inherits: true; initial-value: #45454A;}@property --glass-line{syntax: "<color>"; inherits: true; initial-value: rgb(11 11 12 / .08);}.header{--glass-bg: rgb(242 242 239 / .74);--glass-text: #0B0B0C;--glass-muted: #45454A;--glass-line: rgb(11 11 12 / .08);position:fixed;top:var(--header-top);left:0;right:0;z-index:60;display:flex;justify-content:center;padding-inline:var(--margin);pointer-events:none;transition:--glass-bg .35s ease,--glass-text .35s ease,--glass-muted .35s ease,--glass-line .35s ease}.header[data-tone=dark]{--glass-bg: rgb(28 29 33 / .68);--glass-text: #F2F2EF;--glass-muted: rgb(242 242 239 / .7);--glass-line: rgb(242 242 239 / .1)}.header-bar{pointer-events:auto;display:flex;align-items:center;gap:clamp(var(--s16),2.4vw,var(--s40));height:var(--h-nav);padding:var(--inset);border-radius:999px;background:var(--glass-bg);color:var(--glass-text);box-shadow:inset 0 0 0 1px var(--glass-line);-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%)}.header-brand{display:flex;align-items:center;gap:var(--s12);padding-right:var(--s8);border-radius:999px;text-decoration:none;font-size:var(--fs-ui);font-weight:var(--fw-label);letter-spacing:var(--ls-ui);white-space:nowrap}.header-photo{width:calc(var(--h-nav) - 2 * var(--inset));height:calc(var(--h-nav) - 2 * var(--inset));border-radius:50%;object-fit:cover;outline:1px solid rgb(0 0 0 / .1);outline-offset:-1px}.header-nav{display:flex;gap:clamp(var(--s16),1.8vw,28px)}.header-link{font-size:var(--fs-small);font-weight:var(--fw-ui);color:var(--glass-muted);transition:color var(--dur-fast) ease}@media(hover:hover)and (pointer:fine){.header-link:hover{color:var(--glass-text)}}.header-link.is-active{color:var(--glass-text)}.btn--header{height:var(--h-sm);padding:0 var(--inset) 0 var(--s20);gap:var(--s12);font-size:var(--fs-small)}.header-menu{display:none;place-items:center;width:var(--h-sm);height:var(--h-sm);border-radius:50%;color:var(--glass-text);transition:scale var(--dur-press) var(--ease-out),background-color var(--dur-fast) ease}.header-menu:active{scale:.96}.header-menu-icon{position:relative;width:20px;height:10px}.header-menu-icon i{position:absolute;left:0;right:0;height:1.5px;border-radius:2px;background:currentColor;transition:transform var(--dur-base) var(--ease-out),top var(--dur-base) var(--ease-out)}.header-menu-icon i:first-child{top:1.5px}.header-menu-icon i:last-child{top:7.5px}.menu-open .header-menu-icon i:first-child{top:4.5px;transform:rotate(45deg)}.menu-open .header-menu-icon i:last-child{top:4.5px;transform:rotate(-45deg)}.menu{position:fixed;top:0;right:0;bottom:0;left:0;z-index:55;pointer-events:none}.menu.is-open{pointer-events:auto}.menu-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0b0b0c73;opacity:0;transition:opacity var(--dur-base) var(--ease-out)}.menu.is-open .menu-backdrop{opacity:1}.menu-panel{position:absolute;top:0;left:0;bottom:0;width:min(560px,100%);background:var(--night-3);color:var(--on-night);transform:translate(calc(-100% - 16vw));transition:transform var(--dur-panel) var(--ease-drawer)}.menu-panel:before{content:"";position:absolute;top:-10%;left:calc(100% - 1px);width:16vw;height:120%;background:inherit;border-radius:0 100% 100% 0/0 50% 50% 0;transform-origin:0 50%;transition:transform .95s var(--ease-drawer)}.menu.is-open .menu-panel{transform:none}.menu.is-open .menu-panel:before{transform:scaleX(0)}.menu-inner{height:100%;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;justify-content:space-between;gap:var(--s48);padding:calc(var(--header-top) + var(--h-nav) + var(--s48)) var(--margin) var(--s32)}.menu-label{font-size:var(--fs-micro);color:var(--on-night-2);margin-bottom:var(--s12)}.menu-nav{display:flex;flex-direction:column}.menu-link{position:relative;display:block;width:fit-content;padding:var(--s4) 0 var(--s4) var(--s24);font-size:clamp(2.1rem,min(9vw,calc(var(--vh, 1vh) * 6.2)),3.2rem);font-weight:var(--fw-ui);line-height:1.1;letter-spacing:var(--ls-display);text-decoration:none}.menu-link>span{display:inline-block;opacity:0;transform:translate(-60px);transition:transform .8s var(--ease-drawer),opacity .4s var(--ease-out)}.menu.is-open .menu-link>span{opacity:1;transform:none;transition-delay:calc(.12s + var(--i, 0) * 45ms)}.menu-link:before{content:"";position:absolute;left:0;top:50%;width:8px;height:8px;margin-top:-4px;border-radius:50%;background:currentColor;scale:0;transition:scale var(--dur-fast) var(--ease-out)}.menu-link.is-active:before{scale:1}.menu-foot{display:flex;flex-direction:column}.menu-small-link{display:block;width:fit-content;padding:var(--s8) 0;font-size:var(--fs-ui)}.hero{position:relative;isolation:isolate;min-height:calc(var(--vh, 1vh) * 100);overflow:hidden;background:var(--paper)}.hero-under{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--night)}.wall{position:absolute;top:50%;left:50%;display:flex;flex-direction:column;gap:var(--wall-gap, 16px);transform:translate(-50%,-50%) rotate(-7deg)}.wall-row{display:flex;gap:var(--wall-gap, 16px);width:max-content;animation:wall-scroll var(--dur, 100s) linear infinite;will-change:transform}.wall-row--rev{animation-direction:reverse}.wall-row img{flex:none;width:var(--tile-w, 300px);aspect-ratio:640 / 416;object-fit:cover;border-radius:var(--r-sm);background:var(--night-3);outline:1px solid rgb(255 255 255 / .1);outline-offset:-1px}@keyframes wall-scroll{to{transform:translate(calc(-1 * var(--shift, 50%)))}}.hero.is-idle .wall-row,.hero.is-away .wall-row{animation-play-state:paused}.hero-ink,.hero-cover{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.hero-cover{background:var(--paper)}.hero.ink-ready .hero-cover,.hero.ink-off .hero-ink{display:none}.blend{color:#fff;mix-blend-mode:difference;will-change:transform}.hero-inner{position:relative;max-width:var(--maxw);min-height:calc(var(--vh, 1vh) * 100);margin-inline:auto;padding:calc(var(--header-h) + var(--s24)) var(--margin) clamp(var(--s24),calc(var(--vh, 1vh) * 3.4),var(--s40));display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:minmax(var(--s40),1fr) auto auto;column-gap:var(--gutter)}.hero-title{grid-column:1 / -1;grid-row:2;margin-bottom:clamp(var(--s32),calc(var(--vh, 1vh) * 5),var(--s64));font-size:var(--fs-hero);font-weight:var(--fw-display);line-height:.88;letter-spacing:-.03em}@supports (grid-template-columns: subgrid){.hero-title{display:grid;grid-template-columns:subgrid}.hero-title .ink-part{grid-column:1 / -1}.hero-title .hero-title-l2{grid-column:4 / -1}}.hero-intro{grid-column:1 / span 4;grid-row:3;align-self:end;display:flex;flex-direction:column;gap:var(--s8)}.hero-intro-label{font-size:var(--fs-label);font-weight:var(--fw-label);line-height:1.3;letter-spacing:var(--ls-ui)}.hero-intro-text{max-width:36ch;font-size:var(--fs-body);line-height:1.45;font-weight:var(--fw-lead)}.chat{grid-column:7 / -1;grid-row:3;align-self:end;justify-self:end;width:min(100%,540px);position:relative;z-index:2}.chat-dock{position:relative}.live-dot{position:relative;flex:none;width:8px;height:8px;border-radius:50%;background:var(--live)}.live-dot:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--live);animation:live-pulse 2.4s var(--ease-out) infinite}@keyframes live-pulse{0%{transform:scale(1);opacity:.55}70%,to{transform:scale(2.6);opacity:0}}.chat-bar,.lead-bar{position:relative;display:flex;align-items:center;gap:var(--s12);height:var(--h-bar);padding:var(--inset) var(--inset) var(--inset) var(--s20);border-radius:999px;transition:box-shadow var(--dur-fast) ease,background-color var(--dur-fast) ease}.chat-bar{background:var(--paper-2);box-shadow:var(--ring)}.chat-bar:focus-within{box-shadow:inset 0 0 0 2px var(--blue)}.chat.is-ended .chat-bar-dot{background:#b5b5bb}.chat.is-ended .chat-bar-dot:after{display:none}.chat-input,.lead-input{flex:1;min-width:0;height:100%;border:0;background:transparent;font-size:var(--fs-ui);line-height:1.2;outline:none}.chat-input{color:var(--ink)}.chat-input::placeholder{color:var(--ph);opacity:1}.chat-input:disabled{cursor:not-allowed}.chat-send{background:var(--blue);color:#fff}.chat-send .icon-btn-fill{background:var(--ink)}.chat-send[data-busy]{background:#7385ee}.chat-chips{position:absolute;right:0;bottom:100%;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--s8);padding-bottom:var(--s12);visibility:hidden;pointer-events:none;transition:visibility 0s linear var(--dur-fast)}.chat.show-chips .chat-chips{visibility:visible;pointer-events:auto;transition-delay:0s}.chip{position:relative;isolation:isolate;overflow:hidden;white-space:nowrap;height:var(--h-chip);padding:0 var(--s16);border-radius:999px;background:var(--paper-2);box-shadow:var(--ring);font-size:var(--fs-label);font-weight:var(--fw-ui);line-height:1;color:var(--ink);opacity:0;transform:translateY(8px);transition:opacity .2s var(--ease-out),transform .3s var(--ease-out),color var(--dur-fast) ease,scale var(--dur-press) var(--ease-out);touch-action:manipulation}.chat.show-chips .chip{opacity:1;transform:none;transition-delay:calc(var(--k, 0) * 45ms),calc(var(--k, 0) * 45ms),0s,0s}.chip:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:var(--ink);border-radius:50% 50% 0 0;opacity:0;transform:translateY(101%);transition:transform var(--dur-base) var(--ease-ripple),border-radius var(--dur-base) var(--ease-ripple),opacity 0s linear var(--dur-base)}.chip:active{scale:.96}@media(hover:hover)and (pointer:fine){.chip:hover{color:var(--paper)}.chip:hover:before{opacity:1;transform:none;border-radius:0;transition:transform var(--dur-base) var(--ease-ripple),border-radius var(--dur-base) var(--ease-ripple),opacity 0s}}.chat-panel{position:absolute;left:0;right:0;bottom:calc(100% + var(--s12));display:flex;flex-direction:column;height:var(--panel-h, 380px);border-radius:var(--r-card);background:var(--paper-2);box-shadow:var(--ring),var(--shadow-lift);overflow:hidden;transform-origin:50% 100%;visibility:hidden;opacity:0;transform:translateY(14px) scale(.98);clip-path:inset(55% 0 0 0 round var(--r-card));transition:opacity .2s var(--ease-out),transform .35s var(--ease-out),clip-path .35s var(--ease-out),visibility 0s linear .35s}.chat-panel[data-state=open]{visibility:visible;opacity:1;transform:none;clip-path:inset(0 0 0 0 round var(--r-card));transition:opacity var(--dur-fast) var(--ease-out),transform .55s var(--ease-out),clip-path .55s var(--ease-out),visibility 0s}.chat-head{display:flex;align-items:center;gap:var(--s12);padding:var(--inset)}.chat-head-avatar{width:calc(var(--h-nav) - 2 * var(--inset));height:calc(var(--h-nav) - 2 * var(--inset));border-radius:50%;object-fit:cover;outline:1px solid rgb(0 0 0 / .1);outline-offset:-1px}.chat-head-text{flex:1;min-width:0}.chat-head-name{font-size:var(--fs-small);font-weight:var(--fw-label);line-height:1.25}.chat-head-status{display:flex;align-items:center;gap:var(--s8);font-size:var(--fs-micro);color:var(--ink-2);line-height:1.3}.chat-head-status .live-dot{width:6px;height:6px}.chat-close{display:grid;place-items:center;width:var(--h-sm);height:var(--h-sm);border-radius:50%;color:var(--ink-2);transition:background-color var(--dur-fast) ease,color var(--dur-fast) ease,scale var(--dur-press) var(--ease-out)}.chat-close:active{scale:.96}@media(hover:hover)and (pointer:fine){.chat-close:hover{background:var(--paper-3);color:var(--ink)}}.chat-log{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:var(--s12);padding:var(--s16);scrollbar-width:thin;-webkit-mask-image:linear-gradient(180deg,transparent 0,#000 var(--s24));mask-image:linear-gradient(180deg,transparent 0,#000 var(--s24))}.msg{display:flex;align-items:flex-end;gap:var(--s8);max-width:88%;animation:msg-in .35s var(--ease-out) both}@keyframes msg-in{0%{opacity:0;transform:translateY(8px)}}.msg--bot{align-self:flex-start}.msg--user{align-self:flex-end;flex-direction:row-reverse}.msg-avatar{flex:none;width:28px;height:28px;border-radius:50%;object-fit:cover;outline:1px solid rgb(0 0 0 / .1);outline-offset:-1px}.msg-bubble{padding:var(--s12) var(--s16);border-radius:20px;font-size:var(--fs-small);line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere}.msg--bot .msg-bubble{background:var(--paper-3);color:var(--ink);border-bottom-left-radius:6px}.msg--user .msg-bubble{background:var(--blue);color:#fff;border-bottom-right-radius:6px}.msg-bubble--typing{color:var(--ink-2);transition:opacity .3s ease,filter .3s ease}.msg-bubble--typing.is-swapping{opacity:0;filter:blur(2px)}.chat-noscript{margin-top:var(--s12);font-size:var(--fs-label);color:var(--ink-2);text-align:right}.about{position:relative;padding-block:var(--section-pad) var(--s64);overflow-x:clip}.about-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter);row-gap:var(--head-gap)}.about .side-label{grid-column:1 / span 3;grid-row:1;padding-top:.6em}.about-title{grid-column:4 / -1;grid-row:1}@supports (grid-template-columns: subgrid){.about-title{display:grid;grid-template-columns:subgrid}.about-title .ink-part{grid-column:1 / -1}.about-title .about-title-l2{grid-column:3 / -1}}.about-photos{grid-column:2 / span 4;grid-row:2;justify-self:center;width:100%}.about-text{grid-column:7 / span 5;grid-row:2;align-self:center;display:flex;flex-direction:column;gap:var(--s24)}.about-lead{font-size:var(--fs-lead);line-height:1.3;font-weight:var(--fw-lead);letter-spacing:var(--ls-lead);max-width:30ch}.about-body{color:var(--ink-2);max-width:54ch}.photo-stack{position:relative;display:block;width:100%;max-width:440px;aspect-ratio:4 / 5;border-radius:var(--r-card);touch-action:pan-y pinch-zoom}.photo{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:var(--r-card);outline:1px solid rgb(0 0 0 / .1);outline-offset:-1px;box-shadow:var(--shadow-lift);transform-origin:50% 100%;-webkit-user-select:none;user-select:none;-webkit-user-drag:none}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--s24);row-gap:var(--s32);margin-top:var(--s24)}.fact{display:flex;flex-direction:column;gap:var(--s8)}.fact-value{font-size:clamp(2.5rem,3.8vw,4.25rem);font-weight:var(--fw-ui);line-height:.95;letter-spacing:-.04em;white-space:nowrap}.fact-label{max-width:24ch;font-size:var(--fs-small);line-height:1.45;color:var(--ink-2)}.work{position:relative;padding-bottom:calc(var(--section-pad) + var(--r-block));overflow-x:clip}.globe-block{position:relative;padding-bottom:clamp(28px,calc(var(--vh, 1vh) * 4.5),52px)}.globe{--tw: 150px;--th: calc(var(--tw) * .65);position:relative;height:clamp(560px,calc(var(--vh, 1vh) * 92),940px);perspective:1600px;touch-action:pan-y;cursor:grab;user-select:none;-webkit-user-select:none}.globe.is-dragging{cursor:grabbing}.globe-stage{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d}.globe-scaler,.globe-rotor{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d;pointer-events:none}.globe-rotor{margin:0;padding:0;list-style:none}.gtile{position:absolute;left:50%;top:50%;width:var(--tw);height:var(--th);margin:calc(var(--th) / -2) 0 0 calc(var(--tw) / -2);transform-style:preserve-3d;pointer-events:auto;will-change:transform}.gtile-pop,.gtile-in{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d}.gtile-pop{transform:scale(.55);transition:transform 1.1s var(--ease-out);transition-delay:calc(var(--k) * 22ms)}.globe.is-in .gtile-pop{transform:none}.gtile-in{display:block;border-radius:calc(var(--tw) * .045);cursor:pointer}.gtile-lift{position:absolute;top:0;right:0;bottom:0;left:0;transform-style:preserve-3d;pointer-events:none;transition:transform var(--dur-base) var(--ease-out)}.gtile img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;border-radius:calc(var(--tw) * .045);background:var(--night-3);-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-user-drag:none}.gtile-front,.gtile-back{opacity:0;transition:opacity .8s var(--ease-out);transition-delay:calc(var(--k) * 22ms)}.gtile-back{transform:rotateY(180deg);pointer-events:none}.globe.is-in .gtile-front{opacity:1}.globe.is-in .gtile-back{opacity:.22}.gtile.is-hover .gtile-lift{transform:translateZ(23px) scale(1.07)}.gtile.is-back{pointer-events:none}.gtile-in:focus-visible{outline-offset:4px}.work-title{position:absolute;left:0;right:0;top:50%;max-width:var(--maxw);margin-inline:auto;padding-inline:var(--margin);display:flex;justify-content:space-between;align-items:baseline;gap:var(--s24);font-size:min(var(--fs-display),6vw);font-weight:var(--fw-display);line-height:.95;letter-spacing:var(--ls-display);transform:translateY(-50%);pointer-events:none}.work-title>span{display:block}.work-title-b{text-align:right}.globe-caption{position:absolute;left:50%;bottom:clamp(var(--s8),calc(var(--vh, 1vh) * 3),var(--s32));translate:-50% 0;min-height:2.8em;display:flex;flex-direction:column;align-items:center;gap:2px;text-align:center;pointer-events:none}.globe-caption-name{font-size:var(--fs-body);font-weight:var(--fw-label);letter-spacing:var(--ls-ui);transition:opacity var(--dur-fast) ease,filter var(--dur-fast) ease}.globe-caption-tag{font-size:var(--fs-label);color:var(--ink-2);transition:opacity var(--dur-fast) ease,filter var(--dur-fast) ease}.globe-caption.is-swapping>*{opacity:0;filter:blur(2px)}.globe-caption-link{display:none;align-items:center;gap:var(--s8);height:var(--h-sm);margin-top:var(--s8);padding:0 var(--s20);border-radius:999px;background:var(--ink);color:var(--paper);font-size:var(--fs-small);font-weight:var(--fw-ui);text-decoration:none;pointer-events:auto;transition:opacity var(--dur-fast) ease,filter var(--dur-fast) ease,scale var(--dur-press) var(--ease-out)}.globe-caption-link:active{scale:.96}.globe-caption.has-link .globe-caption-link{display:inline-flex}.projects-head{display:flex;justify-content:space-between;align-items:flex-end;gap:var(--s24);margin-top:var(--head-gap);padding-bottom:var(--s16)}.projects-count{font-size:var(--fs-label);font-weight:var(--fw-ui);color:var(--ink-2)}.projects{display:flex;flex-direction:column;gap:var(--s8)}.project{border-radius:var(--r-card);transition:background-color var(--dur-fast) ease}@media(hover:hover)and (pointer:fine){.project:hover{background:var(--paper-2)}}.project-link{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter);align-items:center;min-height:clamp(88px,8.5vw,132px);padding:var(--s24);text-decoration:none;transition:opacity var(--dur-fast) ease}.project-thumb{display:none}.project-name{grid-column:1 / span 5;font-size:clamp(1.9rem,3.7vw,4rem);font-weight:var(--fw-ui);line-height:1;letter-spacing:var(--ls-display);transition:transform var(--dur-base) var(--ease-out)}.project-desc{grid-column:6 / span 4;max-width:40ch;font-size:var(--fs-small);line-height:1.45;color:var(--ink-2)}.project-tags{grid-column:10 / span 2;font-size:var(--fs-label);font-weight:var(--fw-ui);line-height:1.35}.project-arrow{grid-column:12;justify-self:end;display:grid;place-items:center;width:var(--h-sm);height:var(--h-sm);border-radius:50%;box-shadow:inset 0 0 0 1px var(--line);transition:background-color var(--dur-fast) ease,color var(--dur-fast) ease,box-shadow var(--dur-fast) ease,transform var(--dur-base) var(--ease-out)}@media(hover:hover)and (pointer:fine){.projects:has(.project-link:hover) .project-link:not(:hover){opacity:.32}.project-link:hover .project-name{transform:translate(var(--s16))}.project-link:hover .project-arrow{background:var(--ink);color:var(--paper);box-shadow:none;transform:rotate(45deg)}}.preview{position:fixed;left:0;top:0;z-index:40;width:clamp(300px,27vw,440px);aspect-ratio:640 / 416;border-radius:var(--r-sm);overflow:hidden;pointer-events:none;opacity:0;visibility:hidden;box-shadow:var(--shadow-lift);transition:opacity var(--dur-fast) var(--ease-out),visibility 0s linear var(--dur-fast);will-change:transform}.preview.is-on{opacity:1;visibility:visible;transition:opacity var(--dur-fast) var(--ease-out),visibility 0s}.preview-strip{display:flex;flex-direction:column;height:100%;transition:transform .6s var(--ease-in-out)}.preview-strip img{flex:none;width:100%;height:100%;object-fit:cover;object-position:top center}.cursor-tag{position:fixed;left:0;top:0;z-index:41;width:84px;height:84px;margin:-42px 0 0 -42px;display:grid;place-items:center;border-radius:50%;background:var(--blue);color:#fff;font-size:var(--fs-label);font-weight:var(--fw-ui);pointer-events:none;opacity:0;transition:opacity var(--dur-fast) var(--ease-out);will-change:transform}.cursor-tag-text{display:block;opacity:0;scale:.5;transition:opacity var(--dur-fast) var(--ease-out),scale .35s var(--ease-out)}.cursor-tag.is-on{opacity:1}.cursor-tag.is-on .cursor-tag-text{opacity:1;scale:1}.block{position:relative;border-radius:var(--r-block) var(--r-block) 0 0;margin-top:calc(-1 * var(--r-block))}.block--night{background:var(--night);color:var(--on-night);z-index:2}.block--paper{background:var(--paper);color:var(--ink);z-index:3}.dark-zone{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;visibility:hidden}.block--night>.dark-zone{bottom:var(--r-block)}.services{padding-block:var(--section-pad) calc(var(--section-pad) + var(--r-block))}.services .side-label,.services .section-intro{color:var(--on-night-2)}.svc-stack{--stack-top: calc(var(--header-h) + var(--s20));--step: clamp(96px, 9vw, 132px)}.svc{position:sticky;top:calc(var(--stack-top) + var(--i) * var(--step));isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;gap:var(--s48);min-height:clamp(380px,calc(var(--vh, 1vh) * 58),560px);padding:var(--pad-card);border-radius:var(--r-card);background:var(--night-2);box-shadow:0 -20px 50px -30px #000c;transform-origin:50% 0;will-change:transform}.svc+.svc,.svc-marker{margin-top:calc(var(--vh, 1vh) * 16)}.svc-marker{display:block;height:0}.svc-shade{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;border-radius:inherit;background:#000;opacity:0;pointer-events:none}.svc-stack--touch .svc{transition:transform .6s var(--ease-out)}.svc-stack--touch .svc-shade{transition:opacity .6s var(--ease-out)}.svc-stack--touch .svc.is-behind{transform:scale(.94)}.svc-stack--touch .svc.is-behind .svc-shade{opacity:.55}.svc-end{display:block;height:calc(var(--vh, 1vh) * 32)}.svc-under,.svc-ink{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.svc-under{z-index:0;top:2px;right:2px;bottom:2px;left:2px;width:auto;height:auto;border-radius:calc(var(--r-card) - 2px);overflow:hidden;background:var(--blue);color:#fff}.svc-ink{z-index:1}.svc.ink-off .svc-ink{display:none}.svc:not(.ink-ready) .svc-under{visibility:hidden}.svc-top,.svc-body{position:relative;z-index:2}.svc-code,.svc-chat,.svc-flow{position:absolute;right:var(--pad-card);top:50%;width:min(58%,720px);transform:translateY(-50%)}.svc-code{margin:0;font-family:ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace;font-size:clamp(.9rem,.6rem + .9vw,1.5rem);line-height:1.6;white-space:pre;color:#ffffffeb}.c-t{color:#fff;font-weight:600}.c-a{color:#ffffffb3}.c-s{color:#ffe9a8}.c-k{color:#fff;font-weight:600}.c-f{color:#bff2d8}.c-n{color:#ffc9de}.svc-chat{display:flex;flex-direction:column;gap:var(--s12)}.svc-bubble{align-self:flex-start;max-width:70%;padding:var(--s12) var(--s20);border-radius:20px 20px 20px 6px;background:#ffffff29;font-size:clamp(1rem,.8rem + .6vw,1.35rem);line-height:1.35;letter-spacing:var(--ls-ui)}.svc-bubble--ai{align-self:flex-end;border-radius:20px 20px 6px;background:#fff;color:var(--blue);font-weight:var(--fw-ui)}.svc-flow{display:flex;flex-direction:column;gap:var(--s16);container-type:inline-size}.svc-flow-row{display:flex;flex-wrap:nowrap;align-items:center;gap:min(var(--s12),1.8cqi)}.svc-node{display:inline-flex;align-items:center;height:2.7em;padding:0 1.05em;border-radius:999px;background:#ffffff29;font-size:min(1.2rem,2.8cqi);font-weight:var(--fw-ui);white-space:nowrap}.svc-node--done{background:#fff;color:var(--blue)}.svc-arrow{font-size:min(1.25rem,2.9cqi);opacity:.8}.svc-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s24)}.svc-title{font-size:var(--fs-display-s);font-weight:var(--fw-display);line-height:.9;letter-spacing:var(--ls-display)}.svc-price{display:flex;flex-direction:column;align-items:flex-end;gap:var(--s4);padding-top:.4em;font-size:var(--fs-intro);font-weight:var(--fw-ui);line-height:1.2;text-align:right;white-space:nowrap}.svc-price span{font-size:var(--fs-label);font-weight:var(--fw-body);color:var(--on-night-2)}.svc-body{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s32)}.svc-lead{max-width:26ch;font-size:var(--fs-lead);line-height:1.25;font-weight:var(--fw-lead);letter-spacing:var(--ls-lead)}.svc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s16) var(--s24)}.faq-more a{text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);transition:text-decoration-color var(--dur-fast) ease}@media(hover:hover)and (pointer:fine){.faq-more a:hover{text-decoration-color:currentColor}}.cases{padding-block:var(--section-pad) calc(var(--section-pad) + var(--r-block))}.uc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gutter)}.uc{display:flex;flex-direction:column;gap:var(--s12);min-height:clamp(200px,15vw,240px);padding:var(--pad-card);border-radius:var(--r-card);background:var(--paper-2);box-shadow:var(--ring)}.uc-title{font-size:clamp(1.5rem,1.15rem + .9vw,2.1rem);font-weight:var(--fw-display);line-height:1.05;letter-spacing:var(--ls-heading)}.uc-text{max-width:44ch;margin-top:auto;font-size:var(--fs-small);line-height:1.55;color:var(--ink-2)}.uc-text a,.uc-try{color:var(--ink);font-weight:var(--fw-ui);text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:3px;text-decoration-color:color-mix(in srgb,currentColor 35%,transparent);transition:text-decoration-color var(--dur-fast) ease}.uc-try{font-size:inherit;line-height:inherit;touch-action:manipulation}@media(hover:hover)and (pointer:fine){.uc-text a:hover,.uc-try:hover{text-decoration-color:currentColor}}.uc-progress{display:none}.steps{z-index:4;padding-block:var(--section-pad) calc(var(--section-pad) + var(--r-block))}.steps .side-label,.steps .section-intro{color:var(--on-night-2)}.steps-flow{--p: 1;position:relative}.steps-track{position:absolute;left:0;right:0;top:0;height:1px;background:var(--line-night);pointer-events:none}.steps-fill{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--on-night);transform-origin:0 50%;transform:scaleX(var(--p))}.steps-head{position:absolute;left:0;top:0;width:11px;height:11px;margin:-5px 0 0 -5.5px;border-radius:50%;background:var(--blue);box-shadow:0 0 0 3px #3751e847,0 0 22px 6px #3751e899;translate:calc(var(--p) * var(--len, 0px)) 0;opacity:0;transition:opacity var(--dur-fast) ease}.steps-head:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:var(--blue);animation:live-pulse 1.8s var(--ease-out) infinite}.steps-flow.is-live .steps-head,.steps-flow.is-done .steps-head{opacity:1}.steps-flow.is-done .steps-head:after{animation:none;opacity:0}.steps-head:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;box-shadow:inset 0 0 0 1.5px var(--blue);opacity:0}.steps-burst{position:absolute;left:50%;top:50%;width:0;height:0}.steps-burst i{position:absolute;left:-1px;top:-4px;width:2px;height:8px;border-radius:2px;background:var(--on-night);opacity:0}.steps-burst i:nth-child(2n){background:#7385ee}.steps-flow.is-burst .steps-head{animation:steps-pop .7s var(--ease-out)}.steps-flow.is-burst .steps-head:before{animation:steps-ring .8s var(--ease-out)}.steps-flow.is-burst .steps-burst i{animation:steps-ray .75s var(--ease-out)}@keyframes steps-pop{0%{scale:1}30%{scale:1.4}60%{scale:.9}to{scale:1}}@keyframes steps-ring{0%{opacity:.8;transform:scale(1)}to{opacity:0;transform:scale(4.2)}}@keyframes steps-ray{0%{opacity:0;transform:rotate(var(--a)) translateY(-6px) scaleY(.3)}25%{opacity:1}to{opacity:0;transform:rotate(var(--a)) translateY(-21px) scaleY(1)}}.steps-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--s40) var(--gutter)}.step{position:relative;display:flex;flex-direction:column;gap:var(--s12);padding-top:var(--s32);padding-right:var(--s16)}.step-dot{position:absolute;left:0;top:-4px;width:9px;height:9px;border-radius:50%;background:var(--on-night);transition:background-color var(--dur-fast) ease,box-shadow var(--dur-fast) ease,scale .6s cubic-bezier(.34,1.8,.64,1)}.step-num{display:block;overflow:hidden;margin-bottom:var(--s12);font-size:clamp(2.5rem,3.8vw,4.25rem);font-weight:var(--fw-ui);line-height:1;letter-spacing:-.04em;font-variant-numeric:tabular-nums}.step-num>span{display:block;transition:transform var(--dur-roll) var(--ease-roll)}.step-title{font-size:var(--fs-q);font-weight:var(--fw-ui);line-height:1.25;letter-spacing:var(--ls-lead)}.step-text{max-width:34ch;font-size:var(--fs-small);line-height:1.55;color:var(--on-night-2)}.step-title,.step-text{transition:opacity .6s var(--ease-out),transform .8s var(--ease-out)}.steps-flow.is-js .step-dot{background:var(--night);box-shadow:inset 0 0 0 1.5px var(--on-night-2);scale:.8}.steps-flow.is-js .step-num>span{transform:translateY(105%)}.steps-flow.is-js .step-title,.steps-flow.is-js .step-text{opacity:.28;transform:translateY(10px)}.steps-flow.is-js .step.is-on .step-dot{background:var(--on-night);box-shadow:0 0 0 5px #f2f2ef1f;scale:1.25}.steps-flow.is-js .step.is-on .step-num>span{transform:none}.steps-flow.is-js .step.is-on .step-title,.steps-flow.is-js .step.is-on .step-text{opacity:1;transform:none}.steps-flow.is-js .step.is-on .step-text{transition-delay:.08s}.steps-foot{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s16) var(--s32);margin-top:var(--head-gap)}.steps-note{max-width:46ch;font-size:var(--fs-small);line-height:1.5;color:var(--on-night-2)}.reviews{z-index:5;padding-block:var(--section-pad) var(--s64);overflow-x:clip}.deck{position:relative;height:clamp(560px,46vw,700px)}.review{position:absolute;left:50%;top:50%;width:clamp(300px,29vw,440px);aspect-ratio:1 / 1.08;display:flex;flex-direction:column;gap:var(--s24);padding:var(--pad-card);border-radius:var(--r-card);background:var(--paper-2);box-shadow:var(--ring),var(--shadow-lift);transform:translate(-50%,-50%)}.review-text p{font-size:var(--fs-q);line-height:1.42;letter-spacing:var(--ls-lead);font-weight:var(--fw-lead);text-indent:-.35em}.review-text p:before{content:"\201e";content:"\201e" / ""}.review-text p:after{content:"\201c";content:"\201c" / ""}.review-author{margin-top:auto;display:flex;align-items:center;gap:var(--s12)}.review-site{flex:none;width:calc(var(--h-sm) * 1.54);height:var(--h-sm);border-radius:7px;object-fit:cover;outline:1px solid rgb(0 0 0 / .1);outline-offset:-1px}.review-person{display:flex;flex-direction:column;min-width:0}.review-name{font-size:var(--fs-small);font-weight:var(--fw-label);line-height:1.3}.review-role{font-size:var(--fs-label);line-height:1.35;color:var(--ink-2)}@media(hover:hover)and (pointer:fine){.deck.is-spread .review:hover{z-index:5}}.clients{margin-top:var(--head-gap)}.clients .side-label{margin-bottom:var(--s24)}.marquee{position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.marquee-track{display:flex;width:max-content;will-change:transform}.marquee-item{flex:none;display:flex;align-items:center}.marquee-item:after{content:"";flex:none;width:6px;height:6px;margin-inline:clamp(var(--s32),4vw,var(--s64));border-radius:50%;background:var(--ink);opacity:.25}.client{display:flex;align-items:center;gap:var(--s12);height:clamp(96px,9vw,140px);text-decoration:none;transition:opacity var(--dur-fast) ease}.client-logo{width:auto;height:clamp(26px,2.4vw,38px);filter:brightness(0)}.client-logo--word{height:clamp(30px,2.8vw,44px)}.client-name{font-size:clamp(1.4rem,1.1rem + 1.2vw,2.25rem);font-weight:var(--fw-ui);letter-spacing:var(--ls-heading);white-space:nowrap}@media(hover:hover)and (pointer:fine){.marquee:has(.client:hover) .client:not(:hover){opacity:.3}}.faq{position:relative;z-index:3;background:var(--paper);padding-block:var(--section-pad) calc(var(--section-pad) + var(--vh, 1vh) * 10)}.faq-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter);row-gap:var(--s40)}.faq-side{grid-column:1 / span 3;align-self:start;position:sticky;top:calc(var(--header-h) + var(--s24));display:flex;flex-direction:column;align-items:flex-start;gap:var(--s20)}.faq-note{max-width:26ch;font-size:var(--fs-small);color:var(--ink-2)}.faq-list{grid-column:4 / -1;display:flex;flex-direction:column;gap:var(--s8)}.faq-item{border-radius:var(--r-card);background:var(--paper-2);box-shadow:var(--ring)}.faq-q{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--s24);padding:var(--inset) var(--inset) var(--inset) var(--s24);list-style:none;cursor:pointer;font-size:var(--fs-q);font-weight:var(--fw-ui);line-height:1.25;letter-spacing:var(--ls-lead)}.faq-q::-webkit-details-marker{display:none}.faq-q-text{align-self:center;padding-block:var(--s8)}.faq-q:focus-visible{outline-offset:2px;border-radius:var(--r-card)}.faq-icon{position:relative;flex:none;width:var(--h-sm);height:var(--h-sm);border-radius:50%;box-shadow:inset 0 0 0 1px var(--line);transition:background-color var(--dur-fast) ease,color var(--dur-fast) ease,box-shadow var(--dur-fast) ease}.faq-icon:before,.faq-icon:after{content:"";position:absolute;left:50%;top:50%;width:14px;height:1.5px;margin:-.75px 0 0 -7px;border-radius:2px;background:currentColor;transition:transform var(--dur-base) var(--ease-out)}.faq-icon:after{transform:rotate(90deg)}.faq-item.is-open .faq-icon{background:var(--ink);color:var(--paper);box-shadow:none}.faq-item.is-open .faq-icon:after{transform:rotate(0)}@media(hover:hover)and (pointer:fine){.faq-q:hover .faq-icon{box-shadow:inset 0 0 0 1px var(--ink)}}.faq-a-wrap{display:grid;grid-template-rows:0fr;transition:grid-template-rows var(--dur-base) var(--ease-out)}.faq-item.is-open .faq-a-wrap{grid-template-rows:1fr}.faq-a{overflow:hidden;min-height:0}.faq-a p{max-width:62ch;padding:var(--s4) var(--s64) var(--s24) var(--s24);color:var(--ink-2);line-height:1.6;opacity:0;transform:translateY(-6px);transition:opacity .3s ease,transform var(--dur-base) var(--ease-out)}.faq-item.is-open .faq-a p{opacity:1;transform:none;transition-delay:.08s}.faq-a .faq-more{padding-top:0}.faq-more a{color:var(--ink)}.no-js .faq-item[open] .faq-a-wrap{grid-template-rows:1fr}.no-js .faq-item[open] .faq-a p{opacity:1;transform:none}.page{position:relative;z-index:2}.footer-curve{position:relative;z-index:3;height:0;pointer-events:none}.footer-curve-wrap{position:relative;margin-top:-2px;height:calc(var(--vh, 1vh) * 10 + 2px);overflow:hidden;will-change:transform}.footer-curve-shape{position:absolute;left:50%;width:150%;height:750%;border-radius:50%;background:var(--paper);transform:translate(-50%,-86.666%);box-shadow:0 0 80px #00000059}.footer-wrap{position:relative;z-index:1;background:var(--night);color:var(--on-night);overflow:hidden}.footer{display:flex;min-height:calc(var(--vh, 1vh) * 100);padding-block:calc(var(--vh, 1vh) * 10 + var(--s48)) var(--s32);will-change:transform}.footer>.wrap{display:flex;flex-direction:column;gap:clamp(var(--s48),calc(var(--vh, 1vh) * 7),96px)}.footer-top{display:flex;align-items:center;gap:clamp(var(--s16),2vw,var(--s32))}.footer-avatar{--size: clamp(64px, 8.4vw, 156px);position:relative;isolation:isolate;flex:none;display:block;width:var(--size);height:var(--size);border-radius:50%;overflow:hidden;color:#fff;text-decoration:none;will-change:transform;touch-action:manipulation}.footer-avatar img{width:100%;height:100%;object-fit:cover;transition:transform var(--dur-base) var(--ease-out)}.footer-avatar:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffff1a;pointer-events:none}.footer-avatar-fill{position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;z-index:1;background:var(--blue);border-radius:50% 50% 0 0;opacity:0;transform:translateY(101%);transition:transform .6s var(--ease-ripple),border-radius .6s var(--ease-ripple),opacity 0s linear .6s}.footer-avatar-label{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:grid;place-items:center;font-size:var(--fs-small);font-weight:var(--fw-ui);letter-spacing:var(--ls-ui);opacity:0;transform:translateY(12px);transition:opacity var(--dur-fast) ease,transform var(--dur-base) var(--ease-out)}@media(hover:hover)and (pointer:fine){.footer-avatar:hover .footer-avatar-fill{opacity:1;transform:none;border-radius:0;transition:transform .6s var(--ease-ripple),border-radius .6s var(--ease-ripple),opacity 0s}.footer-avatar:hover .footer-avatar-label{opacity:1;transform:none;transition-delay:.08s}.footer-avatar:hover img{transform:scale(1.08)}}.footer-avatar:focus-visible{outline-offset:4px}.footer-avatar:focus-visible .footer-avatar-fill{opacity:1;transform:none;border-radius:0;transition:none}.footer-avatar:focus-visible .footer-avatar-label{opacity:1;transform:none}.footer-title{font-size:min(8.6vw,9.6rem);font-weight:var(--fw-display);line-height:.9;letter-spacing:var(--ls-display);white-space:nowrap}.footer-contact{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-areas:"ll ll ll ll ll ll lr lr lr lr lr lr" "pl pl pl pl pl pl fr fr fr fr fr fr";column-gap:var(--gutter);row-gap:var(--s16)}.footer-contact-label{display:block;font-size:var(--fs-small);line-height:1.4;color:var(--on-night-2)}.footer-contact-label--l{grid-area:ll}.footer-contact-label--r{grid-area:lr}.footer-pills{grid-area:pl;align-self:start;display:flex;flex-wrap:wrap;gap:var(--s12)}.lead-form{grid-area:fr;align-self:start}.lead-bar{background:#f2f2ef0d;box-shadow:inset 0 0 0 1px var(--line-night)}.lead-bar:focus-within{box-shadow:inset 0 0 0 2px var(--blue);background:#f2f2ef14}.lead-bar.is-error{box-shadow:inset 0 0 0 2px var(--error-night)}.lead-bar.is-success{box-shadow:inset 0 0 0 2px var(--ok-night)}.lead-input{color:var(--on-night)}.lead-input::placeholder{color:var(--ph-night);opacity:1}.lead-input:-webkit-autofill,.lead-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--on-night);-webkit-box-shadow:0 0 0 100px #1B1B1E inset;caret-color:var(--on-night)}.lead-send{background:var(--paper);color:var(--ink)}.lead-send .icon-btn-fill{background:var(--blue)}@media(hover:hover)and (pointer:fine){.lead-send:not(:disabled):hover{color:#fff}}.lead-bar.is-success .lead-send{background:var(--ok-night);color:var(--ink)}.lead-status{min-height:1.45em;margin-top:var(--s12);font-size:var(--fs-label);line-height:1.45}.lead-status.is-error{color:var(--error-night)}.lead-status.is-success{color:var(--ok-night)}.footer-bottom{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter);row-gap:var(--s32);margin-top:auto}.footer-col{grid-column:span 6}.footer-label{font-size:var(--fs-micro);color:var(--on-night-2);margin-bottom:var(--s8)}.footer-value{font-size:var(--fs-small);line-height:1.6}.footer-legal-nav{display:flex;flex-direction:column;align-items:flex-start;font-size:var(--fs-small);line-height:1.6}.footer-legal{margin-top:calc(-1*clamp(var(--s24),calc(var(--vh, 1vh) * 4),var(--s48)));font-size:var(--fs-micro);color:var(--on-night-2)}.footer-wrap--simple{z-index:3;margin-top:calc(-1 * var(--r-block));border-radius:var(--r-block) var(--r-block) 0 0}.footer-simple{display:flex;flex-direction:column;gap:var(--s64);padding-block:var(--s64) var(--s32)}.footer-simple-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--s24)}.footer-simple-title{font-size:var(--fs-display-s);font-weight:var(--fw-display);line-height:.95;letter-spacing:var(--ls-display)}.footer-simple .footer-bottom{margin-top:0}.footer-simple .footer-legal{margin-top:calc(-1 * var(--s32))}.consent{position:fixed;left:var(--margin);bottom:var(--margin);z-index:70;width:min(420px,calc(100% - 2 * var(--margin)));padding:var(--s24);border-radius:var(--r-card);background:var(--night-3);color:var(--on-night);box-shadow:var(--shadow-lift);opacity:0;transform:translateY(12px);transition:opacity .3s var(--ease-out),transform .3s var(--ease-out)}.consent.is-visible{opacity:1;transform:none}.consent-title{font-weight:var(--fw-label);margin-bottom:var(--s8)}.consent-text{font-size:var(--fs-small);color:var(--on-night-2)}.consent-actions{display:grid;grid-template-columns:1fr 1fr;gap:var(--s12);margin-top:var(--s16)}.consent-btn{height:var(--h-sm);border-radius:999px;background:var(--paper);color:var(--ink);font-weight:var(--fw-ui);transition:scale var(--dur-press) var(--ease-out)}.consent-btn:active{scale:.96}.consent-btn--dark{background:transparent;color:var(--on-night);box-shadow:inset 0 0 0 1px var(--line-night)}.consent-link{display:inline-block;margin-top:var(--s12);font-size:var(--fs-label);color:var(--on-night-2)}.js img[data-fade]{opacity:0;transition:opacity .7s var(--ease-out)}.js img[data-fade].is-loaded,.no-anim img[data-fade]{opacity:1}.js [data-ink]{opacity:0}.js [data-intro],.js [data-reveal],.js [data-reveal-group]>*{opacity:0}.no-anim [data-ink],.no-anim [data-intro],.no-anim [data-reveal],.no-anim [data-reveal-group]>*,.no-anim .steps-flow .step-title,.no-anim .steps-flow .step-text,.no-anim .steps-flow .step-num>span{visibility:visible!important;opacity:1!important;transform:none!important;filter:none!important}@media(max-width:1180px){.project-desc{grid-column:6 / span 5}.project-tags{display:none}}@media(max-width:1024px){.uc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.header-nav,.header-cta{display:none}.header-menu{display:grid}.header-bar{gap:var(--s8)}}@media(max-width:960px){#projekty{scroll-margin-top:var(--header-h)}.hero-inner{grid-template-rows:minmax(var(--s32),1fr) auto auto auto}.hero-intro{grid-column:1 / -1;grid-row:3;margin-bottom:var(--s24)}.hero-intro-text{max-width:44ch}.chat{grid-column:1 / -1;grid-row:4;justify-self:stretch;width:auto}.chat-chips{justify-content:flex-start;left:0;right:auto}.about-photos{grid-column:1 / span 5;justify-self:stretch}.about-text{grid-column:7 / -1}.svc-top{flex-direction:column;gap:var(--s12)}.svc-price{flex-direction:row;align-items:baseline;gap:var(--s12);padding-top:0;text-align:left}.svc-stack{--step: 76px}.svc{min-height:clamp(360px,calc(var(--vh, 1vh) * 52),480px)}.svc-code,.svc-chat,.svc-flow{width:calc(100% - 2 * var(--pad-card))}.deck{height:auto;display:grid;gap:var(--s16);max-width:600px;margin-inline:auto}.review{position:relative;left:auto;top:auto;width:auto;aspect-ratio:auto;transform:none;min-height:300px}.globe{height:clamp(520px,calc(var(--vh, 1vh) * 70),760px)}.work-title{position:relative;top:auto;transform:none;padding-top:var(--s8);font-size:clamp(2.6rem,8vw,4.5rem)}.faq-side{grid-column:1 / -1;position:static}.faq-list{grid-column:1 / -1}.steps-flow{max-width:620px;padding-right:var(--s64)}.steps-track{left:auto;right:20px;top:0;bottom:0;width:1px;height:auto}.steps-fill{transform-origin:50% 0;transform:scaleY(var(--p))}.steps-head{left:50%;margin:-5.5px 0 0 -5.5px;translate:0 calc(var(--p) * var(--len, 0px))}.steps-list{grid-template-columns:minmax(0,1fr);gap:var(--s48)}.step{padding-top:0;padding-right:0}.step-dot{left:auto;right:-48px;top:0}.step-num{margin-bottom:var(--s4)}}@media(max-width:760px){:root{--r-card: 22px;--header-top: 10px;--header-h: 76px}.hero-title{font-size:clamp(2.75rem,13.2vw,5rem);line-height:.92;margin-bottom:var(--s24)}.hero-title .hero-title-l2{grid-column:1 / -1}.hero-intro-text{font-size:var(--fs-ui)}.chip{height:var(--h-sm)}.section-head .side-label,.about .side-label{grid-column:1 / -1;grid-row:auto;padding-top:0}.section-head{row-gap:var(--s16)}.section-head .display,.section-intro{grid-column:1 / -1}.about-grid{row-gap:var(--s40)}.about-title{grid-column:1 / -1;grid-row:auto}.about-title .about-title-l2{grid-column:1 / -1}.display{font-size:clamp(2.6rem,12vw,4.5rem)}.about-photos,.about-text{grid-column:1 / -1;grid-row:auto}.photo-stack{max-width:min(340px,84vw);margin-inline:auto}.facts{column-gap:var(--s16)}.fact-value{font-size:clamp(2.4rem,11vw,3.4rem)}.globe{height:clamp(620px,calc(var(--vh, 1vh) * 86),760px)}.globe-scaler{top:16%}.work-title{flex-direction:column;gap:var(--s4);font-size:clamp(2.4rem,11vw,3.6rem)}.work-title-b{text-align:left}.globe-caption{bottom:var(--s8);width:max-content;max-width:calc(100% - 2 * var(--margin));min-height:0;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:center;column-gap:var(--s12);padding:var(--inset) var(--inset) var(--inset) var(--s20);border-radius:999px;background:#f2f2efd1;-webkit-backdrop-filter:blur(16px) saturate(160%);backdrop-filter:blur(16px) saturate(160%);box-shadow:var(--ring);opacity:0;transform:translateY(8px);transition:opacity var(--dur-fast) var(--ease-out),transform var(--dur-base) var(--ease-out)}.globe-caption.has-link{opacity:1;transform:none}.globe-caption-name{font-size:var(--fs-small)}.globe-caption-tag{display:none}.globe-caption-link{margin-top:0}.gtile-back{display:none}.gtile.is-back .gtile-front{opacity:.18}.projects-head{margin-top:var(--s48)}.project-link{grid-template-columns:88px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:var(--s16);row-gap:var(--s4);min-height:0;padding-block:var(--s16)}.project-thumb{display:block;grid-column:1;grid-row:1 / span 2;width:88px;aspect-ratio:640 / 416;object-fit:cover;border-radius:var(--r-sm);outline:1px solid rgb(0 0 0 / .1);outline-offset:-1px}.project-name{grid-column:2;grid-row:1;font-size:1.5rem;align-self:end}.project-desc{grid-column:2;grid-row:2;font-size:var(--fs-label);align-self:start}.project-arrow{grid-column:3;grid-row:1 / span 2}.svc-stack{--stack-top: calc(var(--header-h) + var(--s8));--step: 64px}.svc+.svc,.svc-marker{margin-top:calc(var(--vh, 1vh) * 10)}.svc{min-height:440px;gap:var(--s32)}.svc-title{font-size:clamp(2rem,9vw,2.75rem)}.svc-code{font-size:.8125rem}.svc-flow{gap:var(--s12)}.svc-flow-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:stretch;gap:var(--s4)}.svc-node{justify-content:center;height:auto;min-height:var(--h-sm);padding:var(--s8) 6px;border-radius:var(--r-sm);font-size:.8125rem;line-height:1.2;text-align:center;white-space:normal;text-wrap:balance}.svc-arrow{align-self:center;font-size:.875rem}.clients .side-label{margin-bottom:var(--s16)}.client{height:88px}.faq-q{padding:var(--inset) var(--inset) var(--inset) var(--s20);gap:var(--s16)}.faq-a p{padding:var(--s4) var(--s20) var(--s20)}.footer-top{flex-direction:column;align-items:flex-start;gap:var(--s24)}.footer-avatar{--size: 88px}.footer-title{font-size:10.6vw}.footer-contact{grid-template-areas:"ll ll ll ll ll ll ll ll ll ll ll ll" "pl pl pl pl pl pl pl pl pl pl pl pl" "lr lr lr lr lr lr lr lr lr lr lr lr" "fr fr fr fr fr fr fr fr fr fr fr fr"}.footer-contact-label--r{margin-top:var(--s24)}.footer-col{grid-column:1 / -1}.footer-simple-top{flex-direction:column;align-items:flex-start}.footer-simple-title{font-size:clamp(2.4rem,12vw,3.4rem)}}@media(max-width:760px){.uc-grid{grid-template-columns:none;grid-auto-flow:column;grid-auto-columns:min(84%,340px);gap:var(--s12);margin-inline:calc(-1 * var(--margin));padding-inline:var(--margin);overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--margin);scrollbar-width:none;-webkit-overflow-scrolling:touch}.uc-grid::-webkit-scrollbar{display:none}.uc{min-height:0;scroll-snap-align:start}.uc-text{margin-top:0}.uc-progress{display:block;position:relative;height:2px;margin-top:var(--s24);border-radius:2px;background:var(--line);overflow:hidden}.uc-progress>span{position:absolute;left:0;top:0;bottom:0;width:calc(var(--view, .3) * 100%);border-radius:inherit;background:var(--ink);transform:translate(calc(var(--pos, 0) * (1 / var(--view, .3) - 1) * 100%))}}@media(max-width:420px){.footer-pills .btn{width:100%}}@media(prefers-reduced-motion:reduce){.wall-row,.live-dot:after,.msg,.steps-head,.steps-head:before,.steps-head:after,.steps-burst i{animation:none}.btn,.btn-ripple>span,.btn-title>span,.btn-arrow svg,.roll-link>span,.chip,.chip:before,.icon-btn-fill,.icon-btn-icon,.footer-avatar-fill,.footer-avatar-label,.footer-avatar img,.project-name,.project-arrow,.gtile-lift,.gtile-pop,.faq-icon:after,.faq-a p,.preview-strip,.header-menu-icon i{transition-property:opacity,color,background-color,box-shadow,visibility}.menu-panel,.menu-panel:before,.menu-link>span,.chat-panel,.faq-a-wrap{transition-property:opacity,visibility;transition-duration:.2s}.menu-panel{transform:none;opacity:0;visibility:hidden}.menu.is-open .menu-panel{opacity:1;visibility:visible}.menu-panel:before{display:none}.chat-panel{transform:none;clip-path:none}.marquee-track{flex-wrap:wrap;width:auto;justify-content:center}.marquee-item[aria-hidden=true]{display:none}}@media(forced-colors:active){.blend{mix-blend-mode:normal;color:CanvasText}.hero-under,.hero-ink{display:none}.btn,.chip,.chat-bar,.lead-bar,.header-bar{border:1px solid ButtonText}.uc{border:1px solid CanvasText}}@media print{.hero-under,.hero-ink,.hero-cover,.header,.menu,.chat,.preview,.cursor-tag,.footer-curve{display:none!important}.blend{mix-blend-mode:normal;color:#000}.js [data-ink],.js [data-intro],.js [data-reveal],.js [data-reveal-group]>*{visibility:visible;opacity:1}}.ink-fill{display:block;position:relative}.ink-clip{position:absolute;left:0;top:0;overflow:hidden;pointer-events:none}.ink-canvas{position:absolute;left:0;top:0;max-width:none;opacity:0}.ink-line{position:relative}
