.timeline-page [hidden] { display:none!important; }
.timeline-heading { max-width:900px; padding:50px 0 24px; }
.timeline-heading h1 { font-size:clamp(3.5rem,7vw,6.3rem); }
.timeline-heading h1 em { display:inline; }
.timeline-jumps,.timeline-controls { display:flex; flex-wrap:wrap; gap:10px; margin:28px 0; }
.timeline-jumps a { display:inline-block; padding:10px 14px; border:1px solid #b9ac98; border-radius:4px; font-size:16px; }
.timeline-controls button { font:inherit; font-size:16px; line-height:1.5; padding:12px 16px; border:1px solid #872e3b; color:#872e3b; background:transparent; border-radius:4px; cursor:pointer; }
.timeline-controls button[aria-pressed=true] { background:#872e3b; color:white; }
.timeline-controls button:focus-visible { outline:3px solid #872e3b; outline-offset:4px; }
.timeline-count { font-size:15px; color:#675d55; }
.timeline-decade { padding-top:28px; scroll-margin-top:24px; }
.timeline-decade>h2 { font-size:clamp(2.8rem,6vw,4.5rem); margin:18px 0 28px; color:#872e3b; }
.timeline-decade>h2 span { color:#675d55; font-size:.55em; }
.timeline-decade ol { list-style:none; margin:0 0 40px 10px; padding:0 0 0 28px; border-left:2px solid #c7a18b; }
.timeline-event { position:relative; margin-bottom:30px; scroll-margin-top:24px; }
.timeline-event::before { content:''; position:absolute; left:-36px; top:30px; width:12px; height:12px; border:2px solid #f8f4eb; background:#872e3b; border-radius:50%; }
.timeline-card { background:#fffdf7; padding:30px; border:1px solid #ded3c4; border-radius:5px; min-width:0; overflow-wrap:anywhere; }
.timeline-card>div { min-width:0; }
.timeline-card-image { display:grid; grid-template-columns:1.35fr 1fr; align-items:start; gap:32px; }
.timeline-card h3,.timeline-undated-card h3 { font:400 30px/1.25 Georgia,serif; margin:12px 0 20px; text-wrap:balance; }
.timeline-card p { font-size:18px; line-height:1.75; }
.timeline-card .timeline-date { font-size:15px; font-weight:700; color:#872e3b; margin-bottom:12px; }
.timeline-card .batch-figure img { max-height:380px; object-fit:contain; background:#f2ece0; }
.timeline-sources { list-style:none; margin:20px 0 0; padding:0; }
.timeline-sources li { margin:0; }
.timeline-sources a { display:inline-block; font-size:16px; line-height:1.5; padding:9px 0; overflow-wrap:anywhere; }
.timeline-undated { padding:48px 0; border-top:1px solid #c7a18b; scroll-margin-top:24px; }
.timeline-undated-grid { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:28px 0; align-items:start; }
.timeline-undated-card { border:1px solid #d6cabb; border-radius:5px; padding:24px; scroll-margin-top:24px; min-width:0; overflow-wrap:anywhere; }
.timeline-undated-card h3 { font-size:25px; }
.timeline-more { padding:36px 0 60px; }
.timeline-more .timeline-note { margin-top:28px; color:#675d55; font-size:15px; }
@media(max-width:720px) {
 .timeline-heading { padding-top:28px; }
 .timeline-heading h1 em { display:block; }
 .timeline-card-image,.timeline-undated-grid { grid-template-columns:minmax(0,1fr); }
 .timeline-decade ol { margin-left:5px; padding-left:19px; }
 .timeline-event::before { left:-27px; }
 .timeline-card { padding:22px; }
 .timeline-card h3 { font-size:26px; }
 .timeline-card p { font-size:17px; }
 .timeline-controls { gap:8px; }
 .timeline-controls button { padding:10px 12px; }
}
