:where(h1, h2, h3, h4, p, li, a, dd, span, address) { overflow-wrap: anywhere; }

@media (max-width: 23rem) {
  :root { --gutter: 1.25rem; }

  .card,
  .fact-tile,
  .callout--blue,
  .callout--action,
  .pull-quote,
  .meeting-item__link,
  .benefit-card,
  .service-card,
  .filter-panel,
  .news-card__body,
  .event-card__link,
  .event-card:first-child .event-card__link { padding: 1.25rem; }
  .card--roomy,
  .callout--green { padding: 1.5rem; }
  .meeting-list--archive .meeting-item__link { padding: 1.25rem; }
  .callout--action { gap: 1.25rem; }
  .event-card__link,
  .event-card:first-child .event-card__link { gap: 1rem; }
  .pull-quote { font-size: 1.25rem; }

  .btn { max-width: 100%; white-space: normal; text-align: center; }
  .btn--lg { padding-inline: 1.5rem; }
  .prose .btn { justify-self: stretch; }

  .resource-card__meta { flex-wrap: wrap; row-gap: 0.5rem; }
  .badge { white-space: nowrap; }

  .hero__photo-seal { right: 0; top: -1rem; width: 4rem; height: 4rem; }
  .hero-note { padding: 1.5rem; box-shadow: 6px 6px 0 rgba(0, 0, 0, 0.22); }
  .hero-controls { gap: 0.75rem; padding-bottom: 2rem; }
  .hero-dot { width: 1.25rem; }
  .hero-dot.is-active { width: 2.25rem; }
  .hero-count { display: none; }

  .finder-tile { width: 9rem; }
  .finder-grid { gap: 1rem 0.5rem; }

  .leader--officer { padding: 1.5rem; }
  .leader--cochair,
  .leader--staff { padding: 1.25rem; }

  .service-card { width: 86vw; min-height: 0; }
}
