/* Personal text may be longer than the art-directed sample. Keep it readable. */
[data-ea-unavailable] body { visibility: visible; }
.intro h1, .intro-line, .story-title, .story-copy, .hero-dedication,
.hero-small-note, .teddy-copy, .postcard-front > span, .postcard-back strong,
.tw-salutation, .tw-sorry-title, .tw-letter-paragraph, .tw-letter-close,
.stitch-copy, .stitch-center, .rose-paper-letter p, .lovebirds-message,
.story-signoff { white-space: pre-line; overflow-wrap: anywhere; }
.story-title.moonlit-long-copy { font-size: clamp(25px, 6vw, 48px); }
.postcard-back { overflow-y: auto; overscroll-behavior: contain; }
.postcard-back strong { min-width: 0; }
.postcard-back .bn-word, .rose-letter-word, .aw-ink-word { white-space: normal; overflow-wrap: anywhere; }
.tw-back { overflow-y: auto; overscroll-behavior: contain; }
.tw-letter-paragraph { flex-shrink: 0; }
.tw-line { white-space: normal; overflow-wrap: anywhere; }
.tw-line-guide, .tw-ink { overflow-wrap: anywhere; }
.stitch-copy { height: auto; max-height: 40vh; overflow-y: auto; }
.stitch-center { max-width: 55%; font-size: clamp(16px, 3.7vw, 25px); }
.rose-paper-letter { max-height: 68%; overflow-y: auto; overscroll-behavior: contain; }
.lovebirds-message { max-height: none; height: auto; }
.moonlit-static-fallback { padding: 3rem 1.5rem; text-align: center; font: 1.1rem/1.6 Georgia, serif; }

.rose-paper-letter:not([aria-hidden]) { pointer-events: auto; touch-action: pan-y; }
.postcard-back:has(.moonlit-long-copy) { justify-content: flex-start; }
.postcard-front > span { min-height: 0; overflow-y: auto; max-height: 69px; }
.hero-portrait:has([data-painting-caption].moonlit-long-copy) figcaption { position: relative; inset: auto; padding-top: 12px; max-height: 160px; overflow-y: auto; }
.hero-portrait:has([data-painting-caption].moonlit-long-copy) { padding-bottom: 12px; }
[data-painting-caption] { overflow-wrap: anywhere; }
.intro h1.moonlit-long-copy { max-height: 22svh; overflow-y: auto; padding-bottom: 3px; }
.intro-line.moonlit-long-copy { max-height: 8svh; overflow-y: auto; padding-bottom: 3px; }
.envelope-address { font-size: clamp(22px, 8vw, 44px); max-height: 55%; overflow-y: auto; }

/* A catalogue card is the actual first page; static/save-data cards stay still. */
.moonlit-card-preview .story-topline button, .moonlit-card-preview .hero-scroll { display: none; }
.moonlit-static-preview *, .moonlit-static-preview *::before, .moonlit-static-preview *::after {
  animation: none !important; transition: none !important; scroll-behavior: auto !important;
}
.moonlit-static-preview .scene-heading, .moonlit-static-preview .scene-object { opacity: 1 !important; translate: none !important; }
