/* Document covers and download links follow the Hexapan resource section. */
.resource-downloads{padding-top:48px;padding-bottom:42px}
.resource-downloads .download-section-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px 28px;margin-bottom:28px}
.resource-downloads h2{margin-bottom:0}
.download-section-actions{display:flex;align-items:center;gap:24px;margin-left:auto}
.downloads-view-all,.downloads-back{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-size:1rem;font-weight:600;line-height:1.5;color:#000000}
.downloads-view-all:hover,.downloads-back:hover{text-decoration:underline;text-underline-offset:4px}
.download-carousel-controls{display:flex;gap:10px;flex-shrink:0}
.download-carousel-controls button{display:flex;align-items:center;justify-content:center;width:46px;height:46px;padding:0;border:1px solid var(--line);border-radius:50%;background:#fff;color:#008CBC;cursor:pointer}
.download-carousel-controls button svg{width:20px;height:20px}
.download-carousel-controls button:hover:not(:disabled){border-color:var(--blue);background:var(--wash)}
.download-carousel-controls button:disabled{opacity:.3;cursor:default}
.resource-downloads .download-documents{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 72px)/4);gap:24px;width:100%;max-width:none;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scroll-padding-inline:6px;padding:6px 6px 16px;scrollbar-width:thin;scrollbar-color:#008CBC #edf1f3}
.resource-downloads .download-document{display:flex;flex-direction:column;align-items:center;min-width:0;padding:8px 0;background:transparent;border:0;scroll-snap-align:start}
.resource-downloads .download-preview-open{display:flex;align-items:center;justify-content:center;width:104px;height:88px;margin:0 0 12px;padding:4px;border-radius:3px;background:transparent;cursor:zoom-in}
.resource-downloads .download-preview-open img{display:block;width:auto;height:auto;max-width:96px;max-height:80px;object-fit:contain;box-shadow:0 2px 7px #102c3d20;transition:transform .2s ease}
.resource-downloads .download-preview-open:hover{background:var(--wash)}
.resource-downloads .download-preview-open:hover img{transform:translateY(-2px)}
.resource-downloads .download-document-info{display:flex;flex:1;flex-direction:column;align-items:center;gap:4px;width:100%;text-align:center}
.resource-downloads .download-document h3{min-height:64px;max-width:220px;margin:0;font-size:1rem;line-height:1.35;font-weight:500;letter-spacing:0;color:#000000}
.resource-downloads .download-document h3 a{color:inherit}
.resource-downloads .download-document-footer{display:flex;flex-direction:column;align-items:center;margin-top:auto}
.resource-downloads .download-document-meta{font-size:.875rem;line-height:1.5;color:var(--muted);white-space:nowrap}
.resource-downloads .download-document-protection{display:inline-flex;align-items:center;gap:5px;font-size:.8rem;line-height:1.5;color:var(--muted)}
.resource-downloads .download-document-protection svg{width:13px;height:13px;flex-shrink:0}
.pdf-password-notice{font-size:.9rem;line-height:1.5;color:var(--muted)}
.resource-downloads .download-document-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-size:.875rem;font-weight:600;line-height:1.3;color:#000000;white-space:nowrap}
.resource-downloads .download-document-link svg{width:17px;height:17px;flex-shrink:0}
.resource-downloads .download-document-link:hover,.resource-downloads h3 a:hover{text-decoration:underline;text-underline-offset:4px}
.resource-downloads a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
@media(max-width:1050px){.resource-downloads .download-documents{grid-auto-columns:calc((100% - 48px)/3)}}
@media(max-width:760px){.resource-downloads .download-documents{grid-auto-columns:calc((100% - 24px)/2)}.resource-downloads{padding-top:36px;padding-bottom:32px}}
@media(max-width:480px){.resource-downloads .download-documents{grid-auto-columns:86%;gap:16px}.resource-downloads .download-section-head{gap:16px;margin-bottom:20px}.download-section-actions{gap:18px}.download-carousel-controls{gap:10px}}
@media(prefers-reduced-motion:reduce){.resource-downloads .download-preview-open img{transition:none}}

/* The complete document page follows the same resource grid as HEXAPAN. */
.downloads-page{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
.downloads-page main{flex:1}
.downloads-page .downloads-back{margin-bottom:22px}
.downloads-page .downloads-page-heading{font-size:clamp(2rem,3.4vw,3rem);font-weight:500;line-height:1.16;letter-spacing:-1.4px;margin:0 0 36px}
.downloads-page .resource-downloads .download-documents{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px 20px;max-width:1240px;overflow:visible;scroll-snap-type:none;padding:0}
.downloads-page nav a[aria-current=page]{color:#008CBC}
@media(max-width:1050px){.downloads-page .resource-downloads .download-documents{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:28px;max-width:100%}}
@media(max-width:700px){.downloads-page .resource-downloads .download-documents{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:20px}}
@media(max-width:480px){.downloads-page .resource-downloads .download-documents{grid-template-columns:1fr}.downloads-page .downloads-page-heading{letter-spacing:-1px}}

/* Neutral link text at rest; brand blue on hover and keyboard focus. */
.downloads-view-all:hover,.downloads-view-all:focus-visible,.downloads-back:hover,.downloads-back:focus-visible,.resource-downloads .download-document-link:hover,.resource-downloads .download-document-link:focus-visible,.resource-downloads .download-document h3 a:hover,.resource-downloads .download-document h3 a:focus-visible{color:var(--blue)}
