:root,[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--background:#f4f4f0;--surface:#fcfcf8;--surface-secondary:#e7e7e1;--foreground:#111;--foreground-muted:#5e5e5a;--foreground-faint:#a3a39c;--border:#cfcfca;--input-background:#fff;--overlay:#f4f4f0eb;--overlay-scrim:#11111173;--accent:#ff3b30;--accent-foreground:#fff;--media:#ddd;--media-frame:#111;--solid:#111;--on-solid:#f4f4f0;--sidebar:#111;--sidebar-foreground:#f4f4f0;--sidebar-muted:#b9b9b2;--sidebar-hover:#2a2a2a;--sidebar-border:#4a4a46;--danger:#8d2424;--danger-surface:#fdecec;--danger-border:#e3c1c1;--success:#17653d;--success-surface:#e5f4eb;--warning:#8a5a12;--warning-surface:#f6f0e4;--specimen-dark:#111;--specimen-light:#f4f4f0;--bg:var(--background);--text:var(--foreground);--muted:var(--foreground-muted);--line:var(--border);--pad:clamp(18px, 3vw, 48px);--gap:clamp(18px, 2.5vw, 40px)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--background:#161614;--surface:#1e1e1b;--surface-secondary:#2a2926;--foreground:#eceae3;--foreground-muted:#a8a59c;--foreground-faint:#7d7a72;--border:#3c3b36;--input-background:#1a1a18;--overlay:#161614eb;--overlay-scrim:#000000a3;--accent:#ff6a60;--accent-foreground:#161614;--media:#2a2926;--media-frame:#0c0c0b;--solid:#eceae3;--on-solid:#161614;--sidebar:#10100e;--sidebar-foreground:#eceae3;--sidebar-muted:#9c998f;--sidebar-hover:#242320;--sidebar-border:#3c3b36;--danger:#f0b4b0;--danger-surface:#3a2422;--danger-border:#6a3a36;--success:#b7e0c8;--success-surface:#1c3328;--warning:#e4c48a;--warning-surface:#332a1a;--specimen-dark:#111;--specimen-light:#f4f4f0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);margin:0;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.2}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.site{padding:0 var(--pad);font-family:var(--font-primary,var(--font-manrope), Arial, Helvetica, sans-serif);font-weight:var(--font-primary-weight,400)}.site :is(h1,h2,.section-title,.logo,.contact-copy){font-family:var(--font-secondary,var(--font-unbounded), Arial, Helvetica, sans-serif)}.site.has-secondary-font :is(h1,h2,.section-title){font-weight:var(--font-secondary-weight,700)}.nav{z-index:20;background:var(--overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:72px;display:flex;position:sticky;top:0}.nav-start{align-items:center;gap:22px;min-width:0;display:flex}.back-link{text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:8px;font-size:11px;transition:opacity .35s;display:inline-flex}.back-link:hover{opacity:.45}.logo{letter-spacing:-.07em;font-size:30px;font-weight:800;transition:opacity .35s}.logo:hover{opacity:.45}.logo-image{object-fit:contain;width:auto;max-width:148px;height:28px;display:block}.navlinks{text-transform:uppercase;letter-spacing:.08em;gap:26px;font-size:11px;display:flex}.navlinks a{transition:opacity .35s}.navlinks a:hover{opacity:.45}.nav-end{justify-content:flex-end;align-items:center;gap:26px;min-width:0;display:flex}.lang-switch{letter-spacing:.08em;text-transform:uppercase;flex:none;align-items:center;gap:6px;font-size:11px;display:inline-flex}.lang-switch a:not([aria-current=true]),.lang-switch a:hover,.lang-switch a:not([aria-current=true]):hover{opacity:.45}.lang-switch a[aria-current=true]:hover{opacity:1}.theme-toggle{width:28px;height:28px;color:inherit;cursor:pointer;background:0 0;border:0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.theme-toggle svg{display:block}.theme-toggle .theme-icon-sun,[data-theme=dark] .theme-toggle .theme-icon-moon{display:none}[data-theme=dark] .theme-toggle .theme-icon-sun{display:block}.theme-toggle:focus-visible{outline-offset:4px;opacity:1;outline:1px solid}.theme-toggle:hover,.menu-burger:hover{opacity:.45}.menu-burger{width:28px;height:28px;color:inherit;cursor:pointer;background:0 0;border:0;flex:none;padding:0;display:none;position:relative}.menu-burger-bars,.menu-burger-x{position:absolute;inset:0}.menu-burger-bars,.menu-burger-bars:before,.menu-burger-bars:after,.menu-burger-x:before,.menu-burger-x:after{content:"";background:currentColor;width:16px;height:1px;position:absolute;left:6px}.menu-burger-bars{top:13px}.menu-burger-bars:before{top:-5px}.menu-burger-bars:after{top:5px}.menu-burger-x{display:none}.menu-burger-x:before,.menu-burger-x:after{top:13px}.menu-burger-x:before{transform:rotate(45deg)}.menu-burger-x:after{transform:rotate(-45deg)}.menu-burger[aria-expanded=true] .menu-burger-bars{display:none}.menu-burger[aria-expanded=true] .menu-burger-x{display:block}.menu-burger:focus-visible{outline-offset:4px;opacity:1;outline:1px solid}.navlinks-measure{visibility:hidden;pointer-events:none;gap:26px;width:0;height:0;display:flex;position:absolute;top:0;left:0;overflow:hidden}.nav.is-compact .menu-burger{display:inline-flex}.nav.is-compact:not(.is-open) .navlinks:not(.navlinks-measure){display:none}.nav.is-compact.is-open .navlinks:not(.navlinks-measure){z-index:3;background:var(--background);border-bottom:1px solid var(--line);flex-direction:column;gap:0;padding:6px 0 10px;display:flex;position:absolute;top:100%;left:0;right:0}.nav.is-compact.is-open .navlinks a{border-top:1px solid var(--line);padding:14px 0}.logo-image-dark,[data-theme=dark] .logo.has-alt .logo-image-light{display:none}[data-theme=dark] .logo.has-alt .logo-image-dark{display:block}[data-theme=dark] .logo:not(.has-alt) .logo-image{filter:brightness(0)invert()}.hero{border-bottom:1px solid var(--line);padding:28px 0 4vw;display:block}.hero-kicker{text-transform:uppercase;letter-spacing:.12em;margin-bottom:24px;font-size:11px}.hero h1{letter-spacing:-.09em;overflow-wrap:break-word;max-width:100%;margin:0 0 7vw;font-size:clamp(72px,17vw,270px);font-weight:800;line-height:.78}.hero-bottom{gap:var(--gap);grid-template-columns:1fr 1fr;max-width:1000px;font-size:clamp(20px,2.2vw,34px);display:grid}.showreel{aspect-ratio:16/9;background:var(--media-frame);width:100%;margin:8vh 0 0;position:relative;overflow:hidden}.showreel-video,.showreel-embed{background:var(--media-frame);border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.showreel-video{object-fit:cover}.showreel-play,.showreel-status{z-index:1;border:1px solid var(--text);background:var(--text);color:var(--bg);text-transform:uppercase;letter-spacing:.12em;font-size:11px;position:absolute;left:20px}.showreel-play{cursor:pointer;padding:17px 22px;transition:opacity .35s,background .35s,color .35s;bottom:20px}.showreel-play:hover{opacity:.72}.showreel-status{margin:0;padding:10px 12px;bottom:78px}.site :focus-visible{outline:1px solid var(--text);outline-offset:4px}.skip-link{z-index:30;background:var(--text);color:var(--bg);text-transform:uppercase;letter-spacing:.1em;padding:12px 16px;font-size:11px;position:absolute;top:0;left:0;transform:translateY(-120%)}.skip-link:focus{transform:none}.marquee{white-space:nowrap;border-bottom:1px solid var(--line);text-transform:uppercase;letter-spacing:.1em;padding:16px 0;font-size:11px;overflow:hidden}.marquee-track{width:max-content;animation:70s linear infinite move;display:flex}.marquee-group{flex:none;display:flex}.marquee-group span{padding-right:2.5em}@keyframes move{to{transform:translate(-50%)}}@keyframes rise{0%{opacity:0;transform:translateY(18px)}}section{border-bottom:1px solid var(--line);padding:9vw 0}.section-head{gap:var(--gap);grid-template-columns:180px 1fr;margin-bottom:70px;display:grid}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);font-size:10px}.section-title{letter-spacing:-.07em;overflow-wrap:break-word;max-width:100%;margin:0;font-size:clamp(42px,7vw,100px);font-weight:700;line-height:.86}.intro{letter-spacing:-.035em;max-width:1000px;font-size:clamp(24px,3vw,46px)}.works{gap:var(--gap);grid-template-columns:repeat(2,1fr);display:grid}.work{width:100%;color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;margin:0;padding:0;display:block}.work-media{aspect-ratio:16/10;background:var(--media);position:relative;overflow:hidden}.work-media img,.work-media video{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.7,.2,1);display:block}.work-media.is-portrait .work-media-fill{z-index:0;object-fit:cover;filter:blur(40px)brightness(.78)saturate(1.08);pointer-events:none;width:calc(100% + 112px);max-width:none;height:calc(100% + 112px);position:absolute;inset:-56px}.work-media.is-portrait .work-media-frame{z-index:1;object-fit:contain;object-position:center;width:100%;height:100%;position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.work:hover .work-media:not(.is-portrait) img,.work:hover .work-media:not(.is-portrait) video,.work:hover .work-media.is-portrait .work-media-frame{transform:scale(1.035)}}.work-meta{border-top:1px solid var(--text);text-transform:uppercase;letter-spacing:.05em;justify-content:space-between;align-items:baseline;gap:20px;margin-top:10px;padding:13px 0 0;font-size:11px;display:flex}.work-meta span:first-child{overflow-wrap:anywhere;min-width:0}.work-meta span:last-child{text-align:right;flex:none;max-width:46%}.works-more{border:1px solid var(--text);background:var(--text);width:fit-content;color:var(--bg);text-transform:uppercase;letter-spacing:.1em;margin:56px auto 0;padding:17px 28px;font-size:11px;transition:background .35s,color .35s;display:flex}.works-more:hover{color:var(--text);background:0 0}.work-summary{-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:38em;height:2.7em;margin:12px 0 0;font-size:16px;line-height:1.35;display:-webkit-box;overflow:hidden}.work-note{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:8px 0 0;font-size:11px}.work-dialog{background:var(--bg);width:100%;max-width:none;height:100%;max-height:none;color:var(--text);border:0;margin:0;padding:0}.work-dialog-sheet{animation:.55s cubic-bezier(.2,.7,.2,1) rise}.work-dialog::backdrop{background:var(--bg)}.work-dialog-bar{z-index:2;height:72px;padding:0 var(--pad);background:var(--overlay);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.work-dialog-tools{align-items:center;gap:18px;display:flex}.work-dialog-close{color:inherit;text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:0 0;border:0;padding:0;font-size:11px;transition:opacity .35s}.work-dialog-close:hover{opacity:.45}.work-dialog-body{padding:7vh var(--pad) 10vh}.work-dialog-lead{letter-spacing:-.03em;max-width:920px;margin:28px 0 0;font-size:clamp(20px,2.2vw,34px);line-height:1.25}.work-dialog-video,.work-dialog-gallery img{background:var(--media);object-fit:cover;width:100%;display:block}.work-dialog-video{aspect-ratio:16/9;border:0;margin-top:6vh}.work-dialog-gallery{gap:var(--gap);margin-top:var(--gap);grid-template-columns:1fr 1fr;display:grid}.work-dialog-gallery img{aspect-ratio:16/10}.work-credits{border-top:1px solid var(--line);margin:8vh 0 0}.work-credits div{gap:var(--gap);border-bottom:1px solid var(--line);grid-template-columns:180px 1fr;padding:18px 0;display:grid}.work-credits dt{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0;font-size:11px}.work-credits dd{letter-spacing:-.03em;margin:0;font-size:clamp(20px,2vw,28px)}.team{gap:var(--gap);grid-template-columns:repeat(4,1fr);display:grid}.person{overflow:hidden}.person img{aspect-ratio:3/4;object-fit:cover;filter:grayscale();width:100%;height:auto;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .7s cubic-bezier(.2,.7,.2,1);display:block}@media (hover:hover) and (pointer:fine){.person:hover img{filter:grayscale(0);transform:scale(1.03)}}.person-name{overflow-wrap:break-word;margin-top:12px;font-size:20px}.person-role{color:var(--muted);text-transform:uppercase;margin-top:5px;font-size:11px}.services{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:0;display:grid}.service{border-bottom:1px solid var(--line);letter-spacing:-.04em;justify-content:space-between;gap:16px;padding:25px 0;font-size:clamp(24px,3vw,42px);display:flex}.service>span{overflow-wrap:break-word;min-width:0}.service small{color:var(--muted);letter-spacing:.04em;font-size:11px}.partner-marquee{width:calc(100% + 2 * var(--pad));margin-left:calc(var(--pad) * -1);overflow:hidden}.partner-track{width:max-content;animation:120s linear infinite move;display:flex}.partner-marquee:hover .partner-track{animation-play-state:paused}.partner-group{flex:none;align-items:center;margin:0;padding:0;list-style:none;display:flex}.partner-group.has-caption{align-items:flex-start}.partner{flex:none;justify-content:center;align-items:center;height:100px;padding-right:clamp(72px,8vw,140px);display:flex}.partner.has-caption{flex-direction:column;gap:14px;height:auto}.partner-caption{text-align:center;overflow-wrap:break-word;width:180px;margin:0;font-size:14px;line-height:1.35}.partner-ink{width:0;height:0;position:absolute}.partner-ink feFlood{flood-color:var(--text)}.partner-logo{width:max-content;max-width:340px;height:100px;display:block;position:relative}.partner-logo img{object-fit:contain;width:auto;max-width:100%;height:100px;filter:var(--ink);display:block}@media (hover:hover) and (pointer:fine){.partner-logo{transition:opacity .45s}.partner:hover .partner-logo{opacity:.45}}.faq{border-top:1px solid var(--line)}.faq-item{border-bottom:1px solid var(--line)}.faq-heading{font:inherit;margin:0}.faq-trigger{width:100%;color:inherit;text-align:left;cursor:pointer;letter-spacing:-.04em;background:0 0;border:0;justify-content:space-between;align-items:flex-start;gap:24px;padding:25px 0;font-size:clamp(22px,2.6vw,40px);line-height:1.05;transition:opacity .35s;display:flex}.faq-trigger:hover{opacity:.55}.faq-trigger span{overflow-wrap:break-word;min-width:0}.faq-trigger small{color:var(--muted);letter-spacing:.04em;flex:none;margin-top:.35em;font-size:11px}.faq-panel{grid-template-rows:0fr;transition:grid-template-rows .5s cubic-bezier(.2,.7,.2,1);display:grid}.faq-panel.open{grid-template-rows:1fr}.faq-panel-inner{min-height:0;overflow:hidden}.faq-answer{opacity:0;max-width:760px;margin:0;padding:0 0 28px;font-size:clamp(16px,1.4vw,20px);line-height:1.45;transition:opacity .4s,transform .45s cubic-bezier(.2,.7,.2,1);transform:translateY(-8px)}.faq-panel.open .faq-answer{opacity:1;transform:none}.contact{grid-template-columns:1fr 1fr;align-items:center;gap:10vw;display:grid}.contact-copy{letter-spacing:-.07em;max-width:100%;font-size:clamp(42px,7vw,100px);line-height:.86;font-weight:var(--font-primary-weight,400);overflow-wrap:break-word;margin:0}.site.has-secondary-font h2.contact-copy{font-weight:var(--font-primary-weight,400)}.form{align-content:start;gap:28px;display:grid}.form label{flex-direction:column;align-items:stretch;gap:10px;display:flex}.form label span{text-transform:uppercase;letter-spacing:.1em;color:var(--muted);font-size:12px;line-height:1.2}.form input,.form textarea{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--text);letter-spacing:0;text-transform:none;background:0 0;border-radius:0;outline:none;padding:12px 0;font-size:20px;line-height:1.4;transition:border-color .35s;display:block}.form input::placeholder,.form textarea::placeholder{color:var(--foreground-faint)}.form input:focus,.form textarea:focus{border-bottom-color:var(--text)}.form input:focus-visible,.form textarea:focus-visible{outline:1px solid var(--text);outline-offset:4px}.form textarea{resize:vertical;min-height:140px}.submit{border:1px solid var(--text);background:var(--text);color:var(--bg);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;justify-self:start;margin-top:4px;padding:17px 28px;font-size:11px;transition:background .35s,color .35s}.submit:hover:not(:disabled){color:var(--text);background:0 0}.submit:disabled{opacity:.55;cursor:default}.form{position:relative}.form label.form-consent{flex-direction:row;align-items:flex-start;gap:12px}.form label.form-consent input{width:18px;height:18px;accent-color:var(--text);flex:none;margin:2px 0 0;padding:0}.form label.form-consent span{letter-spacing:0;text-transform:none;color:var(--text);font-size:14px;line-height:1.4}.form-honey{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.form-status{letter-spacing:0;text-transform:none;color:var(--foreground-muted);margin:0;font-size:13px;line-height:1.4}.form-status.is-error{color:var(--danger)}.form-success p{letter-spacing:-.04em;margin:0;font-size:clamp(28px,3vw,42px);line-height:1.05}.form-actions{flex-wrap:wrap;gap:12px;display:flex}.form-actions a{border:1px solid var(--text);background:var(--text);color:var(--bg);text-transform:uppercase;letter-spacing:.1em;padding:17px 22px;font-size:11px;display:inline-flex}.form-actions a+a{color:var(--text);background:0 0}.content-notice{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:28px 0 0;font-size:12px}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.footer{text-transform:uppercase;letter-spacing:.08em;overflow-wrap:anywhere;flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:20px;padding:30px 0;font-size:10px;display:flex}.footer address{margin:0;font-style:normal}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:8px 14px;display:flex}.contact-links{letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;gap:8px 22px;margin-top:28px;font-size:12px;display:flex}html.js .reveal{opacity:0;transition:opacity .7s,transform .7s;transform:translateY(24px)}html.js .reveal.visible{opacity:1;transform:none}main section{scroll-margin-top:88px}@media (max-width:800px){.nav{height:72px;min-height:72px}.hero-bottom,.contact{grid-template-columns:1fr}.showreel{margin:6vh 0 0}.showreel-play{bottom:16px;left:16px}.showreel-status{left:16px}.section-head{grid-template-columns:1fr;gap:20px;margin-bottom:45px}.works,.work-dialog-gallery{grid-template-columns:1fr}.work-credits div{grid-template-columns:1fr;gap:8px}.team{grid-template-columns:repeat(2,1fr)}.services{grid-template-columns:1fr}.contact-copy{margin-bottom:30px}}@media (max-width:480px){.site{padding:0 16px}.team{gap:16px}.hero h1{font-size:25vw}.partner-marquee{width:calc(100% + 32px);margin-left:-16px}.partner{height:100px;padding-right:64px}.partner.has-caption{height:auto;padding-right:48px}.partner-caption{width:140px}.partner-logo{max-width:220px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track,.partner-track,.work-media img,.work-media video,.work:hover img,.work:hover video,.person img,.person:hover img,.partner img,.faq-panel,.faq-answer,.work-dialog-sheet,.navlinks a,.logo,.back-link,.submit,.works-more,.work-dialog-close,.showreel-play,.form input,.form textarea,.reveal{transition:none;animation:none;transform:none}.faq-answer,.faq-panel.open .faq-answer{opacity:1}html.js .reveal,html.js .reveal.visible,.reveal,.reveal.visible{opacity:1;transform:none}}@media (max-height:480px){.hero h1{margin-bottom:24px}}
