/* ============================================================
   Bloodpril — blog section stylesheet (separate from style.css)
   bloodprilstore.com · prefix: bp-
   Loaded only on /blog/ pages.
   ============================================================ */

.bp-bloghead{
  background:var(--bp-paper);border-bottom:1px solid var(--bp-line-soft);
  padding:2.8rem 0 2.4rem;position:relative;overflow:hidden;
}
.bp-bloghead::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(56% 68% at 86% 22%,rgba(184,144,80,.16),transparent 70%);
}
.bp-bloghead > .container{position:relative;z-index:2}

/* ── Category chips ───────────────────────────────────────── */
.bp-cats{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:1.6rem}
.bp-cats a{
  font-family:var(--bp-mono);font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;
  padding:.52rem 1rem;border-radius:999px;border:1px solid var(--bp-line);
  background:var(--bp-white);color:var(--bp-body);text-decoration:none;
  transition:border-color .16s,color .16s,background .16s;
}
.bp-cats a:hover,.bp-cats a[aria-current="page"]{
  border-color:var(--bp-steel);color:var(--bp-steel-d);background:var(--bp-steel-tint);
  text-decoration:none;
}

/* ── Post cards ───────────────────────────────────────────── */
.bp-postcard{
  background:var(--bp-white);border:1px solid var(--bp-line);
  border-radius:var(--bp-r-lg);padding:1.6rem 1.5rem;height:100%;
  display:flex;flex-direction:column;
  transition:transform .2s,border-color .2s,box-shadow .2s;
}
.bp-postcard:hover{transform:translateY(-4px);border-color:var(--bp-red-l);box-shadow:var(--bp-sh)}
.bp-postcard__cat{
  font-family:var(--bp-mono);font-size:.56rem;letter-spacing:.14em;text-transform:uppercase;
  padding:.3rem .65rem;border-radius:999px;align-self:flex-start;margin-bottom:1rem;
  background:var(--bp-red-tint);color:var(--bp-red);border:1px solid #C9DED2;
}
.bp-postcard__cat--rev{background:var(--bp-red-tint);color:var(--bp-red);border-color:rgba(168,28,28,.28)}
.bp-postcard h3{font-size:1.22rem;line-height:1.24;margin-bottom:.65rem}
.bp-postcard h3 a{color:var(--bp-red-d);text-decoration:none}
.bp-postcard h3 a:hover{color:var(--bp-steel-d);text-decoration:none}
.bp-postcard p{font-size:.9rem;margin:0 0 1rem;color:var(--bp-body)}
.bp-postcard__meta{
  margin-top:auto;padding-top:.95rem;border-top:1px solid var(--bp-line-soft);
  font-family:var(--bp-mono);font-size:.58rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--bp-muted);display:flex;justify-content:space-between;gap:.7rem;flex-wrap:wrap;
}

/* ── Pagination ───────────────────────────────────────────── */
.bp-pager{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem;margin-top:3rem}
.bp-pager a,.bp-pager span{
  min-width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;
  padding:0 .8rem;border-radius:var(--bp-r);border:1px solid var(--bp-line);
  background:var(--bp-white);color:var(--bp-body);text-decoration:none;
  font-family:var(--bp-mono);font-size:.8rem;
}
.bp-pager a:hover{border-color:var(--bp-steel);color:var(--bp-steel-d);text-decoration:none}
.bp-pager .is-current{background:var(--bp-red);color:var(--bp-white);border-color:var(--bp-red);font-weight:700}
.bp-pager .is-gap{border:none;background:transparent;color:var(--bp-muted);min-width:22px;padding:0}

/* ── Post layout ──────────────────────────────────────────── */
.bp-post{padding:2.8rem 0 3.6rem}
.bp-post__head{margin-bottom:2.2rem}
.bp-post__head h1{font-size:clamp(1.9rem,4.6vw,3.1rem);line-height:1.1}
.bp-post__byline{
  display:flex;flex-wrap:wrap;align-items:center;gap:.8rem 1.5rem;
  margin-top:1.6rem;padding:1.1rem 0;
  border-block:1px solid var(--bp-line-soft);
  font-family:var(--bp-mono);font-size:.62rem;letter-spacing:.1em;
  text-transform:uppercase;color:var(--bp-muted);
}
.bp-post__byline b{color:var(--bp-body);font-weight:500}
.bp-avatar{
  width:38px;height:38px;border-radius:50%;flex:none;
  background:var(--bp-red);color:var(--bp-steel-l);
  display:inline-flex;align-items:center;justify-content:center;
  font-family:var(--bp-display);font-size:.9rem;letter-spacing:0;
}

