@font-face{font-family: 'Bitcount Prop Single';font-style: normal;font-weight: 100 900;font-display: swap;src: url(/fonts/bitcount.woff2) format('woff2');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: 'Source Serif 4';font-style: normal;font-weight: 200 900;font-display: swap;src: url(/fonts/source-serif.woff2) format('woff2')}@font-face{font-family: 'Source Serif 4';font-style: italic;font-weight: 200 900;font-display: swap;src: url(/fonts/source-serif-italic.woff2) format('woff2')}@font-face{font-family: 'Space Grotesk';font-style: normal;font-weight: 300 700;font-display: swap;src: url(/fonts/space-grotesk.woff2) format('woff2')}:root{--blue: #4500f4;--blue-soft: #5a1fff;--paper: #fbf9f8;--ink: #141314;--grey: #444;--mute: #625d66;--line: rgba(20, 19, 20, 0.16);--orange: #ff5a1f;--bg: var(--paper);--fg: var(--ink);--accent: var(--blue);--veil: var(--blue);--veil-fg: #fff;--panel: var(--ink);--panel-fg: var(--paper);--btn-bg: var(--blue);--btn-fg: #fff;--ring: var(--blue);--hero-bg: var(--bg);--hero-fg: var(--fg);--hero-hl: var(--blue);--f-serif: 'Source Serif 4', 'Kepler Std', Georgia, 'Times New Roman', serif;--f-sans: 'Space Grotesk', system-ui, -apple-system, 'Segoe UI', sans-serif;--f-pixel: 'Bitcount Prop Single', 'Space Grotesk', system-ui, sans-serif;--f-head: var(--f-serif);--w-head: 300;--ls-head: -0.03em;--f-body: var(--f-sans);--f-small: var(--f-sans);--f-ascii: ui-monospace, 'SF Mono', Menlo, Consolas, 'Liberation Mono', monospace;--pad: clamp(16px, 3.2vw, 44px);--maxw: 1600px;--header-h: 68px;--ease: cubic-bezier(0.2, 0.8, 0.2, 1);--slant: clamp(28px, 4.5vw, 72px)}*, *::before, *::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;scroll-behavior: smooth;scroll-padding-top: calc(var(--header-h) + 16px)}body{display: flex;flex-direction: column;margin: 0;min-height: 100vh;background: var(--bg);color: var(--fg);font-family: var(--f-body);font-size: 1.0625rem;line-height: 1.55;font-weight: 400;-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility;transition: background-color 0.5s var(--ease), color 0.5s var(--ease);overflow-x: hidden}body::after{content: '';position: fixed;inset: 0;z-index: 100;pointer-events: none;opacity: 0.03;background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}img, video, picture{display: block;max-width: 100%;height: auto}a{color: inherit;text-decoration: none}ul, ol{list-style: none;margin: 0;padding: 0}h1, h2, h3, p, figure, dl, dd{margin: 0}button{font: inherit;color: inherit;background: none;border: 0;padding: 0;cursor: pointer}::selection{background: var(--blue);color: #fff}:focus-visible{outline: 3px solid var(--blue);outline-offset: 3px;border-radius: 2px}.skip{position: fixed;left: 12px;top: -60px;z-index: 200;background: var(--blue);color: #fff;padding: 10px 16px;font-family: var(--f-small);font-weight: 500;transition: top 0.2s}.skip:focus{top: 12px}.mono{font-family: var(--f-small);font-weight: 500;font-size: 0.8rem;letter-spacing: 0.07em;text-transform: uppercase}.eyebrow{font-family: var(--f-small);font-weight: 500;font-size: 0.82rem;letter-spacing: 0.09em;text-transform: uppercase;color: var(--grey);margin-bottom: 1.2rem}.eyebrow--light{color: rgba(255, 255, 255, 0.6)}.back:hover{color: var(--blue)}.js [data-reveal]{opacity: 0;transform: translateY(28px);transition: opacity 0.8s var(--ease), transform 0.8s var(--ease);transition-delay: calc(var(--i, 0) * 90ms)}.js [data-reveal].is-in{opacity: 1;transform: none}@media (prefers-reduced-motion: reduce){html{scroll-behavior: auto}*, *::before, *::after{animation-duration: 0.001ms !important;animation-iteration-count: 1 !important;transition-duration: 0.001ms !important}.js [data-reveal]{opacity: 1;transform: none}html:not(.js) .marquee{overflow-x: auto}.marquee__track{animation: none !important}}@view-transition{navigation: auto}main{flex: 1 0 auto;width: 100%}.footer, .cta{flex: none}.site-header{position: fixed;inset: 0 0 auto 0;z-index: 60;height: var(--header-h);display: flex;align-items: center;gap: 18px;padding: 0 var(--pad)}.site-header::before{content: '';position: absolute;inset: 0;z-index: -1;background: color-mix(in srgb, var(--bg) 82%, transparent);backdrop-filter: blur(12px);-webkit-backdrop-filter: blur(12px);border-bottom: 1px solid var(--line);transition: background-color 0.5s var(--ease)}.logo{display: inline-flex;align-items: center;gap: 10px;font-family: var(--f-pixel);font-weight: 380;font-size: 1.4rem;letter-spacing: 0;margin-right: auto;white-space: nowrap;z-index: 2}.logo__dot{width: 14px;height: 14px;border-radius: 50%;background: var(--blue);position: relative;top: -1px;transition: transform 0.4s var(--ease)}.logo:hover .logo__dot{transform: scale(1.5)}.nav ul{display: flex;gap: clamp(14px, 2.4vw, 34px)}.nav a{font-family: var(--f-small);font-weight: 500;font-size: 0.86rem;letter-spacing: 0.09em;text-transform: uppercase;position: relative;padding: 6px 0}.nav a::after{content: '';position: absolute;left: 0;right: 0;bottom: 0;height: 2px;background: var(--blue);transform: scaleX(0);transform-origin: left;transition: transform 0.35s var(--ease)}.nav a:hover::after, .nav a[aria-current='page']::after{transform: scaleX(1)}.burger{display: none;width: 44px;height: 44px;z-index: 2;position: relative;margin-right: -8px}.burger__icon{width: 100%;height: 100%;overflow: visible}.burger__icon .ln{fill: none;stroke-width: 2.6;stroke-linecap: round;transform-box: fill-box;transform-origin: center;transition: transform 0.5s var(--ease), stroke 0.3s, stroke-dasharray 0.4s var(--ease)}.burger__icon .ln--a{stroke: var(--blue)}.burger__icon .ln--b{stroke: var(--ink);stroke-dasharray: 13 40}.burger:hover .ln--b{stroke-dasharray: 22 40}.burger[aria-expanded='true'] .ln--a{transform: translateY(5px) rotate(45deg);stroke: #fff}.burger[aria-expanded='true'] .ln--b{transform: translateY(-5px) rotate(-45deg);stroke: #fff;stroke-dasharray: 22 40}@media (max-width: 820px){.burger{display: block}.logo__text{font-size: 1rem}.nav{position: fixed;inset: 0;z-index: 1;background: var(--blue);color: #fff;display: flex;align-items: center;padding: calc(var(--header-h) + 20px) var(--pad) 40px;visibility: hidden;clip-path: circle(0% at calc(100% - 34px) 34px);transition: clip-path 0.7s var(--ease), visibility 0s 0.7s}.nav ul{flex-direction: column;gap: 4px;width: 100%}.nav a{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(2.8rem, 13vw, 5rem);text-transform: none;letter-spacing: var(--ls-head);line-height: 1.05;display: block;padding: 6px 0}.nav a::after{display: none}.nav a[aria-current='page']{font-style: italic}.nav-open .nav{visibility: visible;clip-path: circle(150% at calc(100% - 34px) 34px);transition: clip-path 0.7s var(--ease), visibility 0s}.nav-open{overflow: hidden}.nav-open .logo{color: #fff}.nav-open .logo__dot{background: #fff}.nav-open .site-header::before{background: transparent;border-color: transparent;backdrop-filter: none}}.btn{display: inline-flex;align-items: center;gap: 0.6em;font-family: var(--f-small);font-weight: 500;font-size: 0.88rem;letter-spacing: 0.09em;text-transform: uppercase;padding: 1.05em 1.7em;border-radius: 999px;border: 2px solid var(--fg);transition: background-color 0.3s, color 0.3s, transform 0.3s var(--ease), box-shadow 0.3s;will-change: transform}.btn span{display: inline-block;transition: transform 0.3s var(--ease)}.btn:hover span{transform: translateX(5px)}.btn--solid{background: var(--btn-bg);border-color: var(--btn-bg);color: var(--btn-fg)}.btn--solid:hover{background: var(--fg);border-color: var(--fg);color: var(--bg)}.btn--ghost{color: inherit;border-color: currentColor}.btn--ghost:hover{background: var(--blue);border-color: var(--blue);color: #fff}.link-arrow{font-family: var(--f-small);font-weight: 500;font-size: 0.82rem;text-transform: uppercase;letter-spacing: 0.09em;border-bottom: 2px solid var(--blue);padding-bottom: 2px}.link-arrow span{display: inline-block;transition: transform 0.3s var(--ease)}.link-arrow:hover span{transform: translateX(5px)}.cursor{position: fixed;left: 0;top: 0;z-index: 9999;pointer-events: none;display: none}.has-cursor .cursor{display: block}.has-cursor, .has-cursor *{cursor: none !important}.has-cursor input, .has-cursor textarea{cursor: text !important}.cursor__dot, .cursor__glove{position: fixed;left: 0;top: 0;will-change: transform}.cursor__dot{width: 12px;height: 12px;margin: -6px 0 0 -6px;border-radius: 50%;background: var(--ring);transition: background-color 0.25s, opacity 0.15s}.cursor__glove{width: 60px;margin: -3px 0 0 -22px;opacity: 0;transition: opacity 0.15s}.cursor__glove svg{display: block;width: 60px;height: auto;overflow: visible;filter: drop-shadow(0 2px 2px rgba(20, 19, 20, 0.25));transform-origin: 22px 3px;transform: scale(0.35) rotate(-20deg);transition: transform 0.35s cubic-bezier(0.3, 1.7, 0.5, 1)}.cursor.is-link .cursor__dot{opacity: 0}.cursor.is-link .cursor__glove{opacity: 1}.cursor.is-link .cursor__glove svg{transform: rotate(calc(var(--tilt, 0deg) * 0.6 - 8deg))}.cursor.is-link.is-down .cursor__glove svg{transform: scale(0.86) rotate(4deg);transition-duration: 0.12s}.cursor.on-blue .cursor__dot{background: #fff}.cursor.is-text .cursor__dot, .cursor.is-text .cursor__glove{opacity: 0}.cursor.is-hidden .cursor__dot, .cursor.is-hidden .cursor__glove{opacity: 0}.tile{position: relative;display: block;overflow: hidden;background: #e9e5e6}.tile__media{display: block;position: relative;aspect-ratio: 1;overflow: hidden}.tile__media img, .tile__video{width: 100%;height: 100%;object-fit: cover;transition: transform 0.9s var(--ease)}.tile__video{position: absolute;inset: 0;opacity: 0;transition: opacity 0.4s}.tile.is-playing .tile__video, .tile__video--live{opacity: 1}.tile__veil{position: absolute;inset: 0;z-index: 2;display: flex;flex-direction: column;justify-content: space-between;padding: clamp(14px, 2vw, 26px);background: var(--veil);color: var(--veil-fg);clip-path: inset(100% 0 0 0);transition: clip-path 0.55s var(--ease)}.tile__name{font-family: var(--f-pixel);font-weight: 340;font-size: clamp(1.7rem, 3.4vw, 3.3rem);line-height: 1;letter-spacing: 0;margin-top: auto;text-wrap: balance}.tile__meta{font-family: var(--f-small);font-weight: 500;font-size: 0.74rem;text-transform: uppercase;letter-spacing: 0.09em;opacity: 0.75;order: -1}.tile__arrow{position: absolute;right: clamp(14px, 2vw, 26px);top: clamp(10px, 1.6vw, 20px);font-size: 1.6rem;transform: translate(-8px, 8px);transition: transform 0.5s var(--ease) 0.1s}.tile__cap{display: none;align-items: center;gap: 14px;min-height: 52px;padding: 14px 18px;font-family: var(--f-small);font-weight: 500;font-size: 0.8rem;text-transform: uppercase;letter-spacing: 0.08em}.tile__n{color: var(--mute);font-family: var(--f-pixel);font-weight: 350;font-size: 0.95rem;letter-spacing: 0.02em;line-height: 1;flex: none}@media (hover: hover){.tile:hover .tile__veil, .tile:focus-visible .tile__veil{clip-path: inset(0)}.tile:hover .tile__arrow{transform: none}.tile:hover .tile__media img{transform: scale(1.06)}}@media (hover: none){.tile{overflow: visible;background: none}.tile__media{background: #e9e5e6}.tile__veil{display: none}.tile__cap{display: flex}}.marquee{display: flex;overflow: hidden;user-select: none;-webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent)}.marquee__track{display: flex;flex-shrink: 0;align-items: center;min-width: 100%;animation: marquee 60s linear infinite;will-change: transform}.js .marquee__track{animation: none}.marquee{touch-action: pan-y;cursor: grab}.marquee.is-dragging{cursor: grabbing}html:not(.js) .marquee:hover .marquee__track{animation-play-state: paused}.marquee__track li{display: flex;align-items: center;flex: none;padding: clamp(22px, 3vw, 38px) clamp(28px, 4.2vw, 64px)}.marquee__track img{width: auto;max-width: none;opacity: 0.88;transition: opacity 0.3s;pointer-events: none;-webkit-user-drag: none;user-select: none}.marquee__track li:hover img{opacity: 1}@keyframes marquee{to{transform: translateX(-100%)}}.cta{position: relative;margin-top: clamp(60px, 9vw, 140px);background: var(--panel);color: var(--panel-fg);padding: clamp(70px, 9vw, 130px) var(--pad) clamp(50px, 7vw, 100px);transition: background-color 0.5s var(--ease)}.cta__inner{max-width: var(--maxw);margin: 0 auto}.cta__title{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(2.6rem, 7.6vw, 7.8rem);line-height: 1;letter-spacing: var(--ls-head);max-width: 13em;text-wrap: balance}.cta__body{font-family: var(--f-small);font-weight: 500;font-size: 0.82rem;text-transform: uppercase;letter-spacing: 0.09em;margin-top: 1.6rem;color: rgba(255, 255, 255, 0.6);max-width: 64ch}.cta__buttons{display: flex;flex-wrap: wrap;gap: 12px;margin-top: 2.4rem}.cta .btn--solid{background: #fff;border-color: #fff;color: var(--ink)}.cta .btn--solid:hover{background: var(--blue);border-color: var(--blue);color: #fff}.cta .btn--ghost:hover{background: var(--blue);border-color: var(--blue);color: #fff}.footer{background: var(--panel);color: var(--panel-fg);padding: 0 var(--pad) clamp(36px, 5vw, 60px);overflow: hidden;transition: background-color 0.5s var(--ease)}.footer__top{max-width: var(--maxw);margin: 0 auto;display: grid;grid-template-columns: 1fr;gap: 22px;padding: 32px 0 0;border-top: 1px solid rgba(255, 255, 255, 0.18)}.cta + .footer .footer__top{padding-top: 28px}.footer__top nav ul{display: flex;flex-wrap: wrap;gap: 8px clamp(18px, 2.4vw, 34px)}.footer__top nav a{position: relative;display: inline-block;font-family: var(--f-small);font-weight: 500;font-size: 0.86rem;letter-spacing: 0.09em;text-transform: uppercase;padding: 6px 0;color: rgba(255, 255, 255, 0.92)}.footer__top nav a::after{content: '';position: absolute;left: 0;right: 0;bottom: 0;height: 2px;background: #7d5cff;transform: scaleX(0);transform-origin: left;transition: transform 0.35s var(--ease)}.footer__top nav a:hover::after, .footer__top nav a[aria-current='page']::after{transform: scaleX(1)}.footer__cta{justify-self: start}.footer__copy{max-width: var(--maxw);margin: clamp(28px, 4vw, 48px) auto 0;font-family: var(--f-pixel);font-weight: 380;font-size: 1rem;letter-spacing: 0.04em;text-transform: none;color: rgba(255, 255, 255, 0.5)}.copy-email{text-align: left;display: inline-flex;font-family: var(--f-small);font-weight: 500;font-size: 1rem;width: max-content;max-width: 100%}.copy-email:hover .copy-email__text{color: #a893ff}@media (min-width: 900px){.footer__top{grid-template-columns: 1fr auto;align-items: center}}.pop{position: absolute;z-index: 80;width: max-content;max-width: min(320px, calc(100vw - 24px));background: var(--ink);color: #fff;padding: 16px 18px 18px;border-radius: 14px;box-shadow: 0 18px 50px rgba(20, 19, 20, 0.28);font-size: 1rem;line-height: 1.42;opacity: 0;transform: translateY(6px) scale(0.97);transform-origin: var(--caret, 50%) 0;transition: opacity 0.2s var(--ease), transform 0.25s var(--ease)}.pop.is-open{opacity: 1;transform: none}.pop.is-above{transform-origin: var(--caret, 50%) 100%}.pop::before{content: '';position: absolute;top: -6px;left: var(--caret, 50%);width: 12px;height: 12px;margin-left: -6px;background: var(--ink);transform: rotate(45deg);border-radius: 2px}.pop.is-above::before{top: auto;bottom: -6px}.pop__title{font-family: var(--f-small);font-weight: 600;font-size: 0.74rem;letter-spacing: 0.1em;text-transform: uppercase;color: #a893ff;margin-bottom: 6px}.pop__text{margin: 0}.pop__action{display: inline-block;margin-top: 10px;color: #fff;font-weight: 600;font-size: 1.02rem;border-bottom: 2px solid #7d5cff;padding-bottom: 1px;word-break: break-all;transition: color 0.25s, border-color 0.25s}.pop__action:hover{color: #a893ff;border-color: #fff}.ticker__win{display: block;overflow: hidden;white-space: nowrap;-webkit-mask-image: linear-gradient(90deg, #000 0, #000 94%, transparent);mask-image: linear-gradient(90deg, #000 0, #000 94%, transparent);transition: opacity 0.25s}.ticker__win.is-reset{opacity: 0}.ticker__track{display: inline-flex;will-change: transform}.ticker__lead, .ticker__grp, .ticker__item{white-space: nowrap}.ticker__grp{display: inline-flex}html:not(.js) .ticker__grp{display: none}.ticker__item::after{content: '•';margin: 0 1.6em;opacity: 0.6}.footer__copy[data-ticker]{cursor: default}.page-hero{padding: calc(var(--header-h) + clamp(56px, 9vw, 130px)) var(--pad) clamp(40px, 5vw, 72px);max-width: var(--maxw);margin: 0 auto}.page-title{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(3.1rem, 9.9vw, 10.6rem);line-height: 1;letter-spacing: var(--ls-head);text-wrap: balance;max-width: 14em}.page-sub{margin-top: 1.6rem;font-size: clamp(1.1rem, 1.6vw, 1.4rem);color: var(--grey);max-width: 40ch}.sticker{position: absolute;display: inline-block;font-family: var(--f-small);font-weight: 500;font-size: 0.75rem;text-transform: uppercase;letter-spacing: 0.05em;padding: 0.5em 0.9em;border: 1.5px solid var(--fg);border-radius: 999px;background: var(--bg);transform: rotate(-7deg);pointer-events: none}.hero{--hero-pb: clamp(36px, 5vw, 72px);--peek: 210px;position: relative;padding: var(--header-h) var(--pad) var(--hero-pb);background: var(--hero-bg);color: var(--hero-fg);overflow: hidden;transition: background-color 0.5s var(--ease), color 0.5s var(--ease)}.hero__bg{position: absolute;inset: 0;pointer-events: none}.hero__inner{position: relative;max-width: var(--maxw);margin: 0 auto;min-height: calc(100svh - var(--header-h) - var(--peek) - var(--hero-pb));display: flex;flex-direction: column;justify-content: center;padding: clamp(56px, 11vh, 130px) 0 clamp(72px, 13vh, 160px)}.hero__title{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(3.3rem, 11.6vw, 14.8rem);line-height: 0.96;letter-spacing: var(--ls-head);max-width: 12em;text-wrap: balance}.hero__sub{margin-top: clamp(28px, 4vh, 52px);font-size: clamp(1.15rem, 1.7vw, 1.55rem);line-height: 1.4;max-width: 80ch;color: var(--grey);font-weight: 500}.badge{position: absolute;right: 0;top: clamp(24px, 7vh, 80px);width: clamp(84px, 9vw, 132px);aspect-ratio: 1;display: grid;place-items: center;color: var(--fg)}.badge svg{position: absolute;inset: 0;width: 100%;height: 100%;animation: spin 22s linear infinite;overflow: visible}.badge text{font-family: var(--f-small);font-weight: 600;font-size: 12px;letter-spacing: 0.06em;fill: currentColor}.badge__dot{width: 34%;aspect-ratio: 1;border-radius: 50%;background: var(--blue);transition: transform 0.4s var(--ease)}.badge:hover .badge__dot{transform: scale(1.3)}@keyframes spin{to{transform: rotate(360deg)}}.featured{position: relative;max-width: var(--maxw);margin: 0 auto}.featured__head{display: flex;justify-content: space-between;align-items: baseline;margin-bottom: 18px}.featured__head .eyebrow{margin: 0}.featured__list{display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: clamp(10px, 1.4vw, 20px)}.featured .tile__media{aspect-ratio: 3 / 2}.featured .tile__cap{display: flex;background: #e9e5e6}@media (max-width: 700px){.hero__title{font-size: 13.8vw}.hero{--peek: 70px;--hero-pb: 28px}.hero__inner{padding: 17svh 0 19svh}.hero__sub{margin-top: 30px;max-width: 24em;text-wrap: balance}.badge{top: 8svh}}@media (max-width: 820px){.featured__list{display: flex;overflow-x: auto;scroll-snap-type: x mandatory;gap: 12px;margin-inline: calc(var(--pad) * -1);padding-inline: var(--pad);scrollbar-width: none;padding-bottom: 6px;scroll-padding-inline: var(--pad)}.featured__list::-webkit-scrollbar{display: none}.featured__list li{flex: 0 0 78%;scroll-snap-align: start}.badge{width: 68px;top: 18px}.hero__sub{margin-top: clamp(22px, 2.6vw, 38px);font-size: clamp(1.1rem, 1.6vw, 1.45rem);line-height: 1.4;max-width: 80ch;color: var(--grey);font-weight: 500}}.clients{padding: clamp(24px, 4vw, 64px) 0 0}.clients__label{padding: 0 var(--pad);max-width: var(--maxw);margin-inline: auto}.clients .marquee{margin-top: 10px}.work{padding: 0 var(--pad);max-width: var(--maxw);margin: 0 auto}.grid{display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: clamp(10px, 1.4vw, 20px)}@media (max-width: 900px){.grid{grid-template-columns: repeat(2, minmax(0, 1fr))}}@media (max-width: 420px){.grid{gap: 10px}.grid .tile__cap{font-size: 0.68rem;flex-direction: column;align-items: flex-start;justify-content: center;gap: 4px;padding: 12px 14px;min-height: 0}}@media (hover: none){.grid .tile__cap{display: flex}}.p-hero{padding: calc(var(--header-h) + clamp(32px, 5vw, 70px)) var(--pad) clamp(24px, 3vw, 44px);max-width: var(--maxw);margin: 0 auto}.p-title{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(3.1rem, 9.4vw, 9.9rem);line-height: 1;letter-spacing: var(--ls-head);text-wrap: balance;max-width: 14ch}.p-meta{display: grid;grid-template-columns: repeat(auto-fit, minmax(135px, 1fr));gap: 18px 24px;margin-top: clamp(24px, 3vw, 44px);padding-top: 16px;border-top: 2px solid var(--fg)}.p-meta dt{color: var(--mute);margin-bottom: 4px}.p-meta dd{font-size: 1rem;line-height: 1.35}.p-cover{max-width: var(--maxw);margin: 0 auto;padding: 0 var(--pad)}.p-cover img, .p-cover video{width: 100%}.vid{width: 100%;background: #111}.case{max-width: 1240px;margin: 0 auto;padding: clamp(40px, 6vw, 96px) var(--pad) 0}.case__intro{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(1.4rem, 2.8vw, 2.5rem);line-height: 1.18;letter-spacing: -0.02em;max-width: 26em;margin-bottom: clamp(28px, 5vw, 70px);text-wrap: pretty}.case__row{display: grid;grid-template-columns: 1fr;gap: 12px 40px;padding: clamp(22px, 3vw, 40px) 0;border-top: 1px solid var(--line)}.case__label{font-family: var(--f-sans);font-weight: 700;font-size: clamp(1.15rem, 1.7vw, 1.5rem);letter-spacing: -0.01em}.case__label .mono{display: block;color: var(--blue);margin-bottom: 6px;font-family: var(--f-pixel);font-weight: 350;font-size: 1rem;letter-spacing: 0.02em;text-transform: none}.case__text{font-size: clamp(1.1rem, 1.6vw, 1.45rem);line-height: 1.5;max-width: 40em}.case__text p + p{margin-top: 1em}@media (min-width: 900px){.case__row{grid-template-columns: 4fr 8fr}}.gallery{display: grid;grid-template-columns: repeat(12, minmax(0, 1fr));gap: clamp(10px, 1.4vw, 20px);max-width: var(--maxw);margin: clamp(48px, 7vw, 100px) auto 0;padding: 0 var(--pad);align-items: start}.g{grid-column: span 12}.g > picture, .g > video{display: block}.g__cap{padding: 14px 2px 0;max-width: 46em;font-size: 0.98rem;line-height: 1.45;color: var(--grey)}.g img, .g video{width: 100%}.g-note{grid-column: 1 / -1;margin: -2px 0 0;text-align: left;font-size: 0.98rem;line-height: 1.45;color: var(--grey)}.g-rule{grid-column: 1 / -1;border: 0;height: 1px;background: var(--line);margin: clamp(28px, 4vw, 64px) 0}.g-cols{grid-column: 1 / -1;display: grid;grid-template-columns: minmax(0, 1fr);gap: clamp(10px, 1.4vw, 20px)}.g-cols__col{display: flex;flex-direction: column;gap: clamp(10px, 1.4vw, 20px);min-width: 0}.g-cols__col > .g{grid-column: auto;display: flex;flex-direction: column;flex: 1 1 auto}.g-cols__col > .g > picture{display: block;flex: 1;min-height: 0}.g-cols__col > .g picture img{width: 100%;height: 100%;object-fit: cover;object-position: top}@media (min-width: 700px){.g-cols{grid-template-columns: minmax(0, var(--c1)) minmax(0, var(--c2));align-items: stretch}}.g-split{grid-column: 1 / -1;display: grid;grid-template-columns: minmax(0, 1fr);gap: clamp(10px, 1.4vw, 20px)}.g-split > .g, .g-split__stack > .g{grid-column: auto}.g-split__stack{display: grid;gap: clamp(10px, 1.4vw, 20px);align-content: start}@media (min-width: 700px){.g-split{grid-template-columns: repeat(2, minmax(0, 1fr));align-items: stretch}.g-split > .g{display: flex;flex-direction: column}.g-split > .g > picture{display: block;flex: 1;min-height: 0}.g-split > .g picture img{width: 100%;height: 100%;object-fit: cover;object-position: top}}.g-block{grid-column: 1 / -1;display: grid;grid-template-columns: minmax(0, 1fr);gap: 0}.g-block .g{grid-column: auto}@media (min-width: 560px){.g-block{grid-template-columns: repeat(2, minmax(0, 1fr))}}.g-row{grid-column: 1 / -1;display: flex;flex-direction: column;gap: clamp(10px, 1.4vw, 20px)}.g-row .g{min-width: 0}@media (min-width: 700px){.g-row{flex-direction: row}}@media (min-width: 900px){.g--half{grid-column: span 6}.g--third{grid-column: span 4}.g--center{grid-column: 4 / span 6}.g--feature{grid-column: 2 / span 10}}@media (min-width: 560px) and (max-width: 899px){.g--third{grid-column: span 6}}.pager{display: grid;grid-template-columns: 1fr 1fr;margin-top: clamp(48px, 9vw, 140px);border-top: 1px solid var(--line)}.pager__link{position: relative;display: flex;flex-direction: column;justify-content: space-between;gap: 10px;min-height: 0;padding: 18px var(--pad);transition: background-color 0.4s var(--ease), color 0.4s var(--ease);overflow: hidden}.pager__link--prev{border-right: 1px solid var(--line)}.pager__link--next{text-align: right;align-items: flex-end}.pager__label{color: var(--mute);transition: color 0.3s;font-size: 0.72rem}.pager__name{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(1.15rem, 5vw, 1.5rem);line-height: 1.1;letter-spacing: -0.01em;text-wrap: balance;transition: transform 0.6s var(--ease)}.pager__client, .pager__inline{display: none}@media (min-width: 900px){.pager{border-top: 2px solid var(--fg)}.pager__link{gap: 40px;min-height: clamp(220px, 34vw, 440px);padding: clamp(18px, 3vw, 44px) var(--pad)}.pager__link--prev{border-right: 2px solid var(--fg)}.pager__label{font-size: 0.8rem}.pager__name{font-size: clamp(2.2rem, 6.4vw, 6.4rem);line-height: 0.95;letter-spacing: var(--ls-head)}.pager__client{display: block;color: var(--mute);margin-top: 10px;min-height: 1em;transition: color 0.3s}}@media (hover: hover) and (min-width: 900px){.pager__link:hover{background: var(--blue);color: #fff}.pager__link:hover .pager__label, .pager__link:hover .pager__client{color: rgba(255, 255, 255, 0.72)}.pager__link--next:hover .pager__name{transform: translateX(-14px)}.pager__link--prev:hover .pager__name{transform: translateX(14px)}}@media (hover: none){.pager__link:active{background: var(--blue);color: #fff}.pager__link:active .pager__label{color: rgba(255,255,255,.75)}}.pager-float{position: fixed;left: 0;top: 0;z-index: 70;width: clamp(200px, 20vw, 300px);aspect-ratio: 1;pointer-events: none;opacity: 0;transform: translate(-50%, -50%) scale(0.6) rotate(-6deg);transition: opacity 0.25s, scale 0.25s;overflow: hidden;border: 3px solid #fff;box-shadow: 0 18px 50px rgba(20, 19, 20, 0.35);will-change: transform}.pager-float img{width: 100%;height: 100%;object-fit: cover}.pager-float.is-on{opacity: 1}.portrait__img{aspect-ratio: 1;border-radius: 50%;overflow: hidden;background: var(--blue)}.portrait__img picture, .portrait__img img{display: block;width: 100%;height: 100%}.portrait__img img{object-fit: cover;object-position: 50% 12%}.sticker--hi{left: 2%;bottom: 7%;font-family: var(--f-sans);font-size: 1.35rem;font-weight: 700;text-transform: none;letter-spacing: 0;background: var(--blue);border-color: var(--blue);color: #fff;z-index: 2}@media (hover: hover){.portrait:hover .portrait__img{animation: photo-shake 0.6s var(--ease)}.portrait:hover .sticker--hi{animation: pill-shake 0.7s var(--ease)}}@keyframes photo-shake{0%, 100%{transform: none}18%{transform: rotate(-3deg) translateX(-3px)}36%{transform: rotate(3deg) translateX(3px)}54%{transform: rotate(-2deg) translateX(-2px)}72%{transform: rotate(1.5deg)}}@keyframes pill-shake{0%, 100%{transform: rotate(-7deg)}15%{transform: rotate(-16deg) scale(1.08)}30%{transform: rotate(4deg) scale(1.08)}45%{transform: rotate(-14deg)}60%{transform: rotate(2deg)}80%{transform: rotate(-9deg)}}.lead{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(1.6rem, 3vw, 2.8rem);line-height: 1.2;letter-spacing: -0.02em;margin-bottom: 1.1em;text-wrap: pretty}.about__copy p:not(.lead){font-size: 1.15rem;margin-bottom: 1em;color: var(--grey)}.about__copy .btn{margin-top: 1.2rem}.about__clients-intro{max-width: 34em;margin-bottom: 1.8rem;font-size: 1.1rem}.names{font-size: clamp(1.45rem, 2.2vw, 2.1rem);font-weight: 500;line-height: 1.22;letter-spacing: -0.01em;text-wrap: pretty}.names li{display: inline}.names li:not(:last-child)::after{content: "•";color: var(--blue);margin: 0 0.32em}.name{color: inherit;transition: color 0.2s}.name:hover, .name[aria-expanded='true']{color: var(--blue)}.services li{border-top: 1px solid var(--line)}.services li:last-child{border-bottom: 1px solid var(--line)}.svc-def{display: flex;width: 100%;gap: 18px;align-items: baseline;padding: 14px 0;text-align: left;font-family: var(--f-sans);font-weight: 600;font-size: clamp(1.1rem, 1.8vw, 1.5rem);transition: padding-left 0.35s var(--ease), color 0.25s}.svc-def .mono{color: var(--blue);font-family: var(--f-pixel);font-weight: 350;font-size: 1rem;letter-spacing: 0.02em;text-transform: none}.svc-def__t{flex: 1}.svc-def__plus{font-weight: 400;font-size: 1.3em;line-height: 1;color: var(--mute);transition: transform 0.3s var(--ease), color 0.25s}.svc-def:hover, .svc-def[aria-expanded='true']{padding-left: 14px;color: var(--blue)}.svc-def:hover .svc-def__plus{color: var(--blue)}.svc-def[aria-expanded='true'] .svc-def__plus{transform: rotate(45deg);color: var(--blue)}.contact{display: grid;grid-template-columns: minmax(0, 1fr);gap: clamp(48px, 7vw, 90px);max-width: var(--maxw);margin: 0 auto;padding: 0 var(--pad) clamp(64px, 9vw, 120px);align-items: start}.contact__lead{font-size: clamp(1.5rem, 2.8vw, 2.6rem);line-height: 1.15;letter-spacing: -0.01em;color: var(--grey);margin-bottom: clamp(36px, 5vw, 64px)}.big-email{text-align: left;display: block}.big-email__text{display: block;font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(1.5rem, 3.7vw, 3.7rem);line-height: 1.05;letter-spacing: var(--ls-head);overflow-wrap: anywhere;transition: color 0.3s}.big-email:hover .big-email__text{color: var(--blue)}.big-email__hint{display: block;margin-top: 10px;color: var(--mute)}.contact__alt a{border-bottom: 2px solid var(--blue)}.field{display: block;margin-bottom: 22px}.field .mono{display: block;color: var(--mute);margin-bottom: 4px}.field input, .field textarea{width: 100%;font: inherit;font-size: 1.15rem;color: inherit;background: transparent;border: 0;border-bottom: 2px solid var(--fg);padding: 10px 0;border-radius: 0;resize: vertical;transition: border-color 0.25s}.field input:focus, .field textarea:focus{outline: 0;border-color: var(--blue)}.field input:user-invalid, .field textarea:user-invalid{border-color: var(--orange)}.hp{position: absolute;left: -9999px;width: 1px;height: 1px;overflow: hidden}.form__error{color: #c2260c;font-family: var(--f-small);font-weight: 500;font-size: 0.82rem;margin-bottom: 14px}.thanks{text-align: left}.thanks:focus{outline: 0}.thanks__ascii{font-family: var(--f-ascii);font-size: clamp(8px, 1.5vw, 13px);line-height: 1.05;color: var(--blue);white-space: pre;min-height: 9em;margin-bottom: 10px;overflow: hidden}.thanks__title{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(2.6rem, 6.4vw, 5.6rem);letter-spacing: var(--ls-head);line-height: 1}.thanks__body{font-size: 1.2rem;margin-top: 10px;color: var(--grey)}@media (min-width: 900px){.contact{grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);column-gap: clamp(48px, 7vw, 120px)}}.contact__alt{margin-top: 0.5rem;margin-bottom: clamp(36px, 5vw, 56px)}.contact__alt a{font-size: 1.05rem}.nf{flex: 1;min-height: 0;display: flex;flex-direction: column;align-items: center;justify-content: center;text-align: center;padding: calc(var(--header-h) + 20px) var(--pad) 20px;gap: 18px}.nf__art{margin: 0;font-family: var(--f-ascii);font-size: clamp(9px, 2vw, 18px);line-height: 1;letter-spacing: 0;white-space: pre;color: var(--blue);overflow: hidden;max-width: 100%;user-select: none}.nf__canvas{display: block;max-width: 100%;height: auto;margin: 0 auto}.nf__title{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(2.6rem, 6.4vw, 5.2rem);letter-spacing: var(--ls-head);line-height: 1.05}.nf__body{max-width: 34ch;font-size: 1.15rem;color: var(--grey)}.hero-field{position: absolute;inset: 0;width: 100%;height: 100%;-webkit-mask-image: linear-gradient(to bottom, #000 0, #000 calc(100svh - var(--header-h) - 80px), transparent calc(100% - 60px));mask-image: linear-gradient(to bottom, #000 0, #000 calc(100svh - var(--header-h) - 80px), transparent calc(100% - 60px))}.svc-section{max-width: var(--maxw);margin: clamp(100px, 13vw, 200px) auto 0;padding: 0 var(--pad)}.svc-layout{display: grid;grid-template-columns: 1fr;gap: clamp(36px, 6vw, 110px);align-items: start}.svc-intro{display: grid;gap: 0;align-content: start}.svc-section__statement{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(2rem, 4.4vw, 4.6rem);line-height: 1.04;letter-spacing: var(--ls-head);text-wrap: balance;margin-bottom: clamp(24px, 3vw, 40px)}.svc-list{border-top: 1px solid var(--line)}.svc-row{display: grid;grid-template-columns: auto 1fr;align-items: center;gap: clamp(14px, 1.8vw, 24px);padding: clamp(14px, 1.5vw, 20px) 2px;border-bottom: 1px solid var(--line)}.svc__icon{width: 34px;height: 34px;overflow: visible;flex: none}.svc__icon *{fill: none;stroke-width: 2.6;stroke-linecap: round;stroke-linejoin: round;transition: stroke 0.35s var(--ease)}.svc__icon .b{stroke: var(--blue)}.svc__icon .k{stroke: var(--ink)}.svc-row__body{display: grid;gap: 1px;min-width: 0}.svc-row__title{font-family: var(--f-sans);font-weight: 600;font-size: clamp(1.05rem, 1.4vw, 1.3rem);line-height: 1.2;letter-spacing: -0.005em;transition: color 0.3s}.svc-row__text{font-size: 0.92rem;line-height: 1.35;color: var(--mute)}@media (min-width: 900px){.svc-layout{grid-template-columns: 5fr 7fr}.svc-intro{position: sticky;top: calc(var(--header-h) + 40px)}}.svc-intro .link-arrow{justify-self: start}.is-404 main{display: flex;flex-direction: column;justify-content: center}.is-404 main > *{width: 100%}.about-wrap{max-width: 1400px;margin: 0 auto;padding: calc(var(--header-h) + clamp(56px, 9vw, 130px)) var(--pad) 0}.about-intro{display: grid;grid-template-columns: minmax(0, 1fr);grid-template-areas: "head" "photo" "copy";gap: clamp(28px, 4vw, 56px) clamp(40px, 6vw, 100px);align-items: start}.about-intro__head{grid-area: head}.about-intro .page-title{font-size: clamp(2.9rem, 7.7vw, 7.9rem);max-width: none}.portrait{grid-area: photo;position: relative;width: clamp(220px, 60vw, 300px)}.about__copy{grid-area: copy;max-width: 52rem}.about-rule{border: 0;height: 3px;background: var(--blue);margin: clamp(64px, 9vw, 130px) 0}.about-lists-head{font-family: var(--f-head);font-weight: var(--w-head);font-size: clamp(2rem, 4.6vw, 4.6rem);line-height: 1.05;letter-spacing: var(--ls-head);max-width: 14em;text-wrap: balance;margin-bottom: clamp(32px, 5vw, 72px)}.about__lists{display: grid;grid-template-columns: 1fr;gap: clamp(72px, 8vw, 100px)}@media (min-width: 900px){.about-intro{grid-template-columns: minmax(0, 1fr) clamp(280px, 28vw, 400px);grid-template-areas: "head photo" "copy photo"}.about-intro{--shift: clamp(0px, 8vw, 120px);--gapx: clamp(40px, 6vw, 100px)}.portrait{width: 100%;justify-self: end;translate: calc(-1 * var(--shift)) 0}.about__copy{max-width: min(52rem, calc(100% - max(0px, var(--shift) - var(--gapx) + 28px)))}.about__lists{grid-template-columns: 1fr 1fr}}.logo-grid-wrap{max-width: var(--maxw);margin: clamp(48px, 7vw, 100px) auto 0;padding: 0 var(--pad)}.logo-grid{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));border-top: 1px solid var(--line);border-left: 1px solid var(--line)}.logo-grid li{position: relative;aspect-ratio: 3 / 2;overflow: hidden;border-right: 1px solid var(--line);border-bottom: 1px solid var(--line)}.logo-grid img{position: absolute;inset: 0;margin: auto;width: auto;height: auto;max-width: 72%;max-height: 38%;object-fit: contain}.logo-grid li.is-tall img{max-height: 52%;max-width: 46%}.logo-grid li.is-wide img{max-width: 80%}@media (min-width: 700px){.logo-grid{grid-template-columns: repeat(3, minmax(0, 1fr))}}@media (min-width: 1100px){.logo-grid{grid-template-columns: repeat(4, minmax(0, 1fr))}}.g--doc > picture, .p-cover--doc picture{box-shadow: 0 2px 44px rgba(20, 19, 20, 0.075)}.movies{padding-bottom: clamp(20px, 3vw, 40px)}.movies__head{max-width: 1400px;margin: 0 auto;padding: 0 var(--pad)}.movies__head .about-rule{margin-bottom: clamp(40px, 6vw, 90px)}.marquee--posters{--ph: clamp(230px, 21vw, 330px)}.marquee--posters{position: relative;-webkit-mask-image: none;mask-image: none}.marquee--posters::before, .marquee--posters::after{content: "";position: absolute;top: 0;bottom: 0;width: 28px;z-index: 3;pointer-events: none}.marquee--posters::before{left: 0;background: linear-gradient(90deg, var(--bg), rgba(251, 249, 248, 0))}.marquee--posters::after{right: 0;background: linear-gradient(270deg, var(--bg), rgba(251, 249, 248, 0))}.marquee--posters .marquee__track{animation: none}.marquee__track[hidden]{display: none}.marquee--posters .marquee__track--v{display: block;position: relative;flex: 1 1 100%;min-width: 0;overflow: visible}.marquee--posters{margin: -26px 0}.marquee--posters .marquee__track li{display: block;flex: none;padding: 44px clamp(3px, 0.8vw, 12px)}.poster{position: relative;display: block;height: var(--ph);width: calc(var(--ph) * 2 / 3);aspect-ratio: 2 / 3;overflow: hidden;background: #e9e5e6;box-shadow: 0 2px 44px rgba(20, 19, 20, 0.075)}.marquee--posters .marquee__track .poster img{position: absolute;inset: 0;display: block;width: 100%;height: 100%;max-width: none;object-fit: cover;opacity: 1;transition: transform 0.9s var(--ease)}.poster__veil{position: absolute;inset: 0;z-index: 2;display: flex;flex-direction: column;justify-content: flex-end;gap: 8px;padding: clamp(12px, 1.4vw, 18px);background: var(--veil);color: var(--veil-fg);clip-path: inset(100% 0 0 0);transition: clip-path 0.55s var(--ease)}.poster__name{font-family: var(--f-pixel);font-weight: 340;font-size: clamp(1.25rem, 1.7vw, 1.65rem);line-height: 1.02;text-wrap: balance}.poster__meta{font-family: var(--f-small);font-weight: 500;font-size: 0.68rem;text-transform: uppercase;letter-spacing: 0.09em;opacity: 0.8;line-height: 1.5}.poster .tile__arrow{top: clamp(8px, 1vw, 14px);right: clamp(10px, 1.2vw, 16px);font-size: 1.3rem}@media (hover: hover) and (pointer: fine){.poster:hover .poster__veil, .poster:focus-visible .poster__veil{clip-path: inset(0)}.poster:hover .tile__arrow{transform: none}.poster:hover img{transform: scale(1.05)}}@media (max-width: 700px){.marquee--posters{--ph: 210px}}