/* ---------- Article heading sizes ---------- */

/* Smaller article headings (single article view) */
.com-content-article .page-header h1 {
  font-size: 1.8rem;
  line-height: 1.2;
}

/* Smaller blog/category item headings (News listing pages) */
.com-content-category-blog .page-header h2,
.com-content-category-blog .item-title a {
  font-size: 1.4rem;
  line-height: 1.2;
}


/* ---------- News subcategory button menu ---------- */

.news-subcat-buttons ul,
.news-subcat-buttons ul.mod-menu,
.news-subcat-buttons ul.mod-menu.nav,
.news-subcat-buttons .mod-menu.nav {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  margin: 0 0 1rem 0 !important;
  padding: 0 !important;
  list-style: none !important;
  padding-left: 0 !important;
}

.news-subcat-buttons ul.mod-menu > li {
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex !important;
}

.news-subcat-buttons ul.mod-menu > li > a {
  display: inline-block !important;
  width: auto !important;
  padding: 8px 14px;
  border-radius: 10px;
  text-decoration: none;
  font-weight: 600;

  /* Warbirdz base look */
  background: #f8f9fa;
  color: #0b1c3a;
  border: 1px solid #cfd6df;
}

/* Hover */
.news-subcat-buttons ul.mod-menu > li > a:hover {
  background: #0b1c3a;
  color: #ffffff;
  border-color: #0b1c3a;
}

/* Active/current page */
.news-subcat-buttons ul.mod-menu > li.active > a,
.news-subcat-buttons ul.mod-menu > li.current > a {
  background: #0b1c3a;
  color: #ffffff;
  border-color: #0b1c3a;
}

/* Optional: subtle highlight ring for active */
.news-subcat-buttons ul.mod-menu > li.active > a {
  box-shadow: 0 0 0 3px rgba(11, 28, 58, 0.15);
}


/* ---------- Remove the Cassiopeia "card" wrapper around the News submenu module ---------- */

.main-top.card.news-subcat-buttons {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
}

/* Cassiopeia puts padding on the inner card body */
.main-top.card.news-subcat-buttons > .card-body {
  padding: 0 !important;
}


/* ---------- Article info line (hide "Details" and keep items inline) ---------- */

/* Hide the "Details" label */
.com-content-category-blog dl.article-info dt.article-info-term,
.com-content-article dl.article-info dt.article-info-term {
  display: none !important;
}

/* Put Written by / Published / Hits on one line */
.com-content-category-blog dl.article-info,
.com-content-article dl.article-info {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 14px !important;
  margin: 0.5rem 0 1rem 0 !important;
  padding: 0 !important;
}

/* Prevent each item being forced full-width */
.com-content-category-blog dl.article-info dd,
.com-content-article dl.article-info dd {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  flex: 0 0 auto !important;
  white-space: nowrap !important;
}

/* Tidy icon spacing */
.com-content-category-blog dl.article-info dd .icon-fw,
.com-content-article dl.article-info dd .icon-fw {
  margin-right: 6px !important;
}

/* Add subtle separators between Written by / Published / Hits */
.com-content-category-blog dl.article-info > dd,
.com-content-article dl.article-info > dd {
  position: relative;
  padding-right: 14px !important;
  margin-right: 14px !important;
}

.com-content-category-blog dl.article-info > dd:not(:last-of-type)::after,
.com-content-article dl.article-info > dd:not(:last-of-type)::after {
  content: "|";
  position: absolute;
  right: 0;
  opacity: 0.35;
}


/* ---------- Blue divider lines between articles on News listing pages ---------- */

.com-content-category-blog .blog-items .com-content-category-blog__item.blog-item {
  border-top: 2px solid #0b1c3a !important;
  padding-top: 1rem !important;
  margin-top: 1rem !important;
}

.com-content-category-blog .blog-items .com-content-category-blog__item.blog-item:first-of-type {
  border-top: 0 !important;
  padding-top: 0 !important;
  margin-top: 0 !important;
}











