
/* Concetto: "il quaderno e il tablet". Una rivista di bottega: foto vere grandi, testo da leggere, la storia del passaggio dalla carta al digitale.
   Niente riquadri in serie: impaginazione asimmetrica, colonne di larghezza diversa, didascalie da giornale.
   Colori: carta, inchiostro, giallo del segno. Caratteri: Familjen Grotesk (titoli), Newsreader (lettura), Doto (numeri, come i punti del segno), Martian Mono (didascalie). */
:root{
  --carta:#F4F2EC; --carta-2:#ECE9E1; --bianco:#FFFFFF; --ink:#161513; --ink-2:#4A4740; --ink-3:#69645C; --riga:#D9D4C9;
  --giallo:#A6CB7B; --giallo-scuro:#4C6B2A; --ok:#2D7A4B; --att:#B5401F;
  --f-tit:'Familjen Grotesk','Helvetica Neue',Arial,sans-serif;
  --f-let:'Newsreader',Georgia,'Times New Roman',serif;
  --f-num:'Doto','Courier New',monospace;
  --f-mono:'Martian Mono',Menlo,Consolas,monospace;
  --max:1240px; --ease:cubic-bezier(.2,.8,.2,1);
  color-scheme: light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--carta);color:var(--ink);font-family:var(--f-tit);font-size:18px;line-height:1.5;-webkit-font-smoothing:antialiased}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:40;background:var(--carta)}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--giallo);outline-offset:3px}
