/* A single wrapping collection, ordered by city without city-specific rows. */
.free-map-library .page-top{padding:32px 0 28px;background:var(--navy);color:white}
.free-map-library .page-top h1{font-size:clamp(2rem,4vw,3rem);margin:8px 0 12px}
.free-map-library .page-top p,.free-map-library .page-top a{color:inherit}
.free-map-library .page-top .intro{max-width:760px;margin-bottom:0}
.free-map-library .section{padding-top:28px}
.free-map-library .catalogue-tools{max-width:760px;margin-bottom:16px}
.free-map-library .count{font-size:.85rem;margin:0 0 22px;color:var(--muted)}
.free-map-library #results{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px;align-items:start}
.free-map-card{min-width:0}
.free-map-poster{display:block;padding:8px;text-decoration:none;color:var(--ink);background:white;border:1px solid #e3e5e7;box-shadow:0 3px 12px #19345212;transition:box-shadow .2s,transform .2s}
.free-map-poster:hover{box-shadow:0 6px 20px #19345222;transform:translateY(-3px)}
.free-map-poster:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.free-map-art{aspect-ratio:3/4;background:#faf9f5;display:grid;place-items:center;border:1px solid #ececeb}
.free-map-art img{display:block;width:100%;height:100%;object-fit:contain}
.free-map-caption{min-height:82px;padding:18px 8px 14px;text-align:center;border:1px solid #ececeb;border-top:0}
.free-map-caption h2{font-size:1.05rem;line-height:1.3;text-transform:uppercase;letter-spacing:.025em;margin:0 0 7px}
.free-map-caption p{font-size:.65rem;line-height:1.5;letter-spacing:.18em;text-transform:uppercase;color:var(--muted);margin:0}
.free-map-library #results>.empty{grid-column:1/-1}
@media(max-width:1000px){.free-map-library #results{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 20px}}
@media(max-width:700px){.free-map-library #results{grid-template-columns:repeat(2,minmax(0,1fr));gap:26px 14px}.free-map-library .page-top{padding:24px 0}.free-map-library .section{padding-top:22px}.free-map-caption{padding:14px 4px;min-height:80px}.free-map-caption h2{font-size:.85rem}.free-map-caption p{font-size:.6rem}.free-map-poster{padding:5px}}
@media(prefers-reduced-motion:reduce){.free-map-poster{transition:none}.free-map-poster:hover{transform:none}}
.free-map-library .page-top h1,.free-map-library .page-top .breadcrumbs{color:white}

/* Reuse the library poster frame in the homepage collection. */
.mapprint-home-collection .free-map-art img{box-shadow:none;margin:0}
.mapprint-home-collection .free-map-card:nth-child(2){transform:translateY(-28px)}
.mapprint-home-collection .free-map-caption h2{font-size:clamp(.65rem,1.1vw,1.05rem)}
@media(max-width:700px){.mapprint-home-collection .free-map-caption{padding:10px 2px;min-height:72px}.mapprint-home-collection .free-map-caption p{font-size:.5rem;letter-spacing:.08em}}
