.community-hero{background:var(--forest,#1f4d3a);color:#fff;padding:3.5rem 0}.community-hero h1{color:#fff;max-width:18ch;margin:1rem 0 1.25rem;font-size:clamp(2.8rem,5vw,4.8rem);line-height:1.04}.community-hero h1 em{color:#d8e5ba}.community-hero .eyebrow,.community-hero .back-link{color:#e2edcd}.community-hero p{color:#edf1e5;max-width:65ch;font-size:1.12rem;line-height:1.65}.community-hero .back-link{margin-bottom:1rem;display:table}.food-directory-content{padding-top:2.5rem;padding-bottom:4rem}.coverage-note{background:#edf1e5;border-left:4px solid #b56d46;margin:0 0 1.8rem;padding:1.4rem 1.7rem}.coverage-note h2{font-size:1.3rem}.coverage-note p{max-width:90ch}.location-filters{grid-template-columns:2fr 1fr 1fr auto;align-items:end;gap:1rem;margin-bottom:1.5rem;display:grid}.location-filters label{margin-bottom:.5rem;font-weight:600;display:block}.location-filters input,.location-filters select{width:100%;min-height:48px;font:inherit;background:#fff;border:1px solid #a8b7a5;border-radius:4px;padding:.7rem}.location-filters>div{min-width:0}.location-filters button{min-height:48px}.food-directory-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:3rem;display:grid}.food-directory-grid>*{min-width:0}.food-map-figure{background:#fff;border:1px solid #d8dfd2;border-radius:10px;margin:0 0 2rem;padding:1.5rem}.food-map-figure h3{font-size:1.5rem}.food-map-figure figcaption p,.map-note{color:#445943;font-size:.95rem}.food-map-scroll{max-width:100%;padding-bottom:.5rem;overflow-x:auto}.food-map{aspect-ratio:3/2;border-radius:6px;width:100%;min-width:560px;margin-top:1rem;position:relative;overflow:hidden}.food-map svg{width:100%;height:100%;display:block;position:absolute;inset:0}.map-compass{background:#fff;padding:.3rem;font-weight:700;position:absolute;top:.25rem;right:.4rem}.map-pin{color:#fff;z-index:1;background:#1f4d3a;border:3px solid #fff;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:1rem;font-weight:700;text-decoration:none;display:flex;position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 8px #1f4d3a35}.map-pin:hover,.map-pin:focus-visible{z-index:2;outline-offset:3px;background:#99532f;outline:3px solid #99532f}.map-range{color:#445943;margin-top:.75rem;font-size:.85rem}.location-card{background:#fff;border:1px solid #d8dfd2;border-radius:8px;margin:1.3rem 0;padding:1.7rem;scroll-margin-top:7rem}.location-card:target{border-color:#99532f;box-shadow:0 0 0 2px #99532f}.location-card h3{margin:.7rem 0;font-size:1.6rem}.location-card-top{align-items:center;gap:.8rem;display:flex}.location-number{background:#eaf0de;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-weight:700;display:inline-flex}.location-address{border-top:1px solid #dde2d4;border-bottom:1px solid #dde2d4;padding:1rem 0}.location-card dt{margin-top:.9rem;font-weight:700}.location-card dd{margin:0;line-height:1.6}.location-source-links{flex-wrap:wrap;gap:.25rem 1rem;margin-top:1rem;display:flex}.location-source-links a{align-items:center;min-height:44px;display:inline-flex}.record-dates{color:#445943;font-size:.86rem;line-height:1.65}.location-card details{border-top:1px solid #d8dfd2;padding-top:.6rem}.location-card summary{cursor:pointer;align-content:center;min-height:44px}.location-card details p{overflow-wrap:anywhere;font-size:.9rem}.map-attribution{border-top:1px solid #d8dfd2;margin-top:2.5rem;padding-top:2rem}.map-attribution p{max-width:85ch}[hidden]{display:none!important}@media (width<=900px){.location-filters{grid-template-columns:1fr 1fr}.food-directory-grid{gap:1.5rem}}@media (width<=700px){.community-hero{padding:2rem 0}.food-directory-grid,.location-filters{grid-template-columns:1fr}.food-map-figure{padding:1rem}.location-card{padding:1.2rem}.coverage-note{padding:1rem 1.2rem}.food-directory-content{padding-top:1.5rem}}@media print{.food-maps,.location-filters{display:none!important}.food-directory-grid{display:block}.location-card{break-inside:avoid}.community-hero{color:#111;background:#fff}.community-hero p,.community-hero h1,.community-hero h1 em{color:#111}}