::selection{background:var(--giallo);color:var(--ink)}
.wrap{max-width:var(--max);margin:0 auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
h1,h2,h3{margin:0;font-family:var(--f-tit);font-weight:600;letter-spacing:-.03em;text-wrap:balance}
h2{font-size:clamp(36px,5.2vw,72px);line-height:.98}
h3{font-size:24px;line-height:1.15;letter-spacing:-.02em}
p{margin:0}
em{font-style:italic}
.didascalia{font-family:var(--f-mono);font-size:11px;letter-spacing:.02em;color:var(--ink-3);line-height:1.5}
.didascalia b{color:var(--ink);font-weight:500}
.occhiello{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.04em;color:var(--ink-2);display:flex;gap:12px;align-items:baseline}
.occhiello span{color:var(--giallo-scuro)}
.num{font-family:var(--f-tit);font-weight:600;line-height:.85;letter-spacing:-.06em;font-variant-numeric:tabular-nums}
.link{font-family:var(--f-tit);font-weight:600;text-decoration:none;border-bottom:2px solid var(--giallo);padding-bottom:1px}
.link:hover{border-bottom-color:var(--ink)}
.btn{display:inline-flex;align-items:center;gap:14px;min-height:56px;padding:0 26px;background:var(--ink);color:var(--carta);font-family:var(--f-tit);font-weight:600;font-size:17px;text-decoration:none;border:0;cursor:pointer;transition:background .2s}
.btn:hover{background:#000}
.btn .s{display:inline-block;width:10px;height:10px;background:var(--giallo);transition:transform .25s var(--ease)}
.btn:hover .s{transform:rotate(45deg)}

/* testata */
.testata{position:sticky;top:env(safe-area-inset-top,0px);z-index:30;background:var(--carta);border-bottom:1px solid var(--ink)}
.testata .wrap{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-block:14px}
.marchio{display:flex;align-items:center;gap:10px;text-decoration:none}
.marchio b{font-family:var(--f-tit);font-weight:700;font-size:21px;letter-spacing:.02em}
.voci{display:flex;gap:26px;align-items:center;font-family:var(--f-tit);font-size:15.5px}
.voci a{text-decoration:none}
.voci a:not(.link):hover{color:var(--giallo-scuro)}
@media (max-width:860px){.voci a:not(.link){display:none}}

/* apertura */
.apertura{padding-block:56px 40px}
.apertura .griglia{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:end}
.apertura h1{font-size:clamp(52px,8vw,128px);line-height:.9;letter-spacing:-.055em;font-weight:600}
.apertura h1 .giro{display:inline-block;color:var(--giallo-scuro);font-style:italic;font-family:var(--f-let);font-weight:400;letter-spacing:-.03em}
@media (prefers-reduced-motion:no-preference){.giro.entra{animation:entra .45s var(--ease) both}.giro.esce{animation:esce .25s ease-in both}}
@keyframes entra{from{opacity:0;transform:translateY(.25em)}}
@keyframes esce{to{opacity:0;transform:translateY(-.2em)}}
.apertura .sotto{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:28px;align-items:end;margin-top:36px}
.apertura .sotto p{font-size:21px;max-width:34ch;color:var(--ink-2)}
.apertura .sotto p b{color:var(--ink);font-weight:500}
.foto-alta{position:relative}
.foto-alta img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 30%}
.comanda{position:absolute;left:-64px;top:62%;width:236px;background:var(--bianco);padding:14px 16px 16px;font-family:var(--f-mono);font-size:11px;line-height:1.55;transform:rotate(-3deg);box-shadow:0 18px 30px rgba(22,21,19,.18);border-top:6px dashed var(--carta-2)}
.comanda .barrato{text-decoration:line-through;color:var(--ink-3)}
.comanda .timbro{display:inline-block;margin-top:10px;border:2px solid var(--giallo-scuro);color:var(--giallo-scuro);padding:3px 8px;font-weight:500;transform:rotate(-4deg);letter-spacing:.06em}
@media (max-width:900px){.apertura .griglia{grid-template-columns:1fr}.apertura .sotto{grid-template-columns:1fr}.comanda{left:auto;right:12px;top:auto;bottom:70px;width:210px}}

/* fascia voucher (testo che scorre, un'unica riga) */
.fascia{background:var(--giallo);color:var(--ink);overflow:hidden;border-block:1px solid var(--ink)}
.fascia .scorre{display:flex;gap:56px;width:max-content;padding-block:13px;font-family:var(--f-tit);font-weight:600;font-size:18px;white-space:nowrap}
.fascia .scorre span::after{content:"✦";margin-left:56px;font-size:13px;vertical-align:2px}
@media (prefers-reduced-motion:no-preference){.fascia .scorre{animation:scorri 40s linear infinite}}
@keyframes scorri{to{transform:translateX(-50%)}}

/* prima / dopo */
.sez{padding-block:110px}
.primadopo{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:22px;align-items:start;margin-top:52px}
.primadopo figure{margin:0;display:flex;flex-direction:column;gap:10px}
.primadopo .p img{aspect-ratio:4/5;object-fit:cover;filter:grayscale(1) contrast(1.05)}
.primadopo .d{margin-top:120px}
.primadopo .d img{aspect-ratio:3/2;object-fit:cover}
.etichetta-pd{font-family:var(--f-tit);font-weight:600;font-size:15px;display:flex;justify-content:space-between;border-top:1px solid var(--ink);padding-top:8px}
.etichetta-pd i{font-style:normal;font-family:var(--f-mono);font-size:11px;color:var(--ink-3);font-weight:400}
@media (max-width:860px){.primadopo{grid-template-columns:1fr}.primadopo .d{margin-top:0}}


.viaggio{list-style:none;margin:56px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:2px solid var(--ink)}
.viaggio li{padding:18px 18px 0 0;display:flex;flex-direction:column;gap:6px;position:relative}
.viaggio li+li{padding-left:18px;border-left:1px solid var(--riga)}
.viaggio .ora{font-family:var(--f-mono);font-size:12px;color:var(--giallo-scuro)}
.viaggio b{font-size:20px;font-weight:600;letter-spacing:-.02em;line-height:1.2}
.viaggio span.dove{font-size:15px;color:var(--ink-3)}
.esito-viaggio{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 18px;margin-top:36px;padding:18px 22px;background:var(--ink);color:var(--carta)}
.esito-viaggio b{font-size:22px;font-weight:600;letter-spacing:-.02em}
.esito-viaggio b em{font-style:normal;color:var(--giallo)}
.esito-viaggio span{font-size:16px;color:#CFC9BE}
@media (max-width:760px){.viaggio{grid-template-columns:1fr 1fr;row-gap:22px}.viaggio li:nth-child(3){padding-left:0;border-left:0}}
.testo-col{margin-top:44px;background:var(--bianco);border:1px solid var(--riga);border-top:4px solid var(--giallo);padding:30px 32px 32px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px 40px}
.testo-col .tag{grid-column:1/-1;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.06em;color:var(--giallo-scuro)}
.testo-col p{color:var(--ink-2);font-size:18px;line-height:1.6}
.testo-col p b{color:var(--ink);font-weight:600}
@media (max-width:860px){.testo-col{grid-template-columns:1fr;padding:24px 22px}}

/* ti capita? problema -> come puo essere */
.coppie{list-style:none;margin:56px 0 0;padding:0;border-top:2px solid var(--ink)}
.coppia{display:grid;grid-template-columns:minmax(0,5fr) 96px minmax(0,6fr);align-items:center;gap:8px;padding:48px 0;border-bottom:1px solid var(--riga)}
.biglietto{position:relative;background:var(--bianco);border:1px solid var(--riga);padding:20px 22px 22px;transform:rotate(var(--r,-1.4deg));transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.coppia:nth-child(2) .biglietto{--r:1.2deg}.coppia:nth-child(3) .biglietto{--r:-.7deg}.coppia:nth-child(4) .biglietto{--r:1.6deg}
.coppia.in-vista .biglietto{transform:rotate(0deg)}
.biglietto::after{content:"";position:absolute;left:50%;top:-6px;width:10px;height:10px;margin-left:-5px;background:var(--giallo)}
.biglietto .testa{display:flex;justify-content:space-between;gap:10px;font-family:var(--f-mono);font-size:11px;letter-spacing:.05em;color:var(--ink-3);padding-bottom:12px;border-bottom:1px solid var(--riga)}
.biglietto .testa b{color:var(--giallo-scuro);font-weight:400}
.biglietto p{font-family:var(--f-tit);margin-top:14px;font-size:clamp(21px,2vw,27px);font-weight:600;letter-spacing:-.025em;line-height:1.15;color:var(--ink);text-wrap:balance}
.biglietto p span{background:linear-gradient(transparent 60%,rgba(166,203,123,.4) 0)}
.freccia{display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--ink)}
.freccia svg{width:80px;height:40px;overflow:visible}
.freccia path{fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-dasharray:120;stroke-dashoffset:120;transition:stroke-dashoffset .9s .2s cubic-bezier(.2,.8,.2,1)}
.coppia.in-vista .freccia path{stroke-dashoffset:0}
.freccia small{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;color:var(--giallo-scuro);white-space:nowrap}
.demo{min-width:0;opacity:0;transform:translateX(14px);transition:opacity .6s .5s,transform .6s .5s cubic-bezier(.2,.8,.2,1)}
.coppia.in-vista .demo{opacity:1;transform:none}
.demo .cosa{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;color:var(--giallo-scuro);margin-bottom:12px}
.demo h4{font-size:clamp(22px,2.1vw,28px);letter-spacing:-.03em;line-height:1.1;font-weight:600;margin-bottom:16px}
.pann{background:var(--bianco);border:1px solid var(--riga);border-top:4px solid var(--giallo);padding:18px 20px}
/* 1 voce */
.voce{display:flex;align-items:center;gap:14px;padding-bottom:14px;border-bottom:1px solid var(--riga)}
.mic{flex:none;width:44px;height:44px;background:var(--ink);display:grid;place-items:center;position:relative}
.mic svg{width:18px;height:18px}
.coppia.in-vista .mic::after{content:"";position:absolute;inset:-6px;border:2px solid var(--giallo);animation:onda 1.6s ease-out infinite}
@keyframes onda{from{opacity:1;transform:scale(.85)}to{opacity:0;transform:scale(1.25)}}
.detto{font-family:var(--f-let);font-style:italic;font-size:19px;line-height:1.3;color:var(--ink);min-height:2.6em}
.detto::after{content:"";display:inline-block;width:2px;height:1em;background:var(--giallo-scuro);margin-left:2px;vertical-align:-2px;animation:cur 1s steps(1) infinite}
@keyframes cur{50%{opacity:0}}
.tc-scheda{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 16px;padding-top:14px;font-size:15px;opacity:0;transition:opacity .5s}
.tc-scheda.pronta{opacity:1}
.tc-scheda dt{font-family:var(--f-mono);font-size:11px;color:var(--ink-3);padding-top:3px}
.tc-scheda dd{margin:0;font-weight:500}
.tc-scheda .fatto{grid-column:1/-1;margin-top:8px;font-family:var(--f-mono);font-size:11.5px;color:var(--ok)}
/* 2 avviso */
.tc-avviso{max-width:400px;background:var(--carta-2);border:1px solid var(--riga);padding:14px 16px;display:grid;grid-template-columns:28px minmax(0,1fr);gap:4px 12px}
.tc-avviso .ic{grid-row:span 3;width:28px;height:28px;background:var(--ink);display:grid;place-items:center}
.tc-avviso .ic svg{width:16px}
.tc-avviso .tt{display:flex;justify-content:space-between;font-family:var(--f-mono);font-size:10.5px;color:var(--ink-3)}
.tc-avviso b{font-weight:600;font-size:16px}
.tc-avviso p{font-size:15px;color:var(--ink-2);line-height:1.35}
.tc-avviso .bt{grid-column:2;display:flex;gap:8px;margin-top:8px}
.tc-avviso .bt span{font-size:13px;font-weight:600;padding:7px 12px;border:1px solid var(--ink)}
.tc-avviso .bt span:first-child{background:var(--ink);color:var(--carta)}
.tc-avviso+.tc-avviso{margin:-6px 0 0 26px;opacity:.55;transform:scale(.97);transform-origin:left top}
/* 3 su misura */
.misura table{width:100%;border-collapse:collapse;font-size:14.5px}
.misura th{text-align:left;font-family:var(--f-mono);font-weight:400;font-size:10.5px;letter-spacing:.05em;color:var(--giallo-scuro);padding:0 8px 10px 0;border-bottom:1px solid var(--ink)}
.misura td{padding:10px 8px 10px 0;border-bottom:1px solid var(--riga);font-variant-numeric:tabular-nums}
.misura tr:last-child td{border-bottom:0}
.misura .nota{margin-top:12px;font-family:var(--f-mono);font-size:11px;color:var(--ink-3)}
/* 4 impara */
.consiglio{position:relative;max-width:440px;background:var(--ink);color:var(--carta);padding:18px 20px}
.consiglio::after{content:"";position:absolute;left:28px;bottom:-10px;border:10px solid transparent;border-top-color:var(--ink);border-bottom:0}
.consiglio small{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.06em;color:var(--giallo)}
.consiglio p{margin-top:8px;font-size:17px;line-height:1.4}
.consiglio .bt{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.consiglio .bt span{font-size:13px;font-weight:600;padding:7px 12px;border:1px solid #6b665d}
.consiglio .bt span:first-child{background:var(--giallo);color:var(--ink);border-color:var(--giallo)}
.risparmio{margin-top:22px;font-family:var(--f-mono);font-size:11.5px;color:var(--ink-3)}
.risparmio b{color:var(--ink);font-weight:400}
.chiusa{margin-top:64px;display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:24px}
.chiusa h3{font-size:clamp(34px,4.4vw,60px);line-height:.98;letter-spacing:-.04em;max-width:15ch}
.chiusa h3 em{font-family:var(--f-let);font-style:italic;font-weight:400;color:var(--giallo-scuro)}
@media (max-width:860px){.coppia{grid-template-columns:1fr;gap:4px;padding:40px 0}.freccia{flex-direction:row;justify-content:flex-start;padding-left:24px}.freccia svg{width:40px;height:56px;transform:rotate(90deg)}.biglietto{max-width:520px}.demo{transform:translateY(12px)}}
@media (prefers-reduced-motion:reduce){.biglietto,.demo,.freccia path{transition:none}.demo{opacity:1;transform:none}.freccia path{stroke-dashoffset:0}.coppia .mic::after,.detto::after{animation:none}}

/* calcolo in forma di frase */
.calcolo{background:var(--bianco);border-block:1px solid var(--ink)}
.frase{font-family:var(--f-tit);font-weight:500;letter-spacing:-.02em;font-size:clamp(24px,2.8vw,38px);line-height:1.5;max-width:28em;letter-spacing:-.01em}
.frase input,.frase select{font:inherit;font-family:var(--f-tit);font-weight:600;color:var(--giallo-scuro);background:transparent;border:0;border-bottom:2px solid var(--giallo);padding:0 2px;width:2.6ch;text-align:center;border-radius:0;-moz-appearance:textfield;appearance:textfield}
.frase input::-webkit-outer-spin-button,.frase input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.frase input.largo{width:4.4ch}.frase input.lunghissimo{width:5.6ch}
.frase select{width:auto;text-align:left;cursor:pointer;-webkit-appearance:none}
.frase input:focus,.frase select:focus{outline:none;background:var(--carta)}
.risultato{display:grid;grid-template-columns:auto minmax(0,1fr);gap:28px 48px;align-items:end;margin-top:64px;padding-top:28px;border-top:1px solid var(--ink)}
.risultato .num{font-size:clamp(110px,16vw,230px);color:var(--ink)}
.risultato .num small{font-size:.3em;font-family:var(--f-tit);font-weight:600;letter-spacing:-.02em;margin-left:.2em}
.risultato p{font-size:clamp(20px,2vw,26px);line-height:1.45;max-width:30ch}
.risultato p b{font-family:var(--f-tit);font-weight:600;background:linear-gradient(transparent 62%,rgba(166,203,123,.45) 62%)}
@media (max-width:760px){.risultato{grid-template-columns:1fr}}

/* gestionale */
.gest{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:56px;align-items:start}
.gest .lato{position:sticky;top:110px;display:flex;flex-direction:column;gap:22px}
.gest .lato img{aspect-ratio:3/4;object-fit:cover;object-position:35% 50%}
.indice{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.indice li{display:grid;grid-template-columns:38px minmax(0,1fr);gap:4px 10px;padding:16px 0;border-bottom:1px solid var(--riga)}
.indice li span{font-family:var(--f-mono);font-size:11px;color:var(--ink-3);padding-top:6px}
.indice li b{font-family:var(--f-tit);font-weight:600;font-size:20px;letter-spacing:-.02em}
.indice li p{grid-column:2;color:var(--ink-2);font-size:17px}
.schede{display:flex;gap:24px;border-bottom:1px solid var(--ink);margin-bottom:18px;overflow-x:auto}
.schede button{all:unset;cursor:pointer;padding:10px 0;font-family:var(--f-tit);font-weight:500;font-size:17px;color:var(--ink-3);border-bottom:3px solid transparent;margin-bottom:-1px;white-space:nowrap}
.schede button[aria-selected=true]{color:var(--ink);border-bottom-color:var(--giallo)}
.schede button:focus-visible{outline:2px solid var(--giallo)}
.schermo{background:var(--bianco);border:1px solid var(--ink);box-shadow:10px 10px 0 var(--carta-2);font-family:var(--f-tit);font-size:14px;color:var(--ink)}
.schermo .barra{display:flex;justify-content:space-between;align-items:center;padding:10px 16px;border-bottom:1px solid var(--riga);font-family:var(--f-mono);font-size:10.5px;color:var(--ink-3)}
.schermo .barra i{font-style:normal;display:flex;gap:6px}.schermo .barra i::before,.schermo .barra i::after,.schermo .barra i b{content:"";width:9px;height:9px;border-radius:50%;background:var(--riga);display:block}
.vista{padding:20px;display:flex;flex-direction:column;gap:14px;min-height:380px}
@media (prefers-reduced-motion:no-preference){.vista.cambia{animation:entra .35s var(--ease)}}
.vista-testa{display:flex;justify-content:space-between;align-items:baseline;gap:10px}
.vista-testa strong{font-weight:600;font-size:22px;letter-spacing:-.02em}
.vista-testa span{font-family:var(--f-mono);font-size:11px;color:var(--ink-3)}
.kpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--riga);border-bottom:1px solid var(--riga)}
.kpi div{padding:12px 12px 12px 0}
.kpi div+div{padding-left:12px;border-left:1px solid var(--riga)}
.kpi small{display:block;color:var(--ink-3);font-size:12px}
.kpi b{font-family:var(--f-num);font-weight:900;font-size:30px;line-height:1.1}
.tab{overflow-x:auto}
.tab table{border-collapse:collapse;width:100%;min-width:460px}
.tab th,.tab td{text-align:left;padding:9px 8px 9px 0;border-bottom:1px solid var(--carta-2);white-space:nowrap}
.tab th{color:var(--ink-3);font-weight:500;font-size:12px}
.tab td.n{font-family:var(--f-mono);font-size:12px}
.st{font-weight:600;font-size:13px}
.st::before{content:"";display:inline-block;width:8px;height:8px;margin-right:7px;vertical-align:1px;background:currentColor}
.st.ok{color:var(--ok)}.st.lav{color:var(--giallo-scuro)}.st.att{color:var(--att)}.st.da{color:var(--ink-3)}
.avviso{font-family:var(--f-mono);font-size:11.5px;padding:10px 12px;background:#EDF4E3;border-left:3px solid var(--giallo)}
@media (max-width:960px){.gest{grid-template-columns:1fr}.gest .lato{position:static}.gest .lato img{aspect-ratio:3/2}.kpi{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi div:nth-child(3){padding-left:0;border-left:0}}

/* ricetta */
.ricetta{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:start}
.ricetta .scheda{border:1px solid var(--ink);padding:28px;background:var(--bianco);position:sticky;top:110px}
.ricetta .scheda h3{font-size:30px}
.ricetta .scheda dl{margin:18px 0 0;display:grid;grid-template-columns:auto 1fr;gap:10px 18px;font-size:17px}
.ricetta .scheda dt{font-family:var(--f-mono);font-size:11px;color:var(--ink-3);padding-top:5px}
.ricetta .scheda dd{margin:0}
.ricetta .scheda .num{font-size:64px;color:var(--ink);display:block;margin-top:2px}
.ricetta .scheda img{margin:-28px -28px 22px;width:calc(100% + 56px);max-width:none;aspect-ratio:16/10;object-fit:cover}
.passi{list-style:none;margin:0;padding:0;counter-reset:p}
.passi li{counter-increment:p;display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:6px 20px;padding:26px 0;border-bottom:1px solid var(--riga)}
.passi li::before{content:counter(p);font-family:var(--f-tit);font-weight:600;font-size:56px;line-height:.8;letter-spacing:-.05em;color:var(--ink)}
.passi li h3{grid-column:2}
.passi li p{grid-column:2;color:var(--ink-2);font-size:18px}
.passi li .t{grid-column:3;grid-row:1/span 2;font-family:var(--f-mono);font-size:12px;color:var(--ink-2);text-align:right;white-space:nowrap}
.passi li .t b{display:block;font-family:var(--f-tit);font-weight:600;font-size:20px;color:var(--ink)}
.passi li.zero .t b{background:var(--giallo);padding:0 6px}
@media (max-width:900px){.ricetta{grid-template-columns:1fr}.ricetta .scheda{position:static}.passi li{grid-template-columns:48px minmax(0,1fr)}.passi li .t{grid-column:2;grid-row:auto;text-align:left}}

/* costi */
.cifra{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px 32px;margin-top:22px}
.cifra .vecchio{font-family:var(--f-tit);font-weight:500;letter-spacing:-.05em;font-size:clamp(60px,9vw,130px);line-height:.85;color:var(--ink-3);text-decoration:line-through;text-decoration-thickness:4px;text-decoration-color:var(--att)}
.cifra .nuovo{font-family:var(--f-tit);font-weight:600;letter-spacing:-.06em;font-size:clamp(80px,12vw,170px);line-height:.85}
.cifra .nuovo small{font-family:var(--f-tit);font-size:.22em;font-weight:600;letter-spacing:-.02em}
.costi-col{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,8fr);gap:56px;margin-top:64px}
.tier{width:100%;border-collapse:collapse;font-family:var(--f-tit);font-variant-numeric:tabular-nums}
.tier caption{text-align:left;font-family:var(--f-mono);font-size:11px;color:var(--ink-3);padding-bottom:10px}
.tier td,.tier th{padding:12px 0;border-bottom:1px solid var(--riga);text-align:left;font-weight:400}
.tier th{font-family:var(--f-mono);font-size:11px;color:var(--ink-3);border-bottom:1px solid var(--ink)}
.tier td:not(:first-child),.tier th:not(:first-child){text-align:right}
.tier td:last-child{font-weight:600}
.elenco-inc{border-top:1px solid var(--ink)}
.inc{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1.4fr) minmax(0,.8fr);gap:20px;padding:18px 0;border-bottom:1px solid var(--riga)}
.inc b{font-family:var(--f-tit);font-weight:600;font-size:18px;letter-spacing:-.01em;display:block}
.inc small{font-family:var(--f-mono);font-size:10.5px;color:var(--ink-3);display:block;margin-top:4px;line-height:1.5}
.inc p{font-size:16.5px;color:var(--ink-2)}
.inc .q{font-family:var(--f-tit);font-weight:600;font-size:16px;text-align:right}
.inc .q small{text-align:right}
.inc.aperto .q{color:var(--giallo-scuro)}
@media (max-width:900px){.costi-col{grid-template-columns:1fr}.inc{grid-template-columns:1fr;gap:4px}.inc .q,.inc .q small{text-align:left}}

/* mosaico settori */
.mosaico{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-auto-rows:120px;gap:12px}
.mosaico figure{margin:0;position:relative;overflow:hidden}
.mosaico img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.mosaico figure:hover img{transform:scale(1.04)}
.mosaico figcaption{position:absolute;left:0;bottom:0;background:var(--carta);padding:6px 10px 0 0;font-family:var(--f-mono);font-size:11px}
.m1{grid-column:1/6;grid-row:span 4}.m2{grid-column:6/9;grid-row:span 2}.m3{grid-column:9/13;grid-row:span 3}.m4{grid-column:6/9;grid-row:span 2}.m5{grid-column:9/13;grid-row:span 2}.m6{grid-column:1/4;grid-row:span 2}.m7{grid-column:4/9;grid-row:span 2}.m8{grid-column:9/13;grid-row:span 1}
@media (max-width:760px){.mosaico{grid-template-columns:1fr 1fr;grid-auto-rows:140px}.mosaico figure{grid-column:auto!important;grid-row:span 1!important}.mosaico .m1{grid-column:1/-1!important;grid-row:span 2!important}.m8{display:none}}

/* noi */
.noi{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:center}
.noi canvas{width:100%;aspect-ratio:1/1;display:block;background:var(--bianco);border:1px solid var(--ink)}
.noi .lettera{font-size:21px;display:flex;flex-direction:column;gap:18px;max-width:36ch}
.noi .firma{font-family:var(--f-tit);font-weight:600;font-size:20px;display:flex;gap:40px;margin-top:8px}
.noi .firma span{display:flex;flex-direction:column}
.noi .firma small{font-family:var(--f-mono);font-size:11px;color:var(--ink-3);font-weight:400}
@media (max-width:860px){.noi{grid-template-columns:1fr}.noi canvas{max-width:360px}}

/* domande */
.domande details{border-bottom:1px solid var(--riga)}
.domande details:first-child{border-top:1px solid var(--ink)}
.domande summary{cursor:pointer;list-style:none;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;padding:22px 0;font-family:var(--f-tit);font-weight:500;font-size:clamp(20px,2vw,26px);letter-spacing:-.02em}
.domande summary::-webkit-details-marker{display:none}
.domande summary::after{content:"+";font-family:var(--f-mono);font-size:20px;transition:transform .25s var(--ease)}
.domande details[open] summary::after{transform:rotate(45deg);color:var(--giallo-scuro)}
.domande details p{padding:0 0 26px;color:var(--ink-2);max-width:62ch}

/* contatto */
.contatto{background:var(--ink);color:var(--carta)}
.contatto .griglia{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:64px}
.contatto h2{color:var(--carta)}
.contatto .occhiello{color:#B9B3A8}
.contatto p.intro{font-size:21px;color:#CFC9BE;max-width:34ch;margin-top:20px}
.contatto .recapiti{margin-top:34px;font-family:var(--f-mono);font-size:13px;display:grid;grid-template-columns:100px 1fr;gap:10px 16px;color:#CFC9BE}
.contatto .recapiti span:nth-child(odd){color:#8F897F}
form{display:flex;flex-direction:column;gap:22px}
form label{display:flex;flex-direction:column;gap:6px;font-family:var(--f-mono);font-size:11px;color:#8F897F}
form input,form select,form textarea{font:400 19px var(--f-tit);color:var(--carta);background:transparent;border:0;border-bottom:1px solid #5A564F;padding:8px 0;width:100%;border-radius:0}
form select option{color:var(--ink)}
form textarea{min-height:90px;resize:vertical}
form ::placeholder{color:#8F897F;font-style:italic}
form input:focus,form select:focus,form textarea:focus{outline:none;border-bottom-color:var(--giallo)}
form .riga2{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.contatto .btn{background:var(--giallo);color:var(--ink);align-self:flex-start}
.contatto .btn .s{background:var(--ink)}
.esito{font-size:16px;color:var(--giallo);min-height:1.4em}
@media (max-width:860px){.contatto .griglia{grid-template-columns:1fr}form .riga2{grid-template-columns:1fr}}

footer{background:var(--ink);color:#8F897F;border-top:1px solid #34312C;font-family:var(--f-mono);font-size:11px}
footer .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px 28px;padding-block:26px}

.consenso{flex-direction:row!important;align-items:flex-start;gap:12px!important;font-family:var(--f-tit)!important;font-size:15px!important;color:#CFC9BE!important;line-height:1.45}
.consenso input{width:20px;height:20px;flex:none;margin-top:2px;accent-color:var(--giallo);border:0;padding:0}
.consenso a{color:var(--carta)}
.trappola{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.btn[disabled]{opacity:.6;cursor:wait}
.piede-link{display:flex;flex-wrap:wrap;gap:8px 20px}
.piede-link a{text-decoration:none}.piede-link a:hover{color:var(--carta)}
.salta{position:absolute;left:-9999px;top:0;background:var(--ink);color:var(--carta);padding:10px 14px;z-index:50}
.salta:focus{left:12px;top:12px}
.settori-link{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:22px;font-family:var(--f-tit);font-size:17px}
/* pagine interne */
.pagina{padding-block:64px 100px}
.pagina .testo{max-width:68ch}
.pagina .testo h2{font-size:clamp(26px,3vw,36px);margin:44px 0 12px}
.pagina .testo p,.pagina .testo li{color:var(--ink-2)}
.pagina .testo p+p{margin-top:.9em}
.pagina .testo ul{padding-left:1.1em}
.pagina .testo li+li{margin-top:.4em}
.settore-apertura{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:48px;align-items:end;padding-block:56px 40px}
.settore-apertura h1{font-size:clamp(44px,6.4vw,96px);line-height:.92;letter-spacing:-.05em}
.settore-apertura img{width:100%;aspect-ratio:4/5;object-fit:cover}
.problemi{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink);counter-reset:q}
.problemi li{counter-increment:q;display:grid;grid-template-columns:56px minmax(0,1fr);gap:4px 16px;padding:20px 0;border-bottom:1px solid var(--riga)}
.problemi li::before{content:counter(q);font-family:var(--f-tit);font-weight:600;font-size:40px;line-height:.9;letter-spacing:-.05em}
.problemi b{font-family:var(--f-tit);font-weight:600;font-size:21px;letter-spacing:-.02em}
.problemi p{grid-column:2;color:var(--ink-2)}
@media (max-width:860px){.settore-apertura{grid-template-columns:1fr}.settore-apertura img{aspect-ratio:3/2}}

h1.h2{font-size:clamp(36px,5.2vw,72px);line-height:.98;font-weight:600;letter-spacing:-.03em}
.testata .wrap{gap:28px}
.voci{margin-left:auto;gap:24px}
.voci a{position:relative;padding-block:6px}
.voci a[aria-current=page]{color:var(--ink);font-weight:600}
.voci a[aria-current=page]::after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--giallo)}
.azioni{display:flex;align-items:center;gap:12px}
.cta-testata{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 18px;background:var(--giallo);color:var(--ink);font-family:var(--f-tit);font-weight:600;font-size:16px;text-decoration:none;border:1px solid var(--ink);transition:background .2s,transform .2s var(--ease)}
.cta-testata:hover{background:var(--ink);color:var(--carta)}
.cta-testata span{transition:transform .2s var(--ease)}.cta-testata:hover span{transform:translateX(3px)}
.menu{display:none;position:relative}
.menu summary{list-style:none;cursor:pointer;min-height:44px;display:flex;align-items:center;padding:0 14px;border:1px solid var(--ink);font-family:var(--f-tit);font-weight:500;font-size:15px}
.menu summary::-webkit-details-marker{display:none}
.menu[open] summary{background:var(--ink);color:var(--carta)}
.menu nav{position:absolute;right:0;top:calc(100% + 8px);min-width:240px;background:var(--carta);border:1px solid var(--ink);display:flex;flex-direction:column;z-index:40}
.menu nav a{padding:14px 16px;text-decoration:none;font-family:var(--f-tit);font-size:17px;border-bottom:1px solid var(--riga)}
.menu nav a:last-child{border-bottom:0;background:var(--giallo);font-weight:600}
@media (max-width:1020px){.voci{display:none}.menu{display:block}.azioni{margin-left:auto}}
@media (max-width:420px){.cta-testata{padding:0 12px;font-size:15px}.cta-testata span{display:none}}
.invito{background:var(--giallo);border-top:1px solid var(--ink)}
.invito .wrap{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:28px 56px;padding-block:80px}
.invito .occhiello{color:var(--ink)}.invito .occhiello span{color:var(--ink)}
.invito h2{margin-top:18px;font-size:clamp(38px,5.4vw,76px)}
.invito-az{display:flex;flex-direction:column;gap:14px;align-items:flex-start;max-width:34ch}
.invito-az p{font-size:16px;color:var(--ink)}
.strada{list-style:none;margin:48px 0 0;padding:0;border-top:2px solid var(--ink)}
.strada a{display:grid;grid-template-columns:56px minmax(0,4fr) minmax(0,6fr) 40px;gap:8px 20px;align-items:baseline;padding:24px 0;border-bottom:1px solid var(--riga);text-decoration:none;transition:background .25s,padding .25s var(--ease)}
.strada .n{font-family:var(--f-mono);font-size:12px;color:var(--giallo-scuro)}
.strada b{font-size:clamp(24px,2.6vw,36px);font-weight:600;letter-spacing:-.03em;line-height:1.05}
.strada em{font-style:normal;color:var(--ink-2);font-size:17px}
.strada i{font-style:normal;font-size:24px;justify-self:end;transition:transform .25s var(--ease)}
.strada a:hover{background:var(--bianco);padding-inline:16px}
.strada a:hover i{transform:translateX(6px);color:var(--giallo-scuro)}
@media (max-width:760px){.strada a{grid-template-columns:40px minmax(0,1fr) 28px}.strada em{grid-column:2;grid-row:2}.strada i{grid-row:1/span 2}}
/* contatti chiara, separata dal piede */
.contatto{background:var(--carta);color:var(--ink);padding-block:72px 110px}
.contatto h1,.contatto h2{color:var(--ink)}
.contatto .occhiello{color:var(--ink-2)}
.contatto p.intro{color:var(--ink-2)}
.contatto .recapiti{color:var(--ink)}
.contatto .recapiti span:nth-child(odd){color:var(--ink-3)}
.contatto form{background:var(--bianco);border:1px solid var(--riga);border-top:4px solid var(--giallo);padding:32px}
.contatto form label{color:var(--ink-3)}
.contatto form input,.contatto form select,.contatto form textarea{color:var(--ink);border-bottom-color:var(--riga)}
.contatto form ::placeholder{color:#A39E95}
.contatto form input:focus,.contatto form select:focus,.contatto form textarea:focus{border-bottom-color:var(--giallo-scuro)}
.contatto .consenso{color:var(--ink-2)!important}.contatto .consenso a{color:var(--ink)}
.contatto .btn{background:var(--ink);color:var(--carta)}.contatto .btn .s{background:var(--giallo)}
.contatto .esito{color:var(--giallo-scuro)}
@media (max-width:600px){.contatto form{padding:22px 18px}}
footer{border-top:0}

/* ===== Tema Symiq: bianco dominante, viola come firma ===== */
:root{
  --carta:#FFFFFF;--carta-2:#F8F7FB;--bianco:#FFFFFF;--lavanda:#EDE7FC;
  --ink:#22212A;--ink-2:#4E4C58;--ink-3:#6F6C7A;--riga:#E9E6EF;
  --giallo:#7654D6;--viola:#7654D6;--giallo-scuro:#5A3EC0;--viola-scuro:#35245F;
  --ok:#2D7A4B;--att:#B5401F;
  --f-disp:'Bricolage Grotesque','Helvetica Neue',Arial,sans-serif;
  --f-tit:'Manrope','Helvetica Neue',Arial,sans-serif;
  --f-let:'Bricolage Grotesque','Helvetica Neue',Arial,sans-serif;
  --f-mono:'Manrope','Helvetica Neue',Arial,sans-serif;
  --f-num:'Bricolage Grotesque','Helvetica Neue',Arial,sans-serif;
  --r:6px;--max:1200px
}
body{background:#fff;color:var(--ink);font-family:var(--f-tit);font-size:17px;line-height:1.6}
h1,h2,h3,.num,.cifra .vecchio,.cifra .nuovo,.passi li::before,.problemi li::before{font-family:var(--f-disp);font-variation-settings:"wdth" 92}
h1,h2{font-weight:600;letter-spacing:-.025em;color:var(--ink)}
h2{font-size:clamp(32px,4.2vw,54px);line-height:1.04}
h1.h2{font-size:clamp(36px,4.8vw,62px);line-height:1.02}
h3{font-weight:600;letter-spacing:-.015em}
em{font-style:normal}
h1 em,h2 em,h3 em,.chiusa h3 em{font-family:inherit;font-style:normal;font-weight:inherit;color:inherit}
::selection{background:var(--lavanda);color:var(--viola-scuro)}
:focus-visible{outline:2px solid var(--viola);outline-offset:3px;border-radius:2px}
.wrap{max-width:var(--max)}
.sez{padding-block:120px}
.occhiello{font-family:var(--f-tit);font-size:14px;font-weight:600;letter-spacing:0;color:var(--giallo-scuro)}
.occhiello span{color:var(--viola-scuro)}
.didascalia{font-family:var(--f-tit);font-size:13px;letter-spacing:0;color:var(--ink-3)}
.link{font-family:var(--f-tit);font-weight:600;color:var(--viola-scuro);text-decoration:none;border-bottom:1px solid var(--viola);padding-bottom:2px;transition:color .2s,border-color .2s}
.link:hover{color:var(--viola);border-bottom-color:var(--viola-scuro)}
.btn{min-height:52px;padding:0 24px;background:var(--viola);color:#fff;border-radius:var(--r);font-family:var(--f-tit);font-weight:700;font-size:16px;gap:12px;transition:background .2s,transform .2s var(--ease)}
.btn:hover{background:var(--viola-scuro)}
.btn:active{transform:translateY(1px)}
.btn .s{display:none}
/* testata */
.testata{background:rgba(255,255,255,.96);border-bottom:1px solid var(--riga);backdrop-filter:none}
.testata .wrap{padding-block:16px}
.marchio{gap:10px}
.marchio b{font-family:var(--f-disp);font-weight:700;font-size:19px;letter-spacing:.06em;color:var(--ink)}
.voci{font-family:var(--f-tit);font-size:15px;font-weight:500;gap:28px}
.voci a{color:var(--ink-2);transition:color .2s}
.voci a:hover{color:var(--viola)}
.voci a:not(.link):hover{color:var(--viola)}
.voci a[aria-current=page]{color:var(--ink);font-weight:700}
.voci a[aria-current=page]::after{background:var(--viola);bottom:-4px}
.cta-testata{background:var(--viola);color:#fff;border:0;border-radius:var(--r);min-height:42px;padding:0 18px;font-family:var(--f-tit);font-weight:700;font-size:15px}
.cta-testata:hover{background:var(--viola-scuro);color:#fff}
.menu summary{border:1px solid var(--riga);border-radius:var(--r);font-family:var(--f-tit);font-weight:600}
.menu[open] summary{background:var(--lavanda);color:var(--viola-scuro)}
.menu nav{background:#fff;border:1px solid var(--riga);border-radius:var(--r);overflow:hidden;box-shadow:0 12px 30px -18px rgba(53,36,95,.35)}
.menu nav a{font-family:var(--f-tit);border-bottom:1px solid var(--riga)}
.menu nav a:last-child{background:var(--viola);color:#fff;font-weight:700}
/* hero */
.hero{padding-block:72px 64px}
.hero-griglia{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:56px;align-items:center}
.hero h1{font-size:clamp(38px,4.6vw,62px);line-height:1.04;letter-spacing:-.02em;max-width:17ch;font-variation-settings:"wdth" 96}
.hero-sotto{margin-top:28px;font-size:19px;line-height:1.6;color:var(--ink-2);max-width:52ch}
.hero-az{display:flex;flex-wrap:wrap;align-items:center;gap:18px 28px;margin-top:36px}
.hero-foto{margin:0;position:relative;padding-bottom:40px}
.hero-foto img{width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 25%;border-radius:var(--r)}
.flusso{position:absolute;left:-72px;bottom:0;width:min(330px,90%);background:#fff;border:1px solid var(--riga);border-radius:var(--r);padding:18px 20px 8px;box-shadow:0 24px 50px -30px rgba(53,36,95,.45)}
.flusso-tit{font-size:13px;font-weight:700;color:var(--viola-scuro);margin-bottom:12px}
.flusso ol{list-style:none;margin:0;padding:0;position:relative}
.flusso ol::before{content:"";position:absolute;left:5px;top:8px;bottom:20px;width:1.5px;background:var(--viola);transform-origin:top;animation:linea 1.6s .3s var(--ease) both}
.flusso li{position:relative;padding:0 0 12px 24px;opacity:0;animation:passo .5s var(--ease) both}
.flusso li::before{content:"";position:absolute;left:0;top:6px;width:11px;height:11px;border-radius:50%;background:#fff;border:2px solid var(--viola)}
.flusso li:last-child::before{background:var(--viola)}
.flusso li:nth-child(1){animation-delay:.3s}.flusso li:nth-child(2){animation-delay:.7s}.flusso li:nth-child(3){animation-delay:1.1s}.flusso li:nth-child(4){animation-delay:1.5s}
.flusso b{display:block;font-size:14px;font-weight:700;color:var(--ink)}
.flusso span{display:block;font-size:13px;line-height:1.45;color:var(--ink-3)}
@keyframes linea{from{transform:scaleY(0)}}
@keyframes passo{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.avviso-voucher{margin:0;background:var(--lavanda);color:var(--viola-scuro);font-size:15px;font-weight:600}
.avviso-voucher .wrap{display:block;padding-block:14px}
.avviso-voucher a{color:var(--viola-scuro);margin-left:6px;text-underline-offset:3px}
@media (max-width:900px){.hero-griglia{grid-template-columns:1fr;gap:40px}.flusso{left:16px}.hero{padding-block:48px}}
/* intro */
.intro{background:#fff}
.intro-griglia{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:64px;align-items:center}
.intro h2{max-width:13ch}
.intro-testo{margin-top:24px;color:var(--ink-2);font-size:18px;max-width:46ch}
.ciclo{width:100%;height:auto;overflow:visible}
.ciclo-giro{fill:none;stroke:var(--viola);stroke-width:1.5}
.ciclo-rit{fill:none;stroke:var(--viola);stroke-width:1.5;stroke-dasharray:5 6}
.ciclo-nodi circle{fill:#fff;stroke:var(--viola);stroke-width:2}
.ciclo-nodi circle:last-child{fill:var(--viola)}
.ciclo-et text{font-family:var(--f-disp);font-size:20px;font-weight:600;fill:var(--ink)}
.ciclo-et text.pic{font-family:var(--f-tit);font-size:13px;font-weight:500;fill:var(--ink-3)}
@media (max-width:900px){.intro-griglia{grid-template-columns:1fr;gap:40px}}
/* testa delle sezioni */
.testa-sez{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:24px 56px;align-items:end;margin-bottom:56px}
.testa-sez p{color:var(--ink-2);font-size:17px;max-width:46ch}
@media (max-width:900px){.testa-sez{grid-template-columns:1fr}}
/* servizi */
#servizi{background:var(--carta-2)}
.servizi{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.serv{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,6fr) minmax(0,3fr);gap:16px 48px;padding:40px 0;border-bottom:1px solid var(--riga);position:relative}
.serv::before{content:"";position:absolute;left:0;top:-1px;width:0;height:2px;background:var(--viola);transition:width .5s var(--ease)}
.serv:hover::before{width:100%}
.serv h3{font-size:clamp(24px,2.3vw,30px);line-height:1.12;max-width:14ch}
.serv-pr{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.serv-pr p{font-size:16px;line-height:1.55;color:var(--ink-2)}
.serv-pr b{display:block;font-size:13px;font-weight:700;color:var(--giallo-scuro);margin-bottom:6px}
.serv-es{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:var(--ink)}
.serv-es li{padding-left:16px;position:relative}
.serv-es li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:1.5px;background:var(--viola)}
.serv .link{grid-column:2;justify-self:start;font-size:15px}
@media (max-width:980px){.serv{grid-template-columns:1fr}.serv-pr{grid-template-columns:1fr}.serv .link{grid-column:1}}
/* metodo */
.passi4{list-style:none;margin:0 0 44px;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;position:relative}
.passi4::before{content:"";position:absolute;left:0;right:0;top:22px;height:1.5px;background:var(--riga)}
.passi4 li{position:relative;padding:0 28px 0 0}
.passi4 li::before{content:"";position:absolute;left:0;top:22px;width:44px;height:1.5px;background:var(--viola)}
.passo-n{display:inline-grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;border:1.5px solid var(--viola);color:var(--viola-scuro);font-family:var(--f-disp);font-weight:600;font-size:16px;position:relative}
.passi4 li:last-child .passo-n{background:var(--viola);color:#fff}
.passi4 h3{margin-top:24px;font-size:21px;line-height:1.2;max-width:14ch}
.passi4 p{margin-top:12px;font-size:15.5px;color:var(--ink-2)}
.passo-t{display:inline-block;margin-top:16px;font-size:13px;font-weight:700;color:var(--viola-scuro);background:var(--lavanda);padding:4px 10px;border-radius:4px}
@media (max-width:900px){.passi4{grid-template-columns:1fr 1fr;row-gap:44px}}
@media (max-width:560px){.passi4{grid-template-columns:1fr}.passi4::before{display:none}}
/* esempi */
.esempi{background:#fff}
.esempi-griglia{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-rows:auto auto;gap:28px 40px}
.es{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,3fr);gap:20px;align-items:start}
.es-grande{grid-row:span 2;grid-template-columns:1fr}
.es img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--r)}
.es-grande img{aspect-ratio:3/2}
.es-tipo{font-size:13px;font-weight:700;color:var(--giallo-scuro)}
.es h3{margin-top:8px;font-size:21px;line-height:1.2}
.es-grande h3{font-size:clamp(24px,2.4vw,32px);max-width:20ch}
.es p:not(.es-tipo){margin-top:10px;font-size:15.5px;color:var(--ink-2)}
.settori-riga{margin-top:56px;padding-top:24px;border-top:1px solid var(--riga);font-size:16px;color:var(--ink-2)}
.settori-riga a{color:var(--viola-scuro);font-weight:600;text-underline-offset:3px}
@media (max-width:900px){.esempi-griglia{grid-template-columns:1fr}.es-grande{grid-row:auto}}
@media (max-width:560px){.es{grid-template-columns:1fr}}
/* sezione "ti capita" */
#capita{background:#fff}
.coppie{border-top:1px solid var(--ink)}
.biglietto{border-radius:var(--r);border-color:var(--riga)}
.biglietto::after{background:var(--viola);border-radius:50%}
.biglietto .testa{font-family:var(--f-tit);font-weight:600;letter-spacing:.02em;color:var(--ink-3)}
.biglietto .testa b{color:var(--giallo-scuro);font-weight:700}
.biglietto p{font-family:var(--f-disp)}
.biglietto p span,.risultato p b{background:linear-gradient(transparent 58%,var(--lavanda) 0)}
.freccia{color:var(--viola)}
.freccia small,.demo .cosa{font-family:var(--f-tit);font-weight:700;letter-spacing:.04em;color:var(--giallo-scuro)}
.pann,.tc-avviso{border-radius:var(--r)}
.tc-avviso{background:var(--carta-2)}
.tc-avviso .ic{background:var(--viola);border-radius:4px}
.tc-avviso .bt span,.consiglio .bt span{border-radius:4px}
.tc-avviso .bt span:first-child{background:var(--viola);border-color:var(--viola);color:#fff}
.consiglio{background:var(--viola-scuro);border-radius:var(--r)}
.consiglio::after{border-top-color:var(--viola-scuro)}
.consiglio small{color:#CDBFF5;font-family:var(--f-tit);font-weight:700}
.consiglio .bt span:first-child{background:#fff;color:var(--viola-scuro);border-color:#fff}
.mic{background:var(--viola);border-radius:50%}
.detto{font-family:var(--f-tit);font-style:normal;font-weight:500}
.detto::after{background:var(--viola)}
.tc-scheda dt,.misura th,.misura .nota,.risparmio,.tc-avviso .tt{font-family:var(--f-tit);font-weight:600}
.chiusa h3{font-family:var(--f-disp)}
/* pagine interne: sezioni esistenti */
.calcolo{background:var(--carta-2);border-block:1px solid var(--riga)}
.frase{font-family:var(--f-disp);font-weight:500}
.frase input,.frase select{font-family:var(--f-disp);color:var(--viola);border-bottom-color:var(--viola)}
.frase input:focus,.frase select:focus{background:var(--lavanda)}
.risultato{border-top-color:var(--ink)}
.schermo{border:1px solid var(--riga);border-radius:var(--r);box-shadow:0 30px 60px -40px rgba(53,36,95,.35);overflow:hidden}
.schede{border-bottom-color:var(--riga)}
.schede button{font-family:var(--f-tit)}
.schede button[aria-selected=true]{border-bottom-color:var(--viola)}
.kpi b{font-family:var(--f-disp);font-weight:600}
.avviso{font-family:var(--f-tit);background:var(--lavanda);border-left-color:var(--viola);color:var(--viola-scuro);border-radius:0 4px 4px 0}
.gest .lato img,.primadopo img,.ricetta .scheda img,.settore-apertura img{border-radius:var(--r)}
.primadopo .p img{filter:grayscale(1)}
.testo-col{border-radius:var(--r);border-top-color:var(--viola)}
.testo-col .tag{font-family:var(--f-tit);font-weight:700;color:var(--giallo-scuro)}
.ricetta .scheda{border:1px solid var(--riga);border-radius:var(--r);overflow:hidden}
.passi li .t b{font-family:var(--f-disp)}
.passi li.zero .t b{background:var(--lavanda);color:var(--viola-scuro);border-radius:4px}
.cifra .vecchio{text-decoration-color:var(--viola)}
.inc.aperto .q{color:var(--viola)}
.mosaico figure{border-radius:var(--r)}
.mosaico figcaption{background:#fff;padding:6px 12px;border-radius:0 6px 0 0;font-family:var(--f-tit);font-weight:600;font-size:13px}
.noi{align-items:center}
#noi{background:#fff;border-top:0}
.noi canvas{border:1px solid var(--riga);border-radius:var(--r);background:var(--carta-2)}
.noi .firma{font-family:var(--f-disp)}
.domande summary{font-family:var(--f-disp)}
.domande summary::after{font-family:var(--f-tit);color:var(--viola)}
.domande details[open] summary::after{color:var(--viola-scuro)}
.problemi li::before{color:var(--viola)}
.st.lav{color:var(--giallo-scuro)}
/* contatti */
.contatto{background:#fff}
.contatto form{border-radius:var(--r);border-top:3px solid var(--viola)}
.contatto form label{font-family:var(--f-tit);font-size:13px;font-weight:600;letter-spacing:0;color:var(--ink-2)}
.contatto form input,.contatto form select,.contatto form textarea{font:500 18px var(--f-tit)}
.contatto form input:focus,.contatto form select:focus,.contatto form textarea:focus{border-bottom-color:var(--viola)}
.contatto .btn{background:var(--viola);color:#fff}
.contatto .btn:hover{background:var(--viola-scuro)}
.contatto .recapiti{font-family:var(--f-tit)}
.consenso input{accent-color:var(--viola)}
.contatto .esito{color:var(--viola-scuro)}
/* invito finale */
.invito{background:var(--lavanda);border-top:0}
.invito .wrap{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:32px 64px;align-items:end;padding-block:96px}
.invito h2{margin:0;font-size:clamp(32px,4vw,52px);color:var(--viola-scuro);max-width:18ch}
.invito-az{max-width:none;gap:24px}
.invito-az p{font-size:17px;color:var(--viola-scuro)}
@media (max-width:900px){.invito .wrap{grid-template-columns:1fr;padding-block:72px}}
/* piede */
.piede{background:#fff;color:var(--ink-2);border-top:1px solid var(--riga);font-family:var(--f-tit);font-size:15px}
.piede .wrap{display:grid;grid-template-columns:minmax(0,4fr) repeat(3,minmax(0,2fr));gap:32px 48px;padding-block:64px 40px}
.piede-marchio p{margin-top:16px;max-width:34ch;color:var(--ink-3);font-size:15px}
.piede-col{display:flex;flex-direction:column;gap:10px}
.piede-col h2{font-family:var(--f-tit);font-size:14px;font-weight:700;letter-spacing:0;color:var(--ink);margin-bottom:4px}
.piede-col a{text-decoration:none;color:var(--ink-2);transition:color .2s}
.piede-col a:hover{color:var(--viola)}
.piede-col p{color:var(--ink-3)}
.piede .piede-legale{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;padding-block:20px 32px;border-top:1px solid var(--riga);font-size:13px;color:var(--ink-3)}
.piede-legale span{display:flex;gap:18px;flex-wrap:wrap}
.piede-legale a{color:var(--ink-3);text-decoration:none}.piede-legale a:hover{color:var(--viola)}
@media (max-width:900px){.piede .wrap{grid-template-columns:1fr 1fr}.piede-marchio{grid-column:1/-1}}
@media (max-width:480px){.piede .wrap{grid-template-columns:1fr}}
/* pagine settore e legali */
.settore-apertura h1{font-family:var(--f-disp)}
@media (prefers-reduced-motion:reduce){.flusso ol::before,.flusso li{animation:none;opacity:1}.serv::before{transition:none}}

.cta-testata span{display:none}
.voci a[aria-current=page]::after{height:2px}
.contatto form{border:1px solid var(--riga);border-top:3px solid var(--viola)}
.contatto .occhiello{color:var(--giallo-scuro)}

@media (max-width:900px){.hero-foto{padding-bottom:0}.hero-foto img{aspect-ratio:4/3}.flusso{position:relative;left:auto;bottom:auto;width:auto;margin:-56px 16px 0}}
@media (max-width:600px){.ciclo-et text{font-size:26px}.ciclo-et text.pic{font-size:17px}}

.noi .lettera{font-size:18px;max-width:52ch;gap:16px}
.noi .lettera p{color:var(--ink-2);line-height:1.65}
.valori{background:var(--carta-2)}
.valori-griglia{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;border-top:1px solid var(--ink)}
.valore{padding:32px 40px 32px 0;border-bottom:1px solid var(--riga)}
.valore:nth-child(even){padding:32px 0 32px 40px;border-left:1px solid var(--riga)}
.valore h3{font-size:24px}
.valore p{margin-top:10px;color:var(--ink-2);max-width:48ch}
.persone{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:72px}
.persona{border-top:3px solid var(--viola);padding-top:20px}
.persona h3{font-size:28px}
.persona .ruolo{margin-top:4px;font-size:14px;font-weight:700;color:var(--giallo-scuro)}
.persona p:not(.ruolo){margin-top:12px;color:var(--ink-2);max-width:46ch}
@media (max-width:760px){.valori-griglia,.persone{grid-template-columns:1fr}.valore,.valore:nth-child(even){padding:28px 0;border-left:0}}

/* ===== demo interattive ===== */
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.btn-sec{display:inline-flex;align-items:center;min-height:52px;padding:0 20px;background:#fff;color:var(--viola-scuro);border:1px solid var(--riga);border-radius:var(--r);font:700 15px var(--f-tit);cursor:pointer;transition:border-color .2s,background .2s}
.btn-sec:hover{border-color:var(--viola);background:var(--carta-2)}
.btn[disabled]{opacity:.55;cursor:default}
.etich-sim{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--viola-scuro);background:var(--lavanda);padding:5px 10px;border-radius:4px}
.etich-sim::before{content:"";width:7px;height:7px;border-radius:50%;background:var(--viola)}
.chip{font:600 14px var(--f-tit);color:var(--ink-2);background:#fff;border:1px solid var(--riga);border-radius:999px;padding:8px 14px;cursor:pointer;transition:border-color .2s,color .2s,background .2s;text-align:left}
.chip:hover{border-color:var(--viola);color:var(--viola-scuro)}
.chip[aria-pressed=true]{background:var(--viola-scuro);border-color:var(--viola-scuro);color:#fff}
/* A. processo */
.processo{background:#fff}
.proc{border:1px solid var(--riga);border-radius:var(--r);background:#fff;margin-bottom:32px}
.proc-barra,.dm-barra{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px 20px;padding:16px 20px;border-bottom:1px solid var(--riga)}
.proc-az{display:flex;gap:10px}
.proc-az .btn,.proc-az .btn-sec{min-height:44px}
.proc-fasi{list-style:none;margin:0;padding:24px 20px 8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;position:relative}
.proc-fasi li{position:relative;display:grid;grid-template-columns:36px 1fr;column-gap:12px;align-items:center;color:var(--ink-3);transition:color .3s}
.proc-fasi li b{font:600 17px var(--f-disp);color:inherit}
.proc-fasi li small{grid-column:2;font-size:13px}
.pf-n{grid-row:span 2;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;border:1.5px solid var(--riga);font:600 15px var(--f-disp);background:#fff;transition:all .3s}
.proc-fasi li.attiva{color:var(--ink)}
.proc-fasi li.attiva .pf-n{border-color:var(--viola);background:var(--viola);color:#fff;box-shadow:0 0 0 5px var(--lavanda)}
.proc-fasi li.fatta{color:var(--ink-2)}
.proc-fasi li.fatta .pf-n{border-color:var(--viola);color:var(--viola-scuro)}
.proc-corpo{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:24px;padding:20px}
.proc-mail{border:1px solid var(--riga);border-radius:var(--r);padding:18px 20px;background:var(--carta-2);align-self:start;transition:box-shadow .3s}
[data-stato="1"] .proc-mail{box-shadow:0 0 0 2px var(--viola)}
.pm-testa,.pm-ogg{font-size:13px;color:var(--ink-3)}
.pm-testa b,.pm-ogg b{color:var(--ink-2)}
.pm-ogg{margin-top:2px;padding-bottom:12px;border-bottom:1px solid var(--riga)}
.pm-testo{margin-top:12px;font-size:16px;line-height:1.7}
.pm-testo mark{background:transparent;color:inherit;transition:background .4s,color .4s;border-radius:3px;padding:0 2px}
.pm-testo mark.acceso{background:var(--lavanda);color:var(--viola-scuro);font-weight:600}
.proc-lato{display:flex;flex-direction:column;gap:14px}
.pp{border:1px solid var(--riga);border-radius:var(--r);padding:14px 18px;opacity:.35;filter:grayscale(1);transition:opacity .4s,filter .4s,transform .4s var(--ease);transform:translateY(4px)}
.pp.vis{opacity:1;filter:none;transform:none}
.pp-tit,.dm-sez{font-size:13px;font-weight:700;color:var(--giallo-scuro);margin-bottom:8px}
.pp-dati,.dm-dati{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 16px;margin:0;font-size:15px}
.pp-dati dt,.dm-dati dt{color:var(--ink-3)}
.pp-dati dd,.dm-dati dd{margin:0;font-weight:600;overflow-wrap:anywhere}
.pp-check{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;font-size:15px}
.pp-check li{padding-left:26px;position:relative}
.pp-check li::before{position:absolute;left:0;top:1px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff}
.pp-check li.ok::before{content:"✓";background:var(--ok)}
.pp-check li.att::before{content:"!";background:#B7791F}
.pp-check li.no::before{content:"✕";background:var(--att)}
.pp-json{margin:0;font:500 13px/1.55 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;color:var(--viola-scuro);white-space:pre-wrap;overflow-wrap:anywhere}
.proc-nota{padding:14px 20px;border-top:1px solid var(--riga);font-size:15px;color:var(--ink-2);min-height:3.2em}
@media (max-width:900px){.proc-fasi{grid-template-columns:1fr 1fr;row-gap:16px}.proc-corpo{grid-template-columns:1fr}}
@media (max-width:480px){.proc-fasi{grid-template-columns:1fr}}
/* pagina demo */
.demo-apertura{padding-block:80px 40px}
.demo-ap-griglia{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:32px 64px;align-items:end}
.demo-ap-testo p{color:var(--ink-2);font-size:17px}
.demo-ap-testo p+p{margin-top:12px}
.demo-ap-testo b{color:var(--ink)}
.nota-priv{padding-left:14px;border-left:2px solid var(--viola);font-size:15px!important}
.demo-indice{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:22px;font-size:15px;font-weight:600}
.demo-indice a{color:var(--viola-scuro);text-underline-offset:3px}
@media (max-width:900px){.demo-ap-griglia{grid-template-columns:1fr}}
.demo-sez{padding-block:88px}
.demo-sez.alt{background:var(--carta-2)}
.dm{border:1px solid var(--riga);border-radius:var(--r);background:#fff}
.dm-scelte{display:flex;flex-wrap:wrap;gap:8px}
.dm-fonte{font-size:13px;color:var(--ink-3)}
.dm-corpo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.dm-in{display:flex;flex-direction:column;gap:12px;padding:20px;border-right:1px solid var(--riga)}
.dm-in label{font-size:14px;font-weight:700;color:var(--ink-2)}
.dm-in textarea{font:500 15px/1.6 var(--f-tit);color:var(--ink);border:1px solid var(--riga);border-radius:var(--r);padding:12px 14px;resize:vertical;min-height:180px;background:var(--carta-2)}
.dm-in textarea:focus{outline:2px solid var(--viola);outline-offset:0;background:#fff}
.dm-in .btn{align-self:flex-start}
.dm-out{padding:20px;display:flex;flex-direction:column;gap:12px;min-width:0}
.dm-vuoto{color:var(--ink-3);font-size:15px;padding:24px;border:1px dashed var(--riga);border-radius:var(--r);text-align:center}
.dm-err{color:var(--att);font-weight:600}
.manca{color:var(--ink-3);font-weight:500;font-style:normal}
.dm-esito{padding:12px 14px;border-radius:var(--r);font-size:15px}
.dm-esito.ok{background:#E8F4EC;color:#1E5A36}
.dm-esito.no{background:#FBEDE8;color:#8A2E14}
.dm-tag{display:flex;flex-wrap:wrap;gap:8px}
.dm-tag span{font-size:13px;font-weight:700;padding:5px 10px;border-radius:4px;background:var(--carta-2);color:var(--ink-2)}
.dm-tag .tag-cat{background:var(--viola-scuro);color:#fff}
.dm-tag .p-alta{background:#FBEDE8;color:#8A2E14}
.dm-tag .p-media{background:#FDF3E1;color:#7A4A06}
.dm-bozza{padding:12px 14px;border-left:2px solid var(--viola);background:var(--carta-2);font-size:15px;border-radius:0 4px 4px 0}
@media (max-width:860px){.dm-corpo{grid-template-columns:1fr}.dm-in{border-right:0;border-bottom:1px solid var(--riga)}}
/* assistente */
.chat{height:340px;overflow-y:auto;padding:20px;display:flex;flex-direction:column;gap:12px;background:var(--carta-2)}
.msg{max-width:min(560px,88%);padding:12px 16px;border-radius:12px;font-size:15px;line-height:1.55}
.msg-ass{background:#fff;border:1px solid var(--riga);border-top-left-radius:4px;align-self:flex-start}
.msg-tu{background:var(--viola);color:#fff;border-top-right-radius:4px;align-self:flex-end}
.msg .fonte{margin-top:8px;font-size:13px;font-weight:700;color:var(--giallo-scuro)}
.chat-sugg{display:flex;flex-wrap:wrap;gap:8px;padding:14px 20px;border-top:1px solid var(--riga)}
.chat-form{display:flex;gap:10px;padding:0 20px 20px}
.chat-form input{flex:1;min-width:0;font:500 16px var(--f-tit);border:1px solid var(--riga);border-radius:var(--r);padding:0 14px;min-height:52px;color:var(--ink)}
.chat-form input:focus{outline:2px solid var(--viola);outline-offset:0}
/* calcolatore */
.calc{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);border:1px solid var(--riga);border-radius:var(--r);background:#fff}
.calc-in{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 20px;padding:24px;border-right:1px solid var(--riga)}
.campo{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:700;color:var(--ink-2)}
.campo-largo{grid-column:1/-1}
.campo input[type=number],.campo select{font:600 18px var(--f-tit);color:var(--ink);border:1px solid var(--riga);border-radius:var(--r);padding:0 12px;min-height:50px;background:#fff;width:100%}
.campo input:focus,.campo select:focus{outline:2px solid var(--viola);outline-offset:0}
.campo output{color:var(--viola-scuro)}
.campo input[type=range]{accent-color:var(--viola);width:100%;height:28px}
.calc-err{grid-column:1/-1;color:var(--att);font-weight:600;min-height:1.2em;font-size:15px}
.calc-out{display:flex;flex-direction:column}
.co{padding:20px 24px;border-bottom:1px solid var(--riga);display:flex;flex-direction:column;gap:2px}
.co span{font-size:14px;font-weight:600;color:var(--ink-3)}
.co b{font:600 clamp(28px,3vw,38px)/1.1 var(--f-disp);color:var(--ink);font-variant-numeric:tabular-nums}
.co small{font-size:14px;color:var(--viola-scuro);font-weight:600}
.co-forte{background:var(--lavanda);border-bottom:0;flex:1;justify-content:center}
.co-forte b{color:var(--viola-scuro);font-size:clamp(34px,4vw,52px)}
.calc.invalido .calc-out{opacity:.4}
.ipotesi{margin-top:20px;border-top:1px solid var(--riga);padding-top:14px}
.ipotesi summary{cursor:pointer;font-weight:700;color:var(--viola-scuro)}
.ipotesi ul{margin:12px 0 0;padding-left:20px;color:var(--ink-2);font-size:15px;display:flex;flex-direction:column;gap:6px;max-width:80ch}
@media (max-width:900px){.calc{grid-template-columns:1fr}.calc-in{border-right:0;border-bottom:1px solid var(--riga);grid-template-columns:1fr 1fr}.calc-in .campo:nth-of-type(4){grid-column:1/-1}}
@media (max-width:480px){.calc-in{grid-template-columns:1fr}}
/* questionario */
.quiz{max-width:760px;border:1px solid var(--riga);border-radius:var(--r);background:#fff;padding:28px}
.quiz-prog{height:4px;background:var(--carta-2);border-radius:4px;overflow:hidden}
.quiz-prog span{display:block;height:100%;width:20%;background:var(--viola);transition:width .4s var(--ease)}
.quiz-passo{margin-top:16px;font-size:13px;font-weight:700;color:var(--giallo-scuro)}
.qd{border:0;margin:8px 0 0;padding:0;display:flex;flex-direction:column;gap:10px}
.qd legend{font:600 clamp(22px,2.4vw,28px)/1.2 var(--f-disp);color:var(--ink);margin-bottom:14px;padding:0}
.qd label{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--riga);border-radius:var(--r);cursor:pointer;font-weight:600;transition:border-color .2s,background .2s}
.qd label:hover{border-color:var(--viola)}
.qd label:has(input:checked){border-color:var(--viola);background:var(--lavanda);color:var(--viola-scuro)}
.qd input{accent-color:var(--viola);width:18px;height:18px;flex:none}
.quiz-err{color:var(--att);font-weight:600;min-height:1.4em;margin-top:12px;font-size:15px}
.quiz-az{display:flex;gap:10px;justify-content:space-between}
.quiz-az .btn{margin-left:auto}
.quiz-ris{margin-top:12px;display:flex;flex-direction:column;gap:12px;outline:none}
.quiz-ris h3{font-size:26px}
.quiz-aree,.quiz-str{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;color:var(--ink-2)}
.quiz-aree li{font-weight:600;color:var(--ink)}
.quiz-ris p{color:var(--ink-2)}
.quiz-nota{font-size:14px;color:var(--ink-3)!important;padding:12px 14px;background:var(--carta-2);border-radius:var(--r)}
.quiz-ris .btn{align-self:flex-start}
@media (prefers-reduced-motion:reduce){.pp,.pf-n,.quiz-prog span,.pm-testo mark{transition:none}}
[hidden]{display:none!important}
.chat-form{flex-direction:row;align-items:stretch}
.chat-form .btn{flex:none}
/* risultato processo: scheda ordine */
.ord-card{background:var(--bianco);border:1px solid var(--riga);border-radius:var(--r-l);padding:14px;display:grid;gap:10px;box-shadow:var(--ombra-1)}
.oc-testa{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.oc-stato{font-size:.78rem;font-weight:700;color:var(--viola-scuro);background:var(--lavanda);padding:3px 9px;border-radius:99px}
.oc-cli{margin:0;font-size:.9rem;color:var(--ink-2)}
.oc-righe{width:100%;border-collapse:collapse;font-size:.88rem}
.oc-righe th{text-align:left;font-weight:600;color:var(--ink-3);font-size:.76rem;text-transform:uppercase;letter-spacing:.04em;padding:6px 4px;border-bottom:1px solid var(--riga)}
.oc-righe td{padding:7px 4px;border-bottom:1px solid var(--riga)}
.oc-righe td:nth-child(2){font-variant-numeric:tabular-nums;white-space:nowrap}
.oc-fatto{margin:0;padding:0;list-style:none;display:grid;gap:5px;font-size:.86rem;color:var(--ink-2)}
.oc-fatto li{padding-left:22px;position:relative}
.oc-fatto li::before{content:"";position:absolute;left:2px;top:.35em;width:11px;height:6px;border-left:2px solid var(--viola);border-bottom:2px solid var(--viola);transform:rotate(-45deg)}
.oc-az{display:flex;gap:8px;flex-wrap:wrap}
.oc-btn{font-size:.84rem;font-weight:600;padding:7px 12px;border-radius:var(--r);background:var(--viola);color:#fff}
.oc-btn.sec{background:transparent;color:var(--viola-scuro);border:1px solid var(--riga)}

/* ===== sistema v3: pagine, demo come app, incentivi ===== */
:root{--carta:#FCFBF9;--carta-2:#F6F4F9;--ombra-1:0 1px 2px rgba(53,36,95,.05),0 6px 18px -10px rgba(53,36,95,.18);--ombra-2:0 2px 4px rgba(53,36,95,.04),0 24px 48px -24px rgba(53,36,95,.32);--r-l:12px;--dur:.6s}
body{background:var(--carta)}
.testata{background:rgba(252,251,249,.96)}
.alt{background:var(--carta-2)}
.sez.alt + .sez.alt{border-top:1px solid var(--riga)}
/* ingresso delle pagine: una sola sequenza coordinata */
@keyframes salita{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes comparsa{from{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}
[data-e="1"]{animation:salita .7s var(--ease) both}
[data-e="2"]{animation:salita .7s .12s var(--ease) both}
.hero-az,.pa-sotto+.hero-az{animation:salita .7s .22s var(--ease) both}
[data-e="3"]{animation:comparsa .9s .3s var(--ease) both}
.mini-dash{animation:comparsa .8s .6s var(--ease) both}
@media (prefers-reduced-motion:reduce){[data-e],.hero-az,.mini-dash{animation:none!important}}
/* apertura delle pagine interne */
.pag-apertura{padding-block:88px 56px}
.pa-griglia{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:24px 64px;align-items:end}
.pa-sotto{font-size:19px;line-height:1.6;color:var(--ink-2);max-width:54ch}
@media (max-width:900px){.pa-griglia{grid-template-columns:1fr}.pag-apertura{padding-block:56px 40px}}
/* hero: cruscotto sovrapposto */
.hero-foto img{box-shadow:var(--ombra-2)}
.mini-dash{position:absolute;right:-28px;top:28px;width:280px;background:#fff;border:1px solid var(--riga);border-radius:var(--r-l);padding:14px 16px;box-shadow:var(--ombra-2)}
.md-tit{font-size:13px;font-weight:700;color:var(--ink);display:flex;justify-content:space-between;gap:8px}
.md-tit span{font-weight:600;color:var(--ink-3);font-size:11px}
.md-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:10px}
.md-kpi b{display:block;font:600 22px/1 var(--f-disp);color:var(--viola-scuro)}
.md-kpi small{font-size:11px;line-height:1.2;color:var(--ink-3)}
.md-graf{width:100%;height:40px;margin-top:10px}
.md-graf rect{fill:var(--lavanda)}.md-graf rect.oggi{fill:var(--viola)}
.flusso{border-radius:var(--r-l);box-shadow:var(--ombra-2)}
@media (max-width:1240px){.mini-dash{right:12px}}
@media (max-width:900px){.mini-dash{display:none}}
/* selettore delle fasi */
.fasi-sel{min-width:0}
.fs-traccia{position:relative;padding:8px 0 0}
.fs-linea{position:absolute;left:11px;right:11px;top:19px;height:3px;border-radius:3px;background:var(--riga)}
.fs-riemp{display:block;height:100%;width:0;background:var(--viola);border-radius:3px;transition:width .45s var(--ease)}
.fs-pallino{position:absolute;top:8px;left:0;width:24px;height:24px;margin-left:-12px;border-radius:50%;background:#fff;border:3px solid var(--viola);box-shadow:0 0 0 6px var(--lavanda),var(--ombra-1);transition:left .45s var(--ease),transform .2s;pointer-events:none;z-index:2}
.fs-traccia{--pad:11px}
.fs-pallino{left:0}
.fs-linea,.fs-pallino{}
.fs-range{position:absolute;left:0;right:0;top:4px;width:100%;height:32px;margin:0;opacity:0;cursor:grab;z-index:3}
.fs-range:active{cursor:grabbing}
.trascina .fs-pallino,.trascina .fs-riemp{transition:none}
.trascina .fs-pallino{transform:scale(1.12)}
.fs-range:focus-visible ~ .fs-et,.fs-traccia:has(.fs-range:focus-visible) .fs-pallino{outline:none}
.fs-traccia:has(.fs-range:focus-visible) .fs-pallino{box-shadow:0 0 0 6px var(--lavanda),0 0 0 9px var(--viola)}
.fs-et{list-style:none;margin:44px 0 0;padding:0;display:flex;justify-content:space-between;position:relative;z-index:4}
.fs-et li{flex:1;display:flex;justify-content:center}
.fs-et li:first-child{justify-content:flex-start}.fs-et li:last-child{justify-content:flex-end}
.fs-et button{font:600 17px var(--f-disp);color:var(--ink-3);background:none;border:0;padding:6px 4px;cursor:pointer;transition:color .2s;border-radius:4px}
.fs-et button:hover{color:var(--viola)}
.fs-et button.fatta{color:var(--ink-2)}
.fs-et button.attiva{color:var(--viola-scuro)}
.fs-pannelli{margin-top:20px;border:1px solid var(--riga);border-radius:var(--r-l);background:#fff;padding:22px 24px;min-height:200px;box-shadow:var(--ombra-1)}
.fs-pan.entra{animation:salita .45s var(--ease) both}
.fs-pan h3{font-size:24px}
.fs-cosa{margin-top:8px;color:var(--ink-2);max-width:56ch}
.fs-dl{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 18px;margin:16px 0 0;padding-top:14px;border-top:1px solid var(--riga);font-size:15px}
.fs-dl dt{font-weight:700;color:var(--giallo-scuro)}
.fs-dl dd{margin:0;color:var(--ink)}
.intro-testo.piccolo{font-size:15px;color:var(--ink-3)}
@media (prefers-reduced-motion:reduce){.fs-riemp,.fs-pallino{transition:none}.fs-pan.entra{animation:none}}
/* servizi in home */
.sb-griglia{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:40px 72px;align-items:start}
.sb-testa p{margin-top:16px;color:var(--ink-2);max-width:38ch}
.sb-testa .link{display:inline-block;margin-top:24px}
.sb-lista{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.sb-lista a{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 32px;padding:20px 0;border-bottom:1px solid var(--riga);text-decoration:none;transition:padding .3s var(--ease),background .3s}
.sb-lista b{font:600 21px/1.2 var(--f-disp);color:var(--ink)}
.sb-lista span{color:var(--ink-2);font-size:16px}
.sb-lista a:hover{background:#fff;padding-inline:16px}
.sb-lista a:hover b{color:var(--viola-scuro)}
@media (max-width:900px){.sb-griglia{grid-template-columns:1fr}.sb-lista a{grid-template-columns:1fr}}
.passi5{grid-template-columns:repeat(5,minmax(0,1fr))}
.passi5 h3{font-size:19px}
@media (max-width:1000px){.passi5{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.passi5{grid-template-columns:1fr}}
/* incentivi in home */
.inc-home{background:#fff;border-block:1px solid var(--riga)}
.ih-griglia{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:40px 72px;align-items:center}
.ih-griglia p{margin-top:16px;color:var(--ink-2);max-width:48ch}
.ih-griglia .link{display:inline-block;margin-top:22px}
.ih-percorso,.ip-lista{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));position:relative}
.ih-percorso::before{content:"";position:absolute;left:8px;right:8px;top:8px;height:2px;background:linear-gradient(90deg,var(--viola) 70%,transparent 70%) 0 0/100% 2px no-repeat,repeating-linear-gradient(90deg,var(--viola) 0 6px,transparent 6px 12px)}
.ih-percorso li{position:relative;padding:32px 12px 0 0}
.ih-percorso li::before{content:"";position:absolute;left:0;top:0;width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid var(--viola)}
.ih-percorso li.ev::before{border-style:dashed}
.ih-percorso b{display:block;font:600 19px var(--f-disp)}
.ih-percorso span{font-size:14px;color:var(--ink-3)}
@media (max-width:900px){.ih-griglia{grid-template-columns:1fr}.ih-percorso{grid-template-columns:1fr 1fr;row-gap:28px}.ih-percorso::before{display:none}}
/* servizi: pagina */
.servizi-pag .wrap{display:flex;flex-direction:column}
.sp{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:40px 72px;align-items:center;padding:64px 0;border-top:1px solid var(--riga)}
.sp:first-child{border-top:1px solid var(--ink)}
.sp:nth-child(even){grid-template-columns:minmax(0,4fr) minmax(0,7fr)}
.sp:nth-child(even) .sp-testo{order:2}
.sp h2{font-size:clamp(28px,3vw,40px);max-width:18ch}
.sp-dl{display:grid;grid-template-columns:minmax(0,1fr);gap:4px;margin:22px 0 0}
.sp-dl dt{font-size:13px;font-weight:700;color:var(--giallo-scuro);margin-top:14px}
.sp-dl dd{margin:0;color:var(--ink-2);max-width:60ch}
.sp .link{display:inline-block;margin-top:22px}
.vg{background:#fff;border:1px solid var(--riga);border-radius:var(--r-l);padding:20px;box-shadow:var(--ombra-1);font-size:14px}
.vg-tit{font-size:12px;font-weight:700;color:var(--ink-3);margin-bottom:12px}
.vg-mappa ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.vg-mappa li{padding:6px 10px;border:1px solid var(--riga);border-radius:6px;font-weight:600}
.vg-mappa li+li::before{content:"";display:inline-block;width:10px;height:1.5px;background:var(--ink-3);margin:0 8px 3px -18px}
.vg-mappa li.rip{border-color:#E7B4A6;background:#FBEDE8;color:#8A2E14}
.vg-nota{margin-top:12px;font-size:13px;color:#8A2E14}
.va-r{display:flex;gap:10px;align-items:baseline;padding:8px 0;border-top:1px solid var(--riga)}
.va-r:first-of-type{border-top:0}
.va-q{flex:none;width:52px;font-size:12px;font-weight:800;color:var(--viola)}
.va-r.ok{color:var(--ok);font-weight:600}
.vg-doc dl,.gc-scheda dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;margin:0}
.vg-doc dt,.gc-scheda dt{color:var(--ink-3)}.vg-doc dd,.gc-scheda dd{margin:0;font-weight:600}
.vg-ok{margin-top:12px;font-weight:700;color:var(--ok)}
.vg-ok::before{content:"✓ "}
.vg-tab table{width:100%;border-collapse:collapse}
.vg-tab td{padding:8px 6px 8px 0;border-top:1px solid var(--riga)}
.vg-tab .s1{color:var(--ok);font-weight:700}.vg-tab .s2{color:var(--giallo-scuro);font-weight:700}.vg-tab .s3{color:var(--ink-3);font-weight:700}
.vi{display:flex;align-items:center;gap:8px;padding:6px 0}
.vi span{padding:5px 9px;border:1px solid var(--riga);border-radius:6px;font-weight:600;white-space:nowrap}
.vi span:first-child{background:var(--lavanda);border-color:transparent;color:var(--viola-scuro)}
.vi i{flex:1;height:1.5px;background:repeating-linear-gradient(90deg,var(--viola) 0 5px,transparent 5px 9px);min-width:20px}
@media (max-width:900px){.sp,.sp:nth-child(even){grid-template-columns:1fr;padding:48px 0}.sp:nth-child(even) .sp-testo{order:0}}
/* demo: ingresso */
.demo-ingresso{padding-block:72px 56px;transition:opacity .35s,transform .35s var(--ease)}
.demo-ingresso.chiuso{display:none}
.di-griglia{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,6fr);gap:48px 64px;align-items:center}
.di-punti{list-style:none;margin:22px 0 0;padding:0;display:flex;flex-direction:column;gap:8px;font-size:15px;color:var(--ink-2)}
.di-punti li{padding-left:22px;position:relative}
.di-punti li::before{content:"";position:absolute;left:0;top:.5em;width:10px;height:10px;border-radius:50%;background:var(--lavanda);border:2px solid var(--viola)}
.di-testo .hero-az{margin-top:32px}
.di-anteprima{border:1px solid var(--riga);border-radius:var(--r-l);background:#fff;box-shadow:var(--ombra-2);overflow:hidden;animation:comparsa .9s .3s var(--ease) both;transform-origin:center}
.dia-barra{display:flex;align-items:center;gap:6px;padding:10px 14px;border-bottom:1px solid var(--riga);font-size:12px}
.dia-barra span{width:9px;height:9px;border-radius:50%;background:var(--riga)}
.dia-barra b{margin-left:10px;color:var(--ink-2)}
.dia-corpo{display:grid;grid-template-columns:70px 1fr;min-height:280px}
.dia-side{border-right:1px solid var(--riga);padding:14px 12px;display:flex;flex-direction:column;gap:12px;background:var(--carta-2)}
.dia-side i{height:10px;border-radius:4px;background:var(--riga)}.dia-side i.on{background:var(--viola)}
.dia-main{padding:16px;display:flex;flex-direction:column;gap:14px}
.dia-kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}
.dia-kpi i{height:44px;border:1px solid var(--riga);border-radius:8px}.dia-kpi i.v{background:var(--lavanda);border-color:transparent}
.dia-graf{height:110px;display:flex;align-items:flex-end;gap:8px;padding:10px;border:1px solid var(--riga);border-radius:8px}
.dia-graf i{flex:1;background:var(--lavanda);border-radius:3px 3px 0 0;transform-origin:bottom;animation:barra .8s var(--ease) both}
.dia-graf i:nth-child(6){background:var(--viola)}
.dia-graf i:nth-child(2){animation-delay:.05s}.dia-graf i:nth-child(3){animation-delay:.1s}.dia-graf i:nth-child(4){animation-delay:.15s}.dia-graf i:nth-child(5){animation-delay:.2s}.dia-graf i:nth-child(6){animation-delay:.25s}.dia-graf i:nth-child(7){animation-delay:.3s}.dia-graf i:nth-child(8){animation-delay:.35s}
@keyframes barra{from{transform:scaleY(0)}}
.dia-righe{display:flex;flex-direction:column;gap:8px}.dia-righe i{height:10px;border-radius:4px;background:var(--carta-2)}
@media (max-width:900px){.di-griglia{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.di-anteprima,.dia-graf i{animation:none}}
/* demo: applicazione */
.app-wrap{padding-block:24px 96px}
.app-wrap.entra .app{animation:comparsa .5s var(--ease) both}
.app{border:1px solid var(--riga);border-radius:var(--r-l);background:#fff;box-shadow:var(--ombra-2);overflow:hidden}
.app-testa{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 16px;padding:12px 18px;border-bottom:1px solid var(--riga);background:#fff}
.at-sx,.at-dx{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.at-sx b{font:600 17px var(--f-disp)}
.stato-pill{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#1E5A36;background:#E8F4EC;padding:5px 10px;border-radius:999px}
.stato-pill i{width:8px;height:8px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 0 rgba(45,122,75,.5);animation:vivo 2s infinite}
@keyframes vivo{70%{box-shadow:0 0 0 7px rgba(45,122,75,0)}100%{box-shadow:0 0 0 0 rgba(45,122,75,0)}}
.at-esci{min-height:38px;font-size:14px;padding:0 14px}
.app-corpo{display:grid;grid-template-columns:232px minmax(0,1fr);min-height:640px}
.app-nav{display:flex;flex-direction:column;gap:2px;padding:14px 10px;border-right:1px solid var(--riga);background:var(--carta-2)}
.an-v{display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:8px;background:transparent;font:600 15px var(--f-tit);color:var(--ink-2);cursor:pointer;text-align:left;transition:background .2s,color .2s}
.an-v svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none}
.an-v:hover{background:#fff;color:var(--ink)}
.an-v[aria-selected=true]{background:#fff;color:var(--viola-scuro);box-shadow:var(--ombra-1)}
.an-v[aria-selected=true] svg{color:var(--viola)}
.app-main{min-width:0;padding:28px 32px 36px}
.vista-app.entra{animation:salita .4s var(--ease) both}
.va-testa{margin-bottom:22px}
.va-testa h2{font-size:clamp(24px,2.4vw,32px);outline:none}
.va-testa p{margin-top:6px;color:var(--ink-2);max-width:70ch;font-size:15.5px}
.vista-app .dm,.vista-app .calc,.vista-app .quiz{box-shadow:none}
.vista-app .quiz{max-width:none}
.vista-app .ipotesi{margin-top:16px}
.pano-kpi{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid var(--riga);border-radius:var(--r-l);overflow:hidden}
.pk{padding:16px 18px;display:flex;flex-direction:column;gap:2px}
.pk+.pk{border-left:1px solid var(--riga)}
.pk span{font-size:13px;font-weight:600;color:var(--ink-3)}
.pk b{font:600 32px/1.1 var(--f-disp);color:var(--ink);font-variant-numeric:tabular-nums}
.pk small{font-size:12px;color:var(--ink-3)}
.pk-viola{background:var(--lavanda)}.pk-viola b{color:var(--viola-scuro)}
.pk b.pulsa{animation:pulsa .8s var(--ease)}
@keyframes pulsa{0%{color:var(--viola)}40%{transform:scale(1.08)}100%{transform:none}}
.pano-griglia{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:20px;margin-top:20px}
.pano-graf,.pano-att,.pano-az{border:1px solid var(--riga);border-radius:var(--r-l);padding:16px 18px}
.pano-graf svg{width:100%;height:auto;display:block}
.gl{stroke:var(--riga);stroke-width:1}
.gt{font:600 11px var(--f-tit);fill:var(--ink-3)}
.gb{fill:var(--lavanda);transform-origin:center 150px;transform-box:view-box;animation:barra .7s var(--ease) both;animation-delay:calc(var(--i) * 30ms)}
.gb.oggi{fill:var(--viola)}
.att-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.att-lista li{padding:9px 0;border-top:1px solid var(--riga);font-size:14px;display:flex;gap:10px}
.att-lista li:first-child{border-top:0}
.att-lista li.nuovo{animation:salita .4s var(--ease) both;color:var(--viola-scuro);font-weight:600}
.att-ora{flex:none;font-variant-numeric:tabular-nums;color:var(--ink-3);font-weight:600}
.pano-az{margin-top:20px}
.pa-bt{display:flex;flex-wrap:wrap;gap:8px}
.toast-zona{position:fixed;right:max(16px,env(safe-area-inset-right,0px));bottom:max(16px,env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:8px;z-index:60;pointer-events:none}
.toast{background:var(--viola-scuro);color:#fff;padding:12px 16px;border-radius:10px;font-size:14px;font-weight:600;box-shadow:var(--ombra-2);max-width:340px;animation:salita .35s var(--ease) both;transition:opacity .4s,transform .4s}
.toast::before{content:"✓";display:inline-block;margin-right:8px;color:#CDBFF5}
.toast.via{opacity:0;transform:translateY(8px)}
@media (max-width:980px){.app-corpo{grid-template-columns:1fr}.app-nav{flex-direction:row;overflow-x:auto;border-right:0;border-bottom:1px solid var(--riga);padding:8px}.an-v{width:auto;white-space:nowrap}.app-main{padding:22px 18px 28px}.pano-griglia{grid-template-columns:1fr}}
@media (max-width:640px){.pano-kpi{grid-template-columns:1fr 1fr}.pk:nth-child(3){border-left:0}.pk:nth-child(n+3){border-top:1px solid var(--riga)}.an-v span{font-size:14px}}
@media (prefers-reduced-motion:reduce){.gb,.vista-app.entra,.app-wrap.entra .app,.toast,.att-lista li.nuovo,.stato-pill i{animation:none}}
/* gestionale */
.ga-griglia{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:48px 64px;align-items:center}
.ga-collage{display:grid;grid-template-columns:1.2fr 1fr;gap:14px;position:relative}
.gc{background:#fff;border:1px solid var(--riga);border-radius:var(--r-l);padding:14px 16px;box-shadow:var(--ombra-1);font-size:13.5px}
.gc-tit{font-size:12px;font-weight:700;color:var(--ink-3);margin-bottom:10px}
.gc-dash{grid-column:1/-1}
.gc-kpi{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.gc-kpi b{display:block;font:600 24px var(--f-disp);color:var(--ink)}
.gc-kpi small{color:var(--ink-3)}
.gc-dash svg{width:100%;height:60px;margin-top:8px}
.gc-dash polyline{fill:none;stroke:var(--viola);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}
.gc-dash polyline.b{stroke:var(--riga);stroke-width:2}
.gc-tl ol{list-style:none;margin:0;padding:0 0 0 16px;border-left:2px solid var(--riga);display:flex;flex-direction:column;gap:8px}
.gc-tl li{position:relative;color:var(--ink-3)}
.gc-tl li::before{content:"";position:absolute;left:-22px;top:4px;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--riga)}
.gc-tl li.f{color:var(--ink)}.gc-tl li.f::before{background:var(--viola);border-color:var(--viola)}
.gc-tl li.a{color:var(--viola-scuro);font-weight:700}.gc-tl li.a::before{border-color:var(--viola);box-shadow:0 0 0 4px var(--lavanda)}
.gc-flow{grid-column:1/-1}
.gf{display:flex;align-items:center;gap:8px}
.gf span{padding:6px 10px;border:1px solid var(--riga);border-radius:6px;font-weight:600}
.gf span.on{background:var(--viola);border-color:var(--viola);color:#fff}
.gf i{flex:1;height:1.5px;background:var(--viola)}
.cap-lista{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:56px;border-top:1px solid var(--ink)}
.cap-lista li{padding:26px 0;border-bottom:1px solid var(--riga)}
.cap-lista li:last-child{grid-column:1/-1}
.cap-lista h3{font-size:22px}
.cap-lista p{margin-top:8px;color:var(--ink-2);max-width:52ch}
@media (max-width:900px){.ga-griglia{grid-template-columns:1fr}.cap-lista{grid-template-columns:1fr}}
@media (max-width:480px){.ga-collage{grid-template-columns:1fr}}
/* metodo */
.mt-griglia{display:grid;grid-template-columns:minmax(0,3fr) minmax(0,8fr);gap:40px 72px;align-items:start}
.mt-lato{position:sticky;top:110px;display:flex;flex-direction:column;gap:20px;align-items:flex-start}
.mt-tot{font-size:18px;color:var(--ink-2)}
.mt-tot b{color:var(--viola-scuro)}
.mt-lista{list-style:none;margin:0;padding:0;position:relative}
.mt-linea{position:absolute;left:23px;top:10px;bottom:10px;width:2px;background:var(--riga)}
.mt-linea span{display:block;width:100%;height:0;background:var(--viola);transition:height .6s var(--ease)}
.mt-passo{display:grid;grid-template-columns:48px minmax(0,1fr);gap:24px;padding:0 0 56px;position:relative}
.mt-n{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;border:2px solid var(--riga);font:600 18px var(--f-disp);color:var(--ink-3);position:relative;z-index:1;transition:all .4s var(--ease)}
.mt-passo.visto .mt-n{border-color:var(--viola);color:var(--viola-scuro);box-shadow:0 0 0 6px var(--lavanda)}
.mt-cont{opacity:.45;transform:translateY(8px);transition:opacity .6s var(--ease),transform .6s var(--ease)}
.mt-passo.visto .mt-cont{opacity:1;transform:none}
.mt-cont h2{font-size:clamp(24px,2.6vw,34px);padding-top:6px}
.mt-cont p{margin-top:10px;color:var(--ink-2);max-width:60ch}
.mt-dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 0}
.mt-dl dt{font-size:12px;font-weight:700;color:var(--giallo-scuro);grid-row:1}
.mt-dl dd{margin:0;grid-row:2;font-weight:600;color:var(--ink);font-size:15px;padding-top:8px;border-top:1px solid var(--riga)}
@media (max-width:900px){.mt-griglia{grid-template-columns:1fr}.mt-lato{position:static}.mt-dl{grid-template-columns:1fr}.mt-dl dt,.mt-dl dd{grid-row:auto}}
@media (prefers-reduced-motion:reduce){.mt-cont{opacity:1;transform:none;transition:none}}
/* incentivi */
.inc-ap{background:linear-gradient(180deg,#fff 0,var(--carta) 100%)}
.ia-griglia{display:grid;grid-template-columns:minmax(0,6fr) minmax(0,5fr);gap:40px 64px;align-items:center}
.ia-griglia h1{max-width:18ch}
.ia-griglia .hero-az{margin-top:30px}
.ia-incontro{width:100%;height:auto;overflow:visible}
.ia-incontro path{fill:none;stroke-width:2.5;stroke-linecap:round}
.ia-incontro .l1{stroke:var(--viola);stroke-dasharray:400;stroke-dashoffset:400;animation:traccia 1.2s .4s var(--ease) forwards}
.ia-incontro .l2{stroke:var(--viola-scuro);stroke-dasharray:400;stroke-dashoffset:400;animation:traccia 1.2s .55s var(--ease) forwards}
.ia-incontro .l3{stroke:var(--viola);stroke-width:4;stroke-dasharray:160;stroke-dashoffset:160;animation:traccia .7s 1.5s var(--ease) forwards}
@keyframes traccia{to{stroke-dashoffset:0}}
.ia-incontro circle{fill:#fff;stroke-width:2.5}
.ia-incontro .n1,.ia-incontro .n4{stroke:var(--viola)}.ia-incontro .n2{stroke:var(--viola-scuro)}
.ia-incontro .n3{fill:var(--viola);stroke:var(--lavanda);stroke-width:8}
.ia-incontro text{font:600 16px var(--f-disp);fill:var(--ink)}
.ia-incontro text.f{fill:var(--viola-scuro);font-size:18px}
.ia-incontro text.p{font:500 13px var(--f-tit);fill:var(--ink-3)}
@media (prefers-reduced-motion:reduce){.ia-incontro path{animation:none;stroke-dashoffset:0}}
@media (max-width:900px){.ia-griglia{grid-template-columns:1fr}}
.ii-griglia{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:32px 72px}
.ii-griglia h2{max-width:14ch}
.ii-testo{display:flex;flex-direction:column;gap:16px;font-size:18px;color:var(--ink-2)}
@media (max-width:900px){.ii-griglia{grid-template-columns:1fr}}
.ip-lista{gap:0}
.ip-lista::before{content:"";position:absolute;left:22px;right:22px;top:22px;height:2px;background:linear-gradient(90deg,var(--viola) 0 74%,transparent 74%),repeating-linear-gradient(90deg,var(--viola) 0 6px,transparent 6px 12px)}
.ip-lista li{position:relative;padding:0 28px 0 0}
.ip-n{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#fff;border:2px solid var(--viola);font:600 17px var(--f-disp);color:var(--viola-scuro);position:relative}
.ip-lista li.ev .ip-n{border-style:dashed}
.ip-lista h3{margin-top:20px;font-size:21px}
.ip-lista p{margin-top:8px;font-size:15.5px;color:var(--ink-2)}
.ip-chi{display:inline-block;margin-top:12px;font-size:13px;font-weight:700;color:var(--viola-scuro);background:var(--lavanda);padding:4px 10px;border-radius:4px}
@media (max-width:900px){.ip-lista{grid-template-columns:1fr 1fr;row-gap:36px}.ip-lista::before{display:none}}
@media (max-width:520px){.ip-lista{grid-template-columns:1fr}}
.it-griglia,.im-griglia,.ie-griglia{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:32px 72px;align-items:start}
.it-nota{margin-top:14px;color:var(--ink-3);font-size:15px;max-width:40ch}
.it-lista{list-style:none;margin:0;padding:0;border-top:1px solid var(--ink)}
.it-lista li{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4px 28px;padding:18px 0;border-bottom:1px solid var(--riga)}
.it-lista b{font:600 19px var(--f-disp)}
.it-lista span{color:var(--ink-2);font-size:15.5px}
@media (max-width:900px){.it-griglia,.im-griglia,.ie-griglia{grid-template-columns:1fr}.it-lista li{grid-template-columns:1fr}}
.misura-card{background:#fff;border:1px solid var(--riga);border-radius:var(--r-l);box-shadow:var(--ombra-2);overflow:hidden}
.misura-card header{padding:22px 24px 18px;border-bottom:1px solid var(--riga);background:linear-gradient(90deg,var(--lavanda),#fff 70%)}
.mc-stato{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:#1E5A36;background:#E8F4EC;padding:4px 10px;border-radius:999px}
.mc-stato::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ok)}
.misura-card h3{margin-top:12px;font-size:26px}
.misura-card header p{margin-top:4px;color:var(--ink-2);font-size:15px}
.misura-card dl{display:grid;grid-template-columns:minmax(0,170px) minmax(0,1fr);margin:0}
.misura-card dt,.misura-card dd{padding:14px 24px;border-bottom:1px solid var(--riga);font-size:15px}
.misura-card dt{font-weight:700;color:var(--giallo-scuro);padding-right:0}
.misura-card dd{margin:0;color:var(--ink)}
.misura-card footer{padding:14px 24px;font-size:13px;color:var(--ink-3)}
.misura-card footer a{color:var(--viola-scuro)}
@media (max-width:600px){.misura-card dl{grid-template-columns:1fr}.misura-card dt{border-bottom:0;padding-bottom:0}}
.iv-lista{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;counter-reset:iv;border-top:1px solid var(--ink)}
.iv-lista li{counter-increment:iv;padding:22px 20px 22px 0;position:relative}
.iv-lista li+li{padding-left:20px;border-left:1px solid var(--riga)}
.iv-lista li::before{content:counter(iv);display:block;font:600 15px var(--f-disp);color:var(--viola);margin-bottom:10px}
.iv-lista h3{font-size:18px;line-height:1.25}
.iv-lista p{margin-top:8px;font-size:14.5px;color:var(--ink-2)}
@media (max-width:1000px){.iv-lista{grid-template-columns:1fr 1fr}.iv-lista li+li{border-left:0;padding-left:0}.iv-lista li{border-bottom:1px solid var(--riga)}}
@media (max-width:520px){.iv-lista{grid-template-columns:1fr}}
.ruoli{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:48px;border:1px solid var(--riga);border-radius:var(--r-l);overflow:hidden;background:#fff}
.ruoli div{padding:22px 24px}
.ruoli div+div{border-left:1px solid var(--riga)}
.ruoli div:first-child{background:var(--lavanda)}
.ruoli h3{font-size:19px}
.ruoli p{margin-top:8px;font-size:15px;color:var(--ink-2)}
@media (max-width:800px){.ruoli{grid-template-columns:1fr}.ruoli div+div{border-left:0;border-top:1px solid var(--riga)}}
.ie-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;border-left:2px solid var(--viola);padding-left:28px}
.ie-lista li{position:relative;padding:0 0 26px}
.ie-lista li::before{content:"";position:absolute;left:-36px;top:5px;width:14px;height:14px;border-radius:50%;background:#fff;border:2px solid var(--viola)}
.ie-lista li.ev::before{background:var(--viola)}
.ie-lista b{font:600 19px var(--f-disp)}
.ie-lista p{margin-top:6px;color:var(--ink-2);max-width:62ch}
/* contatti */
.dopo{list-style:none;margin:28px 0 0;padding:0;counter-reset:dp;display:flex;flex-direction:column;gap:14px;max-width:44ch}
.dopo li{counter-increment:dp;display:grid;grid-template-columns:32px 1fr;column-gap:12px}
.dopo li::before{content:counter(dp);grid-row:span 2;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:var(--lavanda);color:var(--viola-scuro);font:700 14px var(--f-tit)}
.dopo b{font-weight:700;color:var(--ink)}
.dopo span{font-size:15px;color:var(--ink-2)}
.contatto form select#f-pref{font:500 18px var(--f-tit)}
.mini-dash,.flusso{z-index:3}
.misura-card footer{background:#fff;color:var(--ink-3);border-top:0;font-family:var(--f-tit)}

.fs-pallino{left:calc(11px + (100% - 22px) * var(--p,0))}
.fs-et{display:block;position:relative;height:40px;margin-top:40px}
.fs-et li{position:absolute;top:0;left:calc(11px + (100% - 22px) * var(--p));transform:translateX(-50%);white-space:nowrap}
.fs-et li:first-child{transform:translateX(-11px)}.fs-et li:last-child{transform:translateX(calc(-100% + 11px))}
h1.h2 + .pa-sotto,.di-testo h1 + .pa-sotto{margin-top:20px}
.di-testo h1{margin-top:12px}
@media (max-width:520px){.fs-et button{font-size:14px}}
/* ===== v4: pagine riconoscibili e divisori chiari ===== */
main > section + section{border-top:1px solid var(--riga)}
main > .invito{border-top:0}
.tema{position:relative;border-bottom:1px solid var(--riga)}
.tema::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:4px;background:var(--viola)}
.tema-servizi{background:var(--lavanda)}
.tema-servizi h1,.tema-contatti h1{color:var(--viola-scuro)}
.tema-gestionale{background:var(--carta-2)}
.tema-metodo{background:#fff}
.tema-metodo .pa-griglia{border-left:4px solid var(--viola);padding-left:28px}
.tema-noi{background:var(--carta-2)!important}
.tema-contatti{background:var(--lavanda)!important}
.tema-contatti form{box-shadow:var(--ombra-2)}
.tema-demo{background:var(--viola-scuro);color:#fff}
.tema-demo h1{color:#fff}
.tema-demo .pa-sotto,.tema-demo .di-punti{color:#DCD3F5}
.tema-demo .occhiello{color:#CDBFF5}
.tema-demo .di-punti li::before{background:var(--viola-scuro);border-color:#CDBFF5}
.tema-demo .link{color:#fff;border-bottom-color:#CDBFF5}
.tema-demo .btn{background:#fff;color:var(--viola-scuro)}
.tema-demo .btn:hover{background:var(--lavanda)}
.tema-demo::after{background:var(--lavanda)}
.tema-demo .di-anteprima{border-color:transparent;box-shadow:0 30px 60px -30px rgba(0,0,0,.5)}
/* indice del sito in home */
.indice-sito{background:var(--carta-2)}
.is-griglia{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(220px,auto);gap:18px}
.is{display:flex;flex-direction:column;gap:10px;padding:26px 26px 22px;border-radius:var(--r-l);text-decoration:none;color:var(--ink);border:1px solid var(--riga);background:#fff;transition:transform .3s var(--ease),box-shadow .3s var(--ease);position:relative;overflow:hidden}
.is:hover{transform:translateY(-3px);box-shadow:var(--ombra-2)}
.is h3{font-size:clamp(22px,2.2vw,28px);line-height:1.1}
.is p{color:var(--ink-2);font-size:15.5px;max-width:40ch}
.is-et{align-self:flex-start;font-size:12px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;color:var(--viola-scuro);background:var(--lavanda);padding:4px 9px;border-radius:4px}
.is-vai{margin-top:auto;padding-top:10px;font-weight:700;font-size:15px;color:var(--viola-scuro);border-bottom:1px solid currentColor;align-self:flex-start}
.is-servizi{grid-row:span 2;background:var(--lavanda);border-color:transparent}
.is-servizi .is-et{background:#fff}
.is-servizi ul{list-style:none;margin:14px 0 0;padding:0;border-top:1px solid rgba(53,36,95,.15)}
.is-servizi li{padding:11px 0;border-bottom:1px solid rgba(53,36,95,.15);font:600 18px var(--f-disp);color:var(--viola-scuro)}
.is-demo{grid-column:span 2;background:var(--viola-scuro);border-color:transparent;color:#fff;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:28px;align-content:start}
.is-demo > *:not(.is-app){grid-column:1}
.is-demo h3{color:#fff}.is-demo p{color:#DCD3F5}
.is-demo .is-et{background:rgba(255,255,255,.14);color:#fff}
.is-demo .is-vai{color:#fff}
.is-app{grid-column:2;grid-row:1/span 4;display:grid;grid-template-columns:40px 1fr;gap:8px;background:#fff;border-radius:10px;padding:10px;align-self:center;min-height:140px}
.is-app .s{background:var(--carta-2);border-radius:6px}
.is-app div{display:flex;flex-direction:column;gap:8px}
.is-app div i{height:22px;border-radius:5px;background:var(--carta-2)}
.is-app div i.b{flex:1;background:linear-gradient(90deg,var(--lavanda) 0 60%,var(--viola) 60% 72%,var(--lavanda) 72%)}
.is-gest{border-top:4px solid var(--viola)}
.is-metodo{background:#fff}
.is-passi{list-style:none;margin:4px 0;padding:0;display:flex;align-items:center}
.is-passi li{width:16px;height:16px;border-radius:50%;border:2px solid var(--viola);background:#fff}
.is-passi li+li{margin-left:28px;position:relative}
.is-passi li+li::before{content:"";position:absolute;right:16px;top:5px;width:28px;height:2px;background:var(--viola)}
.is-passi li:last-child{background:var(--viola)}
.is-inc{background:linear-gradient(160deg,var(--lavanda),#fff 60%)}
.is-noi img{opacity:.9}
@media (max-width:1000px){.is-griglia{grid-template-columns:1fr 1fr}.is-demo{grid-column:span 2}.is-servizi{grid-row:auto}}
@media (max-width:640px){.is-griglia{grid-template-columns:1fr}.is-demo{grid-column:auto;grid-template-columns:1fr}.is-app{grid-column:1;grid-row:auto}}
@media (prefers-reduced-motion:reduce){.is{transition:none}.is:hover{transform:none}}
.tema-contatti p.intro{background:transparent!important}
.tema-contatti .dopo li::before{background:#fff}
/* fasce fotografiche */
.fascia-foto{padding-block:clamp(24px,4vw,48px);background:var(--carta)}
.fascia-foto figure{margin:0;display:grid;gap:12px}
.fascia-foto img{width:100%;aspect-ratio:21/9;object-fit:cover;border-radius:var(--r-l);display:block;box-shadow:var(--ombra-1)}
.fascia-foto figcaption{font-size:.92rem;color:var(--ink-3);max-width:60ch}
@media (max-width:700px){.fascia-foto img{aspect-ratio:4/3}}
/* gestionale: promessa custom */
.ga-occ{display:inline-block;margin:0 0 14px;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--viola-scuro);background:var(--lavanda);padding:5px 12px;border-radius:99px}
.vs-griglia{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.vs{border-radius:var(--r-l);padding:clamp(18px,3vw,30px);border:1px solid var(--riga)}
.vs-tit{margin:0 0 12px;font-weight:700;font-size:1.05rem}
.vs ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}
.vs li{padding-left:26px;position:relative;line-height:1.45}
.vs-std{background:var(--carta-2);color:var(--ink-2)}
.vs-std li::before{content:"×";position:absolute;left:4px;top:-1px;color:var(--ink-3);font-weight:700}
.vs-sym{background:var(--viola-scuro);color:#fff;border-color:var(--viola-scuro)}
.vs-sym .vs-tit{color:#fff}
.vs-sym li::before{content:"";position:absolute;left:3px;top:.4em;width:12px;height:6px;border-left:2px solid #CDBFF5;border-bottom:2px solid #CDBFF5;transform:rotate(-45deg)}
@media (max-width:760px){.vs-griglia{grid-template-columns:1fr}}
.hero-pill{display:inline-flex;flex-wrap:wrap;gap:6px;align-items:center;margin-bottom:18px;font-size:.86rem;color:var(--ink-2);text-decoration:none;background:var(--bianco);border:1px solid var(--riga);border-radius:99px;padding:5px 14px 5px 5px;box-shadow:var(--ombra-1);transition:border-color .2s}
.hero-pill b{background:var(--viola);color:#fff;border-radius:99px;padding:3px 10px;font-weight:600}
.hero-pill:hover{border-color:var(--viola)}
.fascia-foto figure{grid-template-columns:minmax(0,520px) minmax(0,1fr);align-items:end;gap:28px}
.fascia-foto img{aspect-ratio:16/9}
.fascia-foto figcaption{font-size:1rem;color:var(--ink-2);padding-bottom:6px}
@media (max-width:700px){.fascia-foto figure{grid-template-columns:1fr;gap:12px}.fascia-foto img{aspect-ratio:16/9}}
.ga-slogan{margin:14px 0 0;font-size:clamp(1.1rem,1.6vw,1.3rem);font-weight:600;line-height:1.4;color:var(--viola-scuro);padding-left:14px;border-left:3px solid var(--viola);max-width:34ch}
.ga-slogan + .pa-sotto{margin-top:18px}
/* didascalie foto più visibili */
.fascia-foto figure{align-items:center}
.fascia-foto figcaption{font-family:var(--f-disp);font-size:clamp(1.35rem,2.4vw,1.95rem);font-weight:600;line-height:1.25;letter-spacing:-.01em;color:var(--ink);max-width:24ch;padding:0 0 0 20px;border-left:4px solid var(--viola);text-wrap:balance}
@media (max-width:700px){.fascia-foto figcaption{font-size:1.25rem;max-width:none}}
/* link Accedi nella testata */
.accedi-testata{display:inline-flex;align-items:center;min-height:42px;padding:0 14px;color:var(--ink-2);font-weight:600;font-size:15px;text-decoration:none;border-radius:var(--r);transition:color .2s,background .2s}
.accedi-testata:hover{color:var(--viola-scuro);background:var(--lavanda)}
@media (max-width:1140px){.accedi-testata{display:none}}
/* barra di servizio in alto a destra: accesso area clienti */
.barra-servizio{background:var(--viola-scuro);color:#fff;font-size:13px}
.barra-servizio .wrap{display:flex;justify-content:flex-end;align-items:center;min-height:34px}
.accedi-top{display:inline-flex;align-items:center;gap:7px;color:#fff;text-decoration:none;font-weight:600;padding:4px 0;opacity:.92;transition:opacity .2s}
.accedi-top:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}
.marchio img[src="/logo-esteso.svg"]{width:auto;height:40px}@media (max-width:640px){.marchio img[src="/logo-esteso.svg"]{height:34px}}
/* la scheda del cruscotto non copre il viso della foto: va in basso a destra */
.mini-dash{top:auto;bottom:150px}
@media (max-width:1240px){.mini-dash{bottom:150px}}
.mini-dash{bottom:120px}
@media (max-width:1240px){.mini-dash{display:none}}
.mini-dash{top:24px;bottom:auto;right:auto;left:-44px;width:250px}

@media (max-width:1140px){.voci{display:none}.menu{display:block}.azioni{margin-left:auto}}
