// Sticky nav with scroll-aware transparency + mobile menu
const Nav = ({ route, setRoute, onDarkHero, mobileOpen, setMobileOpen, lang, setLang, t }) => {
const [scrolled, setScrolled] = React.useState(false);
const [langOpen, setLangOpen] = React.useState(false);
const langRef = React.useRef(null);
React.useEffect(() => {
const onScroll = () => setScrolled(window.scrollY > 24);
onScroll();
window.addEventListener('scroll', onScroll, { passive: true });
return () => window.removeEventListener('scroll', onScroll);
}, []);
React.useEffect(() => {
const onDoc = (e) => { if (langRef.current && !langRef.current.contains(e.target)) setLangOpen(false); };
document.addEventListener('click', onDoc);
return () => document.removeEventListener('click', onDoc);
}, []);
useLucide();
const isDark = onDarkHero && !scrolled;
const tr = t || ((k) => k);
const langs = SITE_DATA.languages;
const current = langs.find(l => l.code === lang) || langs[0];
return (
<>
steffanie ting
real estate