/* Newsbyteexpress single-post stability layer v1.8.0
   Loaded after the main stylesheet. Intentionally scoped to singular posts. */
.single-post,
.single-post .nbe-main,
.single-post .nbe-article,
.single-post .nbe-post-mast,
.single-post .nbe-article-body,
.single-post .nbe-author-card,
.single-post .nbe-related { min-width:0; max-width:100%; }
.single-post { overflow-x:hidden; }
.single-post .nbe-post-mast {
  width:min(1180px,calc(100% - 48px));
  margin-inline:auto;
  padding:46px 0 54px;
}
.single-post .nbe-post-mast:before { display:none; }
.single-post .nbe-post-kicker { margin-top:0; }
.single-post .nbe-post-mast h1 {
  max-width:960px;
  font-size:clamp(2.35rem,5vw,4.8rem);
  line-height:1.01;
  overflow-wrap:normal;
  word-break:normal;
  hyphens:none;
}
.single-post .nbe-dek { max-width:780px; }
.single-post .nbe-byline { margin-bottom:24px; }
.single-post .nbe-article-signals { max-width:760px; }
.single-post .nbe-story-axis { display:none; }
.single-post .nbe-post-hero {
  width:min(1080px,100%);
  margin:28px auto 0;
  border-radius:20px;
  overflow:hidden;
}
.single-post .nbe-post-hero:after { display:none; }
.single-post .nbe-post-hero img {
  width:100%; height:auto; max-height:620px; aspect-ratio:auto; object-fit:cover;
}
.single-post .nbe-article-body {
  width:min(780px,calc(100% - 40px));
  max-width:780px;
  margin:0 auto;
  padding:58px 0 84px;
  font-size:1.075rem;
  line-height:1.82;
  overflow:visible;
  white-space:normal;
  word-break:normal;
  overflow-wrap:break-word;
  hyphens:auto;
}
.single-post .nbe-article-body > * { max-width:100%; min-width:0; }
.single-post .nbe-article-body p,
.single-post .nbe-article-body li,
.single-post .nbe-article-body h1,
.single-post .nbe-article-body h2,
.single-post .nbe-article-body h3,
.single-post .nbe-article-body h4,
.single-post .nbe-article-body h5,
.single-post .nbe-article-body h6,
.single-post .nbe-article-body a,
.single-post .nbe-article-body span,
.single-post .nbe-article-body strong,
.single-post .nbe-article-body em {
  white-space:normal!important;
  word-break:normal!important;
  overflow-wrap:break-word!important;
  max-width:100%;
}
.single-post .nbe-article-body p { margin:0 0 1.35em; }
.single-post .nbe-article-body h2 { margin:2.15em 0 .72em; font-size:clamp(1.75rem,3vw,2.35rem); line-height:1.15; }
.single-post .nbe-article-body h3 { margin:1.8em 0 .62em; font-size:clamp(1.35rem,2.3vw,1.7rem); line-height:1.2; }
.single-post .nbe-article-body h4 { margin:1.55em 0 .55em; font-size:1.2rem; }
.single-post .nbe-article-body ul,
.single-post .nbe-article-body ol { margin:0 0 1.4em; padding-left:1.4em; }
.single-post .nbe-article-body blockquote,
.single-post .nbe-article-body .wp-block-pullquote,
.single-post .nbe-article-body .alignwide,
.single-post .nbe-article-body .alignfull,
.single-post .nbe-article-body .wp-block-columns,
.single-post .nbe-article-body .wp-block-media-text,
.single-post .nbe-article-body .wp-block-cover {
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
  transform:none!important;
}
.single-post .nbe-article-body blockquote {
  margin-top:2em!important;
  margin-bottom:2em!important;
  padding:24px 26px!important;
}
.single-post .nbe-article-body img,
.single-post .nbe-article-body video,
.single-post .nbe-article-body iframe,
.single-post .nbe-article-body svg,
.single-post .nbe-article-body canvas {
  max-width:100%!important;
  height:auto;
}
.single-post .nbe-article-body iframe { width:100%; }
.single-post .nbe-article-body figure { max-width:100%!important; margin-left:0!important; margin-right:0!important; }
.single-post .nbe-article-body table { width:100%!important; max-width:100%!important; }
.single-post .nbe-article-body .wp-block-table { width:100%; max-width:100%; overflow-x:auto; }
.single-post .nbe-article-body pre { max-width:100%; overflow-x:auto; white-space:pre; }
.single-post .nbe-author-card { width:min(780px,calc(100% - 40px)); margin-inline:auto; }
@media (max-width:680px){
  .single-post .nbe-post-mast{width:min(100% - 28px,1180px);padding:30px 0 38px}
  .single-post .nbe-post-mast h1{font-size:clamp(2.15rem,10.5vw,3.45rem)}
  .single-post .nbe-article-signals{grid-template-columns:1fr}
  .single-post .nbe-article-body{width:min(100% - 28px,780px);padding:42px 0 66px;font-size:1rem;line-height:1.75}
}
