// Root App
function App({ reviews }){
  return (
    <React.Fragment>
      <Opening/>
      <Header/>
      <Hero/>
      <Numbers/>
      <FirstBA/>
      <Troubles/>
      <Answer/>
      <Menus/>
      <Gallery/>
      <Voice reviews={reviews}/>
      <Standard/>
      <Story/>
      <Diagnosis/>
      <Salons/>
      <Final/>
      <Footer/>
      <StickyCTA/>
    </React.Fragment>
  );
}

(async function boot(){
  let reviews = [];
  // Prefer reviews embedded in the HTML (works on any host, no fetch needed)
  try {
    const inline = document.getElementById('reviews-data');
    if (inline && inline.textContent.trim()) {
      reviews = JSON.parse(inline.textContent);
    }
  } catch (e) { console.warn('inline reviews parse failed', e); }
  // Fallback to fetch only if the inline block was missing
  if (!reviews.length){
    try {
      const r = await fetch('data/reviews.json', { cache: 'no-cache' });
      if (r.ok) reviews = await r.json();
    } catch (e) {
      console.warn('reviews.json fetch failed', e);
    }
  }
  const root = ReactDOM.createRoot(document.getElementById('root'));
  root.render(<App reviews={reviews}/>);
})();
