/* Architettura condivisa, palette e materiale grafico dell'edizione 2025.
   FONTI: main.css originale 2025; colori #C91A80, #5D3975, #1A1D20.
   Questo foglio si applica SOLO a body[data-edizione="2025"]. */
body[data-edizione="2025"] {
  --purple: #5D3975;
  --purple-deep: #1A1D20;
  --purple-ink: #352340;
  --magenta: #C91A80;
  --magenta-deep: #A20F61;
}
body[data-edizione="2025"] .site-header{background:rgba(26,29,32,.98)}
body[data-edizione="2025"] .hero{background:linear-gradient(115deg,#1A1D20 0%,#382741 62%,#5D3975 100%)}
body[data-edizione="2025"] .hero::after{opacity:.16}
body[data-edizione="2025"] .hero-edition-logo{background:rgba(255,255,255,.07)}
body[data-edizione="2025"] .hero-visual-image{object-fit:contain;background:#241b2b}
body[data-edizione="2025"] .hero-bottom{background:rgba(26,29,32,.45)}
body[data-edizione="2025"] .archive-description{display:block;color:#d2bed9;font:400 12px/1.5 var(--serif);margin-top:7px}
body[data-edizione="2025"] .archive-card{min-height:162px}
body[data-edizione="2025"] .archive-2025-program .event-card{min-height:0}
body[data-edizione="2025"] .archive-2025-program .event-content{min-width:0}
body[data-edizione="2025"] .archive-2025-rich-copy{color:#3e3741;font-size:16px;line-height:1.65;overflow-wrap:anywhere}
body[data-edizione="2025"] .archive-2025-rich-copy p{margin:0 0 12px}
body[data-edizione="2025"] .archive-2025-rich-copy strong{font-weight:700}
body[data-edizione="2025"] .archive-2025-rich-copy a{color:#5d3975;text-decoration:underline;text-underline-offset:3px}
body[data-edizione="2025"] .archive-2025-rich-copy ul{padding-left:21px}
body[data-edizione="2025"] .archive-2025-media{border:1px solid #e1d7e6;border-radius:8px;padding:13px 15px;margin-top:15px;color:var(--purple);font-size:13px}
body[data-edizione="2025"] .archive-2025-media summary{cursor:pointer;font-weight:700}
body[data-edizione="2025"] .archive-2025-media p{color:#665f67;font-size:12px}
body[data-edizione="2025"] .archive-2025-media ul{max-height:250px;overflow:auto;padding-left:18px}
body[data-edizione="2025"] .archive-2025-media li{margin:6px 0;overflow-wrap:anywhere}
body[data-edizione="2025"] .archive-2025-media a{text-decoration:underline;text-underline-offset:2px}
body[data-edizione="2025"] .archive-2025-rich-source{color:#382d3d;line-height:1.65}
body[data-edizione="2025"] .archive-2025-rich-source .row{display:flex;gap:32px;flex-wrap:wrap}
body[data-edizione="2025"] .archive-2025-rich-source .col-lg-6, body[data-edizione="2025"] .archive-2025-rich-source .col-md-6{flex:1 1 350px;min-width:0}
body[data-edizione="2025"] .archive-2025-rich-source .col-12{flex:1 1 100%}
body[data-edizione="2025"] .archive-2025-rich-source h2{font:700 30px/1.25 var(--head);margin:0 0 20px;color:var(--purple)}
body[data-edizione="2025"] .archive-2025-rich-source h3{font:700 20px/1.4 var(--head);color:var(--purple)}
body[data-edizione="2025"] .archive-2025-rich-source p{margin:0 0 16px}
body[data-edizione="2025"] .archive-2025-rich-source a{color:var(--purple);text-decoration:underline}
body[data-edizione="2025"] .archive-2025-rich-source details{margin:26px 0;border:1px solid #e5d9e7;border-radius:9px;padding:19px;background:#fcfafe}
body[data-edizione="2025"] .archive-2025-rich-source summary{cursor:pointer;font-weight:700;color:#5D3975}
body[data-edizione="2025"] .archive-2025-rich-source ul.villaggio-associazioni{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;list-style:none;margin:18px 0}
body[data-edizione="2025"] .archive-2025-rich-source ul.villaggio-associazioni li{padding:11px 13px;border:1px solid #e7dfe9;border-radius:7px;background:white;font-size:13px;line-height:1.35;overflow-wrap:anywhere}
body[data-edizione="2025"] .archive-2025-rich-source .info-box{padding:22px;border:1px solid #e1d5e4;background:white;border-radius:10px}
body[data-edizione="2025"] .archive-2025-partner-board{border:1px solid #ece4ef;border-radius:12px;padding:22px;background:#fff}
body[data-edizione="2025"] .archive-2025-partner-board img{max-width:100%;height:auto;margin-inline:auto}
body[data-edizione="2025"] .archive-2025-partner-board a{color:var(--purple);font:700 13px/1.4 var(--head);display:block}
body[data-edizione="2025"] .archive-2025-partner-board span{display:block;text-align:center;margin-top:17px}
body[data-edizione="2025"] .guest-content .guest-archive-session{margin-top:10px;font-weight:700;color:var(--purple)}
@media(max-width:700px){body[data-edizione="2025"] .archive-2025-rich-source ul.villaggio-associazioni{grid-template-columns:1fr}body[data-edizione="2025"] .archive-2025-partner-board{padding:10px}}

/* Edizione 2025: gerarchia e cromie ricavate dal sito originale. Nessun effetto sul 2026. */
body[data-edizione="2025"] {
  --ink: #222222;
  --ink-subtle: #64616a;
  --paper: #f8f9fa;
  --purple: #5d3975;
  --magenta: #c91a80;
  --purple-deep: #1a1d20;
  color: var(--ink);
  font-size: 16px;
}
body[data-edizione="2025"] .section{padding-block:clamp(46px,5vw,70px)}
body[data-edizione="2025"] .section-top{margin-bottom:26px;align-items:start}
body[data-edizione="2025"] .section-heading,
body[data-edizione="2025"] .archive-2025-rich-source h2{font:600 clamp(27px,2.75vw,39px)/1.24 var(--head);letter-spacing:-.015em;color:inherit}
body[data-edizione="2025"] .section-heading::after{margin-top:13px;width:60px;height:3px}
body[data-edizione="2025"] .section-intro{font:400 15px/1.55 var(--serif);max-width:560px}
body[data-edizione="2025"] .hero{background:linear-gradient(115deg,#1a1d20 0%,#34233b 58%,#5d3975 100%);min-height:0}
body[data-edizione="2025"] .hero-inner{padding-block:45px 57px;gap:40px}
body[data-edizione="2025"] .hero-eyebrow{font:500 13px/1.5 var(--serif);text-transform:none;letter-spacing:0;margin-bottom:22px}
body[data-edizione="2025"] .hero-heading-group .hero-title-small{font-size:clamp(23px,2.3vw,31px)}
body[data-edizione="2025"] .hero-heading-group .hero-title-big{font-size:clamp(34px,3.6vw,52px)}
body[data-edizione="2025"] .hero-heading-group .hero-title-year{font-size:clamp(42px,4vw,59px);color:#fff}
body[data-edizione="2025"] .hero-heading-group{gap:clamp(14px,1.6vw,24px)}
body[data-edizione="2025"] .hero-edition-logo{flex-basis:110px;width:110px;min-height:120px}
body[data-edizione="2025"] .hero-theme{margin-top:16px;font:500 clamp(20px,2.1vw,29px)/1.3 var(--head)}
body[data-edizione="2025"] .hero-details{margin-top:14px;font:400 14px/1.6 var(--serif);white-space:normal}
body[data-edizione="2025"] .hero-actions{margin-top:16px}
body[data-edizione="2025"] .hero-connect{margin-top:23px;padding-top:18px}
body[data-edizione="2025"] .hero-visual{min-height:0;aspect-ratio:1/1;box-shadow:none;border-radius:4px}
body[data-edizione="2025"] .hero-visual-image{width:100%;height:100%;object-fit:contain;background:transparent}
body[data-edizione="2025"] .hero::after{display:none}
body[data-edizione="2025"] .theme-copy p{font:400 16px/1.65 var(--serif);color:#272727;margin-top:0}
body[data-edizione="2025"] .theme-copy blockquote{font:500 16px/1.7 var(--serif);background:#fff2f8;border:0;border-radius:6px;padding:18px 20px;margin-top:18px;color:#5d3975}
body[data-edizione="2025"] .archive-2025-program-heading{align-items:start}
body[data-edizione="2025"] .archive-2025-free-entry{font:600 17px/1.4 var(--head);text-align:center;margin:0 0 30px;color:#222}
body[data-edizione="2025"] .day-panel-intro h3{color:#5d3975;font:600 clamp(23px,2.15vw,28px)/1.3 var(--head)}
body[data-edizione="2025"] .event-content h4{font:700 clamp(19px,1.8vw,24px)/1.35 var(--head);color:#c91a80}
body[data-edizione="2025"] .event-card{grid-template-columns:84px minmax(0,1fr) 22px;border-radius:10px}
body[data-edizione="2025"] .event-time{gap:6px;justify-content:flex-start;color:#655967;font-size:13px}
body[data-edizione="2025"] .event-time svg{width:16px;height:16px;flex-shrink:0}
body[data-edizione="2025"] .archive-2025-rich-copy{font:400 16px/1.57 var(--serif);color:var(--bs-body-color);overflow-wrap:anywhere}
body[data-edizione="2025"] .archive-2025-rich-copy .row{display:grid;grid-template-columns:minmax(0,3fr) minmax(155px,1fr);gap:19px;align-items:start}
body[data-edizione="2025"] .archive-2025-rich-copy .row > *{min-width:0}
body[data-edizione="2025"] .archive-2025-rich-copy .row .img-fluid{height:auto;width:100%;object-fit:contain}
body[data-edizione="2025"] .archive-2025-rich-copy .small{font-size:14px}
body[data-edizione="2025"] .archive-2025-rich-copy .guest-name{color:#c91a80;font-weight:700}
body[data-edizione="2025"] .archive-2025-rich-copy .program-location{color:#5d3975;font-weight:600}
body[data-edizione="2025"] .archive-2025-rich-copy .ms-2{margin-inline-start:.5rem}
body[data-edizione="2025"] .archive-2025-rich-copy .ms-4{margin-inline-start:1.4rem}
body[data-edizione="2025"] .archive-2025-rich-copy .mb-0{margin-bottom:0}
body[data-edizione="2025"] .archive-2025-rich-copy .mb-2{margin-bottom:.5rem}
body[data-edizione="2025"] .archive-2025-rich-copy .mt-2{margin-top:.5rem}
body[data-edizione="2025"] .archive-2025-inline-icon{display:inline-flex;vertical-align:-.13em;color:currentColor;margin-right:.23em}
body[data-edizione="2025"] .archive-2025-inline-icon svg{width:15px;height:15px;stroke-width:2;flex:0 0 15px}
body[data-edizione="2025"] .archive-2025-rich-source h2{margin-bottom:21px}
body[data-edizione="2025"] .archive-2025-rich-source .section-title::after{content:"";display:block;width:60px;height:3px;background:#c91a80;margin-top:12px}
body[data-edizione="2025"] .archive-2025-rich-source .program-location{color:#5d3975;font-weight:600}
body[data-edizione="2025"] .archive-2025-rich-source .guest-name{color:#c91a80;font-weight:700}
body[data-edizione="2025"] .archive-2025-rich-source .small{font-size:14px}
body[data-edizione="2025"] .archive-2025-rich-source ul.villaggio-associazioni{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
body[data-edizione="2025"] .archive-2025-rich-source ul.villaggio-associazioni li{font-size:13px;background:#f8f9fa;border-color:#f0f1f2;padding:8px 10px}
body[data-edizione="2025"] .archive-2025-partner-board{margin-top:28px;border:0;padding:0;border-radius:0;background:none}
body[data-edizione="2025"] .archive-2025-partner-board img{width:100%;max-width:100%;height:auto}
body[data-edizione="2025"] .guest-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body[data-edizione="2025"] .guest-content h3{font:700 21px/1.3 var(--head);color:#c91a80}
body[data-edizione="2025"] .guest-role{color:#5d3975}
body[data-edizione="2025"] .guest-biography{font-size:15px;line-height:1.55}
body[data-edizione="2025"] .guest-biography p{margin:0}
body[data-edizione="2025"] .guest-content .guest-archive-session{font-size:13px}
body[data-edizione="2025"] .archive-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
body[data-edizione="2025"] .archive-card{min-height:165px}
body[data-edizione="2025"] .archive-card .archive-title{font:600 15px/1.4 var(--head)}
body[data-edizione="2025"] .archive-card .archive-year{font-size:25px}
body[data-edizione="2025"] .archive-description{font-size:13px;line-height:1.55}
body[data-edizione="2025"] .site-footer{background:#212529}
body[data-edizione="2025"] .historic-footer-social{display:flex;gap:13px}
body[data-edizione="2025"] .historic-footer-social a{display:grid;place-items:center;border:1px solid rgba(255,255,255,.54);border-radius:50%;width:40px;height:40px}
body[data-edizione="2025"] .historic-footer-social svg{width:20px;height:20px}

/* Sequenza di gallerie dell'edizione 2025, ricostruita con le fotografie autentiche. */
.archive-2025-gallery{margin:22px 0 15px;padding:14px 0 11px;border-block:1px solid #ebe4ec;min-width:0}
.archive-2025-gallery-toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:11px}
.archive-2025-media-count{color:#756878;font:600 12px/1.35 var(--head)}
.archive-2025-gallery-actions{display:flex;gap:8px}
.archive-2025-gallery-actions button{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;border:1px solid #cfc2d4;background:white;color:#5d3975;font-size:19px;line-height:1;cursor:pointer}
.archive-2025-gallery-actions button:hover,.archive-2025-gallery-actions button:focus-visible{background:#5d3975;color:#fff}
.archive-2025-gallery-track{display:flex;gap:12px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#9b6c9d #eee7ef;min-width:0;padding-bottom:7px}
.archive-2025-gallery-slide{flex:0 0 clamp(230px,58%,480px);width:clamp(230px,58%,480px);min-width:0;margin:0;scroll-snap-align:start;position:relative;border:1px solid #e8dfe9;border-radius:8px;overflow:hidden;background:#f2edf4}
.archive-2025-gallery-slide img{width:100%;height:clamp(180px,21vw,275px);object-fit:cover;display:block;transition:filter .2s}
.archive-2025-gallery-slide a:hover img{filter:brightness(.93)}
.archive-2025-gallery-slide a:focus-visible{outline-offset:-5px}
.archive-2025-video{display:flex;flex-direction:column;min-height:240px;background:#201825;color:#fff}
.archive-2025-video-placeholder{display:grid;place-items:center;flex:1;min-height:210px}
.archive-2025-video-play{display:flex;flex-direction:column;align-items:center;gap:12px;border:1px solid rgba(255,255,255,.44);background:rgba(255,255,255,.16);border-radius:9px;color:#fff;font:700 15px/1.3 var(--head);padding:20px;cursor:pointer}
.archive-2025-video-play svg{width:45px;height:45px}
.archive-2025-video-play:hover{background:rgba(255,255,255,.26)}
.archive-2025-video iframe{display:block;aspect-ratio:16/9;border:0;width:100%;height:auto;min-height:220px}
.archive-video-external{color:#fff;font:700 12px/1.4 var(--head);text-align:center;padding:7px}
.archive-2025-video-close{position:absolute;top:6px;right:8px;padding:6px 10px;background:#fff;color:#241830;border-radius:6px;border:1px solid #e5dce9;font:700 11px var(--head);z-index:2}
@media(max-width:900px){
  body[data-edizione="2025"] .archive-2025-rich-source ul.villaggio-associazioni{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-edizione="2025"] .archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body[data-edizione="2025"] .archive-2025-rich-copy .row{grid-template-columns:minmax(0,2fr) minmax(120px,1fr)}
}
@media(max-width:700px){
  body[data-edizione="2025"] .section-top{flex-direction:column;align-items:start;gap:15px}
  body[data-edizione="2025"] .hero-inner{padding-block:40px 45px;gap:20px}
  body[data-edizione="2025"] .hero-heading-group .hero-title-big{font-size:37px}
  body[data-edizione="2025"] .hero-heading-group .hero-title-year{font-size:45px}
  body[data-edizione="2025"] .hero-visual{aspect-ratio:4/3}
  body[data-edizione="2025"] .guest-grid{grid-template-columns:1fr}
  body[data-edizione="2025"] .archive-2025-rich-source ul.villaggio-associazioni{grid-template-columns:1fr}
  body[data-edizione="2025"] .archive-grid{grid-template-columns:1fr}
  body[data-edizione="2025"] .event-card{grid-template-columns:minmax(0,1fr) 20px}
  body[data-edizione="2025"] .event-time{grid-column:1/-1}
  body[data-edizione="2025"] .archive-2025-rich-copy .row{grid-template-columns:1fr}
  .archive-2025-gallery-slide{flex-basis:85%;width:85%}
  .archive-2025-gallery-slide img{height:220px}
}

body[data-edizione="2025"] .hero-visual{aspect-ratio:16/9;min-height:0}
body[data-edizione="2025"] .hero-visual-image{object-fit:cover}
body[data-edizione="2025"] .legacy-anchor{display:block;height:0;scroll-margin-top:115px}

/* 2025: icone e CTA di condivisione riprese dall'HTML originario, non menu inventati. */
body[data-edizione="2025"] .archive-2025-share{border-top:1px solid #e3e0e4;margin-top:18px;padding-top:13px}
body[data-edizione="2025"] .archive-2025-share .program-share{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
body[data-edizione="2025"] .archive-2025-share .program-share > .small{font-size:13px;margin-right:8px;color:#5e5860}
body[data-edizione="2025"] .archive-2025-share .program-share .btn{display:grid;place-items:center;width:35px;height:33px;border:1px solid #c8c7c9;border-radius:6px;background:#fff;color:#5d3975;text-decoration:none;transition:background .17s,color .17s}
body[data-edizione="2025"] .archive-2025-share .program-share .btn:hover,
body[data-edizione="2025"] .archive-2025-share .program-share .btn:focus-visible{background:#5d3975;color:white}
body[data-edizione="2025"] .archive-2025-share .archive-2025-inline-icon{margin:0}
body[data-edizione="2025"] .archive-2025-share .archive-2025-inline-icon svg{width:17px;height:17px}
body[data-edizione="2025"] .archive-2025-gallery-toolbar{justify-content:flex-end}

/* Nel programma storico tutti gli eventi hanno lo stesso tipo:
   il filtro tipologia a scelta unica non fornisce alcuna funzione utile. */
body[data-edizione="2025"] .archive-2025-program .filter-controls{display:block}
body[data-edizione="2025"] .archive-2025-program .search-holder{width:100%}

body[data-edizione="2025"] .archive-card .archive-title svg{display:inline-block;width:16px;height:16px;vertical-align:-.15em;margin-right:5px;flex-shrink:0}

/* v0.4.7 - Rifinitura circoscritta alla migrazione 2025, senza effetti sul 2026. */
body[data-edizione="2025"] .event-time{
  display:flex;flex-direction:row;align-items:center;justify-content:flex-start;
  align-self:start;gap:7px;padding-top:5px;padding-right:8px;
  white-space:nowrap;min-width:0;color:#54515b;
}
body[data-edizione="2025"] .event-time>span{
  display:inline-block;font:700 19px/1.25 var(--head);
  font-variant-numeric:tabular-nums;white-space:nowrap;
}
body[data-edizione="2025"] .event-time svg{width:17px;height:17px;display:block;flex:0 0 17px;stroke-width:1.4}
body[data-edizione="2025"] .section-intro{color:#504752;line-height:1.6;text-wrap:pretty}
body[data-edizione="2025"] .archive-2025-rich-copy{
  color:var(--bs-body-color);overflow-wrap:break-word;word-break:normal;hyphens:auto;
}
body[data-edizione="2025"] .archive-2025-rich-copy .small{font-size:14px}
body[data-edizione="2025"] .archive-2025-rich-copy .row{
  grid-template-columns:minmax(0,3.1fr) minmax(165px,1fr);gap:clamp(16px,1.5vw,28px);
}
body[data-edizione="2025"] .archive-2025-rich-copy .row a{
  overflow-wrap:break-word;word-break:normal;
}
body[data-edizione="2025"] .event-card{column-gap:18px}
body[data-edizione="2025"] .event-anchor{display:inline-grid;place-items:center;min-width:27px;min-height:27px}
body[data-edizione="2025"] .event-anchor svg{width:19px;height:19px;stroke-width:1.6}
body[data-edizione="2025"] .event-content h4{line-height:1.27;text-wrap:pretty}
body[data-edizione="2025"] .archive-2025-inline-icon{vertical-align:-.14em;margin-right:.22em}
body[data-edizione="2025"] .archive-2025-inline-icon svg{width:16px;height:16px;stroke-width:1.3}
body[data-edizione="2025"] .archive-2025-gallery-actions svg{width:19px;height:19px;stroke-width:1.5}
body[data-edizione="2025"] .hero-heading-group{align-items:center}
body[data-edizione="2025"] .hero-copy{min-width:0}
body[data-edizione="2025"] .hero-eyebrow,
body[data-edizione="2025"] .hero-details{overflow-wrap:normal;word-break:normal;text-wrap:pretty}
body[data-edizione="2025"] .hero-details{max-width:72ch}
body[data-edizione="2025"] .hero-newsletter{gap:12px 16px}
body[data-edizione="2025"] .hero-newsletter p{flex:1 1 250px;min-width:0}
body[data-edizione="2025"] .hero-newsletter a{flex:0 0 auto;max-width:100%;min-width:0;text-align:center}
body[data-edizione="2025"] .hero-actions svg,
body[data-edizione="2025"] .hero-newsletter svg,
body[data-edizione="2025"] .nav-newsletter svg{width:14px;height:14px;flex:0 0 14px}
body[data-edizione="2025"] .hero-social-links>a{min-width:42px;min-height:42px}
body[data-edizione="2025"] .hero-social-links>a svg{width:19px;height:19px;stroke-width:1.3}
body[data-edizione="2025"] .hero-social-links .hero-event-social{min-height:42px;white-space:normal;text-align:left}
body[data-edizione="2025"] .guest-card{border-radius:8px;display:flex;flex-direction:column}
body[data-edizione="2025"] .guest-content{display:flex;flex-direction:column;flex:1;min-width:0}
body[data-edizione="2025"] .guest-content .guest-biography{flex:1 0 auto}
body[data-edizione="2025"] .guest-content .guest-archive-session{
  display:block;margin-top:18px;padding-top:13px;border-top:1px solid #e7e0ea;
  color:#5d3975;font:600 14px/1.4 var(--head);
}
body[data-edizione="2025"] .guest-session-heading{display:flex;align-items:center;gap:7px;margin:0 0 7px;font:700 13px/1.4 var(--head);color:#5d3975}
body[data-edizione="2025"] .guest-session-heading svg{width:17px;height:17px;flex:0 0 17px}
body[data-edizione="2025"] .guest-archive-session>a{color:#5d3975;line-height:1.45;display:inline-block;text-decoration:underline;text-underline-offset:3px}
body[data-edizione="2025"] .guest-archive-session>a:focus-visible{outline:2px solid #c91a80;outline-offset:2px}
/* Le anteprime sono fotografie autentiche dell'incontro archiviate localmente;
   NON vanno etichettate come miniature ufficiali YouTube. */
body[data-edizione="2025"] .archive-2025-video-placeholder{
  position:relative;display:grid;place-items:center;overflow:hidden;
  width:100%;aspect-ratio:16/9;min-height:0;background:#24182b;
}
body[data-edizione="2025"] .archive-2025-video-placeholder[hidden]{display:none!important}
body[data-edizione="2025"] .archive-2025-video-poster{
  position:absolute;inset:0;width:100%;height:100%;display:block;object-fit:cover;
  filter:brightness(.81);transition:filter .2s ease,transform .3s ease;
}
body[data-edizione="2025"] .archive-2025-video-play{
  z-index:1;position:absolute;inset:0;width:100%;height:100%;display:flex;
  flex-direction:column;align-items:center;justify-content:center;gap:11px;
  color:white;border:0;border-radius:0;background:linear-gradient(to top,rgba(20,11,28,.4),rgba(20,11,28,.07) 55%);
  cursor:pointer;padding:14px;
}
body[data-edizione="2025"] .archive-2025-video-play:hover,
body[data-edizione="2025"] .archive-2025-video-play:focus-visible{background:linear-gradient(to top,rgba(20,11,28,.55),rgba(20,11,28,.1) 55%)}
body[data-edizione="2025"] .archive-2025-video-play-icon{
  display:grid;place-items:center;width:66px;height:66px;border-radius:50%;
  border:1px solid rgba(255,255,255,.59);background:rgba(255,255,255,.24);
  transition:background .16s ease, transform .16s ease;
}
body[data-edizione="2025"] .archive-2025-video-play-icon svg{width:28px;height:28px;color:rgba(255,255,255,.95);fill:currentColor}
body[data-edizione="2025"] .archive-2025-video-play-text{font:700 13px/1.3 var(--head);text-shadow:0 1px 7px rgba(0,0,0,.8)}
body[data-edizione="2025"] .archive-2025-video-play:hover .archive-2025-video-play-icon{background:rgba(255,255,255,.34);transform:scale(1.06)}
body[data-edizione="2025"] .archive-2025-video-placeholder--poster:hover .archive-2025-video-poster{filter:brightness(.9);transform:scale(1.02)}
body[data-edizione="2025"] .archive-2025-video iframe{aspect-ratio:16/9;min-height:0;flex:0 0 auto}
body[data-edizione="2025"] .archive-video-external{position:relative;z-index:1;min-height:32px}
body[data-edizione="2025"] .archive-2025-video-close{cursor:pointer;min-height:37px}
@media(max-width:900px){
 body[data-edizione="2025"] .archive-2025-rich-copy .row{grid-template-columns:minmax(0,2fr) minmax(130px,1fr);gap:16px}
}
@media(max-width:700px){
 body[data-edizione="2025"] .event-time{grid-column:1/-1;min-height:0;padding:0 0 9px;border-right:0;border-bottom:1px solid #ebe5ed}
 body[data-edizione="2025"] .archive-2025-rich-copy .row{grid-template-columns:minmax(0,1fr);gap:12px}
 body[data-edizione="2025"] .hero-heading-group{gap:13px}
 body[data-edizione="2025"] .hero-newsletter a{max-width:100%}
 body[data-edizione="2025"] .hero-social-links{gap:7px 9px}
 body[data-edizione="2025"] .guest-card{border-radius:8px}
}
@media(prefers-reduced-motion:reduce){
 body[data-edizione="2025"] .archive-2025-video-poster,
 body[data-edizione="2025"] .archive-2025-video-play-icon{transition:none}
}
@media(max-width:360px){
 body[data-edizione="2025"] .hero-heading-group{gap:9px}
 body[data-edizione="2025"] .hero-edition-logo{flex-basis:65px;width:65px;min-height:78px}
 body[data-edizione="2025"] .hero-heading-group h1{min-width:0}
 body[data-edizione="2025"] .hero-heading-group .hero-title-small{font-size:22px}
 body[data-edizione="2025"] .hero-heading-group .hero-title-big{font-size:clamp(25px,8.25vw,30px)}
 body[data-edizione="2025"] .hero-heading-group .hero-title-year{font-size:45px}
 body[data-edizione="2025"] .day-switcher{max-width:100vw}
}
@media(max-width:700px){
 body[data-edizione="2025"] .archive-2025-share .program-share{gap:6px}
 body[data-edizione="2025"] .archive-2025-share .program-share>.small{
   flex:1 0 100%;font-size:13px;margin:0 0 2px;
 }
 body[data-edizione="2025"] .archive-2025-share .program-share .btn{
   width:38px;height:38px;min-width:38px;min-height:38px;
 }
}

/* v0.4.9 - Bootstrap 5.3.8 locale come nella sorgente originaria 2025.
   Bootstrap viene caricato solo per l'edizione storica, PRIMA del template.
   La palette annuale e i moduli migrati rimangono governati dai CSS dell'edizione. */
body[data-edizione="2025"] {
  --bs-body-color: #212529;
  --ink: var(--bs-body-color);
  color: var(--bs-body-color);
}
body[data-edizione="2025"] .archive-2025-rich-copy,
body[data-edizione="2025"] .archive-2025-rich-source,
body[data-edizione="2025"] .guest-biography,
body[data-edizione="2025"] .theme-copy p {
  color: var(--bs-body-color);
}
/* I testi introduttivi su fondo chiaro restano secondari ma leggibili. */
body[data-edizione="2025"] .section:not(.section--dark) .section-intro {
  color: var(--bs-secondary-color);
}
/* Il selettore precedente .section-intro prevaleva erroneamente sul tema scuro. */
body[data-edizione="2025"] .section--dark .section-intro {
  color: #e3e5e8;
  max-width: 600px;
}
/* Le schede delle vecchie edizioni devono rimanere leggibili e riconoscibili
   come collegamenti anche senza hover, e navigabili da tastiera. */
body[data-edizione="2025"] .section--dark .archive-card {
  background: #23272b;
  border-color: #767d83;
}
body[data-edizione="2025"] .section--dark .archive-card .archive-title {
  color: #f6f2f8;
  max-width: none;
  font-size: 16px;
  line-height: 1.47;
}
body[data-edizione="2025"] .section--dark .archive-card .archive-description {
  color: #e3dae6;
  font-size: 14px;
  line-height: 1.6;
}
body[data-edizione="2025"] .section--dark .archive-card .archive-year {color: #fff;}
body[data-edizione="2025"] .section--dark .archive-card .archive-arrow {color: #f4bddd;}
body[data-edizione="2025"] .section--dark .archive-card:hover,
body[data-edizione="2025"] .section--dark .archive-card:focus-visible {
  background: #3a2e40;
}
body[data-edizione="2025"] .section--dark .archive-card:focus-visible {
  outline: 3px solid #f4bddd;
  outline-offset: 3px;
}
/* 'Partecipa all'incontro' segue immediatamente la biografia. La parte vuota
   delle card piu brevi rimane SOTTO il link, non tra testo e collegamento. */
body[data-edizione="2025"] .guest-content .guest-biography {
  flex: 0 0 auto;
}
body[data-edizione="2025"] .guest-content .guest-archive-session {
  margin-top: 13px;
  padding-top: 11px;
}
/* La lista dei 55 enti lascia la prima colonna dell'introduzione, mantenendo
   invariato il frammento storico e passando a una fascia a larghezza piena. */
body[data-edizione="2025"] #associazioni .archive-2025-village > .row {
  display: grid;
  grid-template-columns: minmax(0,1.25fr) minmax(0,.75fr);
  column-gap: clamp(24px,3vw,48px);
  row-gap: 20px;
  align-items: start;
}
body[data-edizione="2025"] #associazioni .archive-2025-village > .row > .col-lg-6 {
  flex: none;
  min-width: 0;
  width: auto;
}
body[data-edizione="2025"] #associazioni .archive-2025-village-directory {
  margin-top: clamp(20px,3vw,36px);
  width: 100%;
  min-width: 0;
}
body[data-edizione="2025"] #associazioni .archive-2025-village-directory details {
  margin: 0;
  padding: clamp(16px,2vw,27px);
  background: #faf8fc;
  border: 1px solid #d6cadb;
}
body[data-edizione="2025"] #associazioni .archive-2025-village-directory summary {
  font-size: 16px;
  line-height: 1.5;
  cursor: pointer;
}
body[data-edizione="2025"] #associazioni .archive-2025-village-directory summary:focus-visible {
  outline: 3px solid #5d3975;
  outline-offset: 5px;
}
/* v0.4.10 - La griglia governa le colonne: i .col Bootstrap non devono
   mantenere width:33.333% dentro ciascuna cella CSS Grid. */
body[data-edizione="2025"] #associazioni .archive-2025-village-directory ul.villaggio-associazioni {
  --bs-gutter-x: 0;
  --bs-gutter-y: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(12px, 1.4vw, 18px);
  align-items: stretch;
  width: 100%;
  min-width: 0;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}
body[data-edizione="2025"] #associazioni .archive-2025-village-directory ul.villaggio-associazioni > li.col {
  /* Neutralizza row-cols-* e i gutter di Bootstrap sul singolo elemento. */
  flex: none;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  height: 100%;
  margin: 0;
  padding: 12px 14px;
  box-sizing: border-box;
  color: var(--bs-body-color);
  font-size: 14px;
  line-height: 1.5;
  overflow-wrap: break-word;
  word-break: normal;
}
body[data-edizione="2025"] #associazioni .archive-2025-village-directory ul.villaggio-associazioni > li.col > .d-block.small {
  /* Il testo usa l'intera larghezza utile della propria tessera. */
  display: block;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  margin: 0;
  font-size: inherit;
  line-height: inherit;
  white-space: normal;
  overflow-wrap: anywhere;
}
/* Breakpoint uguali alle classi Bootstrap sm (576px) e lg (992px)
   riportate nel frammento HTML storico. */
@media (max-width: 991.98px) {
  body[data-edizione="2025"] #associazioni .archive-2025-village-directory ul.villaggio-associazioni {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 900px) {
  body[data-edizione="2025"] #associazioni .archive-2025-village > .row {
    grid-template-columns: minmax(0,1fr);
  }
}
@media (max-width: 575.98px) {
  body[data-edizione="2025"] #associazioni .archive-2025-village-directory ul.villaggio-associazioni {
    grid-template-columns: minmax(0, 1fr);
  }
  body[data-edizione="2025"] #associazioni .archive-2025-village-directory ul.villaggio-associazioni > li.col {
    padding: 11px 12px;
  }
}

/* v0.4.9 — Giorni: stile magenta del 2025 originale, navigazione sticky invariata.
   Le regole annuali sostituiscono la variante viola del template condiviso. */
body[data-edizione="2025"] .day-switcher .day-tab {
  background:#fff;
  color:var(--magenta);
  border:1px solid var(--magenta);
  box-shadow:none;
  text-decoration:none;
}
body[data-edizione="2025"] .day-switcher .day-tab .day-label,
body[data-edizione="2025"] .day-switcher .day-tab .day-arrow {
  color:inherit;
}
body[data-edizione="2025"] .day-switcher .day-tab:hover:not(.active) {
  background:#fff2f8;
  border-color:var(--magenta);
  color:#a20f61;
}
body[data-edizione="2025"] .day-switcher .day-tab.active,
body[data-edizione="2025"] .day-switcher .day-tab[aria-current="location"] {
  background:var(--magenta);
  border-color:var(--magenta);
  color:#fff;
}
body[data-edizione="2025"] .day-switcher .day-tab.active .day-match-count {
  background:rgba(255,255,255,.2);
  color:#fff;
}
body[data-edizione="2025"] .day-switcher .day-tab--has-matches:not(.active) {
  border-color:var(--magenta);
  box-shadow:inset 3px 0 var(--magenta);
}
body[data-edizione="2025"] .day-switcher .day-tab--no-matches:not(.active) {
  opacity:1;
  color:#586069;
  border-color:#a6aeb5;
}
body[data-edizione="2025"] .day-switcher .day-tab:focus-visible {
  outline:3px solid #40274d;
  outline-offset:3px;
}
/* Leggibilita' dello storico: superficie quasi nera, caratteri chiari e focus
   evidente senza cambiare le cromie identitarie dell'edizione. */
body[data-edizione="2025"] #edizioni.section--dark .section-intro {color:#e3e5e8}
body[data-edizione="2025"] #edizioni.section--dark .archive-card {
  background:#23272b;
  border-color:#848b92;
}
body[data-edizione="2025"] #edizioni.section--dark .archive-card .archive-year,
body[data-edizione="2025"] #edizioni.section--dark .archive-card .archive-title {color:#fff}
body[data-edizione="2025"] #edizioni.section--dark .archive-card .archive-description {
  color:#e7e1e9;
  font-size:15px;
  line-height:1.6;
}
body[data-edizione="2025"] #edizioni.section--dark .archive-card .archive-arrow {color:#ffcae8}
body[data-edizione="2025"] #edizioni.section--dark .archive-card:hover,
body[data-edizione="2025"] #edizioni.section--dark .archive-card:focus-visible {background:#3a2e40}
body[data-edizione="2025"] #edizioni.section--dark .archive-card:focus-visible {
  outline:3px solid #ffcae8;
  outline-offset:3px;
}
@media(prefers-reduced-motion:reduce) {
  body[data-edizione="2025"] #edizioni .archive-card {transition:none;transform:none}
}

/* Bootstrap e i frammenti originali usavano .row/.col-md-*: la migrazione
   dispone gia' una propria griglia. Annullare SOLO i dimensionamenti Bootstrap
   per i contenuti storici inseriti nel nuovo layout, evitando locandine larghe 43px. */
body[data-edizione="2025"] .archive-2025-rich-copy .row {
  --bs-gutter-x:0;
  --bs-gutter-y:0;
  margin-inline:0;
}
body[data-edizione="2025"] .archive-2025-rich-copy .row > [class*="col-"] {
  width:auto;
  max-width:none;
  min-width:0;
  padding-inline:0;
  flex:none;
}
body[data-edizione="2025"] .archive-2025-rich-source .row > [class*="col-"] {
  width:auto;
  max-width:none;
  min-width:0;
}

/* MV-IUBENDA-EXPERIENCE-2025-v1: avviso mostrato SOLO dopo Play senza consenso. */
body[data-edizione="2025"] .archive-2025-video-consent {
  display:flex;flex-direction:column;gap:9px;padding:12px 13px;
  background:#f4ecf7;color:#241830;
  font:500 13px/1.45 var(--head);
}
body[data-edizione="2025"] .archive-2025-video-consent p {margin:0}
body[data-edizione="2025"] .archive-2025-video-consent-button {
  align-self:flex-start;border:1px solid #5d3975;border-radius:5px;
  background:#5d3975;color:#fff;cursor:pointer;padding:8px 11px;
  font:700 12px/1.4 var(--head)
}
body[data-edizione="2025"] .archive-2025-video-consent-button:focus-visible {
  outline:3px solid #c91a80;outline-offset:3px
}
