/* The story uses the same four materials as the homepage.
   Grain keeps its scale; generated edges belong to the material, not the text. */
.preview-biography-page { --bio-ink:#382b2d;--bio-muted:#68545b;--bio-rose-deep:#753c52; }
.preview-biography-page .inner-page { background:transparent; }
.preview-biography-page .story-hero { min-height:600px;padding:36px 7% 76px;gap:10%;grid-template-columns:minmax(0,1fr) minmax(280px,.72fr); }
.preview-biography-page .story-hero h1 { font-size:clamp(64px,7.5vw,100px);font-weight:400;max-width:8ch; }
.preview-biography-page .story-hero h1 em { color:#dfa6bc; }
.preview-biography-page .story-hero .lead { max-width:29ch;font-size:21px;line-height:1.65;color:#f3ecdf; }
.preview-biography-page .portrait-print { width:min(100%,350px);padding:12px 12px 0;transform:rotate(3deg);background:var(--eva-paper-color) var(--eva-paper) center / 640px 640px repeat;box-shadow:0 12px 28px #12080f38; }
.preview-biography-page .portrait-print::before { content:'';position:absolute;z-index:2;top:-20px;left:32%;width:125px;height:44px;background:url('/assets/pink-washi-tape-v17.webp') center / contain no-repeat;transform:rotate(-7deg);pointer-events:none; }
.preview-biography-page .portrait-print>img { width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;box-shadow:none; }
.preview-biography-page .portrait-print figcaption.hand { min-height:48px;display:grid;place-items:center;padding:8px 0;color:var(--bio-rose-deep);font-size:25px; }
.preview-biography-page .bio-toc { width:86%;max-width:1120px;margin:0 auto;padding:0 0 50px;border:0;background:none; }
.preview-biography-page .bio-toc__links { gap:12px 30px; }
.preview-biography-page .bio-toc__links a { font-size:14px;border-color:#f3ecdf40;color:#f3ecdf; }
.preview-biography-page .bio-toc__links span { color:#e7b8c9; }
.preview-biography-page .bio-reading { width:100%;max-width:none;margin:0;background:none;color:var(--bio-ink);box-shadow:none;-webkit-mask-image:none;mask-image:none; }
.preview-biography-page .bio-reading::before,.preview-biography-page .bio-reading::after { display:none; }
.preview-biography-page .bio-reading .section-pad { padding:90px max(7%,24px); }
.preview-biography-page .bio-reading h2 { font-weight:400;font-size:clamp(38px,4.3vw,58px);line-height:1.04;letter-spacing:-.05em; }
.preview-biography-page .bio-reading p { font-size:17px;line-height:1.8; }
.preview-biography-page .bio-reading>section,.preview-biography-page .bio-conclusion>section { scroll-margin-top:90px;isolation:isolate; }

/* Physical sheets and cloth: independent, continuous stock with real torn edges. */
.preview-biography-page :is(.story-family,.kintsugi-chapter,.becoming-chapter,.manifesto-chapter,.story-faq) { position:relative;background:none;border:0; }
.preview-biography-page :is(.story-family,.kintsugi-chapter,.becoming-chapter,.manifesto-chapter)::before,
.preview-biography-page .story-family .story-prose::before,
.preview-biography-page .values-grid article::before,
.preview-biography-page .manifesto-quote::before,
.preview-biography-page .preview-biography-contact::before {
 content:'';display:block;position:absolute;inset:0;z-index:-1;pointer-events:none;width:auto;height:auto;border:0;opacity:1;
 --story-edge:30px;--story-top:var(--eva-paper-top);--story-bottom:var(--eva-paper-bottom);
 background:var(--eva-paper-color) var(--eva-paper) center top / 640px 640px repeat;
 -webkit-mask-image:var(--story-top),linear-gradient(#000,#000),var(--story-bottom);
 mask-image:var(--story-top),linear-gradient(#000,#000),var(--story-bottom);
 -webkit-mask-size:100% var(--story-edge),100% calc(100% - var(--story-edge)*2 + 2px),100% var(--story-edge);
 mask-size:100% var(--story-edge),100% calc(100% - var(--story-edge)*2 + 2px),100% var(--story-edge);
 -webkit-mask-position:center top,center,center bottom;mask-position:center top,center,center bottom;
 -webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;
}
.preview-biography-page :is(.story-family,.manifesto-chapter)::before {
 --story-edge:34px;--story-top:var(--eva-sage-top);--story-bottom:var(--eva-sage-bottom);
 background-color:#53614c;background-image:linear-gradient(#23332130,#23332130),var(--eva-sage);
 background-size:auto,420px 420px;background-position:center,center top;background-repeat:no-repeat,repeat;
 background-blend-mode:normal,luminosity;
}
.preview-biography-page .kintsugi-chapter::before {
 --story-edge:34px;--story-top:var(--eva-rose-top);--story-bottom:var(--eva-rose-bottom);
 background:var(--eva-rose-color) var(--eva-rose) center top / 420px 420px repeat;background-blend-mode:luminosity;
}
.preview-biography-page :is(.kintsugi-chapter,.dance-chapter,.becoming-chapter)::after { display:none; }

/* Home: the real album appears before the longer letter. */
.preview-biography-page .story-family { display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.35fr);grid-template-areas:'opening opening' 'heading album' 'prose prose' 'hospital hospital';column-gap:7%;row-gap:44px; }
.preview-biography-page .bio-reading .story-family .preview-bio-opening { grid-area:opening;max-width:40ch;font:400 23px/1.6 var(--hand);color:#f3ecdf;margin:0; }
.preview-biography-page .story-family .family-intro { grid-area:heading;display:block;align-self:center;margin:0; }
.preview-biography-page .story-family .family-intro h2 { max-width:9ch;color:#fff6e9; }
.preview-biography-page .story-family .family-intro h2 em { color:#f0c4d3; }
.preview-biography-page .album-spread { grid-area:album;display:block;width:100%;max-width:720px;aspect-ratio:3/2;margin:0;justify-self:center; }
.preview-biography-page .album-material { display:block;position:absolute;inset:0;width:100%;height:100%;object-fit:contain; }
.preview-biography-page .album-spread .album-photo { position:absolute;inset:auto;top:17%;left:19%;width:26%;height:59%;aspect-ratio:auto;background:var(--eva-paper-color) var(--eva-paper) center / 640px 640px repeat;box-shadow:0 5px 10px #23191840;filter:none;transform:rotate(-4deg); }
.preview-biography-page .album-spread .childhood-print { left:54%;top:16%;transform:rotate(3deg); }
.preview-biography-page .album-photo::before { display:none; }
.preview-biography-page .album-photo>img { top:4%;left:5%;width:90%;height:79%;object-fit:cover;box-shadow:none; }
.preview-biography-page .album-photo figcaption { top:84%;left:3%;right:3%;bottom:2%;font-size:clamp(15px,1.7vw,23px);color:#753c52;white-space:nowrap; }
.preview-biography-page .album-photo figcaption svg { width:.7em;height:.85em; }
.preview-biography-page .story-family .story-prose { grid-area:prose;isolation:isolate;width:min(100%,790px);padding:48px 58px 54px;margin:10px auto 0; }
.preview-biography-page .story-family .story-prose::before { --story-edge:20px; }
.preview-biography-page .story-family .story-prose p { color:var(--bio-ink);font-size:17px;line-height:1.85; }
.preview-biography-page .story-song-card { background:none;padding:26px 0;margin:32px 0;border-block:1px solid #753c5233;box-shadow:none; }
.preview-biography-page .story-song-card h3,.preview-biography-page .story-song-card .listen-link { color:var(--bio-ink); }
.preview-biography-page .memory-feature--hospital { grid-area:hospital;width:min(100%,940px);margin:0 auto;padding:0;gap:9%;background:none; }
.preview-biography-page .story-polaroid--hospital { width:min(100%,270px);padding:10px 10px 0;aspect-ratio:auto;justify-self:center;transform:rotate(-3deg);background:var(--eva-paper-color) var(--eva-paper) center / 640px 640px repeat;filter:drop-shadow(0 9px 13px #17201130); }
.preview-biography-page .story-polaroid--hospital::before { top:-15px;width:96px;height:34px;background:url('/assets/pink-washi-tape-v17.webp') center / contain no-repeat; }
.preview-biography-page .story-polaroid--hospital>img { position:static;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;box-shadow:none; }
.preview-biography-page .story-polaroid--hospital figcaption { position:static;padding:12px 2px 15px;font-size:24px;color:var(--bio-rose-deep); }
.preview-biography-page .memory-copy { padding:8px 0 8px 28px;border-left:1px solid #f3ecdf55; }
.preview-biography-page .memory-copy h3 { font-weight:400;color:#f3ecdf; }
.preview-biography-page .memory-copy p,.preview-biography-page .memory-copy p:last-child { color:#f3ecdf;font-size:16px;line-height:1.75; }
.preview-biography-page .memory-copy a { color:#f7d6e1; }
.preview-biography-page .memory-copy .listen-link { min-height:44px;color:#382b2d; }

/* Kintsugi: rose linen, her mother's words, and the original repaired cup. */
.preview-biography-page .kintsugi-chapter { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:7%;align-items:center;margin-top:42px; }
.preview-biography-page .kintsugi-copy { width:100%;margin:0; }
.preview-biography-page .kintsugi-copy h2 { max-width:11ch; }
.preview-biography-page .kintsugi-copy .body-copy { color:var(--bio-ink);font-size:17px; }
.preview-biography-page .story-quote { width:100%;max-width:550px;min-height:310px;margin:26px 0;padding:50px 17%;font-size:32px;line-height:1.1; }
.preview-biography-page .story-quote>span { max-width:none; }
.preview-biography-page .kintsugi-visual { width:125%;max-width:540px;margin:0 0 0 -10%; }
.preview-biography-page .kintsugi-object { width:100%;max-width:none; }

/* Movement sits on velvet; the photograph remains a complete portrait. */
.preview-biography-page .dance-chapter { display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:9%;align-items:center;margin-block:20px; }
.preview-biography-page .dance-copy { width:100%;margin:0; }
.preview-biography-page .dance-copy h2,.preview-biography-page .dance-copy .body-copy { color:#f3ecdf; }
.preview-biography-page .dance-copy h2 em { color:#e5aec3; }
.preview-biography-page .dance-copy .body-copy { font-size:17px; }
.preview-biography-page .dance-memory { width:min(100%,380px);margin:0;justify-self:center;padding:12px 12px 0;transform:rotate(2deg);background:var(--eva-paper-color) var(--eva-paper) center / 640px 640px repeat;box-shadow:0 10px 28px #13091045; }
.preview-biography-page .dance-memory>img { aspect-ratio:3/4;object-fit:cover;box-shadow:none; }
.preview-biography-page .dance-memory figcaption { padding:14px 4px 18px;color:var(--bio-rose-deep);font-size:23px;line-height:1.1; }

/* A cream chapter for the records, with dark ink throughout. */
.preview-biography-page .becoming-chapter { width:calc(100% - 56px);max-width:1280px;margin:10px auto 52px; }
.preview-biography-page .bio-reading .becoming-chapter { padding-inline:7%; }
.preview-biography-page .becoming-copy .body-copy { color:var(--bio-ink);font-size:17px; }
.preview-biography-page .becoming-portrait { padding:9px 9px 0;background:#faf3e7;transform:rotate(-2deg);box-shadow:0 7px 15px #46303c22; }
.preview-biography-page .becoming-portrait>img { box-shadow:none; }
.preview-biography-page .becoming-portrait figcaption { padding:12px 2px 15px;color:var(--bio-rose-deep); }
.preview-biography-page .story-song-grid { margin-top:54px;gap:0 35px; }
.preview-biography-page .story-song-grid article { grid-template-columns:92px minmax(0,1fr);gap:20px;padding-block:26px; }
.preview-biography-page .story-song-grid article>img { width:92px;transform:rotate(-2deg); }
.preview-biography-page .story-song-grid article:nth-child(even)>img { transform:rotate(2deg); }
.preview-biography-page .story-song-grid h3 { font-size:24px; }
.preview-biography-page .story-song-grid p { color:#68545b;font-size:14px;line-height:1.65; }

/* A pause on sage cloth, then three small paper notes. */
.preview-biography-page .bio-conclusion { border:0;background:none; }
.preview-biography-page .bio-reading .manifesto-heading h2,.preview-biography-page .bio-reading .manifesto-heading>p,.preview-biography-page .bio-reading .manifesto-columns p { color:#f3ecdf; }
.preview-biography-page .manifesto-heading h2 em { color:#f0c4d3; }
.preview-biography-page .manifesto-quote { isolation:isolate;width:min(100%,900px);margin:48px auto;padding:45px 9%;border:0;color:#503440;font-size:clamp(25px,3vw,38px);font-weight:400;line-height:1.4;text-align:left; }
.preview-biography-page .manifesto-quote::before { --story-edge:20px; }
.preview-biography-page .manifesto-quote>.manifesto-ornament { top:-13px;left:auto;right:25px;padding:0;background:none;color:#874d65;transform:rotate(8deg); }
.preview-biography-page .bio-reading .values-chapter { padding-block:80px 65px;background:none; }
.preview-biography-page .values-chapter>h2 { color:#f3ecdf;margin:0 0 42px; }
.preview-biography-page .values-chapter>h2 em { color:#e5aec3; }
.preview-biography-page .values-grid { gap:26px; }
.preview-biography-page .values-grid article { isolation:isolate;padding:42px 28px 34px;border:0;transform:rotate(-1deg); }
.preview-biography-page .values-grid article:nth-child(2) { transform:rotate(1deg); }
.preview-biography-page .values-grid article::before { --story-edge:16px; }
.preview-biography-page .values-grid .hand { right:22px;top:8px;padding:0;background:none;color:#875168;font-size:25px; }
.preview-biography-page .values-grid h3 { color:var(--bio-ink);font-weight:400;font-size:25px; }
.preview-biography-page .values-grid p { color:#68545b;font-size:15px;line-height:1.8; }

/* Keep cream letters only on velvet. The old single paper wrapper is gone. */
.preview-biography-page .becoming-final { background:none;color:#f3ecdf;margin:0; }
.preview-biography-page .bio-reading .becoming-final h2,.preview-biography-page .bio-reading .becoming-final .becoming-final-copy>p { color:#f3ecdf; }
.preview-biography-page .becoming-final h2 em { color:#e5aec3; }
.preview-biography-page .bio-reading .becoming-final .becoming-final-copy .becoming-lines { color:#eab9cd;font-size:clamp(24px,2.5vw,33px);line-height:1.55; }
.preview-biography-page .becoming-final .becoming-note { width:min(100%,285px); }
.preview-biography-page .becoming-final .becoming-note>p { color:#753c52;font-size:37px;line-height:1.02; }
.preview-biography-page .becoming-final .becoming-note>.signature { font-size:28px; }
.preview-biography-page .bio-reading .story-faq { padding-top:50px;padding-bottom:42px;color:#f3ecdf;background:none; }
.preview-biography-page .bio-reading .story-faq h2 { color:#f3ecdf; }
.preview-biography-page .faq-list { max-width:850px; }
.preview-biography-page .faq-list details { border-color:#f3ecdf35; }
.preview-biography-page .faq-list summary { color:#f3ecdf;min-height:64px; }
.preview-biography-page .faq-list details p { color:#eedde4;font-size:17px; }
.preview-biography-page .faq-list summary::after,.preview-biography-page .faq-list a { color:#eab9cd; }
.preview-biography-page .preview-biography-contact { position:relative;isolation:isolate;width:calc(100% - 48px);max-width:850px;margin:35px auto 70px;padding:45px 6% 48px;border:0;color:var(--bio-ink); }
.preview-biography-page .preview-biography-contact::before { --story-edge:22px; }
.preview-biography-page .preview-biography-contact .preview-contact-email { color:#653549;font-size:clamp(18px,2.5vw,27px); }
.preview-biography-page .preview-biography-contact>.text-link { color:#653549; }
.preview-biography-page .inner-footer { background:none;border:0;padding-top:0; }

@media(max-width:900px) {
 .preview-biography-page .story-family { grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:35px 4%; }
 .preview-biography-page .story-family .family-intro h2 { font-size:40px; }
 .preview-biography-page .kintsugi-chapter { gap:4%; }
 .preview-biography-page .story-song-grid { grid-template-columns:1fr; }
 .preview-biography-page .values-grid { gap:18px; }
 .preview-biography-page .values-grid article { padding-inline:22px; }
}
@media(max-width:700px) {
 .preview-biography-page .story-hero { min-height:0;gap:38px;padding:20px 25px 45px; }
 .preview-biography-page .story-hero h1 { font-size:61px;max-width:none;margin:10px 0 20px; }
 .preview-biography-page .story-hero .lead { font-size:18px;max-width:28ch; }
 .preview-biography-page .portrait-print { width:min(83%,305px);padding:9px 9px 0;transform:rotate(2deg); }
 .preview-biography-page .portrait-print figcaption.hand { min-height:43px;font-size:22px; }
 .preview-biography-page .portrait-print::before { width:105px;height:36px;top:-17px; }
 .preview-biography-page .bio-toc { width:calc(100% - 50px);padding-bottom:35px; }
 .preview-biography-page .bio-toc__links { grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 18px; }
 .preview-biography-page .bio-toc__links a { font-size:13px;min-height:48px; }
 .preview-biography-page .bio-toc__links span { font-size:21px; }
 .preview-biography-page .bio-reading .section-pad { padding:58px 25px 62px; }
 .preview-biography-page .bio-reading h2 { font-size:39px; }
 .preview-biography-page .bio-reading p { font-size:16px;line-height:1.8; }
 .preview-biography-page .story-family { display:flex;flex-direction:column;gap:28px; }
 .preview-biography-page .bio-reading .story-family .preview-bio-opening { order:0;font-size:23px;max-width:28ch; }
 .preview-biography-page .story-family .family-intro { order:1;align-self:stretch; }
 .preview-biography-page .story-family .family-intro h2 { max-width:11ch;font-size:42px; }
 .preview-biography-page .album-spread { order:2;flex:none;width:calc(100% + 14px);max-width:500px;margin:0 -7px;aspect-ratio:3/2; }
 .preview-biography-page .album-photo figcaption { font-size:15px; }
 .preview-biography-page .story-family .story-prose { order:3;width:100%;padding:32px 24px 36px;margin:0; }
 .preview-biography-page .story-family .story-prose p { font-size:16px;line-height:1.83; }
 .preview-biography-page .story-song-card { padding:22px 0;margin-block:25px; }
 .preview-biography-page .memory-feature--hospital { order:4;display:flex;flex-direction:column;gap:32px;margin-top:10px; }
 .preview-biography-page .story-polaroid--hospital { width:235px;max-width:87%; }
 .preview-biography-page .memory-copy { padding:0 0 0 20px; }
 .preview-biography-page .memory-copy h3 { font-size:30px; }
 .preview-biography-page .kintsugi-chapter { display:flex;flex-direction:column;align-items:stretch;gap:24px;margin-top:24px; }
 .preview-biography-page .kintsugi-copy { display:contents; }
 .preview-biography-page .kintsugi-copy h2 { order:0;max-width:11ch;margin-bottom:0; }
 .preview-biography-page .kintsugi-copy .body-copy { order:4;font-size:16px; }
 .preview-biography-page .kintsugi-copy>.body-copy:first-of-type { order:1; }
 .preview-biography-page .kintsugi-visual { order:2;align-self:center;width:100%;max-width:330px;margin:-4px 0; }
 .preview-biography-page .story-quote { order:3;min-height:220px;padding:40px 13%;font-size:29px;margin:0; }
 .preview-biography-page .dance-chapter { display:flex;flex-direction:column;gap:32px;margin:0; }
 .preview-biography-page .dance-copy .body-copy { font-size:16px; }
 .preview-biography-page .dance-memory { width:min(88%,310px); }
 .preview-biography-page .dance-memory figcaption { font-size:22px; }
 .preview-biography-page .becoming-chapter { width:calc(100% - 24px);margin:10px auto 30px; }
 .preview-biography-page .bio-reading .becoming-chapter { padding-inline:25px; }
 .preview-biography-page .becoming-lead { gap:28px; }
 .preview-biography-page .becoming-copy .body-copy { font-size:16px; }
 .preview-biography-page .becoming-portrait { width:min(87%,290px); }
 .preview-biography-page .story-song-grid { margin-top:36px; }
 .preview-biography-page .story-song-grid article { grid-template-columns:72px minmax(0,1fr);gap:16px;padding-block:22px; }
 .preview-biography-page .story-song-grid article>img { width:72px; }
 .preview-biography-page .story-song-grid h3 { font-size:23px; }
 .preview-biography-page .story-song-grid p { font-size:14px; }
 .preview-biography-page .manifesto-quote { margin:30px auto;padding:33px 25px;font-size:25px;line-height:1.45; }
 .preview-biography-page .bio-reading .values-chapter { padding-block:55px 40px; }
 .preview-biography-page .values-chapter>h2 { margin-bottom:30px; }
 .preview-biography-page .values-grid { grid-template-columns:1fr;gap:23px; }
 .preview-biography-page .values-grid article { padding:39px 26px 31px; }
 .preview-biography-page .values-grid h3 { max-width:15ch; }
 .preview-biography-page .values-grid p { font-size:16px; }
 .preview-biography-page .becoming-final { gap:28px; }
 .preview-biography-page .bio-reading .becoming-final .becoming-final-copy .becoming-lines { font-size:25px; }
 .preview-biography-page .becoming-final .becoming-note { width:245px; }
 .preview-biography-page .becoming-final .becoming-note>p { font-size:33px; }
 .preview-biography-page .becoming-final .becoming-note>.signature { font-size:25px; }
 .preview-biography-page .bio-reading .story-faq { padding-top:20px; }
 .preview-biography-page .faq-list details p { font-size:16px; }
 .preview-biography-page .preview-biography-contact { width:calc(100% - 30px);padding:35px 25px 38px;margin:5px auto 45px; }
 .preview-biography-page .preview-biography-contact>p { font-size:15px; }
 .preview-biography-page .preview-biography-contact .preview-contact-email { font-size:18px; }
}
