.crhi-figure { display: flex; flex-direction: column; gap: 6px; }
.crhi-figure .crhi-num { font-family: var(--serif); font-size: clamp(1.9rem, 4vw, 2.4rem); font-weight: 800; line-height: 1.1; color: var(--navy); }
.crhi-figure .crhi-label { font-size: 15px; color: var(--ink-soft); line-height: 1.4; }

.crhi-tier { display: flex; flex-direction: column; gap: 10px; border-top: 4px solid var(--teal); }
.crhi-tier h3 { margin: 0; font-size: 1.25rem; }
.crhi-tier .crhi-who { margin: 0; font-size: 15px; color: var(--muted); }
.crhi-tier ul { margin: 0; padding-left: 1.2em; font-size: 15.5px; color: var(--ink-soft); }
.crhi-tier li + li { margin-top: 4px; }
.crhi-tier .crhi-action { margin-top: auto; padding-top: 10px; }
.crhi-tier.is-free { border-top-color: var(--lime); background: var(--teal-mist); }

.crhi-avatar { width: 64px; height: 64px; border-radius: 50%; display: grid; place-items: center; background: var(--navy); color: #fff; font-family: var(--serif); font-weight: 800; font-size: 1.35rem; letter-spacing: .02em; flex: none; }
.crhi-person { display: flex; align-items: center; gap: 16px; }
.crhi-person h3 { margin: 0 0 2px; font-size: 1.15rem; }
.crhi-person p { margin: 0; font-size: 15px; color: var(--ink-soft); }

.crhi-actions { margin-top: 20px; display: flex; flex-wrap: wrap; gap: 10px; }
.crhi-block { padding-top: 0; }
.tl-event.is-next { border-left: 4px solid var(--teal); }
.tl-event.is-done .tl-week { color: var(--muted); }
.tl-event p { margin: 0; color: var(--ink-soft); }
.crhi-note { margin-top: 20px; }
