@font-face{font-family:'Outfit';src:url(/font/outfit.woff) format('woff');font-weight:100 900;font-display:swap}
:root{--sfondo:#0b0d1a;--carta:#151933;--carta2:#1c2142;--testo:#eef0ff;--grigio:#a3a9cc;--bordo:#2a3060;--blu:#3b6cff;--viola:#9b4dff;--accento:#8fb0ff}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Outfit,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;line-height:1.6;color:var(--testo);background:var(--sfondo)}
a{color:var(--accento)}
img{max-width:100%;display:block}
.barra{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;background:rgba(11,13,26,.82);backdrop-filter:blur(10px);border-bottom:1px solid var(--bordo)}
.barra .marchio{display:flex;align-items:center;gap:10px;color:var(--testo);text-decoration:none;font-weight:800;letter-spacing:-.01em}
.barra .marchio img{width:30px;height:30px;border-radius:8px}
.barra nav{display:flex;gap:16px;align-items:center;font-size:.95rem}
.barra nav a{color:var(--grigio);text-decoration:none}
.barra nav a:hover{color:var(--testo)}
.barra .lingua{border:1px solid var(--bordo);border-radius:999px;padding:3px 12px;color:var(--testo)!important}
.eroe{position:relative;overflow:hidden;padding:72px 16px 64px;text-align:center;background:radial-gradient(1200px 500px at 50% -10%,rgba(59,108,255,.45),transparent 60%),radial-gradient(800px 400px at 90% 10%,rgba(155,77,255,.35),transparent 60%)}
.eroe .logo{width:132px;height:132px;margin:0 auto 14px;filter:drop-shadow(0 10px 34px rgba(110,90,255,.6))}
.eroe h1{margin:0;font-size:clamp(2.2rem,6vw,3.6rem);letter-spacing:-.03em;line-height:1.1}
.eroe p{margin:12px auto 0;max-width:620px;color:var(--grigio);font-size:1.12rem}
.eroe .dentro{max-width:960px;margin:0 auto}
.eroe .lingua{float:right;color:#fff;text-decoration:none;border:1px solid rgba(255,255,255,.4);border-radius:999px;padding:3px 12px;font-size:.9rem}
.pillole{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:22px}
.pillole span{background:var(--carta);border:1px solid var(--bordo);border-radius:999px;padding:5px 14px;font-size:.9rem;color:var(--grigio)}
main{max-width:1040px;margin:0 auto;padding:8px 16px 32px}
h2.sezione{font-size:1.6rem;margin:48px 4px 18px;letter-spacing:-.02em}
h2.sezione small{display:block;font-size:.95rem;font-weight:400;color:var(--grigio);letter-spacing:0}
.griglia{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:22px;align-items:stretch}
.griglia .app{margin-bottom:0;display:flex;flex-direction:column}
.griglia .app .corpo{flex:1;display:flex;flex-direction:column}
.griglia .app .azioni{margin-top:auto;padding-top:16px}
.griglia .galleria.orizz img{height:260px}
.app{background:var(--carta);border:1px solid var(--bordo);border-radius:24px;overflow:hidden;margin-bottom:26px;box-shadow:0 20px 50px rgba(0,0,0,.35)}
.app .banner{aspect-ratio:1024/500;width:100%;object-fit:cover}
.app .corpo{padding:0 22px 22px;position:relative}
.app .testa{display:flex;gap:16px;align-items:flex-start;margin-top:-44px}
.app .testa>div{padding-top:52px}
.app .icona{width:96px;height:96px;border-radius:24px;border:4px solid var(--carta);box-shadow:0 8px 24px rgba(0,0,0,.45);background:var(--carta2);flex:none}
.app h3{margin:0 0 2px;font-size:1.35rem;line-height:1.25}
.app .tipo{color:var(--grigio);font-size:.92rem}
.app p.desc{margin:14px 0 0;font-size:1.04rem}
.galleria{display:flex;gap:12px;overflow-x:auto;padding:16px 0 6px;scroll-snap-type:x mandatory}
.galleria img{height:260px;width:auto;border-radius:14px;border:1px solid var(--bordo);scroll-snap-align:start;flex:none}
.galleria.orizz img{height:200px}
.azioni{display:flex;gap:10px;flex-wrap:wrap;margin-top:16px}
.btn{display:inline-flex;align-items:center;gap:8px;text-decoration:none;border-radius:999px;padding:10px 18px;font-weight:700;font-size:.95rem}
.btn.play{background:linear-gradient(135deg,var(--blu),var(--viola));color:#fff}
.btn.play svg{width:18px;height:18px}
.btn.vuoto{border:1px solid var(--bordo);color:var(--testo)}
.btn.presto{background:var(--carta2);color:var(--grigio)}
.contatto{background:linear-gradient(135deg,rgba(59,108,255,.18),rgba(155,77,255,.18));border:1px solid var(--bordo);border-radius:24px;padding:24px;margin-top:40px;text-align:center}
.contatto h2{margin:0 0 6px}
.piede{text-align:center;color:var(--grigio);font-size:.9rem;padding:28px 16px 40px}
/* pagine Assistix */
.scheda{background:var(--carta);border:1px solid var(--bordo);border-radius:20px;padding:18px;margin-top:-28px;position:relative}
.scheda .capo{display:flex;gap:14px;align-items:center}
.scheda img{width:64px;height:64px;border-radius:16px}
.scheda h3{margin:0}
.elenco{padding-left:1.2em}
@media (max-width:600px){.galleria img{height:240px}.galleria.orizz img{height:150px}.barra nav .voce{display:none}}
#assistix .testa{margin-top:18px}
#assistix .testa>div{padding-top:6px}
#assistix .icona{width:72px;height:72px;border-radius:18px;border:0}

.dettagli{margin-top:12px;border:1px solid var(--bordo);border-radius:14px;background:var(--carta2)}
.dettagli summary{cursor:pointer;list-style:none;padding:10px 14px;font-weight:700;color:var(--accento);display:flex;align-items:center;gap:8px}
.dettagli summary::-webkit-details-marker{display:none}
.dettagli summary::before{content:"+";display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:rgba(143,176,255,.15);font-weight:800}
.dettagli[open] summary::before{content:"–"}
.dettagli .testo{padding:0 16px 14px;color:var(--testo);font-size:.96rem}
.dettagli .testo h4{margin:14px 0 4px;font-size:.95rem;color:var(--accento)}
.dettagli .testo p{margin:8px 0}
.dettagli .testo ul{margin:4px 0;padding-left:1.2em}
.galleria{scrollbar-width:thin;scrollbar-color:#3a4180 transparent}
.galleria::-webkit-scrollbar{height:6px}
.galleria::-webkit-scrollbar-track{background:transparent}
.galleria::-webkit-scrollbar-thumb{background:#3a4180;border-radius:999px}
#assistix{max-width:760px;margin-left:auto;margin-right:auto}
.griglia:has(#assistix){display:block}

.pagina-app{max-width:860px;padding-top:24px}
.titolo-app{margin:0 0 2px;font-size:1.6rem;line-height:1.2}
.pagina-app h2.sotto{font-size:1.1rem;margin:24px 0 0;color:var(--grigio)}
.pagina-app .galleria img{height:420px}
.pagina-app .galleria.orizz img{height:260px}
.descrizione{margin-top:18px;font-size:1.02rem}
.descrizione h3{margin:22px 0 6px;font-size:1.05rem;color:var(--accento)}
.descrizione p{margin:10px 0}
.descrizione ul{margin:6px 0;padding-left:1.2em}
.nota{text-align:center;color:var(--grigio);margin-top:20px}
@media (max-width:600px){.pagina-app .galleria img{height:300px}.pagina-app .galleria.orizz img{height:180px}}

/* scritte: carattere Outfit e titolo sfumato come il logo */
.eroe h1{font-weight:800;font-size:clamp(2.6rem,7vw,4.2rem);letter-spacing:-.03em;background:linear-gradient(120deg,#ffffff 0%,#dbe4ff 35%,#b9a4ff 75%,#a274ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
h2.sezione,.app h3,.titolo-app{font-weight:700}
