:root{--sc-canvas: #08090b;--sc-surface: #101217;--sc-ink: #f4f2ef;--sc-ink-soft: #9a9ba1;--sc-accent: #d8ff3e;--sc-accent-ink: #08090b;--sc-hairline: color-mix(in oklab,var(--sc-ink) 12%,transparent);--sc-hairline-strong: color-mix(in oklab,var(--sc-ink) 22%,transparent);--sc-font-display: "Instrument Sans","Geist",system-ui,sans-serif;--sc-font-text: "Geist",system-ui,sans-serif;--sc-font-mono: "Geist Mono",ui-monospace,monospace;--sc-t-xs: clamp(0.75rem,0.72rem + 0.15vw,0.82rem);--sc-t-sm: clamp(0.875rem,0.84rem + 0.18vw,0.95rem);--sc-t-base: clamp(1rem,0.96rem + 0.22vw,1.125rem);--sc-t-lg: clamp(1.2rem,1.1rem + 0.5vw,1.5rem);--sc-t-xl: clamp(1.6rem,1.35rem + 1.2vw,2.25rem);--sc-t-2xl: clamp(2.1rem,1.6rem + 2.4vw,3.4rem);--sc-t-3xl: clamp(2.8rem,1.9rem + 4.2vw,5rem);--sc-t-4xl: clamp(3.4rem,1.9rem + 6.6vw,7.5rem);--sc-track-tight: -0.035em;--sc-track-snug: -0.02em;--sc-track-normal: -0.005em;--sc-track-wide: 0.08em;--sc-leading-none: 0.94;--sc-leading-tight: 1.06;--sc-leading-body: 1.62;--sc-measure: 62ch;--sc-1: 0.25rem;--sc-2: 0.5rem;--sc-3: 0.75rem;--sc-4: 1rem;--sc-5: 1.5rem;--sc-6: 2rem;--sc-7: 3rem;--sc-8: 4rem;--sc-9: 6rem;--sc-10: 8rem;--sc-11: 12rem;--sc-section: clamp(4.5rem,9vw,11rem);--sc-gutter: clamp(1.25rem,5vw,5.5rem);--sc-maxw: 82rem;--sc-r-sm: 6px;--sc-r-md: 12px;--sc-r-lg: 20px;--sc-r-pill: 999px;--sc-shadow-color: 220 40% 2%;--sc-e1: 0 1px 2px hsl(var(--sc-shadow-color) / 0.28),0 2px 6px -1px hsl(var(--sc-shadow-color) / 0.20);--sc-e2: 0 2px 4px hsl(var(--sc-shadow-color) / 0.24),0 8px 18px -4px hsl(var(--sc-shadow-color) / 0.30);--sc-e3: 0 4px 8px hsl(var(--sc-shadow-color) / 0.22),0 18px 40px -8px hsl(var(--sc-shadow-color) / 0.38),0 48px 90px -24px hsl(var(--sc-shadow-color) / 0.30);--sc-edge: inset 0 1px 0 color-mix(in oklab,var(--sc-ink) 10%,transparent);--sc-ease-out: cubic-bezier(0.23,1,0.32,1);--sc-ease-in-out: cubic-bezier(0.77,0,0.175,1);--sc-ease-drawer: cubic-bezier(0.32,0.72,0,1);--sc-d-fast: 160ms;--sc-d-base: 240ms;--sc-d-slow: 420ms;--sc-z-stage: 1;--sc-z-copy: 20;--sc-z-chrome: 60}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;scroll-behavior: smooth}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}}body{margin: 0;background: var(--sc-canvas);color: var(--sc-ink);font-family: var(--sc-font-text);font-size: var(--sc-t-base);line-height: var(--sc-leading-body);letter-spacing: var(--sc-track-normal);-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility;font-synthesis-weight: none;overflow-x: clip}img,video,canvas,svg{display: block;max-width: 100%}button,input,select,textarea{font: inherit;color: inherit}::selection{background: var(--sc-accent);color: var(--sc-accent-ink)}:root{caret-color: var(--sc-accent);accent-color: var(--sc-accent)}:focus-visible{outline: 2px solid var(--sc-accent);outline-offset: 3px;border-radius: var(--sc-r-sm)}:where(a){color: inherit;text-decoration-thickness: 1px;text-underline-offset: 0.22em}@supports (scrollbar-color: auto){html{scrollbar-color: color-mix(in oklab,var(--sc-ink) 26%,transparent) transparent;scrollbar-width: thin}}:where(table,.sc-nums,[data-sc-count]){font-variant-numeric: tabular-nums}.sc-display{font-family: var(--sc-font-display);font-weight: 500;line-height: var(--sc-leading-none);letter-spacing: var(--sc-track-tight);text-wrap: balance;margin: 0}.sc-display--xl{font-size: var(--sc-t-4xl)}.sc-display--lg{font-size: var(--sc-t-3xl)}.sc-display--md{font-size: var(--sc-t-2xl);letter-spacing: var(--sc-track-snug)}.sc-lede{font-size: var(--sc-t-lg);line-height: 1.44;letter-spacing: var(--sc-track-snug);color: var(--sc-ink);max-width: 46ch;text-wrap: pretty;margin: 0}.sc-body{max-width: var(--sc-measure);color: var(--sc-ink-soft);text-wrap: pretty;margin: 0}.sc-label{font-family: var(--sc-font-mono);font-size: var(--sc-t-xs);letter-spacing: var(--sc-track-wide);text-transform: uppercase;color: var(--sc-ink-soft)}.sc-wrap{width: 100%;max-width: var(--sc-maxw);margin-inline: auto;padding-inline: var(--sc-gutter)}.sc-section{padding-block: var(--sc-section)}.sc-stack > * + *{margin-top: var(--sc-4)}.sc-stack > :is(h1,h2,h3){margin-top: var(--sc-7)}.sc-stack > :is(h1,h2,h3):first-child{margin-top: 0}.sc-rule{height: 1px;border: 0;background: var(--sc-hairline);margin: 0}.sc-act--pinned{position: relative}.sc-stage{position: sticky;top: 0;height: 100vh;height: 100svh;overflow: clip;z-index: var(--sc-z-stage)}.sc-stage :is(video[data-sc-scrub],canvas[data-sc-sequence],.sc-stage__poster){position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover}video[data-sc-scrub]{opacity: 0;transition: opacity 380ms var(--sc-ease-out)}.sc-has-clip video[data-sc-scrub]{opacity: 1}.sc-stage__poster{z-index: 0;transition: opacity 380ms var(--sc-ease-out)}.sc-has-clip .sc-stage__poster{opacity: 0}.sc-scrim{position: absolute;inset: 0;pointer-events: none;z-index: 1;background: linear-gradient( var(--sc-scrim-angle,180deg),color-mix(in oklab,var(--sc-canvas) var(--sc-scrim-a,78%),transparent) 0%,color-mix(in oklab,var(--sc-canvas) 30%,transparent) 42%,transparent 68%)}.sc-scrim--bottom{--sc-scrim-angle: 0deg}.sc-scrim--left{--sc-scrim-angle: 90deg}.sc-scrim--right{--sc-scrim-angle: 270deg}.sc-scrim--lead{background: linear-gradient(to top right,color-mix(in oklab,var(--sc-canvas) 94%,transparent) 0%,color-mix(in oklab,var(--sc-canvas) 72%,transparent) 30%,color-mix(in oklab,var(--sc-canvas) 30%,transparent) 52%,transparent 72%)}.sc-scrim--trail{background: linear-gradient(to top left,color-mix(in oklab,var(--sc-canvas) 94%,transparent) 0%,color-mix(in oklab,var(--sc-canvas) 72%,transparent) 30%,color-mix(in oklab,var(--sc-canvas) 30%,transparent) 52%,transparent 72%)}.sc-scrim--band{background: linear-gradient(to top,color-mix(in oklab,var(--sc-canvas) 94%,transparent) 0%,color-mix(in oklab,var(--sc-canvas) 74%,transparent) 22%,color-mix(in oklab,var(--sc-canvas) 30%,transparent) 42%,transparent 58%)}.sc-scrim--vignette{background: radial-gradient(120% 90% at 50% 45%,transparent 40%,color-mix(in oklab,var(--sc-canvas) 70%,transparent) 100%)}.sc-copy{position: absolute;z-index: var(--sc-z-copy);inset-inline: var(--sc-gutter);max-width: min(46rem,76vw);will-change: opacity,transform}.sc-copy--lead{left: var(--sc-gutter);bottom: clamp(3rem,12vh,9rem)}.sc-copy--center{inset-inline: auto;left: 50%;top: 50%;translate: -50% -50%;text-align: center}.sc-copy--trail{inset-inline: auto;right: var(--sc-gutter);bottom: clamp(3rem,12vh,9rem);text-align: right}[data-sc-cue]{opacity: 0;will-change: opacity,transform}.sc-ready [data-sc-cue]{transition: none}.sc-split{display: inline-block;overflow: hidden;vertical-align: top}.sc-split--line{display: block;padding-bottom: 0.14em;margin-bottom: -0.14em}.sc-split__i{display: inline-block;will-change: transform,opacity}.sc-is-split{opacity: 1 !important}[data-sc-pan]{display: flex;will-change: transform}[data-sc-reveal]{will-change: clip-path}[data-sc-parallax]{will-change: transform}[data-sc-in],[data-sc-stagger] > *{opacity: 0;transform: translate3d(0,14px,0);transition: opacity 620ms var(--sc-ease-out),transform 620ms var(--sc-ease-out)}[data-sc-in].sc-in,[data-sc-stagger] > .sc-in{opacity: 1;transform: none}[data-sc-tilt]{transform-style: preserve-3d;will-change: transform}[data-sc-magnet]{will-change: transform}[data-sc-spotlight]{isolation: isolate}:where([data-sc-spotlight]){position: relative}[data-sc-spotlight]::after{content: "";position: absolute;inset: 0;pointer-events: none;z-index: 2;background: radial-gradient( 28rem 28rem at calc(var(--sc-mx,0.5) * 100%) calc(var(--sc-my,0.5) * 100%),color-mix(in oklab,var(--sc-accent) 16%,transparent),transparent 70%);opacity: 0;transition: opacity var(--sc-d-slow) var(--sc-ease-out)}[data-sc-spotlight]:hover::after{opacity: 1}[data-sc-mode="worldflight"]{position: relative}.sc-world{position: fixed;inset: 0;overflow: clip;z-index: var(--sc-z-stage);background: var(--sc-canvas)}.sc-world__seg{position: absolute;inset: 0;opacity: 0;will-change: opacity}.sc-world__seg > :is(video,img,canvas){position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover}.sc-world__poster{z-index: 0;transform-origin: 50% 50%;transition: opacity 420ms var(--sc-ease-out)}.sc-world__seg > video{z-index: 1}.sc-world__seg.sc-has-clip .sc-world__poster{opacity: 0}video[data-sc-scrub].sc-has-clip{opacity: 1}.sc-world__copy{position: fixed;inset: 0;z-index: var(--sc-z-copy);pointer-events: none}.sc-world__scrim{position: absolute;inset: 0;pointer-events: none;z-index: 0}[data-sc-copy]{opacity: 0;pointer-events: none;will-change: opacity,transform}.sc-ready [data-sc-copy]{transition: none}.sc-world__spacer{pointer-events: none}[data-sc-progress]{position: fixed;inset: 0 0 auto 0;height: 2px;z-index: var(--sc-z-chrome);background: var(--sc-accent);transform-origin: 0 50%;transform: scaleX(0);will-change: transform}.sc-grain{position: fixed;inset: 0;pointer-events: none;z-index: 3;opacity: 0.045}.sc-grain::before{content: "";position: absolute;inset: -50%;background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3'/></filter><rect width='140' height='140' filter='url(%23n)'/></svg>")}@media (prefers-reduced-motion: reduce){[data-sc-in],[data-sc-stagger] > *{transform: none;transition-duration: 220ms}[data-sc-parallax],[data-sc-pan],.sc-split__i{transform: none !important}[data-sc-reveal]{clip-path: none !important}[data-sc-act="pan"] .sc-stage,[data-sc-act="pan"] [data-sc-stage]{overflow-x: auto;overflow-y: hidden;overscroll-behavior-x: contain;scroll-snap-type: x proximity}[data-sc-pan] > *{scroll-snap-align: center}[data-sc-spotlight]::after{display: none}.sc-world__poster,[data-sc-copy]{transform: none !important}}@media (max-width: 860px){.sc-copy{inset-inline: var(--sc-gutter);max-width: none}.sc-copy--trail{text-align: left}.sc-stage{height: 100svh}.sc-scrim--trail{background: linear-gradient(to top,color-mix(in oklab,var(--sc-canvas) 94%,transparent) 0%,color-mix(in oklab,var(--sc-canvas) 74%,transparent) 22%,color-mix(in oklab,var(--sc-canvas) 30%,transparent) 42%,transparent 58%)}}@font-face{font-family: "Bricolage";font-style: normal;font-display: swap;font-weight: 200 800;font-stretch: 75% 100%;src: url(../fonts/bricolage-tr-ext.woff2) format("woff2-variations");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-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family: "Bricolage";font-style: normal;font-display: swap;font-weight: 200 800;font-stretch: 75% 100%;src: url(../fonts/bricolage-tr.woff2) format("woff2-variations");unicode-range: U+0000-00FF,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: "JetBrains Mono";font-style: normal;font-display: swap;font-weight: 400;src: url(../fonts/jetbrains-mono-latin-400.woff2) format("woff2");unicode-range: U+0000-00FF,U+2000-206F}:root{--editor: #070706;--paper: #eff0f2;--surface: #e3e5e9;--field: #f8f9fa;--ink: #121216;--ink-soft: #53555d;--line: rgba(18,18,22,0.13);--line-strong: rgba(18,18,22,0.3);--accent: #14b8c4;--accent-hover: #3ccbd5;--accent-text: #0a7480;--on-accent: #04181b;--light: #f1f1ef;--light-soft: rgba(241,241,239,0.74);--font: "Bricolage",ui-sans-serif,system-ui,"Segoe UI",sans-serif;--mono: "JetBrains Mono",ui-monospace,"Cascadia Mono",monospace;--gutter: clamp(16px,4.2vw,64px);--maxw: 1440px;--bar-h: 68px;--r: 8px;--ease: cubic-bezier(0.23,1,0.32,1);--ease-io: cubic-bezier(0.77,0,0.175,1);--t-hero: clamp(2.5rem,1rem + 5vw,6.4rem);--t-xl: clamp(2.35rem,1.3rem + 4vw,5.4rem);--t-lg: clamp(1.95rem,1.3rem + 2.5vw,3.6rem);--t-md: clamp(1.4rem,1.1rem + 1.1vw,2.1rem);--t-lede: clamp(1.125rem,1rem + 0.45vw,1.375rem);--t-body: 1.0625rem;--t-sm: 0.9375rem;--t-xs: 0.8125rem;--section: clamp(5rem,2.5rem + 8vw,10.5rem);--sc-canvas: var(--paper);--sc-surface: var(--surface);--sc-ink: var(--ink);--sc-ink-soft: var(--ink-soft);--sc-accent: var(--accent);--sc-accent-ink: var(--on-accent);--sc-font-display: var(--font);--sc-font-text: var(--font);--sc-font-mono: var(--mono);--sc-gutter: var(--gutter);--sc-maxw: var(--maxw);--sc-r-sm: var(--r);interpolate-size: allow-keywords;color-scheme: light}@media (prefers-color-scheme: dark){:root{--paper: #0e0f12;--surface: #17191e;--field: #1c1f25;--ink: #ecedef;--ink-soft: #a4a7b0;--line: rgba(236,237,239,0.13);--line-strong: rgba(236,237,239,0.3);--accent-text: #4fd3de;color-scheme: dark}}html{scroll-padding-top: calc(var(--bar-h) + 16px)}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}body{background: var(--paper);color: var(--ink);font-family: var(--font);font-size: var(--t-body);font-weight: 420;line-height: 1.6;letter-spacing: -0.004em;font-optical-sizing: auto}body.is-home{background: var(--editor)}h1,h2,h3,h4{margin: 0;font-weight: 600}p{margin: 0}a{color: inherit}img{height: auto}code,pre{font-family: var(--mono)}.wrap{width: 100%;max-width: var(--maxw);margin-inline: auto;padding-inline: var(--gutter)}.visually-hidden{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{position: fixed;left: 12px;top: -60px;z-index: 100;background: var(--accent);color: var(--on-accent);padding: 10px 14px;border-radius: var(--r);font-weight: 600;text-decoration: none;transition: top 0.2s var(--ease)}.skip:focus{top: 12px}:focus-visible{outline: 2px solid var(--accent);outline-offset: 3px;border-radius: 4px}.display{font-weight: 620;font-stretch: 80%;line-height: 0.96;letter-spacing: -0.014em;text-wrap: balance}.display--xl{font-size: var(--t-xl)}.display--lg{font-size: var(--t-lg)}.display--md{font-size: var(--t-md);letter-spacing: -0.01em;line-height: 1.02}.lede{font-size: var(--t-lede);line-height: 1.45;font-weight: 440;max-width: 40ch;text-wrap: pretty}.body{color: var(--ink-soft);max-width: 62ch;text-wrap: pretty}.link-arrow{display: inline-flex;align-items: center;gap: 0.4em;font-weight: 560;text-decoration: underline;text-decoration-color: var(--line-strong);text-decoration-thickness: 1px;text-underline-offset: 0.3em;transition: text-decoration-color 0.18s var(--ease),color 0.18s var(--ease)}.link-arrow:hover{text-decoration-color: var(--accent);color: var(--accent-text)}.link-arrow--lg{font-size: var(--t-lede)}.btn{--h: 46px;display: inline-flex;align-items: center;justify-content: center;gap: 0.5em;height: var(--h);padding: 0 20px;border: 1px solid transparent;border-radius: var(--r);font: inherit;font-weight: 580;font-size: 1rem;letter-spacing: -0.005em;text-decoration: none;white-space: nowrap;cursor: pointer;transition: transform 0.14s var(--ease),background-color 0.18s var(--ease),border-color 0.18s var(--ease),color 0.18s var(--ease)}.btn:active{transform: translateY(1px) scale(0.985)}.btn--sm{--h: 38px;padding: 0 14px;font-size: var(--t-sm)}.btn--lg{--h: 54px;padding: 0 26px;font-size: 1.0625rem}.btn--accent{background: var(--accent);color: var(--on-accent)}.btn--accent:hover{background: var(--accent-hover)}.btn--ink{background: var(--on-accent);color: #fff}.btn--ink:hover{background: #0b2c31}.btn--ghost{border-color: var(--line-strong);color: var(--ink);background: transparent}.btn--ghost:hover{background: var(--surface)}.btn--ghost-light{border-color: rgba(241,241,239,0.36);color: var(--light);background: rgba(7,7,6,0.2)}.btn--ghost-light:hover{background: rgba(241,241,239,0.1);border-color: rgba(241,241,239,0.6)}.btn[disabled]{opacity: 0.55;cursor: progress}.bar{position: fixed;inset: 0 0 auto 0;z-index: 60;height: var(--bar-h);color: var(--ink);transition: color 0.25s var(--ease),background-color 0.25s var(--ease),box-shadow 0.25s var(--ease)}.bar::before{content: "";position: absolute;inset: 0;z-index: -1;background: color-mix(in oklab,var(--paper) 86%,transparent);-webkit-backdrop-filter: blur(14px) saturate(1.4);backdrop-filter: blur(14px) saturate(1.4);box-shadow: 0 1px 0 var(--line);opacity: 0;transition: opacity 0.25s var(--ease)}html[data-scrolled="1"] .bar::before{opacity: 1}html[data-header="dark"] .bar{color: var(--light)}html[data-header="dark"] .bar::before{opacity: 0}html[data-header="accent"] .bar{color: var(--on-accent)}html[data-header="accent"] .bar::before{opacity: 0}html[data-header="accent"] .bar__cta{background: var(--on-accent);color: #fff}html[data-header="accent"] .bar .wordmark{--accent: var(--on-accent)}.bar__inner{height: 100%;max-width: var(--maxw);margin-inline: auto;padding-inline: var(--gutter);display: grid;grid-template-columns: 1fr auto 1fr;align-items: center;gap: 24px}.bar__brand{display: inline-flex;color: inherit;width: 150px;justify-self: start}.bar__brand .wordmark{width: 100%;height: auto}.bar__nav{display: flex;gap: 30px;font-size: var(--t-sm);font-weight: 520}.bar__nav a{text-decoration: none;opacity: 0.86;transition: opacity 0.16s var(--ease);position: relative}.bar__nav a:hover,.bar__nav a[aria-current]{opacity: 1}.bar__nav a[aria-current]::after{content: "";position: absolute;left: 0;right: 0;bottom: -6px;height: 2px;background: var(--accent)}.bar__end{justify-self: end;display: flex;align-items: center;gap: 14px}.bar__lang{font-size: var(--t-xs);font-weight: 620;letter-spacing: 0.04em;text-decoration: none;height: 38px;min-width: 38px;display: grid;place-items: center;border: 1px solid color-mix(in oklab,currentColor 28%,transparent);border-radius: var(--r);transition: border-color 0.16s var(--ease)}.bar__lang:hover{border-color: currentColor}.bar__menu{display: none;align-items: center;gap: 10px;height: 38px;padding: 0 4px 0 10px;background: none;border: 0;color: inherit;font: inherit;font-weight: 560;font-size: var(--t-sm);cursor: pointer}.bar__menu-icon{width: 20px;height: 12px;position: relative;display: block}.bar__menu-icon i{position: absolute;left: 0;right: 0;height: 2px;background: currentColor;transition: transform 0.25s var(--ease),top 0.25s var(--ease)}.bar__menu-icon i:first-child{top: 1px}.bar__menu-icon i:last-child{top: 9px}.bar__menu[aria-expanded="true"] .bar__menu-icon i:first-child{top: 5px;transform: rotate(45deg)}.bar__menu[aria-expanded="true"] .bar__menu-icon i:last-child{top: 5px;transform: rotate(-45deg)}.menu{position: fixed;inset: 0;z-index: 55;background: var(--editor);color: var(--light);padding: calc(var(--bar-h) + 24px) var(--gutter) max(24px,env(safe-area-inset-bottom));display: flex;flex-direction: column;justify-content: space-between;opacity: 0;transform: translateY(-8px);transition: opacity 0.28s var(--ease),transform 0.28s var(--ease)}.menu[hidden]{display: none}.menu.is-open{opacity: 1;transform: none}.menu__nav{display: flex;flex-direction: column;gap: 4px}.menu__nav a{font-size: clamp(2.2rem,9vw,3.4rem);font-weight: 600;font-stretch: 80%;line-height: 1.12;letter-spacing: -0.014em;text-decoration: none}.menu__nav a[aria-current]{color: var(--accent)}.menu__foot{display: flex;flex-wrap: wrap;gap: 12px 20px;align-items: center}.menu__link{font-weight: 560}html.menu-open .bar{color: var(--light)}html.menu-open .bar::before{opacity: 0}.hero{--span: 11;position: relative;height: calc(var(--span) * 100svh);background: var(--editor);color: var(--light)}.hero__stage{position: sticky;top: 0;height: 100svh;overflow: clip}.hero__camera{position: absolute;inset: 0;transform-origin: 0 0;will-change: transform}.hero__camera picture{display: contents}.hero__poster,.hero__video{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;object-position: 38% 50%;max-width: none}.hero__video{opacity: 0;transition: opacity 0.45s var(--ease)}.hero.has-video .hero__video{opacity: 1}.hero__shade{position: absolute;inset: 0;z-index: 1;pointer-events: none;background: linear-gradient(180deg,rgba(7,7,6,0.78) 0,rgba(7,7,6,0) 16%),linear-gradient(0deg,rgba(7,7,6,0.94) 0,rgba(7,7,6,0.72) 22%,rgba(7,7,6,0) 50%),linear-gradient(270deg,rgba(7,7,6,0.95) 0,rgba(7,7,6,0.86) 33%,rgba(7,7,6,0.5) 42%,rgba(7,7,6,0) 54%);opacity: var(--shade,1)}.hero__caret{position: absolute;left: 0;top: 0;z-index: 2;width: 100%;height: 100%;background: var(--accent);transform-origin: 0 0;opacity: 0;will-change: transform,opacity}.hero__copy{position: absolute;z-index: 3;opacity: 0}.hero__copy:not(.is-on){pointer-events: none}.hero__intro{left: var(--gutter);right: var(--gutter);bottom: clamp(28px,8svh,96px);max-width: 1120px;opacity: 1}.hero__code{font-size: clamp(0.8rem,0.72rem + 0.28vw,0.98rem);line-height: 1.4;color: var(--light);margin-bottom: clamp(14px,2.2svh,22px);white-space: pre}.hero__code code{font-family: var(--mono)}.hero__code .tcaret{display: inline-block;width: 0.62em;height: 1.15em;margin-left: 1px;vertical-align: -0.2em;background: var(--accent)}.hero__code .tcaret.is-idle{animation: blink 1.05s steps(1) infinite}.hero__title{font-size: var(--t-hero);font-weight: 620;font-stretch: 78%;line-height: 0.93;letter-spacing: -0.016em;max-width: 14em;text-wrap: balance}.hero__sub{margin-top: clamp(14px,2.4svh,24px);font-size: var(--t-lede);line-height: 1.45;color: var(--light-soft);max-width: 46ch;text-wrap: pretty}.hero__ctas{display: flex;flex-wrap: wrap;gap: 12px;margin-top: clamp(20px,3.4svh,34px)}.hero__scene{right: var(--gutter);top: 50%;width: min(440px,30vw);translate: 0 -50%}.hero__h{font-size: clamp(2rem,1.1rem + 2.3vw,3.5rem);font-weight: 610;font-stretch: 80%;line-height: 0.97;letter-spacing: -0.014em;text-wrap: balance}.hero__p{margin-top: 18px;font-size: clamp(1.03rem,0.95rem + 0.3vw,1.2rem);line-height: 1.5;color: var(--light-soft);max-width: 38ch;text-wrap: pretty}.hero__final{left: var(--gutter);bottom: clamp(28px,8svh,96px)}.hero__flood{position: absolute;inset: 0;z-index: 4;display: flex;flex-direction: column;justify-content: flex-end;padding: 0 var(--gutter) clamp(36px,10svh,120px);color: var(--on-accent);opacity: 0;pointer-events: none}.hero__flood-h{font-size: clamp(3.2rem,0.6rem + 10.5vw,12.5rem);font-weight: 600;font-stretch: 84%;line-height: 0.9;letter-spacing: -0.02em;max-width: 11ch}.hero__flood-p{margin-top: clamp(16px,2.6svh,28px);font-size: var(--t-lede);font-weight: 520;max-width: 34ch}.ml{display: block;overflow: clip;padding-bottom: 0.12em;margin-bottom: -0.12em}.ml > span{display: block;will-change: transform}.no-js .hero,.hero.is-static{height: auto}.no-js .hero__stage,.hero.is-static .hero__stage{position: relative;height: auto;overflow: visible;display: grid;grid-template-columns: repeat(3,minmax(0,1fr));gap: 40px var(--gutter);padding-bottom: var(--section)}.no-js .hero__camera,.hero.is-static .hero__camera{position: relative;inset: auto;height: 100svh;grid-column: 1 / -1;transform: none !important}.no-js .hero__shade,.hero.is-static .hero__shade{height: 100svh;bottom: auto}.no-js .hero__intro,.hero.is-static .hero__intro{position: absolute;top: 100svh;bottom: auto;translate: 0 calc(-100% - 8svh)}.no-js .hero__scene,.hero.is-static .hero__scene{position: static;translate: none;width: auto;opacity: 1;padding-inline: var(--gutter)}.hero.is-static .hero__scene:nth-of-type(1){padding-right: 0}.no-js .hero__final,.hero.is-static .hero__final,.no-js .hero__caret,.hero.is-static .hero__caret{display: none}.no-js .hero__flood,.hero.is-static .hero__flood{position: relative;grid-column: 1 / -1;opacity: 1;background: var(--accent);padding-block: var(--section);margin-bottom: calc(var(--section) * -1)}.no-js .hero + .after,.hero.is-static + .after{margin-top: 0}.after{position: relative;z-index: 5;margin-top: -100svh;background: var(--paper);box-shadow: 0 -28px 60px -30px rgba(7,7,6,0.55)}.me{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: var(--gutter);align-items: end;padding-top: clamp(96px,16svh,180px);padding-bottom: var(--section)}.me__photo{grid-column: 1 / span 5;margin: 0;border-radius: var(--r);overflow: hidden;background: var(--surface)}.me__photo img{width: 100%;aspect-ratio: 711 / 1024;object-fit: cover}.me__text{grid-column: 7 / span 6;display: flex;flex-direction: column;gap: 22px;padding-bottom: 8px}.me__text .display{max-width: 11ch}.clients{padding-bottom: var(--section)}.clients__title{font-size: var(--t-md);font-weight: 600;font-stretch: 82%;letter-spacing: -0.01em;margin-bottom: 28px}.clients__grid{list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: repeat(6,minmax(0,1fr));gap: 12px}.clients__item a,.clients__item > img{display: grid}.clients__item a{place-items: center;aspect-ratio: 4 / 3;border-radius: var(--r);background: #fbfbfc;border: 1px solid var(--line);transition: border-color 0.18s var(--ease),background-color 0.18s var(--ease)}.clients__item a:hover{border-color: var(--line-strong);background: #fff}.clients__item img{width: 68%;height: 58%;object-fit: contain}.svc{background: var(--paper)}.svc__stage{display: flex;align-items: center}.svc__rail{display: flex;align-items: stretch;gap: 14px;padding-inline: var(--gutter)}.svc__lead{flex: 0 0 min(600px,86vw);padding-right: clamp(20px,4vw,72px);display: flex;flex-direction: column;justify-content: center;gap: 22px}.svc__card{flex: 0 0 clamp(290px,26vw,390px);height: min(70svh,600px);border-radius: var(--r);padding: clamp(22px,2.2vw,32px);display: flex;flex-direction: column;gap: 14px;border: 1px solid var(--line-strong)}.svc__card--ink{background: var(--editor);color: var(--light);border-color: transparent}.svc__card--accent{background: var(--accent);color: var(--on-accent);border-color: transparent}.svc__name{font-size: var(--t-md);font-weight: 610;font-stretch: 80%;line-height: 1.02;letter-spacing: -0.012em;text-wrap: balance}.svc__short{font-size: 1.0625rem;line-height: 1.45}.svc__card--paper .svc__short{color: var(--ink-soft)}.svc__card--ink .svc__short{color: var(--light-soft)}.svc__list{list-style: none;margin: auto 0 0;padding: 0;display: grid;gap: 9px;font-size: var(--t-sm);line-height: 1.4}.svc__list li{display: grid;grid-template-columns: 14px 1fr;gap: 10px}.svc__list li::before{content: "";width: 14px;height: 1px;margin-top: 0.7em;background: currentColor;opacity: 0.5}.svc__more{margin-top: 18px;font-weight: 600;text-underline-offset: 0.3em;text-decoration-thickness: 1px}.svc__end{flex: 0 0 auto;display: flex;align-items: center;padding: 0 var(--gutter) 0 clamp(24px,4vw,64px)}.work{padding-top: var(--section)}.work__head{display: flex;flex-direction: column;gap: 18px;margin-bottom: clamp(32px,6svh,64px)}.work__stack{list-style: none;margin-block: 0;padding-bottom: 10svh}.work__item{position: sticky;top: calc(var(--bar-h) + 14px + var(--i) * 10px);margin-bottom: 9svh}.work__item:last-child{margin-bottom: 0}.work__card{display: grid;grid-template-columns: minmax(0,4fr) minmax(0,8fr);gap: clamp(20px,3vw,48px);background: var(--surface);border-radius: calc(var(--r) * 1.5);padding: clamp(16px,2.2vw,30px);box-shadow: 0 1px 0 rgba(255,255,255,0.5) inset,0 22px 48px -30px rgba(18,18,22,0.45);transform-origin: 50% 0;transform: scale(calc(1 - var(--cover,0) * 0.045));position: relative}.work__card::after{content: "";position: absolute;inset: 0;border-radius: inherit;pointer-events: none;background: var(--paper);opacity: calc(var(--cover,0) * 0.5)}.work__meta{display: flex;flex-direction: column;justify-content: flex-end;gap: 12px;padding: 4px 0 6px}.work__cat{font-size: var(--t-sm);color: var(--ink-soft)}.work__name{font-size: var(--t-lg);font-weight: 620;font-stretch: 80%;line-height: 0.98;letter-spacing: -0.014em;text-wrap: balance}.work__sum{color: var(--ink-soft);max-width: 40ch;margin-bottom: 8px}.work__shot{margin: 0;border-radius: var(--r);overflow: hidden;background: #fff;box-shadow: 0 0 0 1px var(--line)}.work__shot img{width: 100%;aspect-ratio: 16 / 10;object-fit: cover;object-position: top}.browser{height: 30px;display: flex;align-items: center;gap: 6px;padding: 0 12px;background: #e6e7ea;color: #4b4d55}.browser i{width: 9px;height: 9px;border-radius: 50%;background: #c7c9ce}.browser span{margin-left: 10px;font-size: 0.75rem;background: #f6f6f7;padding: 2px 12px;border-radius: 99px;overflow: hidden;text-overflow: ellipsis;white-space: nowrap}.work__all{padding-block: clamp(28px,6svh,56px) var(--section)}.process{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: var(--gutter);padding-bottom: var(--section)}.process__title{grid-column: 1 / span 5;align-self: start;position: sticky;top: calc(var(--bar-h) + 40px)}.process__track{grid-column: 7 / span 6;position: relative;padding-left: clamp(28px,4vw,56px)}.process__line{position: absolute;left: 0;top: 8px;bottom: 8px;width: 2px;background: var(--line)}.process__line::after{content: "";position: absolute;inset: 0;background: var(--accent);transform-origin: 0 0;transform: scaleY(clamp(0,calc((var(--sc-p,1) - 0.18) * 1.7),1))}.process__steps{list-style: none;margin: 0;padding: 0;display: grid;gap: clamp(48px,10svh,110px)}.process__n{display: block;font-family: var(--mono);font-size: var(--t-sm);color: var(--accent-text);margin-bottom: 14px}.process__h{font-size: var(--t-lg);font-weight: 610;font-stretch: 80%;line-height: 0.98;letter-spacing: -0.014em}.process__p{margin-top: 14px;color: var(--ink-soft);max-width: 46ch}.faq{padding-bottom: var(--section)}.faq .display{margin-bottom: clamp(24px,4svh,44px)}.faq__list{border-bottom: 1px solid var(--line);max-width: 1080px}.faq__item{border-top: 1px solid var(--line)}.faq__item summary{list-style: none;cursor: pointer;display: flex;align-items: center;justify-content: space-between;gap: 24px;padding: clamp(18px,2.6svh,28px) 0;font-size: clamp(1.2rem,1rem + 0.7vw,1.6rem);font-weight: 560;line-height: 1.25;letter-spacing: -0.012em}.faq__item summary::-webkit-details-marker{display: none}.faq__item summary i{flex: 0 0 18px;height: 18px;position: relative}.faq__item summary i::before,.faq__item summary i::after{content: "";position: absolute;left: 0;right: 0;top: 50%;height: 2px;margin-top: -1px;background: currentColor;transition: transform 0.25s var(--ease)}.faq__item summary i::after{transform: rotate(90deg)}.faq__item[open] summary i::after{transform: rotate(0deg)}.faq__item summary:hover span{color: var(--accent-text)}.faq__a{padding: 0 0 clamp(20px,3svh,30px)}.faq__a p{color: var(--ink-soft);max-width: 70ch}.faq__item::details-content{block-size: 0;overflow-y: clip;transition: block-size 0.32s var(--ease),content-visibility 0.32s allow-discrete}.faq__item[open]::details-content{block-size: auto}.journal{padding-bottom: var(--section)}.journal__head{display: flex;align-items: end;justify-content: space-between;gap: 24px;margin-bottom: clamp(24px,4svh,40px)}.journal__list{list-style: none;margin: 0;padding: 0;border-bottom: 1px solid var(--line)}.journal__row{display: grid;grid-template-columns: minmax(0,2fr) minmax(0,6fr) minmax(0,4fr);gap: var(--gutter);padding: clamp(18px,3svh,30px) 0;border-top: 1px solid var(--line);text-decoration: none}.journal__row time{font-size: var(--t-sm);color: var(--ink-soft);padding-top: 0.4em}.journal__t{font-size: var(--t-md);font-weight: 600;font-stretch: 84%;line-height: 1.08;letter-spacing: -0.01em;transition: color 0.18s var(--ease)}.journal__x{color: var(--ink-soft);font-size: var(--t-sm)}.journal__row:hover .journal__t{color: var(--accent-text)}.close{background: var(--surface);padding-block: var(--section)}.close__grid{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: var(--gutter)}.close__intro{grid-column: 1 / span 5;display: flex;flex-direction: column;gap: 22px;align-self: start;position: sticky;top: calc(var(--bar-h) + 40px)}.close__intro .display{max-width: 9ch}.close__direct{list-style: none;margin: 12px 0 0;padding: 0;display: grid;gap: 6px}.close__direct a{font-size: var(--t-md);font-weight: 560;font-stretch: 88%;letter-spacing: -0.015em;text-decoration: none}.close__direct a:hover{color: var(--accent-text)}.close__form{grid-column: 7 / span 6}.qf{display: grid;gap: 22px}.qf__trap{position: absolute;left: -9999px;width: 1px;height: 1px;overflow: hidden}.qf__types{border: 0;margin: 0;padding: 0;min-width: 0}.qf__label,.field label{display: block;font-size: var(--t-sm);font-weight: 600;margin-bottom: 10px}.qf__chips{display: flex;flex-wrap: wrap;gap: 8px}.chip{position: relative}.chip input{position: absolute;opacity: 0;inset: 0;margin: 0;cursor: pointer}.chip span{display: inline-flex;align-items: center;height: 42px;padding: 0 15px;border: 1px solid var(--line-strong);border-radius: var(--r);font-size: var(--t-sm);font-weight: 540;background: var(--field);transition: background-color 0.16s var(--ease),color 0.16s var(--ease),border-color 0.16s var(--ease)}.chip:hover span{border-color: var(--ink)}.chip input:checked + span{background: var(--ink);color: var(--paper);border-color: var(--ink)}.chip input:focus-visible + span{outline: 2px solid var(--accent);outline-offset: 2px}.qf__row--2{display: grid;grid-template-columns: 1fr 1fr;gap: 14px 16px}.qf__span{grid-column: 1 / -1}.field input,.field textarea,.field select{width: 100%;height: 52px;padding: 0 14px;background: var(--field);color: var(--ink);border: 1px solid var(--line-strong);border-radius: var(--r);font: inherit;font-size: 1rem;transition: border-color 0.16s var(--ease),box-shadow 0.16s var(--ease)}.field textarea{height: auto;min-height: 132px;padding: 12px 14px;resize: vertical;line-height: 1.5}.field input:focus,.field textarea:focus,.field select:focus{outline: none;border-color: var(--ink);box-shadow: 0 0 0 3px color-mix(in oklab,var(--accent) 45%,transparent)}.field [aria-invalid="true"]{border-color: var(--accent-text)}.field__hint{font-size: var(--t-xs);color: var(--ink-soft);margin-top: 8px}.qf__row--2 .field__hint{margin-top: -4px}.select{position: relative}.select::after{content: "";position: absolute;right: 18px;top: 50%;width: 8px;height: 8px;border-right: 2px solid currentColor;border-bottom: 2px solid currentColor;transform: translateY(-70%) rotate(45deg);pointer-events: none}.select select{appearance: none;padding-right: 44px}.check{display: grid;grid-template-columns: 22px 1fr;gap: 12px;align-items: start;font-size: var(--t-sm);color: var(--ink-soft);cursor: pointer}.check input{width: 20px;height: 20px;margin: 2px 0 0;accent-color: var(--accent)}.check a{color: var(--ink)}.qf__status:empty{display: none}.qf__status{padding: 14px 16px;border-radius: var(--r);background: var(--field);border: 1px solid var(--line-strong);font-weight: 560}.qf__status[data-state="error"]{color: var(--accent-text);border-color: currentColor}.qf__status[data-state="ok"]{color: var(--ink)}.qf__actions{display: flex;flex-wrap: wrap;align-items: center;gap: 12px 16px}.qf__or{color: var(--ink-soft);font-size: var(--t-sm)}.foot{position: relative;z-index: 5;background: var(--paper);border-top: 1px solid var(--line);padding-top: clamp(56px,9svh,96px)}.foot__grid{display: grid;grid-template-columns: minmax(0,5fr) repeat(3,minmax(0,2.4fr));gap: 32px var(--gutter)}.foot__mark{display: inline-flex;width: 210px;color: var(--ink)}.foot__mark .wordmark{width: 100%;height: auto}.foot__brand p{margin-top: 18px;color: var(--ink-soft);max-width: 30ch}.foot__col{display: flex;flex-direction: column;gap: 8px;font-size: var(--t-sm)}.foot__col h2{font-size: var(--t-sm);font-weight: 650;margin-bottom: 6px}.foot__col a{text-decoration: none;color: var(--ink-soft);width: fit-content}.foot__col a:hover{color: var(--ink);text-decoration: underline;text-underline-offset: 0.25em}.foot__legal{margin-top: clamp(48px,8svh,88px);padding-block: 22px calc(22px + env(safe-area-inset-bottom));border-top: 1px solid var(--line);display: flex;flex-wrap: wrap;justify-content: space-between;gap: 12px 24px;font-size: var(--t-xs);color: var(--ink-soft)}.foot__legal nav{display: flex;flex-wrap: wrap;gap: 18px}.foot__legal a{text-decoration: none}.foot__legal a:hover{color: var(--ink)}.page-head{padding-top: calc(var(--bar-h) + clamp(44px,11svh,132px));padding-bottom: clamp(40px,8svh,96px)}.crumbs{display: flex;flex-wrap: wrap;gap: 8px;list-style: none;margin: 0 0 clamp(20px,4svh,36px);padding: 0;font-size: var(--t-xs);color: var(--ink-soft)}.crumbs li + li::before{content: "/";margin-right: 8px;opacity: 0.6}.crumbs a{text-decoration: none}.crumbs a:hover{color: var(--ink)}.page-head h1{font-size: var(--t-xl);font-weight: 620;font-stretch: 78%;line-height: 0.94;letter-spacing: -0.016em;max-width: 16ch;text-wrap: balance}.page-head h1::after{content: "";display: inline-block;width: 0.14em;height: 0.74em;margin-left: 0.1em;background: var(--accent);vertical-align: -0.02em;animation: blink 1.05s steps(1) 4}.page-head .lede{margin-top: clamp(18px,3svh,28px);max-width: 52ch}.section{padding-bottom: var(--section)}.section__h{font-size: var(--t-lg);font-weight: 610;font-stretch: 80%;line-height: 0.98;letter-spacing: -0.014em;margin-bottom: clamp(20px,3svh,36px)}.svc-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 0 var(--gutter);border-bottom: 1px solid var(--line)}.svc-cell{border-top: 1px solid var(--line);padding: clamp(24px,4svh,44px) 0;display: flex;flex-direction: column;gap: 14px}.svc-cell h2{font-size: var(--t-md);font-weight: 610;font-stretch: 80%;letter-spacing: -0.012em;line-height: 1.02}.svc-cell h2 a{text-decoration: none}.svc-cell h2 a:hover{color: var(--accent-text)}.svc-cell p{color: var(--ink-soft);max-width: 48ch}.svc-cell ul{list-style: none;margin: 4px 0 0;padding: 0;display: flex;flex-wrap: wrap;gap: 6px}.svc-cell li{font-size: var(--t-xs);padding: 4px 10px;border: 1px solid var(--line);border-radius: var(--r)}.detail{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: var(--gutter);padding-bottom: var(--section)}.detail__main{grid-column: 1 / span 7;display: flex;flex-direction: column;gap: clamp(40px,8svh,80px)}.detail__side{grid-column: 9 / span 4;align-self: start;position: sticky;top: calc(var(--bar-h) + 32px);display: flex;flex-direction: column;gap: 16px;padding: 28px;border-radius: var(--r);background: var(--surface)}.detail__side h2{font-size: var(--t-md);font-weight: 610;font-stretch: 82%;line-height: 1.05;letter-spacing: -0.01em}.detail__side p{color: var(--ink-soft)}.checklist{list-style: none;margin: 0;padding: 0;display: grid;grid-template-columns: 1fr 1fr;gap: 14px 28px}.checklist li{display: grid;grid-template-columns: 18px 1fr;gap: 12px;line-height: 1.45}.checklist li::before{content: "";width: 12px;height: 7px;margin-top: 0.45em;border-left: 2px solid var(--accent-text);border-bottom: 2px solid var(--accent-text);transform: rotate(-45deg)}.detail h2.section__h{margin-bottom: 20px}.other-svc{display: flex;flex-wrap: wrap;gap: 10px}.cta-band{background: var(--accent);color: var(--on-accent)}.cta-band__in{padding-block: clamp(56px,11svh,120px);display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: 24px var(--gutter);align-items: end}.cta-band h2{grid-column: 1 / span 7;font-size: var(--t-xl);font-weight: 630;font-stretch: 78%;line-height: 0.93;letter-spacing: -0.018em;text-wrap: balance}.cta-band__side{grid-column: 9 / span 4;display: flex;flex-direction: column;gap: 20px;align-items: start}.cta-band__side p{font-size: var(--t-lede);line-height: 1.45;font-weight: 480}.work-grid{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: clamp(40px,7svh,72px) var(--gutter);padding-bottom: var(--section)}.work-tile{display: flex;flex-direction: column;gap: 16px}.work-tile .work__shot img{transition: transform 0.6s var(--ease)}.work-tile:hover .work__shot img{transform: scale(1.015)}.work-tile h2{font-size: var(--t-md);font-weight: 610;font-stretch: 80%;letter-spacing: -0.012em;line-height: 1.02}.work-tile p{color: var(--ink-soft)}.about-head{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: var(--gutter);align-items: end}.about-head > div{grid-column: 1 / span 7}.about-head figure{grid-column: 9 / span 4;margin: 0;border-radius: var(--r);overflow: hidden}.about-head figure img{width: 100%;aspect-ratio: 711 / 1024;object-fit: cover}.story{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: var(--gutter);padding-bottom: var(--section)}.story h2{grid-column: 1 / span 5}.story > div{grid-column: 7 / span 6;display: grid;gap: 18px;font-size: var(--t-lede);line-height: 1.5}.principles{display: grid;grid-template-columns: repeat(2,minmax(0,1fr));gap: 0 var(--gutter);border-bottom: 1px solid var(--line)}.principles > div{border-top: 1px solid var(--line);padding: clamp(22px,4svh,40px) 0}.principles h3{font-size: var(--t-md);font-weight: 610;font-stretch: 82%;letter-spacing: -0.01em;margin-bottom: 10px}.principles p{color: var(--ink-soft);max-width: 44ch}.tools{display: flex;flex-wrap: wrap;gap: 8px;margin-top: 20px;list-style: none;padding: 0}.tools li{font-family: var(--mono);font-size: var(--t-sm);padding: 8px 12px;border: 1px solid var(--line-strong);border-radius: var(--r)}.post-list{list-style: none;margin: 0;padding: 0;border-bottom: 1px solid var(--line)}.empty{padding: 40px 0;color: var(--ink-soft);font-size: var(--t-lede)}.article{max-width: 760px}.article__meta{display: flex;flex-wrap: wrap;gap: 8px 18px;color: var(--ink-soft);font-size: var(--t-sm);margin-top: 22px}.article__cover{margin: 0 0 clamp(32px,6svh,56px);border-radius: var(--r);overflow: hidden}.article__cover img{width: 100%}.prose{font-size: 1.125rem;line-height: 1.72}.prose > * + *{margin-top: 1.1em}.prose h2{font-size: var(--t-md);font-weight: 620;font-stretch: 84%;line-height: 1.1;letter-spacing: -0.01em;margin-top: 2em}.prose h3{font-size: 1.35rem;font-weight: 620;line-height: 1.2;margin-top: 1.7em}.prose h2 + *,.prose h3 + *{margin-top: 0.6em}.prose ul,.prose ol{padding-left: 1.3em}.prose li + li{margin-top: 0.4em}.prose li::marker{color: var(--accent-text)}.prose a{color: var(--accent-text);text-underline-offset: 0.2em}.prose strong{font-weight: 650}.prose blockquote{margin-left: 0;padding-left: 20px;border-left: 1px solid var(--accent);font-size: var(--t-lede)}.prose code{font-size: 0.88em;background: var(--surface);padding: 0.1em 0.35em;border-radius: 4px}.prose pre{background: var(--editor);color: var(--light);padding: 18px 20px;border-radius: var(--r);overflow-x: auto;font-size: 0.9rem;line-height: 1.6}.prose pre code{background: none;padding: 0}.prose img{border-radius: var(--r)}.more{padding-block: clamp(48px,9svh,96px) var(--section)}.contact{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: var(--gutter);padding-bottom: var(--section)}.contact__form{grid-column: 1 / span 7}.contact__side{grid-column: 9 / span 4;display: grid;gap: 28px;align-content: start}.contact__side dl{margin: 0;display: grid;gap: 18px}.contact__side dt{font-size: var(--t-xs);color: var(--ink-soft);margin-bottom: 2px}.contact__side dd{margin: 0;font-size: var(--t-lede);font-weight: 540}.contact__side dd a{text-decoration: none}.contact__side dd a:hover{color: var(--accent-text)}.legal{max-width: 780px;padding-bottom: var(--section)}.legal h2{font-size: 1.35rem;font-weight: 620;margin: 1.8em 0 0.5em}.legal p{color: var(--ink-soft);line-height: 1.7}.lost-links{display: flex;flex-wrap: wrap;gap: 10px;padding-bottom: var(--section)}@keyframes blink{50%{opacity: 0}}@media (max-width: 1100px){.bar__nav{gap: 22px}.clients__grid{grid-template-columns: repeat(3,minmax(0,1fr))}}@media (max-width: 900px){.bar__inner{grid-template-columns: 1fr auto}.bar__nav,.bar__cta{display: none}.bar__menu{display: inline-flex}html[data-header="dark"] .bar__lang,html.menu-open .bar__lang{border-color: rgba(241,241,239,0.3)}.me,.process,.close__grid,.detail,.story,.about-head,.contact,.cta-band__in{grid-template-columns: minmax(0,1fr)}.me__photo,.me__text,.process__title,.process__track,.close__intro,.close__form,.detail__main,.detail__side,.story h2,.story > div,.about-head > div,.about-head figure,.contact__form,.contact__side,.cta-band h2,.cta-band__side{grid-column: 1 / -1}.me__photo{max-width: 420px}.about-head figure{max-width: 380px}.process__title,.close__intro,.detail__side{position: static}.work__card{grid-template-columns: minmax(0,1fr)}.work__meta{order: 2}.journal__row{grid-template-columns: minmax(0,1fr);gap: 8px}.svc-grid,.principles,.work-grid{grid-template-columns: minmax(0,1fr)}.foot__grid{grid-template-columns: minmax(0,1fr) minmax(0,1fr)}.foot__brand{grid-column: 1 / -1}}@media (max-width: 760px){:root{--bar-h: 60px}.bar__brand{width: 128px}.hero{--span: 10}.hero__poster,.hero__video{object-fit: cover}.hero__shade{background: linear-gradient(180deg,rgba(7,7,6,0.82) 0,rgba(7,7,6,0) 20%),linear-gradient(0deg,rgba(7,7,6,0.97) 0,rgba(7,7,6,0.9) 34%,rgba(7,7,6,0) 62%)}.hero__intro,.hero__scene,.hero__final{left: var(--gutter);right: var(--gutter);top: auto;bottom: max(26px,env(safe-area-inset-bottom));width: auto;translate: none}.hero__title{font-size: clamp(2.3rem,1rem + 7.4vw,3.3rem);line-height: 0.95}.hero__sub{font-size: 1.02rem}.hero__ctas .btn{--h: 50px;padding: 0 18px}.hero__h{font-size: clamp(1.9rem,1rem + 5.2vw,2.6rem)}.hero__p{font-size: 1rem;margin-top: 12px}.hero__flood-h{font-size: clamp(3rem,0.6rem + 12.5vw,4.8rem)}.no-js .hero__stage,.hero.is-static .hero__stage{grid-template-columns: minmax(0,1fr)}.clients__grid{grid-template-columns: repeat(2,minmax(0,1fr));gap: 10px}.svc__lead{flex-basis: 84vw}.svc__card{flex-basis: 80vw;height: min(62svh,520px)}.work__item{top: calc(var(--bar-h) + 10px + var(--i) * 6px);margin-bottom: 6svh}.qf__row--2{grid-template-columns: minmax(0,1fr)}.checklist{grid-template-columns: minmax(0,1fr)}.qf__actions .btn{flex: 1 1 100%}.qf__or{display: none}.foot__grid{grid-template-columns: minmax(0,1fr)}}@media (prefers-reduced-motion: reduce){.work__card{transform: none}.work__card::after{display: none}.page-head h1::after,.hero__code .tcaret.is-idle{animation: none}.menu{transition: none}}.ph{--span: 2.3;position: relative;height: calc(var(--span) * 100svh);background: var(--paper)}.ph__stage{position: sticky;top: 0;height: 100svh;overflow: clip}.ph__frame{position: absolute;inset: 0;background: var(--editor);color: var(--light);overflow: clip;will-change: clip-path}.ph__camera{position: absolute;inset: 0;transform-origin: 0 0;will-change: transform}.ph__camera picture{display: contents}.ph__poster,.ph__video{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover;object-position: 38% 50%;max-width: none}.ph__video{opacity: 0;transition: opacity 0.45s var(--ease)}.ph.has-video .ph__video{opacity: 1}.ph__shade{position: absolute;inset: 0;pointer-events: none;background: linear-gradient(180deg,rgba(7,7,6,0.78) 0,rgba(7,7,6,0) 18%),linear-gradient(0deg,rgba(7,7,6,0.95) 0,rgba(7,7,6,0.7) 30%,rgba(7,7,6,0) 62%),linear-gradient(90deg,rgba(7,7,6,0.55) 0,rgba(7,7,6,0) 55%)}.ph__copy{position: absolute;left: var(--gutter);right: var(--gutter);bottom: clamp(34px,10svh,120px);max-width: 1100px;z-index: 2;will-change: transform}.ph .crumbs{color: var(--light-soft);margin-bottom: clamp(14px,2.4svh,24px)}.ph .crumbs a:hover{color: var(--light)}.ph__code{font-size: clamp(0.8rem,0.72rem + 0.28vw,0.98rem);color: var(--light);margin-bottom: clamp(12px,2svh,20px);white-space: pre;min-height: 1.4em}.ph__code .tcaret{display: inline-block;width: 0.62em;height: 1.15em;margin-left: 1px;vertical-align: -0.2em;background: var(--accent)}.ph__code .tcaret.is-idle{animation: blink 1.05s steps(1) infinite}.ph__title{font-size: var(--t-hero);font-weight: 620;font-stretch: 78%;line-height: 0.93;letter-spacing: -0.016em;max-width: 14em;text-wrap: balance}.ph__title .ml > span{transform: translate3d(0,108%,0);transition: transform 1s var(--ease) calc(var(--i,0) * 90ms + 120ms)}.ph.is-in .ph__title .ml > span{transform: none}.ph__lede{margin-top: clamp(14px,2.4svh,24px);font-size: var(--t-lede);line-height: 1.45;color: var(--light-soft);max-width: 50ch;opacity: 0;transform: translate3d(0,14px,0);transition: opacity 0.7s var(--ease) 0.45s,transform 0.7s var(--ease) 0.45s}.ph.is-in .ph__lede{opacity: 1;transform: none}.ph .crumbs{opacity: 0;transition: opacity 0.6s var(--ease) 0.3s}.ph.is-in .crumbs{opacity: 1}.no-js .ph{height: auto}.no-js .ph__stage,.ph.is-static .ph__stage{position: relative;height: 82svh}.ph.is-static{height: auto}.no-js .ph__title .ml > span,.no-js .ph__lede,.no-js .ph .crumbs{transform: none;opacity: 1}[data-words] .w{color: color-mix(in oklab,var(--ink) calc(var(--wo,0) * 100%),var(--ink-soft));transition: color 0.25s linear}.sx{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: var(--gutter);padding-top: var(--section);padding-bottom: var(--section)}.sx__index{grid-column: 1 / span 4;align-self: start;position: sticky;top: calc(var(--bar-h) + 36px)}.sx__index ol{list-style: none;margin: 0;padding: 0;display: grid;gap: 4px}.sx__index a{display: flex;align-items: center;gap: 12px;padding: 6px 0;font-size: clamp(1.05rem,0.95rem + 0.4vw,1.3rem);font-weight: 560;font-stretch: 88%;letter-spacing: -0.01em;color: var(--ink-soft);text-decoration: none;transition: color 0.2s var(--ease)}.sx__index a::before{content: "";width: 3px;height: 1.1em;background: var(--accent);transform: scaleY(0);transform-origin: 50% 100%;transition: transform 0.35s var(--ease)}.sx__index a:hover{color: var(--ink)}.sx__index a[aria-current="true"]{color: var(--ink)}.sx__index a[aria-current="true"]::before{transform: none}.sx__list{grid-column: 5 / span 8}.sx__item{padding: clamp(40px,9svh,110px) 0;border-top: 1px solid var(--line);scroll-margin-top: calc(var(--bar-h) + 24px)}.sx__item:first-child{border-top: 0;padding-top: 0}.sx__head{display: grid;gap: 10px;margin-bottom: clamp(20px,3svh,32px)}.sx__title{font-size: var(--t-lg);font-weight: 620;font-stretch: 80%;line-height: 0.98;letter-spacing: -0.014em}.sx__title a{text-decoration: none}.sx__title a:hover{color: var(--accent-text)}.sx__short{color: var(--accent-text);font-weight: 560}.sx__lede{font-size: var(--t-lede);line-height: 1.5;max-width: 56ch}.sx__inc{list-style: none;margin: clamp(22px,3svh,34px) 0;padding: 0;display: grid;grid-template-columns: 1fr 1fr;gap: 10px 28px;font-size: var(--t-sm)}.sx__inc li{display: grid;grid-template-columns: 14px 1fr;gap: 10px}.sx__inc li::before{content: "";width: 14px;height: 1px;margin-top: 0.72em;background: var(--accent-text)}.detail{padding-top: var(--section)}.detail__lede{font-size: clamp(1.35rem,1.05rem + 1.1vw,2.1rem);line-height: 1.32;font-weight: 520;letter-spacing: -0.01em;max-width: 34ch}.checklist li{grid-template-columns: 22px 1fr;opacity: 0;transform: translate3d(0,10px,0);transition: opacity 0.5s var(--ease) calc(var(--i) * 70ms),transform 0.5s var(--ease) calc(var(--i) * 70ms)}.checklist li::before{content: none}.checklist__tick{width: 20px;height: 20px;margin-top: 0.12em;fill: none;stroke: var(--accent-text);stroke-width: 2.4;stroke-linecap: round;stroke-linejoin: round}.checklist__tick path{stroke-dasharray: 24;stroke-dashoffset: 24;transition: stroke-dashoffset 0.6s var(--ease) calc(var(--i) * 70ms + 180ms)}.checklist.is-on li{opacity: 1;transform: none}.checklist.is-on .checklist__tick path{stroke-dashoffset: 0}.no-js .checklist li{opacity: 1;transform: none}.no-js .checklist__tick path{stroke-dashoffset: 0}.others{padding-top: var(--section)}.wk-list{padding-top: var(--section)}.wk{position: relative;height: 150svh}.wk--tall{height: 190svh}.wk__sticky{position: sticky;top: calc(var(--bar-h) + 3svh);height: calc(100svh - var(--bar-h) - 6svh);display: grid;grid-template-columns: minmax(0,4fr) minmax(0,8fr);gap: clamp(20px,3vw,56px);align-items: center}.wk__meta{display: grid;gap: 12px;align-content: center}.wk__name{font-size: var(--t-lg);font-weight: 620;font-stretch: 80%;line-height: 0.98;letter-spacing: -0.014em;text-wrap: balance}.wk__sum{color: var(--ink-soft);max-width: 40ch}.wk__frame{margin: 0;height: 100%;max-height: 760px;display: flex;flex-direction: column;border-radius: calc(var(--r) * 1.5);overflow: hidden;background: #fff;box-shadow: 0 0 0 1px var(--line),0 30px 60px -36px rgba(4,24,27,0.5)}.wk__view{position: relative;flex: 1;overflow: hidden}.wk__img{position: absolute;left: 0;top: 0;width: 100%;height: auto;will-change: transform}.wk:not(.wk--tall) .wk__img{height: 100%;object-fit: cover;object-position: top}.ab{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: var(--gutter);padding-top: var(--section);padding-bottom: var(--section);align-items: start}.ab__photo{grid-column: 1 / span 5;margin: 0;position: sticky;top: calc(var(--bar-h) + 32px)}.ab__photo-in{border-radius: var(--r);overflow: hidden;aspect-ratio: 711 / 1024;background: var(--surface)}.ab__photo img{width: 100%;height: 118%;object-fit: cover;transform: translate3d(0,calc(var(--pp,0.5) * -15%),0);will-change: transform}.ab__story{grid-column: 7 / span 6;display: grid;gap: clamp(22px,4svh,40px);padding-top: 4svh}.ab__big{font-size: clamp(1.35rem,1.05rem + 1.1vw,2.1rem);line-height: 1.32;font-weight: 520;letter-spacing: -0.01em}.principle{position: relative;padding-top: 22px}.principles > .principle{border-top: 0}.principle__bar{position: absolute;left: 0;right: 0;top: 0;height: 1px;background: var(--line);overflow: hidden}.principle__bar::after{content: "";position: absolute;inset: 0;background: var(--accent);transform: scaleX(0);transform-origin: 0 50%;transition: transform 0.9s var(--ease) 0.2s}.principle.sc-in .principle__bar::after{transform: scaleX(1)}.principles{border-bottom: 0;gap: clamp(28px,5svh,48px) var(--gutter)}.blog-list{padding-top: var(--section)}.journal__row--wash{position: relative;isolation: isolate}.journal__row--wash::before{content: "";position: absolute;inset: 0 calc(var(--gutter) * -0.5);z-index: -1;background: var(--surface);clip-path: inset(0 100% 0 0);transition: clip-path 0.5s var(--ease)}.journal__row--wash:hover::before,.journal__row--wash:focus-visible::before{clip-path: inset(0 0 0 0)}.journal__m{display: inline-block;margin-top: 8px;font-size: var(--t-xs);color: var(--accent-text);font-weight: 560}.readbar{position: fixed;left: 0;right: 0;top: 0;height: 3px;z-index: 70;pointer-events: none}.readbar span{display: block;height: 100%;background: var(--accent);transform-origin: 0 50%;transform: scaleX(var(--read,0))}.contact{padding-top: var(--section)}.cta-band{position: relative;isolation: isolate;background: var(--surface);color: var(--ink);overflow: clip;--k: 1}.cta-band__fill{position: absolute;inset: 0;z-index: -1;background: var(--accent);clip-path: inset(0 calc((1 - var(--k)) * 100%) 0 0)}.cta-band__caret{position: absolute;top: 0;bottom: 0;left: calc(var(--k) * 100%);width: clamp(10px,1.2vw,18px);margin-left: calc(clamp(10px,1.2vw,18px) * -1);background: var(--on-accent);opacity: calc((1 - var(--k)) * 8);z-index: 0}.cta-band__in{position: relative}.cta-band h2,.cta-band__side{color: var(--on-accent)}html.js .cta-band[data-sweep]{--k: 0}@view-transition{navigation: auto}.bar{view-transition-name: bar}::view-transition-old(root){animation: vt-out 0.32s var(--ease-io) both}::view-transition-new(root){animation: vt-in 0.62s var(--ease) both}@keyframes vt-out{to{opacity: 0;transform: translate3d(0,-24px,0)}}@keyframes vt-in{from{clip-path: inset(100% 0 0 0)}to{clip-path: inset(0 0 0 0)}}@media (max-width: 900px){.sx{grid-template-columns: minmax(0,1fr);padding-top: 0}.sx__index,.sx__list,.ab__photo,.ab__story{grid-column: 1 / -1}.sx__index{position: sticky;top: var(--bar-h);z-index: 20;margin: 0 calc(var(--gutter) * -1);padding: 10px var(--gutter);background: color-mix(in oklab,var(--paper) 92%,transparent);-webkit-backdrop-filter: blur(12px);backdrop-filter: blur(12px);box-shadow: 0 1px 0 var(--line);overflow-x: auto;scrollbar-width: none}.sx__index::-webkit-scrollbar{display: none}.sx__index ol{display: flex;gap: 8px;width: max-content}.sx__index a{font-size: var(--t-sm);padding: 8px 12px;border: 1px solid var(--line-strong);border-radius: var(--r);white-space: nowrap}.sx__index a::before{display: none}.sx__index a[aria-current="true"]{background: var(--ink);color: var(--paper);border-color: var(--ink)}.sx__item:first-child{padding-top: clamp(28px,5svh,48px)}.sx__inc{grid-template-columns: minmax(0,1fr)}.ab__photo{position: static;max-width: 420px}.wk{height: auto;padding-bottom: 12svh}.wk--tall{height: 150svh;padding-bottom: 0}.wk__sticky{grid-template-columns: minmax(0,1fr);height: auto;top: calc(var(--bar-h) + 2svh);align-items: start;gap: 18px}.wk--tall .wk__sticky{height: calc(100svh - var(--bar-h) - 4svh);grid-template-rows: auto minmax(0,1fr)}.wk:not(.wk--tall) .wk__frame{height: auto}.wk:not(.wk--tall) .wk__view{aspect-ratio: 16 / 10}.wk__meta{gap: 8px}.wk__name{font-size: var(--t-md)}}@media (max-width: 760px){.ph{--span: 2}.ph__shade{background: linear-gradient(180deg,rgba(7,7,6,0.82) 0,rgba(7,7,6,0) 20%),linear-gradient(0deg,rgba(7,7,6,0.97) 0,rgba(7,7,6,0.9) 38%,rgba(7,7,6,0) 66%)}.ph__copy{bottom: max(26px,env(safe-area-inset-bottom))}.ph__title{font-size: clamp(2.3rem,1rem + 7.4vw,3.3rem);line-height: 0.95}.ph__lede{font-size: 1.02rem}}@media (prefers-reduced-motion: reduce){.ph__title .ml > span,.ph__lede,.ph .crumbs{transition: none;transform: none;opacity: 1}.checklist li,.checklist__tick path{transition: none;opacity: 1;transform: none;stroke-dashoffset: 0}html.js .cta-band[data-sweep]{--k: 1}.ab__photo img{transform: none;height: 100%}::view-transition-old(root),::view-transition-new(root){animation: none}.journal__row--wash::before{transition: none}}.districts li{font-family: var(--font);font-weight: 520}.clients__grid--2{grid-template-columns: repeat(2,minmax(0,220px))}