/* Cmentarze składają istniejące role, karty i przyciski we wspólny układ. */
.has-cemetery-content { background: var(--color-surface-page); }
.c-cemetery-page-title { padding-block: var(--space-7); }
.c-cemetery-directory { padding-block: var(--space-7); }
.c-cemetery-directory__grid { max-inline-size: 70.5rem; margin-inline: auto; }
.c-post-card--cemetery { padding: var(--space-4); }
.c-post-card--cemetery .c-post-card__copy a::after { content: none; }
.c-cemetery-card__title-break { display: none; }
.c-cemetery-card__actions { display: flex; flex-wrap: wrap; gap: var(--space-4); margin-block-start: auto; }
.c-cemetery-card__actions .c-button { flex: 1 1 auto; }
.c-cemetery-layout { --section-nav-top: 0px; display: grid; grid-template-columns: minmax(0, 1fr); }
.c-cemetery-layout__nav, .c-cemetery-layout__content { min-inline-size: 0; }
.c-cemetery-layout__content { padding-block: var(--space-7); }
.c-cemetery-section { display: flex; flex-direction: column; align-items: stretch; gap: var(--space-5); padding-block: var(--space-7); border-block-start: var(--border-width-sm) solid var(--color-border-card); scroll-margin-block-start: var(--space-7); }
.c-cemetery-section:first-child { padding-block-start: 0; border-block-start: 0; }
.c-cemetery-section:last-child { padding-block-end: 0; }
.c-cemetery-section--history > *, .c-cemetery-section--avenue > *, .c-cemetery-section--transport > *, .c-cemetery-section--gallery > * { max-inline-size: 45.375rem; }
.c-cemetery-copy { max-inline-size: none; }
.c-cemetery-copy > * + * { margin-block-start: var(--space-5); }
.c-cemetery-copy li + li { margin-block-start: 0; }
.c-cemetery-section__lead { margin-block-start: calc(var(--space-4) - var(--space-5)); }
.c-person-list { margin: 0; display: flex; flex-direction: column; gap: var(--space-5); }
.c-person-list__item { display: flex; flex-direction: column; gap: 0.375rem; }
.c-person-list dd { margin: 0; }
.c-cemetery-section__ipn { display: flex; flex-direction: column; gap: var(--space-5); margin-block-start: var(--space-5); }
.c-cemetery-map { display: block; inline-size: 100%; block-size: auto; }
.c-cemetery-rules, .c-cemetery-rule { display: flex; flex-direction: column; gap: var(--space-5); }
.c-cemetery-rule { scroll-margin-block-start: var(--space-7); }
.c-cemetery-layout--rules { scroll-margin-block-start: var(--space-7); }
@media (min-width: 70rem) {
 .c-cemetery-card__title-break { display: inline; }
 .c-cemetery-directory { padding-block: var(--space-8) var(--space-9); }
 .c-cemetery-card__actions .c-button { flex: none; }
 .c-cemetery-layout { grid-template-columns: minmax(0, 400fr) minmax(0, 736fr); gap: var(--space-8); padding-block: var(--space-6) var(--space-8); }
 .c-cemetery-layout__content { padding-block: 0; }
 .c-cemetery-section { gap: var(--space-6); padding-block: var(--space-7) var(--space-9); }
 .c-cemetery-section:first-child { padding-block-start: var(--space-6); }
 .c-cemetery-section__lead { margin-block-start: calc(var(--space-4) - var(--space-6)); }
 .c-cemetery-copy > * + * { margin-block-start: var(--space-6); }
 .c-person-list { gap: var(--space-6); }
 .c-cemetery-layout--rules { padding-block: var(--space-8); }
 .c-cemetery-layout--rules .c-section-nav { padding-block-start: var(--space-6); }
 .c-cemetery-rules { gap: var(--space-6); }
}

/* Ciekawostki: jeden edytowalny WYSIWYG, lista z separatorami z Figmy. */
.c-cemetery-section--facts .c-cemetery-copy > ul { list-style: none; padding-inline-start: 0; display: grid; gap: var(--space-4); }
.c-cemetery-section--facts .c-cemetery-copy > ul > li + li { padding-block-start: var(--space-3); }
.c-cemetery-section--facts .c-cemetery-copy > ul > li + li::before { content: ""; display: block; inline-size: var(--space-7); block-size: 2px; margin-block-end: calc(var(--space-3) - 2px); background: url("../../images/facts-divider.svg") no-repeat; }

/* Sticky spis treści korzysta z rzeczywistej wysokości komponentu, również po zmianie fontów. */
.admin-bar .c-cemetery-layout { --section-nav-top: 32px; }
@media (max-width: 782px) {
 .admin-bar .c-cemetery-layout { --section-nav-top: 46px; }
}
@media (max-width: 600px) {
 /* Pasek WP przy tej szerokości przewija się razem z dokumentem. */
 .admin-bar .c-cemetery-layout { --section-nav-top: 0px; }
}
@media (max-width: 69.999rem) {
 .c-cemetery-layout { display: block; }
 .c-cemetery-layout__nav { position: sticky; top: var(--section-nav-top); z-index: var(--z-header); }
 .c-cemetery-section, .c-cemetery-rule { scroll-margin-block-start: calc(var(--section-nav-height, 9rem) + var(--section-nav-top) + var(--space-5)); }
}
