/* The letter on the home page (moved there from /letter/ on 2026-10-11). Loaded by the home page only; styles.css is not touched.
   Source Serif 4 Regular, self-hosted and unmodified (adobe-fonts/source-serif 4.005R, SIL OFL 1.1: fonts/SourceSerif4-OFL.txt).
   The fallback face is Georgia with the real face's ascent and descent; at 100% it is already the same width (both measured by tools/font_fallbacks.py),
   so the text does not re-wrap or move when the font arrives. */
@font-face { font-family: "Source Serif 4"; src: url("fonts/SourceSerif4-Regular.woff2") format("woff2"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Source Serif 4 Fallback"; src: local("Georgia"); size-adjust: 100%; ascent-override: 103.6%; descent-override: 33.5%; line-gap-override: 0%; }

/* scroll-margin-top: the header is sticky from 901px and about 150px tall, so a jump to /#letter (the old /letter/ address lands there) must clear it; styles.css keeps 5rem and this adds 5.5rem, as the Resources page does. */
/* A quiet reading band: a solid backdrop all the way across (the drifting roses stop behind it, so nothing moves behind the words), no card, no motion. The heading keeps the site's heading font; every paragraph, the greeting and the sign-off included, is one size. */
.letter-section { background: var(--bg-dark); box-shadow: 0 0 0 100vmax var(--bg-dark); clip-path: inset(0 -100vmax); padding-block: 1rem 3rem; scroll-margin-top: 5.5rem; }
.letter-section h2 { max-width: 24ch; margin: 1rem 0 2rem; font-size: clamp(1.8rem, 3.5vw, 2.6rem); line-height: 1.12; }
.letter-body { max-width: 38rem; font-family: "Source Serif 4", "Source Serif 4 Fallback", Georgia, serif; font-size: clamp(1.15rem, 1.05rem + 0.5vw, 1.25rem); font-weight: 400; line-height: 1.75; }
.letter-body p { margin: 0 0 1.75em; text-wrap: pretty; }
.letter-body p:last-child { margin-bottom: 0; }

@media print {
    .letter-section { background: none; box-shadow: none; clip-path: none; }
    .letter-body { max-width: none; font-size: 12pt; line-height: 1.6; }
    .letter-body p { margin-bottom: 1.6em; break-inside: avoid; orphans: 3; widows: 3; }
}
