:root { --font-script: 'Caveat', 'Segoe Script', 'Bradley Hand', cursive; }
.brand { font-family: var(--font-script); font-size: 1.7rem; font-weight: 400; letter-spacing: 0; line-height: 1; }
.brand em { font-family: inherit; font-weight: inherit; }
.nav-search { display: flex; align-items: center; }
.nav-search input[type="search"] { width: 9.5rem; min-height: 2.2rem; padding: .3rem .9rem; border: 1px solid rgba(255,255,255,.6); border-radius: var(--radius-full) 0 0 var(--radius-full); background: rgba(255,255,255,.12); color: inherit; font-size: .85rem; }
.nav-search input[type="search"]::placeholder { color: inherit; opacity: .8; }
.nav-search button { min-height: 2.2rem; padding: 0 .9rem; border: 1px solid rgba(255,255,255,.6); border-left: 0; border-radius: 0 var(--radius-full) var(--radius-full) 0; background: transparent; color: inherit; font-size: .8rem; font-weight: 600; }
.site-header-solid .nav-search input[type="search"], .site-header-solid .nav-search button { border-color: var(--color-line); background: transparent; }
.site-menu .nav-search { padding: var(--space-2); }
.site-menu .nav-search input[type="search"] { width: 100%; border-color: var(--color-line); color: var(--color-ink); }
.site-menu .nav-search button { border-color: var(--color-line); }
@media (min-width: 48rem) {
  .site-menu .nav-search { padding: 0; }
  .site-menu .nav-search input[type="search"] { width: 9.5rem; border-color: rgba(255,255,255,.6); color: inherit; }
  .site-header-solid .site-menu .nav-search input[type="search"] { border-color: var(--color-line); }
}
.cat-bar { border-top: 1px solid rgba(255,255,255,.25); }
.site-header-solid .cat-bar { border-top-color: var(--color-line); }
.cat-bar ul { display: flex; gap: var(--space-6); margin: 0; padding: .65rem 0; list-style: none; overflow-x: auto; scrollbar-width: none; white-space: nowrap; font-size: .85rem; }
.cat-bar a:hover { text-decoration: underline; text-underline-offset: .3em; }
.cat-bar a.cat-bar-memorial { color: #000; font-weight: 700; }
.page-home .cat-bar a.cat-bar-memorial { padding: .15rem .6rem; border-radius: 999px; background: rgba(255,255,255,.9); text-shadow: none; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

/* Strona główna: nagłówek leży na zdjęciu (bez białego tła), zaczyna się pod brązowym paskiem terminu. Ciemniejszy górny skraj zdjęcia daje czytelność napisom. */
.announce { background: #3a2a22; color: #fffdf8; }
.has-announce .site-header { top: 2.3rem; }
.page-home .hero-auto .hero-shade { background: linear-gradient(180deg, rgba(30,22,18,.68) 0%, rgba(30,22,18,.34) 20%, rgba(20,22,20,.04) 42%, rgba(20,22,20,.5) 100%); }
.page-home .cat-bar a, .page-home .site-menu a { text-shadow: 0 1px 8px rgba(0,0,0,.35); }

.footer-contact { display: flex; flex-wrap: wrap; gap: var(--space-2) var(--space-6); margin-top: var(--space-4); margin-bottom: 0; font-size: .95rem; }
.footer-contact a { text-decoration: underline; text-underline-offset: .25em; }

.card-tag { justify-self: start; display: inline-block; width: fit-content; margin: .15rem 0 .1rem; padding: .1rem .55rem; border: 1px solid var(--color-sage); border-radius: var(--radius-full); color: var(--color-sage-dark); font-size: .68rem; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
