feat(film): pillar 3 — every job runs on rails

This commit is contained in:
Satyam Rastogi
2026-05-30 03:09:15 +05:30
parent 242b97072f
commit 56dcac82f7
@@ -1,5 +1,42 @@
import { AbsoluteFill, Sequence } from "remotion";
import { PillarTitle } from "../components/PillarTitle";
import { ScreenFrame } from "../components/ScreenFrame";
import { KenBurns } from "../components/KenBurns";
import { Cursor } from "../components/Cursor";
import { Caption } from "../components/Caption";
import { DURATIONS } from "../timing";
export const Pillar3Rails: React.FC = () => (
<PillarTitle index="③" title="Pillar 3" subtitle="(stub)" startFrame={0} durationInFrames={DURATIONS.pillar3} />
const D = DURATIONS.pillar3;
const TITLE = 75;
export const Pillar3Rails: React.FC = () => {
const afterTitle = D - TITLE;
const beat = Math.floor(afterTitle / 3);
const last = afterTitle - beat * 2;
return (
<AbsoluteFill>
<Sequence durationInFrames={TITLE}>
<PillarTitle index="③" title="Every job runs on rails" subtitle="From inspection to estimate to crew" startFrame={0} durationInFrames={TITLE} />
</Sequence>
<Sequence from={TITLE} durationInFrames={beat}>
<KenBurns durationInFrames={beat}><ScreenFrame captureId="projects" /></KenBurns>
<Cursor from={{ x: 800, y: 360 }} to={{ x: 1300, y: 440 }} moveStartFrame={16} clickAtFrame={38} />
<Caption text="Every job on a clear track." startFrame={8} durationInFrames={beat - 16} />
</Sequence>
<Sequence from={TITLE + beat} durationInFrames={beat}>
<KenBurns durationInFrames={beat}><ScreenFrame captureId="estimates" /></KenBurns>
<Cursor from={{ x: 900, y: 400 }} to={{ x: 1450, y: 470 }} moveStartFrame={16} clickAtFrame={38} />
<Caption text="Inspections and estimates, built in." startFrame={8} durationInFrames={beat - 16} />
</Sequence>
{/* Sub portal — sees only their task */}
<Sequence from={TITLE + beat * 2} durationInFrames={last}>
<KenBurns durationInFrames={last}><ScreenFrame captureId="sub-dashboard" /></KenBurns>
<Cursor from={{ x: 700, y: 380 }} to={{ x: 1200, y: 460 }} moveStartFrame={16} clickAtFrame={38} />
<Caption text="Subcontractors get a focused portal — just their task, nothing else." startFrame={8} durationInFrames={last - 16} />
</Sequence>
</AbsoluteFill>
);
};