/* Download previews: real document pages, with the complete sheet visible. */
.elencoDownload .downloads-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 24px 0 0; padding: 0; list-style: none; }
.downloads-grid .download-card { display: flex; flex-direction: column; min-width: 0; overflow: hidden; border: 1px solid #e5e2de; border-radius: 12px; background: #fff; box-shadow: 0 3px 12px rgba(0,0,0,.04); }
.downloads-grid .download-card::before { content: none; }
.download-card .download-preview { display: flex; position: relative; align-items: center; justify-content: center; aspect-ratio: 16 / 11; padding: 16px; overflow: hidden; background: #f6f5f3; border-bottom: 1px solid #e5e2de; }
.download-preview img { display: block; width: 100%; height: 100%; min-height: 0; object-fit: contain; transition: transform .2s; }
.download-preview:hover img { transform: scale(1.025); }
.download-preview-label { position: absolute; right: 12px; bottom: 12px; display: inline-flex; align-items: center; gap: 7px; padding: 8px 10px; border: 1px solid #e5e2de; border-radius: 6px; background: #fff; color: #E5181D; font: 600 12px/1.3 'Montserrat', 'Segoe UI', sans-serif; }
.download-card svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.download-card .download-details { display: flex; flex: 1; flex-direction: column; align-items: flex-start; padding: 20px; }
.download-details h3 { margin: 0 0 12px; color: #242426; font: 700 18px/1.35 'Montserrat', 'Segoe UI', sans-serif; text-transform: none; letter-spacing: 0; overflow-wrap: anywhere; }
.download-details .download-meta { display: flex; align-items: center; gap: 7px; margin: 0 0 20px; color: #67676d; font: 13px/1.5 'Open Sans', 'Segoe UI', sans-serif; }
.download-meta > span { padding: 3px 6px; border-radius: 4px; background: #fff0f0; color: #E5181D; font-size: 11px; font-weight: 700; }
.download-details .download-button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 44px; margin-top: auto; padding: 11px 16px; border: 1px solid #E5181D; border-radius: 6px; background: #E5181D; color: #fff; font: 600 13px/1.5 'Montserrat', 'Segoe UI', sans-serif; }
.download-details .download-button:hover { background: #fff; color: #E5181D; }
.download-card a:focus-visible { outline: 3px solid #E5181D; outline-offset: -3px; }
.download-card .download-preview-file { flex-direction: column; gap: 12px; color: #E5181D; }
.download-preview-file > span { padding: 24px 18px; border: 2px solid currentColor; border-radius: 8px; font: 700 32px/1 'Montserrat', 'Segoe UI', sans-serif; }
.download-preview-file > small { color: #67676d; font: 13px/1.5 'Open Sans', 'Segoe UI', sans-serif; }
.downloads-lightbox .mfp-figure::after { background: #fff; }
.downloads-lightbox .mfp-title { padding-right: 0; }
.downloads-lightbox .mfp-counter { top: -22px; right: 0; }
.download-preview-caption { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; color: #fff; font: 13px/1.6 'Open Sans', 'Segoe UI', sans-serif; }
.download-preview-caption a { display: inline-flex; align-items: center; min-height: 40px; padding: 7px 12px; border: 1px solid #fff; border-radius: 5px; color: #fff; font-weight: 600; }
.download-preview-caption a:hover, .download-preview-caption a:focus-visible { background: #E5181D; border-color: #E5181D; }
@media (max-width: 1000px) { .elencoDownload .downloads-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }
@media (max-width: 640px) { .elencoDownload .downloads-grid { grid-template-columns: minmax(0, 1fr); gap: 18px; } }
@media (prefers-reduced-motion: reduce) { .download-preview img { transition: none; } }
