
.story-arc-network { display:flex; flex-wrap:wrap; gap:0.75rem 1.25rem; padding:0.75rem 0; border-bottom:3px double currentColor; margin-bottom:1.5rem; font-size:0.85rem; }
.story-arc-network a { text-decoration:none; }
.story-arc-network span[aria-current] { font-weight:bold; }
.story-arc-header { margin-bottom:2rem; }
.story-arc-kicker { font-size:0.85rem; letter-spacing:0.12em; font-weight:bold; margin:0 0 0.5rem; }
.story-arc-header h1 { font-size:2.5rem; line-height:1.05; margin:0 0 0.75rem; }
.story-arc-dek { font-size:1.15rem; line-height:1.45; margin:0 0 0.5rem; max-width:42rem; }
.story-arc-updated { font-size:0.8rem; opacity:0.75; margin:0; }
.story-arc-eyebrow { font-size:0.85rem; letter-spacing:0.12em; font-weight:bold; margin:0 0 0.25rem; }
.story-arc-timeline h2, .story-arc-gallery h2 { font-size:1.5rem; margin:0 0 1rem; }
.story-arc-events { list-style:none; margin:0 0 2.5rem; padding:0; }
.story-arc-event { border-top:2px solid currentColor; padding:1rem 0; }
.story-arc-date { margin:0 0 0.25rem; font-weight:bold; }
.story-arc-date a { text-decoration:none; }
.story-arc-kind { font-size:0.75rem; letter-spacing:0.1em; margin:0 0 0.25rem; opacity:0.75; }
.story-arc-event h3 { font-size:1.25rem; line-height:1.25; margin:0 0 0.25rem; }
.story-arc-event h3 a { text-decoration:none; }
.story-arc-event h3 a:hover { text-decoration:underline; }
.story-arc-source { font-size:0.85rem; margin:0; opacity:0.8; }
.story-arc-cartoons { display:grid; grid-template-columns:repeat(auto-fit, minmax(16rem, 1fr)); gap:1.5rem; margin:0 0 2.5rem; }
.story-arc-cartoon img { width:100%; height:auto; display:block; border:1px solid currentColor; }
.story-arc-cartoon h3 { font-size:1.05rem; margin:0.5rem 0 0; }
.story-arc-cartoon h3 a { text-decoration:none; }
.story-arc-directory { list-style:none; margin:0; padding:0; display:grid; gap:1.5rem; }
.story-arc-card { border:2px solid currentColor; }
.story-arc-card a { display:block; text-decoration:none; color:inherit; padding:1.25rem; }
.story-arc-card img { width:100%; height:12rem; object-fit:cover; display:block; margin-bottom:1rem; border:1px solid currentColor; }
.story-arc-card strong { font-size:1.5rem; line-height:1.15; display:block; margin-bottom:0.5rem; }
.story-arc-card p { margin:0 0 0.75rem; line-height:1.45; }
.story-arc-card-meta { font-size:0.85rem; font-weight:bold; }
@media (min-width: 48rem) {
  .story-arc-directory { grid-template-columns:1fr 1fr; }
  .story-arc-header h1 { font-size:3rem; }
}
.story-arc-more { margin-top:3rem; padding-top:2rem; border-top:4px solid currentColor; }
.story-arc-more h2 { margin:0 0 1.5rem; }
