/* Additional content modules only. The original site layout and theme stay in style.css. */
.membership-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:32px 0}.membership-card{background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:24px;min-width:0}.membership-card h2{font-size:1.15rem;color:var(--text-main);padding-bottom:12px;border-bottom:1px solid var(--border-color)}.membership-card dl{margin:8px 0}.membership-card dl>div{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid var(--border-color)}.membership-card dt{overflow-wrap:anywhere}.membership-card dd{margin:0;padding:3px 12px;border-radius:20px;background:var(--bg-inset);white-space:nowrap;color:var(--text-main);font-variant-numeric:tabular-nums}.membership-total{font-weight:700}.membership-deaths{display:inline-block;margin-top:12px;text-decoration:underline;color:var(--primary)}.membership-note{font-size:.85rem;color:var(--text-muted);margin-top:16px}@media(max-width:760px){.membership-summary{grid-template-columns:minmax(0,1fr)}.membership-card{padding:18px}}
.contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;margin-bottom:40px}.contact-grid>div{min-width:0;overflow-wrap:anywhere}@media(max-width:760px){.contact-grid{grid-template-columns:minmax(0,1fr)}}
.association-page{padding-bottom:45px}.page-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:25px}.page-heading h1{font-size:1.75rem;color:var(--primary-dark)}.page-heading p{margin-top:8px;color:var(--text-muted)}.eyebrow{font-size:.72rem;letter-spacing:1.3px;color:var(--primary);margin-bottom:8px}.text-link{color:var(--primary)}
.association-panel{padding:28px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:25px}.association-empty{padding:40px;text-align:center;border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-muted)}
.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.activity-card{display:block;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-sm);color:var(--text-main)}.activity-cover{position:relative;height:220px;display:grid;place-items:center;background:var(--bg-inset);color:var(--text-muted)}.activity-cover img{width:100%;height:100%;object-fit:cover}.photo-count{position:absolute;right:12px;bottom:12px;background:#0f172acc;color:#fff;border-radius:4px;font-size:.75rem;padding:4px 9px}.activity-card-body{padding:20px}.activity-card-body small{font-size:.8rem;color:var(--text-muted)}.activity-card-body h2{font-size:1.1rem;margin:12px 0 18px;line-height:1.6}.association-pagination{display:flex;justify-content:center;gap:7px;margin:30px 0}.gallery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.gallery-grid figure{margin:0}.gallery-open{border:0;background:none;width:100%;padding:0;cursor:zoom-in}.gallery-open img{width:100%;height:240px;object-fit:cover;border-radius:var(--radius-md)}.gallery-grid figcaption{padding:10px;color:var(--text-muted);font-size:.85rem}.image-dialog{border:0;border-radius:8px;background:#0f172a;color:#fff;max-width:95vw;max-height:94vh;padding:38px 20px 18px;margin:auto}.image-dialog::backdrop{background:#000b}.image-dialog img{max-width:85vw;max-height:75vh;object-fit:contain}.image-dialog p{text-align:center}.dialog-close{position:absolute;right:8px;top:0;background:none;border:0;color:#fff;font-size:32px;cursor:pointer}.rich-content ul,.rich-content ol{padding-left:26px}.rich-content img{max-width:100%}.rich-content h2,.rich-content h3{margin:20px 0 12px}.rich-content p{margin-bottom:12px}
@media(max-width:760px){.activity-grid,.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.activity-cover,.gallery-open img{height:160px}.page-heading{align-items:flex-start;flex-direction:column}.activity-card-body{padding:14px}.activity-card-body h2{font-size:1rem}.association-panel{padding:20px}.association-empty{padding:25px}#main-content [style*="grid-template-columns: 2fr 1fr"],#main-content [style*="grid-template-columns: 1fr 1fr"]{grid-template-columns:1fr!important}#main-content [style*="minmax(360px"],#main-content [style*="minmax(320px"]{grid-template-columns:1fr!important}.data-table-wrap{overflow-x:auto}.rich-content{overflow-wrap:anywhere}}
.business-grid{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 48px)/4);gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:8px}.business-card{scroll-snap-align:start}.business-controls button:disabled{opacity:.45;cursor:default}.business-card{display:block;min-width:0;padding:6px;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);overflow:hidden}.business-card img,.business-placeholder{display:block;width:100%;aspect-ratio:1;object-fit:cover}.business-placeholder{display:grid;place-items:center;background:var(--bg-inset);font-size:3rem}.business-card h3{text-align:center;font-size:1rem;color:var(--primary-dark);padding:18px 4px;overflow-wrap:anywhere}.business-card:hover,.business-card:focus-visible{border-color:var(--primary)}@media(max-width:760px){.business-grid{grid-auto-columns:max(150px,calc((100% - 12px)/2));gap:12px}}

.home-popup{border:1px solid var(--border-color);border-radius:6px;padding:48px 14px 20px;margin:auto;width:min(1000px,96vw);max-height:94dvh;overflow:auto;background:var(--bg-surface);color:var(--text-main)}.home-popup::backdrop{background:rgba(0,0,0,.45)}.home-popup-close{position:absolute;top:6px;right:8px;width:34px;height:34px;border:0;border-radius:50%;font-size:26px;cursor:pointer;background:var(--bg-inset);color:var(--text-main)}.home-popup-slides img{display:block;width:100%;height:auto;max-height:80dvh;object-fit:contain}.home-popup-slides img[hidden]{display:none}.home-popup-controls{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:8px;margin-top:16px}.home-popup-dot{width:20px;height:20px;padding:0;border:4px solid var(--bg-surface);border-radius:50%;background:#aaa;cursor:pointer}.home-popup-dot[aria-pressed=true]{background:var(--primary);width:30px;border-radius:12px}.home-popup-pause{border:1px solid var(--border-color);border-radius:4px;padding:4px 10px;background:var(--bg-inset);color:var(--text-main);cursor:pointer}


/* Poster-style business carousel with a glimpse of the next slide. */
.home-business-section .business-grid { position:relative; grid-auto-columns:30%; gap:12px; align-items:start; padding:0; scrollbar-width:none; }
.home-business-section .business-grid::-webkit-scrollbar { display:none; }
.home-business-section .business-card { padding:0; border:0; border-radius:0; box-shadow:none; background:transparent; }
.home-business-section .business-card img { display:block; width:100%; height:auto; aspect-ratio:3 / 4; object-fit:cover; object-position:center; }
.home-business-section .business-placeholder { aspect-ratio:3 / 4; color:var(--primary); background:var(--primary-soft); }
.home-business-section .business-card h3 { padding:12px 4px; }
.business-dots { display:flex; justify-content:center; gap:4px; margin-top:12px; }
.business-dots button { width:24px; height:24px; padding:7px; border:0; background:transparent; cursor:pointer; }
.business-dots button::before { content:''; display:block; width:10px; height:10px; border-radius:50%; background:var(--border-strong); }
.business-dots button[aria-pressed="true"]::before { background:var(--primary); }
@media(max-width:760px) { .home-business-section .business-grid { grid-auto-columns:44%; } }
@media(max-width:480px) { .home-business-section .business-grid { grid-auto-columns:78%; } }

.home-news-images { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px; margin-top:28px; }
.home-news-images a { display:block; min-width:0; }
.home-news-images img { display:block; width:100%; height:auto; border-radius:16px; }
