/* Stream Translations — section components. Exports to window. */ const { useState, useEffect, useRef } = React; /* Reveal-on-scroll wrapper */ function Reveal({ children, delay, as, className, ...rest }) { const ref = useRef(null); const [seen, setSeen] = useState(false); useEffect(() => { const el = ref.current; if (!el) return; // immediate check — anything already in view reveals at once if (el.getBoundingClientRect().top < window.innerHeight * 0.92) { setSeen(true); return; } const io = new IntersectionObserver((entries) => { entries.forEach((e) => { if (e.isIntersecting) { setSeen(true); io.unobserve(el); } }); }, { threshold: 0.15, rootMargin: "0px 0px -8% 0px" }); io.observe(el); // safety fallback: never leave content hidden const fb = setTimeout(() => setSeen(true), 2200); return () => { io.disconnect(); clearTimeout(fb); }; }, []); const Tag = as || "div"; const cls = ["reveal", delay ? "d" + delay : "", seen ? "in" : "", className || ""].join(" ").trim(); return {children}; } const Arrow = () => ( ); /* ---------- Header ---------- */ function Header({ c, lang, setLang, scrolled, overHero, onNav, onContact }) { return (
); } /* ---------- Hero ---------- */ function Hero({ c, variant, parallax, onContact, scrollLabel }) { return (

{c.hero.eyebrow}

{c.hero.title}

{c.hero.lede}

{c.hero.ctaSub}
{scrollLabel}
); } /* ---------- Problem ---------- */ function Problem({ c }) { return (

{c.problem.eyebrow}

{c.problem.title}

{c.problem.items.map((it, i) => (
{it.k}

{it.t}

{it.d}

))}
); } /* ---------- Strengths ---------- */ function Strengths({ c }) { return (

{c.strengths.eyebrow}

{c.strengths.title}

{c.strengths.items.map((it, i) => ( {it.k}

{it.t}

{it.d}

))}
); } /* ---------- Scope ---------- */ function Scope({ c }) { const s = c.scope; return (

{s.eyebrow}

{s.title}

{s.langs.label}
{s.langs.items.map((x, i) => {x})}
{s.industries.label}
{s.industries.items.map((x) => {x})}
{s.docs.label}
{s.docs.items.map((x) => {x})}

{s.docs.body}

{s.langs.items.join(" ・ ")}

); } /* ---------- Work ---------- */ function Work({ c }) { const w = c.work; return (

{w.eyebrow}

{w.title}

{w.body}

{w.stats.map((st) => (
{st.v}
{st.l}
))}
{w.sectors.map((x) => {x})}

{w.note}

); } /* ---------- Process ---------- */ function Process({ c }) { const p = c.process; return (

{p.eyebrow}

{p.title}

{p.steps.map((st, i) => (
{st.k}

{st.t}

{st.d}

))}
{p.note}
); } /* ---------- FAQ ---------- */ function Faq({ c }) { const [open, setOpen] = useState(0); return (

{c.faq.eyebrow}

{c.faq.title}

{c.faq.items.map((it, i) => { const isOpen = open === i; return (
{it.a}
); })}
); } Object.assign(window, { Reveal, Arrow, Header, Hero, Problem, Strengths, Scope, Work, Process, Faq });