/* page-extras.css: supplemental to /styles.css (reforge-page-reforger v1.3). Tokens only; styles.css is untouched and stays byte-identical. */
.prose a { text-decoration: underline; }
.prose .bp { margin-bottom: 2.2rem; }
.prose .bp:last-child { margin-bottom: 0; }
.prose h2.label-heading { font-family: var(--font-body); font-size: .875rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--primary-deep); margin-bottom: .6rem; }
.prose .bp h2 a { color: var(--secondary); text-decoration: none; }
.prose .bp h2 a:hover { text-decoration: underline; }
.prose .bp .more { font-weight: 700; }
.prose .donate { margin: 1.2rem 0; }
.prose .donate .btn { text-decoration: none; }
.post-date { color: var(--muted); font-size: .9rem; margin-bottom: .6rem; }
.hero .post-date { margin: 1rem 0 0; }
.journal { max-width: 880px; }
.journal p > img, .journal p > a > img, .journal li > img { display: inline-block; margin: 0 8px 8px 0; border-radius: 6px; }
.journal-gallery { display: flex; flex-wrap: wrap; gap: 6px; margin: 1.2rem 0; }
.journal-gallery a { display: block; }
.journal-gallery img { display: block; border-radius: 4px; }
.embed { position: relative; width: 100%; max-width: 760px; aspect-ratio: 16 / 9; margin: 1rem 0 1.4rem; }
.embed.map { aspect-ratio: 4 / 3; max-width: 640px; }
.embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; border-radius: 6px; }
.post-list { list-style: none; margin: 2rem 0 0; }
.post-list li { border-top: 1px solid var(--line); padding: 1.1rem 0; }
.post-list h3 { margin: 0 0 .15rem; }
.post-list p { margin-bottom: .3rem; }
.cta-choices { display: flex; flex-wrap: wrap; justify-content: center; align-items: flex-start; gap: 36px; }
.cta-choice { max-width: 320px; }
.cta-choice p { margin: .8rem auto 0; font-size: .95rem; }
.cta-band .btn-white { background: #fff; color: var(--secondary); border: 2px solid #fff; }
.cta-band .btn-white:hover { background: var(--surface); color: var(--secondary); text-decoration: none; }
.cta-band .text-link { color: var(--on-dark); text-decoration: underline; font-weight: 600; align-self: center; }
.grid-2 .btn-row { justify-content: flex-start; }
.hero .container .sub { text-wrap: pretty; }

/* 6b-fix1: 375px overflow, FAQ spacing, legacy nested lists */
main a, .prose a, .prose li, .prose p { overflow-wrap: anywhere; word-break: break-word; }
.section:has(> .container.faq-list) { padding: 24px 0; }
.faq-list details:last-child { margin-bottom: 0; }
.prose li > ol:only-child, .prose li > ul:only-child { margin-left: 0; }
.journal iframe, .journal img { max-width: 100%; }
.journal .embed.map { max-width: 600px; aspect-ratio: 600 / 450; }
