const SOL=()=>({
ai:{crumb:T('Intelligenza artificiale','Artificial Intelligence'),icon:'brain-circuit',hl:3,title:T('Intelligenza per lo spazio pubblico.','Intelligence for public space.'),lead:T('IA applicata ai dati raccolti dai sistemi Smart Pole e dalle piattaforme, per aiutare gli operatori a capire e rispondere.','AI applied to the data that Smart Pole systems and platforms collect, to help operators understand and respond.'),caps:[[T('Comprendere','Understand'),T('Trasformare i dati di sensori e telecamere in informazioni su cui agire.','Turn sensor and camera data into information operators can act on.')],[T('Assistere','Assist'),T('Supportare monitoraggio e decisioni nella piattaforma di controllo.','Support monitoring and decisions in the control platform.')],[T('Visualizzare','Visualise'),T('Immagini generate con IA aiutano i clienti a vedere le configurazioni nel contesto.','AI-generated imagery helps clients picture configurations in context.')]],cases:[[T('Monitoraggio dello spazio pubblico','Public-space monitoring'),T('Supporto agli operatori che supervisionano piazze, parcheggi e viali.','Support for operators supervising squares, car parks and avenues.')],[T('Consapevolezza ambientale','Environmental awareness'),T('Lettura dei dati della stazione meteo insieme ad altre informazioni urbane.','Reading weather-station data alongside other urban information.')],[T('Visualizzazione delle configurazioni','Configuration visualisation'),T('Render di Smart Pole in ambienti diversi, prima dell’avvio di un progetto.','Renders of Smart Pole in different environments, before a project starts.')]]},
dp:{crumb:T('Piattaforme digitali','Digital Platforms'),icon:'cloud',hl:2,title:T('Una piattaforma per vedere e controllare.','One platform to see and control.'),lead:T('Lo Smart City Control System (SCCS) è la piattaforma cloud per monitorare e controllare le infrastrutture connesse.','The Smart City Control System (SCCS) is the cloud platform for monitoring and controlling connected infrastructure.'),caps:[[T('Monitorare','Monitor'),T('Una vista unica dei dispositivi connessi e del loro stato.','A single view of connected devices and their status.')],[T('Controllare','Control'),T('Gestire illuminazione e moduli da remoto.','Manage lighting and modules remotely.')],[T('Integrare','Integrate'),T('Collegarsi ad altri sistemi tramite interfacce definite.','Connect to other systems through defined interfaces.')]],cases:[[T('Operazioni comunali','Municipal operations'),T('Gli operatori supervisionano i pali di una città da un’unica console.','Operators supervise poles across a city from one console.')],[T('Facility management','Facility management'),T('Campus e aree commerciali gestiti in modo centralizzato.','Campuses and commercial areas managed centrally.')],[T('Reportistica','Reporting'),T('Dati dei moduli raccolti per la revisione. Ambito da definire.','Data from modules collected for review. Scope to be defined.')]]},
auto:{crumb:T('Automazione e integrazione','Automation & Integration'),icon:'workflow',hl:3,title:T('Sistemi che lavorano insieme.','Systems that work together.'),lead:T('Hardware, software e sistemi di terze parti collegati, così le routine procedono senza intervento manuale.','Hardware, software and third-party systems connected, so routines run without manual effort.'),caps:[[T('Collegare','Connect'),T('Unire pali, sensori e piattaforme in un sistema coerente.','Link poles, sensors and platforms into one coherent system.')],[T('Automatizzare','Automate'),T('Definire regole che reagiscono alle condizioni dello spazio.','Define rules that react to conditions in the space.')],[T('Integrare','Integrate'),T('Includere sistemi esistenti tramite interfacce standard, dove fattibile.','Bring in existing systems through standard interfaces, where feasible.')]],cases:[[T('Illuminazione adattiva','Adaptive lighting'),T('Livelli di luce che seguono condizioni e orari.','Light levels that follow conditions and schedules.')],[T('Allarmi e routine','Alerts and routines'),T('Gli eventi dei moduli attivano azioni definite.','Events from modules trigger defined actions.')],[T('Sistemi esistenti','Existing systems'),T('Integrazione con infrastrutture già presenti, valutata per progetto.','Integration with infrastructure already in place, evaluated per project.')]]},
infra:{crumb:T('Infrastrutture intelligenti','Smart Infrastructure'),icon:'settings',hl:0,title:T('Infrastrutture che guardano avanti.','Infrastructure that thinks ahead.'),lead:T('Infrastrutture modulari per città più intelligenti: strutture che ospitano i servizi di oggi e possono accoglierne di nuovi.','Modular infrastructure for smarter cities: structures that carry today’s services and can take on new ones.'),caps:[[T('Modulare','Modular'),T('Aggiungere o cambiare moduli al mutare delle esigenze.','Add or change modules as needs evolve.')],[T('Connessa','Connected'),T('Ogni elemento raggiungibile dalla piattaforma.','Every element reachable by the platform.')],[T('Rivolta al pubblico','Public-facing'),T('Informazione, sicurezza e servizi a livello stradale.','Information, safety and services at street level.')]],cases:[[T('Piazze e aree pedonali','Piazzas and pedestrian areas'),T('Illuminazione, informazione e chiamata di emergenza negli spazi condivisi.','Lighting, information and emergency call in shared spaces.')],[T('Parcheggi','Car parks'),T('Visibilità, sicurezza e ricarica.','Visibility, safety and charging.')],[T('Parchi e viali','Parks and avenues'),T('Connettività e rilevamento ambientale.','Connectivity and environmental sensing.')]]}});
function SolPage({k}){const d=SOL()[k];return <><PageHero crumbs={[['Home',P.home],[T('Soluzioni','Solutions'),P.sol],[d.crumb]]} eyebrow={d.crumb} title={d.title} lead={d.lead} visual={<Slot title={d.crumb+' · '+T('visual tecnologico','technology visual')} prompt={T('Visual editoriale tecnologico nello stile del brand, da generare.','Editorial technology visual in the brand style, to be generated.')} icon={d.icon} style={{minHeight:420}}/>}><Button size="lg" onClick={()=>go(P.contact)}>{T('Parliamo di un progetto','Discuss a project')}</Button><Button size="lg" variant="secondary" onClick={()=>go(P.eco)}>{T('Vedi l’ecosistema','See the ecosystem')}</Button></PageHero>
<Sec eyebrow={T('Capacità','Capabilities')} title={T('Cosa fa.','What it does.')}><div className="g3">{d.caps.map(([t,x],i)=><div className="card2" key={i}><span className="n">0{i+1}</span><h3>{t}</h3><p>{x}</p></div>)}</div></Sec>
<Sec alt eyebrow={T('Dove si colloca','Where it sits')} title={T('Nell’ecosistema.','In the ecosystem.')}><EcoDiagram hl={d.hl}/></Sec>
<Sec eyebrow={T('Casi d’uso','Use cases')} title={T('Scenari illustrativi.','Illustrative scenarios.')}><ul className="list">{d.cases.map(([t,x],i)=><li key={i}><b>{t}</b><span>{x}</span></li>)}</ul><div style={{marginTop:24}}><Note>{T('Scenari concettuali. Capacità e ambito sono definiti per ogni progetto.','Conceptual scenarios. Capabilities and scope are defined per project.')}</Note></div></Sec><Cta/></>}
function Ecosystem(){return <><PageHero crumbs={[['Home',P.home],[T('Ecosistema','Ecosystem')]]} eyebrow={T('Ecosistema','Ecosystem')} title={T('Hardware e software, progettati insieme.','Hardware and software, designed together.')} lead={T('Vision Ecosystem collega l’infrastruttura intelligente sul territorio con le piattaforme, l’intelligenza e l’automazione che la rendono utile.','Vision Ecosystem connects smart infrastructure in the field with the platforms, intelligence and automation that make it useful.')}><Button size="lg" onClick={()=>go(P.contact)}>{T('Parliamo di un progetto','Discuss a project')}</Button></PageHero>
<Sec eyebrow={T('Visione','Vision')} title={T('Tecnologia applicata a luoghi reali.','Technology applied to real places.')}><div className="split"><p className="t-lead" style={{margin:0}}>{T('L’obiettivo è semplice: spazi pubblici meglio illuminati, più informati, più sicuri e più facili da gestire. Servono dispositivi, connettività e software che lavorino come un unico sistema.','The aim is simple: public spaces that are better lit, better informed, safer and easier to manage. That takes devices, connectivity and software working as one system.')}</p><ul className="list">{[['Hardware',T('Smart Pole 15 e BS-Smart Pole 17.','Smart Pole 15 and BS-Smart Pole 17.')],['Software',T('Smart City Control System e piattaforme digitali.','Smart City Control System and digital platforms.')],[T('Intelligenza','Intelligence'),T('IA e automazione sui dati connessi.','AI and automation on top of connected data.')]].map(([a,b],i)=><li key={i}><b>{a}</b><span>{b}</span></li>)}</ul></div></Sec>
<Sec alt eyebrow={T('Connessioni','Connections')} title={T('Dal palo al risultato.','From pole to outcome.')}><EcoDiagram/></Sec>
<Sec eyebrow={T('Ambiti','Domains')} title={T('Quattro aree.','Four areas.')}><div className="g2">{[['settings',T('Infrastrutture intelligenti','Smart infrastructure'),T('Strutture modulari per lo spazio pubblico.','Modular structures for public space.'),P.infra],['brain-circuit',T('Intelligenza artificiale','Artificial intelligence'),T('Analisi e assistenza dai dati urbani.','Insight and assistance from urban data.'),P.ai],['cloud',T('Piattaforme digitali','Digital platforms'),T('Monitoraggio e controllo in cloud.','Monitoring and control in the cloud.'),P.dp],['workflow',T('Automazione e integrazione','Automation & integration'),T('Sistemi collegati e routine automatizzate.','Systems connected and routines automated.'),P.auto]].map(([i,t,x,to])=><SolCard key={to} icon={i} title={t} description={x} onClick={()=>go(to)}/>)}</div></Sec><Cta/></>}
function Solutions(){const s=[['box','Smart Pole',T('Due famiglie di Smart Pole modulari con un configuratore visuale.','Two modular Smart Pole families with a visual configurator.'),P.pole,'pole-15-3d.png'],['brain-circuit',T('Intelligenza artificiale','Artificial Intelligence'),T('Intelligenza applicata ai dati urbani.','Intelligence applied to urban data.'),P.ai],['cloud',T('Piattaforme digitali','Digital Platforms'),T('Controllo, monitoraggio e dati.','Control, monitoring and data.'),P.dp],['workflow',T('Automazione e integrazione','Automation & Integration'),T('Sistemi collegati e routine.','Connected systems and routines.'),P.auto],['settings',T('Infrastrutture intelligenti','Smart Infrastructure'),T('Infrastrutture pronte a nuovi servizi.','Infrastructure ready for new services.'),P.infra]];
return <><PageHero crumbs={[['Home',P.home],[T('Soluzioni','Solutions')]]} eyebrow={T('Soluzioni','Solutions')} title={T('Cinque aree. Un ecosistema.','Five areas. One ecosystem.')} lead={T('Dal palo in strada alla piattaforma che lo governa.','From the pole in the street to the platform behind it.')}/>
<Sec><div className="g2">{s.map(([i,t,x,to,im])=><div key={to} className="iv-card iv-card--link sol-row" role="link" tabIndex={0} onClick={()=>go(to)} onKeyDown={e=>e.key==='Enter'&&go(to)}><div className="iv-scard"><Icon name={i} size={32}/><div><h3 style={{margin:'0 0 8px',font:'500 22px var(--font-display)'}}>{t}</h3><p style={{margin:0,color:'var(--fg-2)',fontSize:15}}>{x}</p></div><span className="iv-scard__arrow">{T('Scopri','Explore')} <Icon name="arrow-right" size={16}/></span></div>{im?<div className="stage" style={{borderRadius:0,border:0}}><img src={A+im} alt="" style={{height:260,padding:16}}/></div>:<div className="slot" style={{borderRadius:0,border:0,minHeight:0}}><span className="ic"><Icon name={i} size={32}/></span></div>}</div>)}</div></Sec><Cta/></>}
function Projects(){const [f,setF]=React.useState('all');const items=[[T('Illuminazione e informazione in piazza','Piazza lighting and information'),T('Smart Pole 15 in una piazza contemporanea.','Smart Pole 15 in a contemporary piazza.'),ENVS[0]],[T('Centro storico, integrazione discreta','Historic centre, discreet integration'),T('Un palo che rispetta l’architettura d’epoca.','A pole that respects period architecture.'),ENVS[1]],[T('Sicurezza nei parcheggi','Car park safety'),T('Telecamere, altoparlante e chiamata di emergenza.','Cameras, speaker and emergency call.'),ENVS[2]],[T('Orientamento in area commerciale','Commercial area wayfinding'),T('Smart Pole 17 guidato dal display.','Display-led Smart Pole 17.'),ENVS[3]],[T('Connettività lungo un viale','Avenue connectivity'),T('Wi-Fi e rilevamento meteo lungo un viale.','Wi-Fi and weather sensing along a boulevard.'),ENVS[4]],[T('Servizi nel parco','Park services'),T('Ricarica e informazione negli spazi verdi.','Charging and information in green space.'),ENVS[5]]];
const shown=f==='delivered'?[]:items;
return <><PageHero crumbs={[['Home',P.home],[T('Progetti','Projects')]]} eyebrow={T('Progetti','Projects')} title={T('Concept e applicazioni.','Concepts and applications.')} lead={T('Idee su come i sistemi Smart Pole potrebbero funzionare in contesti diversi. I concept restano sempre distinti dai progetti realizzati.','Ideas for how Smart Pole systems could work in different contexts. Concepts are always kept distinct from delivered projects.')}/>
<Sec><div className="row" style={{marginBottom:32,justifyContent:'space-between'}}><Seg label={T('Filtro','Filter')} opts={[['all',T('Tutti','All')],['concept','Concept'],['delivered',T('Realizzati','Delivered')]]} value={f} onChange={setF}/><Note>{T('In questa bozza non è elencato alcun progetto realizzato.','No delivered projects are listed in this draft.')}</Note></div>
{shown.length?<div className="g3">{shown.map(([t,x,e])=><div key={e.id} style={{display:'flex',flexDirection:'column',gap:12}}><Slot img={e.img} title={t} prompt={x} style={{minHeight:260}}/><div className="row"><Badge tone="cyan">Concept</Badge><span className="t-small">{tt(e.name)}</span></div></div>)}</div>:<StateBlock title={T('Ancora nessun progetto realizzato','No delivered projects yet')} message={T('Le installazioni completate appariranno qui una volta confermate. I concept sono disponibili sotto «Concept».','Completed installations will appear here once confirmed. Concepts are available under “Concept”.')} action={<Button variant="secondary" onClick={()=>setF('concept')}>{T('Vedi i concept','View concepts')}</Button>}/>}</Sec><Cta/></>}
function About(){return <><PageHero crumbs={[['Home',P.home],[T('Chi siamo','About')]]} eyebrow={T('Chi siamo','About')} title={T('Tecnologia con uno scopo chiaro.','Technology with a clear purpose.')} lead={T('Vision Ecosystem sviluppa soluzioni tecnologiche integrate per spazi pubblici e infrastrutture.','Vision Ecosystem develops integrated technology solutions for public spaces and infrastructure.')}/>
<Sec eyebrow={T('Filosofia','Philosophy')} title={T('Calma, precisione, utilità.','Calm, precise, useful.')}><div className="g2">{[[T('Visione','Vision'),T('Città e spazi pubblici connessi, efficienti e piacevoli da vivere.','Cities and public spaces that are connected, efficient and pleasant to use.')],[T('Approccio progettuale','Design approach'),T('Design industriale e architettura contemporanea prima di tutto. La tecnologia deve essere presente e discreta.','Industrial design and contemporary architecture first. Technology should be present and quiet.')],[T('Integrazione tecnologica','Technology integration'),T('Hardware e software pensati insieme, perché il tutto funzioni come un unico sistema.','Hardware and software conceived together, so the whole works as one system.')],[T('Filosofia del brand','Brand philosophy'),T('Dire ciò che si sa, segnalare ciò che non si sa. I concept sono concept; i dati sono confermati o indicati come tali.','Say what is known, mark what is not. Concepts are concepts; data is confirmed or marked as such.')]].map(([t,x],i)=><div key={i} className="card2"><span className="n">0{i+1}</span><h3>{t}</h3><p>{x}</p></div>)}</div></Sec>
<Sec alt><Note>{T('Dati aziendali come indirizzo, ragione sociale e team non sono inclusi in questa bozza e verranno aggiunti quando disponibili.','Company details such as address, legal entity and team are not included in this draft and will be added when supplied.')}</Note></Sec><Cta/></>}
function Contact(){const [t,sT]=React.useState('consult');const [area,sA]=React.useState(['pole']);const [f,setF]=React.useState({name:'',org:'',email:'',msg:'',ok:false});const [er,setEr]=React.useState({});const [ld,setLd]=React.useState(false);const [done,setDone]=React.useState(false);const u=k=>e=>setF({...f,[k]:e.target.type==='checkbox'?e.target.checked:e.target.value});
const submit=e=>{e.preventDefault();const x={};if(!f.name.trim())x.name=T('Obbligatorio','Required');if(!/^\S+@\S+\.\S+$/.test(f.email))x.email=T('Inserisci un’email valida','Enter a valid email');if(!f.ok)x.ok=T('Il consenso è obbligatorio','Consent is required');setEr(x);if(Object.keys(x).length)return;setLd(true);setTimeout(()=>{setLd(false);setDone(true)},900)};
const AREAS=[['pole','Smart Pole'],['ai',T('Intelligenza artificiale','Artificial Intelligence')],['dp',T('Piattaforme digitali','Digital Platforms')],['auto',T('Automazione e integrazione','Automation & Integration')],['infra',T('Infrastrutture intelligenti','Smart Infrastructure')]];
return <><PageHero crumbs={[['Home',P.home],[T('Contatti','Contact')]]} eyebrow={T('Contatti','Contact')} title={T('Raccontaci il tuo progetto.','Tell us about your project.')} lead={T('Richiedi una consulenza, un preventivo o scrivici per un’area di interesse.','Ask for a consultation, request a quote or get in touch about an area of interest.')}/>
<Sec><div className="split split--r" style={{alignItems:'start'}}><form className="card2" onSubmit={submit} noValidate style={{gap:20}}><div><span className="t-small" style={{display:'block',marginBottom:8}}>{T('Tipo di richiesta','Request type')}</span><Seg label={T('Tipo di richiesta','Request type')} opts={[['consult',T('Consulenza','Consultation')],['quote',T('Preventivo','Quote')],['general',T('Generale','General')]]} value={t} onChange={sT}/></div><div><span className="t-small" style={{display:'block',marginBottom:8}}>{T('Area di interesse','Area of interest')}</span><div className="chips">{AREAS.map(([id,n])=><button type="button" key={id} className="chip" aria-pressed={area.includes(id)} onClick={()=>sA(area.includes(id)?area.filter(x=>x!==id):[...area,id])}>{n}</button>)}</div></div><div className="g2"><Field label={T('Nome e cognome','Full name')} value={f.name} onChange={u('name')} error={er.name}/><Field label={T('Azienda o ente','Company or organisation')} value={f.org} onChange={u('org')}/></div><Field label="Email" type="email" value={f.email} onChange={u('email')} error={er.email}/><Field label={T('Messaggio','Message')} as="textarea" value={f.msg} onChange={u('msg')} hint={T('Facoltativo','Optional')}/><div><Checkbox checked={f.ok} onChange={u('ok')}>{T('Ho letto l’','I have read the ')}<L to={P.priv}>{T('informativa privacy','privacy policy')}</L>{T(' e acconsento a essere ricontattato.',' and consent to being contacted.')}</Checkbox>{er.ok&&<span className="iv-hint iv-hint--error" role="alert">{er.ok}</span>}</div><div className="row"><Button type="submit" loading={ld}>{T('Invia richiesta','Send request')}</Button></div></form>
<div className="card2"><h3>{T('Preferisci configurare prima?','Prefer to configure first?')}</h3><p>{T('Crea una configurazione Smart Pole e richiedi un preventivo con il riepilogo.','Build a Smart Pole configuration and request a quote with the summary.')}</p><Button variant="secondary" onClick={()=>go(P.cfg)}>{T('Apri il configuratore','Open configurator')}</Button><Note>{T('I recapiti non sono inclusi in questa bozza.','Contact details are not included in this draft.')}</Note></div></div>
<Dialog open={done} title={T('Solo demo: nulla è stato inviato','Demo only: nothing was sent')} confirmLabel={T('Chiudi','Close')} cancelLabel={T('Torna alla home','Back to home')} onCancel={()=>{setDone(false);go(P.home)}} onConfirm={()=>setDone(false)}>{T('Questa bozza non ha un backend, quindi il messaggio non è stato inviato.','This draft has no backend, so your message has not been submitted.')}</Dialog></Sec></>}
function Legal({title,secs}){return <><PageHero crumbs={[['Home',P.home],[title]]} eyebrow={T('Note legali','Legal')} title={title} lead={T('Solo struttura. Il testo definitivo deve essere fornito o approvato dal consulente legale dell’azienda.','Structure only. Final text must be supplied or approved by the company’s legal advisor.')}/><Sec><div style={{maxWidth:760,display:'flex',flexDirection:'column',gap:32}}>{secs.map(([t,x],i)=><div key={i}><h2 className="t-h3" style={{margin:'0 0 8px'}}>{t}</h2><p className="muted" style={{margin:0}}>{x}</p></div>)}</div></Sec></>}
const TBP=()=>T('Da fornire.','To be provided.');
const Privacy=()=><Legal title={T('Informativa privacy','Privacy policy')} secs={[[T('Titolare del trattamento','Data controller'),TBP()],[T('Dati raccolti','Data collected'),T('Moduli: nome, azienda, email, telefono, dettagli del progetto. Da confermare.','Forms: name, organisation, email, phone, project details. To be confirmed.')],[T('Finalità e base giuridica','Purposes and legal basis'),TBP()],[T('Conservazione e destinatari','Retention and recipients'),TBP()],[T('I tuoi diritti','Your rights'),TBP()]]}/>;
const Cookie=()=><Legal title={T('Informativa cookie','Cookie policy')} secs={[[T('Cosa sono i cookie','What are cookies'),TBP()],[T('Cookie utilizzati','Cookies used'),T('Questa bozza salva localmente sul dispositivo la selezione del configuratore e la lingua. Elenco completo da confermare.','This draft stores the configurator selection and language locally on your device. Full list to be confirmed.')],[T('Gestione delle preferenze','Managing preferences'),TBP()]]}/>;
function Notes(){const rep=[[T('Navigazione, 16 pagine, IT/EN','Navigation, 16 pages, IT/EN'),1,T('Rappresentato','Represented')],[T('Configuratore: modello, moduli, ambiente, giorno/notte, scala, confronto','Configurator: model, modules, environment, day/night, scale, compare'),1,T('Rappresentato (demo)','Represented (demo)')],[T('Modulo preventivo e riepilogo','Quote form and summary'),1,T('Rappresentato, senza invio','Represented, no submission')],[T('Anteprima illuminazione','Lighting preview'),1,T('Rappresentata, immagini segnaposto','Represented, placeholder imagery')],[T('Render generati con IA per configurazione','AI-generated renders per configuration'),0,T('Da sviluppare','Requires development')],[T('Visualizzatore 3D reale (Three.js / R3F)','Real 3D viewer (Three.js / R3F)'),0,T('Servono modelli 3D','Requires 3D models')],[T('Salvataggio multi-dispositivo, invio preventivi','Saving across devices, sending quotes'),0,T('Serve un backend','Requires backend')],[T('Dati fotometrici LED (IES / LDT)','Photometric LED data (IES / LDT)'),0,T('Serve documentazione','Requires documentation')]];
return <><PageHero crumbs={[['Home',P.home],[T('Note di bozza','Draft notes')]]} eyebrow={T('Note di bozza','Draft notes')} title={T('Sitemap e stato.','Sitemap and status.')} lead={T('Cosa rappresenta questa bozza e cosa richiede ancora sviluppo.','What this draft represents and what still needs development.')}/><Sec eyebrow="Sitemap" title={T('16 pagine.','16 pages.')}><div className="g3">{Object.values(P).map(p=><L key={p} to={p} className="card2" style={{padding:16,color:'var(--fg-1)',fontFamily:'var(--font-mono)',fontSize:13}}>{p}</L>)}</div></Sec>
<Sec alt eyebrow={T('Stato','Status')} title={T('Rappresentato e da sviluppare.','Represented vs to develop.')}><div className="tw"><table className="table"><tbody>{rep.map(([a,ok,b],i)=><tr key={i}><td>{a}</td><td><Badge tone={ok?'success':'tbc'}>{b}</Badge></td></tr>)}</tbody></table></div><p className="t-small" style={{marginTop:24}}>{T('Stack proposto: React, Next.js, TypeScript, Tailwind CSS. Le immagini sono ritagli a bassa risoluzione delle brochure; i render IA sono segnaposto etichettati finché non vengono generati.','Proposed stack: React, Next.js, TypeScript, Tailwind CSS. Images are low-resolution brochure crops; AI renders are labelled placeholders until generated.')}</p></Sec></>}
Object.assign(window,{SolPage,Ecosystem,Solutions,Projects,About,Contact,Privacy,Cookie,Notes});
