/* Shared review feature. Scoped rules leave Reality Check and review prose intact. */
.relationship-timeline {
  --timeline-accent: #754064;
  --timeline-line: #decbd7;
  position: relative;
  box-sizing: border-box;
  width: min(1160px, calc(100% - 48px));
  margin: 40px auto;
  padding: clamp(24px, 4vw, 48px);
  border: 1px solid #cfafc4;
  border-top: 4px solid var(--timeline-accent);
  border-radius: 16px;
  background: #faf5fa;
  color: #44303f;
  box-shadow: 0 8px 28px rgb(84 38 65 / 5%);
  text-align: left;
  scroll-margin-top: 100px;
  overflow-wrap: anywhere;
}
.review-prose-body .relationship-timeline { width: 100%; margin: 36px 0; }
.relationship-timeline .relationship-timeline__header { display: block; margin: 0 0 28px; padding: 0 0 24px; border-bottom: 1px solid var(--timeline-line); }
.relationship-timeline .relationship-timeline__eyebrow { margin: 0 0 12px; color: var(--timeline-accent); font: 700 .875rem/1.5 var(--sans, Arial, sans-serif); letter-spacing: .12em; }
.relationship-timeline h2 { margin: 0 0 16px; color: #59344c; font: 500 clamp(1.65rem, 2.8vw, 2.3rem)/1.25 var(--serif, Georgia, serif); letter-spacing: -.015em; }
.relationship-timeline.relationship-timeline h3 { margin: 0 0 10px; color: #59344c; font: 600 1.2rem/1.4 var(--serif, Georgia, serif); letter-spacing: 0; }
/* Keep milestone spacing consistent inside the older article templates too. */
section.relationship-timeline .relationship-timeline__milestone h3,
section.relationship-timeline .relationship-timeline__summary h3 { margin: 0 0 10px; }
.relationship-timeline.relationship-timeline p,
.relationship-timeline.relationship-timeline li { color: #44303f; font: 400 1rem/1.75 var(--sans, Arial, sans-serif); }
.relationship-timeline .relationship-timeline__intro p { margin: 0 0 12px; }
.relationship-timeline .relationship-timeline__intro p:last-child { margin-bottom: 0; }
.relationship-timeline .relationship-timeline__milestones { list-style: none; counter-reset: milestone; margin: 0; padding: 0; }
.relationship-timeline .relationship-timeline__milestone { position: relative; counter-increment: milestone; margin: 0; padding: 0 0 28px 52px; border: 0; min-width: 0; }
.relationship-timeline .relationship-timeline__milestone::before { content: counter(milestone, decimal-leading-zero); position: absolute; top: 0; left: 0; z-index: 1; display: grid; place-items: center; width: 32px; height: 32px; border: 1px solid #d4bbcc; border-radius: 50%; background: #f0e3ed; color: #653554; font: 600 .875rem/1 var(--sans, Arial, sans-serif); }
.relationship-timeline .relationship-timeline__milestone:not(:last-child)::after { content: ''; position: absolute; top: 36px; bottom: 4px; left: 16px; width: 1px; background: var(--timeline-line); }
.relationship-timeline.relationship-timeline .relationship-timeline__when { margin: 0 0 6px; color: var(--timeline-accent); font: 700 .875rem/1.55 var(--sans, Arial, sans-serif); }
.relationship-timeline .relationship-timeline__detail p { margin: 0 0 12px; }
.relationship-timeline .relationship-timeline__detail p:last-child { margin-bottom: 0; }
.relationship-timeline .relationship-timeline__detail ul { margin: 12px 0; padding-left: 22px; list-style: disc; }
.relationship-timeline .relationship-timeline__detail li { margin: 4px 0; padding: 0; }
.relationship-timeline .relationship-timeline__summary { margin-top: 4px; padding: 24px; border: 1px solid var(--timeline-line); border-radius: 10px; background: #fffafd; }
.relationship-timeline .relationship-timeline__summary h3 { margin: 0 0 14px; }
.relationship-timeline .relationship-timeline__summary ul { margin: 0; padding-left: 22px; list-style: disc; }
.relationship-timeline .relationship-timeline__summary li { margin: 7px 0; padding: 0; }
.relationship-timeline .relationship-timeline__legacy-anchor { position: absolute; top: 0; scroll-margin-top: 100px; }
@media (max-width: 600px) {
  .relationship-timeline { width: calc(100% - 28px); padding: 24px 18px; margin: 28px auto; border-radius: 12px; }
  .review-prose-body .relationship-timeline { width: 100%; margin: 28px 0; }
  .relationship-timeline .relationship-timeline__milestone { padding-left: 42px; }
  .relationship-timeline .relationship-timeline__summary { padding: 18px 14px; }
  .relationship-timeline .relationship-timeline__eyebrow { letter-spacing: .08em; }
}
