/* Crogiol Systems — stile del sito, «Fusione» (proposta A, scelta il 22/10/2026).
   Scuro, rame fuso, schermate protagoniste, a tutta larghezza.
   Nessuno stile in linea nelle pagine: la Content-Security-Policy li blocca.
   Il colore di un prodotto si sceglie con la classe .c-<prodotto> (imposta --c). */
@import url("../font/fonts.css");

:root{
  --fondo:#07080b; --sup:#0e1015; --sup-2:#141720; --sup-3:#1b1f2a;
  --bordo:rgba(255,255,255,.08); --bordo-2:rgba(255,255,255,.14);
  --testo:#f3f1ee; --testo-2:#adb1bc; --testo-3:#8d92a0;
  --rame:#e09a68; --rame-forte:#c97a46; --rame-scuro:#2a1509; --rame-chiaro:#f7d2ae;
  --fastigia:#5b9be0; --polispro:#e3b65a; --kontario:#9c86ef; --palestria:#2fd3f5; --senseria:#ff8f7d; --demptor:#a9dc52;
  --ok:#4ade80; --errore:#f87171; --segnaposto:#fbbf24;
  --lato:clamp(20px,4vw,72px); --larga:1760px; --stretta:1100px;
  --c:var(--rame);
  color-scheme:dark;
}
*{box-sizing:border-box;margin:0}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{background:var(--fondo);color:var(--testo);font:400 17px/1.65 Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}
.larga{max-width:var(--larga);margin:0 auto;padding:0 var(--lato)}
.stretta{max-width:calc(var(--stretta) + 2 * var(--lato));margin:0 auto;padding:0 var(--lato)}
h1,h2,h3,h4{font-family:"Bricolage Grotesque",Inter,sans-serif;font-weight:600;letter-spacing:-.03em;line-height:1.04}
.salta{position:absolute;left:-9999px}
.salta:focus{left:16px;top:12px;z-index:100;background:var(--sup-2);padding:8px 14px;border-radius:8px}
:focus-visible{outline:2px solid var(--rame);outline-offset:3px;border-radius:6px}

.c-fastigia{--c:var(--fastigia)} .c-polispro{--c:var(--polispro)} .c-kontario{--c:var(--kontario)} .c-palestria{--c:var(--palestria)} .c-senseria{--c:var(--senseria)} .c-demptor{--c:var(--demptor)} .c-rame{--c:var(--rame)}

