/* ===== MOBILE ===== */
@media (max-width: 768px){

  /* FOOTER: меню у 2 колонки */
  .site-footer .widget_nav_menu ul.menu{
    display: grid !important;
    grid-template-columns: 1fr 1fr;
    gap: 8px 24px;
  }
  .site-footer .widget_nav_menu ul.menu > li{ margin: 0 !important; }

  /* HOME (page-id-
   * ): прибираємо обмеження UAGB 300px */
  body.page-id-296 [class*="uagb-image-"] .uagb-image__figure,
  body.page-id-296 [class*="uagb-image-"] .uagb-image__image-wrap,
  body.page-id-296 [class*="uagb-image-"] img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
  }

  body.page-id-296 .wp-block-uagb-image,
  body.page-id-296 .wp-block-uagb-image--align-none,
  body.page-id-296 .uagb-image__content {
    width: 100% !important;
    max-width: 100% !important;
  }

  /* SERVICES (page-id-299): вирівнювання секцій */
  body.page-id-299 .uagb-container__inner-wrap{
    flex-direction: column !important;
  }
  body.page-id-299 .wp-block-uagb-advanced-heading,
  body.page-id-299 .wp-block-uagb-image{
    width: 100% !important;
    margin: 0 0 20px 0 !important;
  }
  body.page-id-299 .wp-block-uagb-image .uagb-image__figure,
  body.page-id-299 .wp-block-uagb-image .uagb-image__figure img{
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    display: block !important;
  }
}

/* Фіксуємо ширину цифр, щоб анімація/завантаження шрифту не рухали layout */
.home .uagb-counter__number-wrap { display: inline-flex; align-items: baseline; }

.home .uagb-counter__number {
  min-width: 3.5ch;
  line-height: 1.1;
  font-variant-numeric: tabular-nums;
}

.home .uagb-counter-block-suffix,
.home .uagb-counter-block-prefix { display: inline-block; min-width: 1ch; }

/* Базові утиліти */
:root{
  --c1:#0b2e4e;
  --c2:#124d7f;
  --c3:#eaf2f8;
  --c-ok:#116b2b;
  --c-warn:#7f3b12;
}

.section{padding:48px 0}

.container{max-width:1080px;margin:0 auto;padding:0 16px}

.lead{font-size:1.15rem;line-height:1.55}

.grid-2{display:grid;grid-template-columns:1.5fr 1fr;gap:28px}

.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}

@media(max-width:900px){.grid-2,.grid-3{grid-template-columns:1fr}}

.hero{background:var(--c3)}

.hero h1{margin-bottom:12px}

