/* THE BITCOIN GROUP — deep-pass episode page additions.
   Layered ON TOP of paper.css. Adds topic-section visuals,
   keyframe figures, reference link list, timestamp pills.
*/

/* Episode lead block reads as a wire lead — no drop-cap so it doesn't
   compete with topic sections below. */
.episode-lead p:first-of-type::first-letter{
  font-size:inherit;
  color:inherit;
  float:none;
  font-family:inherit;
}
.episode-lead p{
  text-indent:0;
  font-size:1.02rem;
}
.episode-lead p + p{text-indent:0}

/* Topic sections — visually punctuate the running order */
.topic-sections{
  margin-top:18px;
}
section.topic{
  margin:28px 0 22px;
  padding-top:14px;
  border-top:1px solid var(--rule);
}
section.topic:first-child{border-top:none;padding-top:0}
section.topic h2.topic-hed{
  font-family:'Playfair Display','Old Standard TT',serif;
  font-weight:900;
  font-size:1.6rem;
  line-height:1.15;
  margin:0 0 .35em;
  color:var(--ink);
  letter-spacing:-.005em;
}
section.topic h2.topic-hed::before{
  content:"§ ";
  color:var(--accent);
  font-family:'Old Standard TT',serif;
  font-weight:700;
  letter-spacing:0;
}

/* Keyframe figure per topic */
figure.topic-fig{
  margin:.4em 0 .8em;
}
figure.topic-fig img{
  width:100%;
  height:auto;
  border:1px solid var(--rule);
  filter:saturate(.92) contrast(1.02);
}
figure.topic-fig figcaption{
  font-family:'Old Standard TT',serif;
  font-size:.78rem;
  font-style:italic;
  color:var(--muted);
  border-bottom:1px solid var(--rule-soft);
  padding:4px 0;
}

/* Topic paragraphs reuse .body styling but drop the drop-cap */
section.topic p{
  margin-bottom:.7em;
  text-align:justify;
  hyphens:auto;
}
section.topic p + p{text-indent:1.2em}

/* Quotes inside topic sections — reuse the .body blockquote chrome */
section.topic blockquote{
  font-family:'PT Serif',serif;
  font-style:italic;
  color:var(--pull);
  border-left:3px solid var(--accent);
  padding:.4em 0 .4em 1em;
  margin:.9em 0 .9em 0;
  font-size:1.04em;
  line-height:1.45;
}
section.topic blockquote cite{
  display:block;
  font-style:normal;
  font-family:'Old Standard TT',serif;
  font-size:.78rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--muted);
  margin-top:.4em;
}

/* Timestamp pill */
.ts{
  font-family:'Special Elite','Courier New',monospace;
  font-size:.78rem;
  background:var(--paper-dim);
  border:1px solid var(--rule-soft);
  padding:1px 6px;
  border-radius:2px;
  color:var(--ink-soft);
  letter-spacing:0;
  text-transform:none;
}

/* Topic-level source link */
.topic-source{
  font-family:'Old Standard TT',serif;
  font-size:.82rem;
  color:var(--muted);
  border-top:1px dotted var(--rule-soft);
  padding-top:6px;
  margin-top:.4em;
}

/* Reference Links section */
section.reference-links{
  margin:32px 0 18px;
  padding-top:18px;
  border-top:3px double var(--ink);
}
section.reference-links h2.topic-hed{
  margin-bottom:.4em;
}
section.reference-links .ref-intro{
  font-style:italic;
  color:var(--ink-soft);
  font-size:.94rem;
  margin-bottom:.8em;
}
section.reference-links ul.refs{
  list-style:none;
  padding:0;
  margin:0;
}
section.reference-links ul.refs li{
  border-bottom:1px dotted var(--rule-soft);
  padding:8px 0;
  font-size:.92rem;
  line-height:1.4;
}
section.reference-links ul.refs li:last-child{border-bottom:none}
section.reference-links ul.refs li a{
  font-family:'PT Serif',serif;
  word-break:break-word;
}
section.reference-links .ref-src{
  color:var(--muted);
  font-family:'Old Standard TT',serif;
  font-size:.78rem;
  letter-spacing:.1em;
  text-transform:uppercase;
}

@media (max-width:880px){
  section.topic h2.topic-hed{font-size:1.35rem}
  section.topic blockquote{margin-left:0}
}
