:root{
  --bg:#0e0b06;--bg2:#141009;--panel:#181206;--panel2:#1f180c;
  --oro:#ccb46d;--oro-chiaro:#f8e1a2;--oro-scuro:#a8894a;
  --ink:#f5eeda;--ink-soft:#c9c0a8;--ink-dim:#8f866f;--kill:#e0a89a;
  --line:rgba(204,180,109,0.20);--line-soft:rgba(204,180,109,0.12);
  --gold:linear-gradient(135deg,#f8e1a2 0%,#ccb46d 50%,#a8894a 100%);
}
*{box-sizing:border-box;margin:0;padding:0}
html,body{height:100%}
body{font-family:'Inter',-apple-system,sans-serif;color:var(--ink);overflow:hidden;
  background:radial-gradient(120% 90% at 15% 0%,#1c1508 0%,#0e0b06 55%,#080602 100%);}
.deck{position:fixed;inset:0}

/* ambient gold glow layer */
.deck::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(60% 55% at 85% 90%,rgba(204,180,109,0.10),transparent 70%);}

.slide{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;justify-content:center;
  padding:min(9vh,80px) min(9vw,120px);
  opacity:0;visibility:hidden;transform:translateY(14px);
  transition:opacity .5s ease, transform .5s ease, visibility .5s;}
.slide.active{opacity:1;visibility:visible;transform:none}

/* ===== SFONDI per tipo di slide (overlay scuro per leggibilità) ===== */
.slide{background-size:cover;background-position:center;background-repeat:no-repeat}
/* contenuti + chat: overlay FORTE, texture appena percettibile, rotazione 3 */
.slide.content,.slide.chat{background-image:linear-gradient(rgba(9,7,3,0.90),rgba(9,7,3,0.94)),url(bg/content1.png)}
.slide.content:nth-child(3n){background-image:linear-gradient(rgba(9,7,3,0.90),rgba(9,7,3,0.94)),url(bg/content2.png)}
.slide.content:nth-child(3n+2){background-image:linear-gradient(rgba(9,7,3,0.90),rgba(9,7,3,0.94)),url(bg/content3.png)}
/* divider: overlay medio, più presenza, rotazione 3 */
.slide.divider{background-image:linear-gradient(rgba(9,7,3,0.70),rgba(9,7,3,0.82)),url(bg/divider1.png)}
.slide.divider:nth-child(3n){background-image:linear-gradient(rgba(9,7,3,0.70),rgba(9,7,3,0.82)),url(bg/divider2.png)}
.slide.divider:nth-child(3n+2){background-image:linear-gradient(rgba(9,7,3,0.70),rgba(9,7,3,0.82)),url(bg/divider3.png)}
/* cover / thesis / closing: overlay dal basso, più drammatici */
.slide.cover{background-image:linear-gradient(rgba(9,7,3,0.50),rgba(9,7,3,0.88)),url(bg/cover.png)}
.slide.thesis{background-image:linear-gradient(rgba(9,7,3,0.72),rgba(9,7,3,0.86)),url(bg/thesis.png)}
.slide.closing{background-image:linear-gradient(rgba(9,7,3,0.58),rgba(9,7,3,0.86)),url(bg/closing.png)}

/* ===== CTX — immagine contestuale con soggetto a destra, scrim sul lato testo ===== */
/* content/chat: testo a sinistra → scrim forte a sinistra, immagine visibile a destra */
.slide.content.ctx,.slide.chat.ctx{background-image:linear-gradient(90deg,rgba(9,7,3,0.975) 0%,rgba(9,7,3,0.93) 46%,rgba(9,7,3,0.52) 100%),var(--img)}
/* divider / cover / thesis / closing: testo grande → scrim in basso-sinistra, immagine respira in alto-destra */
.slide.divider.ctx,.slide.cover.ctx,.slide.thesis.ctx,.slide.closing.ctx{background-image:linear-gradient(105deg,rgba(9,7,3,0.95) 0%,rgba(9,7,3,0.78) 48%,rgba(9,7,3,0.30) 100%),var(--img)}
/* mappa topic → immagine */
.b-cover{--img:url(bg/ctx-cover.png)}
.b-thesis{--img:url(bg/ctx-thesis.png)}
.b-ruolo{--img:url(bg/ctx-ruolo.png)}
.b-agosto{--img:url(bg/ctx-agosto.png)}
.b-struttura{--img:url(bg/ctx-struttura.png)}
.b-scala{--img:url(bg/ctx-scala.png)}
.b-speaker{--img:url(bg/ctx-speaker.png)}
.b-training{--img:url(bg/ctx-training.png)}
.b-leaders{--img:url(bg/ctx-leaders.png)}
.b-eventi{--img:url(bg/ctx-eventi.png)}
.b-mastermind{--img:url(bg/ctx-mastermind.png)}
.b-calendario{--img:url(bg/ctx-calendario.png)}
.b-chatrank{--img:url(bg/ctx-chatrank.png)}
.b-startup{--img:url(bg/ctx-startup.png)}
.b-branding{--img:url(bg/ctx-branding.png)}
.b-app{--img:url(bg/ctx-app.png)}
.b-closing{--img:url(bg/ctx-closing.png)}
.b-decisioni{--img:url(bg/ctx-decisioni.png)}
.slide.active .anim{animation:rise .6s .06s both cubic-bezier(.2,.7,.2,1)}
@keyframes rise{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}

/* shared type */
.kick{font-family:'Outfit',sans-serif;font-weight:700;font-size:clamp(11px,1.3vw,15px);
  letter-spacing:0.34em;text-transform:uppercase;color:var(--oro);margin-bottom:min(2.4vh,20px)}
.hl{background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.rule{width:64px;height:4px;background:var(--gold);border-radius:4px;margin:min(2vh,16px) 0}

/* COVER */
.cover{justify-content:center}
.cover .tier{align-self:flex-start;font-family:'Outfit',sans-serif;font-weight:800;font-size:clamp(12px,1.3vw,15px);
  letter-spacing:0.1em;text-transform:uppercase;color:#1a1407;background:var(--gold);padding:8px 18px;border-radius:50px;margin-bottom:min(3vh,26px)}
.cover h1{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(52px,10vw,150px);line-height:0.9}
.cover .sub{color:var(--ink-soft);font-size:clamp(16px,2.1vw,26px);margin-top:min(3vh,24px);max-width:26em}

/* THESIS — giant statement */
.thesis{justify-content:center;text-align:left}
.thesis .big{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(40px,7vw,104px);line-height:1.02;max-width:15em}
.thesis .foot{color:var(--ink-dim);font-size:clamp(15px,1.9vw,22px);margin-top:min(3vh,26px);max-width:34em}

/* DIVIDER */
.divider{justify-content:center}
.divider .num{font-family:'Outfit',sans-serif;font-weight:900;font-size:clamp(60px,13vw,190px);line-height:0.8;color:transparent;-webkit-text-stroke:2px var(--oro-scuro);opacity:0.5;margin-bottom:min(1vh,8px)}
.divider h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(42px,8vw,112px);line-height:0.98;max-width:15em}
.divider .lead{color:var(--ink-soft);font-size:clamp(16px,2.1vw,25px);margin-top:min(2.4vh,18px);max-width:28em}

/* CONTENT base */
.content h2,.chat h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(34px,5.6vw,72px);line-height:1.0;margin-bottom:min(3.4vh,28px)}
.content .lead{color:var(--ink-soft);font-size:clamp(16px,2vw,24px);max-width:30em;margin-bottom:min(3vh,22px)}
ul.bul{list-style:none;display:flex;flex-direction:column;gap:min(2.1vh,18px);max-width:26em}
ul.bul li{position:relative;padding-left:32px;font-size:clamp(17px,2.4vw,29px);line-height:1.3;color:var(--ink-soft)}
ul.bul li::before{content:'';position:absolute;left:0;top:0.5em;width:11px;height:11px;border-radius:3px;background:var(--gold)}
ul.bul li b{color:var(--ink);font-weight:600}
ul.bul li small{display:block;font-size:0.66em;color:var(--ink-soft);margin-top:3px;font-weight:500;line-height:1.35}
.tagnew{font-family:'Outfit',sans-serif;font-weight:800;font-size:0.5em;color:#1a1407;background:var(--oro-chiaro);padding:2px 9px;border-radius:50px;margin-left:8px;vertical-align:middle;letter-spacing:0.03em}

/* STATS row (big numbers) */
.stats{display:flex;gap:min(4vw,50px);flex-wrap:wrap;margin-top:min(2vh,14px)}
.stat .n{font-family:'Outfit',sans-serif;font-weight:900;font-size:clamp(40px,7vw,90px);line-height:0.9;background:var(--gold);-webkit-background-clip:text;background-clip:text;color:transparent}
.stat .n small{font-size:0.4em;-webkit-text-fill-color:var(--oro-scuro)}
.stat .l{color:var(--ink-soft);font-size:clamp(14px,1.7vw,20px);margin-top:8px;max-width:12em}

/* LADDER (steps) */
.ladder{display:flex;align-items:flex-end;gap:min(2.2vw,26px);margin-top:min(2vh,16px)}
.step{flex:1;border:1px solid var(--line);border-radius:16px 16px 0 0;padding:min(2.6vh,22px) min(1.6vw,20px);background:linear-gradient(180deg,rgba(204,180,109,0.06),rgba(204,180,109,0.01))}
.step.s1{align-self:flex-end}
.step .rk{font-family:'Outfit',sans-serif;font-weight:900;font-size:clamp(22px,3vw,40px);color:var(--oro-chiaro)}
.step .nm{font-weight:600;color:var(--ink);font-size:clamp(15px,1.8vw,22px);margin:4px 0 8px}
.step .th{color:var(--ink-dim);font-size:clamp(13px,1.5vw,18px);line-height:1.3}
.step.core{border-color:var(--oro);background:linear-gradient(180deg,rgba(248,225,162,0.16),rgba(204,180,109,0.03));box-shadow:0 -8px 40px rgba(204,180,109,0.14)}
.step.core .tag{display:inline-block;font-family:'Outfit',sans-serif;font-weight:800;font-size:11px;letter-spacing:0.05em;text-transform:uppercase;color:#1a1407;background:var(--gold);padding:3px 10px;border-radius:50px;margin-bottom:8px}
.ladder-h{display:flex;flex-direction:column;gap:12px;margin-top:min(2vh,14px);max-width:34em}
.lrow{display:flex;align-items:center;gap:20px;padding:min(2vh,16px) 20px;border:1px solid var(--line);border-radius:14px;background:rgba(204,180,109,0.03)}
.lrow.core{border-color:var(--oro);background:linear-gradient(135deg,rgba(248,225,162,0.14),rgba(204,180,109,0.02))}
.lrow .rk{font-family:'Outfit',sans-serif;font-weight:900;font-size:clamp(22px,3vw,38px);color:var(--oro-chiaro);flex:0 0 2.4em}
.lrow .d b{color:var(--ink)}.lrow .d{color:var(--ink-soft);font-size:clamp(14px,1.8vw,21px)}
.lrow .d small{display:block;color:var(--ink-dim);font-size:0.72em}

/* GRID cards (12 training / argomenti) */
.grid{display:grid;gap:min(1.6vw,16px);margin-top:min(2vh,14px)}
.grid.g4{grid-template-columns:repeat(4,1fr)}
.grid.g3{grid-template-columns:repeat(3,1fr)}
.grid.g2{grid-template-columns:repeat(2,1fr)}
@media(max-width:900px){.grid.g4,.grid.g3{grid-template-columns:repeat(2,1fr)}}
.card{border:1px solid var(--line);border-radius:14px;padding:min(2.4vh,18px) min(1.4vw,16px);background:linear-gradient(180deg,rgba(255,255,255,0.02),transparent)}
.card .ct{font-family:'Outfit',sans-serif;font-weight:800;font-size:clamp(14.5px,1.65vw,20px);color:var(--oro);letter-spacing:0.02em;margin-bottom:9px;display:flex;align-items:center;gap:8px}
.card .ct .cn{font-size:0.85em;color:var(--oro-scuro)}
.card ol,.card ul{list-style:none;display:flex;flex-direction:column;gap:5px}
.card li{font-size:clamp(14px,1.6vw,19.5px);color:var(--ink-soft);line-height:1.28;padding-left:16px;position:relative}
.card li::before{content:'';position:absolute;left:0;top:0.55em;width:5px;height:5px;border-radius:50%;background:var(--oro-scuro)}
.card li b{color:var(--ink);font-weight:600}

/* CALENDAR weekly */
.cal{display:flex;flex-direction:column;gap:8px;margin-top:min(2vh,14px);max-width:40em}
.cal .day{display:grid;grid-template-columns:5.5em 1fr;gap:16px;align-items:center;padding:min(1.7vh,13px) 16px;border:1px solid var(--line-soft);border-radius:12px;background:rgba(204,180,109,0.025)}
.cal .day.hot{border-color:var(--oro);background:linear-gradient(135deg,rgba(248,225,162,0.10),transparent)}
.cal .dn{font-family:'Outfit',sans-serif;font-weight:800;font-size:clamp(12px,1.4vw,16px);color:var(--oro);letter-spacing:0.06em;text-transform:uppercase}
.cal .slots{display:flex;gap:8px;flex-wrap:wrap}
.chip{font-size:clamp(12px,1.4vw,16px);color:var(--ink-soft);border:1px solid var(--line);border-radius:50px;padding:5px 13px;white-space:nowrap}
.chip b{color:var(--ink);font-weight:600}
.chip.gold{background:var(--gold);color:#1a1407;border:none;font-weight:700}
.chip.dim{color:var(--ink-dim);border-color:var(--line-soft)}

/* TIMELINE horizontal */
.tl{display:flex;gap:0;margin-top:min(3vh,26px);align-items:stretch}
.tl .node{flex:1;position:relative;padding-top:34px;text-align:left}
.tl .node::before{content:'';position:absolute;top:14px;left:0;right:0;height:2px;background:var(--line)}
.tl .node:first-child::before{left:50%}
.tl .node:last-child::before{right:50%}
.tl .dot{position:absolute;top:7px;left:calc(50% - 8px);width:16px;height:16px;border-radius:50%;background:var(--gold);box-shadow:0 0 0 5px rgba(204,180,109,0.14)}
.tl .node.big .dot{width:22px;height:22px;top:4px;left:calc(50% - 11px)}
.tl .dt{font-family:'Outfit',sans-serif;font-weight:800;font-size:clamp(13px,1.6vw,20px);color:var(--oro-chiaro);text-align:center}
.tl .lb{color:var(--ink-soft);font-size:clamp(12px,1.5vw,18px);margin-top:4px;text-align:center;line-height:1.25;padding:0 6px}
.tl .lb b{color:var(--ink)}

/* two-col */
.split{display:grid;grid-template-columns:1fr 1fr;gap:min(5vw,60px);align-items:center}
@media(max-width:860px){.split{grid-template-columns:1fr}}

/* highlight card */
.hcard{margin-top:min(2.6vh,20px);background:linear-gradient(135deg,rgba(248,225,162,0.12),rgba(204,180,109,0.04));
  border:1px solid rgba(204,180,109,0.3);border-left:4px solid var(--oro);border-radius:16px;padding:min(2.6vh,22px) min(2.4vw,26px);max-width:26em}
.hcard .big{font-family:'Outfit',sans-serif;font-weight:800;font-size:clamp(18px,2.3vw,28px);color:var(--ink)}
.hcard p{color:var(--ink-soft);font-size:clamp(15.5px,1.8vw,22px);margin-top:6px}

/* CHAT & RANK */
.crow{display:flex;align-items:center;gap:min(3vw,28px);padding:min(2.4vh,22px) min(1.6vw,18px);border-bottom:1px solid var(--line-soft);max-width:30em}
.crow .rk{font-family:'Outfit',sans-serif;font-weight:900;font-size:clamp(26px,3.4vw,44px);color:var(--oro-chiaro);flex:0 0 2.4em}
.crow .rd{font-size:clamp(15px,2vw,25px);color:var(--ink-soft)}.crow .rd b{color:var(--ink);font-weight:600}
.crow.kill .rk,.crow.kill .rd{color:var(--kill)}.crow.kill .rd b{color:#eab8aa}
.chat .note,.content .note{margin-top:min(2.6vh,20px);color:var(--ink-dim);font-size:clamp(15.5px,1.85vw,22.5px);max-width:34em;font-style:italic}
.content .note b{font-style:normal}

/* CLOSING */
.closing{justify-content:center}
.closing .q{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(40px,7vw,104px);line-height:1.0;max-width:15em}
.closing .ask{margin-top:min(3.4vh,28px);display:inline-flex;align-items:center;gap:16px;background:var(--panel);border:1px solid var(--oro-scuro);border-radius:14px;padding:min(2.4vh,20px) min(3vw,28px);max-width:30em}
.closing .ask .lab{font-family:'Outfit',sans-serif;font-weight:800;font-size:clamp(11px,1.3vw,14px);letter-spacing:0.12em;text-transform:uppercase;color:var(--oro);flex:0 0 auto}
.closing .ask .t{font-size:clamp(15px,1.9vw,22px);color:var(--ink)}.closing .ask .t b{color:var(--oro-chiaro)}

/* CHROME */
.bar{position:fixed;left:0;bottom:0;height:4px;background:var(--gold);width:0;transition:width .4s ease;z-index:10}
.count{position:fixed;right:22px;bottom:16px;font-family:'Outfit',sans-serif;font-weight:700;font-size:13px;color:var(--ink-dim);z-index:10}
.count b{color:var(--oro)}
.brandmark{position:fixed;left:24px;bottom:14px;font-family:'Outfit',sans-serif;font-weight:700;font-size:11px;letter-spacing:0.24em;text-transform:uppercase;color:var(--ink-dim);z-index:10}
.hint{position:fixed;top:16px;left:50%;transform:translateX(-50%);font-size:11px;color:var(--ink-dim);z-index:10;letter-spacing:0.06em;opacity:0.7;transition:opacity .4s}
.hint.hide{opacity:0}
.nav{position:fixed;inset:0;display:flex;z-index:5}
.nav .z{flex:1;cursor:pointer}.nav .z.prev{flex:0 0 26%}

.b-farfalla{--img:url(bg/ctx-farfalla.png)}
.b-specchio{--img:url(bg/ctx-specchio.png)}
.b-anelli{--img:url(bg/ctx-anelli.png)}
.b-colonne{--img:url(bg/ctx-colonne.png)}
.b-boost{--img:url(bg/ctx-boost.png)}
.b-cucina{--img:url(bg/ctx-cucina.png)}
.b-scarpe{--img:url(bg/ctx-scarpe.png)}
.b-penna2{--img:url(bg/ctx-penna2.png)}
.b-metro{--img:url(bg/ctx-metro.png)}
.b-sarto{--img:url(bg/ctx-sarto.png)}
.b-costellazione2{--img:url(bg/ctx-costellazione2.png)}
.b-corona{--img:url(bg/ctx-corona.png)}
.b-stella{--img:url(bg/ctx-stella.png)}
.b-vetta{--img:url(bg/ctx-vetta.png)}
.b-aquila{--img:url(bg/ctx-aquila.png)}

/* ===== SLIDE APERTURA STANDARD STAR (percorso + agenda) ===== */
.slide.percorso{padding:5vh 5vw;justify-content:center;align-items:center;text-align:center}
.pTitle{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:3.4rem;color:#f6efdf;line-height:1.05}
.pTitle .hl{background:linear-gradient(120deg,#b8902f,#e6c45c 45%,#f8e1a2);-webkit-background-clip:text;background-clip:text;color:transparent}
.pSub{margin-top:.6rem;font-size:1.15rem;color:#b8ad92;font-weight:600;letter-spacing:.02em}
.pGrid{margin-top:3rem;display:grid;grid-template-columns:repeat(6,1fr);gap:.9rem;width:100%;max-width:74rem}
.pCard{position:relative;border-radius:.9rem;overflow:hidden;border:1px solid rgba(204,180,109,.22);aspect-ratio:1/1;opacity:.42;filter:grayscale(.3) brightness(.7);transition:none}
.pCard img{width:100%;height:100%;object-fit:cover;display:block}
.pCard .pn{position:absolute;top:.35rem;left:.45rem;font-family:'Cormorant Garamond',serif;font-weight:700;font-size:1.15rem;color:#e8dcbb;z-index:2;text-shadow:0 1px 4px #000}
.pCard .pl{position:absolute;left:0;right:0;bottom:0;padding:.5rem .5rem .45rem;z-index:2;font-family:'Outfit',sans-serif;font-weight:800;font-size:.72rem;line-height:1.15;color:#fff;background:linear-gradient(to top,rgba(10,8,4,.94),transparent);text-shadow:0 1px 3px #000}
.pCard.on{opacity:1;filter:none;border:2px solid #e6c45c;box-shadow:0 0 0 4px rgba(230,196,92,.18),0 1.2rem 2.4rem rgba(0,0,0,.6);transform:scale(1.06);z-index:3}
.pCard.on .pl{font-size:.82rem;background:linear-gradient(to top,rgba(20,15,4,.97),rgba(20,15,4,.2) 70%,transparent)}
.pBadge{position:absolute;top:-.95rem;left:50%;transform:translateX(-50%);z-index:4;background:linear-gradient(120deg,#a8894a,#e6c45c);color:#161006;font-family:'Outfit',sans-serif;font-weight:800;font-size:.6rem;letter-spacing:.08em;padding:.2rem .6rem;border-radius:999px;white-space:nowrap;text-transform:uppercase}
.pFoot{margin-top:2rem;font-family:'Cormorant Garamond',serif;font-size:1.5rem;font-weight:700;color:#f6efdf}
.pFoot .hl{color:#e6c45c}
/* agenda */
.slide.agenda{padding:6vh 7vw;justify-content:center}
.agenda h2{font-family:'Cormorant Garamond',serif;font-weight:600;font-size:3.2rem;color:#f6efdf;margin-bottom:.4rem}
.agenda h2 .hl{background:linear-gradient(120deg,#b8902f,#e6c45c 45%,#f8e1a2);-webkit-background-clip:text;background-clip:text;color:transparent}
.agenda .asub{font-size:1.1rem;color:#b8ad92;margin-bottom:2rem;font-weight:600}
.aList{display:flex;flex-direction:column;gap:.85rem;max-width:60rem}
.aItem{display:flex;align-items:center;gap:1.1rem;background:rgba(24,22,18,.8);border:1px solid rgba(204,180,109,.26);border-radius:1rem;padding:1rem 1.4rem}
.aItem .ae{font-size:1.9rem;flex:0 0 auto}
.aItem .at{font-family:'Outfit',sans-serif;font-weight:800;font-size:1.35rem;color:#fff}
.aItem .ad{font-size:1rem;color:#9a917c;font-weight:500;margin-top:.1rem}
.b-regalo{--img:url(bg/ctx-regalo.png)}
.b-diamante{--img:url(bg/ctx-diamante.png)}
.b-forbici{--img:url(bg/ctx-forbici.png)}
.b-anelli2{--img:url(bg/ctx-anelli2.png)}
.b-rosa{--img:url(bg/ctx-rosa.png)}

.b-libro{--img:url(bg/ctx-libro.png)}
.b-cuore{--img:url(bg/ctx-cuore.png)}
.b-sentiero{--img:url(bg/ctx-sentiero.png)}
.b-maschera{--img:url(bg/ctx-maschera.png)}
.b-nuvola{--img:url(bg/ctx-nuvola.png)}
.b-stellacadente{--img:url(bg/ctx-stellacadente.png)}
.b-farfalla2{--img:url(bg/ctx-farfalla2.png)}
.b-manotesa{--img:url(bg/ctx-manotesa.png)}
.b-imperfetto{--img:url(bg/ctx-imperfetto.png)}
.b-clessidra2{--img:url(bg/ctx-clessidra2.png)}
.b-prisma{--img:url(bg/ctx-prisma.png)}
.b-scudo{--img:url(bg/ctx-scudo.png)}
.b-specchio2{--img:url(bg/ctx-specchio2.png)}
.b-megafono{--img:url(bg/ctx-megafono.png)}

/* --- Training 5 · Chatting & F.O.R. --- */
.b-chatbolle{--img:url(bg/ctx-chatbolle.png)}
.b-personaschermo{--img:url(bg/ctx-personaschermo.png)}
.b-rete{--img:url(bg/ctx-rete.png)}
.b-ponte{--img:url(bg/ctx-ponte.png)}
.b-flusso{--img:url(bg/ctx-flusso.png)}
.b-forchiave{--img:url(bg/ctx-forchiave.png)}
.b-famiglia{--img:url(bg/ctx-famiglia.png)}
.b-lavoro{--img:url(bg/ctx-lavoro.png)}
.b-viaggio{--img:url(bg/ctx-viaggio.png)}
.b-orecchio{--img:url(bg/ctx-orecchio.png)}
.b-stop{--img:url(bg/ctx-stop.png)}
.b-bussola{--img:url(bg/ctx-bussola.png)}
.b-traguardo{--img:url(bg/ctx-traguardo.png)}
.b-parola{--img:url(bg/ctx-parola.png)}
.b-alba{--img:url(bg/ctx-alba.png)}

/* --- Training 3 · Le basi dei social media --- */
.b-vetrina{--img:url(bg/ctx-vetrina.png)}
.b-riflettore{--img:url(bg/ctx-riflettore.png)}
.b-continuita{--img:url(bg/ctx-continuita.png)}
.b-quattrosocial{--img:url(bg/ctx-quattrosocial.png)}
.b-scelta{--img:url(bg/ctx-scelta.png)}
.b-profilo{--img:url(bg/ctx-profilo.png)}
.b-ritratto{--img:url(bg/ctx-ritratto.png)}
.b-contenuti{--img:url(bg/ctx-contenuti.png)}
.b-eco{--img:url(bg/ctx-eco.png)}
.b-settimana{--img:url(bg/ctx-settimana.png)}
.b-costanza{--img:url(bg/ctx-costanza.png)}
.b-partenza{--img:url(bg/ctx-partenza.png)}

/* --- Training 4 · Avvia Conversazioni --- */
.b-scintilla{--img:url(bg/ctx-scintilla.png)}
.b-incontro{--img:url(bg/ctx-incontro.png)}
.b-flusso2{--img:url(bg/ctx-flusso2.png)}
.b-interonline{--img:url(bg/ctx-interonline.png)}
.b-piazza{--img:url(bg/ctx-piazza.png)}
.b-sedie{--img:url(bg/ctx-sedie.png)}
.b-chiaveporta{--img:url(bg/ctx-chiaveporta.png)}
.b-ghiaccio{--img:url(bg/ctx-ghiaccio.png)}
.b-lente{--img:url(bg/ctx-lente.png)}
.b-scala2{--img:url(bg/ctx-scala2.png)}
.b-mira{--img:url(bg/ctx-mira.png)}
.b-cuore2{--img:url(bg/ctx-cuore2.png)}
.b-via{--img:url(bg/ctx-via.png)}

/* --- Training 8 · Gestione obiezioni (soggetti nuovi, mai riciclati) --- */
.b-domandaluce{--img:url(bg/ctx-domandaluce.png)}
.b-tesoro{--img:url(bg/ctx-tesoro.png)}
.b-nebbia{--img:url(bg/ctx-nebbia.png)}
.b-semaforo{--img:url(bg/ctx-semaforo.png)}
.b-sveglia{--img:url(bg/ctx-sveglia.png)}
.b-bottiglia{--img:url(bg/ctx-bottiglia.png)}
.b-mappa2{--img:url(bg/ctx-mappa2.png)}
.b-bivio{--img:url(bg/ctx-bivio.png)}
.b-medaglia{--img:url(bg/ctx-medaglia.png)}
.b-caduceo{--img:url(bg/ctx-caduceo.png)}
.b-boomerang{--img:url(bg/ctx-boomerang.png)}
.b-quaderno{--img:url(bg/ctx-quaderno.png)}

/* --- Training 9 · Set + Edificazione + 3-Way Call (soggetti nuovi) --- */
.b-squadra{--img:url(bg/ctx-squadra.png)}
.b-mantello{--img:url(bg/ctx-mantello.png)}
.b-vetro{--img:url(bg/ctx-vetro.png)}
.b-imbuto{--img:url(bg/ctx-imbuto.png)}
.b-faro{--img:url(bg/ctx-faro.png)}
.b-piedistallo{--img:url(bg/ctx-piedistallo.png)}
.b-sigillo{--img:url(bg/ctx-sigillo.png)}
.b-collegamento{--img:url(bg/ctx-collegamento.png)}
.b-torcia{--img:url(bg/ctx-torcia.png)}
.b-passaggio{--img:url(bg/ctx-passaggio.png)}
.b-vela{--img:url(bg/ctx-vela.png)}

/* --- Training 10 · Vendita & Retention (soggetti nuovi) --- */
.b-fioritura{--img:url(bg/ctx-fioritura.png)}
.b-soluzione{--img:url(bg/ctx-soluzione.png)}
.b-cuoremani{--img:url(bg/ctx-cuoremani.png)}
.b-viottolo{--img:url(bg/ctx-viottolo.png)}
.b-cucito{--img:url(bg/ctx-cucito.png)}
.b-lavagna{--img:url(bg/ctx-lavagna.png)}
.b-radici{--img:url(bg/ctx-radici.png)}
.b-tempio{--img:url(bg/ctx-tempio.png)}
.b-legame{--img:url(bg/ctx-legame.png)}
.b-vocale{--img:url(bg/ctx-vocale.png)}

/* --- slide "ariosa": testo un po' più grande dove c'è poco contenuto (richiesta Gian 21/7) --- */
/* delicato: non deve far sforare la slide. Da usare su griglie con testo piccolo e closing. */
.slide.roomy ul.bul{gap:min(2.3vh,20px)}
.slide.roomy ul.bul li{font-size:clamp(18px,2.4vw,30px)}
.slide.roomy .lead{font-size:clamp(19px,2.4vw,31px);max-width:34em}
.slide.roomy .note{font-size:clamp(15px,1.9vw,23px)}
.slide.roomy .hcard .big{font-size:clamp(24px,3.2vw,44px)}
.slide.roomy .hcard p{font-size:clamp(15px,1.9vw,23px)}
.slide.roomy .card li{font-size:clamp(14.5px,1.7vw,21px)}
.slide.roomy .card .ct{font-size:clamp(15px,1.8vw,22px)}

/* ===== MOBILE (telefono verticale) — testi leggibili, griglie impilate, overlay uniforme (fix 22/7) ===== */
@media (max-width:600px){
  .slide{padding:5.5vh 6vw;justify-content:flex-start;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch}
  .slide.cover,.slide.thesis,.slide.divider,.slide.closing{justify-content:center}
  /* overlay uniforme scuro: il testo resta leggibile ovunque, anche sopra l'immagine */
  .slide.content.ctx,.slide.chat.ctx{background-image:linear-gradient(rgba(9,7,3,0.92),rgba(9,7,3,0.95)),var(--img)}
  .slide.divider.ctx,.slide.cover.ctx,.slide.thesis.ctx,.slide.closing.ctx{background-image:linear-gradient(rgba(9,7,3,0.82),rgba(9,7,3,0.90)),var(--img)}
  /* titoli */
  .cover h1{font-size:clamp(38px,11vw,54px)}
  .cover .sub{font-size:18px;max-width:100%}
  .thesis .big{font-size:clamp(30px,8.5vw,42px);max-width:100%}
  .thesis .foot{font-size:16.5px;max-width:100%}
  .divider .num{font-size:66px}
  .divider h2{font-size:clamp(32px,9vw,46px)}
  .divider .lead{font-size:17.5px;max-width:100%}
  .content h2,.chat h2{font-size:clamp(27px,7.5vw,36px);margin-bottom:16px}
  .content .lead{font-size:17.5px;max-width:100%}
  /* bullet */
  ul.bul{max-width:100%;gap:14px}
  ul.bul li{font-size:18.5px;padding-left:26px}
  ul.bul li small{font-size:14.5px}
  /* griglie → 1 colonna, card grandi e leggibili — minmax(0,1fr) evita lo sforo laterale */
  .grid.g4,.grid.g3,.grid.g2{grid-template-columns:minmax(0,1fr);gap:11px}
  .card{padding:14px 16px;min-width:0;overflow-wrap:break-word}
  .card .ct{font-size:16.5px}
  .card li{font-size:16px;overflow-wrap:break-word}
  .note,.chat .note,.content .note{font-size:15.5px;max-width:100%}
  /* i figli delle slide non devono mai sforare in larghezza */
  .slide.content>*,.slide.chat>*{min-width:0;max-width:100%}
  .content h2,.chat h2,.content .lead,ul.bul li{overflow-wrap:break-word}
  /* split → colonna singola, hcard piena */
  .split{grid-template-columns:minmax(0,1fr);gap:16px}
  .hcard .big{font-size:21px}
  .hcard p{font-size:16px}
  /* roomy: su mobile il testo è già ingrandito, non sommare */
  .slide.roomy ul.bul li{font-size:18.5px}
  .slide.roomy .card li{font-size:16px}
  .slide.roomy .card .ct{font-size:16.5px}
  .slide.roomy .lead{font-size:17.5px}
  /* apertura · percorso: 3 colonne invece di 6 (titolo va a capo, niente sforo laterale) */
  .slide.percorso{padding:3.5vh 4vw;overflow-x:hidden}
  .pTitle{font-size:1.4rem;line-height:1.15}
  .pSub{font-size:.72rem;line-height:1.3;max-width:100%}
  .pGrid{grid-template-columns:repeat(3,1fr);gap:.5rem;margin-top:1.1rem;max-width:100%}
  .pCard .pl{font-size:.56rem;padding:.35rem .3rem .3rem}
  .pCard.on .pl{font-size:.58rem}
  .pBadge{font-size:.46rem;top:-.6rem;padding:.14rem .4rem}
  .pFoot{font-size:.95rem;margin-top:1.1rem;line-height:1.25}
  /* apertura · agenda */
  .slide.agenda{padding:5vh 6vw;justify-content:flex-start}
  .agenda h2{font-size:2rem}
  .agenda .asub{font-size:.88rem;margin-bottom:1.1rem}
  .aList{gap:.55rem}
  .aItem{padding:.7rem .9rem;gap:.7rem}
  .aItem .ae{font-size:1.4rem}
  .aItem .at{font-size:1.02rem}
  .aItem .ad{font-size:.82rem}
  /* chrome discreto */
  .brandmark,.hint{display:none}
  .count{bottom:10px;right:12px}
}

/* ===== MOBILE — rete di sicurezza anti-sforo laterale (fix 22/7) ===== */
@media (max-width:600px){
  html,body,.deck{overflow-x:hidden;max-width:100%}
  .slide{overflow-x:hidden}
  .slide>*{min-width:0;max-width:100%}
  ul.bul,.grid,.split,.hcard,.card,.chat,.content h2,.content .lead,.note{max-width:100%;min-width:0}
  .card li,ul.bul li,.card .ct,.content h2,.chat h2,.hcard p,.hcard .big,.note,.content .lead{overflow-wrap:anywhere;word-break:break-word}
}
