/* BarbadosNews 4.4.6 — visual alignment of ALL editorial hubs with 4.4.x home
 * and Market Next. Loaded ONLY on news pages/categories. Do not touch Market,
 * Academy, Calculators, front page or single news articles.
 * Existing HTML anchors, published dates, excerpts and SEO copy stay intact.
 */
body.bn-news-unified {
  --bnn-bg: #101820;
  --bnn-card: #10283a;
  --bnn-card2: #153248;
  --bnn-stroke: #25465f;
  --bnn-ink: #f1f6fc;
  --bnn-muted: #a9c0d1;
  --bnn-gold: #ffca63;
}
body.bn-news-unified .site-content.grid-container {
  max-width: 1400px;
  width: 100%;
  box-sizing: border-box;
  margin-inline: auto;
  padding-inline: clamp(14px, 2.6vw, 32px);
}
body.bn-news-unified .content-area,
body.bn-news-unified .site-main {
  width: 100%;
  min-width: 0;
}
body.bn-news-unified .site-main .inside-article {
  background: transparent;
  border: 0;
  box-shadow: none;
}
body.bn-news-unified.page .site-main .inside-article {
  padding: 0 0 36px;
}
body.bn-news-unified .bn-hub-page {
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
  padding: clamp(12px, 2vw, 24px) 0 44px;
  color: var(--bnn-ink);
  font-size: 15px;
  line-height: 1.65;
}
body.bn-news-unified .bn-hub-page :is(a, button) {
  -webkit-tap-highlight-color: transparent;
}
body.bn-news-unified .bn-hub-page a:focus-visible,
body.bn-news-unified.category .site-main a:focus-visible {
  outline: 2px solid var(--bnn-gold);
  outline-offset: 3px;
  border-radius: 4px;
}
/* Hero: same editorial rhythm as the latest BarbadosNews homepage. */
body.bn-news-unified .bn-hub-hero {
  padding: clamp(12px, 2.4vw, 30px);
  margin-bottom: 8px;
  border: 1px solid var(--bnn-stroke);
  border-radius: 18px;
  background: linear-gradient(115deg, #10283a 0%, #172b3d 65%, #102131 100%);
  box-shadow: inset 3px 0 0 rgba(255, 202, 99, .74);
}
body.bn-news-unified .bn-hub-kicker {
  font-size: 11px;
  letter-spacing: .12em;
  color: var(--bnn-gold);
  font-weight: 850;
}
body.bn-news-unified .bn-hub-hero h1 {
  font-size: clamp(27px, 3vw, 41px);
  line-height: 1.13;
  letter-spacing: -.03em;
  max-width: 920px;
  margin: 7px 0 13px;
  color: var(--bnn-ink);
}
body.bn-news-unified .bn-hub-lead {
  color: var(--bnn-muted);
  font-size: clamp(14px, 1.2vw, 16px);
  line-height: 1.65;
  max-width: 870px;
}
body.bn-news-unified .bn-hub-meta { color: #9ab2c3; }
body.bn-news-unified .bn-hub-nav {
  gap: 9px;
  margin: 2px 0 24px;
  padding: 14px 2px 12px;
  overscroll-behavior-x: contain;
}
body.bn-news-unified .bn-hub-nav a {
  padding: 9px 15px;
  border: 1px solid var(--bnn-stroke);
  background: #172a3b;
  border-radius: 999px;
  color: var(--bnn-ink);
  transition: border-color .2s, background .2s;
}
body.bn-news-unified .bn-hub-nav a:is(:hover, :focus-visible),
body.bn-news-unified .bn-hub-nav a.is-current {
  background: var(--bnn-gold);
  border-color: var(--bnn-gold);
  color: #182333;
}
body.bn-news-unified .bn-hub-section-head {
  align-items: end;
  margin-bottom: 18px;
  gap: 16px;
}
body.bn-news-unified .bn-hub-section-head h2,
body.bn-news-unified .bn-hub-guide h2,
body.bn-news-unified .bn-hub-subtopics > h2,
body.bn-news-unified .bn-hub-related > h2 {
  font-size: clamp(22px, 2vw, 29px);
  line-height: 1.22;
  letter-spacing: -.018em;
  color: var(--bnn-ink);
}
body.bn-news-unified .bn-hub-section-head p { color: var(--bnn-muted); }
/* Hero news story: landscape image and readable title, no forced stretching. */
body.bn-news-unified .bn-hub-lead-story {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr);
  align-items: stretch;
  margin-bottom: 17px;
  border: 1px solid var(--bnn-stroke);
  border-radius: 18px;
  background: linear-gradient(138deg, #10283a, #192f43);
  overflow: hidden;
  min-width: 0;
}
body.bn-news-unified .bn-hub-lead-image {
  min-height: 0;
  height: auto;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: #0d1b29;
}
body.bn-news-unified .bn-hub-lead-image img {
  width: 100%;
  height: 100%;
  min-height: 100%;
  object-fit: cover;
  display: block;
}
body.bn-news-unified .bn-hub-lead-body { padding: clamp(20px, 3vw, 36px); min-width: 0; }
body.bn-news-unified .bn-hub-lead-body h3 {
  font-size: clamp(22px, 2.15vw, 31px);
  line-height: 1.2;
  margin: 10px 0 12px;
}
body.bn-news-unified .bn-hub-lead-body h3 a,
body.bn-news-unified .bn-hub-card-v7 h3 a,
body.bn-news-unified .bn-hub-subtopic li a { color: var(--bnn-ink); }
body.bn-news-unified .bn-hub-lead-body h3 a:hover,
body.bn-news-unified .bn-hub-card-v7 h3 a:hover,
body.bn-news-unified .bn-hub-subtopic li a:hover { color: var(--bnn-gold); }
body.bn-news-unified .bn-hub-lead-body p { font-size: 14px; color: var(--bnn-muted); line-height: 1.65; }
body.bn-news-unified .bn-hub-read { color: var(--bnn-gold); }
body.bn-news-unified .bn-hub-card-meta-v7 { color: #a6bdd0; }
/* True editorial card grid with consistent imagery and equal heights. */
body.bn-news-unified .bn-hub-cards-v7 {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 17px;
}
body.bn-news-unified .bn-hub-card-v7 {
  display: flex;
  flex-direction: column;
  min-width: 0;
  border: 1px solid var(--bnn-stroke);
  background: var(--bnn-card);
  border-radius: 15px;
  box-shadow: 0 6px 24px rgba(0, 0, 0, .11);
  overflow: hidden;
  transition: border-color .18s, transform .18s;
}
body.bn-news-unified .bn-hub-card-v7:hover {
  border-color: #51738d;
  transform: translateY(-2px);
}
body.bn-news-unified .bn-hub-card-image-v7 {
  width: 100%;
  aspect-ratio: 16/9;
  background: linear-gradient(145deg, #17374a, #172333);
  overflow: hidden;
}
body.bn-news-unified .bn-hub-card-image-v7 img {
  height: 100%; width: 100%; object-fit: cover; display: block;
}
body.bn-news-unified .bn-hub-card-body-v7 {
  display: flex;
  flex-direction: column;
  flex: 1;
  padding: 18px 19px 19px;
  gap: 8px;
}
body.bn-news-unified .bn-hub-card-v7 h3 {
  font-size: clamp(16px, 1.28vw, 19px);
  line-height: 1.38;
  margin: 2px 0 4px;
}
body.bn-news-unified .bn-hub-card-v7 p { color: var(--bnn-muted); font-size: 13px; line-height: 1.6; }
body.bn-news-unified .bn-hub-pagination-v7 { margin-top: 25px; }
body.bn-news-unified .bn-hub-pagination-v7 :is(a,.current) {
  border-color: var(--bnn-stroke);
  border-radius: 9px;
  color: var(--bnn-ink);
  background: var(--bnn-card);
}
body.bn-news-unified .bn-hub-pagination-v7 .current {
  background: var(--bnn-gold);
  color: #172535;
  border-color: var(--bnn-gold);
}
/* Topic collections and SEO editorial guides should not look like leftovers. */
body.bn-news-unified :is(.bn-hub-subtopics,.bn-hub-guide,.bn-hub-related) {
  margin-top: clamp(32px, 3.2vw, 50px);
}
body.bn-news-unified .bn-hub-subtopics-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 17px; }
body.bn-news-unified .bn-hub-subtopic,
body.bn-news-unified .bn-hub-guide-card,
body.bn-news-unified .bn-hub-related-card,
body.bn-news-unified .bn-hub-empty {
  background: linear-gradient(145deg, var(--bnn-card), #112638);
  border: 1px solid var(--bnn-stroke);
  border-radius: 15px;
  padding: 21px;
  min-width: 0;
}
body.bn-news-unified .bn-hub-subtopic h3,
body.bn-news-unified .bn-hub-guide-card h3 { font-size: 18px; line-height: 1.35; color: var(--bnn-ink); }
body.bn-news-unified .bn-hub-subtopic li { border-color: var(--bnn-stroke); }
body.bn-news-unified .bn-hub-guide { border-top: 1px solid var(--bnn-stroke); padding-top: 28px; }
body.bn-news-unified .bn-hub-guide-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 17px; }
body.bn-news-unified .bn-hub-guide-card:first-child { grid-column: 1/-1; }
body.bn-news-unified .bn-hub-guide-card:nth-child(2):last-child { grid-column: 1/-1; }
body.bn-news-unified .bn-hub-guide-card p { font-size: 14px; color: var(--bnn-muted); line-height: 1.75; }
body.bn-news-unified .bn-hub-guide-card a { color: var(--bnn-gold); }
body.bn-news-unified .bn-hub-related { border-top: 1px solid var(--bnn-stroke); padding-top: 28px; }
body.bn-news-unified .bn-hub-related-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
body.bn-news-unified .bn-hub-related-card {
  min-height: 164px;
  text-decoration: none;
  display: flex;
  flex-direction: column;
}
body.bn-news-unified .bn-hub-related-card strong { color: var(--bnn-ink); font-size: 16px; }
body.bn-news-unified .bn-hub-related-card span { color: var(--bnn-muted); font-size: 12px; }
body.bn-news-unified .bn-hub-related-card em { color: var(--bnn-gold); }
body.bn-news-unified .bn-hub-related-card:hover { border-color: #537b98; }
/* Fallback real category archives, using unchanged GeneratePress article markup. */
body.bn-news-unified.category .site-main {
  display: grid;
  grid-template-columns: repeat(3, minmax(0,1fr));
  gap: 18px;
  align-items: start;
}
body.bn-news-unified.category .site-main > :is(.page-header,.bn-hub-header,.paging-navigation,.no-results,.nav-links) { grid-column: 1/-1; }
body.bn-news-unified.category .site-main > article.post {
  min-width: 0;
  align-self: stretch;
  background: var(--bnn-card);
  border: 1px solid var(--bnn-stroke);
  border-radius: 15px;
  overflow: hidden;
}
body.bn-news-unified.category .site-main > article.post .inside-article { padding: 16px; }
body.bn-news-unified.category .site-main > article.post img {
  width: 100%; height: auto; aspect-ratio:16/9; object-fit:cover;
  border-radius: 9px;
}
body.bn-news-unified.category .site-main > article.post .entry-title {
  font-size: clamp(17px, 1.3vw, 21px); line-height: 1.36;
}
body.bn-news-unified.category .site-main > article.post .entry-summary { font-size: 13px; color: var(--bnn-muted); }
body.bn-news-unified.category .site-main > .page-header,
body.bn-news-unified.category .site-main > .bn-hub-header {
  padding: 28px;
  border: 1px solid var(--bnn-stroke);
  border-radius: 16px;
  background: linear-gradient(120deg, #13293c,#172a3b);
}
body.bn-news-unified.category .site-main > .page-header h1 { font-size: clamp(26px,3vw,39px); }
/* Mobile — same reading order, no clipped photos, adequate tap targets. */
@media (max-width: 1024px) {
  body.bn-news-unified .bn-hub-page { padding-top: 12px; }
  body.bn-news-unified .bn-hub-related-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.bn-news-unified .bn-hub-subtopics-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.bn-news-unified.category .site-main { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width: 700px) {
  body.bn-news-unified .site-content.grid-container { padding-inline: 13px; }
  body.bn-news-unified .bn-hub-hero { padding: 19px; border-radius: 14px; }
  body.bn-news-unified .bn-hub-section-head { display: block; }
  body.bn-news-unified .bn-hub-section-head p { margin-top: 6px; }
  body.bn-news-unified .bn-hub-lead-story { grid-template-columns: 1fr; }
  body.bn-news-unified .bn-hub-lead-image { aspect-ratio: 16/9; }
  body.bn-news-unified .bn-hub-lead-body { padding: 19px; }
  body.bn-news-unified .bn-hub-cards-v7,
  body.bn-news-unified .bn-hub-page.is-paged .bn-hub-cards-v7,
  body.bn-news-unified .bn-hub-subtopics-grid,
  body.bn-news-unified .bn-hub-guide-grid { grid-template-columns: 1fr; }
  body.bn-news-unified .bn-hub-guide-card:first-child,
  body.bn-news-unified .bn-hub-guide-card:nth-child(2):last-child { grid-column: auto; }
  body.bn-news-unified .bn-hub-related-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  body.bn-news-unified .bn-hub-card-v7 h3 { font-size: 18px; }
  body.bn-news-unified .bn-hub-related-card { min-height: 142px; padding: 14px; }
  body.bn-news-unified.category .site-main { grid-template-columns: 1fr; }
  body.bn-news-unified.category .site-main > .page-header { padding: 20px; }
}
@media (max-width: 380px) {
  body.bn-news-unified .bn-hub-related-grid { grid-template-columns:1fr; }
}
@media (prefers-reduced-motion: reduce) {
  body.bn-news-unified .bn-hub-card-v7 { transition: none; }
  body.bn-news-unified .bn-hub-card-v7:hover { transform: none; }
}


/* BarbadosNews 4.4.6: FIX THE REAL WIDTH BOTTLENECK.
 * The active BN Market plugin assigns bn-plain-page to ALL top-level WP
 * pages and sets max-width:880px on .inside-article, padding:8px 20px !important.
 * Its generic page rule also constrains .entry-content to 820px.
 * Widen those structural wrappers only on news hub pages.
 * Do not modify actual articles, /market/, /academy/, /calculators/, or
 * other plain pages. Keep a bounded layout, not edge-to-edge text.
 */
body.bn-news-unified.page .site-content.grid-container,
body.bn-news-unified.page #content.site-content {
  width: 100%;
  max-width: 1400px;
  box-sizing: border-box;
  margin-inline: auto;
}
body.bn-news-unified.page .site-content > .content-area,
body.bn-news-unified.page .content-area,
body.bn-news-unified.page .site-main {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  flex: 1 1 100%;
  box-sizing: border-box;
}
/* Must beat .bn-plain-page .inside-article { max-width:880px;
 * padding:8px 20px 48px!important } from bn-market.css. */
body.bn-news-unified.page.bn-plain-page .site-main article.page > .inside-article,
body.bn-news-unified.page .site-main article.page > .inside-article {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
  margin: 0 auto !important;
  padding: 12px clamp(0px, 1.2vw, 18px) 44px !important;
  box-sizing: border-box;
}
/* Must beat body.page:not(.home) .entry-content {max-width:820px} */
body.bn-news-unified.page .site-main article.page .entry-content,
body.bn-news-unified.page.bn-plain-page .site-main article.page .entry-content {
  max-width: none !important;
  width: 100% !important;
  min-width: 0;
  box-sizing: border-box;
}
body.bn-news-unified.page .site-main .bn-hub-page {
  width: 100%;
  max-width: 1280px;
  margin-inline: auto;
}
/* Category views have their own markup, but must not inherit the plain-page
 * column width if a theme/plugin modifies an archive's parent wrapper. */
body.bn-news-unified.category .site-content > .content-area {
  width: 100% !important;
  max-width: none !important;
  min-width: 0;
}
@media (max-width: 700px) {
  body.bn-news-unified.page.bn-plain-page .site-main article.page > .inside-article,
  body.bn-news-unified.page .site-main article.page > .inside-article {
    padding: 8px 0 32px !important;
  }
  body.bn-news-unified.page .site-content.grid-container,
  body.bn-news-unified.page #content.site-content {
    padding-inline: 13px !important;
  }
}
