@font-face{font-family:Mona Sans Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/mona-sans-vietnamese-wght-normal.DsUdksa4.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Mona Sans Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/mona-sans-latin-ext-wght-normal.BqSk0Z3x.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:Mona Sans Variable;font-style:normal;font-display:swap;font-weight:200 900;src:url(/_astro/mona-sans-latin-wght-normal.Pz49MTQZ.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2) format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2) format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2) format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff) format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2) format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff) format("woff");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}:root{--ink: #121310;--ink-2: #1c1d19;--paper: #f2f0ea;--paper-2: #e7e4db;--muted: #5c5b55;--muted-ink: #a6a59d;--line: rgba(18, 19, 16, .16);--line-strong: rgba(18, 19, 16, .32);--line-ink: rgba(242, 240, 234, .18);--signal: #d2f53c;--font-sans: "Mona Sans Variable", "Mona Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;--margin: clamp(16px, 3.6vw, 56px);--gutter: clamp(14px, 1.6vw, 24px);--header-h: 64px;--section-y: clamp(88px, 12vw, 176px);--t-mono: .75rem;--t-small: .875rem;--t-body: clamp(1rem, .96rem + .18vw, 1.125rem);--t-lead: clamp(1.2rem, .98rem + .95vw, 1.75rem);--t-h3: clamp(1.4rem, 1.05rem + 1.3vw, 2.25rem);--t-h2: clamp(2.4rem, 1.2rem + 4.6vw, 6.25rem);--t-display: clamp(2.6rem, 1rem + 6.4vw, 8.5rem);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-micro: .14s;--dur-ui: .26s;--dur-layout: .48s;color-scheme:light}*,*:before,*:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h) + 16px)}body{min-height:100svh;background:var(--paper);color:var(--ink);font-family:var(--font-sans);font-size:var(--t-body);font-weight:420;line-height:1.5;font-kerning:normal;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}img,svg,video,picture{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}ul[class],ol[class]{list-style:none;padding:0}:where(h1,h2,h3,h4){font-weight:640;line-height:1.02;letter-spacing:-.035em;text-wrap:balance}p{text-wrap:pretty}::selection{background:var(--signal);color:var(--ink)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px;box-shadow:0 0 0 6px var(--signal);border-radius:2px}.on-ink :focus-visible{outline-color:var(--signal);box-shadow:none}.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;left:var(--margin);top:10px;z-index:100;padding:10px 14px;background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:var(--t-mono);text-transform:uppercase;letter-spacing:.06em;transform:translateY(-160%);transition:transform var(--dur-ui) var(--ease-out)}.skip-link:focus{transform:translateY(0)}.wrap{padding-inline:var(--margin)}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter)}.section{padding-block:var(--section-y)}.section+.section{border-top:1px solid var(--line)}.on-ink{background:var(--ink);color:var(--paper)}.on-ink .muted,.on-ink .mono-muted{color:var(--muted-ink)}.muted{color:var(--muted)}.seg{white-space:nowrap}.rule{border:0;border-top:1px solid var(--line)}.mono{font-family:var(--font-mono);font-size:var(--t-mono);font-weight:450;letter-spacing:.06em;text-transform:uppercase;line-height:1.4}.mono-muted{color:var(--muted)}.lead{font-size:var(--t-lead);line-height:1.32;letter-spacing:-.012em;font-weight:440}.h2{font-size:var(--t-h2)}.h3{font-size:var(--t-h3);letter-spacing:-.025em}.display{font-size:var(--t-display);line-height:.94;letter-spacing:-.045em;font-weight:660}.balance{text-wrap:balance}.link{background:linear-gradient(currentColor,currentColor) 0 100% / 100% 1px no-repeat;transition:background-size var(--dur-ui) var(--ease-out);padding-bottom:1px}.link:hover{background-size:0 1px;background-position:100% 100%}.arrow-link{display:inline-flex;align-items:center;gap:.55em;font-family:var(--font-mono);font-size:var(--t-mono);text-transform:uppercase;letter-spacing:.06em;padding-block:6px;background:linear-gradient(currentColor,currentColor) 0 100% / 0 1px no-repeat;transition:background-size var(--dur-ui) var(--ease-out)}.arrow-link:hover{background-size:100% 1px}.arrow-link .arrow{transition:transform var(--dur-ui) var(--ease-out)}.arrow-link:hover .arrow{transform:translate(4px)}.arrow-link[target=_blank]:hover .arrow{transform:translate(3px,-3px)}.btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;justify-content:space-between;gap:1.6em;min-height:52px;padding:0 20px;border:1px solid var(--ink);font-family:var(--font-mono);font-size:.8125rem;font-weight:500;letter-spacing:.05em;text-transform:uppercase;transition:color var(--dur-ui) var(--ease-out),border-color var(--dur-ui) var(--ease-out)}.btn:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--signal);transform:scaleY(0);transform-origin:50% 100%;transition:transform var(--dur-ui) var(--ease-out)}.btn:hover:before{transform:scaleY(1)}.btn--solid{background:var(--ink);color:var(--paper)}.btn--solid:hover,.btn--line:hover{color:var(--ink)}.on-ink .btn{border-color:var(--paper)}.on-ink .btn--solid{background:var(--paper);color:var(--ink)}.btn .arrow{transition:transform var(--dur-ui) var(--ease-out)}.btn:hover .arrow{transform:translate(4px)}.site-header{position:fixed;inset:0 0 auto;z-index:50;height:var(--header-h);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter);align-items:center;padding-inline:var(--margin);color:var(--ink);transition:background-color var(--dur-ui) var(--ease-out),border-color var(--dur-ui) var(--ease-out);border-bottom:1px solid transparent}.site-header[data-scrolled=true]{background:color-mix(in srgb,var(--paper) 94%,transparent);border-bottom-color:var(--line)}@supports (backdrop-filter: blur(1px)){.site-header[data-scrolled=true]{backdrop-filter:saturate(1.2) blur(6px)}}.wordmark{grid-column:1 / span 3;justify-self:start;font-size:1.125rem;font-weight:680;letter-spacing:-.035em;line-height:1;white-space:nowrap;transition:opacity var(--dur-ui) var(--ease-out)}.wordmark__dot{display:inline-block;width:.42em;height:.42em;margin-left:.12em;background:var(--signal);border-radius:50%;vertical-align:.05em;box-shadow:0 0 0 1px var(--ink) inset}html.js .site-header[data-dock=pending] .wordmark{opacity:0;pointer-events:none}.site-nav{grid-column:5 / span 6}.site-nav ul{list-style:none;padding:0;display:flex;justify-content:space-between;gap:18px}.site-nav a{position:relative;display:inline-flex;gap:.45em;padding-block:8px;font-family:var(--font-mono);font-size:var(--t-mono);text-transform:uppercase;letter-spacing:.06em}.site-nav a .idx{color:var(--muted)}.site-nav a:after{content:"";position:absolute;left:0;right:0;bottom:2px;height:2px;background:var(--ink);transform:scaleX(0);transform-origin:0 50%;transition:transform var(--dur-ui) var(--ease-out)}.site-nav a:hover:after{transform:scaleX(1)}.site-nav a[aria-current=page]:after{transform:scaleX(1);background:var(--signal);height:4px;bottom:1px}.site-header__end{grid-column:11 / span 2;justify-self:end;display:flex;align-items:center;gap:14px}.lang-switch{display:flex;gap:2px}.lang-switch a,.lang-switch span{font-family:var(--font-mono);font-size:var(--t-mono);letter-spacing:.06em;padding:6px 5px;color:var(--muted)}.lang-switch [aria-current=true]{color:var(--ink);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:5px;text-decoration-color:var(--signal)}.lang-switch a:hover{color:var(--ink)}.menu-toggle{display:none;font-family:var(--font-mono);font-size:var(--t-mono);text-transform:uppercase;letter-spacing:.06em;padding:10px 0 10px 12px}.menu-toggle__bars{display:inline-block;width:18px;height:8px;margin-left:8px;border-block:1.5px solid currentColor;vertical-align:-.05em;transition:transform var(--dur-ui) var(--ease-out)}.menu-panel{position:fixed;inset:0;z-index:55;display:flex;flex-direction:column;justify-content:space-between;padding:calc(var(--header-h) + 24px) var(--margin) 28px;background:var(--ink);color:var(--paper);clip-path:inset(0 0 100% 0);visibility:hidden;transition:clip-path var(--dur-layout) var(--ease-in-out),visibility 0s linear var(--dur-layout)}.menu-panel[data-open=true]{clip-path:inset(0 0 0 0);visibility:visible;transition:clip-path var(--dur-layout) var(--ease-in-out),visibility 0s}.menu-panel__list a{display:flex;align-items:baseline;gap:14px;padding-block:6px;font-size:clamp(2.4rem,11vw,4.5rem);font-weight:640;letter-spacing:-.045em;line-height:1.02}.menu-panel__list .idx{font-family:var(--font-mono);font-size:var(--t-mono);color:var(--muted-ink);letter-spacing:.06em}.menu-panel__list a[aria-current=page]{color:var(--signal)}.menu-panel__foot{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}.menu-panel .lang-switch a,.menu-panel .lang-switch span{color:var(--muted-ink)}.menu-panel .lang-switch [aria-current=true]{color:var(--paper)}html.menu-open .site-header{z-index:56;color:var(--paper);background:transparent;border-bottom-color:transparent;backdrop-filter:none}html.menu-open .site-header .wordmark,html.js.menu-open .site-header[data-dock] .wordmark{opacity:1;pointer-events:auto}html.menu-open .site-header .lang-switch{visibility:hidden}html.menu-open .menu-toggle__bars{transform:scaleY(.4)}@media(max-width:899px){.site-nav,.site-header__end .lang-switch{display:none}.menu-toggle{display:inline-flex;align-items:center}.wordmark{grid-column:1 / span 8}.site-header__end{grid-column:9 / span 4}}.section-head{row-gap:24px;margin-bottom:clamp(48px,7vw,104px);align-items:end}.section-head__label{grid-column:1 / span 3;align-self:start;display:flex;gap:10px}.section-head__label .num{color:var(--muted)}.on-ink .section-head__label .num{color:var(--muted-ink)}.section-head__title{grid-column:4 / span 9}.section-head__intro{grid-column:4 / span 6;margin-top:22px}.deliverables{row-gap:24px}.deliverables__list{grid-column:4 / -1}@media(max-width:899px){.section-head__label,.section-head__title,.section-head__intro,.deliverables__list{grid-column:1 / -1}}.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;padding:calc(var(--header-h) + clamp(16px,3vw,40px)) var(--margin) 0;overflow:clip}.hero__meta{display:flex;justify-content:space-between;gap:16px;padding-bottom:18px;border-bottom:1px solid var(--line)}.hero__body{flex:1;align-content:center;row-gap:clamp(22px,3.2vh,36px);padding-block:clamp(20px,4vh,48px)}.hero__statement{grid-column:1 / -1;font-size:clamp(2.35rem,1.1rem + 5.2vw,6.75rem);font-weight:650;line-height:.96;letter-spacing:-.05em}.hero__line{display:block;overflow:clip;padding-bottom:.06em}.hero__line>span{display:inline-block}.hero__line--2{font-weight:330;letter-spacing:-.045em}.hero__mark{position:relative;font-weight:650;white-space:nowrap}.hero__mark:before{content:"";position:absolute;z-index:-1;left:-.06em;right:-.08em;bottom:.06em;height:.42em;background:var(--signal);transform-origin:0 50%}.hero__ctas{grid-column:1 / span 5;align-self:end;display:flex;flex-wrap:wrap;gap:10px}.hero__sub{grid-column:7 / span 6;max-width:46ch;font-size:clamp(1.05rem,.9rem + .45vw,1.3rem);line-height:1.42}.hero__name{position:relative;z-index:2;margin-inline:calc(var(--margin) * -.04);font-size:calc((100vw - 2 * var(--margin)) / var(--name-em, 5.74));font-weight:760;letter-spacing:-.06em;line-height:.78;white-space:nowrap;transform-origin:0 0;will-change:transform}.hero__name-chars{display:block;overflow:clip;padding-top:.04em;padding-bottom:.12em}.hero__name-chars>span{display:inline-block}.hero__name-chars .sp{width:.22em}@media(max-width:899px){.hero__statement,.hero__sub,.hero__ctas{grid-column:1 / -1}.hero__sub{order:2}.hero__ctas{order:3}.hero__name{letter-spacing:-.055em;--name-em: 5.8}}@media(max-width:599px){.hero__body{align-content:start;padding-top:clamp(40px,8vh,72px)}.hero__meta{font-size:.6875rem}.hero__meta .hide-sm{display:none}.hero__ctas .btn{flex:1 1 100%}}@media(prefers-reduced-motion:no-preference){.hero__line>span{animation:rise .9s var(--ease-out) both;animation-delay:calc(.12s + var(--d, 0) * 90ms)}.hero__mark:before{animation:mark .9s var(--ease-out) both .7s}.hero__name-chars>span{animation:rise 1s var(--ease-out) both;animation-delay:calc(var(--i) * 32ms)}.hero__sub,.hero__ctas,.hero__meta{animation:fade .9s var(--ease-out) both .42s}}@keyframes rise{0%{transform:translateY(104%)}to{transform:translateY(0)}}@keyframes mark{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes fade{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}html.js.motion [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease-out),transform .9s var(--ease-out);transition-delay:calc(var(--d, 0) * 80ms)}html.js.motion [data-reveal].is-in{opacity:1;transform:none}.work-index{border-top:1px solid var(--line-strong)}.work-row{position:relative;border-bottom:1px solid var(--line)}.work-row__link{position:relative;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter);align-items:baseline;padding-block:clamp(18px,2.2vw,30px)}.work-row__link:before{content:"";position:absolute;inset:0;z-index:-1;background:var(--signal);transform:scaleY(0);transform-origin:50% 100%;transition:transform var(--dur-ui) var(--ease-out)}.work-row__no{grid-column:1 / span 1;color:var(--muted)}.work-row__name{grid-column:2 / span 5;font-size:clamp(1.9rem,1rem + 3.4vw,4.6rem);font-weight:640;letter-spacing:-.045em;line-height:.98;transition:transform var(--dur-ui) var(--ease-out)}.work-row__cat{grid-column:7 / span 3;padding-right:1em}.work-row__role{grid-column:10 / span 3;grid-row:1;padding-right:2.4rem;color:var(--muted)}.work-row__go{grid-column:12;grid-row:1;justify-self:end;font-size:1.4rem;transition:transform var(--dur-ui) var(--ease-out)}.work-row__summary,.work-row__thumb{display:none}@media(hover:hover)and (pointer:fine){.work-index:hover .work-row__link{opacity:.36;transition:opacity var(--dur-ui) var(--ease-out)}.work-index .work-row__link:hover,.work-index .work-row__link:focus-visible{opacity:1}.work-row__link:hover .work-row__name{transform:translate(.18em)}.work-row__link:hover .work-row__go{transform:translate(-6px)}}.work-row__link:focus-visible{outline-offset:-2px;box-shadow:none}.work-row__link:focus-visible:before{transform:scaleY(1)}@media(max-width:899px),(hover:none){.work-row__link{grid-template-columns:56px 1fr auto;row-gap:8px}.work-row__no{grid-column:1;grid-row:1}.work-row__name{grid-column:2;grid-row:1}.work-row__go{grid-column:3;grid-row:1}.work-row__cat{grid-column:2 / -1;grid-row:2}.work-row__role{grid-column:2 / -1;grid-row:3;padding-right:0}.work-row__thumb{display:block;grid-column:2 / -1;grid-row:4;margin-top:12px;overflow:hidden;background:var(--paper-2);aspect-ratio:16 / 10}.work-row__thumb img{width:100%;height:100%;object-fit:cover;object-position:top center}}.work-preview{position:fixed;left:0;top:0;z-index:40;width:clamp(260px,26vw,440px);aspect-ratio:16 / 10;pointer-events:none;display:none;overflow:hidden;background:var(--paper-2);box-shadow:0 24px 60px -24px #12131073;clip-path:inset(50% 50% 50% 50%);transition:clip-path .42s var(--ease-out)}.work-preview[data-ready=true]{display:block}.work-preview[data-visible=true]{clip-path:inset(0 0 0 0)}.work-preview picture{position:absolute;inset:0;opacity:0;transition:opacity .22s ease}.work-preview picture.is-active{opacity:1}.work-preview img{width:100%;height:100%;object-fit:cover;object-position:top center}@media(hover:none),(pointer:coarse),(max-width:899px){.work-preview{display:none!important}}.build-list{grid-column:4 / span 9;counter-reset:build}.build-item{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));column-gap:var(--gutter);padding-block:clamp(26px,3vw,44px);border-top:1px solid var(--line)}.build-item:last-child{border-bottom:1px solid var(--line)}.build-item__no{grid-column:1;color:var(--muted);padding-top:.5em}.build-item__title{grid-column:2 / span 4;font-size:var(--t-h3)}.build-item__body{grid-column:6 / span 4;display:grid;gap:16px;align-content:start}.build-item__evidence{display:flex;flex-wrap:wrap;gap:4px 18px}@media(max-width:899px){.build-list{grid-column:1 / -1}.build-item{grid-template-columns:48px 1fr;row-gap:12px}.build-item__no{grid-column:1}.build-item__title,.build-item__body{grid-column:2}}.week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line-ink);border-bottom:1px solid var(--line-ink);margin-bottom:clamp(48px,7vw,96px)}.week__day{position:relative;padding:14px 10px 46px 0;border-right:1px solid var(--line-ink)}.week__day:last-child{border-right:0}.week__day.is-on:after{content:"";position:absolute;left:0;right:10px;bottom:14px;height:10px;background:var(--signal)}.week__ritual{display:block;margin-top:8px;color:var(--paper);font-family:var(--font-sans);text-transform:none;letter-spacing:-.01em;font-size:var(--t-small);line-height:1.25}@media(max-width:599px){.week__ritual{font-size:.6875rem}.week__day{padding-bottom:40px}}.rooms{row-gap:clamp(56px,8vw,120px)}.room{display:grid;gap:18px;align-content:start}.room__rhythm{color:var(--signal)}.room__name{font-size:clamp(2rem,1rem + 3.2vw,4.25rem);font-weight:640;letter-spacing:-.045em;line-height:.98}.room__text{max-width:44ch;color:var(--muted-ink);font-size:var(--t-lead);line-height:1.35}.room__media{overflow:hidden;background:var(--ink-2)}.room__media img{width:100%;height:100%;object-fit:cover}.room__quote{font-size:clamp(1.6rem,.9rem + 2.6vw,3.4rem);font-weight:330;letter-spacing:-.03em;line-height:1.1}.room--walk{grid-column:1 / span 7}.room--walk .room__media{aspect-ratio:4 / 3}.room--coffee{grid-column:9 / span 4;align-self:end}.room--club{grid-column:4 / span 5}.room--club .room__media{aspect-ratio:16 / 10}.room--playbook{grid-column:9 / span 4;align-self:center}.room__links{display:grid;justify-items:start;gap:2px}@media(max-width:899px){.room--walk,.room--coffee,.room--club,.room--playbook{grid-column:1 / -1}}.monogram{position:relative;aspect-ratio:4 / 5;display:grid;place-items:end start;padding:clamp(18px,2vw,28px);background:var(--ink);color:var(--paper);overflow:hidden}.monogram{container-type:inline-size}.monogram__letters{position:absolute;left:7%;top:9%;font-size:52cqi;font-weight:760;letter-spacing:-.08em;line-height:.8;color:var(--paper)}.monogram__letters span{color:var(--paper)}.monogram__letters i{display:inline-block;width:.2em;height:.2em;margin-left:.04em;border-radius:50%;background:var(--signal)}.facts{display:grid;border-top:1px solid var(--line)}.facts__row{display:grid;grid-template-columns:minmax(110px,.4fr) 1fr;gap:var(--gutter);padding-block:14px;border-bottom:1px solid var(--line)}.facts__row dt{color:var(--muted)}.facts__row dd{font-weight:520}.post-list{border-top:1px solid var(--line-strong)}.post{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--gutter);align-items:baseline;padding-block:22px;border-bottom:1px solid var(--line);transition:background-color var(--dur-ui) var(--ease-out)}.post:hover{background:var(--paper-2)}.post__date{grid-column:1 / span 2;color:var(--muted)}.post__title{grid-column:3 / span 8;font-size:clamp(1.15rem,.95rem + .8vw,1.6rem);font-weight:560;letter-spacing:-.02em;line-height:1.2}.post__go{grid-column:12;justify-self:end}@media(max-width:899px){.post{grid-template-columns:1fr auto;row-gap:6px}.post__date,.post__title{grid-column:1}.post__go{grid-column:2;grid-row:1 / span 2;align-self:center}}.contact__title{font-size:clamp(2.8rem,1rem + 7.4vw,10rem);font-weight:680;letter-spacing:-.055em;line-height:.9}.contact__title .soft{font-weight:300}.intents{border-top:1px solid var(--line-ink)}.intent{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-block:20px;border-bottom:1px solid var(--line-ink);font-size:clamp(1.25rem,.9rem + 1.4vw,2.1rem);font-weight:520;letter-spacing:-.025em;transition:padding var(--dur-ui) var(--ease-out),color var(--dur-ui) var(--ease-out)}.intent .arrow{font-size:.8em;transition:transform var(--dur-ui) var(--ease-out)}.intent:hover{color:var(--signal);padding-left:12px}.intent:hover .arrow{transform:translate(-4px)}.email-line{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px}.email-line__address{font-size:clamp(1.6rem,.9rem + 3vw,3.75rem);font-weight:600;letter-spacing:-.04em}.copy-btn{font-family:var(--font-mono);font-size:var(--t-mono);text-transform:uppercase;letter-spacing:.06em;padding:10px 14px;border:1px solid currentColor}.copy-btn[data-copied=true]{background:var(--signal);color:var(--ink);border-color:var(--signal)}.site-footer{padding:clamp(64px,9vw,128px) var(--margin) 28px;background:var(--ink);color:var(--paper)}.site-footer__line{font-size:clamp(2.2rem,1rem + 5vw,6.5rem);font-weight:650;letter-spacing:-.05em;line-height:.95}.site-footer__line .soft{font-weight:300;color:var(--muted-ink)}.site-footer__cols{margin-top:clamp(56px,7vw,104px);row-gap:32px}.site-footer__col{grid-column:span 3;display:grid;gap:10px;align-content:start}.site-footer__col a{width:fit-content}.site-footer__bottom{margin-top:clamp(48px,6vw,88px);padding-top:18px;border-top:1px solid var(--line-ink);display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;color:var(--muted-ink)}.site-footer__bottom button{color:inherit;text-decoration:underline;text-underline-offset:4px}@media(max-width:899px){.site-footer__col{grid-column:span 6}}.page-intro{padding:calc(var(--header-h) + clamp(48px,9vw,140px)) var(--margin) clamp(48px,6vw,88px)}.page-intro__label{display:flex;gap:10px;margin-bottom:clamp(22px,3vw,40px)}.page-intro__title{font-size:clamp(3.2rem,1rem + 10vw,13rem);font-weight:690;letter-spacing:-.06em;line-height:.86}.page-intro__lead{grid-column:6 / span 6;margin-top:clamp(26px,4vw,56px)}@media(max-width:899px){.page-intro__lead{grid-column:1 / -1}}.filters{display:flex;flex-wrap:wrap;gap:6px 22px;margin-bottom:28px}.filters button{font-family:var(--font-mono);font-size:var(--t-mono);text-transform:uppercase;letter-spacing:.06em;padding:8px 0;color:var(--muted);border-bottom:2px solid transparent}.filters button[aria-pressed=true]{color:var(--ink);border-bottom-color:var(--signal)}.filters button:hover{color:var(--ink)}.work-row[hidden]{display:none}.work-row--child .work-row__name{font-size:clamp(1.4rem,.9rem + 1.9vw,2.6rem)}.work-row--child .work-row__no:before{content:"↳ "}.case-head{padding:calc(var(--header-h) + clamp(40px,7vw,110px)) var(--margin) clamp(36px,5vw,72px)}.case-head__title{font-size:clamp(3rem,1rem + 8.6vw,11.5rem);font-weight:690;letter-spacing:-.06em;line-height:.88;margin-block:clamp(18px,3vw,36px) clamp(28px,4vw,56px)}.case-meta{border-top:1px solid var(--line-strong)}.case-meta__item{grid-column:span 3;padding-top:14px;display:grid;gap:6px;align-content:start}.case-meta__item dt{color:var(--muted)}.case-meta__item dd{font-weight:520}@media(max-width:899px){.case-meta__item{grid-column:span 6;padding-bottom:14px}}.case-lead{grid-column:1 / span 9}.case-figure{margin-inline:var(--margin);overflow:hidden;background:var(--paper-2)}.case-figure img{width:100%;height:auto}.case-cols{row-gap:40px}.case-col{grid-column:span 6;display:grid;gap:16px;align-content:start}.case-col p{max-width:52ch}@media(max-width:899px){.case-col,.case-lead{grid-column:1 / -1}}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));border-top:1px solid var(--line-strong)}.step{padding:18px var(--gutter) 22px 0;border-right:1px solid var(--line);display:grid;gap:10px;align-content:start}.step:last-child{border-right:0}.step h3{font-size:1.35rem;letter-spacing:-.02em}.slash-list{font-size:var(--t-lead);line-height:1.5}.slash-list span+span:before{content:" / ";color:var(--muted)}.ecosystem-list{border-top:1px solid var(--line-strong)}.gallery{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--gutter);padding-inline:var(--margin)}.gallery figure{grid-column:span 6;overflow:hidden;background:var(--paper-2)}.gallery figure:nth-child(3n+1){grid-column:span 12}.gallery img{width:100%;height:100%;object-fit:cover;object-position:top center}.gallery figcaption{padding:10px 0 0}@media(max-width:699px){.gallery figure,.gallery figure:nth-child(3n+1){grid-column:span 12}}.next-case{display:block;padding:clamp(40px,6vw,88px) var(--margin);border-top:1px solid var(--line);transition:background-color var(--dur-ui) var(--ease-out)}.next-case:hover{background:var(--signal)}.next-case__name{display:block;margin-top:12px;font-size:clamp(2.4rem,1rem + 6vw,8rem);font-weight:680;letter-spacing:-.055em;line-height:.92}.ba{display:grid;gap:12px}.ba__stage{position:relative;overflow:hidden;background:var(--paper-2);--pos: 50%;touch-action:pan-y}.ba__stage img{width:100%;height:100%;object-fit:cover;object-position:top center}.ba__after{position:absolute;inset:0;clip-path:inset(0 0 0 var(--pos))}.ba__divider{position:absolute;top:0;bottom:0;left:var(--pos);width:2px;margin-left:-1px;background:var(--signal);box-shadow:0 0 0 1px #12131040;pointer-events:none}.ba__divider:after{content:"↔";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:40px;height:40px;display:grid;place-items:center;background:var(--signal);color:var(--ink);font-size:1rem;border-radius:50%}.ba__range{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:ew-resize;margin:0}.ba__range:focus-visible+.ba__divider:after{outline:2px solid var(--ink);outline-offset:2px}.ba__labels{display:flex;justify-content:space-between}.ba--portrait .ba__stage{max-width:420px}.ba-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(32px,4vw,56px) var(--gutter)}.ba-grid .ba{grid-column:span 12}.ba-grid .ba--portrait{grid-column:span 6}@media(max-width:699px){.ba-grid .ba--portrait{grid-column:span 12}}.legal{grid-column:4 / span 7;display:grid;gap:36px;min-width:0;overflow-wrap:break-word}.legal>*{min-width:0}.legal h2{font-size:var(--t-h3);margin-bottom:12px}.legal p+p,.legal p+ul,.legal ul+p{margin-top:12px}.legal ul{padding-left:1.1em;display:grid;gap:6px}.legal-table{width:100%;border-collapse:collapse;margin-top:14px;font-size:var(--t-small)}.legal-table th,.legal-table td{text-align:left;padding:10px 12px 10px 0;border-bottom:1px solid var(--line);vertical-align:top}.legal-table th{font-family:var(--font-mono);font-size:var(--t-mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:450}.table-scroll{overflow-x:auto}@media(max-width:899px){.legal{grid-column:1 / -1}}.consent{position:fixed;z-index:60;left:var(--margin);bottom:16px;width:min(420px,calc(100vw - 2 * var(--margin)));padding:18px 18px 16px;background:var(--ink);color:var(--paper);box-shadow:0 30px 70px -30px #1213108c;display:grid;gap:14px}.consent[hidden]{display:none}.consent__title{font-size:1rem;font-weight:620;letter-spacing:-.01em}.consent__text{font-size:var(--t-small);color:var(--muted-ink);line-height:1.45}.consent__text a{color:var(--paper);text-decoration:underline;text-underline-offset:3px}.consent__actions{display:flex;flex-wrap:wrap;gap:8px}.consent__btn{flex:1 1 auto;min-height:42px;padding:0 12px;border:1px solid var(--paper);font-family:var(--font-mono);font-size:.6875rem;text-transform:uppercase;letter-spacing:.06em}.consent__btn--primary{background:var(--paper);color:var(--ink)}.consent__btn:hover{background:var(--signal);color:var(--ink);border-color:var(--signal)}.consent__prefs{display:grid;gap:10px;padding-top:10px;border-top:1px solid var(--line-ink)}.consent__prefs[hidden]{display:none}.consent__row{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:var(--t-small)}.consent__row small{display:block;color:var(--muted-ink)}.switch{position:relative;width:44px;height:24px;flex:none;border:1px solid var(--paper);border-radius:999px}.switch:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:var(--paper);transition:transform var(--dur-ui) var(--ease-out)}.switch[aria-checked=true]{background:var(--signal);border-color:var(--signal)}.switch[aria-checked=true]:after{transform:translate(20px);background:var(--ink)}.switch[disabled]{opacity:.6;cursor:not-allowed}@view-transition{navigation:auto}::view-transition-old(root),::view-transition-new(root){animation-duration:.38s;animation-timing-function:var(--ease-in-out)}::view-transition-group(*){animation-duration:.52s;animation-timing-function:var(--ease-out)}@media(prefers-reduced-motion:reduce){@view-transition{navigation:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hero__name{transform:none!important}}
