/* Свързване на компонентите (components.css, от прототипа) с маркирането на блоковата тема. */

  /* Частта с хедъра не е обвивка — лентите и лепкавият хедър участват директно в страницата. */
  .sb-header-part { display: contents; }
  .wp-site-blocks > * { margin-block: 0; }
  .wp-site-blocks { padding: 0; }
  main.wp-block-group { margin: 0; }
  .wp-block-group.container, .container.wp-block-group { width: min(100% - 2 * var(--gutter), var(--container)); margin-inline: auto; }
  .is-layout-flow > * + * { margin-block-start: var(--stack, var(--s-4)); }



  /* Заглавие на страница */
  .page-head .record-badges { margin-block-end: var(--s-4); }
  .page-head .wp-block-post-title { font-size: var(--fs-2xl); max-inline-size: 32ch; margin: 0; }
  .page-head--record .wp-block-post-title { font-size: var(--fs-xl); line-height: var(--lh-snug); max-inline-size: 60ch; }
  .page-head .wp-block-query-title, .page-head h1 { font-size: var(--fs-2xl); margin: 0; }
  .page-head .lead { font-size: var(--fs-lg); color: var(--c-ink-2); max-inline-size: 60ch; margin-block-start: var(--s-3); }

  /* Текст на запис */
  .wp-block-post-content.prose > * + * { margin-block-start: var(--s-4); }
  .wp-block-post-content.prose { max-inline-size: 70ch; overflow-wrap: anywhere; }
  .wp-block-post-content.prose img { height: auto; border-radius: var(--r-sm); }
  .wp-block-post-content.prose table { width: 100%; font-size: 1rem; display: block; overflow-x: auto; }
  .wp-block-post-content.prose td, .wp-block-post-content.prose th { border: 1px solid var(--c-line); padding: var(--s-2) var(--s-3); vertical-align: top; }
  .legal-text .wp-block-post-content { max-inline-size: none; }
  .sb-section-title { font-size: var(--fs-xl); margin-block-end: var(--s-4); }
  .sb-stack > * + * { margin-block-start: var(--s-6); }
  .sb-aside > * + * { margin-block-start: var(--s-5); }

  /* Списъци от Query Loop */
  .wp-block-post-template.notice-list { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--s-3); }
  .wp-block-post-template.notice-list > li { margin: 0; }
  .wp-block-post-template.news-cards { list-style: none; padding: 0; display: grid; gap: var(--s-6); grid-template-columns: repeat(auto-fill, minmax(min(100%, 17rem), 1fr)); }
  .news-cards .wp-block-post-featured-image { margin: 0 0 var(--s-3); }
  .news-cards .wp-block-post-featured-image img { aspect-ratio: 16 / 9; object-fit: cover; border-radius: var(--r-md); background: var(--c-primary-50); }
  .news-cards .wp-block-post-title { font-family: var(--ff-body); font-size: 1.125rem; line-height: var(--lh-snug); letter-spacing: 0; margin-block: var(--s-1) 0; }
  .news-cards .wp-block-post-title a { color: var(--c-ink); text-decoration: none; }
  .news-cards .wp-block-post-title a:hover { text-decoration: underline; }
  .news-cards .wp-block-post-date { font-size: var(--fs-sm); color: var(--c-muted); }
  .wp-block-query-pagination { margin-block-start: var(--s-6); gap: var(--s-2); font-weight: 600; }
  .wp-block-query-pagination a, .wp-block-query-pagination .page-numbers { padding: var(--s-2) var(--s-3); border-radius: var(--r-sm); min-width: 2.75rem; text-align: center; }
  .wp-block-query-pagination .page-numbers.current { background: var(--c-primary); color: var(--c-on-primary); }
  .results-count { margin-block-end: var(--s-4); }
  .wp-block-query-no-results p { padding: var(--s-7) var(--s-5); text-align: center; color: var(--c-ink-2); background: var(--c-surface); border: 1px dashed var(--c-border); border-radius: var(--r-md); }

  /* Търсене на страницата с резултати */
  .wp-block-search__inside-wrapper { background: var(--c-surface); border: 2px solid var(--c-border); border-radius: var(--r-md); padding: var(--s-1); }
  .wp-block-search__input { border: 0; font-size: var(--fs-lg); padding: var(--s-3); }
  .wp-block-search__button { border-radius: var(--r-sm); }

  /* Футър от стандартни блокове */
  .site-footer ul { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--s-2); }
  .site-footer h2.wp-block-heading { font-family: var(--ff-body); font-size: 1.125rem; color: var(--c-on-dark); margin-block-end: var(--s-4); letter-spacing: 0; }
  .site-footer p { margin: 0; }
  .drawer__utility ul { list-style: none; padding: 0; margin: 0; display: grid; gap: var(--s-2); }
  .drawer__utility .icon { width: 1.1rem; height: 1.1rem; display: inline-block; vertical-align: -0.15em; margin-inline-end: var(--s-1); }
  .custom-logo-link img { height: 52px; width: auto; }
  .site-header .custom-logo-link { margin-inline-end: auto; }


