@font-face{font-family: 'DM Sans';font-style: normal;font-weight: 100 1000;font-display: swap;src: url(/assets/fonts/dm-sans-latin.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: 'DM Sans';font-style: normal;font-weight: 100 1000;font-display: swap;src: url(/assets/fonts/dm-sans-latin-ext.woff2) format('woff2');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}:root{color-scheme: light;--paper: #fafafa;--card: #ffffff;--ink: #0f0f0f;--ink-2: #2e2e2e;--grey: #5c5c5c;--grey-2: #a3a3a3;--well: #ececec;--line: rgba(17,17,17,0.12);--line-strong: rgba(17,17,17,0.28);--accent: #ffd21c;--accent-2: #ffe066;--rec: #ff4a3d;--danger: #b3261e;--gutter: clamp(16px,3.4vw,48px);--max: 1520px;--gap: clamp(14px,1.6vw,24px);--r: 8px;--ease: cubic-bezier(0.23,1,0.32,1);--font: 'DM Sans',ui-sans-serif,system-ui,-apple-system,'Segoe UI',Roboto,Helvetica,Arial,sans-serif;--mono: ui-monospace,'SF Mono',SFMono-Regular,Menlo,Consolas,'Liberation Mono',monospace;--hl: linear-gradient(100deg,transparent 0 2%,var(--accent) 2% 98%,transparent 98%) 0 88% / 100% 0.48em no-repeat}*,*::before,*::after{box-sizing: border-box}html{-webkit-text-size-adjust: 100%;text-size-adjust: 100%}body{margin: 0;background: var(--paper);color: var(--ink);font-family: var(--font);font-size: clamp(1rem,0.96rem + 0.15vw,1.0625rem);line-height: 1.6;-webkit-font-smoothing: antialiased;-webkit-tap-highlight-color: transparent}img,video{display: block;max-width: 100%;height: auto}picture{display: block}a{color: inherit;text-decoration-thickness: 1px;text-underline-offset: 0.2em}:focus-visible{outline: 2px solid var(--ink);outline-offset: 3px;border-radius: 2px}h1,h2,h3{font-weight: 600;letter-spacing: -0.03em;line-height: 1.06;margin: 0 0 0.5em;text-wrap: balance}h3{font-size: 1.2rem;letter-spacing: -0.015em}p{margin: 0 0 1em;text-wrap: pretty}::selection{background: var(--accent);color: var(--ink)}.wrap,.wrap-wide{width: 100%;max-width: var(--max);margin-inline: auto;padding-inline: var(--gutter)}.narrow{max-width: 900px}.sr-only{position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0 0 0 0);white-space: nowrap;border: 0}.muted{color: var(--grey)}.mono{font-family: inherit}.hx-rec,.hx-frame-tc,.hx-monitor-tc,.hx-count,.hx-all-n,.num,.post-date,.pl-empty{font-family: var(--mono)}.num{font-family: var(--mono);font-size: 0.8em;color: var(--grey)}.label{font-size: 0.95rem;font-weight: 500;color: var(--grey);margin: 0}h2.label,h3.label{letter-spacing: normal;line-height: inherit;text-wrap: wrap}.more{display: inline-flex;align-items: center;gap: 8px;min-height: 40px;font-weight: 500;text-decoration: none;white-space: nowrap}.arr{display: inline-block;transition: transform 250ms var(--ease)}a:hover .arr{transform: translateX(4px)}.lead-s{font-size: clamp(1.15rem,1rem + 0.5vw,1.45rem);line-height: 1.4;letter-spacing: -0.015em;color: var(--ink)}@media (hover: hover) and (pointer: fine){.more:hover>span:not(.arr),.hl:hover{background: var(--hl)}}.btn,.hx-btn{display: inline-flex;align-items: center;justify-content: center;gap: 10px;min-height: 52px;padding: 0 26px;border-radius: 999px;border: 1px solid var(--line-strong);background: transparent;color: var(--ink);font: 500 1rem/1 var(--font);text-decoration: none;cursor: pointer;transition: transform 160ms var(--ease),background-color 200ms ease,border-color 200ms ease}.btn-accent,.hx-btn.is-primary{background: var(--accent);border-color: var(--accent);color: var(--ink)}.btn-sm{min-height: 40px;padding: 0 18px;font-size: 0.95rem}.btn:active,.hx-btn:active{transform: scale(0.97)}@media (hover: hover) and (pointer: fine){.btn:hover{border-color: var(--ink)}.btn-accent:hover,.hx-btn.is-primary:hover{background: var(--accent-2);border-color: var(--accent-2)}}.linklike{background: none;border: 0;padding: 0;font: inherit;color: inherit;text-decoration: underline;cursor: pointer}.preview-bar{position: fixed;z-index: 70;left: 0;right: 0;bottom: 0;background: var(--accent);color: var(--ink);font: 600 0.68rem/1 var(--mono);text-align: center;padding: 5px 8px;letter-spacing: 0.06em;pointer-events: none}.draft-note{background: #fff6cc;border-left: 3px solid var(--accent);color: var(--ink);padding: 12px var(--gutter);font-size: 0.9rem}.todo{border: 1px dashed #c9a800;padding: 12px 14px;margin: 16px 0;font-size: 0.9rem;line-height: 1.5;background: #fffbe6;color: var(--ink)}.todo-label{font-size: 0.68rem;letter-spacing: 0.06em;text-transform: uppercase;margin-right: 8px;font-weight: 700}.skip{position: absolute;left: -9999px;top: 8px;z-index: 100;background: var(--accent);color: var(--ink);padding: 8px 12px}.skip:focus{left: 8px}.site-header{position: sticky;top: 0;z-index: 50;background: rgba(250,250,248,0.88);backdrop-filter: blur(14px);-webkit-backdrop-filter: blur(14px);border-bottom: 1px solid transparent;transition: border-color 200ms ease}.site-header.is-scrolled{border-bottom-color: var(--line)}.site-header.is-menu-open{backdrop-filter: none;-webkit-backdrop-filter: none;background: var(--paper)}.header-inner{display: flex;align-items: center;justify-content: space-between;gap: 24px;min-height: 76px}.logo{display: inline-flex;align-items: center;gap: 14px;text-decoration: none}.logo img{width: 128px}.logo-desc{font-size: 0.98rem;color: var(--grey);white-space: nowrap}@media (max-width: 1180px){.logo-desc{display: none}}.site-nav ul{list-style: none;margin: 0;padding: 0;display: flex;align-items: center;gap: clamp(16px,2.2vw,34px)}.site-nav a{text-decoration: none;font-size: 1.02rem;font-weight: 500}.site-nav li:not(.nav-contact,.nav-sub) a[aria-current='page']{background: var(--hl)}@media (hover: hover) and (pointer: fine){.site-nav li:not(.nav-contact,.nav-sub) a:hover{background: var(--hl)}}.nav-contact .btn{min-height: 42px;padding: 0 20px;background: var(--ink);border-color: var(--ink);color: #fff}.nav-contact .btn:hover{background: #000}.lang{font-size: 0.8rem !important;letter-spacing: 0.08em;color: var(--grey)}.nav-meta,.menu-toggle,.menu-close{display: none}@media (max-width: 880px){.js .menu-toggle{display: inline-flex;align-items: center;min-height: 44px;padding: 0 18px;border-radius: 999px;border: 1px solid var(--line-strong);background: none;color: var(--ink);font: 500 1rem var(--font);position: relative;z-index: 2}.js .menu-toggle[aria-expanded='true'] .menu-open{display: none}.js .menu-toggle[aria-expanded='true'] .menu-close{display: inline}.js .site-nav{position: fixed;inset: 0;background: var(--paper);padding: 96px var(--gutter) 40px;display: flex;flex-direction: column;justify-content: space-between;opacity: 0;visibility: hidden;transition: opacity 200ms ease,visibility 0s 200ms;overflow-y: auto}.js .site-nav.is-open{opacity: 1;visibility: visible;transition-delay: 0s}.js .site-nav ul{flex-direction: column;align-items: stretch;gap: 0}.js .site-nav li{border-top: 1px solid var(--line)}.js .site-nav a{display: block;font-size: clamp(2rem,9vw,2.8rem);font-weight: 600;letter-spacing: -0.04em;padding: 10px 0;background: none}.js .site-nav li:not(.nav-contact,.nav-sub) a[aria-current='page']{background: none;color: var(--ink);text-decoration: underline;text-decoration-color: var(--accent);text-decoration-thickness: 4px}.js .nav-sub .btn{text-decoration: underline 6px var(--accent)}.js .site-nav .btn{border: 0;background: none;color: var(--ink);padding: 10px 0;min-height: 0;justify-content: flex-start;font-size: clamp(2rem,9vw,2.8rem);font-weight: 600}.js .lang{padding: 16px 0 !important}.js .nav-meta{display: block;font-size: 0.9rem;color: var(--grey);line-height: 1.9;margin: 32px 0 0}.js .nav-meta a{font-size: inherit;font-weight: 400;display: inline;padding: 0;letter-spacing: 0}.js .site-header .logo{position: relative;z-index: 2}}.crumbs ol{list-style: none;padding: 0;margin: 20px 0 0;display: flex;flex-wrap: wrap;gap: 6px;font-size: 0.9rem;color: var(--grey)}.crumbs li{padding: 4px 0}.crumbs li + li::before{content: '/';margin-right: 6px;color: var(--grey-2)}.crumbs a{text-decoration: none}.crumbs a:hover{color: var(--ink)}.page-head{padding-top: clamp(28px,5vw,72px);padding-bottom: clamp(32px,5vw,72px)}.intro-h{font-size: clamp(2.6rem,0.9rem + 6.4vw,8rem);font-weight: 650;line-height: 0.94;letter-spacing: -0.055em;max-width: 14ch;margin: 0}.intro-h .muted{color: inherit;font-weight: 400}.page-lead{margin: clamp(18px,2.4vw,32px) 0 0;max-width: 46ch;font-size: clamp(1.15rem,1rem + 0.6vw,1.6rem);line-height: 1.4;letter-spacing: -0.015em;color: var(--ink-2)}.intro-links{display: flex;flex-wrap: wrap;gap: 10px;margin: clamp(22px,3vw,36px) 0 0;font-family: var(--font)}.intro-links a{display: inline-flex;align-items: center;gap: 10px;min-height: 52px;padding: 0 26px;border-radius: 999px;background: var(--accent);color: var(--ink);font-weight: 500;text-decoration: none;transition: transform 160ms var(--ease),background-color 200ms ease}.intro-links a:hover{background: var(--accent-2)}.intro-links a:active{transform: scale(0.97)}.intro-links a + a{background: none;border: 1px solid var(--line-strong)}@media (min-width: 1000px){.page-head.has-media{display: grid;grid-template-columns: repeat(12,minmax(0,1fr));gap: 24px;align-items: end}.has-media .head-text{grid-column: 1 / 8}.head-media{grid-column: 9 / 13}}.head-media{position: relative;margin: 32px 0 0;aspect-ratio: 16 / 10;overflow: hidden;border-radius: 12px;background: var(--well)}@media (min-width: 1000px){.head-media{margin: 0;aspect-ratio: 4 / 5;max-height: 72vh}}.head-media picture,.head-media img,.head-media video{position: absolute;inset: 0;width: 100%;height: 100%;object-fit: cover}.head-media video{opacity: 0;transition: opacity 400ms ease}.head-media.is-playing video{opacity: 1}.head-rec{position: absolute;z-index: 3;top: 26px;right: 30px;margin: 0;display: flex;align-items: center;gap: 8px;font: 0.74rem var(--mono);letter-spacing: 0.04em;color: #fff;text-shadow: 0 1px 4px rgba(0,0,0,0.6);font-variant-numeric: tabular-nums}.head-media.is-playing .hx-dot{animation: hx-blink 1.2s steps(1) infinite}.has-media .intro-h{max-width: 12ch}.block{padding-block: clamp(56px,8vw,120px);border-top: 1px solid var(--line)}.block-first{border-top: 0;padding-top: 0}.block-head{display: flex;align-items: baseline;justify-content: space-between;gap: 16px;margin-bottom: clamp(24px,3vw,44px)}.block-head .label{font-size: clamp(1.6rem,1rem + 2vw,2.8rem);font-weight: 600;letter-spacing: -0.045em;line-height: 1;color: var(--ink)}.row{display: grid;gap: 12px 24px;padding: clamp(24px,3vw,40px) 0;border-top: 1px solid var(--line)}.block-head + .row,.studio-rows>.row:first-child{border-top: 0;padding-top: 0}.row-h{font-size: clamp(1.35rem,1rem + 1vw,2rem);letter-spacing: -0.035em;margin: 0}@media (min-width: 1000px){.row{grid-template-columns: repeat(12,minmax(0,1fr))}.row>:first-child{grid-column: 1 / 5}.row>:last-child{grid-column: 5 / 13}.row-h{position: sticky;top: 100px;align-self: start}}.prose{max-width: 66ch;color: var(--ink-2)}.prose h2{font-size: clamp(1.4rem,1rem + 1vw,2rem);margin-top: 1.6em;color: var(--ink)}.prose h3{margin-top: 1.4em;color: var(--ink)}.prose>:first-child{margin-top: 0}.prose>:last-child{margin-bottom: 0}.prose ul{list-style: none;padding: 0;margin: 0 0 1.2em}.prose ul li{position: relative;padding-left: 26px;margin-bottom: 0.5em}.prose ul li::before,.scope-list li::before{content: '';position: absolute;left: 0;top: 0.62em;width: 14px;height: 8px;background: var(--accent);transform: skewX(-18deg)}.prose ol{padding-left: 1.3em}.prose ol li{margin-bottom: 0.5em}.prose a{text-decoration-color: var(--accent);text-decoration-thickness: 2px}.table-wrap{overflow-x: auto;margin: 0 0 1.4em}.prose table{border-collapse: collapse;width: 100%;min-width: 30em;font-size: 0.95em}.prose th,.prose td{text-align: left;vertical-align: top;padding: 0.55em 0.8em 0.55em 0;border-bottom: 1px solid var(--well)}.prose thead th{color: var(--ink);border-bottom: 2px solid var(--ink)}.prose tbody th{color: var(--ink);font-weight: 600}.prose a:hover{background: var(--hl);text-decoration-color: transparent}.faq{max-width: 72ch}.faq details{border-top: 1px solid var(--line)}.faq details:last-child{border-bottom: 1px solid var(--line)}.faq summary{cursor: pointer;padding: 18px 56px 18px 0;font-size: clamp(1.05rem,1rem + 0.3vw,1.25rem);font-weight: 600;letter-spacing: -0.015em;list-style: none;position: relative;min-height: 44px}.faq summary::-webkit-details-marker{display: none}.faq summary::after{content: '+';position: absolute;right: 0;top: 50%;translate: 0 -50%;width: 36px;height: 36px;display: grid;place-items: center;border-radius: 50%;border: 1px solid var(--line-strong);font: 400 1.3rem/1 var(--font);transition: background-color 200ms ease,border-color 200ms ease,rotate 250ms var(--ease)}.faq details[open] summary::after{rotate: 45deg;background: var(--accent);border-color: var(--accent)}.faq summary:hover::after{border-color: var(--ink)}.faq details>:not(summary){color: var(--ink-2);max-width: 64ch}.faq details>p:last-child{padding-bottom: 12px}.chips{list-style: none;margin: 0;padding: 0;display: flex;flex-wrap: wrap;gap: 8px}.chips a{display: inline-flex;align-items: center;min-height: 44px;border: 1px solid var(--line-strong);border-radius: 999px;padding: 0 18px;text-decoration: none;font-weight: 500;transition: background-color 200ms ease,border-color 200ms ease,transform 160ms var(--ease)}.chips a:hover{background: var(--accent);border-color: var(--accent)}.chips a:active{transform: scale(0.97)}.prose .chips{margin-top: 32px}.prose .chips li{padding: 0}.prose .chips li::before{content: none}.mosaic{display: grid;grid-template-columns: repeat(6,minmax(0,1fr));gap: clamp(28px,3vw,44px) var(--gap)}.m-item{grid-column: span 6;position: relative;min-width: 0}@media (min-width: 700px){.m-item{grid-column: span 3}}@media (min-width: 1100px){.m-item{grid-column: span 2}.mosaic.is-lead>.m-item:nth-child(-n + 2){grid-column: span 3}}.m-item[hidden]{display: none}.m-link{display: block;color: var(--ink);text-decoration: none}:is(.hx-frame-media,.hx-monitor,.m-media,.pl-thumb,.svc-thumb,.head-media) :is(img,video){filter: brightness(1.025) contrast(1.15) saturate(1.18)}.m-media{position: relative;display: block;aspect-ratio: 16 / 9;overflow: hidden;border-radius: var(--r);background: var(--well)}.m-media picture,.m-media img,.m-clip,.m-media .card-placeholder{position: absolute;inset: 0;width: 100%;height: 100%}.m-media img{object-fit: cover;transition: transform 900ms var(--ease)}.m-clip{object-fit: cover;opacity: 0;transition: opacity 250ms linear;pointer-events: none}.m-item.is-playing .m-clip{opacity: 1}.m-title{display: grid;gap: 2px;margin: 14px 0 0;font-size: clamp(1.1rem,0.95rem + 0.5vw,1.45rem);font-weight: 600;letter-spacing: -0.03em;line-height: 1.15}.m-title>span:first-child{justify-self: start}.m-client{font-size: 0.95rem;font-weight: 400;letter-spacing: 0;color: var(--grey)}.m-play{position: absolute;top: 12px;right: 12px;width: 40px;height: 40px;display: grid;place-items: center;border-radius: 50%;background: rgba(255,255,255,0.9);color: var(--ink);transition: background-color 200ms ease,transform 160ms var(--ease)}.m-actions{display: flex;flex-wrap: wrap;gap: 4px 18px;margin: 6px 0 0;font-family: var(--font);font-size: 0.92rem}.m-actions a{display: inline-flex;align-items: center;gap: 6px;min-height: 32px;color: var(--grey);text-decoration: none}.m-actions a:hover{color: var(--ink)}.card-placeholder{display: grid;place-items: center;background: var(--well)}.card-placeholder span{font-size: clamp(1.2rem,2.4vw,1.8rem);font-weight: 600;letter-spacing: -0.03em;color: var(--grey)}@media (hover: hover) and (pointer: fine){.m-link:hover .m-media img{transform: scale(1.03)}.m-item.is-playing .m-media img{transform: none}.m-link:hover .m-title>span:first-child{background: var(--hl)}.m-item:hover .m-play{background: var(--accent)}}.filters{margin-bottom: clamp(28px,3.4vw,48px)}.filter-text{display: flex;flex-wrap: wrap;gap: 8px}.filter-text button{min-height: 44px;padding: 0 18px;border-radius: 999px;border: 1px solid var(--line-strong);background: none;color: var(--ink);font: 500 0.98rem var(--font);cursor: pointer;transition: background-color 200ms ease,border-color 200ms ease,transform 160ms var(--ease)}.filter-text button:hover{border-color: var(--ink)}.filter-text button:active{transform: scale(0.97)}.filter-text button[aria-pressed='true']{background: var(--accent);border-color: var(--accent)}.filter-select{display: none;width: 100%;min-height: 52px;border-radius: 999px;background: var(--card);color: var(--ink);border: 1px solid var(--line-strong);padding: 0 44px 0 20px;font: 500 1rem var(--font);appearance: none;-webkit-appearance: none;background-image: linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position: calc(100% - 24px) 55%,calc(100% - 19px) 55%;background-size: 5px 5px;background-repeat: no-repeat}@media (max-width: 699px){.filter-select{display: block}.filter-text{display: none}}.archive{margin-top: clamp(72px,9vw,140px);padding-top: clamp(40px,5vw,72px);border-top: 1px solid var(--line)}.archive-head{display: flex;flex-wrap: wrap;align-items: baseline;gap: 8px 20px;margin-bottom: clamp(24px,3vw,40px)}.archive-title{margin: 0;font-size: clamp(1.6rem,1rem + 2vw,2.8rem);letter-spacing: -0.045em}.archive-meta{margin: 0;color: var(--grey)}.archive-toggle{margin-left: auto;min-height: 48px;padding: 0 24px;border-radius: 999px;border: 1px solid var(--ink);background: var(--ink);color: #fff;font: 500 1rem var(--font);cursor: pointer;transition: transform 160ms var(--ease)}.archive-toggle:active{transform: scale(0.97)}.is-filtering .archive{margin-top: var(--gap);padding-top: 0;border-top: 0}.is-filtering .archive-head{display: none}@media (min-width: 1100px){.is-filtering .mosaic.is-lead>.m-item:nth-child(-n + 2){grid-column: span 2}.is-filtering .archive-grid .mosaic{grid-template-columns: repeat(6,minmax(0,1fr))}.is-filtering .archive-grid .m-item{grid-column: span 2}.is-filtering .archive-grid .m-title{font-size: inherit}}.archive-grid.is-collapsible:not(.is-open) .m-item:nth-child(n+13){display: none}@media (min-width: 1100px){.archive-grid .m-item{grid-column: span 3}.archive-grid .mosaic{grid-template-columns: repeat(12,minmax(0,1fr))}.archive-grid .m-title{font-size: 1.1rem}}.svc-rows{list-style: none;margin: 0;padding: 0}.svc-rows li{border-top: 1px solid var(--line)}.svc-rows li:last-child{border-bottom: 1px solid var(--line)}.svc-rows a{display: grid;grid-template-columns: minmax(0,1fr) auto;gap: 6px 24px;align-items: center;padding: clamp(16px,2vw,28px) 0;text-decoration: none}.svc-name{margin: 0;font-size: clamp(1.7rem,0.9rem + 3vw,4rem);font-weight: 600;letter-spacing: -0.05em;line-height: 1;justify-self: start}.svc-lead{grid-column: 1;color: var(--ink-2);max-width: 60ch}.svc-thumb{grid-column: 2;grid-row: 1 / span 2;width: clamp(120px,18vw,280px);aspect-ratio: 16 / 10;overflow: hidden;border-radius: var(--r);background: var(--well)}.svc-thumb img{width: 100%;height: 100%;object-fit: cover;transition: transform 900ms var(--ease)}.svc-rows .arr{display: none}@media (min-width: 1000px){.svc-rows a{grid-template-columns: minmax(0,6fr) minmax(0,5fr) auto}.svc-lead{grid-column: 2;grid-row: 1}.svc-thumb{grid-column: 3;grid-row: 1}}@media (max-width: 599px){.svc-rows a{grid-template-columns: 1fr}.svc-thumb{grid-column: 1;grid-row: 1;width: 100%;aspect-ratio: 16 / 9;margin-bottom: 8px}}@media (hover: hover) and (pointer: fine){.svc-rows a:hover .svc-name{background: var(--hl);background-size: 100% 0.4em}.svc-rows a:hover .svc-thumb img{transform: scale(1.06)}}.service-work{margin-bottom: clamp(56px,8vw,120px)}.project-video{margin-bottom: clamp(28px,4vw,56px)}.player{position: relative;aspect-ratio: 16 / 9;background: #000;overflow: hidden;border-radius: 12px}.player::after,.hx-open::before,.head-media::after{content: '';position: absolute;z-index: 2;inset: clamp(12px,2vw,28px);pointer-events: none;--c: clamp(16px,1.8vw,28px);--w: 1.5px;--k: rgba(255,255,255,0.75);background: linear-gradient(var(--k),var(--k)) 0 0 / var(--c) var(--w),linear-gradient(var(--k),var(--k)) 0 0 / var(--w) var(--c),linear-gradient(var(--k),var(--k)) 100% 0 / var(--c) var(--w),linear-gradient(var(--k),var(--k)) 100% 0 / var(--w) var(--c),linear-gradient(var(--k),var(--k)) 0 100% / var(--c) var(--w),linear-gradient(var(--k),var(--k)) 0 100% / var(--w) var(--c),linear-gradient(var(--k),var(--k)) 100% 100% / var(--c) var(--w),linear-gradient(var(--k),var(--k)) 100% 100% / var(--w) var(--c);background-repeat: no-repeat}.player.is-playing::after{display: none}.player iframe{position: absolute;inset: 0;width: 100%;height: 100%;border: 0}.video-facade{position: absolute;inset: 0;display: block;cursor: pointer}.video-facade picture,.video-facade img,.video-facade .card-placeholder,.player>picture,.player>picture img{width: 100%;height: 100%;object-fit: cover}.play-round{position: absolute;z-index: 3;left: 50%;top: 50%;width: clamp(68px,7vw,108px);aspect-ratio: 1;transform: translate(-50%,-50%);border-radius: 50%;display: grid;place-items: center;background: var(--accent);color: var(--ink);transition: transform 200ms var(--ease)}.play-round svg{margin-left: 4px}.video-facade:hover .play-round,.video-facade:focus-visible .play-round{transform: translate(-50%,-50%) scale(1.08)}.playlist{margin-top: clamp(24px,3vw,40px)}.playlist-h{font-weight: 600;margin-bottom: 14px}.playlist-grid{list-style: none;margin: 0;padding: 0;display: grid;grid-auto-flow: column;grid-auto-columns: clamp(220px,24vw,340px);gap: var(--gap);overflow-x: auto;scroll-snap-type: x mandatory;padding-bottom: 8px;scrollbar-width: thin}.playlist-grid li{scroll-snap-align: start}.playlist-grid a{display: block;text-decoration: none;color: var(--ink)}.pl-thumb{position: relative;display: block;aspect-ratio: 16 / 9;overflow: hidden;border-radius: var(--r);background: var(--well)}.pl-thumb img{width: 100%;height: 100%;object-fit: cover}.pl-empty{position: absolute;inset: 0;display: grid;place-items: center;color: var(--grey)}.pl-play{position: absolute;right: 10px;bottom: 10px;width: 32px;height: 32px;display: grid;place-items: center;border-radius: 50%;background: rgba(255,255,255,0.9)}.playlist-grid a[aria-current='true'] .pl-thumb{outline: 3px solid var(--accent);outline-offset: 3px}.pl-cap{display: flex;gap: 10px;padding-top: 10px;font-weight: 500;line-height: 1.3}.highlights{list-style: none;display: grid;grid-template-columns: repeat(auto-fit,minmax(180px,1fr));gap: var(--gap);margin: 0 auto clamp(28px,4vw,56px);padding-top: 0;padding-bottom: 0}.highlights li{border-top: 2px solid var(--ink);padding-top: 12px}.hl-big{display: block;font-size: clamp(2rem,1.2rem + 2.6vw,3.6rem);font-weight: 650;letter-spacing: -0.05em;line-height: 1}.hl-small{color: var(--grey)}.meta-row{display: flex;flex-wrap: wrap;gap: 16px clamp(28px,4vw,64px);margin: 0;padding: 18px 0;border-top: 1px solid var(--line);border-bottom: 1px solid var(--line);font-family: var(--font);font-size: 1rem}.meta-row dt{color: var(--grey);font-size: 0.88rem;margin-bottom: 2px}.meta-row dd{margin: 0;font-weight: 500}.meta-row a{text-decoration-color: var(--accent);text-decoration-thickness: 2px}.about-grid{display: grid;gap: 40px}@media (min-width: 1000px){.about-grid{grid-template-columns: repeat(12,minmax(0,1fr));gap: 24px}.about-brief{grid-column: 1 / 7}.about-scope{grid-column: 8 / 13}}.about-h{font-size: 1rem;font-weight: 500;color: var(--grey);letter-spacing: 0;margin-bottom: 12px}.scope-list{list-style: none;margin: 0;padding: 0}.scope-list li{position: relative;padding: 12px 0 12px 26px;border-top: 1px solid var(--line)}.scope-list li::before{top: 1.25em}.scope-list li:last-child{border-bottom: 1px solid var(--line)}.about-more{margin-top: clamp(32px,4vw,56px)}.about-more summary{display: inline-flex;align-items: center;gap: 10px;min-height: 48px;padding: 0 22px;border-radius: 999px;border: 1px solid var(--line-strong);cursor: pointer;font-weight: 500;list-style: none}.about-more summary::-webkit-details-marker{display: none}.about-more summary::after{content: '+';font-size: 1.2rem}.about-more[open] summary::after{content: '–'}.about-body{margin-top: 24px}.decision{margin: clamp(40px,5vw,72px) 0 0}.decision blockquote{margin: 8px 0 0;font-size: clamp(1.4rem,1rem + 1.6vw,2.4rem);font-weight: 500;letter-spacing: -0.035em;line-height: 1.2;max-width: 30ch}.decision figcaption{color: var(--grey);margin-top: 12px}.gallery{display: grid;gap: var(--gap)}.gallery{grid-template-columns: repeat(2,minmax(0,1fr))}@media (min-width: 900px){.gallery{grid-template-columns: repeat(3,minmax(0,1fr))}}@media (min-width: 1300px){.gallery{grid-template-columns: repeat(5,minmax(0,1fr))}}.gallery figure{margin: 0}.gallery picture{aspect-ratio: 16 / 9;overflow: hidden;border-radius: var(--r);background: var(--well)}.gallery img{width: 100%;height: 100%;object-fit: cover}.gallery figcaption{padding-top: 8px;font-size: 0.85rem;line-height: 1.35;color: var(--grey);font-family: var(--font)}.bts{margin-top: clamp(32px,4vw,56px)}.wedge{display: inline-block;background: var(--accent);transform: skewX(-18deg);padding: 4px 14px;margin-bottom: 16px}.wedge-in{display: inline-block;transform: skewX(18deg);font-weight: 600}.related-work{padding-block: clamp(56px,8vw,120px);border-top: 1px solid var(--line)}.studio-intro{display: grid;gap: 32px}@media (min-width: 1000px){.studio-intro{grid-template-columns: repeat(12,minmax(0,1fr));gap: 24px}.studio-image{grid-column: 1 / 5}.studio-rows{grid-column: 6 / 13}.studio-rows .row{grid-template-columns: 1fr}.studio-rows .row>*{grid-column: auto !important}.studio-rows .row-h{position: static}}.studio-image{margin: 0}.studio-image img{border-radius: 12px;width: 100%}.client-names,.hx-client-list{list-style: none;margin: 0;padding: 0;display: flex;flex-wrap: wrap;gap: 6px 0;max-width: 1300px;font-size: clamp(1.25rem,0.9rem + 1.4vw,2.3rem);font-weight: 500;letter-spacing: -0.035em;line-height: 1.25}.client-names li:not(:last-child)::after,.hx-client-list li:not(:last-child)::after{content: '/';margin: 0 0.4em;color: var(--grey-2)}.post-list{list-style: none;margin: 0;padding: 0}.post-list li{border-top: 1px solid var(--line)}.post-list li:last-child{border-bottom: 1px solid var(--line)}.post-list a{display: grid;gap: 20px;padding: 28px 0;text-decoration: none;align-items: center}@media (min-width: 800px){.post-list a{grid-template-columns: 5fr 7fr;gap: 40px}}.post-thumb{display: block;aspect-ratio: 16 / 9;overflow: hidden;border-radius: 12px;background: var(--well)}.post-thumb img{width: 100%;height: 100%;object-fit: cover;transition: transform 600ms var(--ease)}.post-list a:hover .post-thumb img{transform: scale(1.03)}.post-text{display: grid;gap: 8px;align-content: center}.post-hero{margin-top: clamp(24px,3vw,40px)}.post-hero img{width: 100%;aspect-ratio: 21 / 9;object-fit: cover;border-radius: 14px}.post-date{color: var(--grey);font-size: 0.85rem}.post-title{margin: 0;font-size: clamp(1.4rem,1rem + 1.4vw,2.4rem);font-weight: 600;letter-spacing: -0.04em;line-height: 1.1;justify-self: start}.post-lead{color: var(--ink-2);max-width: 64ch}.post-list a:hover .post-title{background: var(--hl)}.post-meta{color: var(--grey);font-size: 0.9rem}.post .intro-h{font-size: clamp(2.2rem,1rem + 4vw,5rem);max-width: 18ch}.contact{display: grid;gap: 56px}@media (min-width: 1000px){.contact{grid-template-columns: repeat(12,minmax(0,1fr));gap: 24px}.form{grid-column: 1 / 8}.contact-details{grid-column: 9 / 13}}.field-row{display: grid;gap: 0 24px}@media (min-width: 700px){.field-row{grid-template-columns: 1fr 1fr}}.field{margin: 0 0 24px;display: flex;flex-direction: column;gap: 6px}.field label{font-size: 0.95rem;font-weight: 500}.opt{color: var(--grey);font-weight: 400}.field input,.field select,.field textarea{width: 100%;min-height: 52px;padding: 12px 16px;border: 1px solid var(--line-strong);border-radius: 10px;background: var(--card);color: var(--ink);font: 400 1rem/1.4 var(--font);transition: border-color 200ms ease,box-shadow 200ms ease}.field textarea{resize: vertical;min-height: 160px}.field select{appearance: none;-webkit-appearance: none;padding-right: 44px;background-image: linear-gradient(45deg,transparent 50%,var(--ink) 50%),linear-gradient(135deg,var(--ink) 50%,transparent 50%);background-position: calc(100% - 22px) 55%,calc(100% - 17px) 55%;background-size: 5px 5px;background-repeat: no-repeat}.field input:focus,.field select:focus,.field textarea:focus{outline: none;border-color: var(--ink);box-shadow: 0 0 0 4px rgba(255,210,28,0.55)}.field [aria-invalid='true']{border-color: var(--danger)}.hint{font-size: 0.88rem;color: var(--grey)}.form-info{font-size: 0.92rem;color: var(--grey)}.form-status{min-height: 1.5em;font-weight: 500}.form-status.is-error{color: var(--danger)}.form-status.is-ok{color: var(--ink);background: var(--hl)}.hp{position: absolute !important;left: -10000px;width: 1px;height: 1px;overflow: hidden}.contact-details{display: grid;gap: 28px;align-content: start}.contact-details .label{margin-bottom: 4px}.contact-details p{margin: 0}.big{font-size: clamp(1.5rem,1rem + 1.6vw,2.4rem);font-weight: 600;letter-spacing: -0.04em;line-height: 1.1;overflow-wrap: anywhere}.big a{text-decoration: none}.big a:hover{background: var(--hl)}.page-text{padding-bottom: clamp(56px,8vw,120px)}.cta,.hx-close{padding-top: clamp(80px,11vw,168px);padding-bottom: clamp(80px,10vw,150px);border-top: 1px solid var(--line)}.cta-h,.hx-close-h{margin: 0;font-size: clamp(1.4rem,1rem + 1.3vw,2.2rem);font-weight: 500;letter-spacing: -0.03em}.cta-text,.hx-close-text{color: var(--grey);margin: 8px 0 clamp(20px,3vw,40px);font-size: clamp(1rem,0.95rem + 0.3vw,1.2rem)}.cta-mail,.hx-mail{display: inline-block;font-size: clamp(2rem,0.6rem + 6.4vw,8.4rem);font-weight: 650;letter-spacing: -0.055em;line-height: 1;color: var(--ink);text-decoration: none;overflow-wrap: anywhere;padding-bottom: 0.06em;background: linear-gradient(var(--accent),var(--accent)) 0 88% / 0 0.42em no-repeat;transition: background-size 500ms var(--ease)}@media (hover: hover) and (pointer: fine){.cta-mail:hover,.hx-mail:hover{background-size: 100% 0.42em}}.cta-actions,.hx-cta{display: flex;flex-wrap: wrap;gap: 10px;margin: clamp(28px,4vw,56px) 0 0}.site-footer{border-top: 1px solid var(--line);padding-top: 56px;font-size: 0.95rem;background: var(--paper)}.footer-grid{display: grid;gap: 32px;padding-bottom: 48px;font-family: var(--font)}@media (min-width: 800px){.footer-grid{grid-template-columns: 2fr 1.4fr 1.4fr 1fr}}.footer-brand img{width: 112px;margin-bottom: 16px}.footer-brand p{color: var(--grey);max-width: 28ch}.site-footer .label{font-size: 0.85rem;margin-bottom: 10px}.footer-social-label{margin-top: 24px !important}.plain{list-style: none;margin: 0;padding: 0}.plain a,.footer-legal a{display: inline-block;padding: 3px 0;min-height: 24px;text-decoration: none}.plain a:hover{background: var(--hl)}.footer-legal{display: flex;flex-wrap: wrap;justify-content: space-between;gap: 8px 24px;border-top: 1px solid var(--line);padding-block: 18px 48px;font-size: 0.8rem;color: var(--grey)}.footer-legal p{margin: 0}.video-modal{width: min(1280px,94vw);padding: 0;border: 0;background: #000;color: #fff;overflow: visible;border-radius: 10px}.video-modal::backdrop{background: rgba(10,10,10,0.88);backdrop-filter: blur(6px)}.modal-frame{aspect-ratio: 16 / 9}.modal-frame iframe{width: 100%;height: 100%;border: 0;display: block;border-radius: 10px 10px 0 0}.modal-close{position: absolute;top: -56px;right: 0;min-height: 44px;padding: 0 18px;border-radius: 999px;background: #fff;color: var(--ink);border: 0;font: 500 0.95rem var(--font);cursor: pointer}.modal-cap{display: flex;flex-wrap: wrap;justify-content: space-between;align-items: center;gap: 8px 24px;margin: 0;padding: 14px 18px}.modal-cap[hidden],.modal-link[hidden]{display: none}.modal-title{font-weight: 600}.modal-link{color: var(--accent);text-decoration: none;min-height: 32px;display: inline-flex;align-items: center}.cookie{position: fixed;z-index: 60;left: 16px;right: 16px;bottom: 16px;max-width: 520px;background: var(--card);border: 1px solid var(--line);border-radius: 14px;padding: 20px;box-shadow: 0 20px 60px rgba(0,0,0,0.18)}.cookie p{font-size: 0.95rem}.cookie div{display: flex;gap: 8px;flex-wrap: wrap}@media (prefers-reduced-motion: no-preference){.js .reveal{opacity: 0;transform: translateY(18px);transition: opacity 700ms ease,transform 900ms var(--ease)}.js .reveal.is-in{opacity: 1;transform: none}}@media (max-width: 699px){.btn{min-height: 48px;padding: 0 20px}}@media (prefers-reduced-motion: reduce){.hx-bg{display: none}.hx-open.is-playing .hx-dot{animation: none}*,*::before,*::after{transition-duration: 0.01ms !important}}.head-media::after{inset: 14px;--c: 18px;--k: rgba(255,255,255,0.8)}.ab{padding-top: clamp(48px,6vw,96px)}.ab-stage{position: relative;min-height: 78vh;display: grid;align-items: end;overflow: hidden;color: #fff}.ab-bg.head-media{position: absolute;inset: 0;margin: 0;aspect-ratio: auto;max-height: none;border-radius: 0}.ab-bg::after{display: none}.ab-stage::before{content: '';position: absolute;inset: 0;z-index: 1;background: linear-gradient(180deg,rgba(0,0,0,0.15),rgba(0,0,0,0.78))}.ab-in{position: relative;z-index: 2;padding-block: clamp(40px,6vw,96px)}.ab-h{max-width: 22ch;margin: 0 0 clamp(28px,4vw,56px);font-size: clamp(2rem,1rem + 3.4vw,4.4rem);font-weight: 650;letter-spacing: -0.05em;line-height: 1}.ab-people{display: grid;gap: 14px}@media (min-width: 900px){.ab-people{grid-template-columns: 1fr 1fr}}.ab-card{display: grid;grid-template-columns: 96px 1fr;gap: 18px;align-items: start;padding: 20px;border-radius: 16px;background: rgba(255,255,255,0.1);backdrop-filter: blur(10px)}.ab-card picture{aspect-ratio: 1;border-radius: 50%;overflow: hidden}.ab-card img{width: 100%;height: 100%;object-fit: cover;filter: grayscale(1)}.ab-card h3{margin: 0 0 4px;font-size: 1.3rem}.ab-card p{margin: 0 0 14px;color: rgba(255,255,255,0.8)}@media (max-width: 599px){.ab-card{grid-template-columns: 64px 1fr;gap: 14px;padding: 16px}.ab-card .btn{min-height: 44px;height: auto;padding: 10px 16px;line-height: 1.25;text-align: left}}