/* ============================================================ NeuralScout — Page sections (Nav, Hero, About, CTA, Footer) ============================================================ */ function Nav({ overlay = false }) { const navStyle = overlay ? { ...pageStyles.nav, ...pageStyles.navOverlay, position: 'fixed', left: 0, right: 0, top: 0 } : pageStyles.nav; const linkStyle = overlay ? { ...pageStyles.navLink, ...pageStyles.navLinkOverlay } : pageStyles.navLink; return ( ); } function ThemeToggle({ overlay = false }) { const [theme, setTheme] = React.useState(() => { if (typeof document === 'undefined') return 'dark'; return document.documentElement.getAttribute('data-theme') || 'dark'; }); React.useEffect(() => { const sync = () => setTheme(document.documentElement.getAttribute('data-theme') || 'dark'); window.addEventListener('ns-theme-change', sync); return () => window.removeEventListener('ns-theme-change', sync); }, []); const toggle = () => { const next = theme === 'light' ? 'dark' : 'light'; document.documentElement.setAttribute('data-theme', next); try { localStorage.setItem('ns-theme', next); } catch(e) {} setTheme(next); window.dispatchEvent(new CustomEvent('ns-theme-change', { detail: { theme: next }})); }; const isLight = theme === 'light'; const borderColor = overlay ? 'rgba(255,255,255,0.25)' : 'var(--ns-line-2)'; const color = overlay ? 'rgba(255,255,255,0.85)' : 'var(--ns-fg-dim)'; return ( ); } const LOGO_SRC = 'assets/logos/logo.png'; function Logo({ height = 32 }) { return ( Neuralscout ); } function Hero() { return (
Real-time video analytics · v2.1

Every camera, watching.
Every frame, understood.

NeuralScout turns any 24/7 RTSP stream into live counts, dwell times, faces, plates, and demographics — plus anything you can describe in plain English.

Start free trial Watch 90-second demo
{[ { v:'12ms', l:'median inference' }, { v:'99.97%', l:'uptime SLA' }, { v:'30 fps', l:'per stream' }, ].map((s, i) => (
{s.v}
{s.l}
))}
{/* Logo row */}
DEPLOYED BY OPS & SECURITY TEAMS AT
{['NORTHWARE', 'Meridian', 'CLARIFY.io', 'Portside', 'SIGMA+', 'Yardwell'].map(l => ( {l} ))}
); } function SectionHeader({ eyebrow, title, sub, align = 'center' }) { return (
{eyebrow}

{title}

{sub &&

{sub}

}
); } function FeaturesSection() { return (
Six features. One feed. Zero new hardware.} sub="Stop re-watching footage. NeuralScout extracts the signal from every second of every camera — continuously." />
); } function DashboardSection() { return (
One place for every camera, zone, and question.} sub="Group cameras by site, compare zones side-by-side, slice by time. Set alerts. Share reports. Built for ops, security, and retail teams." />
); } function TimelineSection() { return (
From camera to chart in five steps.} sub="No models to train. No cameras to replace. Point us at your RTSP feed — we do the rest." />
); } function StatsSection() { const now = useTick(100); const t = (now % 4000) / 4000; return (
{/* bg dots */}
Running right now, across thousands of cameras.} />
{[ { v: (12400 + Math.floor(t*80)).toLocaleString(), l:'frames analyzed / second' }, { v: '1,340', l:'cameras in production' }, { v: '2.1B', l:'events indexed to date' }, { v: '98.7%', l:'detection accuracy' }, ].map((s, i) => (
{s.v}
{s.l}
))}
); } function TestimonialSection() { return (
{/* stylized portrait */}
Customer · Portside Logistics

"We replaced three dashboards and two headcount spreadsheets with NeuralScout. The VLM prompt feature alone caught a safety violation in week one."

Rhea Okonkwo
VP Operations · Portside
); } function CTASection() { return (
Ready when you are

Plug in your feed.
See insights in 60 seconds.

Free 14-day trial. No hardware changes. Cancel anytime.

{/* Decorative feed */}
); } function Footer() { return ( ); } const pageStyles = { nav: { position:'sticky', top: 0, zIndex: 40, background:'var(--ns-nav-bg)', backdropFilter:'blur(12px)', borderBottom:'1px solid var(--ns-line)', }, navOverlay: { background:'rgba(0,0,0,0.38)', backdropFilter:'blur(16px)', borderBottom:'1px solid rgba(255,255,255,0.08)', color:'#fff', }, navLinkOverlay: { color:'rgba(255,255,255,0.82)', }, navInner: { maxWidth: 1320, margin:'0 auto', padding: '14px var(--ns-pg)', display:'flex', justifyContent:'space-between', alignItems:'center', gap: 24, }, navLinks: { display:'flex', gap: 22, alignItems:'center', }, navLink: { color:'var(--ns-fg-dim)', fontSize: 13.5, textDecoration:'none', transition:'color .2s', whiteSpace:'nowrap', }, hero: { position:'relative', paddingTop: 60, paddingBottom: 80, borderBottom:'1px solid var(--ns-line)', overflow:'hidden', }, heroInner: { maxWidth: 1320, margin:'0 auto', padding: '0 var(--ns-pg)', display:'grid', gridTemplateColumns: '1fr 1.2fr', gap: 60, alignItems:'center', }, heroCopy: { maxWidth: 540 }, h1: { fontFamily:'var(--ns-display)', fontSize: 'clamp(40px, 5.5vw, 72px)', fontWeight: 500, lineHeight: 1.02, letterSpacing:'-0.03em', margin:'0 0 24px', textWrap:'balance', }, heroSub: { fontSize: 17, lineHeight: 1.55, color:'var(--ns-fg-dim)', margin: 0, textWrap:'pretty', }, heroFeed: { width: '100%' }, logoRow: { maxWidth: 1320, margin:'0 auto', padding:'80px var(--ns-pg) 0', display:'flex', flexDirection:'column', alignItems:'center', gap: 24, }, logoStrip: { display:'flex', gap: 48, alignItems:'center', flexWrap:'wrap', justifyContent:'center', }, section: { paddingTop: 'var(--ns-section)', paddingBottom: 'var(--ns-section)', }, sectionInner: { maxWidth: 1320, margin:'0 auto', padding: '0 var(--ns-pg)', }, h2: { fontFamily:'var(--ns-display)', fontSize: 'clamp(32px, 4vw, 56px)', fontWeight: 500, lineHeight: 1.05, letterSpacing:'-0.02em', margin:'0 0 20px', textWrap:'balance', }, sectionSub: { fontSize: 17, lineHeight: 1.55, color:'var(--ns-fg-dim)', margin: 0, textWrap:'pretty', }, featureGrid: { display:'grid', gridTemplateColumns:'repeat(3, 1fr)', gap: 16, }, statsWrap: { position:'relative', padding: '60px 40px', border:'1px solid var(--ns-line)', borderRadius:'var(--ns-r-4)', background:'radial-gradient(ellipse at 50% 0%, var(--ns-accent-soft), transparent 55%), var(--ns-bg-1)', overflow:'hidden', }, statsGrid: { display:'grid', gridTemplateColumns:'repeat(4, 1fr)', gap: 1, background:'var(--ns-line)', border:'1px solid var(--ns-line)', }, statCell: { background:'var(--ns-bg-1)', padding:'32px 24px', textAlign:'center', }, statValue: { fontFamily:'var(--ns-display)', fontSize: 'clamp(32px, 4vw, 52px)', fontWeight: 500, letterSpacing:'-0.02em', color:'var(--ns-fg)', fontVariantNumeric:'tabular-nums', lineHeight: 1, }, statLabel: { fontFamily:'var(--ns-mono)', fontSize: 11, color:'var(--ns-fg-dimmer)', letterSpacing:'0.1em', textTransform:'uppercase', marginTop: 12, }, testimonialCard: { display:'grid', gridTemplateColumns: '160px 1fr', gap: 32, padding: 40, border:'1px solid var(--ns-line)', borderRadius:'var(--ns-r-4)', background:'var(--ns-bg-1)', alignItems:'center', }, testimonialAvatar: { width: 160, height: 160, background:'var(--ns-bg-2)', border:'1px solid var(--ns-line)', overflow:'hidden', borderRadius: 8, }, quote: { fontFamily:'var(--ns-display)', fontSize: 'clamp(22px, 2.3vw, 30px)', lineHeight: 1.35, margin: 0, letterSpacing:'-0.01em', color:'var(--ns-fg)', textWrap:'pretty', fontWeight: 400, }, ctaCard: { position:'relative', overflow:'hidden', border:'1px solid var(--ns-line)', borderRadius:'var(--ns-r-4)', background:'var(--ns-bg-1)', padding: 'clamp(40px, 5vw, 72px)', display:'grid', gridTemplateColumns:'1fr 240px', gap: 40, alignItems:'center', }, ctaDecor: { position:'relative', aspectRatio:'1/1', width: 240, border:'1px solid var(--ns-line-2)', overflow:'hidden', }, footer: { borderTop:'1px solid var(--ns-line)', padding:'72px 0 40px', background:'var(--ns-bg-1)', }, footerGrid: { display:'grid', gridTemplateColumns:'1.4fr 1fr 1fr 1fr', gap: 40, marginBottom: 64, }, footerBottom: { borderTop:'1px solid var(--ns-line)', paddingTop: 24, display:'flex', justifyContent:'space-between', alignItems:'center', flexWrap:'wrap', gap: 12, }, }; Object.assign(window, { Nav, ThemeToggle, Hero, FeaturesSection, DashboardSection, TimelineSection, StatsSection, TestimonialSection, CTASection, Footer, SectionHeader, Logo, });