/* Глобалните стилове на WordPress за заглавия — по-слаби от компонентите */
.hero h1 { font-size: var(--fs-3xl); color: var(--c-on-dark); }
.service-tile h3 { font-size: 1.125rem; }
.panel h3 { font-size: var(--fs-lg); }
.section-head h2 { font-size: var(--fs-2xl); }
.section-head .link-more { margin: 0; }
.section-head .link-more a { color: var(--c-primary); text-decoration: none; font-weight: 700; }
.mega__intro h2 { font-size: var(--fs-xl); }

/* Хедърът се събира и при по-дълго име на сайта (1200–1500 px) */
@media (min-width: 75em) and (max-width: 94em) {
  .site-header .nav-link { padding-inline: 0.45rem; font-size: 0.97rem; }
  .site-header .brand__name { font-size: 1.2rem; }
}

/* Хедър: гербът и името не се свиват; ако основното меню не се събира до тях
   (дълго име, голям текст), то минава в бутона „Меню“ — класът is-compact се слага от theme.js. */
@media (min-width: 75em) {
  .site-header .brand, .site-header .header-actions { flex-shrink: 0; }
  .site-header .primary-nav { min-width: 0; overflow: hidden; }
}
/* 1-ва стъпка: по-плътно меню и бутон за търсене без надпис; 2-ра: менюто минава в „Меню“ */
.site-header.is-tight > .container { gap: var(--s-4); }
.site-header.is-tight .nav-link { padding-inline: 0.4rem; font-size: 0.97rem; }
.site-header.is-tight .brand__name { font-size: 1.2rem; }
.site-header.is-tight .header-actions .btn-icon .label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.site-header.is-compact .primary-nav { display: none; }
.site-header.is-compact .menu-toggle { display: inline-flex; }

/* Гербът на общината (95×126) — по височина, не по ширина */
.brand__mark--crest { width: auto; height: 3.5rem; }

/* Мобилен хедър: дългото име се пренася, бутоните остават видими */
.site-header .brand { min-width: 0; }
@media (max-width: 39.99em) {
  .site-header .brand__name { white-space: normal; font-size: 1.05rem; line-height: 1.15; }
  .site-header .brand__mark { width: 2.25rem; }
  .site-header .brand__mark--crest { width: auto; height: 3rem; }
  .site-header > .container { gap: var(--s-3); }
}
/* Филтри: на мобилен — сгънати зад бутон (JS), на desktop — винаги отворени */
.filters-details > summary { display: none; list-style: none; width: 100%; justify-content: center; }
.filters-details > summary::-webkit-details-marker { display: none; }
@media (max-width: 59.99em) {
  .filters-details > summary { display: inline-flex; margin-block-end: var(--s-4); }
}
