.t-marquee{letter-spacing:-.055em;white-space:nowrap;font-size:clamp(2.75rem,8vw,8.5rem);font-weight:500;line-height:1.05}.t-outline{color:#0000;-webkit-text-stroke:max(1px, .012em) var(--fg)}.t-case{letter-spacing:-.065em;font-size:clamp(3rem,11.5vw,13rem);font-weight:500;line-height:.88}.t-story{letter-spacing:-.04em;text-wrap:pretty;max-width:30ch;font-size:clamp(1.5rem,2.9vw,3rem);font-weight:500;line-height:1.1}.on-film{--fg:#efefef;--muted:#efefefb3;--line:#efefef33;color:var(--fg);background:#0e0e0e}.film-video{opacity:.74}.film-scrim{background:radial-gradient(130% 95% at 55%,#0e0e0e00 30%,#0e0e0e99 100%),linear-gradient(#0e0e0e9e 0%,#0e0e0e1f 34%,#0e0e0e4d 62%,#0e0e0eeb 100%)}.marquee-mark{width:auto;height:.42em;display:block}.desk-row{position:relative}.desk-row:after{content:"";inset-inline:0;background:var(--accent);transform-origin:100%;height:1px;transition:transform .7s var(--ease);position:absolute;bottom:-1px;transform:scaleX(0)}.desk-title{transition:transform .7s var(--ease)}@media (hover:hover){.desk-row:hover:after{transform-origin:0;transform:scaleX(1)}.desk-row:hover .desk-title{transform:translate(.25em)}}.desk-row:focus-visible:after{transform:scaleX(1)}.beats-track{scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:.5rem;overflow-x:auto}.beats-track::-webkit-scrollbar{display:none}.beat{scroll-snap-align:start}.cursor-pill{background:var(--accent);color:#fff;white-space:nowrap;transition:transform .35s var(--ease);border-radius:999px;padding:.5rem .85rem;font-size:.8125rem;font-weight:500;line-height:1;display:inline-block;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(0)}.cursor-pill[data-on]{transform:translate(16px,16px)scale(1)}.next-title>span:first-child{transition:transform .9s var(--ease)}@media (hover:hover){.next-case:hover .next-title>span:first-child{transform:translate(.12em)}}.case-entry-label{color:#fff;background:#121212db;border:1px solid #ffffff3d;transition:background .18s,transform .18s}@media (hover:hover){.case-entry:hover .case-entry-label{background:#e5441d;transform:translateY(-3px)}}.case-entry:active .case-entry-label{transform:scale(.97)}.case{background:color-mix(in srgb, var(--bg) 94%, transparent);padding-bottom:5rem}.case-title{letter-spacing:-.055em;text-wrap:balance;font-size:clamp(2.75rem,6.5vw,6.5rem);font-weight:500;line-height:.98}.case-reel{aspect-ratio:16/9;object-fit:contain;background:#141414;width:100%;max-height:58svh}@media (prefers-reduced-motion:reduce){.case-entry-label{transition:none}}.scroll-progress{display:none}@media (prefers-reduced-motion:no-preference){.film-dot{animation:1.6s ease-in-out infinite film-pulse}@keyframes film-pulse{50%{opacity:.25}}.marquee-track{animation:42s linear infinite marquee}.marquee:hover .marquee-track{animation-play-state:paused}@keyframes marquee{to{transform:translate(-50%)}}@supports (animation-timeline:view()){.film-layer{animation:linear both film-drift;animation-timeline:view();animation-range:exit}@keyframes film-drift{to{opacity:.3;transform:translateY(22%)scale(1.06)}}.marquee-lean{animation:linear both marquee-lean;animation-timeline:view()}@keyframes marquee-lean{0%{translate:6vw}to{translate:-6vw}}.reel-in{animation:linear both reel-open;animation-timeline:view();animation-range:entry cover 38%}@keyframes reel-open{0%{clip-path:inset(9% 7% round 28px)}to{clip-path:inset(0 round 4px)}}.reel-in .reel-video{animation:linear both reel-zoom;animation-timeline:view();animation-range:entry cover 50%}@keyframes reel-zoom{0%{transform:scale(1.16)}}.beat-still{animation:linear both beat-zoom;animation-timeline:view(inline);animation-range:entry cover 50%}@keyframes beat-zoom{0%{transform:scale(1.12)}}}@supports (animation-timeline:view()) and (view-timeline-name:--beats){@media (min-width:768px){.beats{height:calc(var(--beats) * 34vh + 100dvh);view-timeline:--beats block}.beats-pin{flex-direction:column;justify-content:center;height:calc(100dvh - 4rem);display:flex;position:sticky;top:4rem;overflow:clip;container-type:inline-size}.beats-track{width:max-content;animation:linear both beats-slide;animation-timeline:--beats;animation-range:contain;overflow:visible}@keyframes beats-slide{to{transform:translate(calc(100cqw - 100%))}}}}}@supports (animation-timeline:scroll()){.scroll-progress{z-index:45;background:var(--accent);transform-origin:0;pointer-events:none;height:2px;animation:linear both scroll-progress;animation-timeline:scroll(root);display:block;position:fixed;inset:0 0 auto}@keyframes scroll-progress{0%{transform:scaleX(0)}}}
