:root{--color-bg:#fafaf9;--color-surface:#fff;--color-card:#f1f1ef;--color-tile:#f3f3f1;--color-text:#111110;--color-text-muted:#6f6e6b;--color-text-faint:#b6b4af;--color-border:#e3e2de;--color-border-strong:#cfcdc7;--color-dark:#0d1113;--color-dark-text:#f2f0ea;--color-dark-muted:#8d948f;--color-accent:#d9583a;--font-sans:"Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;--radius-sm:6px;--radius-md:14px;--radius-lg:24px;--shadow-card:0 2px 6px #0d11130d, 0 24px 60px #0d11131f;--shadow-tile:0 1px 2px #0d11130a;--space-section:clamp(80px, 15vw, 480px);--space-block:clamp(36px, 8vw, 260px);--gutter:clamp(20px, 1.7vw, 64px);--page-max:100%;--head-indent:0px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--duration-hover:.36s;--text-xs:clamp(.6875rem, .8vw, 40rem);--text-sm:clamp(.8125rem, 1vw, 40rem);--text-base:clamp(1rem, 1.18vw, 40rem);--text-intro:clamp(1.25rem, 2.5vw, 40rem);--text-card-title:clamp(1.375rem, 2.5vw, 40rem);--text-work-title:clamp(1rem, 1.53vw, 40rem);--text-h2:clamp(1.875rem, 3.75vw, 40rem);--text-h1:clamp(2.75rem, 7.2vw, 40rem);--text-tagline:clamp(1.125rem, 2.3vw, 40rem);--text-numeral:clamp(3rem, 6.5vw, 40rem);--text-contact:clamp(1.375rem, 2.5vw, 40rem);--text-email:clamp(1.75rem, 5.4vw, 40rem)}@media (width>=860px){:root{--head-indent:clamp(48px, 5.8vw, 120px)}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;line-height:1.55;overflow-x:hidden}h1,h2,h3,h4{font-family:var(--font-sans);letter-spacing:-.015em;margin:0;font-weight:400;line-height:1.05}p{margin:0}a{color:inherit;text-decoration:none}img,video,picture{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}ul,ol{margin:0;padding:0;list-style:none}figure{margin:0}:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px;border-radius:2px}.skip-link{z-index:100;background:var(--color-dark);color:var(--color-dark-text);border-radius:var(--radius-sm);transition:transform .2s var(--ease-out);padding:10px 14px;position:absolute;top:16px;left:16px;transform:translateY(-200%)}.skip-link:focus-visible{transform:translateY(0)}.container{width:100%;max-width:var(--page-max);padding-inline:var(--gutter);margin-inline:auto}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.eyebrow{font-size:var(--text-xs);letter-spacing:.16em;text-transform:uppercase;color:var(--color-text-muted);font-weight:400}.cover{position:relative;overflow:hidden}.cover>picture,.cover>img,.cover>video{width:100%;height:100%;position:absolute;inset:0}.cover>picture>img{object-fit:cover;object-position:center;width:100%;height:100%}.cover>img,.cover>video{object-fit:cover;object-position:center}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.header{z-index:5;justify-content:center;padding-top:clamp(20px,2.6vw,44px);display:flex;position:absolute;inset:0 0 auto}.header__logo{width:clamp(150px,14.5vw,260px);display:block}.header__logo img{width:100%;height:auto}.header--page{padding-top:clamp(28px,4vw,56px);position:static}.hero{background:var(--color-dark);height:100svh;min-height:560px;color:var(--color-dark-text);align-items:flex-end;display:flex;position:relative;overflow:hidden}.hero__media{position:absolute;inset:0;overflow:hidden}.hero__media video,.hero__media img{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.hero__scrim{background:linear-gradient(#0d111300 30%,#0d111329 60%,#0d111399 100%),linear-gradient(#0d11134d 0%,#0d111300 26%);position:absolute;inset:0}.hero__content{grid-template-columns:1fr;align-items:end;gap:24px;width:100%;padding-bottom:clamp(36px,5.2vw,96px);display:grid;position:relative}.hero__title{font-size:var(--text-h1);letter-spacing:-.02em;font-kerning:none;text-rendering:optimizespeed;line-height:1}.hero__tagline{font-size:var(--text-tagline);color:#f2f0eaf0;max-width:34ch;line-height:1.22}@media (width>=860px){.hero__content{grid-template-columns:minmax(0,1fr) minmax(360px,42%);gap:clamp(32px,4vw,96px)}.hero__title{white-space:nowrap}.hero__tagline{max-width:none}}.section{padding-block:var(--space-section);position:relative}.section__head{max-width:100%;padding-left:var(--head-indent);margin-bottom:var(--space-block);position:relative}.section__title{font-size:var(--text-h2);line-height:1.06;position:relative}.section__title:before{content:"";left:calc(var(--gutter) * -.55);background:var(--color-accent);border-radius:50%;width:6px;height:6px;position:absolute;top:.54em;transform:translateY(-50%)}@media (width>=860px){.section__title:before{left:calc(-1 * var(--head-indent))}}.section__intro{font-size:var(--text-h2);letter-spacing:-.015em;color:var(--color-text-muted);margin-top:.06em;font-weight:300;line-height:1.06}.services__head{padding-top:var(--space-section)}.stage{position:relative}.stage__bg{z-index:0;clip-path:circle(0% at 50% 62%);height:100svh;position:sticky;top:0}.stage__bg .cover{position:absolute;inset:0}.cards{z-index:1;margin-top:-100svh;padding-top:40vh;padding-bottom:clamp(48px,8vw,140px);position:relative}.card{top:var(--card-top,10vh);background:var(--color-card);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-card);transform-origin:50% 0;margin:0 auto 5vh;position:sticky}.card__inner{grid-template-columns:1fr;gap:22px;padding:clamp(24px,2.8vw,56px);display:grid}.card__number{font-size:var(--text-numeral);letter-spacing:-.03em;color:var(--color-text-faint);line-height:.82}.card__text{flex-direction:column;gap:16px;max-width:56ch;display:flex}.card__title{font-size:var(--text-card-title);line-height:1.06}.card__rule{background:var(--color-border-strong);height:1px}.card__body{color:var(--color-text);line-height:1.45;font-size:var(--text-base)}.card__figure{aspect-ratio:6/5;border-radius:var(--radius-md);background:var(--color-tile)}@media (width>=860px){.card__inner{grid-template-columns:minmax(100px,8%) minmax(0,1fr) minmax(260px,25%);align-items:stretch;gap:clamp(28px,3vw,80px)}.card__figure{aspect-ratio:8/7}.card__number{grid-column:1;align-self:end}.card__text{grid-column:2;padding-top:4px;padding-right:4%}.card__rule{margin-top:auto}.card__figure{grid-column:3;align-self:stretch}}@media (width<=859px){.stage__bg{clip-path:circle(0% at 50% 60%);height:60svh}.cards{margin-top:-60svh;padding-top:26vh}.card{margin-bottom:20px;position:relative;top:auto}.card__inner{grid-template-areas:"figure""number""text"}.card__figure{aspect-ratio:4/3;grid-area:figure}.card__number{grid-area:number;font-size:clamp(3rem,12vw,5rem)}.card__text{grid-area:text}}.work__grid{grid-template-columns:1fr;gap:clamp(32px,3.6vw,72px) clamp(20px,2.4vw,44px);display:grid}.work-card__figure{aspect-ratio:16/9;border-radius:var(--radius-sm);background:var(--color-dark);position:relative;overflow:hidden}.work-card__video{object-fit:contain;background:var(--color-dark);width:100%;height:100%;position:absolute;inset:0}.work-card__cover{width:100%;height:100%;transition:opacity .6s var(--ease-out), visibility 0s linear 0s;display:block;position:absolute;inset:0;overflow:hidden}.work-card__cover:focus-visible{outline-offset:-4px}.work-card__cover>picture{width:100%;height:100%;position:absolute;inset:0}.work-card__cover>picture>img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform 1s var(--ease-out)}.work-card__cover:hover>picture>img,.work-card__cover:focus-visible>picture>img{transform:scale(1.03)}.work-card--playing .work-card__cover{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .6s var(--ease-out), visibility 0s linear .6s}.work-card__caption{flex-direction:column;gap:4px;margin-top:clamp(14px,1.2vw,22px);display:flex}.work-card__title{font-size:var(--text-work-title);font-weight:300}.work-card__credit{font-size:var(--text-sm);color:var(--color-text-muted)}@media (width>=700px){.work__grid{grid-template-columns:1fr 1fr}}.work{padding-bottom:calc(var(--space-section) * .8)}.clients{padding-top:calc(var(--space-section) * .8);padding-bottom:calc(var(--space-section) * .8)}.contact{padding-top:calc(var(--space-section) * .8)}.clients__grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid;position:relative}.client{background:var(--color-tile);border-radius:var(--radius-md);height:clamp(96px,10.5vw,200px);box-shadow:var(--shadow-tile);transition:background-color var(--duration-hover) var(--ease-out);justify-content:center;align-items:center;display:flex}.client:hover{background:#eeede9}.client img{object-fit:contain;object-position:center;opacity:.82;width:60%;height:44%;transition:opacity var(--duration-hover) var(--ease-out), transform var(--duration-hover) var(--ease-out);display:block}.client:hover img{opacity:1;transform:translateY(-2px)}@media (width>=700px){.clients__grid{grid-template-columns:repeat(3,1fr);gap:clamp(16px,1.4vw,26px)}}.contact__email{font-size:var(--text-email);letter-spacing:-.03em;color:var(--color-text);overflow-wrap:anywhere;margin-top:calc(var(--space-block) * -.45);padding-left:var(--head-indent);font-weight:400;line-height:1}.contact__actions{padding-left:var(--head-indent);flex-wrap:wrap;gap:12px;margin-top:clamp(24px,2.6vw,48px);display:flex}.button{border:1px solid var(--color-border-strong);min-height:48px;color:var(--color-text);font-size:var(--text-sm);letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;transition:background-color var(--duration-hover) var(--ease-out), border-color var(--duration-hover) var(--ease-out), color var(--duration-hover) var(--ease-out);background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:0 1.6em;line-height:1;display:inline-flex}.button:hover,.button:focus-visible{border-color:var(--color-text);background:var(--color-tile)}.button--solid{background:var(--color-text);border-color:var(--color-text);color:var(--color-bg)}.button--solid:hover,.button--solid:focus-visible{color:var(--color-bg);background:#2b2b29;border-color:#2b2b29}.footer__band{background:#000;justify-content:center;align-items:center;height:clamp(72px,8vw,140px);display:flex}.footer__band img{opacity:.9;width:auto;height:38%}.footer__row{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.footer__grid{grid-template-columns:1fr;align-items:center;display:grid}.footer__brand{align-items:center;padding:clamp(24px,2.6vw,48px) 0;display:flex}.footer__brand img{width:clamp(170px,16vw,300px);height:auto}.footer__links{flex-direction:column;justify-content:center;gap:10px;padding:clamp(24px,2.6vw,48px) 0;display:flex}.footer__links a{font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--color-text-muted);transition:color var(--duration-hover) var(--ease-out);align-items:center;width:fit-content;min-height:24px;display:inline-flex}.footer__links a:hover,.footer__links a:focus-visible{color:var(--color-text)}.footer__bottom{text-align:center;font-size:var(--text-xs);letter-spacing:.08em;color:var(--color-text-muted);padding:22px 0 30px}@media (width>=700px){.footer__grid{grid-template-columns:1fr 1fr}.footer__links{border-left:1px solid var(--color-border);align-items:flex-end;padding-left:40px}}.legal{padding-top:var(--space-block);padding-bottom:var(--space-section)}.legal__inner{max-width:68ch}.legal__title{font-size:var(--text-h2);margin-bottom:14px}.legal__updated{color:var(--color-text-muted);font-size:var(--text-sm);border-bottom:1px solid var(--color-border);margin-bottom:36px;padding-bottom:28px}.legal__body h2{margin-top:44px;margin-bottom:12px;font-size:1.375rem}.legal__body h3{font-size:var(--text-base);margin-top:24px;margin-bottom:8px;font-weight:700}.legal__body p{margin-bottom:16px}.legal__body ul{margin-bottom:18px;padding-left:1.25em;list-style:outside}.legal__body li{margin-bottom:8px}.legal__body a{text-decoration:underline;-webkit-text-decoration-color:var(--color-border-strong);text-decoration-color:var(--color-border-strong);text-underline-offset:3px}.legal__body a:hover{-webkit-text-decoration-color:var(--color-accent);text-decoration-color:var(--color-accent)}.legal__back{font-size:var(--text-sm);color:var(--color-text-muted);align-items:center;gap:10px;min-height:24px;margin-bottom:36px;display:inline-flex}.legal__back:hover{color:var(--color-text)}
