/* ==========================================================================
   My Father — the timeline testimony
   Builds on site.css + testimonies.css. No new colours.
   ========================================================================== */

.f-dates{
  font-family:var(--serif);font-size:clamp(17px,2.2vw,20px);font-style:italic;
  color:var(--ink-soft);margin:0 0 4px;
}

.f-part{margin-top:clamp(40px,6vw,64px)}

/* ---------- Timeline ---------- */
.f-timeline{
  list-style:none;margin:0;padding:0 0 0 26px;position:relative;
  border-left:2px solid var(--line);
}
.f-step{position:relative;padding:0 0 clamp(30px,5vw,46px) 0}
.f-step:last-child{padding-bottom:0}
.f-step::before{
  content:"";position:absolute;left:-33px;top:7px;
  width:13px;height:13px;border-radius:50%;
  background:var(--gold);border:2px solid var(--ink);
}
.f-step__when{
  font-family:var(--sans);font-size:11.5px;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--gold-dark);margin:0 0 10px;
}
html[data-lang="zh"] .f-step__when{letter-spacing:.06em;font-size:12.5px}
.f-step p{font-size:18px;line-height:1.78;margin:0 0 1em}
html[data-lang="zh"] .f-step p{font-size:17px;line-height:1.95}

.f-last{
  font-family:var(--serif);font-style:italic;color:var(--ink-mid);
  font-size:19px !important;padding-top:4px;
}

/* ---------- Figures inside the timeline ---------- */
.f-figure{margin:22px 0 0}
.f-figure img{
  width:100%;border-radius:var(--r);border:1px solid var(--line);
  box-shadow:var(--shadow-1);background:var(--white);
}
.f-figure figcaption{
  font-family:var(--sans);font-size:12.5px;line-height:1.55;
  color:var(--ink-faint);margin-top:10px;
}
.f-figure figcaption em{color:var(--gold-dark);font-style:normal;font-weight:600}

/* ---------- Videos ---------- */
.f-videos{padding-top:clamp(20px,3vw,32px)}
.f-video-grid{display:grid;gap:20px;grid-template-columns:1fr 1fr}
@media (max-width:640px){.f-video-grid{grid-template-columns:1fr}}

.f-video{
  background:var(--white);border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;box-shadow:var(--shadow-1);
}
.f-video__btn{
  display:block;position:relative;line-height:0;text-decoration:none;
  background:var(--ink);
}
.f-video__btn img{width:100%;height:auto;opacity:.88;transition:opacity .2s var(--ease)}
.f-video__btn:hover img{opacity:1}
.f-video__play{
  position:absolute;inset:0;display:grid;place-items:center;
}
.f-video__play span{
  width:58px;height:58px;border-radius:50%;
  background:var(--gold);border:2px solid var(--ink);
  display:grid;place-items:center;
  box-shadow:0 6px 20px rgba(44,29,20,.32);
  transition:transform .18s var(--ease);
}
.f-video__btn:hover .f-video__play span{transform:scale(1.08)}
.f-video__play svg{width:26px;height:26px;fill:var(--ink);margin-left:3px}
.f-video__frame{width:100%;aspect-ratio:16/9;border:0;display:block}

.f-video__body{padding:16px 18px 18px}
.f-video__body h3{font-size:20px;margin:0 0 6px}
.f-video__body p{
  font-family:var(--sans);font-size:13.5px;line-height:1.6;
  color:var(--ink-soft);margin:0;
}

.f-vnote{
  font-family:var(--sans);font-size:12px;color:var(--ink-faint);
  margin:14px 0 0;text-align:center;
}

/* Single video, centred. */
.f-video-grid--one{grid-template-columns:1fr;max-width:520px;margin:0 auto}

/* A boxed aside inside the reading column — used for the Gospel Hand steps. */
.f-callout{
  background:var(--gold-soft);border:1px solid var(--line);
  border-left:4px solid var(--gold-deep);border-radius:0 var(--r) var(--r) 0;
  padding:20px 24px;margin:26px 0;
}
.f-callout__lbl{
  font-family:var(--sans);font-size:10.5px;font-weight:700;letter-spacing:.18em;
  text-transform:uppercase;color:var(--gold-dark);margin:0 0 10px !important;
}
.f-callout p{font-size:16.5px !important;line-height:1.72 !important;margin:0 0 .7em !important}
.f-callout b{color:var(--ink)}
.f-callout__link{margin:10px 0 0 !important}
.f-callout__link a{
  font-family:var(--sans);font-size:13px;font-weight:700;
  color:var(--gold-dark);text-decoration:none;
}
.f-callout__link a:hover{color:var(--ink)}