.occhiello{display:inline-block;font-family:"JetBrains Mono",monospace;font-size:12.5px;letter-spacing:.16em;text-transform:uppercase;color:var(--c)}
.fuso{background:linear-gradient(100deg,var(--rame-chiaro) 0%,var(--rame) 40%,#a5552a 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.colore{color:var(--c)}
.pulsante{display:inline-flex;align-items:center;gap:10px;padding:14px 24px;border-radius:12px;font-weight:600;font-size:15.5px;border:0;cursor:pointer;font-family:inherit;transition:transform .2s,box-shadow .2s,background .2s}
.pulsante.primo{background:linear-gradient(140deg,#f0b080,var(--rame-forte));color:var(--rame-scuro);box-shadow:0 10px 40px -12px rgba(224,154,104,.7)}
.pulsante.primo:hover{transform:translateY(-2px);box-shadow:0 16px 50px -12px rgba(224,154,104,.9)}
.pulsante.secondo{border:1px solid var(--bordo-2);background:rgba(255,255,255,.03);color:var(--testo)}
.pulsante.secondo:hover{background:rgba(255,255,255,.07)}
.pulsante.prodotto{background:var(--c);color:#0b0c10;box-shadow:0 10px 40px -14px var(--c)}
.pulsante.prodotto:hover{transform:translateY(-2px)}
.azioni{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.collega{color:var(--c);font-weight:600}
.collega::after{content:" →";display:inline-block;transition:transform .2s}
.collega:hover::after{transform:translateX(4px)}

/* ── testata con mega menu ─────────────────────────────── */
.testata{position:fixed;inset:0 0 auto;z-index:50;transition:background .3s,border-color .3s;border-bottom:1px solid transparent}
.testata.scorsa{background:rgba(7,8,11,.82);backdrop-filter:blur(14px) saturate(140%);-webkit-backdrop-filter:blur(14px) saturate(140%);border-color:var(--bordo)}
.testata .larga{display:flex;align-items:center;gap:36px;height:76px}
.marchio{display:flex;align-items:center;gap:11px;font-family:"Bricolage Grotesque",sans-serif;font-weight:600;font-size:19px;flex:none}
.marchio img{display:block;height:34px;width:auto}
.menu{display:flex;gap:4px;font-size:15px}
.voce{position:relative}
.voce>a{display:flex;align-items:center;gap:6px;padding:10px 14px;border-radius:10px;color:var(--testo-2)}
.voce>a:hover,.voce:focus-within>a,.voce>a[aria-current]{color:var(--testo);background:rgba(255,255,255,.05)}
.voce>a .freccia{font-size:10px;opacity:.7}
.tendina{position:absolute;top:calc(100% + 10px);left:-20px;width:min(780px,90vw);padding:14px;border-radius:18px;background:rgba(16,18,24,.97);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid var(--bordo-2);box-shadow:0 30px 80px -20px rgba(0,0,0,.8);display:grid;grid-template-columns:1fr 1fr;gap:6px;opacity:0;visibility:hidden;transform:translateY(6px);transition:.18s}
.tendina.piccola{width:min(560px,90vw)}
.voce:hover .tendina,.voce:focus-within .tendina{opacity:1;visibility:visible;transform:none}
.tendina a{display:flex;gap:14px;padding:14px;border-radius:12px}
.tendina a:hover{background:rgba(255,255,255,.05)}
.tendina b{display:block;font-family:"Bricolage Grotesque",sans-serif;font-size:17px;font-weight:600}
.tendina small{color:var(--testo-2);font-size:13.5px;line-height:1.45;display:block}
.pallino{width:38px;height:38px;border-radius:10px;flex:none;display:grid;place-items:center;font-weight:700;color:#0b0c10;font-family:"Bricolage Grotesque",sans-serif;background:var(--c)}
.pallino.icona-rame{background:rgba(224,154,104,.14);color:var(--rame);border:1px solid rgba(224,154,104,.35)}
.pallino svg{width:18px;height:18px}
.azioni-testata{margin-left:auto;display:flex;gap:10px;align-items:center}
.azioni-testata .entra{padding:10px 16px;color:var(--testo-2)}
.azioni-testata .entra:hover{color:var(--testo)}
.azioni-testata .pulsante{padding:11px 18px;font-size:14.5px}
.menu-telefono{display:none;margin-left:auto}
.menu-telefono summary{list-style:none;cursor:pointer;border:1px solid var(--bordo-2);border-radius:10px;padding:9px 14px;font-size:14.5px;font-weight:600}
.menu-telefono summary::-webkit-details-marker{display:none}
.menu-telefono nav{position:absolute;left:12px;right:12px;top:72px;max-height:calc(100vh - 90px);overflow:auto;background:rgba(14,16,21,.98);border:1px solid var(--bordo-2);border-radius:18px;padding:10px;display:grid;box-shadow:0 30px 80px -20px #000}
.menu-telefono nav a{padding:13px 14px;border-radius:10px;color:var(--testo-2)}
.menu-telefono nav a:hover{background:rgba(255,255,255,.05);color:var(--testo)}
.menu-telefono nav .gruppo{font-family:"JetBrains Mono",monospace;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--testo-3);padding:14px 14px 4px}
.menu-telefono nav .pulsante{margin-top:10px;justify-content:center}
@media (max-width:1080px){.menu,.azioni-testata{display:none}.menu-telefono{display:block}}

/* ── apertura della home ──────────────────────────────── */
.apertura{position:relative;padding:170px 0 0;overflow:hidden;isolation:isolate}
.apertura::before{content:"";position:absolute;inset:-20% -10% auto;height:120%;z-index:-2;background:radial-gradient(900px 520px at 70% 18%,rgba(224,154,104,.28),transparent 60%),radial-gradient(700px 500px at 15% 10%,rgba(91,155,224,.12),transparent 60%)}
.griglia-fondo{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(var(--bordo) 1px,transparent 1px),linear-gradient(90deg,var(--bordo) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 60% 20%,#000,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 60% 20%,#000,transparent 75%)}
.apertura .testo{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:clamp(24px,5vw,96px);align-items:end}
@media (max-width:1000px){.apertura .testo{grid-template-columns:1fr}}
.apertura h1{font-size:clamp(46px,7.6vw,132px);margin-top:22px}
.apertura p.sotto{font-size:clamp(17px,1.35vw,21px);color:var(--testo-2);max-width:52ch}
.palco{position:relative;margin-top:clamp(56px,7vw,110px);height:clamp(260px,46vw,820px);perspective:2200px}
.palco .schermo{position:absolute;border-radius:14px;overflow:hidden;border:1px solid var(--bordo-2);background:#0d0f14;box-shadow:0 40px 120px -30px rgba(0,0,0,.9)}
.palco .s1{width:62%;left:19%;top:0;z-index:3;transform:rotateX(14deg);transform-origin:50% 0;box-shadow:0 60px 160px -40px rgba(224,154,104,.35),0 40px 120px -30px rgba(0,0,0,.9)}
.palco .s2{width:44%;left:-2%;top:12%;z-index:2;transform:rotateY(24deg) rotateX(10deg);opacity:.8}
.palco .s3{width:44%;right:-2%;top:12%;z-index:2;transform:rotateY(-24deg) rotateX(10deg);opacity:.8}
.palco::after{content:"";position:absolute;inset:auto 0 0;height:45%;background:linear-gradient(transparent,var(--fondo));z-index:4}
@media (max-width:700px){.palco .s2,.palco .s3{display:none}.palco .s1{width:100%;left:0}}
.cornice{background:#0d0f14;border-bottom:1px solid var(--bordo);display:flex;align-items:center;gap:7px;padding:10px 14px}
.cornice span{width:10px;height:10px;border-radius:50%;background:#2a2d36;flex:none}
.cornice em{font-style:normal;margin-left:12px;font-size:12px;color:var(--testo-3);font-family:"JetBrains Mono",monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* nastro dei prodotti */
.nastro{border-block:1px solid var(--bordo);background:var(--sup)}
.nastro .larga{display:grid;grid-template-columns:repeat(3,1fr)}
.nastro a:nth-child(3n+1){border-left:1px solid var(--bordo)}
.nastro a:nth-child(n+4){border-top:1px solid var(--bordo)}
.nastro a{display:flex;align-items:center;gap:14px;padding:26px 22px;border-right:1px solid var(--bordo);transition:background .2s}
.nastro a:first-child{border-left:1px solid var(--bordo)}
.nastro a:hover{background:rgba(255,255,255,.03)}
.nastro b{font-family:"Bricolage Grotesque",sans-serif;font-size:20px;display:block;font-weight:600}
.nastro small{color:var(--testo-3);font-size:13.5px}
@media (max-width:900px){.nastro .larga{grid-template-columns:1fr 1fr}.nastro a:nth-child(3){border-left:1px solid var(--bordo)}}
@media (max-width:520px){.nastro .larga{grid-template-columns:1fr}.nastro a{border-left:1px solid var(--bordo)}}

/* ── sezioni ──────────────────────────────────────────── */
.sezione{padding:clamp(90px,10vw,170px) 0}
.sezione.attaccata{padding-top:0}
.intesta{display:flex;justify-content:space-between;align-items:end;gap:32px;flex-wrap:wrap;margin-bottom:clamp(40px,4vw,70px)}
.intesta h2{font-size:clamp(36px,4.6vw,80px);max-width:16ch;margin-top:16px}
.intesta p{color:var(--testo-2);max-width:48ch;font-size:18px}

/* vetrina a schede (home) */
.schede{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:28px}
.schede button{font:inherit;font-weight:600;color:var(--testo-2);background:transparent;border:1px solid var(--bordo-2);border-radius:999px;padding:11px 20px;cursor:pointer;display:flex;gap:10px;align-items:center;transition:.2s}
.schede button i{width:10px;height:10px;border-radius:50%;background:var(--c)}
.schede button[aria-selected=true]{color:#0b0c10;background:var(--c);border-color:var(--c)}
.schede button[aria-selected=true] i{background:#0b0c10}
.vetrina{display:grid;grid-template-columns:minmax(300px,.55fr) minmax(0,1.45fr);gap:clamp(28px,4vw,72px);align-items:center}
.vetrina[hidden]{display:none}
@media (max-width:1000px){.vetrina{grid-template-columns:1fr}}
.vetrina h3{font-size:clamp(34px,3.4vw,58px);margin:10px 0 14px}
.vetrina p{color:var(--testo-2);font-size:18px;margin-bottom:22px}
.spunte{list-style:none;padding:0;display:grid;gap:12px;margin-bottom:28px}
.spunte li{display:flex;gap:12px}
.spunte li::before{content:"";width:18px;height:18px;border-radius:6px;flex:none;margin-top:4px;background:color-mix(in srgb,var(--c) 28%,transparent);border:1px solid var(--c)}
.finestra{border-radius:16px;overflow:hidden;border:1px solid var(--bordo-2);background:#0d0f14;box-shadow:0 50px 140px -40px color-mix(in srgb,var(--c) 45%,transparent),0 30px 90px -30px rgba(0,0,0,.9)}
.finestra img{width:100%}

/* bento della piattaforma */
.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:16px}
.tessera{grid-column:span 4;background:linear-gradient(180deg,var(--sup-2),var(--sup));border:1px solid var(--bordo);border-radius:22px;padding:32px;position:relative;overflow:hidden;min-height:250px;display:flex;flex-direction:column;gap:12px}
.tessera.grande{grid-column:span 8}
.tessera.meta{grid-column:span 6}
.tessera h3{font-size:26px;margin-top:auto}
.tessera p{color:var(--testo-2)}
.icona{width:48px;height:48px;border-radius:13px;display:grid;place-items:center;background:rgba(224,154,104,.12);border:1px solid rgba(224,154,104,.35);color:var(--rame);flex:none}
.icona svg{width:22px;height:22px}
.tessera.grande::after{content:"";position:absolute;right:-120px;top:-120px;width:420px;height:420px;background:radial-gradient(circle,rgba(224,154,104,.22),transparent 65%);pointer-events:none}
.etichette{display:flex;gap:10px;flex-wrap:wrap;margin-top:6px}
.etichette span{padding:8px 14px;border-radius:999px;border:1px solid var(--bordo-2);font-size:14px;display:flex;gap:8px;align-items:center}
.etichette span i{width:8px;height:8px;border-radius:50%;background:var(--c)}
@media (max-width:1000px){.tessera,.tessera.grande,.tessera.meta{grid-column:span 12}}

/* galleria che scorre */
.galleria{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.binario{display:flex;gap:22px;width:max-content;animation:scorre 90s linear infinite}
.galleria:hover .binario{animation-play-state:paused}
.binario figure{width:clamp(300px,30vw,560px);border-radius:14px;overflow:hidden;border:1px solid var(--bordo-2);background:#0d0f14;flex:none}
.binario figcaption{padding:12px 16px;font-size:14px;color:var(--testo-2);display:flex;gap:8px;align-items:center}
.binario figcaption i{width:8px;height:8px;border-radius:50%;background:var(--c)}
@keyframes scorre{to{transform:translateX(-50%)}}

/* percorso */
.percorso{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--bordo-2)}
.percorso div{padding:34px 28px 0 0;position:relative}
.percorso div::before{content:"";position:absolute;top:-6px;left:0;width:11px;height:11px;border-radius:50%;background:var(--c);box-shadow:0 0 0 6px color-mix(in srgb,var(--c) 18%,transparent)}
.percorso b{font-family:"JetBrains Mono",monospace;color:var(--c);font-size:13px}
.percorso h3{font-size:26px;margin:10px 0}
.percorso p{color:var(--testo-2)}
@media (max-width:900px){.percorso{grid-template-columns:1fr 1fr;row-gap:40px}}
@media (max-width:520px){.percorso{grid-template-columns:1fr}}

/* invito alla demo */
.invito{margin:0 var(--lato) clamp(80px,8vw,140px);border-radius:32px;padding:clamp(48px,7vw,120px) clamp(24px,6vw,110px);position:relative;overflow:hidden;background:radial-gradient(900px 400px at 85% 0%,rgba(240,176,128,.55),transparent 65%),radial-gradient(700px 400px at 0% 100%,rgba(165,85,42,.5),transparent 60%),#1a0f09;border:1px solid rgba(224,154,104,.3)}
.invito .occhiello{color:var(--rame-chiaro)}
.invito h2{font-size:clamp(38px,5.4vw,96px);max-width:15ch;margin-top:14px}
.invito p{color:#e6d3c4;font-size:19px;max-width:54ch;margin-top:20px}

/* ── pagine prodotto ──────────────────────────────────── */
.apertura-prodotto{position:relative;padding:160px 0 0;overflow:hidden;isolation:isolate}
.apertura-prodotto::before{content:"";position:absolute;inset:-10% -10% auto;height:110%;z-index:-2;background:radial-gradient(900px 520px at 72% 22%,color-mix(in srgb,var(--c) 30%,transparent),transparent 62%),radial-gradient(600px 400px at 10% 5%,rgba(224,154,104,.12),transparent 60%)}
.apertura-prodotto .testo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(24px,5vw,96px);align-items:end}
@media (max-width:1000px){.apertura-prodotto .testo{grid-template-columns:1fr}}
.apertura-prodotto h1{font-size:clamp(56px,9vw,160px);margin-top:18px;color:var(--c)}
.apertura-prodotto .titoletto{font-family:"Bricolage Grotesque",sans-serif;font-size:clamp(26px,2.6vw,44px);font-weight:600;letter-spacing:-.02em;line-height:1.12;margin-top:14px}
.apertura-prodotto p.sotto{font-size:clamp(17px,1.35vw,20px);color:var(--testo-2);max-width:54ch}
.schermo-grande{margin-top:clamp(56px,6vw,96px);position:relative}
.schermo-grande .finestra{transform:perspective(2400px) rotateX(10deg);transform-origin:50% 0}
.schermo-grande::after{content:"";position:absolute;inset:auto 0 -2px;height:40%;background:linear-gradient(transparent,var(--fondo))}
.numeri{display:grid;grid-template-columns:repeat(4,1fr);border-block:1px solid var(--bordo);background:var(--sup)}
.numeri div{padding:28px 24px;border-right:1px solid var(--bordo)}
.numeri div:first-child{border-left:1px solid var(--bordo)}
.numeri b{display:block;font-family:"Bricolage Grotesque",sans-serif;font-size:22px;font-weight:600;color:var(--testo)}
.numeri span{color:var(--testo-3);font-size:14.5px}
@media (max-width:900px){.numeri{grid-template-columns:1fr 1fr}.numeri div:nth-child(3){border-left:1px solid var(--bordo)}}

.funzione{display:grid;grid-template-columns:minmax(300px,.5fr) minmax(0,1.5fr);gap:clamp(32px,5vw,96px);align-items:center;padding:clamp(50px,6vw,100px) 0;border-top:1px solid var(--bordo)}
.funzione:first-child{border-top:0;padding-top:0}
.funzione.rovescia{grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr)}
.funzione.rovescia .descr{order:2}
.funzione .numero{font-family:"JetBrains Mono",monospace;font-size:13px;color:var(--c);letter-spacing:.1em}
.funzione h3{font-size:clamp(30px,3vw,52px);margin:12px 0 16px}
.funzione p{color:var(--testo-2);font-size:18px}
@media (max-width:1000px){.funzione,.funzione.rovescia{grid-template-columns:1fr}.funzione.rovescia .descr{order:0}}

.schede-per-chi{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.scheda{background:linear-gradient(180deg,var(--sup-2),var(--sup));border:1px solid var(--bordo);border-radius:22px;padding:32px}
.scheda h3{font-size:24px;margin:16px 0 10px}
.scheda p{color:var(--testo-2)}
.scheda .icona{background:color-mix(in srgb,var(--c) 14%,transparent);border-color:color-mix(in srgb,var(--c) 40%,transparent);color:var(--c)}
@media (max-width:1000px){.schede-per-chi{grid-template-columns:1fr}}

.domande{display:grid;gap:10px;max-width:1100px}
.domande details{background:var(--sup);border:1px solid var(--bordo);border-radius:16px;padding:0 26px}
.domande summary{cursor:pointer;list-style:none;padding:22px 0;font-family:"Bricolage Grotesque",sans-serif;font-size:21px;font-weight:600;display:flex;justify-content:space-between;gap:20px}
.domande summary::-webkit-details-marker{display:none}
.domande summary::after{content:"+";color:var(--c);font-size:26px;line-height:1;transition:transform .2s}
.domande details[open] summary::after{transform:rotate(45deg)}
.domande details p{color:var(--testo-2);padding:0 0 24px;max-width:80ch}

.altri{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.altro{border-radius:22px;overflow:hidden;border:1px solid var(--bordo);background:var(--sup);transition:transform .25s,border-color .25s;display:flex;flex-direction:column}
.altro:hover{transform:translateY(-4px);border-color:var(--c)}
.altro div{padding:24px 26px}
.altro b{display:block;font-family:"Bricolage Grotesque",sans-serif;font-size:26px;font-weight:600;color:var(--c)}
.altro small{color:var(--testo-2);font-size:15px}
.altro img{border-top:1px solid var(--bordo);margin-top:auto}
@media (max-width:900px){.altri{grid-template-columns:1fr}}

/* ── pagine dell'azienda ──────────────────────────────── */
.apertura-pagina{position:relative;padding:170px 0 clamp(60px,6vw,100px);overflow:hidden;isolation:isolate}
.apertura-pagina::before{content:"";position:absolute;inset:-30% -10% auto;height:130%;z-index:-2;background:radial-gradient(800px 460px at 75% 25%,rgba(224,154,104,.22),transparent 62%)}
.apertura-pagina h1{font-size:clamp(46px,6.6vw,120px);margin-top:18px;max-width:22ch}
.apertura-pagina p.sotto{font-size:clamp(18px,1.5vw,22px);color:var(--testo-2);max-width:60ch;margin-top:26px}
.due-colonne{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,6vw,120px)}
.due-colonne h2{font-size:clamp(32px,3.4vw,56px);margin-top:14px}
.due-colonne .prosa p{color:var(--testo-2);font-size:19px}
.due-colonne .prosa p+p{margin-top:18px}
@media (max-width:1000px){.due-colonne{grid-template-columns:1fr}}
.principi{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.principi .scheda b{font-family:"JetBrains Mono",monospace;color:var(--rame);font-size:13px}
@media (max-width:1100px){.principi{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.principi{grid-template-columns:1fr}}
.ruoli{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.ruolo{background:linear-gradient(180deg,var(--sup-2),var(--sup));border:1px solid var(--bordo);border-radius:22px;padding:34px;display:flex;flex-direction:column;gap:12px}
.ruolo h3{font-size:28px;margin-top:10px}
.ruolo p{color:var(--testo-2)}
.ruolo ul{list-style:none;padding:0;display:grid;gap:8px;margin-top:6px;color:var(--testo-2);font-size:15.5px}
.ruolo li::before{content:"— ";color:var(--rame)}
@media (max-width:1000px){.ruoli{grid-template-columns:1fr}}
.cronologia{display:grid;border-left:1px solid var(--bordo-2);margin-left:6px}
.cronologia div{padding:0 0 44px 36px;position:relative}
.cronologia div:last-child{padding-bottom:0}
.cronologia div::before{content:"";position:absolute;left:-6px;top:6px;width:11px;height:11px;border-radius:50%;background:var(--rame);box-shadow:0 0 0 6px rgba(224,154,104,.15)}
.cronologia b{font-family:"JetBrains Mono",monospace;color:var(--rame);font-size:13px}
.cronologia h3{font-size:26px;margin:8px 0}
.cronologia p{color:var(--testo-2);max-width:70ch}

/* testo lungo: privacy, cookie, entra */
.testo-lungo h2{font-size:28px;margin:44px 0 12px}
.testo-lungo h2:first-child{margin-top:0}
.testo-lungo p,.testo-lungo li{color:var(--testo-2);font-size:17.5px;max-width:78ch}
.testo-lungo p+p{margin-top:14px}
.testo-lungo a{color:var(--rame)}
.testo-lungo ul{padding-left:22px;margin-top:10px}

/* ── contatti e modulo ────────────────────────────────── */
.contatti{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(320px,.75fr);gap:clamp(24px,4vw,64px);align-items:start}
@media (max-width:1000px){.contatti{grid-template-columns:1fr}}
.pannello{background:linear-gradient(180deg,var(--sup-2),var(--sup));border:1px solid var(--bordo);border-radius:24px;padding:clamp(26px,3vw,44px)}
.pannello h2{font-size:28px;margin-bottom:22px}
.modulo{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.modulo .tutta{grid-column:1/-1}
@media (max-width:620px){.modulo{grid-template-columns:1fr}}
.modulo label{display:grid;gap:8px;font-size:14.5px;font-weight:600;color:var(--testo)}
.modulo input,.modulo select,.modulo textarea{font:inherit;font-weight:400;color:var(--testo);background:#0a0c10;border:1px solid var(--bordo-2);border-radius:12px;padding:13px 15px;width:100%}
.modulo textarea{min-height:140px;resize:vertical}
.modulo input:focus,.modulo select:focus,.modulo textarea:focus{outline:2px solid var(--rame);outline-offset:1px;border-color:transparent}
.modulo .spunta{display:flex;align-items:flex-start;gap:12px;font-weight:400;color:var(--testo-2)}
.modulo .spunta input{width:18px;height:18px;margin-top:3px;flex:none;accent-color:var(--rame)}
.modulo .spunta a{color:var(--rame)}
.modulo button:disabled{opacity:.6;cursor:wait}
.trappola{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.esito{min-height:1.6em;font-weight:600}
.esito.ok{color:var(--ok)}.esito.errore{color:var(--errore)}
.passi{list-style:none;padding:0;display:grid;gap:22px;counter-reset:passo}
.passi li{counter-increment:passo;display:grid;grid-template-columns:40px 1fr;gap:14px;color:var(--testo-2)}
.passi li::before{content:counter(passo);display:grid;place-items:center;width:40px;height:40px;border-radius:11px;background:rgba(224,154,104,.12);border:1px solid rgba(224,154,104,.35);font-family:"JetBrains Mono",monospace;color:var(--rame)}
.passi strong{color:var(--testo);display:block}
.nota{color:var(--testo-2);margin-top:26px}
.nota a{color:var(--rame)}

/* ── piè di pagina ────────────────────────────────────── */
.pie{border-top:1px solid var(--bordo);padding:72px 0 48px;color:var(--testo-3);font-size:14.5px}
.pie .colonne{display:grid;grid-template-columns:1.6fr repeat(4,1fr);gap:32px}
.pie .colonne>div>p{margin-top:16px;max-width:34ch}
.pie h4{font-family:Inter,sans-serif;font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--testo);margin-bottom:16px;font-weight:600}
.pie ul{list-style:none;padding:0;display:grid;gap:10px}
.pie a:hover{color:var(--testo)}
.pie .fondo{margin-top:56px;padding-top:24px;border-top:1px solid var(--bordo);display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px}
.segnaposto{color:var(--segnaposto);font-weight:600}
@media (max-width:900px){.pie .colonne{grid-template-columns:1fr 1fr}.pie .colonne>div:first-child{grid-column:1/-1}}

/* ── ingressi allo scorrimento (solo se c'è JavaScript) ── */
.js .rivela{opacity:0;transform:translateY(28px);transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.js .rivela.vista{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.js .rivela{opacity:1;transform:none;transition:none}.binario{animation:none}*{transition:none!important;scroll-behavior:auto!important}}
.altri.altri-quattro{grid-template-columns:repeat(4,1fr)}
@media (max-width:1100px){.altri.altri-quattro{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.altri.altri-quattro{grid-template-columns:1fr}}
