/* hero.jsx — five hero options via `variant` prop. spotlight | editorial | minimal | statement | marquee */ const { useEffect: useEffectHero, useRef: useRefHero } = React; const HERO_STREAM = 'https://stream.mux.com/tLkHO1qZoaaQOUeVWo8hEBeGQfySP02EPS02BmnNFyXys.m3u8'; const HERO_MP4 = 'https://d8j0ntlcm91z4.cloudfront.net/user_38xzZboKViGWJOttwIXH07lWA1P/hf_20260328_065045_c44942da-53c6-4804-b734-f9e07fc22e08.mp4'; /* Standard HLS video (Spotlight / Editorial) */ function HeroVideo() { const ref = useRefHero(null); useEffectHero(() => { const video = ref.current; if (!video) return; let hls; const start = () => { video.play().catch(() => {}); }; if (video.canPlayType('application/vnd.apple.mpegurl')) { video.src = HERO_STREAM; video.addEventListener('loadedmetadata', start); } else if (window.Hls && window.Hls.isSupported()) { hls = new window.Hls({ enableWorker: false }); hls.loadSource(HERO_STREAM); hls.attachMedia(video); hls.on(window.Hls.Events.MANIFEST_PARSED, start); } return () => { if (hls) hls.destroy(); }; }, []); return