const APPLE_SANS = "-apple-system, BlinkMacSystemFont, 'SF Pro Display', 'Inter', 'Helvetica Neue', Arial, sans-serif"; const APPLE_TEXT = "-apple-system, BlinkMacSystemFont, 'SF Pro Text', 'Inter', 'Helvetica Neue', Arial, sans-serif"; const LeadHero = ({ variant = "split", onSubmit }) => { const bp = useBreakpoint(); const isMobile = bp === "mobile"; const isTablet = bp === "tablet"; if (variant === "stat") { return ; } const marqueeHeight = isMobile ? 300 : isTablet ? 400 : 480; const tileHeight = isMobile ? 280 : isTablet ? 380 : 460; return (
Available Spots — Only 3 of 10 left

{isMobile ? ( <>A month of scroll-stopping AI video ads. ) : ( <>A month of
scroll-stopping AI video ads. )}

6 AI video ads. 25 static creatives. Shipped in 30 days.{isMobile ? " " :
} You keep everything. Even if we never work together again.

{e.currentTarget.style.transform="translateY(-3px) scale(1.02)";e.currentTarget.style.filter="brightness(1.08)";}} onMouseLeave={(e)=>{e.currentTarget.style.transform="translateY(0) scale(1)";e.currentTarget.style.filter="none";}} onMouseDown={(e)=>{e.currentTarget.style.transform="translateY(0) scale(0.98)";}} onMouseUp={(e)=>{e.currentTarget.style.transform="translateY(-3px) scale(1.02)";}} > Claim your free month See recent work
{/* Rotating ad showcase */}
); }; // "FREE" — uppercase, gradient navy text, thick pale-blue underline. Pops inside the hero headline. const FreeWord = () => ( {/* Gradient text */} free {/* Thick pale-blue underline bar */} ); const HeroMeta = ({ label }) => ( {label} ); const AdMarquee = ({ tileHeight = 460 }) => { // Interleave real videos + images so the marquee has visual rhythm. // Only includes ads with the right media format: videos need `media`, images need `mediaMarquee` (9:16). const ads = (() => { const vids = Ads.filter(a => a.kind === "video" && a.media); const imgs = Ads.filter(a => a.kind === "image" && a.mediaMarquee); const out = []; const max = Math.max(vids.length, imgs.length); for (let i = 0; i < max; i++) { if (vids[i]) out.push(vids[i]); if (imgs[i]) out.push(imgs[i]); } return out.slice(0, 10); })(); const tileW = Math.round(tileHeight * 9 / 16); const itemW = tileW + 24; const halfWidth = ads.length * itemW; // Duration scales with distance so speed stays constant regardless of tile size. const pxPerSecond = 70; const duration = halfWidth / pxPerSecond; const Tile = ({ ad, i }) => (
{ e.currentTarget.style.transform = "translateY(-6px)"; }} onMouseLeave={(e) => { e.currentTarget.style.transform = "translateY(0)"; }}> {/* Use 9:16 variant for images in the marquee; videos use ad.media as-is. */}
); return (
{ads.map((ad, i) => )} {ads.map((ad, i) => )}
); }; const StatHero = ({ onSubmit, isMobile }) => (
$47M tracked ad spend · 4.2× avg ROAS

A free month of ads{isMobile ? " " :
}that actually convert.

6 AI video ads. 25 statics. Shipped in 30 days. You keep every file. Zero upfront cost. Zero contract.

); window.LeadHero = LeadHero;