/* =========================================================
   THE POLITICAL RIFT — HOME.CSS (homepage only)
   Newsroom skin + cards + live box + alignment fixes
   ========================================================= */

/* Base */
body.home{
  background: #fdf6e3;
  color: #333333;
}

body.home .wp-block-post-content,
body.home .entry-content{
  max-width: 1180px;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 14px !important;
  padding-right: 14px !important;
}

/* Masthead */
body.home h1{
  text-align: center;
  color: #ff6f00;
  font-weight: 950;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin: 14px 0 8px !important;
  line-height: 1.05;
}

/* Tagline under masthead (default block flow) */
body.home h1 + p{
  text-align: center;
  max-width: 820px;
  margin: 0 auto 14px !important;
  opacity: .9;
  line-height: 1.45;
}

/* Tagline hard-fix (only when you add class pr-tagline) */
body.home p.pr-tagline{
  display: block !important;
  width: 100% !important;
  max-width: 820px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-top: 0 !important;
  margin-bottom: 14px !important;
  text-align: center !important;
  opacity: .9 !important;
  line-height: 1.45 !important;
}

body.home p.pr-tagline *{
  text-align: center !important;
}

/* Section headings */
body.home h2{
  font-size: 15px !important;
  font-weight: 950 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
  color: #333333 !important;
  margin: 26px 0 6px !important;
  line-height: 1.1 !important;
}

/* Section lede (kept as you had it to preserve look) */
body.home h2 + p{
  font-size: 15px !important;
  color: #555 !important;
  max-width: 760px !important;
  margin: 0 0 8px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important; /* matches the Inside-the-Rift feel */
}

/* Section lede when a separator is between H2 and paragraph */
body.home h2 + .wp-block-separator + p{
  font-size: 15px !important;
  color: #555 !important;
  max-width: 760px !important;
  margin: 0 0 8px !important;
  line-height: 1.45 !important;
  font-weight: 500 !important; /* same as above */
}

/* Orange underline (separator baseline) */
body.home .wp-block-separator{
  border: 0 !important;
  height: 3px !important;
  width: 58px !important;
  background: #ff6f00 !important;
  border-radius: 2px !important;
  margin: 10px 0 22px !important;
}

/* Force dividers to sit directly under section titles */
body.home h2 + .wp-block-separator,
body.home h3 + .wp-block-separator{
  margin-top: 6px !important;
  margin-left: 0 !important;
  margin-right: auto !important;
  display: block !important;
  width: 58px !important;
  align-self: flex-start !important;
}

/* Query Loop cards */
body.home .wp-block-query .wp-block-post-template > li{
  border: 1px solid rgba(51,51,51,.16);
  border-radius: 16px;
  padding: 12px;
  background: #fdf6e3;
}

body.home .wp-block-post-featured-image{
  border-radius: 14px;
  overflow: hidden;
}

body.home .wp-block-post-title a{
  color: #333333;
  text-decoration: none;
  font-weight: 900;
}

body.home .wp-block-post-title a:hover{
  color: #ff6f00;
  text-decoration: underline;
}

body.home .wp-block-post-terms a{
  display: inline-block;
  padding: 4px 8px;
  border-radius: 7px;
  background: rgba(255,111,0,.12);
  color: #ff6f00;
  font-weight: 900;
  font-size: 11px;
  text-transform: uppercase;
}

body.home .wp-block-post-date{
  color: #666;
  font-size: 12px;
}

/* First query loop headline sizing (kept) */
body.home .wp-block-query:first-of-type .wp-block-post-title a{
  font-size: 28px;
  font-weight: 950;
}

/* Query loop spacing */
body.home .wp-block-query .wp-block-post-template{
  gap: 12px !important;
}

/* =========================================================
   LIVE BOX — deterministic stack everywhere
   pill + headline always stacks cleanly (desktop + mobile)
   ========================================================= */

/* Keep both scoped + unscoped selectors so it never “disappears” */
body.home .pr-livewrap,
.pr-livewrap{
  display: flex;
  flex-direction: column;      /* forces stack everywhere */
  align-items: center;
  justify-content: center;
  gap: 10px;                   /* clean spacing */

  padding: 10px 12px;
  border: 1px solid rgba(51,51,51,.20);
  border-radius: 12px;
  background: #fdf6e3;

  margin: 10px auto 0px !important;
  max-width: 980px;
  text-align: center;
}

body.home .pr-live-pill,
.pr-live-pill{
  background: #ff6f00;
  color: #111;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
  padding: 6px 12px;
  border-radius: 999px;
  font-size: 12px;
  white-space: nowrap;
}

body.home .pr-live-copy,
.pr-live-copy{
  font-weight: 650;
  text-align: center;
  line-height: 1.2;
  max-width: 720px;            /* prevents ugly wraps on wide screens */
  margin: 0;
}

body.home .pr-livewrap a,
.pr-livewrap a{
  color: #1f5d7a;
  font-weight: 850;
  text-decoration: none;
}

body.home .pr-livewrap a:hover,
.pr-livewrap a:hover{
  text-decoration: underline;
}

/* =========================================================
   SIGNALS — restored (this was missing)
   ========================================================= */

body.home .pr-signals,
.pr-signals{
  display: flex;
  gap: 10px;
  justify-content: center;
  flex-wrap: wrap;
  margin-top: 10px;
  margin-bottom: 6px;
}

body.home .pr-signal,
.pr-signal{
  font-size: 13px;
  font-weight: 800;
  padding: 6px 12px;
  border-radius: 999px;
  background: rgba(255,111,0,.12);
  color: #333;
  white-space: nowrap;
}

/* =========================================================
   HOME AD SLOTS — add home_mid_3 and home_mid_4
   Matches the rhythm of home_mid_1 and home_mid_2
   (layout-neutral, just width + spacing + overflow safety)
   ========================================================= */

body.home .pr-ad-slot,
body.home .pr-ad,
body.home [class*="pr-ad"],
body.home [id*="pr-ad"],
body.home [class*="pr_ad"],
body.home [id*="pr_ad"]{
  display: block;
  width: 100%;
  max-width: 1180px;
  margin: 26px auto !important;
  padding: 0 14px !important;
  box-sizing: border-box;
}

body.home .pr-ad-slot > *,
body.home .pr-ad > *,
body.home [class*="pr-ad"] > *,
body.home [class*="pr_ad"] > *{
  display: block;
  margin-left: auto !important;
  margin-right: auto !important;
  max-width: 100%;
}

/* Prevent iframe ads from overflowing on mobile */
body.home .pr-ad-slot iframe,
body.home .pr-ad iframe,
body.home [class*="pr-ad"] iframe,
body.home [class*="pr_ad"] iframe{
  max-width: 100% !important;
}

@media (max-width: 768px){
  body.home .pr-ad-slot,
  body.home .pr-ad,
  body.home [class*="pr-ad"],
  body.home [class*="pr_ad"],
  body.home [id*="pr-ad"],
  body.home [id*="pr_ad"]{
    margin: 22px auto !important;
  }
}