/* The full archive homepage keeps the existing Caley Thistle introduction. */
.ct-home-body { max-width: 1456px; margin: 0 auto; padding: 28px 24px; }
.ct-home-body > .panel { margin-bottom: 24px; }
.ct-home .home-features { align-items: start; gap: 24px; }
.ct-home .home-features > *, .ct-home .home-feature-stack > * { min-width: 0; }
.ct-home .home-feature-stack { gap: 24px; }
.ct-home .home-feature-stack .panel { margin-bottom: 0; }
.ct-home .feature-person.without-portrait { display: block; }
.ct-home .home-programme-body {
    grid-template-columns: min(40%, 210px) minmax(0, 1fr);
    align-items: start;
    gap: 20px;
    padding: 20px;
}
.ct-home .home-programme-body > div { min-width: 0; }
.ct-home .home-programme-body .programme-cover-link {
    align-self: start;
    padding: 0;
    background: transparent;
}
.ct-home .home-programme-body .programme-cover-link img {
    width: 100%;
    height: auto;
    max-height: none;
    object-fit: contain;
}
.ct-home .home-moment-caption h3 { font-size: 1.5rem; line-height: 1.3; }
.ct-home .ct-memory { padding: 28px; }
.ct-home .ct-memory h3 { margin-top: 18px; }
.ct-home .ct-memory-score { font-size: 3rem; font-weight: 800; margin: 18px 0; font-variant-numeric: tabular-nums; }
.ct-home .ct-memory-score span { font-size: .8rem; font-weight: 400; color: var(--muted); }
.ct-memory-photo { display: block; }
.ct-memory-photo img { display: block; width: 100%; max-height: 320px; object-fit: cover; }
.ct-home .home-history-row { gap: 24px; margin-bottom: 24px; }
.ct-home .home-anniversaries .record-list a { display: block; }
.ct-home .home-anniversaries .record-list a > span { display: block; margin-top: 6px; font-size: .8rem; color: var(--muted); }
.ct-home .home-records-invite a { color: #111; background: #fff; }
.ct-newspaper-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; padding: 20px; }
.ct-newspaper-grid article { min-width: 0; }
.ct-newspaper-grid img { display: block; width: 100%; height: 220px; object-fit: contain; background: #f4f4f4; }
.ct-newspaper-grid h3 { font-size: 1rem; line-height: 1.4; margin: 12px 0 6px; }
.ct-newspaper-grid p { font-size: .8rem; color: var(--muted); }
.ct-recent-edits { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ct-recent-edits li { min-width: 0; }
.ct-recent-edits li a { display: grid; grid-template-columns: 55px minmax(0, 1fr); gap: 12px; align-items: start; height: 100%; }
.ct-recent-edits li a > div { min-width: 0; overflow-wrap: anywhere; }
.ct-recent-edits strong, .ct-recent-edits div > span, .ct-recent-edits small { display: block; }
.ct-recent-edits div > span, .ct-recent-edits small { margin-top: 5px; font-size: .8rem; color: var(--muted); }
.ct-edit-kind { background: #e9ebee; color: #17181a; font-size: .7rem; padding: 4px 6px; }
@media (max-width: 1000px) {
    .ct-home .home-features:has(.home-moment) { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 700px) {
    .ct-home-body { padding: 20px 12px; }
    .ct-newspaper-grid { grid-template-columns: minmax(0, 1fr); }
    .ct-recent-edits { grid-template-columns: minmax(0, 1fr); }
    .ct-home .ct-memory { padding: 20px; }
}
@media (max-width: 480px) {
    .ct-home .home-programme-body {
        grid-template-columns: min(42%, 150px) minmax(0, 1fr);
        gap: 16px;
        padding: 16px;
    }
}
