@font-face{font-family:Kalam;src:url('/assets/campaign-20261024/fonts/Kalam-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Kalam;src:url('/assets/campaign-20261024/fonts/Kalam-Bold.ttf') format('truetype');font-style:normal;font-weight:700;font-display:swap}
.campaign-session{box-sizing:border-box;width:100%;max-width:var(--content-width);margin:2rem 0 0}
.campaign-session>header{margin-bottom:1.4rem}.campaign-session>header h2{margin:.3rem 0 .7rem}
.session-summary-link{font:12px/1.5 var(--font-ui,Arial,sans-serif)}
.radomir-letter{box-sizing:border-box;margin:0;padding:clamp(22px,5vw,52px);color:#35271c;border:1px solid #c5a16c;background:radial-gradient(ellipse at 10% 3%,#ad763d24,transparent 48%),radial-gradient(ellipse at 91% 96%,#92602a30,transparent 52%),#edcf9d;box-shadow:inset 0 0 32px #a2693340,0 2px 8px #39240d14;border-radius:2px}
.radomir-letter .letter-illustration{margin:0 0 1.8rem}.radomir-letter .letter-illustration img{display:block;width:100%;height:auto;border:0;box-shadow:none}.radomir-letter .letter-illustration figcaption{font:11px/1.5 Arial,sans-serif;color:#69503a;margin-top:.5rem}
.radomir-letter .letter-text,.radomir-letter .letter-text p,.radomir-letter .letter-text a,.radomir-letter .letter-text strong,.radomir-letter .letter-text em{font-family:Kalam,cursive;font-size:20px;line-height:1.4;letter-spacing:normal}
.radomir-letter .letter-text p{margin:0 0 1.1em;text-align:left}.radomir-letter .letter-text p:last-child{margin-bottom:0}.radomir-letter .letter-text a{color:inherit;text-decoration-color:#76532d80}
.session-reader{display:grid;grid-template-columns:132px minmax(0,1fr);gap:26px;align-items:start}.session-reader>*{min-width:0}
.session-toc{position:sticky;top:24px;max-height:calc(100vh - 48px);overflow:auto;border-right:1px solid #d7c8a9;padding-right:16px;font:12px/1.5 Arial,sans-serif}
.session-toc h2{font:600 12px/1.4 Arial,sans-serif;margin:0 0 14px}.session-toc a{display:block;padding:5px;border:1px solid transparent;text-decoration:none}.session-toc a[aria-current]{border-color:#b98c36;background:#b98c3610}.session-toc img{display:block;width:100%;height:auto;margin-bottom:7px}.session-toc span{display:block}
.session-abstract{scroll-margin-top:24px;border-bottom:1px solid #d7c8a9;padding-bottom:2rem;margin-bottom:2rem}.session-abstract>figure{margin:0 0 1.5rem}.session-abstract>figure img{display:block;width:100%;height:auto}.session-abstract h2{margin-top:0}.session-abstract h3{margin-top:1.5rem}.session-abstract li{margin-bottom:.7rem}.session-abstract figcaption{font-size:11px}
.npc-portrait-column{min-width:0}.npc-portrait-column>a{display:block;max-width:180px}.npc-portrait-column img.portrait{display:block;width:180px;height:225px;object-fit:cover;object-position:50% 20%}
.npc-card-download{margin-top:10px;font:12px/1.5 Arial,sans-serif;max-width:180px}.npc-card-download>summary{display:list-item;border:0;padding:0;background:none;cursor:pointer;text-decoration:underline;text-decoration-style:dotted;text-underline-offset:3px;color:#31524a}.npc-card-download ul{list-style:none;padding:8px 0 0;margin:0}.npc-card-download li{margin:.4em 0}.npc-card-download a{font:inherit}.npc-card-download small{font-size:10px;color:#756b59}
.calendar-inset{box-sizing:border-box;float:right;width:43%;max-width:320px;margin:0 0 20px 24px;padding:10px;border:1px solid #d8c8a8;background:#f2ebd9}.calendar-inset img{display:block;width:100%;height:auto}.calendar-inset figcaption{font:11px/1.5 Arial,sans-serif;margin-top:7px}.longform:has(.calendar-inset){display:flow-root}
.camp-sections details{border-top:1px solid #d7c8a9;margin:0;padding:18px 0}.camp-sections summary{cursor:pointer;font-size:22px}.camp-empty{min-height:24px}.campaign-card-pages figure{margin:1.5rem 0}.campaign-card-pages img{display:block;width:100%;height:auto}
@media(max-width:700px){.session-reader{grid-template-columns:minmax(0,1fr);gap:20px}.session-toc{position:static;max-height:none;border-right:0;border-bottom:1px solid #d7c8a9;padding:0 0 14px;display:flex;gap:14px;align-items:center;overflow-x:auto}.session-toc h2{flex:0 0 auto;margin:0}.session-toc a{flex:0 0 145px;display:flex;gap:10px;align-items:center}.session-toc img{width:60px;margin:0}.calendar-inset{float:none;width:100%;max-width:340px;margin:0 auto 24px}.radomir-letter{padding:22px 18px}.session-abstract{scroll-margin-top:72px}}
@media(prefers-reduced-motion:no-preference){html:has(.session-reader){scroll-behavior:smooth}}
.campaign-session{scroll-margin-top:75px}
.letter-continuation{padding:0;border:0;background:transparent}
.letter-continuation>summary,.letter-continuation>.letter-collapse{display:block;padding:.8rem 0;border:0;border-top:1px solid #ac855c;background:transparent;color:#453526;cursor:pointer;font:400 12px/1.5 var(--sans);box-shadow:none;border-radius:0;text-align:left}
.letter-continuation.has-letter-controls[open]>summary{display:none}
.letter-continuation>.letter-collapse{width:100%;margin-top:2rem}
.letter-continuation>.letter-collapse[hidden]{display:none}
.letter-continuation>summary:focus-visible,.letter-collapse:focus-visible{outline:2px solid #775b32;outline-offset:4px}
.letter-remaining{padding-top:1rem}
.radomir-letter .letter-text .letter-farewell,.radomir-letter .letter-text .letter-signature{text-align:right}
.radomir-letter .letter-text .letter-farewell{margin-top:2rem;margin-bottom:0}
.letter-signature img{display:block;width:min(260px,100%);height:auto;margin:0 0 0 auto}
.signature-name{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.campaign-npc-gallery img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}
.campaign-npc-gallery.campaign-gallery-single{grid-template-columns:minmax(0,1fr);max-width:410px}
.campaign-npc-gallery.campaign-gallery-single img{aspect-ratio:1}
.campaign-npc-gallery [data-mira-lyre]>a{overflow:hidden}
.campaign-npc-gallery [data-mira-lyre] img{object-position:15% 0%;transform:scale(1.08);transform-origin:35% 0%}
.session-abstract .biography-illustration figcaption{padding:10px 14px;color:var(--muted);font:13px/1.4 var(--sans);text-align:left;white-space:normal}
.campaign-npc-gallery figcaption a,.session-abstract .biography-illustration figcaption a{display:inline}
.letter-continuation-hint{display:block;margin:0 0 .45rem;color:#725b43;font:italic 12px/1.5 var(--sans)}
