@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-ext-wght-normal-EocZY2iu.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Clash Display;src:url(/fonts/clash-display/ClashDisplay-Medium.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Clash Display;src:url(/fonts/clash-display/ClashDisplay-Semibold.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Clash Display;src:url(/fonts/clash-display/ClashDisplay-Bold.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}img,picture,video,canvas,svg{max-width:100%;display:block}img,video{-webkit-user-drag:none;-webkit-user-select:none;user-select:none;height:auto}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}a{color:inherit;text-decoration:none}a,button,[data-cursor]{-webkit-tap-highlight-color:transparent;touch-action:manipulation}ol,ul{list-style:none}[hidden]{display:none!important}@property --c-accent-current{syntax:"<color>";inherits:true;initial-value:#d7ff1f}@property --c-accent-current-fg{syntax:"<color>";inherits:true;initial-value:#d7ff1f}@property --c-accent-current-ink{syntax:"<color>";inherits:true;initial-value:#050505}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--c-bg:#050505;--c-surface:#0e0e0e;--c-fg:#edebe4;--c-fg-muted:#7c7a74;--c-line:#edebe424;--c-accent-astryx:#d7ff1f;--c-accent-astryx-fg:#d7ff1f;--c-accent-astryx-ink:#050505;--c-accent-mersyde:#800020;--c-accent-mersyde-fg:#c2264b;--c-accent-mersyde-ink:#edebe4;--c-accent-design:#2952ff;--c-accent-design-fg:#4d6fff;--c-accent-design-ink:#edebe4;--f-display:Clash Display, Arial Narrow, Helvetica Neue, Arial, sans-serif;--f-mono:JetBrains Mono Variable, ui-monospace, monospace;--fs-mega:clamp(2.5rem, 10vw, 16rem);--fs-xl:clamp(2.5rem, 7.5vw, 9rem);--fs-row:clamp(1.75rem, 4.2vw, 4.25rem);--fs-l:clamp(1.5rem, 2.5vw, 2.5rem);--fs-body:clamp(1rem, .95rem + .25vw, 1.125rem);--fs-mono:.75rem;--fs-mono-s:.6875rem;--sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;--sp-5:1.5rem;--sp-6:2rem;--sp-7:3rem;--sp-8:4rem;--sp-9:6rem;--sp-10:8rem;--section-pad:clamp(4rem, 10vw, 10rem);--page-margin:clamp(16px, 3vw, 48px);--grid-gutter:clamp(12px, 1.5vw, 24px);--grid-cols:4;--header-h:3.25rem;--ease-out-css:cubic-bezier(.16, 1, .3, 1);--ease-in-out-css:cubic-bezier(.87, 0, .13, 1);--ease-soft-css:cubic-bezier(.215, .61, .355, 1);--dur-fast:.25s;--dur-base:.6s;--dur-slow:1.1s;--dur-accent:.45s}@media (width>=640px){:root{--grid-cols:6}}@media (width>=1024px){:root{--grid-cols:12}}:root{scrollbar-gutter:stable;transition:--c-accent-current var(--dur-accent) var(--ease-soft-css), --c-accent-current-fg var(--dur-accent) var(--ease-soft-css), --c-accent-current-ink var(--dur-accent) var(--ease-soft-css)}@media (prefers-reduced-motion:reduce){:root{transition:none}}[data-accent=astryx]{--c-accent-current:var(--c-accent-astryx);--c-accent-current-fg:var(--c-accent-astryx-fg);--c-accent-current-ink:var(--c-accent-astryx-ink)}[data-accent=mersyde]{--c-accent-current:var(--c-accent-mersyde);--c-accent-current-fg:var(--c-accent-mersyde-fg);--c-accent-current-ink:var(--c-accent-mersyde-ink)}[data-accent=design]{--c-accent-current:var(--c-accent-design);--c-accent-current-fg:var(--c-accent-design-fg);--c-accent-current-ink:var(--c-accent-design-ink)}html{background:var(--c-bg);scroll-padding-top:var(--header-h)}@media (prefers-reduced-motion:no-preference){html:not(.lenis){scroll-behavior:smooth}}html.lenis,html.lenis body{height:auto}.lenis.lenis-stopped{overflow:clip}.lenis [data-lenis-prevent]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}body{background:var(--c-bg);min-height:100vh;color:var(--c-fg);font-family:var(--f-mono);font-size:var(--fs-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;line-height:1.5}main{z-index:1;isolation:isolate;position:relative}::selection{background:var(--c-fg);color:var(--c-bg);text-shadow:none;text-decoration:none}:focus-visible{outline:2px solid var(--c-accent-current-fg);outline-offset:3px}h1,h2,h3,h4{font-weight:inherit;font-size:inherit;text-wrap:balance}p{text-wrap:pretty}em{font-style:normal}.t-display{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;text-transform:uppercase;font-weight:600;line-height:.86}.t-mono{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;font-weight:400;line-height:1.4}.t-mono-s{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;font-weight:400;line-height:1.4}.t-muted{color:var(--c-fg-muted)}.grid{grid-template-columns:repeat(var(--grid-cols), minmax(0, 1fr));column-gap:var(--grid-gutter);display:grid}.page-gutters{padding-inline:var(--page-margin)}.section{padding-inline:var(--page-margin);padding-block:var(--section-pad)}.section-label{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;color:var(--c-fg-muted);font-weight:400;line-height:1.4}.site-header{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;z-index:50;justify-content:space-between;align-items:center;gap:var(--sp-4);height:var(--header-h);padding-inline:var(--page-margin);transition:border-color var(--dur-fast) var(--ease-soft-css), background-color var(--dur-fast) var(--ease-soft-css);background-color:#0000;border-bottom:1px solid #0000;font-weight:400;line-height:1.4;display:flex;position:fixed;inset:0 0 auto}.site-header--scrolled,.no-js .site-header{border-bottom-color:var(--c-line);background-color:var(--c-bg)}.site-header ul{gap:var(--sp-6);display:flex}.site-header a{padding:var(--sp-1) var(--sp-2);margin-inline:calc(var(--sp-2) * -1);background:var(--c-bg);display:inline-block;position:relative}.site-header__nav a:after{content:"";inset:auto var(--sp-2) 2px;transform-origin:100%;height:1px;transition:transform var(--dur-fast) var(--ease-soft-css);background:currentColor;position:absolute;transform:scaleX(0)}.site-header__nav a:hover:after,.site-header__nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.hero{isolation:isolate;background:var(--c-bg);height:100svh;min-height:560px;position:relative;overflow:hidden}.hero__canvas{z-index:0;width:100%;height:100%;position:absolute;inset:0}.hero__sources{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}.hero__sources>*{width:1px;height:1px}.hero__fallback{z-index:1;object-fit:cover;filter:brightness(.35)grayscale(.4);width:100%;height:100%;position:absolute;inset:0}.hero--live .hero__fallback{visibility:hidden}.hero__type{z-index:2;justify-content:flex-end;gap:var(--sp-5);padding:calc(var(--header-h) + var(--sp-8)) var(--page-margin) calc(var(--sp-8) + var(--sp-4));pointer-events:none;flex-direction:column;display:flex;position:absolute;inset:0}.js .hero__type{opacity:0;animation:0s 3s forwards hero-type-failsafe}.hero--ready .hero__type{opacity:1;animation:none}.hero__title{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;grid-template-columns:repeat(var(--grid-cols), minmax(0, 1fr));column-gap:var(--grid-gutter);font-weight:600;line-height:.86;font-size:var(--fs-mega);text-transform:uppercase;white-space:nowrap;display:grid}.hero__line{display:block}.hero__line--1{grid-column:1/5}.hero__line--2{grid-column:1/5;justify-self:end}@media (width>=640px){.hero__line--1{grid-column:1/6}.hero__line--2{grid-column:2/7;justify-self:start}}@media (width>=1024px){.hero__line--1{grid-column:1/10}.hero__line--2{grid-column:4/13}}.hero__role{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;font-weight:400;line-height:1.4}.hero__role span{background:var(--c-bg);-webkit-box-decoration-break:clone;box-decoration-break:clone;margin-left:-.4em;padding:.15em .4em}.hero__role{--offset-cols:0;padding-left:calc((100% - (var(--grid-cols) - 1) * var(--grid-gutter)) / var(--grid-cols) * var(--offset-cols) + var(--grid-gutter) * var(--offset-cols))}@media (width>=640px){.hero__role{--offset-cols:1}}@media (width>=1024px){.hero__role{--offset-cols:3}}.hero__hud{z-index:3;pointer-events:none;position:absolute;inset:0}.hero__hud-item{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;background:var(--c-bg);font-variant-numeric:tabular-nums;padding:.15em .4em;font-weight:400;line-height:1.4;position:absolute}.hero__hud-item--tl,.hero__hud-item--tr{top:calc(var(--header-h) + var(--sp-3))}.hero__hud-item--bl,.hero__hud-item--br{bottom:var(--sp-5)}.hero__hud-item--tl,.hero__hud-item--bl{left:var(--page-margin)}.hero__hud-item--tr,.hero__hud-item--br{right:var(--page-margin)}@keyframes hero-type-failsafe{to{opacity:1}}.story{isolation:isolate;padding:var(--section-pad) var(--page-margin);position:relative}.story__meta{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;z-index:1;align-items:center;gap:var(--sp-4);margin-bottom:var(--sp-8);font-variant-numeric:tabular-nums;font-weight:400;line-height:1.4;display:flex;position:relative}.no-js .story__meta{display:none}.story__progress{background:var(--c-line);flex:1;height:1px;position:relative;overflow:hidden}.story__progress-bar{background:var(--c-fg);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.story__beats{z-index:0;row-gap:var(--sp-10);display:grid;position:relative}.story__beat{grid-template-columns:repeat(var(--grid-cols), minmax(0, 1fr));column-gap:var(--grid-gutter);row-gap:var(--sp-2);display:grid}.story__line{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;font-weight:600;line-height:.86;font-size:var(--fs-xl);grid-column:1/-1;padding-bottom:.06em}@media (width>=640px){.story__beat:nth-child(odd) .story__line:nth-child(2),.story__beat:nth-child(2n) .story__line:first-child{grid-column:2/7}}@media (width>=1024px){.story__beat:nth-child(odd) .story__line:first-child{grid-column:1/9}.story__beat:nth-child(odd) .story__line:nth-child(2){grid-column:4/13}.story__beat:nth-child(2n) .story__line:first-child{grid-column:5/13}.story__beat:nth-child(2n) .story__line:nth-child(2){grid-column:2/11}}.story .story__split-line-mask{margin-bottom:-.12em;padding-bottom:.12em}.story em{color:var(--c-accent-current-fg);transition:color var(--dur-accent) var(--ease-soft-css)}.story--pinned{height:100svh;padding-block:calc(var(--header-h) + var(--sp-6)) var(--sp-8);flex-direction:column;display:flex}.story--pinned .story__meta{margin-bottom:0}.story--pinned .story__beats{flex:1;align-content:center;row-gap:0}.story--pinned .story__beat{grid-area:1/1}.story--pinned .story__beat:not(.is-current) em{color:var(--c-fg)}.story--pinned .story__beat:not(.is-current){-webkit-user-select:none;user-select:none}.work{z-index:1;margin-top:calc(var(--story-overlap,0px) * -1);padding:var(--sp-9) var(--page-margin) var(--section-pad);position:relative}.work__header{gap:var(--sp-4);margin-bottom:var(--sp-6);display:grid}.work__title{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;font-weight:400;line-height:1.4}.work__columns{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;color:var(--c-fg-muted);font-weight:400;line-height:1.4;display:none}@media (width>=640px){.work__columns{grid-template-columns:var(--row-cols);column-gap:var(--grid-gutter);display:grid}}.work__col--year{grid-column:2}.work__col--project{grid-column:3}.work__col--category{text-align:right;grid-column:4}.work{--row-cols:minmax(0, 2.5rem) minmax(0, 8rem) minmax(0, 1fr) minmax(0, 14rem) 2rem}@media (width>=1024px){.work{--row-cols:minmax(0, 3.5rem) minmax(0, 10rem) minmax(0, 1fr) minmax(0, 18rem) 3rem}}.project-list>li:last-child .project-row{border-bottom:1px solid var(--c-line)}.project-list__divider{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;padding-block:var(--sp-3);border-top:1px solid var(--c-line);color:var(--c-fg-muted);font-weight:400;line-height:1.4}.project-row{align-items:baseline;column-gap:var(--sp-3);row-gap:var(--sp-2);border-top:1px solid var(--c-line);min-height:64px;color:var(--c-fg);transition:color var(--dur-accent) var(--ease-soft-css);grid-template-columns:auto auto 1fr auto;grid-template-areas:"title title title arrow""index year category category";padding-block:clamp(1rem,2.2vw,1.75rem);display:grid;position:relative}@media (width>=640px){.project-row{grid-template-columns:var(--row-cols);column-gap:var(--grid-gutter);grid-template-areas:"index year title category arrow"}}.project-row:before{content:"";top:0;bottom:0;left:calc(var(--page-margin) * -.5);background:var(--c-accent-current);transform-origin:bottom;width:2px;transition:transform var(--dur-fast) var(--ease-out-css);position:absolute;transform:scaleY(0)}.row__index,.row__year,.row__category{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;font-weight:400;line-height:1.4}.row__index{grid-area:index}.row__year{grid-area:year}.row__category{text-align:right;grid-area:category}.row__title{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;font-weight:600;line-height:.86;font-size:var(--fs-row);text-transform:uppercase;transition:color var(--dur-accent) var(--ease-soft-css);grid-area:title}.row__arrow{font-family:var(--f-mono);font-size:var(--fs-l);transition:transform var(--dur-fast) var(--ease-out-css), color var(--dur-accent) var(--ease-soft-css);grid-area:arrow;justify-self:end;line-height:1}@media (hover:hover) and (pointer:fine){.project-row:hover .row__title,.project-row:hover .row__arrow,.project-row.is-active .row__title,.project-row.is-active .row__arrow{color:var(--c-accent-current-fg)}.project-row:hover:before,.project-row.is-active:before{transform:scaleY(1)}.project-row:hover .row__arrow,.project-row.is-active .row__arrow{transform:translateX(var(--sp-2))}.project-list:has(.project-row:hover) .project-row:not(:hover){color:var(--c-fg-muted)}}.project-row:focus-visible .row__title{color:var(--c-accent-current-fg)}.project-row:focus-visible:before{transform:scaleY(1)}.media-stage{z-index:100;isolation:isolate;pointer-events:none;visibility:hidden;opacity:0;width:clamp(220px,22vw,380px);height:0;position:fixed;top:0;left:0}.media-stage__item{background:var(--c-surface);clip-path:inset(100% 0 0);width:100%;position:absolute;top:0;left:0;overflow:hidden;transform:translateY(-50%)}.media-stage__item img,.media-stage__item video{object-fit:cover;width:100%;height:100%}.media-stage__item:after{content:"";border:1px solid var(--c-accent-current-fg);pointer-events:none;position:absolute;inset:0}.overlay{z-index:200;background:var(--c-surface);position:fixed;inset:0}.overlay__body{overscroll-behavior:none;padding:calc(var(--sp-9) + var(--sp-4)) var(--page-margin) var(--sp-6);position:absolute;inset:0;overflow-y:auto}@media (width>=769px){.overlay__body{padding:0}}.overlay__body>.case{border-top:0;padding-block:0}.overlay .gallery-trail{z-index:1;pointer-events:none;mix-blend-mode:difference;width:100%;height:100%;position:absolute;inset:0}.overlay__wipe{z-index:3;place-content:center;justify-items:center;gap:var(--sp-4);padding:var(--page-margin);background:var(--c-accent-current);color:var(--c-accent-current-ink);text-align:center;visibility:hidden;pointer-events:none;display:grid;position:absolute;inset:0}.overlay__wipe-line{display:block;overflow:hidden}.overlay__wipe-text{display:block}.overlay__wipe-label,.overlay__wipe-meta{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;font-weight:400;line-height:1.4}.overlay__wipe-title{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;font-weight:600;line-height:.86;font-size:var(--fs-xl);text-transform:uppercase;padding-block:.06em}.overlay.is-transitioning .overlay__body{overflow:hidden}.overlay__close{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;top:var(--sp-4);right:var(--page-margin);z-index:1;padding:var(--sp-3) var(--sp-4);background:var(--c-accent-current);color:var(--c-accent-current-ink);font-weight:400;line-height:1.4;position:absolute}.is-overlay-open{overflow:hidden}.cursor{z-index:300;color:#fff;pointer-events:none;mix-blend-mode:difference;display:none;position:fixed;top:0;left:0}.cursor__dot,.cursor__ring,.cursor__label{position:absolute;top:0;left:0}.cursor__ring{max-width:none;overflow:visible}.cursor__circle{fill:none;stroke:currentColor;stroke-width:1.5px;vector-effect:non-scaling-stroke;transition:opacity var(--dur-fast) linear}.cursor__dot{width:4px;height:4px;transition:opacity var(--dur-fast) linear;background:currentColor;border-radius:50%}.cursor__label{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;color:currentColor;white-space:nowrap;opacity:0;font-weight:400;line-height:1.4}.cursor[data-state=view] .cursor__dot,.cursor[data-state=video] .cursor__dot,.cursor[data-state=drag] .cursor__dot{opacity:0}.cursor__progress{fill:none;stroke:currentColor;stroke-width:2px;vector-effect:non-scaling-stroke;opacity:0;transition:opacity var(--dur-fast) linear}.cursor__icon{fill:currentColor;opacity:0;transition:opacity var(--dur-fast) linear}.cursor[data-state=video] .cursor__circle{opacity:.3}.cursor[data-state=video] .cursor__progress,.cursor[data-state=video][data-playing=true] .cursor__icon--pause,.cursor[data-state=video][data-playing=false] .cursor__icon--play{opacity:1}.has-custom-cursor .cursor{display:block}.has-custom-cursor,.has-custom-cursor a,.has-custom-cursor button,.has-custom-cursor [data-cursor]{cursor:none}.cases{padding:0 var(--page-margin) var(--section-pad)}.js .cases{display:none}.cases__title{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;padding-block:var(--sp-6);border-top:1px solid var(--c-line);font-weight:400;line-height:1.4}.case{padding-block:var(--sp-8);border-top:1px solid var(--c-line)}.case__stage{gap:var(--sp-7);display:grid}@media (width>=769px){.case__stage{gap:var(--sp-7) clamp(var(--sp-6), 4vw, var(--sp-9));grid-template-columns:minmax(0,34fr) minmax(0,66fr);align-items:start}}.case__intro{align-content:start;gap:var(--sp-6);display:grid}.case__header{gap:var(--sp-4);display:grid}.case__meta{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;gap:var(--sp-2) var(--sp-5);flex-wrap:wrap;font-weight:400;line-height:1.4;display:flex}.case__title{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;font-weight:600;line-height:.86;font-size:var(--fs-xl);text-transform:uppercase}@media (width>=769px){.case__title{font-size:var(--fs-row)}}.case__summary{max-width:44ch;font-family:var(--f-mono);font-size:clamp(.8125rem,.78rem + .12vw,.9375rem);line-height:1.65}.case__metrics{gap:var(--sp-5) var(--sp-7);flex-wrap:wrap;display:flex}.case__metric{gap:var(--sp-2);min-width:8rem;padding-top:var(--sp-3);border-top:1px solid var(--c-accent-current-fg);display:grid}.case__metric dt{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;color:var(--c-fg-muted);font-weight:400;line-height:1.4}.case__metric dd{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;font-weight:600;line-height:.86;font-size:var(--fs-l);color:var(--c-accent-current-fg);line-height:1}.case__back{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;justify-self:start;font-weight:400;line-height:1.4}.case__gallery{--gallery-h:clamp(280px, 62svh, 560px);gap:var(--sp-4);min-width:0;display:grid}@media (width>=1024px){.case__gallery{--gallery-h:clamp(360px, 70svh, 860px)}}.case__gallery-viewport{--fig-max-h:var(--gallery-h);--fig-max-w:calc((100cqw - var(--page-margin) * 2) * .86);margin-inline:calc(var(--page-margin) * -1);overscroll-behavior:none;scroll-snap-type:x mandatory;scroll-padding-inline:var(--page-margin);scrollbar-width:none;-webkit-overflow-scrolling:touch;overflow:auto hidden;container-type:inline-size}.case__gallery-viewport::-webkit-scrollbar{display:none}@media (width>=769px){.case__gallery-viewport{--fig-max-w:calc(100cqw - var(--page-margin));scroll-padding-inline:0 var(--page-margin);margin-left:0}}.case__gallery--pinned .case__gallery-viewport{scroll-snap-type:none;overflow:hidden}.case__track{align-items:flex-start;gap:var(--grid-gutter);width:max-content;padding-inline:var(--page-margin);flex-wrap:nowrap;display:flex;overflow-y:clip}@media (width>=769px){.case__track{padding-left:0}}.case__figure{--ratio:1;height:min(var(--fig-max-h), var(--fig-max-w) / var(--ratio));aspect-ratio:var(--ratio);background:var(--c-surface);scroll-snap-align:start;flex:none;position:relative;overflow:hidden}.case__figure img,.case__figure video{object-fit:contain;width:100%;max-width:none;height:100%;display:block}.case__gallery--reveal .case__figure>img,.case__gallery--reveal .case__figure>video{opacity:0;transition:opacity 1.1s var(--ease-out-css), transform 1.2s var(--ease-out-css);transform:scale(1.06)}.case__gallery--reveal .case__figure.is-revealed>img,.case__gallery--reveal .case__figure.is-revealed>video{opacity:1;transform:none}@media (width<=768.98px){.case--uniform .case__figure:not(.case__figure--video){height:min(var(--fig-max-h), var(--fig-max-w));aspect-ratio:1}.case--uniform .case__figure:not(.case__figure--video) img{object-fit:cover}}.case__gallery-meta{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;align-items:center;gap:var(--sp-4);font-variant-numeric:tabular-nums;font-weight:400;line-height:1.4;display:flex}.case__gallery-progress{background:var(--c-line);flex:1;height:1px;position:relative;overflow:hidden}.case__gallery:not(.case__gallery--pinned) .case__gallery-progress{visibility:hidden}.case__gallery-progress-bar{background:var(--c-accent-current-fg);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.case__gallery-hint{align-items:center;gap:var(--sp-3);white-space:nowrap;display:inline-flex}.case__gallery-cue{background:var(--c-line);width:2.5rem;height:1px;position:relative;overflow:hidden}.case__gallery-cue:after{content:"";background:var(--c-fg);animation:case-cue 1.8s var(--ease-soft-css) infinite;position:absolute;inset:0;transform:translate(-100%)}@media (prefers-reduced-motion:reduce){.case__gallery-cue:after{animation:none;transform:none}}.has-custom-cursor .case__video-state{display:none}.case__video-state{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;top:var(--sp-3);left:var(--sp-3);padding:var(--sp-1) var(--sp-2);background:var(--c-accent-current);color:var(--c-accent-current-ink);pointer-events:none;font-weight:400;line-height:1.4;position:absolute}@media (width>=769px){.overlay__body>.case{height:calc(100svh + var(--case-travel,0px));padding:0}.overlay__body>.case .case__stage{align-items:stretch;gap:0;height:100svh;display:flex;position:sticky;top:0;overflow:hidden}.overlay__body>.case .case__intro{justify-content:center;gap:var(--sp-6);min-height:100svh;max-height:100svh;padding:calc(var(--sp-8) + var(--sp-4)) clamp(var(--sp-6), 4vw, var(--sp-9)) calc(var(--sp-8) + var(--sp-4)) var(--page-margin);overscroll-behavior:none;scrollbar-width:none;flex-direction:column;flex:0 0 clamp(20rem,38vw,40rem);display:flex;overflow-y:auto}.overlay__body>.case .case__gallery{min-width:0;padding-block:calc(var(--sp-8) + var(--sp-4)) calc(var(--sp-8) + var(--sp-2));flex:1 1 0;grid-template-rows:minmax(0,1fr);display:grid}.overlay__body>.case .case__gallery-viewport{--fig-max-h:100cqh;container-type:size}.overlay__body>.case .case__track{align-items:center;height:100%}.overlay__body>.case .case__gallery-meta{inset:auto var(--page-margin) var(--sp-6);position:absolute}}.overlay__body>.case--scrub .case__gallery-viewport{overflow:visible}@keyframes case-cue{0%{transform:translate(-100%)}60%,to{transform:translate(100%)}}.contact{gap:var(--sp-7);padding:var(--section-pad) var(--page-margin) var(--sp-6);border-top:1px solid var(--c-line);display:grid}.contact__title{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;font-weight:600;line-height:.86;font-size:var(--fs-mega);text-transform:uppercase}.contact__email{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;font-weight:600;line-height:.86;font-size:var(--fs-l);justify-self:start;line-height:1.1}.contact__links{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;gap:var(--sp-3) var(--sp-6);flex-wrap:wrap;font-weight:400;line-height:1.4;display:flex}.contact__email,.contact__links a{display:inline-block;position:relative}.contact__email:after,.contact__links a:after{content:"";transform-origin:100%;height:1px;transition:transform var(--dur-fast) var(--ease-soft-css);background:currentColor;position:absolute;inset:auto 0 -2px;transform:scaleX(0)}.contact__email:hover:after,.contact__email:focus-visible:after,.contact__links a:hover:after,.contact__links a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.contact__meta{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;justify-content:space-between;gap:var(--sp-3) var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--c-line);color:var(--c-fg-muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;font-weight:400;line-height:1.4;display:flex}.clock{color:var(--c-fg)}.clock__colon{animation:2s step-end infinite clock-blink}@keyframes clock-blink{0%,to{opacity:1}50%{opacity:0}}.case-link{--roll:1.5em;isolation:isolate;border:1px solid var(--c-accent-current-fg);color:var(--c-fg);place-self:flex-start start;display:inline-flex;position:relative}.case-link__face{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;align-items:center;gap:var(--sp-6);padding:var(--sp-4) var(--sp-5);letter-spacing:.08em;font-weight:400;line-height:1.4;display:flex}.case-link__face--fill{padding:calc(var(--sp-4) + 1px) calc(var(--sp-5) + 1px);background:var(--c-accent-current);color:var(--c-accent-current-ink);clip-path:circle(0%);pointer-events:none;position:absolute;inset:-1px}.case-link__label{height:var(--roll);line-height:var(--roll);display:inline-flex;overflow:hidden}.case-link__char{text-shadow:0 var(--roll) currentColor;transition:transform .28s var(--ease-soft-css);display:inline-block}.case-link.is-active .case-link__char{transform:translateY(calc(var(--roll) * -1));transition:transform .6s var(--ease-out-css) calc(var(--i) * 18ms)}.case-link__arrow{width:.875rem;height:.875rem;color:var(--c-accent-current-fg);flex:none;position:relative;overflow:hidden}.case-link__arrow svg{fill:none;stroke:currentColor;stroke-width:1.5px;vector-effect:non-scaling-stroke;width:100%;height:100%;transition:transform .28s var(--ease-soft-css);position:absolute;inset:0}.case-link__arrow svg+svg{transform:translate(-110%,110%)}.case-link__face--fill .case-link__arrow{color:currentColor}.case-link.is-active .case-link__arrow svg:first-child{transition:transform .55s var(--ease-out-css) 60ms;transform:translate(110%,-110%)}.case-link.is-active .case-link__arrow svg+svg{transition:transform .55s var(--ease-out-css) .14s;transform:translate(0)}.case-link--internal .case-link__arrow svg+svg{transform:translateY(-110%)}.case-link--internal.is-active .case-link__arrow svg:first-child{transform:translateY(110%)}.case-link:focus-visible{outline-offset:4px}@media (prefers-reduced-motion:reduce){.case-link__char,.case-link__arrow svg{transition:none}}.case-next{width:var(--fig-max-w);height:var(--fig-max-h);padding:clamp(var(--sp-5), 2.6vw, var(--sp-7));background:var(--c-accent-current);color:var(--c-accent-current-ink);scroll-snap-align:start;flex-direction:column;flex:none;justify-content:space-between;display:flex;position:relative;overflow:hidden}@media (width<=768.98px){.case-next{align-self:stretch;height:auto;min-height:12rem}}.case-next__top,.case-next__bottom{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;justify-content:space-between;align-items:baseline;gap:var(--sp-4);font-weight:400;line-height:1.4;display:flex}.case-next__index{font-variant-numeric:tabular-nums}.case-next__title{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;text-transform:uppercase;max-width:12ch;font-size:clamp(2.5rem,6.2vw,8rem);font-weight:600;line-height:.86}.case-next__arrow{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;font-weight:600;line-height:.86;font-size:var(--fs-l);line-height:1}.loader{z-index:250;padding:var(--sp-5) var(--page-margin) var(--sp-6);background:var(--c-bg);color:var(--c-fg);grid-template-rows:auto 1fr;animation:0s linear 12s forwards loader-failsafe;display:none;position:fixed;inset:0}.is-loading .loader{display:grid}.loader__top{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;justify-content:space-between;gap:var(--sp-4);font-weight:400;line-height:1.4;display:flex}.loader__status{color:var(--c-fg-muted)}.loader__bottom{align-self:end;gap:var(--sp-4);display:grid}.loader__mask{overflow:hidden}.loader__mask>*{display:block}.loader__count{font-family:var(--f-mono);font-variant-numeric:tabular-nums;letter-spacing:-.06em;align-items:flex-start;font-size:clamp(5rem,17vw,16rem);font-weight:200;line-height:.92;display:flex}.loader__pct{letter-spacing:0;color:var(--c-fg-muted);margin:.32em 0 0 .12em;font-size:.22em}.loader__caption{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;color:var(--c-fg-muted);font-weight:400;line-height:1.4}.loader__rule{background:var(--c-line);height:1px;display:block;position:relative;overflow:hidden}.loader__rule-bar{background:var(--c-fg);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.is-loading{overflow:hidden}@keyframes loader-failsafe{to{visibility:hidden}}.client{gap:var(--sp-5);width:min(var(--fig-max-w), 22rem);scroll-snap-align:start;flex-direction:column;flex:none;display:flex}.client:focus{outline:none}.client .client__media{width:100%;height:auto}@media (width>=769px){.client{align-items:stretch;gap:var(--grid-gutter);flex-direction:row;width:auto}.client .client__media{width:auto;height:min(var(--fig-max-h), var(--fig-max-w) / var(--ratio))}}.client__panel{gap:var(--sp-5);flex-direction:column;width:100%;display:flex}@media (width>=769px){.client__panel{width:clamp(15rem,20vw,21rem);padding-block:var(--sp-2);border-top:1px solid var(--c-line);justify-content:flex-end}}.client__eyebrow{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;color:var(--c-fg-muted);justify-content:space-between;font-weight:400;line-height:1.4;display:flex}@media (width>=769px){.client__eyebrow{padding-top:var(--sp-3);margin-bottom:auto}}.client__name{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;font-weight:600;line-height:.86;font-size:var(--fs-l);text-transform:uppercase}.client__metrics{gap:var(--sp-5);display:grid}.client__metric{gap:var(--sp-2);padding-top:var(--sp-3);border-top:1px solid var(--c-line);display:grid}.client__metric dt{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;color:var(--c-fg-muted);font-weight:400;line-height:1.4}.client__metric dd{font-family:var(--f-display);letter-spacing:-.035em;font-kerning:normal;font-weight:600;line-height:.86;font-size:var(--fs-l);font-variant-numeric:tabular-nums;color:var(--c-accent-current-fg);line-height:1}.client__bar{background:var(--c-line);height:1px;display:block;position:relative;overflow:hidden}.client__bar>span{background:var(--c-accent-current-fg);transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}.client__pending{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;gap:var(--sp-1);color:var(--c-fg-muted);font-weight:400;line-height:1.4;display:grid}.client__pending span{color:var(--c-fg)}.consent{right:var(--page-margin);bottom:calc(var(--sp-4) + env(safe-area-inset-bottom,0px));left:var(--page-margin);z-index:150;align-items:center;gap:var(--sp-3) var(--sp-5);padding:var(--sp-4) var(--sp-4) var(--sp-4) var(--sp-5);border:1px solid var(--c-line);background:var(--c-surface);color:var(--c-fg);grid-template-columns:1fr auto;display:grid;position:fixed}@media (width>=640px){.consent{width:min(100% - 2 * var(--page-margin), 40rem);grid-template-columns:auto 1fr auto;right:auto}}.consent__label{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;color:var(--c-fg-muted);grid-column:1/-1;font-weight:400;line-height:1.4}@media (width>=640px){.consent__label{padding-right:var(--sp-5);border-right:1px solid var(--c-line);grid-column:auto}}.consent__text{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;text-transform:none;letter-spacing:.02em;font-weight:400;line-height:1.5}.consent__accept{font-family:var(--f-mono);font-size:var(--fs-mono-s);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;isolation:isolate;padding:var(--sp-2) var(--sp-4);border:1px solid var(--c-fg);color:var(--c-fg);transition:color .45s var(--ease-out-css);font-weight:400;line-height:1.4;position:relative;overflow:hidden}.consent__accept:before{content:"";z-index:-1;background:var(--c-fg);transform-origin:bottom;transition:transform .45s var(--ease-out-css);position:absolute;inset:0;transform:scaleY(0)}@media (hover:hover) and (pointer:fine){.consent__accept:hover{color:var(--c-bg)}.consent__accept:hover:before{transform:scaleY(1)}}.consent__accept:focus-visible{color:var(--c-bg)}.consent__accept:focus-visible:before{transform:scaleY(1)}@media (prefers-reduced-motion:reduce){.consent__accept,.consent__accept:before{transition:none}}.visually-hidden{clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{font-family:var(--f-mono);font-size:var(--fs-mono);letter-spacing:.04em;text-transform:uppercase;font-feature-settings:"zero" 1;top:var(--sp-3);left:var(--sp-3);z-index:400;padding:var(--sp-3) var(--sp-4);background:var(--c-accent-current);color:var(--c-accent-current-ink);transform:translateY(calc(-100% - var(--sp-4)));font-weight:400;line-height:1.4;position:fixed}.skip-link:focus-visible{transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.u-nowrap{white-space:nowrap}.js .u-no-js-only,.no-js .u-js-only{display:none!important}