.bp-post__body{font-size:1.05rem;line-height:1.84}
.bp-post__body h2{font-size:clamp(1.45rem,3.2vw,2rem);margin-top:2.2em;margin-bottom:.65em}
.bp-post__body h3{font-size:1.24rem;margin-top:1.8em;margin-bottom:.6em}
.bp-post__body ul,.bp-post__body ol{padding-left:1.4rem;margin:0 0 1.3em}
.bp-post__body li{margin-bottom:.58em}
.bp-post__body li::marker{color:var(--bp-steel)}

/* Key-takeaway block */
.bp-key{
  background:var(--bp-red-tint);border:1px solid #C9DED2;
  border-left:4px solid var(--bp-red);
  border-radius:0 var(--bp-r-lg) var(--bp-r-lg) 0;padding:1.4rem 1.6rem;margin:0 0 2.2rem;
}
.bp-key p{margin:0;font-size:1.03rem;color:var(--bp-ink)}
.bp-key p+p{margin-top:.7rem}
.bp-key__label{
  font-family:var(--bp-mono);font-size:.6rem;letter-spacing:.17em;text-transform:uppercase;
  color:var(--bp-red);display:block;margin-bottom:.65rem;
}

/* In-post CTA */
.bp-cta{
  background:var(--bp-steel-tint);border:1px solid rgba(62,85,102,.32);
  border-radius:var(--bp-r-lg);padding:1.9rem 1.7rem;margin:2.6rem 0;text-align:center;
}
.bp-cta h3{font-size:1.35rem;margin-bottom:.65rem}
.bp-cta p{font-size:.95rem;margin-bottom:1.3rem;color:var(--bp-body)}
.bp-cta .bp-small{margin-top:1.1rem}

/* TOC */
.bp-toc{
  background:var(--bp-paper);border:1px solid var(--bp-line);
  border-radius:var(--bp-r-lg);padding:1.4rem 1.6rem;margin:0 0 2.4rem;
}
.bp-toc h2{
  font-family:var(--bp-mono);font-size:.62rem;letter-spacing:.17em;text-transform:uppercase;
  color:var(--bp-steel-d);margin:0 0 1rem;font-weight:500;
}
.bp-toc ol{margin:0;padding-left:1.25rem;font-size:.94rem}
.bp-toc li{margin-bottom:.48rem}
.bp-toc a{color:var(--bp-body)}
.bp-toc a:hover{color:var(--bp-red)}

/* Related posts */
.bp-related{border-top:1px solid var(--bp-line-soft);margin-top:3.2rem;padding-top:2.4rem}
.bp-related h2{font-size:1.5rem;margin-bottom:1.4rem}
.bp-related ul{list-style:none;margin:0;padding:0;display:grid;gap:.7rem}
.bp-related li{
  border:1px solid var(--bp-line-soft);border-radius:var(--bp-r-lg);
  padding:.95rem 1.15rem;background:var(--bp-paper);
  transition:border-color .16s,transform .16s;
}
.bp-related li:hover{border-color:var(--bp-steel);transform:translateX(3px)}
.bp-related a{color:var(--bp-red-d);text-decoration:none;font-weight:600;font-size:.96rem}
.bp-related a:hover{color:var(--bp-steel-d);text-decoration:none}

/* Post FAQ reuses .bp-acc */
.bp-postfaq{margin-top:2.8rem}
.bp-postfaq > h2{font-size:1.55rem;margin-bottom:1.3rem}

/* Author box */
.bp-authorbox{
  background:var(--bp-paper);border:1px solid var(--bp-line);
  border-radius:var(--bp-r-lg);padding:1.6rem;margin-top:2.8rem;
}
.bp-authorbox h3{font-size:1.2rem;margin-bottom:.6rem}
.bp-authorbox p{font-size:.92rem;margin:0}
.bp-authorbox p+p{margin-top:.7rem}

/* Blog-side disclaimer */
.bp-postnote{
  border:1px solid var(--bp-line);border-radius:var(--bp-r-lg);
  padding:1.3rem 1.45rem;margin-top:2.6rem;background:var(--bp-paper);
  font-size:.82rem;line-height:1.72;color:var(--bp-muted);
}
.bp-postnote strong{color:var(--bp-body)}
.bp-postnote p:last-child{margin-bottom:0}
