/* SessionMunch editorial layer: scoped, keeps the established shell. */
.is-sessionmunch .prose { max-width: 46rem; overflow-wrap: anywhere; }
.is-sessionmunch .prose h2 { font: 400 clamp(25px,3vw,34px)/1.2 var(--read); text-transform: none; letter-spacing: -.02em; }
.is-sessionmunch .prose h3 { font-size: 13px; line-height: 1.6; }
.is-sessionmunch .prose img,.is-sessionmunch .prose svg { display:block; max-width:100%; height:auto; }
.is-sessionmunch .prose figure { border:1px solid var(--line-2); padding:clamp(12px,2vw,24px); background:var(--ink-1); }
.is-sessionmunch .prose figcaption { color:var(--ash); font:12px/1.6 var(--mono); }
.is-sessionmunch .prose table { width:100%; border-collapse:collapse; font:13px/1.6 var(--mono); }
.is-sessionmunch .prose th,.is-sessionmunch .prose td { text-align:left; vertical-align:top; padding:12px; border-bottom:1px solid var(--line-2); }
.is-sessionmunch .prose th { color:var(--bone); background:var(--ink-2); }
.is-sessionmunch .table-scroll { max-width:100%; overflow-x:auto; border:1px solid var(--line-2); }
.is-sessionmunch .table-scroll:focus-visible { outline:2px solid var(--bone); }
.is-sessionmunch .prose .pullquote { padding:24px 0 24px 24px; font:400 clamp(24px,3vw,32px)/1.35 var(--read); color:var(--bone); border-left:2px solid var(--bone); }
.is-sessionmunch .prose .admonition { padding:20px; border:1px solid var(--line-2); border-left:3px solid var(--ash); background:var(--ink-1); font:15px/1.7 var(--mono); }
.is-sessionmunch .prose .admonition p + p { margin-top:.8em; }
.is-sessionmunch .prose .diagram { font:14px/1.6 var(--mono); }
.is-sessionmunch .prose .diagram ol { display:grid; gap:12px; padding-left:1.6em; }
.is-sessionmunch .prose .diagram li { padding:12px; border:1px solid var(--line-2); background:var(--ink-2); }
.series-cards { list-style:none; margin:24px 0 0; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.series-cards > li { min-width:0; }
.series-card { display:flex; height:100%; flex-direction:column; background:var(--ink-1); border:1px solid var(--line-2); text-decoration:none; }
.series-card:hover { border-color:var(--ash); }
.series-card:focus-visible,.series-nav a:focus-visible { outline:2px solid var(--bone); outline-offset:5px; }
.series-card > img { width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; border-bottom:1px solid var(--line-2); }
.series-card__body { display:flex; flex:1; flex-direction:column; align-items:flex-start; gap:16px; padding:clamp(18px,2.5vw,30px); }
.series-card__cue { color:var(--ash); font:11px/1.6 var(--mono); text-transform:uppercase; letter-spacing:.1em; }
.series-card h3 { margin:0; font:400 clamp(25px,2.8vw,34px)/1.15 var(--read); color:var(--bone); }
.series-card__summary { color:var(--ash); font:14px/1.7 var(--mono); }
.series-card__read { margin-top:auto; padding-top:8px; color:var(--bone); font:12px/1.6 var(--mono); }
.series-card__read svg { margin-left:12px; width:16px; }
.series-nav { border-top:1px solid var(--line-2); margin-top:64px; padding-top:24px; max-width:60rem; }
.series-nav__hub { display:inline-block; font:12px/1.6 var(--mono); color:var(--bone); }
.series-nav > div { display:grid; grid-template-columns:1fr 1fr; gap:24px; margin-top:24px; }
.series-nav > div a { font:400 22px/1.35 var(--read); color:var(--bone); }
.series-nav > div a span { display:block; font:11px/1.6 var(--mono); color:var(--ash); text-transform:uppercase; letter-spacing:.1em; margin-bottom:8px; }
.retrieval-explainer { display:block; width:100%; min-height:800px; border:0; background:#111210; }
@media(max-width:700px) { .series-cards,.series-nav > div { grid-template-columns:1fr; } .retrieval-explainer { min-height:1100px; } .is-sessionmunch .prose th,.is-sessionmunch .prose td { padding:8px; } }
@media(prefers-reduced-motion:reduce) { .is-sessionmunch *, .is-sessionmunch *::before,.is-sessionmunch *::after { scroll-behavior:auto!important; animation:none!important; transition:none!important; } }

/* Keep the AI-art disclosure visible below the panoramic crop. */
.is-sessionmunch .entry__cover { margin-left:0; margin-right:0; }
.is-sessionmunch .entry__cover--caption { height:auto; overflow:visible; }
.is-sessionmunch .entry__cover--caption img { display:block; height:clamp(160px,24vw,320px); object-fit:cover; }
.is-sessionmunch .entry__cover--caption figcaption { padding:12px 0; color:var(--ash); font:12px/1.6 var(--mono); }

/* Editorial covers show the complete artwork, including diagram labels. */
.is-sessionmunch .entry__cover { height:auto; overflow:visible; aspect-ratio:auto; }
.is-sessionmunch .entry__cover > img { display:block; width:100%; height:auto; aspect-ratio:16/9; object-fit:contain; background:var(--ink-1); }
.is-sessionmunch .entry__cover > figcaption { padding:12px 0; font:12px/1.6 var(--mono); color:var(--ash); }
