/* Shared long-form journal layout. */
.journal-page { max-width: 860px; }
.journal-heading { padding-block: 42px 28px; }
.journal-heading > .text-link { display: inline-block; margin-bottom: 32px; }
.journal-heading h1 { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; font-size: clamp(2.2rem, 5vw, 3.65rem); line-height: 1.13; margin-bottom: 0; }
.journal-heading .eyebrow { color: var(--green); }
.journal-body { max-width: 72ch; font-size: 1.05rem; line-height: 1.8; }
.journal-body > p { margin: 0 0 20px; }
.journal-body > p:first-child { font-size: 1.25rem; }
.journal-body h2 { font-family: Georgia, 'Times New Roman', serif; font-weight: 400; font-size: clamp(1.6rem, 3vw, 2.1rem); margin: 42px 0 20px; scroll-margin-top: 24px; }
.journal-body ul, .journal-body ol { padding-left: 26px; margin: 20px 0 28px; }
.journal-body li { margin-bottom: 8px; }
.journal-body .journal-experiment { background: var(--soft); border: 1px solid var(--line); border-radius: 12px; padding: 24px 24px 16px 46px; }
.journal-body blockquote { margin: 24px 0; border-left: 3px solid var(--green); padding: 14px 22px; background: var(--note); border-radius: 0 10px 10px 0; }
.journal-body blockquote p { margin: 0; }
.journal-end { border-top: 1px solid var(--line); padding-block: 28px 44px; margin-top: 36px; }
.journal-end p { font-size: .85rem; color: var(--muted); }
@media (max-width: 520px) { .journal-heading { padding-top: 28px; } .journal-heading > .text-link { margin-bottom: 24px; } .journal-body { font-size: 1rem; line-height: 1.75; } }

.journal-tool-callout { padding: 24px; margin: 0 0 32px; background: var(--soft); border: 1px solid var(--line); border-radius: 14px; }
.journal-tool-callout h2 { font: 400 1.7rem/1.3 Georgia, serif; }
.journal-tool-callout p { color: var(--muted); }
.journal-tool-callout .button { white-space: normal; }
