:root { --bg:#070606; --pannello:#130e0f; --pannello2:#1b1315; --testo:#f6f2f2; --tenue:#b8adad; --rosso:#e8172e; --rosso2:#ff6b7d; --bordo:#3a1a1e; --f:"Montserrat",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif; --corsivo:"Dancing Script","Brush Script MT",cursive; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { overflow-x:clip; margin:0; background:var(--bg); color:var(--testo); font:400 1rem/1.6 var(--f); -webkit-text-size-adjust:100%; }
img { max-width:100%; height:auto; display:block; }
a { color:var(--rosso2); } a:hover { color:#fff; }
:focus-visible { outline:3px solid #fff; outline-offset:3px; border-radius:6px; }
.solo-sr { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
.salta { position:absolute; left:8px; top:-60px; background:#fff; color:#000; padding:10px 16px; z-index:100; border-radius:6px; } .salta:focus { top:8px; }
main, .pie { width:min(1240px,100% - 32px); margin-inline:auto; }

/* intestazione */
.testata { position:absolute; top:0; left:0; right:0; z-index:30; display:flex; align-items:center; gap:24px; padding:10px clamp(16px,3vw,40px); }
.marchio img { width:96px; height:96px; object-fit:contain; filter:drop-shadow(0 0 12px rgba(232,23,46,.5)); }
.testata nav { flex:1; }
.testata ul { display:flex; flex-wrap:wrap; gap:2px 6px; list-style:none; margin:0; padding:0; }
.testata nav ul { justify-content:center; }
.testata nav a { display:block; padding:10px 14px; min-height:44px; color:#fff; text-decoration:none; font:600 .95rem var(--f); border-bottom:3px solid transparent; }
.testata nav a:hover, .testata nav a[aria-current] { border-bottom-color:var(--rosso); }
.social { gap:10px !important; }
.social a { display:grid; place-items:center; width:46px; height:46px; border-radius:50%; border:2px solid rgba(255,255,255,.55); background:rgba(0,0,0,.35); }
.social a:hover { border-color:var(--rosso); background:rgba(232,23,46,.25); }

/* eroe: atmosfera da studio, luci rosse e insegna ON AIR */
.eroe { --bass:0; position:relative; min-height:440px; height:min(64svh,540px); overflow:hidden; padding:120px clamp(16px,4vw,56px) 0; background:radial-gradient(60% 90% at 78% 30%, rgba(232,23,46,.28), transparent 65%), radial-gradient(40% 60% at 12% 80%, rgba(255,140,60,.16), transparent 70%), linear-gradient(180deg,#0d0708,#070606); }
.eroe::before { content:""; position:absolute; inset:0; background:
  radial-gradient(circle at 70% 25%, rgba(255,120,60,.55) 0 22px, transparent 24px),
  radial-gradient(circle at 84% 62%, rgba(255,60,80,.45) 0 34px, transparent 36px),
  radial-gradient(circle at 58% 70%, rgba(255,180,90,.4) 0 18px, transparent 20px),
  radial-gradient(circle at 92% 20%, rgba(255,70,70,.4) 0 40px, transparent 42px),
  radial-gradient(circle at 46% 22%, rgba(255,150,80,.35) 0 14px, transparent 16px);
  filter:blur(9px); opacity:.85; }
#viz { position:absolute; inset:0; width:100%; height:100%; z-index:1; }
.insegna { flex:none; align-self:flex-start; margin-top:-18px; padding:6px 22px; border:3px solid #ff2d45; border-radius:10px; transform:rotate(3deg); background:rgba(40,0,6,.55); box-shadow:0 0 18px rgba(255,45,69,.55), inset 0 0 14px rgba(255,45,69,.4); }
.insegna span { font:900 clamp(1.5rem,3.6vw,2.6rem)/1.1 var(--f); letter-spacing:.06em; color:#ff5468; text-shadow:0 0 10px #ff2d45, 0 0 26px #ff2d45; }
.rb-playing .insegna { animation:insegna 2.4s ease-in-out infinite; box-shadow:0 0 34px rgba(255,45,69,.95), inset 0 0 20px rgba(255,45,69,.6); }
@keyframes insegna { 0%,100% { opacity:1 } 46% { opacity:1 } 48% { opacity:.55 } 50% { opacity:1 } 52% { opacity:.7 } 54% { opacity:1 } }
.eroe-in { position:relative; z-index:3; max-width:1240px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:32px; }
.eroe-testo { flex:1; min-width:0; }
.tag { display:flex; align-items:center; gap:10px; margin:0 0 6px; font:800 clamp(1.05rem,2.2vw,1.5rem) var(--f); text-transform:uppercase; color:var(--rosso); }
.punto { width:14px; height:14px; border-radius:50%; background:var(--rosso); box-shadow:0 0 12px var(--rosso); flex:none; }
.rb-playing .punto { animation:batte 1s ease-in-out infinite; }
@keyframes batte { 50% { transform:scale(1.5) } }
.brano { margin:0; font:900 clamp(2rem,5.6vw,4.2rem)/1.04 var(--f); text-transform:uppercase; overflow-wrap:anywhere; text-shadow:0 4px 30px rgba(0,0,0,.7); }
.sub { margin:12px 0 26px; color:#e6dddd; font-size:1.05rem; } .sub strong { color:#fff; }
.comandi { display:flex; align-items:center; gap:22px; flex-wrap:wrap; }
.ascolta { display:inline-flex; align-items:center; gap:12px; min-height:60px; padding:14px 34px; border:0; border-radius:999px; background:var(--rosso); color:#fff; font:800 1.1rem var(--f); text-transform:uppercase; letter-spacing:.02em; cursor:pointer; box-shadow:0 0 calc(18px + var(--bass) * 40px) rgba(232,23,46,.7); transform:scale(calc(1 + var(--bass) * .04)); }
.ascolta:hover { background:#ff2a44; }
.ascolta[aria-pressed="true"] { background:#fff; color:#b00b1f; }
.vol { display:flex; align-items:center; gap:10px; color:#fff; } .vol input { width:140px; accent-color:var(--rosso); }
.copertina { flex:none; }
.copertina img { width:clamp(190px,24vw,300px); aspect-ratio:1; object-fit:cover; border-radius:16px; border:2px solid rgba(255,255,255,.18); box-shadow:0 0 calc(24px + var(--bass) * 60px) rgba(232,23,46,.6), 0 20px 60px rgba(0,0,0,.6); background:#000; transform:scale(calc(1 + var(--bass) * .05)); }

/* tre schede */
.schede3 { display:grid; gap:16px; grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); margin-top:28px; }
.card { position:relative; display:flex; flex-direction:column; border-radius:14px; overflow:hidden; background:var(--pannello); border:1px solid var(--bordo); transition:border-color .25s, transform .25s; }
.card:hover { border-color:var(--rosso); transform:translateY(-3px); }
.card > img { width:100%; height:150px; object-fit:cover; background:#000; }
.card .corpo { padding:16px 64px 20px 20px; }
.card h2 { margin:0 0 4px; font:800 1.15rem var(--f); text-transform:uppercase; }
.card h2 a { color:#fff; text-decoration:none; } .card h2 a::after { content:""; position:absolute; inset:0; }
.card p { margin:0; color:var(--tenue); font-size:.95rem; }
.freccia { position:absolute; right:16px; bottom:18px; display:grid; place-items:center; width:40px; height:40px; border-radius:50%; background:var(--rosso); color:#fff; font-size:1.2rem; }

/* blocchi */
.blocco { padding-top:52px; }
.testa { display:flex; align-items:flex-end; justify-content:space-between; gap:14px; margin-bottom:20px; flex-wrap:wrap; }
.titolo { margin:0; font:800 clamp(1.3rem,3vw,1.8rem) var(--f); text-transform:uppercase; }
.ico { color:var(--rosso); margin-right:6px; }
.sotto { margin:4px 0 0; color:var(--tenue); }
.vedi { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:8px 20px; border:2px solid var(--rosso); border-radius:999px; color:#fff; text-decoration:none; font:700 .85rem var(--f); text-transform:uppercase; }
.vedi:hover { background:var(--rosso); color:#fff; }

.dediche { list-style:none; margin:0; padding:0; display:grid; gap:14px; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); }
.dediche li { padding:22px; border-radius:14px; background:linear-gradient(160deg,var(--pannello2),var(--pannello)); border:1px solid var(--bordo); border-left:4px solid var(--rosso); }
blockquote { margin:0; } blockquote p { margin:0 0 12px; font-size:1.05rem; } blockquote footer { color:var(--tenue); font-size:.88rem; }

.carosello { position:relative; }
.produzioni { display:flex; gap:16px; list-style:none; margin:0; padding:2px 2px 16px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:var(--rosso) transparent; }
.prod { flex:none; width:clamp(170px,22vw,220px); scroll-snap-align:start; padding:10px; border-radius:12px; background:var(--pannello); border:1px solid var(--bordo); }
.prod-img { position:relative; }
.prod-img img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:8px; background:#000; }
.anteprima { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:52px; height:52px; border-radius:50%; border:2px solid #fff; background:rgba(0,0,0,.6); color:#fff; font-size:1.1rem; cursor:pointer; }
.anteprima:hover, .anteprima[aria-pressed="true"] { background:var(--rosso); border-color:var(--rosso); }
.prod h3 { margin:10px 0 2px; font:800 .95rem/1.25 var(--f); text-transform:uppercase; }
.prod p { margin:0; color:var(--tenue); font-size:.85rem; }
.scorri-btn { position:absolute; top:38%; left:-14px; z-index:5; width:44px; height:44px; border-radius:50%; border:2px solid rgba(255,255,255,.7); background:rgba(0,0,0,.75); color:#fff; font-size:1.6rem; line-height:1; cursor:pointer; }
.scorri-btn.dx { left:auto; right:-14px; } .scorri-btn:hover { background:var(--rosso); border-color:var(--rosso); }

.mondo { display:grid; gap:16px; grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); }
.mcard { display:flex; align-items:center; gap:18px; padding:20px; border-radius:14px; background:var(--pannello); border:1px solid var(--bordo); }
.mcard h3 { margin:0 0 4px; font:800 1.05rem var(--f); text-transform:uppercase; } .mcard p { margin:0 0 12px; color:var(--tenue); font-size:.92rem; }
.icona-tel { width:80px; height:80px; flex:none; object-fit:contain; border-radius:16px; }
.ico-tondo { display:grid; place-items:center; width:80px; height:80px; flex:none; border-radius:16px; background:#fff; color:var(--rosso); font-size:2rem; }
.btn { display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:8px 20px; border-radius:999px; background:var(--rosso); color:#fff; text-decoration:none; font:800 .82rem var(--f); text-transform:uppercase; }
.btn:hover { background:#fff; color:#b00b1f; }

.motto { margin:56px calc(50% - 50vw) 0; padding:70px 16px; text-align:center; background:linear-gradient(180deg,rgba(7,6,6,.2),rgba(7,6,6,.85)), linear-gradient(180deg,#3a0f18 0%, #b3311f 45%, #f08a3c 70%, #2a0c10 100%); }
.motto p { margin:0; font:600 clamp(1.8rem,5vw,3.4rem)/1.3 var(--corsivo); color:#fff; text-shadow:0 4px 24px rgba(0,0,0,.6); }
.motto span { display:inline-block; margin:0 .3em; }

.pie { display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; margin-top:0; padding:30px 0 120px; color:var(--tenue); font-size:.9rem; }
.pie img { width:72px; height:72px; object-fit:contain; }
.pie ul { display:flex; flex-wrap:wrap; gap:4px 18px; list-style:none; margin:0; padding:0; } .pie a { display:block; padding:10px 2px; color:#ddd; text-decoration:none; } .pie a:hover { color:#fff; }
.pie p { margin:0; }

/* barra in basso */
.barra { position:fixed; left:0; right:0; bottom:0; z-index:60; display:flex; align-items:center; gap:14px; padding:10px clamp(12px,3vw,32px) calc(10px + env(safe-area-inset-bottom)); background:rgba(19,14,15,.95); backdrop-filter:blur(14px); border-top:2px solid var(--rosso); transform:translateY(110%); transition:transform .35s; }
.barra-visibile .barra { transform:none; }
.b-cover { width:48px; height:48px; border-radius:8px; object-fit:cover; flex:none; background:#000; }
.b-testo { flex:1; min-width:0; } .b-testo p { margin:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.b-tit { font:800 .95rem var(--f); text-transform:uppercase; } .b-lab { font-size:.75rem; color:var(--rosso2); font-weight:700; text-transform:uppercase; }
.b-play { flex:none; width:54px; height:54px; border:0; border-radius:50%; background:var(--rosso); color:#fff; font-size:1.25rem; cursor:pointer; box-shadow:0 0 22px rgba(232,23,46,.6); }
.b-play[aria-pressed="true"] { background:#fff; color:var(--rosso); }

@media (max-width:1000px) { .testata .social { display:none; } .testata { gap:12px; } }
@media (max-width:800px) {
  .testata { flex-wrap:wrap; padding:8px 12px; } .marchio img { width:72px; height:72px; }
  .testata nav { flex:1 1 100%; order:3; } .testata nav ul { flex-wrap:nowrap; overflow-x:auto; justify-content:flex-start; scrollbar-width:none; } .testata nav a { white-space:nowrap; padding:10px 12px; }
  .eroe { height:auto; min-height:0; padding:150px 16px 130px; } .eroe-in { flex-direction:column-reverse; align-items:stretch; text-align:left; gap:20px; }
  .copertina img { width:min(240px,62vw); } .insegna { top:96px; right:12px; }
  .scorri-btn { display:none; } .pie { padding-bottom:120px; }
}
@media (prefers-reduced-motion:reduce) { html{scroll-behavior:auto} .rb-playing .insegna, .rb-playing .punto { animation:none } .card, .barra { transition:none } .ascolta, .copertina img { transform:none } }
@media (max-width:1100px) and (min-width:801px) { .insegna { display:none; } .testata nav a { padding:10px 9px; font-size:.86rem; } }
@media (max-width:800px) { .insegna { position:absolute; top:92px; right:12px; margin:0; } .eroe-in { flex-wrap:nowrap; } }

/* --- v5b: blocco in alto piu' piccolo e pulito --- */
.eroe { height:auto; min-height:0; padding:98px clamp(16px,4vw,56px) 28px; background:linear-gradient(180deg,#0e0808,#070606); }
.eroe::before { display:none; }
.marchio img { width:72px; height:72px; }
.eroe-in { gap:24px; }
.tag { font-size:.92rem; margin-bottom:4px; }
.brano { font-size:clamp(1.5rem,3.3vw,2.3rem); }
.sub { margin:8px 0 16px; font-size:.95rem; }
.comandi { gap:16px; }
.ascolta { min-height:46px; padding:10px 24px; font-size:.95rem; box-shadow:none; transform:none; }
.vol input { width:110px; }
.copertina img { width:clamp(104px,12vw,140px); border-radius:12px; box-shadow:none; transform:none; }
.insegna { align-self:center; margin-top:0; padding:4px 16px; }
.insegna span { font-size:clamp(1.15rem,2.4vw,1.7rem); }
@media (max-width:1100px) and (min-width:801px) { .insegna { display:block; } }
@media (max-width:800px) { .eroe { padding:104px 16px 22px; } .copertina img { width:min(120px,32vw); } .insegna { top:84px; } }

/* --- v5c: icone SVG vere (niente emoji) + dediche e produzioni che scorrono --- */
.i { width:1.15em; height:1.15em; fill:currentColor; flex:none; vertical-align:-.2em; }
.pi { display:inline-flex; align-items:center; }
.ascolta .i { width:22px; height:22px; }
.vol .i { width:22px; height:22px; }
.ico { display:inline-flex; vertical-align:-.15em; color:var(--rosso); margin-right:4px; } .ico .i { width:1.15em; height:1.15em; }
.card h2 { display:flex; align-items:center; gap:8px; } .card h2 .ic { display:inline-flex; color:var(--rosso); } .card h2 .ic .i { width:1.1em; height:1.1em; }
.freccia .i { width:20px; height:20px; }
.vedi .i, .btn .i { width:1.1em; height:1.1em; }
.anteprima .i { width:22px; height:22px; }
.scorri-btn { display:grid; place-items:center; padding:0; } .scorri-btn .i { width:26px; height:26px; }
.ico-tondo { display:grid; place-items:center; } .ico-tondo .i { width:40px; height:40px; }
.b-play .i { width:24px; height:24px; }

.scorrevole { display:flex !important; gap:14px; list-style:none; margin:0; padding:2px 2px 16px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:thin; scrollbar-color:var(--rosso) transparent; }
.scorrevole > li { flex:none; scroll-snap-align:start; }
.dediche.scorrevole li { width:clamp(250px,26vw,310px); padding:20px; border-radius:14px; background:linear-gradient(160deg,var(--pannello2),var(--pannello)); border:1px solid var(--bordo); border-left:4px solid var(--rosso); }
.dediche.scorrevole blockquote { position:relative; }
.virg { display:block; color:var(--rosso); margin-bottom:6px; } .virg .i { width:20px; height:20px; }
.dediche.scorrevole blockquote p { margin:0 0 12px; font-size:1rem; }

/* --- v5d: pausa dello scorrimento automatico, nota sull'IA --- */
.dx-testa { display:flex; align-items:center; gap:10px; }
.pausa-btn { display:grid; place-items:center; width:44px; height:44px; border-radius:50%; border:2px solid rgba(255,255,255,.55); background:transparent; color:#fff; cursor:pointer; }
.pausa-btn:hover { border-color:var(--rosso); background:rgba(232,23,46,.2); } .pausa-btn .i { width:18px; height:18px; }
.motto .nota-ia { margin:16px auto 0; max-width:640px; font:500 .95rem/1.5 var(--f); color:#f1e6e6; text-shadow:0 1px 10px rgba(0,0,0,.7); }

/* --- v5e: si vede che e' una radio; schede piccole; brano che cambia; barra in basso con "prossima" --- */
:root { --acc:232,23,46; }
.pill { display:inline-flex; align-items:center; gap:8px; margin:0 0 10px; padding:5px 14px 5px 10px; border:1.5px solid rgba(255,255,255,.35); border-radius:999px; font:700 .74rem var(--f); letter-spacing:.06em; text-transform:uppercase; color:#fff; background:rgba(255,255,255,.06); }
.pill .i { color:rgb(var(--acc)); width:16px; height:16px; }
.eroe { background:radial-gradient(55% 130% at 88% 45%, rgba(var(--acc),.20), transparent 70%), linear-gradient(180deg,#0e0808,#070606); transition:background .8s; }
.copertina img { border:2px solid rgba(var(--acc),.75); backface-visibility:hidden; }
.punto { background:rgb(var(--acc)); box-shadow:0 0 12px rgb(var(--acc)); }
.gira { animation:gira-cover .9s cubic-bezier(.2,.8,.2,1); }
@keyframes gira-cover { from { transform:perspective(600px) rotateY(90deg) scale(.9); opacity:.2 } to { transform:none; opacity:1 } }
.entra { animation:entra-titolo .7s cubic-bezier(.2,.8,.2,1); }
@keyframes entra-titolo { from { opacity:0; transform:translateY(14px) } to { opacity:1; transform:none } }

/* le tre schede: piccole, in orizzontale (le immagini nuove si sostituiscono senza toccare altro) */
.schede3 { grid-template-columns:repeat(auto-fit,minmax(290px,1fr)); gap:12px; margin-top:20px; }
.card { flex-direction:row; align-items:center; }
.card > img { width:92px; height:92px; flex:none; margin:10px; border-radius:10px; object-fit:cover; }
.card .corpo { padding:10px 58px 10px 4px; }
.card h2 { font-size:1rem; margin-bottom:2px; } .card p { font-size:.86rem; }
.card:hover { transform:none; }
.freccia { right:14px; top:50%; bottom:auto; transform:translateY(-50%); width:36px; height:36px; }

/* barra in basso: titolo, prossima e animazione */
.barra { border-top-color:rgb(var(--acc)); align-items:center; padding-top:8px; padding-bottom:calc(8px + env(safe-area-inset-bottom)); }
.b-cover { width:52px; height:52px; border:2px solid rgba(var(--acc),.8); }
.b-testo { display:flex; flex-direction:column; gap:1px; }
.b-lab { display:flex; align-items:center; gap:7px; font-size:.68rem; letter-spacing:.06em; }
.b-lab .punto { width:8px; height:8px; }
.b-tit { font-size:.95rem; }
.b-tit.scorre { text-overflow:clip; animation:scorre-titolo 9s linear infinite alternate; }
@keyframes scorre-titolo { 0%,15% { text-indent:0 } 85%,100% { text-indent:var(--d) } }
.b-next { font-size:.76rem; color:var(--tenue); } .b-next strong { color:#fff; font-weight:700; }
.b-eq { display:flex; align-items:flex-end; gap:3px; height:30px; flex:none; }
.b-eq i { display:block; width:4px; height:5px; border-radius:2px; background:rgb(var(--acc)); }
.rb-playing .b-eq i { animation:b-eq 1s ease-in-out infinite; }
.b-eq i:nth-child(2){animation-delay:.15s}.b-eq i:nth-child(3){animation-delay:.3s}.b-eq i:nth-child(4){animation-delay:.08s}.b-eq i:nth-child(5){animation-delay:.42s}.b-eq i:nth-child(6){animation-delay:.22s}
@keyframes b-eq { 0%,100% { height:5px } 50% { height:28px } }
.b-play { background:rgb(var(--acc)); box-shadow:0 0 22px rgba(var(--acc),.6); }
.b-play[aria-pressed="true"] { background:#fff; color:rgb(var(--acc)); }
@media (max-width:640px) { .b-eq { display:none; } .b-next { display:none; } }
@media (prefers-reduced-motion:reduce) { .gira,.entra,.rb-playing .b-eq i,.b-tit.scorre { animation:none !important } .eroe { transition:none } }

/* --- v5f: programmazione di oggi --- */
.pal { list-style:none; margin:0; padding:0; display:grid; gap:10px; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); }
.pal-item { position:relative; display:flex; flex-direction:column; gap:2px; padding:12px 14px; border-radius:12px; background:var(--pannello); border:1px solid var(--bordo); }
.pal-ora { font:600 .8rem var(--f); color:var(--tenue); font-variant-numeric:tabular-nums; }
.pal-item strong { font:800 1rem var(--f); text-transform:uppercase; }
.pal-item.attivo { border-color:rgb(var(--acc)); background:linear-gradient(160deg,rgba(var(--acc),.22),var(--pannello)); box-shadow:0 0 0 1px rgba(var(--acc),.5); }
.pal-badge { align-self:flex-start; margin-top:6px; padding:2px 10px; border-radius:999px; background:rgb(var(--acc)); color:#fff; font:800 .68rem var(--f); text-transform:uppercase; letter-spacing:.06em; }
.pal-vuoto { grid-column:1 / -1; padding:14px; color:var(--tenue); }

/* --- v5g: lettore piu' piccolo, pulsante come gli altri, senza volume, senza barre di scorrimento --- */
.eroe { padding:84px clamp(16px,4vw,56px) 20px; }
.eroe-in { gap:18px; }
.tag { font-size:.76rem; letter-spacing:.05em; margin:0 0 2px; }
.brano { font-size:clamp(1.25rem,2.5vw,1.8rem); line-height:1.1; }
.sub { margin:4px 0 12px; font-size:.86rem; }
.comandi { gap:0; }
.ascolta { min-height:40px; padding:8px 20px; gap:8px; font:800 .82rem var(--f); text-transform:uppercase; letter-spacing:.02em; box-shadow:none; }
.ascolta .i { width:18px; height:18px; }
.copertina img { width:clamp(84px,9vw,108px); border-radius:10px; }
.insegna { padding:3px 12px; border-width:2px; }
.insegna span { font-size:clamp(1rem,2vw,1.4rem); }
@media (max-width:800px) { .eroe { padding:96px 16px 16px; } .copertina img { width:min(88px,24vw); } .insegna { top:88px; } }

/* niente barre di scorrimento (si scorre con le frecce, il dito o lo scorrimento automatico) */
.scorrevole, .produzioni { scrollbar-width:none; -ms-overflow-style:none; }
.scorrevole::-webkit-scrollbar, .produzioni::-webkit-scrollbar { display:none; width:0; height:0; }
.eroe { padding-top:98px; }
@media (max-width:800px) { .eroe { padding-top:104px; } }

/* --- v5h: telefono: la testata (logo + menu su due righe) non copre piu' il lettore --- */
@media (max-width:800px) {
  .eroe { padding:150px 16px 16px; }
  .eroe-in { display:grid; grid-template-columns:84px minmax(0,1fr); grid-template-areas:"cop testo"; gap:14px; align-items:center; }
  .copertina { grid-area:cop; } .eroe-testo { grid-area:testo; }
  .copertina img { width:84px; }
  .insegna { position:absolute; top:auto; bottom:14px; right:12px; }
  .insegna span { font-size:.95rem; }
  .brano { font-size:clamp(1.15rem,5.4vw,1.5rem); }
}
@media (max-width:800px) { .insegna { top:34px; bottom:auto; right:14px; z-index:40; } }
@media (max-width:800px) { .eroe-in { position:static; } .insegna { top:32px; right:14px; } }
@media (max-width:800px) { .scorri-btn { display:none !important; } }

/* --- v5i: immagini delle tre schede piu' grandi --- */
.card > img { width:128px; height:128px; margin:10px; border-radius:12px; }
.card .corpo { padding:10px 60px 10px 6px; }
.card h2 { font-size:1.05rem; } .card p { font-size:.9rem; }
@media (max-width:800px) { .card > img { width:104px; height:104px; } .card .corpo { padding-right:56px; } }

/* --- v5j: ON AIR sul bordo della copertina, lampeggia quando suona; pulsante quando suona --- */
.copertina { position:relative; flex:none; }
.copertina .insegna { position:absolute; top:-15px; right:-28px; margin:0; padding:2px 10px; z-index:3; transform:rotate(10deg); transform-origin:center; border-width:2px; background:rgba(28,0,4,.88); box-shadow:0 0 12px rgba(255,45,69,.45), inset 0 0 8px rgba(255,45,69,.3); filter:brightness(.72); transition:filter .25s; }
.copertina .insegna span { font-size:clamp(.85rem,1.5vw,1.05rem); }
.rb-playing .copertina .insegna { filter:none; box-shadow:0 0 22px rgba(255,45,69,.95), inset 0 0 12px rgba(255,45,69,.6); animation:neon-rotto 2.8s linear infinite; }
@keyframes neon-rotto { 0%,100% { opacity:1 } 6% { opacity:.2 } 8% { opacity:1 } 10% { opacity:.4 } 12% { opacity:1 } 50% { opacity:1 } 52% { opacity:.15 } 53% { opacity:1 } 55% { opacity:.35 } 57% { opacity:1 } 80% { opacity:1 } 81% { opacity:.5 } 82% { opacity:1 } }
@media (max-width:800px) { .eroe-in { gap:24px; } .copertina .insegna { top:-12px; right:-16px; } }
@media (prefers-reduced-motion:reduce) { .rb-playing .copertina .insegna { animation:none; } }

.ascolta { border:2px solid var(--rosso); }
.ascolta[aria-pressed="true"] { background:transparent; color:#fff; box-shadow:none; }
.ascolta[aria-pressed="true"] .i { color:var(--rosso); }
.ascolta[aria-pressed="true"]:hover { background:rgba(232,23,46,.18); }

/* --- v5k: pagine interne, stessa impaginazione della home --- */
body.pagina .testata { position:relative; padding-top:8px; padding-bottom:8px; background:linear-gradient(180deg,#0e0808,#070606); border-bottom:1px solid var(--bordo); }
body.pagina .marchio img { width:72px; height:72px; }
body.pagina main { padding-bottom:24px; }
.intest-pagina { padding:28px 0 6px; }
.titolo-pagina { margin:0; font:900 clamp(1.6rem,3.6vw,2.4rem)/1.1 var(--f); text-transform:uppercase; }
.titolo-pagina::before { content:""; display:inline-block; width:6px; height:.9em; margin-right:12px; vertical-align:-.1em; background:var(--rosso); border-radius:3px; }
.lead-pagina { margin:8px 0 0; color:var(--tenue); max-width:62ch; }
.due-colonne { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; margin-top:22px; align-items:start; }
.modulo { padding:22px; border-radius:16px; background:var(--pannello); border:1px solid var(--bordo); }
.modulo label { display:block; margin:14px 0 6px; font:700 .78rem var(--f); letter-spacing:.05em; text-transform:uppercase; }
.modulo label:first-child { margin-top:0; }
.opz { color:var(--tenue); text-transform:none; font-weight:400; letter-spacing:0; }
.modulo input[type=text], .modulo input[type=email], .modulo select, .modulo textarea { width:100%; padding:12px 14px; border-radius:10px; border:1.5px solid #4a2a2f; background:#0c0808; color:#fff; font:400 1rem var(--f); }
.modulo textarea { resize:vertical; min-height:120px; }
.modulo input:focus, .modulo select:focus, .modulo textarea:focus { outline:none; border-color:var(--rosso); box-shadow:0 0 0 3px rgba(232,23,46,.28); }
.conta { margin:4px 0 0; text-align:right; color:var(--tenue); font-size:.78rem; }
.modulo .btn { margin-top:18px; min-height:46px; cursor:pointer; border:2px solid var(--rosso); }
.modulo .btn:disabled { opacity:.6; cursor:wait; }
.nota-modulo { margin:12px 0 0; color:var(--tenue); font-size:.82rem; line-height:1.5; }
.trappola { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.esito { display:flex; gap:10px; align-items:flex-start; margin-top:14px; padding:12px 14px; border-radius:10px; font-weight:600; }
.esito[hidden] { display:none; }
.esito .i { flex:none; width:22px; height:22px; margin-top:1px; }
.esito.ok { background:rgba(40,170,95,.14); border:1px solid #2ea05a; color:#c9f5da; }
.esito.errore { background:rgba(232,23,46,.14); border:1px solid var(--rosso); color:#ffd3d8; }
.riquadro { padding:22px; border-radius:16px; background:var(--pannello); border:1px solid var(--bordo); }
.passi { margin:12px 0 0; padding-left:1.2em; color:#e6dddd; } .passi li { margin:8px 0; }
.canali { list-style:none; margin:12px 0; padding:0; } .canali a { display:block; padding:10px 0; min-height:44px; color:#fff; text-decoration:none; border-bottom:1px solid var(--bordo); } .canali a:hover { color:var(--rosso2); }
.dediche-elenco { list-style:none; margin:14px 0 0; padding:0; display:grid; gap:12px; }
.dediche-elenco li { padding:18px; border-radius:14px; background:linear-gradient(160deg,var(--pannello2),var(--pannello)); border:1px solid var(--bordo); border-left:4px solid var(--rosso); }
.dediche-elenco blockquote p { margin:0 0 10px; } .dediche-elenco footer { color:var(--tenue); font-size:.85rem; }
.paginazione { display:flex; align-items:center; justify-content:center; gap:14px; flex-wrap:wrap; margin:22px 0 0; } .pag-num { color:var(--tenue); }
.vuoto { color:var(--tenue); padding:14px 0; }
.elenco-news { display:grid; gap:16px; margin-top:22px; }
.news-riga { display:flex; gap:18px; padding:16px; border-radius:14px; background:var(--pannello); border:1px solid var(--bordo); }
.news-riga img { width:240px; height:160px; object-fit:cover; border-radius:10px; flex:none; background:#000; }
.news-testo h2 { margin:2px 0 4px; font:800 1.15rem/1.25 var(--f); text-transform:uppercase; } .news-testo p { margin:6px 0; } .sottotit { color:#e8dede; font-weight:600; }
.data { color:var(--tenue); font-size:.82rem; margin:0; }
.griglia-produzioni { list-style:none; margin:22px 0 0; padding:0; display:grid; gap:16px; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); }
.scheda-prod { border-radius:14px; overflow:hidden; background:var(--pannello); border:1px solid var(--bordo); }
.scheda-prod .prod-img img { width:100%; aspect-ratio:1; object-fit:cover; background:#000; }
.prod-testo { padding:14px 16px 18px; } .prod-testo h2 { margin:0 0 4px; font:800 1.05rem/1.25 var(--f); text-transform:uppercase; } .prod-testo p { margin:6px 0 0; color:#dcd3d3; font-size:.92rem; }
@media (max-width:800px) { .due-colonne { grid-template-columns:1fr; } .news-riga { flex-direction:column; } .news-riga img { width:100%; height:auto; aspect-ratio:3/2; } body.pagina .testata { padding-bottom:4px; } }

/* --- v5l: le schede dei caroselli entrano sempre in numero intero (nessuna tagliata a meta') --- */
.scorrevole { --n:4; --gap:14px; gap:var(--gap) !important; }
.scorrevole > li { flex:0 0 calc((100% - (var(--n) - 1) * var(--gap)) / var(--n)) !important; width:auto !important; min-width:0; }
.produzioni { --n:5; }
.dediche.scorrevole { --n:3; }
@media (max-width:1100px) { .produzioni { --n:4; } .dediche.scorrevole { --n:2; } }
@media (max-width:800px)  { .produzioni { --n:2; } .dediche.scorrevole { --n:1; } }

/* --- v5m: ON AIR come tubo al neon: lettere trasparenti col solo contorno luminoso; lampeggia acceso/spento senza mai sparire --- */
.copertina .insegna { background:rgba(18,0,4,.45); border:2px solid #ff4a60; filter:none !important; animation:none;
  box-shadow:0 0 12px rgba(255,45,69,.7), inset 0 0 8px rgba(255,45,69,.4); }
.copertina .insegna span { font-weight:900; letter-spacing:.09em; color:rgba(255,90,110,.14); -webkit-text-stroke:1.4px #ff7385;
  text-shadow:0 0 5px rgba(255,45,69,.95), 0 0 14px rgba(255,45,69,.7); }
.rb-playing .copertina .insegna { box-shadow:0 0 12px rgba(255,45,69,.7), inset 0 0 8px rgba(255,45,69,.4); animation:tubo-riquadro 2.8s step-end infinite; }
.rb-playing .copertina .insegna span { animation:tubo-lettere 2.8s step-end infinite; }
/* acceso = valori di base; spento = tubo scuro ma ancora visibile */
@keyframes tubo-riquadro {
  0%   { border-color:#ff4a60; box-shadow:0 0 16px rgba(255,45,69,.95), inset 0 0 10px rgba(255,45,69,.5); }
  6%   { border-color:#5b222b; box-shadow:none; }
  8%   { border-color:#ff4a60; box-shadow:0 0 16px rgba(255,45,69,.95), inset 0 0 10px rgba(255,45,69,.5); }
  10%  { border-color:#5b222b; box-shadow:none; }
  12%  { border-color:#ff4a60; box-shadow:0 0 16px rgba(255,45,69,.95), inset 0 0 10px rgba(255,45,69,.5); }
  52%  { border-color:#5b222b; box-shadow:none; }
  53%  { border-color:#ff4a60; box-shadow:0 0 16px rgba(255,45,69,.95), inset 0 0 10px rgba(255,45,69,.5); }
  55%  { border-color:#5b222b; box-shadow:none; }
  57%  { border-color:#ff4a60; box-shadow:0 0 16px rgba(255,45,69,.95), inset 0 0 10px rgba(255,45,69,.5); }
  81%  { border-color:#5b222b; box-shadow:none; }
  82%  { border-color:#ff4a60; box-shadow:0 0 16px rgba(255,45,69,.95), inset 0 0 10px rgba(255,45,69,.5); }
}
@keyframes tubo-lettere {
  0%   { color:rgba(255,90,110,.16); -webkit-text-stroke-color:#ff7385; text-shadow:0 0 6px rgba(255,45,69,1), 0 0 16px rgba(255,45,69,.8); }
  6%   { color:rgba(255,90,110,.03); -webkit-text-stroke-color:#6d2a34; text-shadow:none; }
  8%   { color:rgba(255,90,110,.16); -webkit-text-stroke-color:#ff7385; text-shadow:0 0 6px rgba(255,45,69,1), 0 0 16px rgba(255,45,69,.8); }
  10%  { color:rgba(255,90,110,.03); -webkit-text-stroke-color:#6d2a34; text-shadow:none; }
  12%  { color:rgba(255,90,110,.16); -webkit-text-stroke-color:#ff7385; text-shadow:0 0 6px rgba(255,45,69,1), 0 0 16px rgba(255,45,69,.8); }
  52%  { color:rgba(255,90,110,.03); -webkit-text-stroke-color:#6d2a34; text-shadow:none; }
  53%  { color:rgba(255,90,110,.16); -webkit-text-stroke-color:#ff7385; text-shadow:0 0 6px rgba(255,45,69,1), 0 0 16px rgba(255,45,69,.8); }
  55%  { color:rgba(255,90,110,.03); -webkit-text-stroke-color:#6d2a34; text-shadow:none; }
  57%  { color:rgba(255,90,110,.16); -webkit-text-stroke-color:#ff7385; text-shadow:0 0 6px rgba(255,45,69,1), 0 0 16px rgba(255,45,69,.8); }
  81%  { color:rgba(255,90,110,.03); -webkit-text-stroke-color:#6d2a34; text-shadow:none; }
  82%  { color:rgba(255,90,110,.16); -webkit-text-stroke-color:#ff7385; text-shadow:0 0 6px rgba(255,45,69,1), 0 0 16px rgba(255,45,69,.8); }
}
@media (prefers-reduced-motion:reduce) { .rb-playing .copertina .insegna, .rb-playing .copertina .insegna span { animation:none; } }

/* --- v5n: ON AIR pieno (come prima) con bagliore che respira, senza mai spegnersi; copertina piu' grande --- */
.copertina .insegna { background:rgba(40,0,6,.62); border:3px solid #ff2d45; filter:none !important; animation:none !important;
  box-shadow:0 0 14px rgba(255,45,69,.6), inset 0 0 10px rgba(255,45,69,.4); }
.copertina .insegna span { color:#ff5468; -webkit-text-stroke:0; animation:none !important; text-shadow:0 0 10px #ff2d45, 0 0 26px #ff2d45; }
.rb-playing .copertina .insegna { animation:onair-respira 1.5s ease-in-out infinite !important; }
@keyframes onair-respira {
  0%, 100% { box-shadow:0 0 12px rgba(255,45,69,.55), inset 0 0 8px rgba(255,45,69,.35); }
  50%      { box-shadow:0 0 34px rgba(255,45,69,1), inset 0 0 16px rgba(255,45,69,.7); }
}
@media (prefers-reduced-motion:reduce) { .rb-playing .copertina .insegna { animation:none !important; } }

.copertina img { width:clamp(124px,13vw,168px); border-radius:12px; }
@media (max-width:800px) { .eroe-in { grid-template-columns:116px minmax(0,1fr); } .copertina img { width:116px; } }

/* --- v5o: ON AIR senza sfondo, neon rotto che cala di luce ma non sparisce; pallino "in onda" che non si ingrandisce --- */
.copertina .insegna { background:transparent !important; border:2px solid rgba(255,80,100,.95); filter:none !important; animation:none !important;
  box-shadow:0 0 10px rgba(255,45,69,.55), inset 0 0 8px rgba(255,45,69,.3); }
.copertina .insegna span { color:#ff5468; -webkit-text-stroke:0; animation:none !important; text-shadow:0 0 8px #ff2d45, 0 0 20px #ff2d45; }
.rb-playing .copertina .insegna { animation:neon-rotto-2 2.8s linear infinite !important; }
@keyframes neon-rotto-2 {
  0%,100% { opacity:1 }  6% { opacity:.45 }  8% { opacity:1 }  10% { opacity:.6 }  12% { opacity:1 }
  50% { opacity:1 }  52% { opacity:.4 }  53% { opacity:1 }  55% { opacity:.55 }  57% { opacity:1 }
  80% { opacity:1 }  81% { opacity:.5 }  82% { opacity:1 }
}
.rb-playing .punto { transform:none !important; animation:punto-neon 1.8s ease-in-out infinite !important; }
@keyframes punto-neon {
  0%,100% { box-shadow:0 0 5px rgb(var(--acc)), 0 0 14px rgba(var(--acc),.75); opacity:1; }
  50%     { box-shadow:0 0 1px rgba(var(--acc),.4); opacity:.6; }
}
@media (prefers-reduced-motion:reduce) { .rb-playing .copertina .insegna, .rb-playing .punto { animation:none !important; } }

/* --- v5p: ON AIR piu' grande e piu' luminoso --- */
.copertina .insegna { top:-22px; right:-40px; padding:4px 14px; border:2.5px solid #ff6f82;
  box-shadow:0 0 12px rgba(255,45,69,.8), 0 0 28px rgba(255,45,69,.45), inset 0 0 10px rgba(255,45,69,.45); }
.copertina .insegna span { font-size:clamp(1.15rem,2.2vw,1.65rem); color:#ff8797;
  text-shadow:0 0 4px #fff2, 0 0 8px #ff2d45, 0 0 18px #ff2d45, 0 0 34px #ff2d45, 0 0 54px rgba(255,45,69,.7); }
.rb-playing .copertina .insegna { animation:neon-rotto-3 2.8s linear infinite !important; }
@keyframes neon-rotto-3 {
  0%,100% { opacity:1; filter:brightness(1.35); }
  6%  { opacity:.5; filter:brightness(.9); }   8%  { opacity:1; filter:brightness(1.5); }
  10% { opacity:.62; filter:brightness(1); }   12% { opacity:1; filter:brightness(1.35); }
  50% { opacity:1; filter:brightness(1.35); }  52% { opacity:.45; filter:brightness(.85); }
  53% { opacity:1; filter:brightness(1.5); }   55% { opacity:.58; filter:brightness(.95); }
  57% { opacity:1; filter:brightness(1.35); }  80% { opacity:1; filter:brightness(1.35); }
  81% { opacity:.55; filter:brightness(.9); }  82% { opacity:1; filter:brightness(1.5); }
}
@media (max-width:800px) { .copertina .insegna { top:-16px; right:-20px; } .copertina .insegna span { font-size:1.1rem; } }
@media (prefers-reduced-motion:reduce) { .rb-playing .copertina .insegna { animation:none !important; } }

/* --- v5q: social nel piede; intestazione con logo a sinistra e menu a destra --- */
.testata nav ul { justify-content:flex-end; }
.pie { row-gap:14px; }
.social-piede { order:3; flex:1 1 100%; display:flex; justify-content:center; flex-wrap:wrap; gap:10px 12px; list-style:none; margin:6px 0 0; padding:0; }
.social-piede a { display:inline-flex; align-items:center; gap:10px; min-height:44px; padding:8px 18px 8px 10px; border:1.5px solid var(--bordo); border-radius:999px; background:var(--pannello); color:#fff; text-decoration:none; font:600 .9rem var(--f); }
.social-piede a:hover { border-color:var(--rosso); background:var(--pannello2); color:#fff; }
.social-piede img { width:28px; height:28px; border-radius:6px; }
.pie > p { order:4; flex:1 1 100%; text-align:center; }
@media (max-width:800px) { .testata nav ul { justify-content:flex-start; } .social-piede a { padding:8px 14px 8px 8px; } }

/* --- v5r: pulsante "Ascolta ora" al neon (colore della copertina) con equalizzatore --- */
.ascolta.ascolta-neon { position:relative; display:inline-flex; align-items:center; gap:12px; min-height:50px; padding:4px 22px 4px 5px; border-radius:999px; border:2px solid rgb(var(--acc));
  background:linear-gradient(180deg,#1c0d10 0%,#080505 58%,#130809 100%); color:#fff; font:900 .95rem var(--f); text-transform:uppercase; letter-spacing:.02em; cursor:pointer; overflow:hidden;
  box-shadow:0 0 10px rgba(var(--acc),.55), 0 0 22px rgba(var(--acc),.25), inset 0 0 0 1px rgba(var(--acc),.35), inset 0 0 12px rgba(var(--acc),.2); transition:box-shadow .3s, border-color .3s; }
.ascolta-neon::after { content:""; position:absolute; inset:0; border-radius:inherit; pointer-events:none; background:linear-gradient(115deg,transparent 38%,rgba(255,255,255,.08) 47%,transparent 58%); }
.ascolta.ascolta-neon:hover { background:linear-gradient(180deg,#221014 0%,#0b0606 58%,#160a0c 100%); color:#fff; box-shadow:0 0 14px rgba(var(--acc),.8), 0 0 30px rgba(var(--acc),.4), inset 0 0 0 1px rgba(var(--acc),.5), inset 0 0 14px rgba(var(--acc),.3); }
.ascolta.ascolta-neon[aria-pressed="true"] { background:linear-gradient(180deg,#221014 0%,#0b0606 58%,#160a0c 100%); color:#fff;
  box-shadow:0 0 14px rgba(var(--acc),.95), 0 0 34px rgba(var(--acc),.55), inset 0 0 0 1px rgba(var(--acc),.6), inset 0 0 16px rgba(var(--acc),.35); }
.ascolta-neon .tondo { display:grid; place-items:center; flex:none; width:40px; height:40px; border-radius:50%; color:#fff; border:2px solid rgb(var(--acc));
  background:radial-gradient(circle at 35% 28%, rgba(var(--acc),.95), rgba(var(--acc),.55) 58%, #2a0a0f);
  box-shadow:0 0 0 2px #0b0606, 0 0 0 3px rgba(255,255,255,.5), 0 0 12px rgba(var(--acc),.8); }
.ascolta-neon .tondo .i { width:18px; height:18px; color:#fff; }
.ascolta.ascolta-neon[aria-pressed="true"] .tondo .i { color:#fff; }
.ascolta-neon .testo-neon { position:relative; z-index:1; white-space:nowrap; }
.ascolta-neon em { font-style:normal; color:rgb(var(--acc)); text-shadow:0 0 8px rgba(var(--acc),.55); }
.eq-btn { position:relative; z-index:1; display:flex; align-items:center; gap:2.5px; height:28px; flex:none; margin-left:2px; }
.eq-btn i { display:block; width:2px; height:calc(var(--env,.5) * 100%); border-radius:2px; background:rgba(var(--acc),.3); transform:scaleY(.32); transform-origin:center; transition:background .3s, box-shadow .3s; }
.rb-playing .eq-btn i { background:rgb(var(--acc)); box-shadow:0 0 5px rgba(var(--acc),.95); animation:eq-di-ripiego 1.1s ease-in-out infinite; }
.eq-js .eq-btn i { animation:none; }
.eq-btn i:nth-child(2n) { animation-delay:.18s; } .eq-btn i:nth-child(3n) { animation-delay:.34s; } .eq-btn i:nth-child(5n) { animation-delay:.52s; }
@keyframes eq-di-ripiego { 0%,100% { transform:scaleY(.3); } 50% { transform:scaleY(1); } }
@media (prefers-reduced-motion:reduce) { .rb-playing .eq-btn i { animation:none; transform:scaleY(.7); } }

/* variante nella barra in basso: piu' compatta; su telefono resta solo il cerchio */
.ascolta-barra { min-height:44px; padding:3px 16px 3px 4px; font-size:.82rem; gap:10px; }
.ascolta-barra .tondo { width:36px; height:36px; } .ascolta-barra .eq-btn { height:22px; }
@media (max-width:640px) { .ascolta-barra .testo-neon, .ascolta-barra .eq-btn { display:none; } .ascolta-barra { padding:3px; gap:0; } }

/* blocco in alto: il pulsante sta sotto al testo, la copertina a destra (su telefono il pulsante occupa tutta la riga) */
.eroe-in { display:grid; grid-template-columns:minmax(0,1fr) auto; grid-template-areas:"testo cop" "btn cop"; column-gap:24px; row-gap:8px; align-items:center; }
.eroe-testo { grid-area:testo; align-self:end; } .eroe-testo .sub { margin-bottom:0; }
.comandi { grid-area:btn; align-self:start; margin-top:6px; }
.copertina { grid-area:cop; }
@media (max-width:800px) { .eroe-in { grid-template-columns:116px minmax(0,1fr); grid-template-areas:"cop testo" "btn btn"; row-gap:14px; } .comandi { margin-top:0; } }

/* --- v5s: pulsante in alto sempre rosso e piu' piccolo; equalizzatore piu' veloce e marcato; barra in basso = colore della copertina --- */
.comandi .ascolta-neon { --acc:232,23,46; min-height:44px; padding:3px 18px 3px 4px; gap:10px; font-size:.85rem; }
.comandi .ascolta-neon .tondo { width:34px; height:34px; }
.comandi .ascolta-neon .tondo .i { width:16px; height:16px; }
.comandi .eq-btn { height:24px; gap:2.5px; }
.eq-btn i { width:2.5px; }
.rb-playing .eq-btn i { animation-duration:.45s; }

/* --- v5t: pulsante di larghezza fissa (non cambia col testo) --- */
.ascolta.ascolta-neon { width:264px; justify-content:flex-start; }
.ascolta-neon .testo-neon { flex:1 1 auto; min-width:0; text-align:left; }
.ascolta-neon .eq-btn { margin-left:auto; }
.ascolta-barra.ascolta-neon { width:252px; }
@media (max-width:640px) { .ascolta-barra.ascolta-neon { width:auto; } }
.ascolta-barra.ascolta-neon { width:286px; }
@media (max-width:640px) { .ascolta-barra.ascolta-neon { width:auto; } }

/* --- v5u: menu al centro della pagina, logo piu' grande --- */
@media (min-width:801px) {
  .testata { display:grid; grid-template-columns:1fr auto 1fr; align-items:center; }
  .testata .marchio { justify-self:start; }
  .testata nav { grid-column:2; flex:none; }
  .testata nav ul { justify-content:center; }
  .marchio img { width:132px; height:132px; }
  body.pagina .marchio img { width:108px; height:108px; }
  .eroe { padding-top:150px; }
}
@media (max-width:800px) {
  .marchio img { width:96px; height:96px; }
  body.pagina .marchio img { width:88px; height:88px; }
  .eroe { padding-top:176px; }
}

/* --- v5v: testata compatta come prima (logo alla misura di prima); logo grande nel piede --- */
@media (min-width:801px) {
  .marchio img { width:96px; height:96px; }
  body.pagina .marchio img { width:72px; height:72px; }
  .eroe { padding-top:98px; }
}
@media (max-width:800px) {
  .marchio img { width:72px; height:72px; }
  body.pagina .marchio img { width:72px; height:72px; }
  .eroe { padding-top:150px; }
}
.pie img { width:150px; height:150px; object-fit:contain; }
@media (max-width:800px) { .pie img { width:120px; height:120px; } }

/* --- v5w: titoli di sezione a immagine (il testo e' nel testo alternativo del titolo) --- */
.testa { align-items:center; }
.titolo-img { margin:0; line-height:0; flex:1 1 300px; min-width:0; }
.titolo-img img { display:block; width:min(100%,580px); height:auto; margin-left:-6px; }
.testa-titolo { flex:1 1 300px; min-width:0; }
.testa-titolo .sotto { margin:4px 0 0 6px; }
@media (max-width:800px) { .titolo-img img { width:min(100%,480px); margin-left:0; } .testa { row-gap:10px; } }

/* --- v5x: data di oggi dentro l'intestazione "Programmazione", sotto e accanto al cerchio, bianca con bagliore --- */
.titolo-composto { position:relative; flex:0 1 580px; width:min(100%,580px); padding-bottom:26px; }
.titolo-composto .titolo-img { flex:none; width:100%; }
.data-sez { position:absolute; left:22%; right:0; bottom:0; margin:0 !important; color:#fff; font:600 .95rem/1.2 var(--f); white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  text-shadow:0 0 6px rgba(255,255,255,.75), 0 0 16px rgba(255,255,255,.4); }
@media (max-width:560px) { .data-sez .lungo { display:none; } .data-sez { font-size:.88rem; left:24%; } }
.data-sez { font-size:.84rem; letter-spacing:0; }
@media (max-width:560px) { .data-sez { font-size:.86rem; } }

/* --- v5y: intestazioni di sezione piu' piccole; data sotto l'immagine --- */
.titolo-img img { width:min(100%,400px); margin-left:-4px; }
.titolo-composto { flex:0 1 400px; width:min(100%,400px); padding-bottom:0; }
.titolo-composto .titolo-img { width:100%; }
.data-sez { position:static; margin:2px 0 0 !important; padding-left:22%; font-size:.82rem; white-space:normal; overflow:visible; }
.data-sez .lungo { display:none; }
@media (max-width:800px) { .titolo-img img { width:min(100%,320px); margin-left:0; } .titolo-composto { flex-basis:320px; width:min(100%,320px); } .data-sez { padding-left:24%; } }

/* --- v5z: intestazioni di sezione ancora piu' piccole --- */
.titolo-img img { width:min(100%,300px); }
.titolo-composto { flex:0 1 300px; width:min(100%,300px); }
.data-sez { font-size:.8rem; }
@media (max-width:800px) { .titolo-img img { width:min(100%,250px); } .titolo-composto { flex-basis:250px; width:min(100%,250px); } }

/* --- v5aa: titoli-immagine senza sottotitolo: il sottotitolo e' testo normale; data in bianco con bagliore --- */
.testa-titolo { flex:0 1 auto; min-width:0; }
.titolo-img img { width:min(100%,320px); margin-left:0; }
.testa-titolo .sub-sez { margin:6px 0 0 4px !important; color:#cfc4c4; font:500 .86rem/1.35 var(--f); max-width:44ch; }
.testa-titolo .data-sez { position:static; padding:0; display:inline; color:#fff; font:700 .86rem var(--f); text-shadow:0 0 6px rgba(255,255,255,.75), 0 0 16px rgba(255,255,255,.4); }
.testa-titolo .data-sez .lungo { display:none; }
@media (max-width:800px) { .titolo-img img { width:min(100%,270px); } }
.testa-titolo .sub-sez { max-width:70ch; }

/* --- v5ab: dediche: in alto "DA: nome" (e "PER: nome" se c'e'), bianco con bagliore; poi il messaggio --- */
.dd-testa { display:flex; flex-wrap:wrap; align-items:center; gap:4px 16px; margin:0 0 10px; }
.dd-testa .virg { display:inline-flex; margin:0; color:var(--rosso); flex:none; }
.dd-testa .virg .i { width:18px; height:18px; }
.dd-testa p { margin:0 !important; font-size:.9rem !important; line-height:1.25; color:#fff !important; text-shadow:0 0 6px rgba(255,255,255,.7), 0 0 14px rgba(255,255,255,.35); }
.dd-testa strong { color:#fff; font-weight:800; }
.dd-et { font-size:.72rem; font-weight:800; letter-spacing:.07em; text-transform:uppercase; }
.dd-testo { margin:0 0 6px !important; color:#e8e0e0; font-size:1rem; line-height:1.5; }
.dediche-elenco footer { margin-top:8px; }
/* DA: / PER: senza bagliore; il bagliore resta sui nomi */
.dd-testa p { text-shadow:none !important; }
.dd-testa .dd-et { color:#e8dede; text-shadow:none !important; }
.dd-testa strong { text-shadow:0 0 6px rgba(255,255,255,.7), 0 0 14px rgba(255,255,255,.35); }

/* --- v5ac: scheda di presentazione di una produzione (si apre cliccando copertina o titolo) --- */
.prod-apri { background:none; border:0; padding:0; margin:0; color:inherit; font:inherit; text-transform:inherit; letter-spacing:inherit; text-align:left; cursor:pointer; }
.prod-apri:hover { color:var(--rosso2); }
.prod-img { cursor:pointer; }
.scheda-dialog { padding:0; border:1px solid var(--rosso); border-radius:14px; background:#0a0707; color:var(--testo); width:min(92vw,460px); max-height:90vh; box-shadow:0 0 40px rgba(232,23,46,.4); overflow:auto; }
.scheda-dialog::backdrop { background:rgba(0,0,0,.78); backdrop-filter:blur(3px); }
.sp-corpo { padding:24px; text-align:center; }
.sp-corpo img { display:block; width:200px; height:200px; object-fit:cover; border-radius:10px; border:1px solid #333; margin:0 auto 14px; background:#000; }
.sp-corpo h3 { margin:0 0 12px; font:900 1.15rem/1.25 var(--f); color:var(--rosso2); text-transform:uppercase; }
.sp-scorri { text-align:left; background:#050505; border:1px solid #241a1a; border-radius:8px; padding:14px; max-height:36vh; overflow-y:auto; margin-bottom:14px; font-size:.95rem; line-height:1.6; }
#sp-audio audio { width:100%; margin-bottom:14px; color-scheme:dark; }
.sp-chiudi { width:100%; cursor:pointer; border:2px solid var(--rosso); }

/* v5ad - news: badge TOP, apertura scheda, fila in home */
.badge-top{display:inline-block;margin-right:8px;padding:2px 8px;border:1px solid rgb(var(--acc,232,23,46));color:#fff;background:rgba(232,23,46,.85);font:800 .68rem/1.4 Montserrat,sans-serif;letter-spacing:.08em;border-radius:4px;vertical-align:middle}
.news-apri{all:unset;cursor:pointer;color:inherit;font:inherit}
.news-apri:hover,.news-apri:focus-visible{text-decoration:underline}
.news-apri:focus-visible{outline:2px solid #fff;outline-offset:3px}
[data-news] img{cursor:pointer}
.sn-sub{color:#ff3050;font-weight:700;margin:0 0 10px;text-align:center}
#sn-img{border-radius:10px;object-fit:cover;max-width:100%;height:auto;max-height:180px}
#sn-link{margin:14px 0 4px;text-align:center}
.news-home{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}
.news-home .news-riga{display:flex;gap:14px;align-items:center;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:14px;background:rgba(255,255,255,.04)}
.news-home img{width:84px;height:84px;object-fit:cover;border-radius:10px;flex:none}
.news-home h3{margin:2px 0;font-size:1rem}
.news-home .sottotit,.news-home .data{margin:0;font-size:.85rem;opacity:.8}

/* v5ae - news in home piu' grandi */
.news-home{margin-top:8px;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}
.news-home .news-riga{padding:16px;gap:16px;min-height:150px}
.news-home img{width:112px;height:112px}
.news-home h3{font-size:1.15rem}
.news-home .sottotit,.news-home .data{font-size:.92rem}

/* v5af - 4 news in fila su PC */
.news-home{grid-template-columns:repeat(4,1fr);gap:14px}
.news-home .news-riga{flex-direction:column;align-items:flex-start;text-align:left;padding:14px;gap:12px}
.news-home img{width:100%;height:120px;object-fit:cover}
.news-home h3{font-size:1.05rem}
@media(max-width:1100px){.news-home{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.news-home{grid-template-columns:1fr}.news-home .news-riga{flex-direction:row;align-items:center}.news-home img{width:84px;height:84px}}

/* v5ag - news in home stile vecchio sito: immagine grande centrata */
.news-home .news-riga{flex-direction:column;align-items:center;text-align:center;padding:18px 16px;gap:14px;position:relative}
.news-home img{width:100%;max-width:210px;height:190px;object-fit:contain;border-radius:10px;background:#0a0a0a}
.news-home .news-testo{width:100%;display:flex;flex-direction:column;align-items:center}
.news-home .badge-top{position:absolute;top:12px;left:12px;margin:0;z-index:1}
.news-home h3{font-size:1.05rem;margin:4px 0 8px}
.news-home .leggi{margin:0}
.news-home .leggi .news-apri{color:rgb(var(--acc,232,23,46));font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.06em;text-decoration:underline}
@media(max-width:600px){.news-home .news-riga{flex-direction:column}.news-home img{width:100%;height:170px}}

/* v5ah - motto compatto e footer ordinato */
.motto{margin:36px calc(50% - 50vw) 0;padding:34px 16px;background:linear-gradient(180deg,rgba(232,23,46,.10),rgba(232,23,46,0) 100%);border-top:1px solid rgba(232,23,46,.35)}
.motto p{font-size:clamp(1.5rem,3.6vw,2.3rem);line-height:1.2}
.motto .nota-ia{margin:10px auto 0;max-width:720px;font-size:.88rem;color:#cfc4c4}
.pie{flex-direction:column;justify-content:center;text-align:center;gap:18px;padding:34px 0 110px;border-top:0}
.pie img{width:110px;height:110px}
.pie nav ul,.pie .social-piede{justify-content:center}
.pie .social-piede{display:flex;flex-wrap:wrap;gap:10px 22px;list-style:none;margin:0;padding:0}
.pie > p{order:4;flex:none;font-size:.82rem;opacity:.75}
@media(max-width:800px){.pie img{width:96px;height:96px}}

/* v5ai - footer: icone social piccole, spazi ridotti */
.pie{gap:14px;padding:22px 0 110px}
.pie > img{width:110px;height:110px}
.pie .social-piede img{width:32px;height:32px;flex:none}
.pie .social-piede a{display:inline-flex;align-items:center;gap:10px;padding:8px 16px 8px 10px;border:1px solid rgba(255,255,255,.14);border-radius:999px;background:rgba(255,255,255,.04);font-weight:700;font-size:.9rem;color:#fff}
.pie .social-piede a:hover{border-color:rgba(232,23,46,.7);background:rgba(232,23,46,.12)}
.pie nav a{padding:6px 2px}
.motto{margin-bottom:0}

/* v5aj - mobile: menu e barra restano dentro lo schermo */
html,body{max-width:100%;overflow-x:clip}
.testata{max-width:100vw;box-sizing:border-box}
@media(max-width:800px){
  .testata nav{min-width:0;max-width:100%;width:100%}
  .testata nav ul{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .barra{width:100%;max-width:100vw;box-sizing:border-box}
  .b-testo{min-width:0;flex:1 1 auto}
}

/* v5ak - solo cellulare: menu su due righe accanto al logo, barra player su due righe */
@media(max-width:800px){
  .testata,body.pagina .testata{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;padding:8px 10px}
  .testata .marchio{flex:none}
  .marchio img,body.pagina .marchio img{width:72px;height:72px}
  .testata nav{flex:1 1 auto;min-width:0;width:auto;grid-column:auto}
  .testata nav ul{display:grid;grid-template-columns:repeat(3,auto);justify-content:end;overflow:visible;gap:0 4px}
  .testata nav a{padding:6px 5px;min-height:40px;font-size:.78rem;white-space:normal;text-align:center;line-height:1.15;display:flex;align-items:center;justify-content:center}
}
@media(max-width:640px){
  .barra{flex-wrap:wrap;gap:8px 12px;padding-top:8px}
  .barra .b-cover{width:44px;height:44px}
  .barra .b-testo{flex:1 1 0;min-width:0}
  .barra .ascolta-barra.ascolta-neon{flex:1 1 100%;width:100%;justify-content:space-between;padding:3px 16px 3px 4px;gap:10px}
  .barra .ascolta-barra .testo-neon,.barra .ascolta-barra .eq-btn{display:flex}
  .barra .ascolta-barra .testo-neon{display:inline}
}

/* v5al - cellulare: menu con margine di sicurezza a destra */
@media(max-width:800px){
  .testata,body.pagina .testata{padding:8px 16px 8px 10px;overflow:hidden}
  .testata nav ul{grid-template-columns:repeat(3,minmax(0,1fr));justify-content:stretch;width:100%}
  .testata nav a{padding:6px 2px;font-size:.74rem;overflow-wrap:anywhere}
}

/* v5am - cellulare: la barra su due righe non copre piu' la fine del footer */
@media(max-width:640px){ .pie{padding-bottom:calc(150px + env(safe-area-inset-bottom))} body{scroll-padding-bottom:140px} }

/* v5an - cellulare: nella barra si vede anche il brano successivo */
@media(max-width:640px){
  .barra .b-next{display:block;margin:0;font-size:.74rem;line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .barra .b-tit{font-size:.95rem}
  .pie{padding-bottom:calc(160px + env(safe-area-inset-bottom))}
}

/* v5ao - pagina collaboratori */
.griglia-collab{list-style:none;margin:22px 0 0;padding:0;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(210px,1fr))}
.collab-in{display:flex;flex-direction:column;align-items:center;gap:8px;height:100%;padding:22px 16px;text-align:center;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.04);color:#fff;text-decoration:none}
a.collab-in:hover,a.collab-in:focus-visible{border-color:rgba(232,23,46,.8);background:rgba(232,23,46,.1)}
.collab-in img{width:120px;height:120px;object-fit:contain;border-radius:12px}
.collab-nome{font-weight:800;font-size:1.05rem}
.collab-ruolo{color:#cfc4c4;font-size:.92rem}
.collab-tipo{margin-top:2px;padding:2px 10px;border:1px solid rgba(232,23,46,.6);border-radius:999px;color:#ff5068;font:800 .68rem/1.6 Montserrat,sans-serif;letter-spacing:.08em}

/* v5ap - promozione (riquadro in basso a destra, sopra la barra del player) */
.promo{position:fixed;right:16px;bottom:16px;z-index:55;width:min(300px,calc(100vw - 32px));background:#0d0a0a;border:1px solid rgba(255,255,255,.16);border-radius:16px;box-shadow:0 14px 40px rgba(0,0,0,.6);overflow:hidden;opacity:0;transform:translateY(14px);transition:opacity .25s,transform .25s,bottom .25s}
.promo.aperta{opacity:1;transform:none}
.barra-visibile .promo{bottom:96px}
.promo-x{position:absolute;top:6px;right:6px;z-index:2;width:44px;height:44px;display:grid;place-items:center;border:0;border-radius:50%;background:rgba(0,0,0,.62);color:#fff;cursor:pointer}
.promo-x:hover,.promo-x:focus-visible{background:rgba(232,23,46,.9)}
.promo-x:focus-visible{outline:2px solid #fff;outline-offset:2px}
.promo-x .i{width:20px;height:20px}
.promo-slide{display:none;color:#fff;text-decoration:none}
.promo-slide.attiva{display:block}
.promo-slide img{display:block;width:100%;height:auto;max-height:46vh;object-fit:cover}
.promo-testo{display:flex;flex-direction:column;gap:6px;padding:12px 14px 14px}
.promo-testo strong{font-size:1rem;line-height:1.25}
.promo-cta{align-self:flex-start;padding:7px 14px;border-radius:999px;background:rgb(232,23,46);font-weight:800;font-size:.85rem}
a.promo-slide:hover .promo-cta,a.promo-slide:focus-visible .promo-cta{background:#ff3050}
a.promo-slide:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.promo-punti{display:flex;justify-content:center;gap:8px;padding:2px 0 12px}
.promo-punti button{width:12px;height:12px;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.3);cursor:pointer}
.promo-punti button[aria-current]{background:#fff}
@media (max-width:640px){.promo{right:10px;width:min(260px,calc(100vw - 20px))}.barra-visibile .promo{bottom:150px}.promo-slide img{max-height:34vh}}
@media (prefers-reduced-motion:reduce){.promo{transition:none}}

/* v5aq - etichetta dell'anteprima promo (si vede solo dall'admin) */
.promo-anteprima{margin:0;padding:6px 52px 6px 12px;background:#2ecc71;color:#04210f;font:800 .7rem/1.3 Montserrat,sans-serif;letter-spacing:.06em}

/* v5ar - la promo sale lentamente da sotto il bordo dello schermo e, chiudendo, scende piu' in fretta */
.promo{opacity:1;transform:translateY(calc(100% + 40px));transition:transform .9s cubic-bezier(.22,1,.36,1),bottom .4s ease}
.promo.aperta{transform:none}
.promo:not(.aperta){transition:transform .4s ease-in,bottom .4s ease}
@media (prefers-reduced-motion:reduce){
  .promo{transform:none;opacity:0;transition:opacity .01s}
  .promo.aperta{opacity:1}
  .promo:not(.aperta){transition:opacity .01s}
}

/* v5as - la X sta in una barretta sopra la locandina (non la copre) e l'immagine si vede intera, senza tagli */
.promo-testata{display:flex;align-items:center;justify-content:space-between;min-height:40px;padding:0 2px 0 12px;background:#150d0e;border-bottom:1px solid rgba(255,255,255,.08)}
.promo-eti{font:800 .64rem/1 Montserrat,sans-serif;letter-spacing:.14em;color:#9a8f8f;text-transform:uppercase}
.promo-eti.anteprima{color:#2ecc71}
.promo-x{position:static;width:40px;height:40px;flex:none;border-radius:8px;background:transparent;color:#d8cfcf}
.promo-x:hover,.promo-x:focus-visible{background:rgba(232,23,46,.9);color:#fff}
.promo-x .i{width:18px;height:18px}
.promo-slide img{max-height:68vh;object-fit:contain;background:#000}
.promo-anteprima{display:none}
@media (max-width:640px){.promo-slide img{max-height:50vh}}

/* v5at - anteprima: pulsante per rivedere il ciclo da capo */
.promo-rivedi{position:fixed;right:16px;bottom:16px;z-index:55;padding:11px 18px;border:0;border-radius:999px;background:#2ecc71;color:#04210f;font:800 .82rem/1 Montserrat,sans-serif;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.5);transition:bottom .4s ease}
.promo-rivedi:hover,.promo-rivedi:focus-visible{background:#43e086}
.barra-visibile .promo-rivedi{bottom:96px}
@media (max-width:640px){.barra-visibile .promo-rivedi{bottom:150px}}

/* v5au - promo nello stile Radio Batticuore: scuro con bordo rosso al neon, barretta in rosso, X ad anello luminoso */
.promo{background:#0a0506;border:1.5px solid #e8172e;border-radius:18px;
  box-shadow:0 0 0 1px rgba(232,23,46,.22),0 0 16px rgba(232,23,46,.55),0 0 40px rgba(232,23,46,.25),0 18px 40px rgba(0,0,0,.7)}
.promo-testata{min-height:42px;padding:0 4px 0 14px;background:linear-gradient(180deg,#340c14 0%,#150609 100%);border-bottom:1px solid rgba(232,23,46,.65)}
.promo-eti{display:flex;align-items:center;gap:9px;color:#fff;font:800 .7rem/1 Montserrat,sans-serif;letter-spacing:.2em;text-shadow:0 0 10px rgba(232,23,46,.95)}
.promo-eti::before{content:"";flex:none;width:8px;height:8px;border-radius:50%;background:#e8172e;box-shadow:0 0 8px #e8172e,0 0 14px rgba(232,23,46,.7)}
.promo-eti.anteprima{text-shadow:none;color:#7dffb0}
.promo-eti.anteprima::before{background:#2ecc71;box-shadow:0 0 8px #2ecc71}
.promo-x{position:relative;width:42px;height:42px;border:0;border-radius:0;background:transparent;color:#fff}
.promo-x::before{content:"";position:absolute;inset:7px;border:1.5px solid #e8172e;border-radius:50%;background:rgba(232,23,46,.14);box-shadow:0 0 9px rgba(232,23,46,.65);transition:background .15s,box-shadow .15s}
.promo-x .i{position:relative;width:15px;height:15px}
.promo-x:hover,.promo-x:focus-visible{background:transparent;color:#fff}
.promo-x:hover::before,.promo-x:focus-visible::before{background:#e8172e;box-shadow:0 0 14px rgba(232,23,46,.95)}
.promo-x:focus-visible{outline:2px solid #fff;outline-offset:-4px;border-radius:10px}
.promo-testo{background:linear-gradient(180deg,#150609,#0a0506);border-top:1px solid rgba(232,23,46,.45)}
.promo-cta{background:#12060a;border:1.5px solid #e8172e;color:#fff;box-shadow:0 0 10px rgba(232,23,46,.5);letter-spacing:.04em}
a.promo-slide:hover .promo-cta,a.promo-slide:focus-visible .promo-cta{background:#e8172e;box-shadow:0 0 16px rgba(232,23,46,.9)}
.promo-punti{background:#0a0506}
.promo-punti button{background:rgba(255,255,255,.28)}
.promo-punti button[aria-current]{background:#e8172e;box-shadow:0 0 8px #e8172e}
.promo-rivedi{background:#12060a;border:1.5px solid #e8172e;color:#fff;box-shadow:0 0 14px rgba(232,23,46,.6)}
.promo-rivedi:hover,.promo-rivedi:focus-visible{background:#e8172e}

/* v5av - frecce < > e puntini: stanno sotto la locandina, non la coprono */
.promo-punti{display:flex;align-items:center;justify-content:center;gap:8px;padding:4px 6px 10px}
.promo-punti .promo-punto{flex:none}
.promo-freccia{position:relative;flex:none;width:40px;height:40px;padding:0;border:0;background:transparent;color:#fff;cursor:pointer;display:grid;place-items:center}
.promo-freccia::before{content:"";position:absolute;inset:7px;border:1.5px solid #e8172e;border-radius:50%;background:rgba(232,23,46,.14);box-shadow:0 0 8px rgba(232,23,46,.55);transition:background .15s,box-shadow .15s}
.promo-freccia .i{position:relative;width:14px;height:14px}
.promo-freccia:hover::before,.promo-freccia:focus-visible::before{background:#e8172e;box-shadow:0 0 13px rgba(232,23,46,.95)}
.promo-freccia:focus-visible{outline:2px solid #fff;outline-offset:-4px;border-radius:10px}
