/* ===== Volantini: nuova griglia ===== */
.vol-wrap{width:100%;max-width:none;margin:0 auto;padding:0;box-sizing:border-box}
.vol-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;align-items:start;margin:10px 0 30px}
@media (max-width:1100px){.vol-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:767px){.vol-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.vol-wrap{padding:0}}

.vol-card{position:relative;display:block;background:transparent;border-radius:10px;padding:0;
  box-shadow:0 6px 18px rgba(0,0,0,.18);transition:transform .25s ease;text-decoration:none!important}
.vol-card .vol-img{display:block}
.vol-card img{display:block;width:100%;height:auto;border-radius:10px}
.vol-card .vol-zoom{position:absolute;left:50%;bottom:18px;transform:translate(-50%,8px);opacity:0;
  background:rgba(20,20,30,.85);color:#fff;font:600 13px/1 Inter,system-ui,sans-serif;padding:9px 14px;border-radius:999px;
  white-space:nowrap;transition:.25s ease;pointer-events:none;display:inline-flex;align-items:center;gap:6px}
.vol-card:hover,.vol-card:focus-visible{transform:translateY(-6px);box-shadow:0 14px 30px rgba(0,0,0,.28)}
.vol-card:hover .vol-zoom,.vol-card:focus-visible .vol-zoom{opacity:1;transform:translate(-50%,0)}
.vol-card .vol-title{display:block;padding:8px 4px 2px;color:#fff;font:600 14px/1.3 Inter,system-ui,sans-serif;text-align:center}

/* In primo piano: più grandi, con bagliore */
.vol-grid.vol-top{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1080px;margin:20px auto 10px;gap:24px}
@media (max-width:767px){.vol-grid.vol-top{gap:10px;margin-top:12px}}
.vol-top .vol-card::after{content:"";position:absolute;inset:0;border-radius:10px;box-shadow:0 0 0 6px rgba(255,235,0,.6);
  opacity:0;animation:volGlow 2.2s ease-in-out infinite;pointer-events:none;will-change:opacity}
@keyframes volGlow{0%,100%{opacity:0}50%{opacity:1}}
@media (prefers-reduced-motion:reduce){.vol-top .vol-card::after{animation:none}.vol-card{transition:none}}

/* Mosaico: nessuno spazio vuoto tra volantini di altezze diverse */
.vol-grid.vol-mosaico{grid-auto-rows:2px;row-gap:0;align-items:start}
.vol-grid.vol-mosaico .vol-card{margin-bottom:18px}
@media (max-width:767px){.vol-grid.vol-mosaico .vol-card{margin-bottom:10px}}

/* Righe giustificate (vedi js/contenuti.js) */
.vol-giust{width:100%;min-width:0;margin:10px 0 0;contain:inline-size}
.vol-giust.vol-misura > *{display:none!important}
/* i contenitori non devono impedire alla griglia di stringersi */
#section-photos .col-12,#section-gadget .col-12,#section-gallery .col-12,.vol-wrap{min-width:0}
.vol-giust .vol-riga{display:flex;justify-content:center}
.vol-giust .vol-card{flex:none;overflow:visible;min-width:0}
.vol-giust .vol-img{width:100%;height:100%}
.vol-giust .vol-card img{width:100%;height:100%;object-fit:cover;border-radius:10px}
.vol-giust.vol-top{max-width:1080px;margin:20px auto 0}