.meta{color:#425466;font-size:.95rem}

.btn,.btn-alt{display:inline-block;padding:12px 18px;border-radius:10px;text-decoration:none}

.btn{background:var(--c2);color:#fff}

.btn:hover{opacity:.9}

.btn-alt{background:#fff;border:1px solid #d7e0ea;color:#0f1f2e}

.card{background:#fff;border:1px solid #e6edf3;border-radius:14px;padding:18px}

.card h3{margin-top:0}

.kbd{font-family:ui-monospace,Menlo,monospace;background:#f4f6f8;border:1px solid #e5e9ef;border-radius:6px;padding:0 6px}

.checklist li{margin:6px 0}

.notice{border-left:4px solid var(--c1);background:#f7fbff;padding:14px;border-radius:8px}

.badge{display:inline-block;background:#eef5fb;color:#1a365d;border:1px solid #d4e4f5;border-radius:999px;padding:4px 10px;font-size:.85rem}

blockquote{border-left:4px solid var(--c2);margin:18px 0;padding:8px 14px;background:#f7fbff}

.details{border:1px solid #e6edf3;border-radius:12px;padding:10px;background:#fff}

details{border:1px solid #e6edf3;border-radius:12px;padding:10px;background:#fff;margin:10px 0}

details summary{cursor:pointer;font-weight:600}

.hr{height:1px;background:#e8eef5;margin:18px 0}

.imgbox{border:1px dashed #d9e3ec;border-radius:12px;background:#fafcff;padding:8px;text-align:center;color:#6b7a90}

.table{width:100%;border-collapse:collapse}

.table th,.table td{border:1px solid #e6edf3;padding:10px;text-align:left}

/* VOLUNTEER / BV35 сторінки – одна уніфікована версія */
.bv35-page {
  max-width: 960px;
  margin: 0 auto;
  padding: 2rem 1rem 3rem;
  font-size: 16px;
  line-height: 1.6;
}

.bv35-page h1 {
  font-size: 2.1rem;
  margin-bottom: 1.2rem;
  font-weight: 700;
}

.bv35-page h2 {
  font-size: 1.5rem;
  margin-top: 2rem;
  margin-bottom: 0.8rem;
  font-weight: 600;
}

.bv35-page h3 {
  font-size: 1.2rem;
  margin-top: 1.4rem;
  margin-bottom: 0.4rem;
  font-weight: 600;
}

.bv35-page p {
  margin-bottom: 0.75rem;
}

.bv35-page ul {
  margin: 0 0 0.8rem 1.2rem;
  padding: 0;
}

.bv35-page ul li {
  margin-bottom: 0.25rem;
}

.bv35-page a {
  text-decoration: underline;
}

.bv35-page a:hover {
  text-decoration: none;
}

/* Волонтерська обгортка */
.bv35-volunteer-page {
  max-width: 960px;
  margin: 0 auto;
  padding: 2rem 1rem 3rem;
}

.bv35-volunteer-page h1 {font-size:2rem;margin-bottom:1rem;}

.bv35-volunteer-page h2 {margin-top:2rem;margin-bottom:0.75rem;}

.bv35-volunteer-page h3 {margin-top:1.5rem;margin-bottom:0.5rem;}

.bv35-section {margin-bottom:2.5rem;}

.bv35-section p {margin-bottom:0.75rem;}

.bv35-section ul {padding-left:1.2rem;margin-bottom:0.75rem;}

.bv35-section ul li {margin-bottom:0.25rem;}

.bv35-section .wp-block-gallery,
.bv35-section .wp-block-image,
.bv35-section .wp-block-video,
.bv35-section .wp-block-embed {
  margin-top:0.75rem;
  margin-bottom:1rem;
}

/* Медія/галереї – одна уніфікована версія */
.bv35-media {
  margin: 0 0 1.5rem 0;
  text-align: center;
}

.bv35-media img,
.bv35-media video {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
  border-radius: 12px;
}

.bv35-media video {
  max-width: 800px;
}

.bv35-media figcaption {
  font-size: 0.9rem;
  margin-top: 0.4rem;
  color: #555;
}

/* Галерея */
.bv35-gallery {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  justify-content: center;
  margin-bottom: 1.5rem;
}

.bv35-gallery .bv35-media {
  flex: 0 1 auto;
  margin: 0;
}

.bv35-gallery .bv35-media img {
  max-height: 240px;
  object-fit: contain;
}

.bv35-gallery .bv35-media video {
  width: 100%;
  height: 360px;
  object-fit: cover;
  border-radius: 12px;
}

@media (max-width: 600px) {
  .bv35-gallery .bv35-media {
    flex: 1 1 45%;
  }
  .bv35-gallery .bv35-media img {
    max-height: 200px;
  }
  .bv35-gallery .bv35-media video {
    height: 260px;
  }
}

/* FAQ блоки */
.bv35-faq-section {
  padding-top: 32px;
  padding-bottom: 40px;
}

.bv35-faq-container {
  padding: 0 !important;
  margin: 0 auto !important;
  max-width: 960px;
}

.bv35-faq-section h2 {
  margin-bottom: 18px !important;
}

.bv35-faq h3 {
  margin-top: 1.2rem;
}

.bv35-faq-item {
  margin: 0 0 10px 0;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
  background: #ffffff;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
  overflow: hidden;
}

.bv35-faq-item summary {
  cursor: pointer;
  list-style: none;
  padding: 12px 18px;
  display: flex;
  align-items: center;
}

.bv35-faq-item summary span {
  font-weight: 600;
  font-size: 0.98rem;
}

.bv35-faq-item summary::-webkit-details-marker {
  display: none;
}

.bv35-faq-item summary::after {
  content: "▾";
  margin-left: auto;
  font-size: 16px;
  transition: transform 0.2s ease;
  color: #4b5563;
}

.bv35-faq-item[open] summary::after {
  transform: rotate(180deg);
}

.bv35-faq-body {
  border-top: 1px solid #e2e8f0;
  padding: 10px 18px 14px;
  font-size: 0.95rem;
}

.bv35-faq-body p {
  margin: 0;
}

.bv35-faq-body a {
  text-decoration: underline;
}

.bv35-faq-item summary:hover {
  background: #f9fafb;
}

/* ================= FORMlNATOR: КНОПКА UPLOAD ================= */

/* Контейнер upload */
.forminator-ui.forminator-custom-form[data-design="basic"] .forminator-field-upload .forminator-upload {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px;
}

/* Кнопка "Choose File" – без зсуву вправо */
.forminator-ui.forminator-custom-form[data-design="basic"] .forminator-button-upload,
.forminator-ui .forminator-button-upload {
  margin: 0 !important;
  padding: 10px 24px !important;
  white-space: nowrap;
}

/* Текст "No file chosen" не тягне кнопку */
.forminator-ui.forminator-custom-form[data-design="basic"] .forminator-field-upload .forminator-upload span {
  flex-shrink: 0;
}

/* STATUT 1055 — завжди один стовпець на десктопі */
@media (min-width: 922px) {

  /* Ламаємо всі колонкові блоки у контенті (core + UAGB + інші) */
  body.page-id-1055 .entry-content [class*="columns"] {
    display: block !important;
    flex-direction: column !important;
    grid-template-columns: none !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Кожна «колонка» всередині займає 100% */
  body.page-id-1055 .entry-content [class*="columns"] > * {
    flex: 0 0 100% !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 0 24px 0 !important;
  }
}

/* Контейнер сторінки Статут */
body.page-id-1055 .site-content,
body.page-id-1055 .entry-content {
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* === STATUT 1055 — ЛАМАТИ ВСІ КОЛОНКИ НА ДЕСКТОПІ === */
@media (min-width: 922px) {

  /* Робимо головний контейнер повністю одноколонковим */
  body.page-id-1055 main.ast-container.statute-page {
    display: block !important;
    width: 100% !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  /* Ламаємо ВСІ Spectra/UAGB контейнерні блоки */
  body.page-id-1055 .uagb-section,
  body.page-id-1055 .uagb-container,
  body.page-id-1055 .uagb-columns {
    display: block !important;
    grid-template-columns: none !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  /* Усі колонки всередині цих блоків */
  body.page-id-1055 .uagb-column,
  body.page-id-1055 .uagb-columns > * {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    margin-bottom: 25px !important;
  }

  /* Ламаємо стандартні Gutenberg columns */
  body.page-id-1055 .wp-block-columns {
    display: block !important;
  }

  body.page-id-1055 .wp-block-columns > .wp-block-column {
    width: 100% !important;
    margin-bottom: 25px !important;
  }
}

/* Виправлення маленьких картинок у блоках "Напрямки" */
.home .wp-block-image img {
    width: 100% !important;
    max-width: 340px !important;   /* оптимальний розмір */
    height: auto !important;
    border-radius: 12px;
    display: block;
    margin: 20px auto;
}

/* На мобільному, якщо колонки стають у 1 стовпець */
@media (max-width: 768px) {
    .home .wp-block-column .wp-block-image img {
        max-width: 280px !important;
        margin: 20px auto;
    }
}

/* Головна (page-id-296): нормальний розмір фото в "Напрямках" */

/* Gutenberg-зображення в колонках */
body.page-id-296 .wp-block-columns .wp-block-column .wp-block-image img,
body.page-id-296 .wp-block-columns .wp-block-column figure img {
    width: 100% !important;
    max-width: 320px !important;   /* можна змінити на 260–360 */
    height: auto !important;
    display: block !important;
    margin: 16px auto 0 !important;
}

/* Якщо там Spectra/UAGB-картинки */
body.page-id-296 [class*="uagb-image-"] .uagb-image__figure,
body.page-id-296 [class*="uagb-image-"] .uagb-image__image-wrap {
    width: 100% !important;
    max-width: 320px !important;
    margin: 16px auto 0 !important;
}

body.page-id-296 [class*="uagb-image-"] .uagb-image__figure img {
    width: 100% !important;
    max-width: 320px !important;
    height: auto !important;
    display: block !important;
}

/* Здвиг кастомного футер-блоку вправо */
.site-footer div[style*="display:flex"][style*="flex-wrap:wrap"] {
    margin-left: 20px !important;
}

/* ===== SINGLE POST: нормальний розмір головної картинки ===== */
/* Головне зображення статті */
.single-post .ast-single-post-featured-section,
.single-post .post-thumb {
    text-align: center !important;
}

.single-post .ast-single-post-featured-section img,
.single-post .post-thumb img,
.single-post .wp-post-image,
.single-post .attachment-full {
    display: block !important;
    width: 100% !important;
    max-width: 700px !important;
    height: auto !important;
    margin: 20px auto 30px auto !important;
}

/* Виправлення обрізання головного зображення запису */
.single-post header.entry-header .post-thumb img,
.single-post .ast-single-post-featured-section.post-thumb img,
.single-post .post-thumb img,
.single-post .wp-post-image {
    aspect-ratio: auto !important;
    object-fit: contain !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100% !important;
    display: block !important;
    margin: 20px auto 30px auto !important;
}

/* Показувати всю мініатюру в картках блогу */
.blog .post-thumb img,
.archive .post-thumb img,
.blog .wp-post-image,
.archive .wp-post-image {
    object-fit: contain !important;
    height: auto !important;
}

/* Картки послуг на головній */
.uagb-post__image,
.uagb-post__image img {
    height: auto !important;
}

.uagb-post__image img {
    object-fit: contain !important;
}

/* BudNavy35 Core Web Vitals fixes: CLS/LCP */

/* Reserve stable space for the site logo in header before lazyload swaps src. */
.site-header .custom-logo-link,
.ast-site-identity .custom-logo-link {
  display: inline-flex;
  align-items: center;
  width: 237px;
  max-width: min(237px, 52vw);
  min-height: 79px;
}

.site-header img.custom-logo,
.ast-site-identity img.custom-logo {
  display: block;
  width: 237px;
  max-width: 100%;
  height: auto;
  aspect-ratio: 237 / 79;
}

/* Keep author metadata from shifting when the avatar image is swapped in. */
.single-post .entry-meta,
.single-post .ast-author-avatar {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.single-post .ast-author-avatar {
  width: 40px;
  height: 40px;
  flex: 0 0 40px;
}

.single-post .avatar.avatar-40 {
  display: block;
  width: 40px;
  height: 40px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
}

/* Featured images are the usual LCP element on posts. Reserve 3:2 space. */
.single-post .post-thumb-img-content.post-thumb {
  width: 100%;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: #f3f4f6;
}

.single-post .post-thumb-img-content.post-thumb img.wp-post-image {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

/* Related posts are below the article but still contribute to layout shifts. */
.ast-single-related-posts-container .post-thumb-img-content,
.ast-related-post-featured-section .post-thumb-img-content {
  width: 100%;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: #f3f4f6;
}

.ast-single-related-posts-container img.wp-post-image,
.ast-related-post-featured-section img.wp-post-image {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
}

/* Prevent late widget/card rendering from changing card dimensions. */
.ast-related-posts-wrapper {
  align-items: stretch;
}

.ast-related-posts-wrapper .ast-related-post {
  min-height: 260px;
}

/* Stabilize article tables and embeds on mobile. */
.single-post .entry-content table {
  table-layout: fixed;
}

.single-post .entry-content iframe,
.single-post .entry-content video,
.single-post .entry-content embed {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
}

/* CSS для зменшення CLS */
@media (max-width: 768px) {
  .site-header .custom-logo-link,
  .ast-site-identity .custom-logo-link {
    max-width: 180px;
    min-height: 60px;
  }

  .single-post .entry-title {
    overflow-wrap: anywhere;
  }

  .ast-related-posts-wrapper .ast-related-post {
    min-height: 220px;
  }
}

.internal-link-note {
  margin: 24px 0;
  padding: 18px 22px;
  border-left: 5px solid #12372f;
  border-radius: 10px;
  background: #f0f7f5;
}

.internal-link-note p {
  margin: 0;
}

.internal-link-note a {
  font-weight: 700;
}

/* BudNavy35 blog archive intro + archive polish */
body.blog .ast-archive-entry-banner {
  display: none !important;
}

body.blog.ast-separate-container #primary,
body.blog.ast-separate-container .site-main {
  margin-top: 0 !important;
}

.bn-blog-intro {
  width: 100vw;
  max-width: none;
  margin: 0 calc(50% - 50vw) 34px;
  padding: 38px max(24px, calc((100vw - 1180px) / 2)) 30px;
  border-bottom: 1px solid #dbe4ef;
  color: #14233a;
}

.bn-blog-intro__eyebrow {
  position: relative;
  margin: 0 0 14px;
  padding-bottom: 9px;
  color: #123f73;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.bn-blog-intro__eyebrow::after {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 48px;
  height: 3px;
  background: #d6a938;
  content: "";
}

.bn-blog-intro h2 {
  max-width: 980px;
  margin: 0 0 16px;
  color: #071d38;
  font-size: clamp(34px, 4.2vw, 54px);
  line-height: 1.06;
  letter-spacing: 0;
}

.bn-blog-intro p {
  max-width: 1040px;
  margin: 0 0 18px;
  color: #53647a;
  font-size: 18px;
  line-height: 1.65;
}

.bn-blog-intro__links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin: 22px 0 16px;
}

.bn-blog-intro__links a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  padding: 9px 14px;
  border: 1px solid #123f73;
  border-radius: 6px;
  background: #fff;
  color: #123f73 !important;
  font-weight: 900;
  line-height: 1.2;
  text-decoration: none !important;
}

.bn-blog-intro__links a:hover,
.bn-blog-intro__links a:focus {
  background: #eaf2fb;
}

.bn-blog-intro__updated {
  display: inline-flex;
  margin: 0 !important;
  padding: 10px 12px;
  border-left: 3px solid #d6a938;
  background: #fff8e6;
  color: #53647a !important;
  font-size: 15px !important;
  line-height: 1.45 !important;
}

body.blog .site-main > .ast-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 22px 48px;
}

body.blog .ast-article-post {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  overflow: hidden;
  margin: 0 !important;
  border: 1px solid #dbe4ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 39, 71, 0.07);
}

body.blog .ast-article-post .ast-article-inner,
body.blog .ast-article-post .post-content.ast-grid-common-col {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  padding: 0 !important;
}

body.blog .ast-article-post .ast-blog-featured-section,
body.blog .ast-article-post .post-thumb,
body.blog .ast-article-post .post-thumb-img-content,
body.blog .ast-article-post .post-thumb-img-content a {
  display: block;
  width: 100% !important;
}

body.blog .ast-article-post .post-thumb-img-content {
  background: #f6f8fb;
}

body.blog .ast-article-post .post-thumb-img-content img,
body.blog .ast-article-post .wp-post-image {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: contain !important;
  background: #f6f8fb;
}

body.blog .ast-article-post .entry-header,
body.blog .ast-article-post .entry-content,
body.blog .ast-article-post .entry-meta,
body.blog .ast-article-post .ast-taxonomy-container,
body.blog .ast-article-post .ast-excerpt-container,
body.blog .ast-article-post .read-more {
  padding-left: 18px;
  padding-right: 18px;
}

body.blog .ast-article-post .entry-header.ast-blog-meta-container,
body.blog .ast-article-post .entry-meta {
  display: none !important;
}

body.blog .ast-article-post .ast-taxonomy-container {
  display: block;
  margin-top: 16px;
  color: #123f73;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.35;
}

body.blog .ast-article-post .ast-taxonomy-container a {
  color: #123f73 !important;
  text-decoration: none !important;
}

body.blog .ast-article-post .entry-title {
  margin: 14px 0 12px !important;
  padding-left: 18px;
  padding-right: 18px;
  font-size: 20px !important;
  line-height: 1.25 !important;
  text-align: left !important;
}

body.blog .ast-article-post .entry-title a {
  color: #0b274b !important;
  text-decoration: none !important;
}

body.blog .ast-article-post .entry-content p {
  color: #5d6d83;
  font-size: 15px;
  line-height: 1.6;
}

body.blog .ast-article-post .ast-excerpt-container {
  margin-top: 0;
}

body.blog .ast-article-post .read-more {
  margin: 18px 0 22px !important;
}

body.blog .ast-article-post .read-more a {
  color: #123f73 !important;
  font-weight: 900;
  text-decoration: none !important;
}

@media (max-width: 921px) {
  body.blog .site-main > .ast-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .bn-blog-intro {
    padding: 28px 16px 24px;
  }

  .bn-blog-intro__links,
  body.blog .site-main > .ast-row {
    display: grid;
    grid-template-columns: 1fr;
  }

  .bn-blog-intro__links a {
    width: 100%;
  }
}

/* BudNavy35 category archive intros + archive polish */
body.category-novyny-ta-rozyasnennya .ast-archive-entry-banner,
body.category-minoborony .ast-archive-entry-banner {
  display: none !important;
}

body.category-novyny-ta-rozyasnennya.ast-separate-container #primary,
body.category-minoborony.ast-separate-container #primary,
body.category-novyny-ta-rozyasnennya.ast-separate-container .site-main,
body.category-minoborony.ast-separate-container .site-main {
  margin-top: 0 !important;
}

.bn-category-intro {
  width: 100vw;
  max-width: none;
  margin: 0 calc(50% - 50vw) 34px;
  padding: 38px max(24px, calc((100vw - 1180px) / 2)) 30px;
  border-bottom: 1px solid #dbe4ef;
  color: #14233a;
}

.bn-category-intro__eyebrow {
  position: relative;
  margin: 0 0 14px;
  padding-bottom: 9px;
  color: #123f73;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

.bn-category-intro__eyebrow::after {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 48px;
  height: 3px;
  background: #d6a938;
  content: "";
}

.bn-category-intro h2 {
  max-width: 980px;
  margin: 0 0 16px;
  color: #071d38;
  font-size: clamp(34px, 4.2vw, 54px);
  line-height: 1.06;
  letter-spacing: 0;
}

.bn-category-intro p {
  max-width: 1040px;
  margin: 0 0 18px;
  color: #53647a;
  font-size: 18px;
  line-height: 1.65;
}

.bn-category-intro__links {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
}

.bn-category-intro__links a {
  display: inline-flex;
  min-height: 40px;
  align-items: center;
  justify-content: center;
  padding: 9px 14px;
  border: 1px solid #123f73;
  border-radius: 6px;
  background: #fff;
  color: #123f73 !important;
  font-weight: 900;
  line-height: 1.2;
  text-decoration: none !important;
}

.bn-category-intro__links a:hover,
.bn-category-intro__links a:focus {
  background: #eaf2fb;
}

body.category-novyny-ta-rozyasnennya .site-main > .ast-row,
body.category-minoborony .site-main > .ast-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  max-width: 1120px;
  margin: 0 auto;
  padding: 0 22px 48px;
}

body.category-novyny-ta-rozyasnennya .ast-article-post,
body.category-minoborony .ast-article-post {
  float: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  overflow: hidden;
  margin: 0 !important;
  border: 1px solid #dbe4ef;
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(15, 39, 71, 0.07);
}

body.category-novyny-ta-rozyasnennya .ast-article-post .ast-article-inner,
body.category-minoborony .ast-article-post .ast-article-inner,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-content.ast-grid-common-col,
body.category-minoborony .ast-article-post .post-content.ast-grid-common-col {
  float: none !important;
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
  padding: 0 !important;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .ast-blog-featured-section,
body.category-minoborony .ast-article-post .ast-blog-featured-section,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb,
body.category-minoborony .ast-article-post .post-thumb,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content,
body.category-minoborony .ast-article-post .post-thumb-img-content,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content a,
body.category-minoborony .ast-article-post .post-thumb-img-content a {
  display: block;
  width: 100% !important;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content,
body.category-minoborony .ast-article-post .post-thumb-img-content {
  background: #f6f8fb;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content img,
body.category-minoborony .ast-article-post .post-thumb-img-content img,
body.category-novyny-ta-rozyasnennya .ast-article-post .wp-post-image,
body.category-minoborony .ast-article-post .wp-post-image {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: contain !important;
  background: #f6f8fb;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .entry-header,
body.category-minoborony .ast-article-post .entry-header,
body.category-novyny-ta-rozyasnennya .ast-article-post .entry-content,
body.category-minoborony .ast-article-post .entry-content,
body.category-novyny-ta-rozyasnennya .ast-article-post .entry-meta,
body.category-minoborony .ast-article-post .entry-meta,
body.category-novyny-ta-rozyasnennya .ast-article-post .ast-taxonomy-container,
body.category-minoborony .ast-article-post .ast-taxonomy-container,
body.category-novyny-ta-rozyasnennya .ast-article-post .ast-excerpt-container,
body.category-minoborony .ast-article-post .ast-excerpt-container,
body.category-novyny-ta-rozyasnennya .ast-article-post .read-more,
body.category-minoborony .ast-article-post .read-more {
  padding-left: 18px;
  padding-right: 18px;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .entry-header.ast-blog-meta-container,
body.category-minoborony .ast-article-post .entry-header.ast-blog-meta-container,
body.category-novyny-ta-rozyasnennya .ast-article-post .entry-meta,
body.category-minoborony .ast-article-post .entry-meta {
  display: none !important;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .ast-taxonomy-container,
body.category-minoborony .ast-article-post .ast-taxonomy-container {
  display: block;
  margin-top: 16px;
  color: #123f73;
  font-size: 13px;
  font-weight: 900;
  line-height: 1.35;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .ast-taxonomy-container a,
body.category-minoborony .ast-article-post .ast-taxonomy-container a {
  color: #123f73 !important;
  text-decoration: none !important;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .entry-title,
body.category-minoborony .ast-article-post .entry-title {
  margin: 14px 0 12px !important;
  padding-left: 18px;
  padding-right: 18px;
  font-size: 20px !important;
  line-height: 1.25 !important;
  text-align: left !important;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .entry-title a,
body.category-minoborony .ast-article-post .entry-title a {
  color: #0b274b !important;
  text-decoration: none !important;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .entry-content p,
body.category-minoborony .ast-article-post .entry-content p {
  color: #5d6d83;
  font-size: 15px;
  line-height: 1.6;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .ast-excerpt-container,
body.category-minoborony .ast-article-post .ast-excerpt-container {
  margin-top: 0;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .read-more,
body.category-minoborony .ast-article-post .read-more {
  margin: 18px 0 22px !important;
}

body.category-novyny-ta-rozyasnennya .ast-article-post .read-more a,
body.category-minoborony .ast-article-post .read-more a {
  color: #123f73 !important;
  font-weight: 900;
  text-decoration: none !important;
}

@media (max-width: 921px) {
  body.category-novyny-ta-rozyasnennya .site-main > .ast-row,
  body.category-minoborony .site-main > .ast-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .bn-category-intro {
    padding: 28px 16px 24px;
  }

  .bn-category-intro__links,
  body.category-novyny-ta-rozyasnennya .site-main > .ast-row,
  body.category-minoborony .site-main > .ast-row {
    display: grid;
    grid-template-columns: 1fr;
  }

  .bn-category-intro__links a {
    width: 100%;
  }
}

/* Single post featured image: final override after CWV rules. */
.single-post .post-thumb-img-content.post-thumb {
  max-width: 900px !important;
  margin: 20px auto 30px !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
  background: transparent !important;
}

.single-post .post-thumb-img-content.post-thumb img.wp-post-image,
.single-post .ast-single-post-featured-section img.wp-post-image,
.single-post .post-thumb img.wp-post-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
}

/* Archive cards: final image override. Keep full blog cover visible. */
body.blog .ast-article-post .ast-blog-featured-section,
body.blog .ast-article-post .post-thumb,
body.blog .ast-article-post .post-thumb-img-content,
body.blog .ast-article-post .post-thumb-img-content a,
body.category-novyny-ta-rozyasnennya .ast-article-post .ast-blog-featured-section,
body.category-minoborony .ast-article-post .ast-blog-featured-section,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb,
body.category-minoborony .ast-article-post .post-thumb,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content,
body.category-minoborony .ast-article-post .post-thumb-img-content,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content a,
body.category-minoborony .ast-article-post .post-thumb-img-content a {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  overflow: visible !important;
  background: #f6f8fb !important;
}

body.blog .ast-article-post .post-thumb-img-content img,
body.blog .ast-article-post img.wp-post-image,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content img,
body.category-minoborony .ast-article-post .post-thumb-img-content img,
body.category-novyny-ta-rozyasnennya .ast-article-post img.wp-post-image,
body.category-minoborony .ast-article-post img.wp-post-image {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  margin: 0 auto !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #f6f8fb !important;
}

/* Archive cards: no-crop image frame. Use the image as a contained cover. */
body.blog .ast-article-post .ast-blog-featured-section,
body.category-novyny-ta-rozyasnennya .ast-article-post .ast-blog-featured-section,
body.category-minoborony .ast-article-post .ast-blog-featured-section {
  padding: 12px 12px 0 !important;
  margin: 0 !important;
  background: #fff !important;
}

body.blog .ast-article-post .post-thumb-img-content,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content,
body.category-minoborony .ast-article-post .post-thumb-img-content {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 210px !important;
  max-height: none !important;
  margin: 0 !important;
  overflow: hidden !important;
  border-radius: 6px !important;
  background: #f6f8fb !important;
}

body.blog .ast-article-post .post-thumb-img-content a,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content a,
body.category-minoborony .ast-article-post .post-thumb-img-content a {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
}

body.blog .ast-article-post .post-thumb-img-content img.wp-post-image,
body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content img.wp-post-image,
body.category-minoborony .ast-article-post .post-thumb-img-content img.wp-post-image {
  display: block !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 auto !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
}

@media (max-width: 640px) {
  body.blog .ast-article-post .post-thumb-img-content,
  body.category-novyny-ta-rozyasnennya .ast-article-post .post-thumb-img-content,
body.category-minoborony .ast-article-post .post-thumb-img-content {
    height: 190px !important;
  }
}

/* Related posts: clean card meta on single posts. */
.single-post .ast-related-post .entry-meta,
.single-post .ast-related-posts-wrapper .entry-meta,
.single-post .ast-related-post .ast-taxonomy-container,
.single-post .ast-related-posts-wrapper .ast-taxonomy-container {
  display: none !important;
}

.single-post .ast-related-post .entry-title,
.single-post .ast-related-posts-wrapper .entry-title {
  margin: 14px 0 0 !important;
  font-size: 20px !important;
  line-height: 1.28 !important;
}

.single-post .ast-related-post .entry-title a,
.single-post .ast-related-posts-wrapper .entry-title a {
  color: #0b274b !important;
  text-decoration: none !important;
}

.single-post .ast-related-post .post-thumb-img-content,
.single-post .ast-related-posts-wrapper .post-thumb-img-content {
  margin: 0 0 14px !important;
}

/* P1 performance fix: blog-nakaz-mou-402-rozklad-hvorob-vlk */
body.postid-1616 .post-thumb-img-content.post-thumb,
body.postid-1616 .ast-single-post-featured-section.post-thumb {
  display: block !important;
  width: 100% !important;
  max-width: 900px !important;
  margin: 20px auto 30px !important;
  aspect-ratio: 3 / 2 !important;
  overflow: hidden !important;
  background: #f3f4f6 !important;
}

body.postid-1616 .post-thumb-img-content.post-thumb img.wp-post-image,
body.postid-1616 .ast-single-post-featured-section.post-thumb img.wp-post-image,
body.postid-1616 img.attachment-full.size-full.wp-post-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  aspect-ratio: 3 / 2 !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #f3f4f6 !important;
}

body.postid-1616 .entry-title {
  overflow-wrap: anywhere;
}

body.postid-1616 .ast-single-related-posts-container .post-thumb-img-content,
body.postid-1616 .ast-related-post-featured-section .post-thumb-img-content {
  width: 100% !important;
  aspect-ratio: 3 / 2 !important;
  overflow: hidden !important;
  background: #f3f4f6 !important;
}

body.postid-1616 .ast-single-related-posts-container img.wp-post-image,
body.postid-1616 .ast-related-post-featured-section img.wp-post-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

body.postid-1616 .ast-related-post .entry-meta,
body.postid-1616 .ast-related-posts-wrapper .entry-meta,
body.postid-1616 .ast-related-post .ast-taxonomy-container,
body.postid-1616 .ast-related-posts-wrapper .ast-taxonomy-container {
  display: none !important;
}

@media (max-width: 640px) {
  body.postid-1616 .post-thumb-img-content.post-thumb,
  body.postid-1616 .ast-single-post-featured-section.post-thumb {
    margin-top: 14px !important;
    margin-bottom: 22px !important;
  }
}

/* Global single post LCP/CLS fix for featured images */
body.single-post .post-thumb-img-content.post-thumb,
body.single-post .ast-single-post-featured-section.post-thumb {
  display: block !important;
  width: 100% !important;
  max-width: 900px !important;
  margin: 20px auto 30px !important;
  aspect-ratio: 3 / 2 !important;
  overflow: hidden !important;
  background: #f3f4f6 !important;
}

body.single-post .post-thumb-img-content.post-thumb img.wp-post-image,
body.single-post .ast-single-post-featured-section.post-thumb img.wp-post-image,
body.single-post img.attachment-full.size-full.wp-post-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  margin: 0 auto !important;
  aspect-ratio: 3 / 2 !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #f3f4f6 !important;
}

body.single-post .entry-title {
  overflow-wrap: anywhere;
}

body.single-post .ast-single-related-posts-container .post-thumb-img-content,
body.single-post .ast-related-post-featured-section .post-thumb-img-content {
  width: 100% !important;
  aspect-ratio: 3 / 2 !important;
  overflow: hidden !important;
  background: #f3f4f6 !important;
}

body.single-post .ast-single-related-posts-container img.wp-post-image,
body.single-post .ast-related-post-featured-section img.wp-post-image {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: contain !important;
}

@media (max-width: 640px) {
  body.single-post .post-thumb-img-content.post-thumb,
  body.single-post .ast-single-post-featured-section.post-thumb {
    margin-top: 14px !important;
    margin-bottom: 22px !important;
  }
}

/* Internal link note for article/service pages */
.bn-note.bn-note--internal-link {
  margin: 24px 0;
  padding: 16px 18px;
  border-left: 4px solid #d7a51f;
  background: #f8fbff;
  color: #0b2341;
  font-size: 16px;
  line-height: 1.65;
}

.bn-note.bn-note--internal-link strong {
  color: #073b75;
  font-weight: 700;
}

.bn-note.bn-note--internal-link a {
  color: #073b75;
  font-weight: 700;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.bn-note.bn-note--internal-link a:hover {
  color: #0f4f91;
}

/* BN35 article components: social block */
.bn35-social {
  margin: 32px 0;
  padding: 24px 26px;
  border: 1px solid #dbe4ef;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(15, 39, 71, 0.06);
}

.bn35-social h2 {
  margin-top: 0;
  margin-bottom: 10px;
  color: #123f73;
  font-size: 24px;
  line-height: 1.35;
}

.bn35-social p {
  margin: 0;
  color: #5d6d83;
}

.bn35-social-list {
  list-style: none;
  padding: 0;
  margin: 18px 0 0;
  display: grid;
  gap: 12px;
}

.bn35-social-item {
  margin: 0;
}

.bn35-social-link {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px;
  border: 1px solid #dbe4ef;
  border-radius: 14px;
  background: #f6f8fb;
  color: #123f73;
  text-decoration: none;
  font-weight: 700;
  transition: border-color 0.15s ease, background-color 0.15s ease, transform 0.15s ease;
}

.bn35-social-link:hover {
  border-color: #123f73;
  background: #eef4fb;
  transform: translateY(-1px);
}

.bn35-social-icon {
  flex: 0 0 24px;
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #123f73;
}

.bn35-social-icon svg {
  width: 24px;
  height: 24px;
  display: block;
  fill: currentColor;
  stroke: currentColor;
}

@media (max-width: 768px) {
  .bn35-social {
    padding: 20px;
  }

  .bn35-social-link {
    align-items: flex-start;
  }
}

.bn35-social {
  margin-top: 32px;
  padding: 24px;
  border: 1px solid #dbe4ef;
  border-radius: 16px;
  background: #f8fbff;
}

.bn35-social h2 {
  margin: 0 0 18px;
  color: #123f73;
  font-size: 1.2rem;
  line-height: 1.3;
}

.bn35-social-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 12px;
}

.bn35-social-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 44px;
  padding: 10px 14px;
  border: 1px solid #cbd6e6;
  border-radius: 12px;
  background: #fff;
  color: #123f73;
  text-decoration: none;
  font-weight: 700;
  transition: transform 0.15s ease, border-color 0.15s ease, box-shadow 0.15s ease;
}

.bn35-social-link:hover,
.bn35-social-link:focus-visible {
  border-color: #123f73;
  box-shadow: 0 6px 16px rgba(18, 63, 115, 0.12);
  transform: translateY(-1px);
}

.bn35-social-icon {
  width: 20px;
  height: 20px;
  flex: 0 0 20px;
  fill: currentColor;
}

/* bn35 social block styles */
.bn35-social {
  margin: 40px 0 16px;
  padding: 24px;
  border: 1px solid #dbe4ef;
  border-radius: 18px;
  background: #f7fafc;
}

.bn35-social h2 {
  margin: 0 0 16px;
  color: #123f73;
  font-size: 24px;
  line-height: 1.3;
}

.bn35-social-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.bn35-social-link {
  display: flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 12px 16px;
  border: 1px solid #cfe0f2;
  border-radius: 12px;
  background: #fff;
  color: #123f73;
  text-decoration: none;
  font-weight: 700;
  transition: transform .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.bn35-social-link:hover,
.bn35-social-link:focus-visible {
  transform: translateY(-1px);
  border-color: #123f73;
  box-shadow: 0 8px 20px rgba(18, 63, 115, 0.08);
}

@media (max-width: 720px) {
  .bn35-social {
    padding: 18px;
  }

  .bn35-social-list {
    grid-template-columns: 1fr;
  }
}

/* bn35 article component styles */
.bn35-article {
  max-width: 920px;
  margin: 0 auto;
  font-size: 18px;
  line-height: 1.75;
  color: #1f2933;
}

.bn35-article p {
  margin: 0 0 18px;
}

.bn35-article h2 {
  margin: 44px 0 18px;
  font-size: 30px;
  line-height: 1.25;
  font-weight: 700;
  color: #071f1b;
  text-transform: none;
}

.bn35-article h3 {
  margin: 28px 0 12px;
  font-size: 22px;
  line-height: 1.35;
  font-weight: 700;
  color: #12372f;
  text-transform: none;
}

.bn35-article ul,
.bn35-article ol {
  margin: 14px 0 24px 22px;
  padding-left: 20px;
}

.bn35-article li {
  margin-bottom: 10px;
}

.bn35-article a {
  color: #b02a2a;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.bn35-article a:hover {
  color: #7f1d1d;
}

.bn35-warning,
.bn35-summary,
.bn35-toc,
.bn35-sources,
.bn35-related,
.bn35-faq,
.bn35-cta,
.bn35-author,
.bn35-disclaimer {
  margin: 24px 0;
  padding: 18px 20px;
  border-radius: 12px;
  border: 1px solid #dbe4ef;
  background: #f7fafc;
}

.bn35-warning {
  border-left: 4px solid #b02a2a;
  background: #fff7f7;
}

.bn35-summary h2,
.bn35-toc h2,
.bn35-sources h2,
.bn35-related h2,
.bn35-faq h2,
.bn35-cta h2,
.bn35-author h2 {
  margin-top: 0;
  margin-bottom: 14px;
  font-size: 24px;
}

.bn35-summary ul,
.bn35-toc ul,
.bn35-related ul,
.bn35-sources ul {
  margin-bottom: 0;
}

.bn35-toc a,
.bn35-related a,
.bn35-sources a,
.bn35-cta a {
  color: #123f73;
}

.bn35-social {
  margin: 40px 0 16px;
  padding: 24px;
  border: 1px solid #dbe4ef;
  border-radius: 18px;
  background: #f7fafc;
}

.bn35-updated {
  font-weight: 700;
  color: #123f73;
}

.bn35-disclaimer {
  background: #fff9ec;
  border-left: 4px solid #d6a938;
}

@media (max-width: 720px) {
  .bn35-article {
    font-size: 16px;
  }

  .bn35-article h2 {
    font-size: 26px;
  }

  .bn35-article h3 {
    font-size: 20px;
  }

  .bn35-social-list {
    grid-template-columns: 1fr;
  }
}

.bn35-article {
  max-width: 880px;
  margin: 0 auto;
  padding: 24px 18px 40px;
  color: #1f2937;
  line-height: 1.7;
}

.bn35-article > p,
.bn35-article > section,
.bn35-article > nav,
.bn35-article > h2,
.bn35-article > h3,
.bn35-article > table {
  margin-bottom: 1.5rem;
}

.bn35-summary,
.bn35-toc,
.bn35-note,
.bn35-warning,
.bn35-related,
.bn35-sources,
.bn35-faq,
.bn35-cta,
.bn35-social,
.bn35-author,
.bn35-updated,
.bn35-disclaimer {
  border: 1px solid #dbe4ef;
  border-radius: 16px;
  background: #fff;
  padding: 20px 22px;
}

.bn35-summary,
.bn35-toc,
.bn35-related,
.bn35-sources,
.bn35-faq,
.bn35-cta,
.bn35-social,
.bn35-author,
.bn35-updated,
.bn35-disclaimer {
  box-shadow: 0 8px 24px rgba(18, 63, 115, 0.05);
}

.bn35-warning {
  border-color: #e2c66d;
  background: #fffaf0;
}

.bn35-summary h2,
.bn35-toc h2,
.bn35-note h2,
.bn35-warning h2,
.bn35-related h2,
.bn35-sources h2,
.bn35-faq h2,
.bn35-cta h2,
.bn35-social h2,
.bn35-author h2,
.bn35-updated h2,
.bn35-disclaimer h2 {
  margin-top: 0;
  color: #123f73;
  line-height: 1.3;
}

.bn35-summary ul,
.bn35-related ul,
.bn35-sources ul,
.bn35-cta ul,
.bn35-social-list {
  margin: 0.75rem 0 0;
  padding-left: 1.25rem;
}

.bn35-toc ul {
  margin: 0.75rem 0 0;
  padding-left: 1.25rem;
}

.bn35-table {
  width: 100%;
  border-collapse: collapse;
  overflow: hidden;
  border-radius: 14px;
}

.bn35-table th,
.bn35-table td {
  border: 1px solid #dbe4ef;
  padding: 12px 14px;
  text-align: left;
  vertical-align: top;
}

.bn35-table th {
  background: #f3f8fd;
  font-weight: 700;
}

.bn35-social-list {
  list-style: none;
  padding-left: 0;
  display: grid;
  gap: 12px;
}

.bn35-cta ul,
.bn35-related ul,
.bn35-sources ul {
  display: grid;
  gap: 8px;
}

.bn35-cta a {
  color: #123f73;
}

.bn35-updated time {
  font-weight: 700;
  color: #123f73;
}

.bn35-disclaimer {
  font-size: 0.96rem;
  color: #4b5563;
}

@media (max-width: 720px) {
  .bn35-article {
    padding: 18px 14px 32px;
  }

  .bn35-summary,
  .bn35-toc,
  .bn35-note,
  .bn35-warning,
  .bn35-related,
  .bn35-sources,
  .bn35-faq,
  .bn35-cta,
  .bn35-social,
  .bn35-author,
  .bn35-updated,
  .bn35-disclaimer {
    padding: 16px;
  }
}

/* CLS fix: reserve aspect-ratio for homepage hero image (uag-image-792) on mobile,
   overriding the display:block reset above which lost Spectra's own box reservation. */
@media (max-width: 768px) {
  body.page-id-296 [class*="uagb-image-"] img.uag-image-792 {
    aspect-ratio: 460 / 500;
  }
}

/* Constrain oversized featured images on About/Rights/Rehabilitation pages
   (Pexels photos added 2026-07-22). These are WP Pages, not single-post,
   so the .single-post featured-image constraints above don't apply here. */
body.page-id-823 .ast-single-post-featured-section.post-thumb,
body.page-id-1227 .ast-single-post-featured-section.post-thumb,
body.page-id-1229 .ast-single-post-featured-section.post-thumb {
  display: block;
  width: 100%;
  max-width: 900px;
  margin: 20px auto 30px;
  aspect-ratio: 3 / 2;
  overflow: hidden;
  background: #f3f4f6;
}

body.page-id-823 .ast-single-post-featured-section.post-thumb img.wp-post-image,
body.page-id-1227 .ast-single-post-featured-section.post-thumb img.wp-post-image,
body.page-id-1229 .ast-single-post-featured-section.post-thumb img.wp-post-image {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  object-position: center center;
}

/* bn35-meta-group: compact merged strip for Author/Updated/Disclaimer
   (service metadata, shouldn't look like separate content cards) */
.bn35-meta-group {
  margin: 24px 0;
}

.bn35-meta-group .bn35-author,
.bn35-meta-group .bn35-updated,
.bn35-meta-group .bn35-disclaimer {
  border-radius: 0;
  padding: 16px 22px;
  font-size: 0.92rem;
  color: #5d6d83;
  margin: 0;
}

.bn35-meta-group .bn35-author {
  border-radius: 16px 16px 0 0;
  border-bottom: none;
}

.bn35-meta-group .bn35-updated {
  border-top: none;
  border-bottom: none;
}

.bn35-meta-group .bn35-disclaimer {
  border-radius: 0 0 16px 16px;
  border-top: none;
}

.bn35-meta-group .bn35-author h2,
.bn35-meta-group .bn35-updated h2 {
  font-size: 1rem;
  margin: 0 0 6px;
  color: #123f73;
}

.bn35-meta-group .bn35-author p,
.bn35-meta-group .bn35-updated p,
.bn35-meta-group .bn35-disclaimer p {
  margin: 0 0 6px;
}

.bn35-meta-group .bn35-author p:last-child,
.bn35-meta-group .bn35-updated p:last-child,
.bn35-meta-group .bn35-disclaimer p:last-child {
  margin-bottom: 0;
}

.bn35-meta-group .bn35-updated time {
  font-weight: 700;
  color: #123f73;
}

/* Fix: remove underline on social block links (Telegram/Facebook/X) —
   some other rule was overriding the earlier text-decoration:none. */
.bn35-social .bn35-social-link,
.bn35-social .bn35-social-link:hover,
.bn35-social .bn35-social-link:visited {
  text-decoration: none !important;
}

/* Fix: component links (CTA/social/related/sources/toc) turned red after being
   moved inside .bn35-article, because the article-wide link color rule
   (.bn35-article a) has equal specificity but comes later in the cascade.
   Higher-specificity override restores the intended blue for these components. */
.bn35-article .bn35-cta a,
.bn35-article .bn35-social-link,
.bn35-article .bn35-related a,
.bn35-article .bn35-sources a,
.bn35-article .bn35-toc a {
  color: #123f73;
}

.bn35-article .bn35-cta a:hover,
.bn35-article .bn35-related a:hover,
.bn35-article .bn35-sources a:hover,
.bn35-article .bn35-toc a:hover {
  color: #0f4f91;
}

/* Fix bn35-* component typography when used outside .bn35-article (archive/hub pages: /blog/, /category/...) */
.bn35-summary h2,
.bn35-toc h2,
.bn35-note h2,
.bn35-warning h2,
.bn35-related h2,
.bn35-sources h2,
.bn35-faq h2,
.bn35-cta h2,
.bn35-social h2,
.bn35-author h2,
.bn35-updated h2,
.bn35-disclaimer h2 {
  font-size: 26px;
  font-weight: 700;
  text-transform: none;
  line-height: 1.3;
  margin: 0 0 16px;
}

.bn35-faq h3 {
  font-size: 19px;
  font-weight: 700;
  text-transform: none;
  line-height: 1.4;
  color: #12372f;
  margin: 0;
  padding-top: 18px;
  border-top: 1px solid #e2e8f0;
}

.bn35-faq h3:first-of-type {
  padding-top: 0;
  border-top: none;
}

.bn35-faq p,
.bn35-cta p,
.bn35-social p {
  font-size: 16px;
  line-height: 1.65;
  color: #364152;
  margin: 8px 0 12px;
  text-transform: none;
  font-weight: 400;
}

.bn35-faq p:last-child {
  margin-bottom: 0;
}

/* Tighten spacing between bn35-faq / bn35-cta / bn35-social on archive pages: the content
   container there is flex/grid, so adjacent sibling margins do not collapse and were adding
   up (24px+24px=48px gap, 24px+40px=64px gap). Use one-sided margin-top only. */
.bn35-faq,
.bn35-cta,
.bn35-social {
  margin-top: 20px;
  margin-bottom: 0;
}

/* Constrain bn35-faq/cta/social width on archive pages so they don't stretch full column width */
.bn35-faq,
.bn35-cta,
.bn35-social {
  max-width: 880px;
  margin-left: auto;
  margin-right: auto;
}

/* Left-align bn35-faq/cta/social with the column edge (matching the intro block above them)
   instead of centering them — centering created a visible left-edge mismatch vs the intro. */
.bn35-faq,
.bn35-cta,
.bn35-social {
  margin-left: 0;
  margin-right: auto;
}

/* User feedback: center bn35-faq/cta/social instead of left-aligning them */
.bn35-faq,
.bn35-cta,
.bn35-social {
  margin-left: auto;
  margin-right: auto;
}

/* Match bn35-faq/cta/social width to .ast-row (the post-loop row width) instead of an arbitrary 880px */
.bn35-faq,
.bn35-cta,
.bn35-social {
  max-width: 936px;
}
