/* Pagina pubblica di presentazione (index.php) */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--bg:#1a1f2e;--card:#242b3d;--border:#333d55;--accent:#4a7cf7;--accent2:#2f5cf0;--text:#e2e8f0;--muted:#8a95b0}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--text);font-family:'Segoe UI',system-ui,sans-serif;line-height:1.5}
a{color:#fff}
.wrap{max-width:1040px;margin:0 auto;padding:0 1.1rem}
header{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;min-height:64px}
header img{height:34px;width:auto}
.btn{display:inline-block;padding:.8rem 1.6rem;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent2));color:#fff;font-weight:600;font-size:1rem;text-decoration:none;border:0}
.btn:hover{opacity:.9}
.btn.sec{background:transparent;border:1.5px solid var(--border);color:#fff}
.btn.sm{padding:.5rem 1.1rem;font-size:.88rem}
.hero{text-align:center;padding:.6rem 0 2.6rem}
.logo-hero{display:block;margin:0 auto .5rem;width:100%;max-width:340px;height:auto}
.hero .sotto-logo{color:#fff;font-weight:700;font-size:.95rem;margin:0 auto 1.8rem;max-width:none}
.hero h1{font-size:2.3rem;line-height:1.2;max-width:760px;margin:0 auto 1rem}
.hero h1 span{color:var(--accent)}
.hero p{color:var(--muted);font-size:1.05rem;max-width:640px;margin:0 auto 1.6rem}
.hero .cta{display:flex;gap:.8rem;justify-content:center;flex-wrap:wrap}
.hero .nota{margin-top:.9rem;font-size:.82rem;color:var(--muted)}
.cifre{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem;margin:0 0 2.8rem}
.cifre div{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1rem;text-align:center}
.cifre b{display:block;font-size:1.5rem;color:#fff;font-weight:700}
.cifre span{font-size:.82rem;color:#fff;font-weight:700}
h2{font-size:1.45rem;text-align:center;margin-bottom:.4rem}
.sub{text-align:center;color:var(--muted);margin-bottom:1.6rem}
.griglia{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:3rem}
.box{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:1.2rem}
.box .ic{font-size:1.6rem;margin-bottom:.4rem}
.box h3{font-size:1rem;margin-bottom:.35rem}
.box p{font-size:.88rem;color:var(--muted)}
.aree{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:3rem}
.aree .box h3{font-size:1.1rem}
.aree ul{margin:.6rem 0 0 1.1rem;font-size:.88rem;color:var(--muted)}
.passi{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:3rem;counter-reset:p}
.passi .box{position:relative;padding-top:2.2rem}
.passi .box::before{counter-increment:p;content:counter(p);position:absolute;top:-.8rem;left:1.1rem;width:1.8rem;height:1.8rem;border-radius:50%;background:var(--accent);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.faq{max-width:760px;margin:0 auto 3rem}
.faq details{background:var(--card);border:1px solid var(--border);border-radius:10px;padding:.8rem 1rem;margin-bottom:.6rem}
.faq summary{cursor:pointer;font-weight:600}
.faq p{color:var(--muted);font-size:.9rem;margin-top:.5rem}
.finale{background:var(--card);border:1px solid var(--border);border-radius:14px;text-align:center;padding:2rem 1rem;margin-bottom:2rem}
.finale p{color:var(--muted);margin:.4rem 0 1.2rem}
footer{border-top:1px solid var(--border);padding:1.4rem 0 2rem;text-align:center;font-size:.82rem;color:var(--muted)}
footer a{color:#fff;margin:0 .6rem;text-decoration:none}
footer a:hover{text-decoration:underline}
footer img{height:38px;margin-top:1rem}
@media(max-width:800px){.hero h1{font-size:1.65rem}.cifre,.passi{grid-template-columns:1fr 1fr}.griglia,.aree{grid-template-columns:1fr}.hero{padding-top:.2rem}}
@media(max-width:420px){.cifre,.passi{grid-template-columns:1fr}.logo-hero{max-width:260px}}
footer img{display:block;margin:1rem auto 0}
