.story-header{padding:1rem clamp(1rem,5vw,5rem);display:flex;align-items:center;justify-content:space-between;gap:1rem;background:#fffdfa;border-bottom:1px solid var(--line)}.story-header>a:last-child{font-size:.9rem;font-weight:700}.story-main{max-width:940px;padding:clamp(2rem,6vw,5rem) 1rem 7rem;margin:auto}.story-card{background:#fffdfa;border:1px solid var(--line);border-radius:22px;padding:clamp(1.5rem,5vw,3rem);box-shadow:var(--shadow)}.story-main h1{font:700 clamp(2rem,4.2vw,3.8rem)/1.12 "Playfair Display",serif;letter-spacing:-.03em;margin:.2rem 0 1.2rem}.story-card>p{max-width:670px}.story-card label,.book-toolbar label{display:block;font-weight:700;margin:1.2rem 0 .5rem}.story-card input,.story-card textarea,.story-card select,.book-toolbar select{display:block;width:100%;border:1px solid #bdaab7;border-radius:10px;padding:.9rem;background:white;font:inherit;color:var(--ink);margin:.4rem 0}.story-card textarea{min-height:230px;resize:vertical;line-height:1.65}.story-card input:focus,.story-card textarea:focus,.story-card select:focus{outline:3px solid #ead0cf}.story-card button{margin:.5rem .5rem .5rem 0}.restore{border-top:1px solid var(--line);margin-top:2rem;padding-top:1rem}.quiet,.proof-note{color:#685562;font-size:.92rem}.story-top{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.4rem}.story-top h1{max-width:780px}.story-top>div>p:last-child{color:#685562}.story-actions{display:flex;justify-content:space-between;gap:1rem;margin-top:1.5rem}.story-actions .button{margin:0}.privacy-label{padding-top:1rem;border-top:1px solid var(--line)}.choice-list{display:grid;gap:.5rem}.choice-list label{border:1px solid var(--line);border-radius:12px;padding:.65rem 1rem;margin:0;cursor:pointer}.story-card .choice-list input{display:inline;width:auto;margin-right:.6rem;padding:0}.recovery-details{margin-top:1.5rem;padding:1rem;background:#f3e8e1;border-radius:12px}.recovery-details code{display:block;overflow-wrap:anywhere;margin:1rem 0}.book-toolbar{display:flex;align-items:end;justify-content:space-between;gap:1rem;margin:1rem 0}.book-toolbar label{margin:0}.book-toolbar select{margin:.35rem 0 0}.book-pages{background:white;box-shadow:var(--shadow);padding:clamp(2rem,7vw,5rem);margin-top:2rem}.book-cover{text-align:center;min-height:430px;display:grid;align-content:center;border:1px solid #c5914b;padding:2rem}.book-cover h2{font:700 clamp(2.5rem,6vw,5rem)/1.1 "Playfair Display",serif;color:#3b1834}.book-cover p{letter-spacing:.16em;text-transform:uppercase;color:#8a6a51}.book-chapter{margin:3rem 0}.book-chapter h2{font:700 2.3rem/1.2 "Playfair Display",serif;border-bottom:1px solid #c5914b;padding-bottom:.6rem}.book-entry{break-inside:avoid;margin:1.6rem 0}.book-entry h3{font:700 1.15rem/1.4 "Playfair Display",serif;color:#5b294e}.book-entry p{white-space:pre-wrap;line-height:1.8}.proof-note{background:#f3e8e1;padding:1rem;border-radius:10px}.book-pages.print-proof{max-width:720px;margin-inline:auto}.book-pages.print-proof .book-cover{min-height:550px}@media(max-width:620px){.story-top,.book-toolbar{align-items:stretch;flex-direction:column}.story-header .brand small{display:none}}@page{size:A4;margin:20mm}@media print{body{background:white}.story-header,.story-top,.book-toolbar,.proof-note,.story-card,.recovery-details,.quiet{display:none!important}.story-main{max-width:none;margin:0;padding:0}.book-pages{padding:0;margin:0;box-shadow:none}.book-cover{break-after:page;min-height:240mm}.book-chapter{break-before:page}.book-entry{break-inside:avoid}.book-pages.print-proof{max-width:none}.book-pages.print-proof .book-cover{min-height:240mm}}

.sample{margin:2rem 0;padding:1.5rem;border:1px solid var(--line);border-radius:16px;background:#fbf5f0}.sample h2{font:700 1.8rem/1.25 "Playfair Display",serif;margin:.3rem 0}.sample .quiet{margin:.8rem 0}.sample-actions{display:flex;flex-wrap:wrap;gap:.5rem}.sample-actions button{margin:.5rem 0}.sample-actions button[hidden]{display:none}

.story-main [hidden]{display:none!important}

.sample-packages{display:flex;flex-wrap:wrap;gap:.65rem;margin:1rem 0 1.5rem}.sample-packages .button{margin:0;text-align:center}

.photo-section{margin:2rem 0;padding-top:1.5rem;border-top:1px solid var(--line)}.photo-section h2{font:700 1.5rem/1.25 "Playfair Display",serif}.photo-grid,.book-photo-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem}.photo-card{margin:0;padding:1rem;border:1px solid var(--line);border-radius:14px;background:#fbf5f0}.photo-card img,.book-photo-grid img,.opening-photo img{width:100%;height:auto;display:block;border-radius:10px}.photo-card input[type=text],.photo-card input:not([type]){margin-top:.7rem}.opening-choice{font-size:.9rem!important;font-weight:600!important}.opening-choice input{display:inline!important;width:auto!important}.photo-upload{display:block;margin-top:1rem!important;padding:1rem;border:1px dashed #bdaab7;border-radius:12px}.photo-upload input{margin-top:.7rem}.button.small{font-size:.85rem;padding:.55rem .8rem}.book-photo-grid{margin-top:1rem}.book-photo-grid figure,.opening-photo{margin:0}.book-photo-grid figcaption,.opening-photo figcaption{text-align:center;font-size:.9rem;color:#685562;margin-top:.45rem}.opening-photo{max-width:680px;margin:2rem auto 4rem;break-after:page}.opening-photo img{max-height:780px;object-fit:contain}

.photo-ideas{margin:.75rem 0 1rem;padding:.85rem 1rem;background:#f7eee8;border-left:3px solid #c5914b;border-radius:0 10px 10px 0;color:#5f4b58;line-height:1.55}
.photo-missing{min-height:180px;background:#f3e8e1;border:1px dashed #bdaab7}
.book-cover{position:relative;overflow:hidden;background:linear-gradient(145deg,#fffdfa,#f7eee8)}
.book-cover:after{content:"";position:absolute;inset:18px;border:1px solid rgba(197,145,75,.35);pointer-events:none}
.book-chapter{padding-top:1rem}
.book-chapter>h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:2rem}
.book-entry{margin:2.5rem 0 3.5rem}
.book-entry h3{font-size:1.45rem;margin-bottom:.8rem}
.book-entry>p{font-size:1.05rem;line-height:1.9;max-width:68ch}
.book-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}
.book-photo-grid figure{break-inside:avoid;background:#fbf5f0;padding:.65rem;border-radius:12px}
.book-photo-grid figure:only-child{grid-column:1/-1;max-width:680px;margin-inline:auto}
.book-photo-grid img{max-height:620px;object-fit:contain;background:#f7f2ee}
@media(max-width:620px){.book-photo-grid{grid-template-columns:1fr}}

/* Keepsake proof: distinct pages, intentional photographic pacing and readable text. */
.book-pages{max-width:920px;margin-inline:auto;padding:clamp(1rem,4vw,3rem);background:#f5f0e9;box-shadow:none;color:#352b32}
.book-cover,.book-opening,.book-chapter,.book-ending{background:#fffdfa;box-shadow:0 14px 42px rgba(49,29,38,.10);margin:0 auto 2.5rem;padding:clamp(2rem,7vw,5rem)}
.book-cover{min-height:620px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border:0;background:linear-gradient(145deg,#fffdfa,#f4e9df)}
.book-cover:after{inset:24px;border:1px solid #c59a6a}
.book-cover h2{font:700 clamp(3rem,8vw,6rem)/1.08 "Playfair Display",serif;max-width:12ch;margin:2rem auto;color:#44243c}
.book-kicker{font:700 .75rem/1.5 "DM Sans",sans-serif!important;letter-spacing:.24em;text-transform:uppercase;color:#986a4b!important}
.book-ornament{font-size:1.8rem;color:#b88657;margin:.5rem 0}
.book-subtitle{font-size:.95rem!important;letter-spacing:.12em!important;color:#66545d!important}
.book-opening{display:grid;align-content:center;min-height:610px;text-align:center}
.book-opening>.book-kicker{margin-bottom:1.5rem}
.book-photo{margin:0;break-inside:avoid}
.book-photo img{display:block;width:100%;max-height:520px;object-fit:contain;background:#f7f2ed}
.book-photo-hero img{max-height:650px}
.book-photo figcaption{font:italic .92rem/1.5 "Playfair Display",serif;color:#6e5966;text-align:center;margin:.8rem 0 0}
.book-chapter{padding:0 0 clamp(2rem,6vw,4rem)}
.book-chapter-head{padding:clamp(3rem,8vw,6rem) clamp(2rem,7vw,5rem) clamp(2rem,5vw,3rem);background:#eee3db;border-bottom:5px solid #c39262}
.book-chapter:nth-of-type(even) .book-chapter-head{background:#f0e9e8}
.book-chapter-head h2{font:700 clamp(2.2rem,6vw,4rem)/1.12 "Playfair Display",serif;color:#44243c;border:0;margin:.5rem 0 0;padding:0;max-width:15ch}
.book-entry{margin:0;padding:clamp(2rem,6vw,4rem) clamp(2rem,7vw,5rem);break-inside:auto}
.book-entry+.book-entry{border-top:1px solid #e7d9d0}
.book-entry h3{font:600 clamp(1.4rem,3vw,1.9rem)/1.3 "Playfair Display",serif;color:#5b294e;margin:0 0 1.1rem}
.book-entry>p{font:400 1.06rem/1.9 "DM Sans",sans-serif;white-space:pre-wrap;max-width:64ch;margin:.9rem 0}
.book-entry>p:first-of-type:first-letter{font-family:"Playfair Display",serif;font-size:1.45em;color:#753d60}
.book-photo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:2rem 0 0}
.book-photo-grid.single{grid-template-columns:1fr}
.book-photo-grid .book-photo{background:#f8f3ee;padding:.7rem}
.book-photo-grid .book-photo img{max-height:430px}
.book-photo-grid.single .book-photo img{max-height:570px}
.book-ending{min-height:550px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(155deg,#f4e9df,#fffdfa)}
.book-ending>span{font-size:2rem;color:#b88657}
.book-ending h2{font:700 clamp(2.4rem,6vw,4rem)/1.15 "Playfair Display",serif;color:#44243c;margin:.6rem 0}
.book-ending>p:last-child{max-width:34ch;line-height:1.8;color:#65545e}
.book-empty{padding:2rem;text-align:center}
.book-pages.print-proof{max-width:820px}
@media(max-width:620px){.book-photo-grid{grid-template-columns:1fr}.book-cover,.book-opening,.book-chapter,.book-ending{margin-bottom:1rem}.book-cover{min-height:500px}}
@media print{
  @page{size:A4;margin:12mm}
  body{print-color-adjust:exact;-webkit-print-color-adjust:exact}
  .book-pages,.book-pages.print-proof{max-width:none;padding:0;background:white}
  .book-cover,.book-opening,.book-chapter,.book-ending{box-shadow:none;margin:0;padding:0;break-before:page}
  .book-cover{break-before:auto;min-height:270mm}
  .book-opening,.book-ending{min-height:270mm;padding:15mm}
  .book-chapter-head{padding:24mm 17mm 18mm}
  .book-entry{padding:12mm 17mm}
  .book-entry h3,.book-photo{break-after:avoid}
  .book-photo img{max-height:150mm}
}

/* Botanical edition: fine details around the photographs and generous paper margins. */
.story-card{box-shadow:0 14px 38px rgba(55,73,82,.07);border-color:#dce2dd}
.story-main h1{font-weight:400;color:#40576a}
.proof-note{background:#edf2ee;color:#4d626b}
.book-pages{background:#e9edeb;color:#354651}
.book-cover,.book-opening,.book-chapter,.book-ending{background-color:#fffefa;box-shadow:0 12px 38px rgba(58,75,81,.09)}
.book-cover,.book-opening,.book-ending{position:relative;overflow:hidden;isolation:isolate}
.book-cover{background:#fffefa;gap:.45rem}
.book-cover>*,.book-opening>*,.book-ending>*{position:relative;z-index:1}
.book-cover h2{font-weight:400;color:#4b6077;letter-spacing:-.05em;margin:2.5rem auto .6rem}
.book-cover .book-kicker:after{content:"Memories to keep";display:block;font:400 clamp(2rem,4vw,3rem)/1.3 "Great Vibes",cursive;letter-spacing:0;text-transform:none;color:#7289a0;margin-top:1.6rem}
.book-kicker{color:#647d80!important;font-weight:600!important;letter-spacing:.16em}
.book-ornament,.book-ending>span{font-size:0;display:block;width:56px;height:1px;background:#a9b8ab;margin:1.2rem auto}
.book-subtitle{letter-spacing:.08em!important;color:#657a86!important}
.book-opening{padding-top:6rem}
.book-opening>.book-kicker{font:400 clamp(2rem,4vw,3rem)/1.1 "Great Vibes",cursive!important;letter-spacing:0;text-transform:none;color:#7289a0!important}
.book-photo{padding:.45rem;background:#fffefa;box-shadow:0 3px 18px rgba(53,70,77,.10)}
.book-photo img,.book-photo-grid img{background:#f5f5f1;border-radius:0}
.book-photo figcaption{font-weight:400;color:#657989;margin:.9rem .25rem .45rem}
.book-chapter-head,.book-chapter:nth-of-type(even) .book-chapter-head{position:relative;background:#fffefa;border-bottom:1px solid #c9d5ce;min-height:250px}
.book-chapter-head h2{font-weight:400;color:#4b6077;letter-spacing:-.04em}
.book-entry+.book-entry{border-top:1px solid #e2e8e2}
.book-entry h3{font-weight:400;color:#4a6175}
.book-entry>p:first-of-type:first-letter{color:#70869a}
.book-photo-grid .book-photo{background:#fffefa;padding:.45rem;border-radius:0}
.book-ending{background:#fffefa}
.book-ending h2{font-weight:400;color:#4b6077}
.book-ending>p:last-child{color:#617684}
@media print{.book-cover,.book-opening,.book-chapter,.book-ending{box-shadow:none;background-color:#fffefa}.book-photo{box-shadow:none;border:1px solid #e5eae4}.book-chapter-head{min-height:0}}

/* A gentle photographic mat within the illustrated keepsake pages. */
.book-photo,.book-photo-grid .book-photo{position:relative;isolation:isolate;padding:clamp(.8rem,2.5vw,1.35rem);border:1px solid #dce4da;border-radius:3px;background:#fffefa;box-shadow:0 9px 26px rgba(76,89,80,.10)}
.book-photo img,.book-photo-grid .book-photo img{border:1px solid #e3e6dd;box-shadow:0 0 0 4px #f7f7f1;background:#f7f7f1}
.book-photo figcaption{margin:1.15rem .4rem .3rem}
.book-photo .book-photo-fairy{position:absolute!important;top:-55px;right:-42px;width:190px!important;height:190px!important;max-height:none!important;object-fit:contain!important;object-position:right top;border:0!important;box-shadow:none!important;background:transparent!important;z-index:3;pointer-events:none}
.book-photo-grid .book-photo .book-photo-fairy{top:-38px;right:-28px;width:135px!important;height:135px!important}
.book-photo-grid{gap:1.5rem}
.book-ending{padding-bottom:clamp(5rem,9vw,7rem)}
@media(max-width:620px){.book-photo-grid{gap:1rem}}
@media print{.book-photo,.book-photo-grid .book-photo{box-shadow:none}}

/* Portrait keepsake pages. Artwork is an image element so home printers include it. */
.book-page-border{position:absolute!important;inset:0;width:100%;height:100%;object-fit:fill;pointer-events:none;z-index:0!important}
.book-chapter{background:transparent;box-shadow:none;padding:0;margin:0}
.book-cover,.book-opening,.book-chapter-head,.book-entry,.book-ending{position:relative;isolation:isolate;overflow:hidden;min-height:900px;background:#fffefa;box-shadow:0 12px 38px rgba(58,75,81,.09);margin:0 auto 2.5rem;padding:clamp(5rem,9vw,7rem) clamp(4.5rem,10vw,7.5rem);width:100%}
.book-cover>*:not(.book-page-border),.book-opening>*:not(.book-page-border),.book-chapter-head>*:not(.book-page-border),.book-entry>*:not(.book-page-border),.book-ending>*:not(.book-page-border){position:relative;z-index:1}
.book-cover,.book-opening,.book-ending{display:flex;flex-direction:column;align-items:center;justify-content:center}
.book-cover h2{max-width:10ch}
.book-opening .book-photo{width:min(100%,540px);margin:1rem auto}
.book-chapter-head,.book-chapter:nth-of-type(even) .book-chapter-head{display:flex;flex-direction:column;justify-content:center;background:#fffefa;border:0;min-height:900px}
.book-entry{display:flex;flex-direction:column;align-items:flex-start;border:0!important;padding-top:15rem;padding-inline:clamp(9rem,16vw,11rem)}
.book-entry h3{margin-top:0}
.book-entry .book-photo-grid{width:100%}
.book-entry .book-photo-grid figure:only-child{max-width:490px}
.book-entry .book-photo-grid .book-photo img{max-height:390px}
.book-entry.photo-continuation{padding-top:11rem}
.book-entry.photo-continuation h3{font-size:1.25rem;line-height:1.35;color:#677c8a}
.book-entry .book-photo-grid.magazine{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-rows:repeat(2,minmax(0,1fr));height:430px;gap:1rem;margin-top:1.5rem}
.book-entry .book-photo-grid.magazine .book-photo{min-width:0;min-height:0;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden}
.book-entry .book-photo-grid.magazine .book-photo:first-child{grid-row:1/3}
.book-entry .book-photo-grid.magazine .book-photo img{width:100%;height:100%;min-height:0;max-height:350px;object-fit:contain}
.book-entry .book-photo-grid.magazine .book-photo:not(:first-child) img{max-height:140px}
.book-entry .book-photo-grid.magazine .book-photo figcaption{font-size:.82rem;line-height:1.25;margin:.5rem 0 0}
.photo-unavailable{display:block;padding:1.5rem;background:#f7f7f1;border:1px dashed #a5b6ae;color:#4a6175;font-size:.94rem;line-height:1.5;text-align:center}
.book-photo .photo-unavailable{min-height:120px;margin:0}
.book-ending{padding-bottom:clamp(5rem,9vw,7rem)}
@media(max-width:620px){.book-cover,.book-opening,.book-chapter-head,.book-entry,.book-ending{min-height:650px;padding:5rem 2.25rem 3rem;margin-bottom:1rem}.book-chapter-head{min-height:650px!important}.book-entry,.book-entry.photo-continuation{padding-top:9rem}.book-entry .book-photo-grid .book-photo img{max-height:290px}.book-entry .book-photo-grid.magazine{height:310px;gap:.5rem}.book-entry .book-photo-grid.magazine .book-photo{padding:.4rem}.book-entry .book-photo-grid.magazine .book-photo img{max-height:250px}.book-entry .book-photo-grid.magazine .book-photo:not(:first-child) img{max-height:90px}.book-entry .book-photo-grid.magazine .book-photo figcaption{font-size:.66rem}.book-ending{padding-bottom:3rem}}
@media(max-width:620px){.book-photo .book-photo-fairy{width:125px!important;height:125px!important;top:-35px;right:-25px}.book-photo-grid .book-photo .book-photo-fairy{width:105px!important;height:105px!important}}
@media print{
  @page{size:A4;margin:10mm}
  .book-pages,.book-pages.print-proof{padding:0;background:white}
  .book-chapter{margin:0;break-before:auto}
  .book-cover,.book-opening,.book-chapter-head,.book-entry,.book-ending{width:100%;min-height:277mm;margin:0;padding:27mm 24mm;box-shadow:none;break-before:page;overflow:hidden}
  .book-cover{break-before:auto}
  .book-pages.print-proof .book-cover{min-height:0}
  .book-chapter-head{min-height:277mm!important}
  .book-entry{break-inside:auto}
  .book-entry{padding:55mm 34mm 25mm}
  .book-entry.photo-continuation{padding-top:45mm}
  .book-entry .book-photo-grid .book-photo img{max-height:104mm}
  .book-entry .book-photo-grid.magazine{height:124mm;gap:3mm}
  .book-entry .book-photo-grid.magazine .book-photo img{max-height:104mm}
  .book-entry .book-photo-grid.magazine .book-photo:not(:first-child) img{max-height:40mm}
  .book-ending{padding-bottom:27mm}
  .book-page-border{print-color-adjust:exact;-webkit-print-color-adjust:exact}
}

/* Blurb Standard Portrait photo book: 8 × 10 inch trim, 8.125 × 10.25 inch PDF canvas.
   The extra 0.125 inch is bleed on top, bottom and the outside edge. */
.book-pages,.book-pages.print-proof{max-width:850px}
.book-cover,.book-opening,.book-chapter-head,.book-entry,.book-ending{
  box-sizing:border-box;
  width:min(100%,780px);
  min-height:0;
  aspect-ratio:65 / 82;
  padding:clamp(5rem,12%,7rem) clamp(5rem,14%,7.5rem);
}
.book-chapter-head,.book-chapter:nth-of-type(even) .book-chapter-head{min-height:0}
.book-chapter-head,.book-chapter:nth-of-type(even) .book-chapter-head{align-items:center;text-align:center}
.book-chapter-head h2{margin-left:auto;margin-right:auto}
.book-entry,.book-entry.photo-continuation{
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:clamp(7rem,17%,10rem) clamp(5.25rem,15%,7.5rem);
}
.book-entry h3,.book-entry>p{max-width:100%;margin-left:auto;margin-right:auto}
.book-entry>p{line-height:1.7}
.book-entry .book-photo-grid{margin-top:1.3rem;gap:.75rem}
.book-entry .book-photo-grid .book-photo img{max-height:300px}
.book-entry .book-photo-grid.magazine{height:385px;margin-top:1.2rem}
.book-entry .book-photo-grid.magazine .book-photo img{max-height:300px}
.book-entry .book-photo-grid.magazine .book-photo:not(:first-child) img{max-height:115px}
.book-opening .book-photo{max-width:100%}
@media(max-width:620px){
  .book-pages,.book-pages.print-proof{overflow-x:auto;padding:1rem}
  .book-cover,.book-opening,.book-chapter-head,.book-entry,.book-ending{width:640px;min-height:0;margin-bottom:1rem;padding:6rem 5rem;aspect-ratio:65 / 82}
  .book-entry,.book-entry.photo-continuation{padding:8rem 6rem}
  .book-entry .book-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .book-entry .book-photo-grid.single{grid-template-columns:1fr}
  .book-entry .book-photo-grid.magazine{height:340px}
}
@media print{
  @page{size:8.125in 10.25in;margin:0}
  html,body,.story-main,.book-pages,.book-pages.print-proof{width:100%;max-width:none;margin:0;padding:0}
  .book-cover,.book-opening,.book-chapter-head,.book-entry,.book-ending{
    width:8.125in;height:10.25in;min-height:0;aspect-ratio:auto;
    margin:0;break-before:page;break-after:auto;break-inside:avoid;
    padding:1.05in 1.15in;box-shadow:none;overflow:hidden;
  }
  .book-cover{break-before:auto}
  .book-chapter-head{min-height:0!important}
  .book-entry,.book-entry.photo-continuation{padding:1.35in 1.25in}
  .book-entry .book-photo-grid .book-photo img{max-height:3.1in}
  .book-entry .book-photo-grid.magazine{height:3.95in;gap:.12in}
  .book-entry .book-photo-grid.magazine .book-photo img{max-height:3.1in}
  .book-entry .book-photo-grid.magazine .book-photo:not(:first-child) img{max-height:1.2in}
  .book-ending{padding-bottom:1.05in}
}

/* Editorial booklet: headings share story pages and begin near the floral artwork. */
.book-entry,.book-entry.photo-continuation{justify-content:flex-start;align-items:stretch;text-align:left;padding-top:clamp(5.5rem,12%,7rem)}
.book-entry .book-chapter-head,.book-entry .book-chapter-head:nth-of-type(even){position:relative;display:block;width:auto;height:auto;min-height:0!important;aspect-ratio:auto;margin:0 0 1rem;padding:0;background:transparent;box-shadow:none;text-align:left;border:0}
.book-entry .book-chapter-head h2{font-size:1.8rem;margin:.2rem 0 .6rem;text-align:left}
.book-entry .book-chapter-head .book-kicker{margin:0;font-size:.7rem}
.book-entry h3,.book-entry>p{margin-left:0;margin-right:0;text-align:left}
.book-entry .book-photo-grid.magazine{height:330px}
@media print{.book-entry,.book-entry.photo-continuation{padding-top:.95in}.book-entry .book-chapter-head,.book-entry .book-chapter-head:nth-of-type(even){min-height:0!important;height:auto;break-before:auto;padding:0;margin:0 0 .15in}.book-entry .book-photo-grid.magazine{height:3.4in}}

/* Centre all booklet chapter and question headings, while retaining the raised placement. */
.book-entry .book-chapter-head,.book-entry .book-chapter-head:nth-of-type(even),.book-entry .book-chapter-head h2,.book-entry h3,.book-entry .book-chapter-head .book-kicker{text-align:center}
.book-entry .book-chapter-head h2,.book-entry h3{margin-left:auto;margin-right:auto}

/* Book-style fully justified body paragraphs; keep headings centred. */
.book-entry > p{text-align:justify;text-justify:inter-word;hyphens:auto;overflow-wrap:break-word}

/* Keep long question headings within the decorative inner border. */
.book-entry h3{box-sizing:border-box;max-width:100%;width:100%;white-space:pre-line;overflow-wrap:break-word;text-wrap:balance;font-size:clamp(1.15rem,2.6vw,1.65rem);line-height:1.3;padding-inline:.15rem}
@media print{.book-entry h3{font-size:16pt;line-height:1.3}}

/* Layout stabilization: centered headings, safe text area, no border overlap. */
.book-entry,.book-entry.photo-continuation{box-sizing:border-box;align-items:stretch;justify-content:flex-start;text-align:left;padding:1.25in 1.45in 1.1in;overflow:hidden}
.book-entry .book-chapter-head,.book-entry .book-chapter-head h2,.book-entry .book-chapter-head .book-kicker,.book-entry h3{text-align:center!important;width:100%;max-width:100%;margin-left:auto;margin-right:auto}
.book-entry>p{box-sizing:border-box;width:100%;max-width:100%;text-align:justify!important;text-justify:inter-word;hyphens:auto;overflow-wrap:anywhere;line-height:1.65;white-space:pre-wrap}
.book-entry .book-photo-grid{max-width:100%;min-width:0}
.book-entry .book-photo-grid .book-photo{min-width:0}
.book-entry .book-photo-grid img{max-width:100%;object-fit:contain}
@media print{.book-entry,.book-entry.photo-continuation{padding:1.25in 1.45in 1.1in}.book-entry h3,.book-entry .book-chapter-head h2{text-align:center!important}.book-entry>p{text-align:justify!important}}

/* Consistent story-page rhythm based on the approved Chapter 04 layout. */
.book-entry,.book-entry.photo-continuation{padding-top:1.25in;padding-bottom:1.1in;padding-left:1.45in;padding-right:1.45in;justify-content:flex-start;gap:0}
.book-entry .book-chapter-head{margin:0 0 1rem!important}
.book-entry .book-chapter-head h2{margin:.2rem 0 .6rem!important}
.book-entry h3{margin:0 auto 1.1rem!important}
.book-entry>p{margin:.9rem 0!important;line-height:1.65}
.book-entry .book-photo-grid{margin-top:1.3rem}
@media print{.book-entry,.book-entry.photo-continuation{padding:1.25in 1.45in 1.1in}.book-entry .book-chapter-head{margin-bottom:.15in!important}.book-entry h3{margin-bottom:.16in!important}}

/* Balanced multiline question headings on all pages. */
.book-entry h3{white-space:pre-line;overflow-wrap:break-word;text-wrap:balance}
.book-entry h3.book-long-heading{font-size:1.2rem!important;line-height:1.32!important;max-width:100%}
@media print{.book-entry h3.book-long-heading{font-size:15pt!important;line-height:1.3!important}}

/* TEMPORARY TEST PROOF: show typography without fairy/floral page artwork. */
.book-pages .book-page-border{display:none!important}
.book-pages .book-cover,.book-pages .book-opening,.book-pages .book-entry,.book-pages .book-ending{background-image:none!important;background-color:#fffdfa!important}
/* Shared digital and print typography baseline. */
.book-pages .book-entry>p{font-family:Georgia,serif!important;font-size:11pt!important;line-height:1.3!important;text-align:justify!important}
.book-pages .book-entry h3{font-size:14pt!important;line-height:1.3!important;text-align:center!important;white-space:pre-line}
.book-pages .book-chapter-head h2{font-size:19pt!important;line-height:1.25!important;text-align:center!important}
@media print{.book-pages .book-page-border{display:none!important}.book-pages .book-entry>p{font-size:11pt!important;line-height:1.3!important}}

/* BOOK FORMATTING BIBLE: unified type styles for test PDF and preview. */
.book-pages .book-cover h1,.book-pages .book-cover .book-title{font-family:Georgia,serif!important;font-size:28pt!important;font-weight:700!important;text-align:center!important;line-height:1.2!important}
.book-pages .book-cover .book-subtitle,.book-pages .book-cover .book-tagline{font-family:Georgia,serif!important;font-size:16pt!important;font-style:italic!important;text-align:center!important}
.book-pages .book-chapter-head h2{font-family:Georgia,serif!important;font-size:19pt!important;font-weight:700!important;text-align:center!important;line-height:1.25!important}
.book-pages .book-entry h3{font-family:Georgia,serif!important;font-size:14pt!important;font-weight:700!important;text-align:center!important;line-height:1.3!important;white-space:pre-line!important;text-wrap:balance}
.book-pages .book-entry>p{font-family:Georgia,serif!important;font-size:11pt!important;font-weight:400!important;line-height:1.3!important;text-align:justify!important;text-justify:inter-word!important;hyphens:auto;max-width:100%!important;margin-left:auto!important;margin-right:auto!important}
.book-pages .book-photo figcaption,.book-pages .book-photo-caption{font-family:Georgia,serif!important;font-size:9pt!important;font-style:italic!important;text-align:center!important}
@media print{
.book-pages .book-cover h1,.book-pages .book-cover .book-title{font-size:28pt!important}
.book-pages .book-cover .book-subtitle,.book-pages .book-cover .book-tagline{font-size:16pt!important}
.book-pages .book-entry h3{font-size:14pt!important}
.book-pages .book-chapter-head h2{font-size:19pt!important}
.book-pages .book-entry>p{font-size:11pt!important;line-height:1.3!important}
}

/* FAMILY BORDER TEST PROOF: show the new original Family border on every page. */
.book-pages .book-page-border{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:fill!important;z-index:0!important;pointer-events:none}
.book-pages .book-cover,.book-pages .book-opening,.book-pages .book-entry,.book-pages .book-ending,.book-pages .book-chapter-head{position:relative!important;isolation:isolate;background:#fffdfa!important;background-image:none!important}
.book-pages .book-cover> :not(.book-page-border),.book-pages .book-opening> :not(.book-page-border),.book-pages .book-entry> :not(.book-page-border),.book-pages .book-ending> :not(.book-page-border){position:relative;z-index:1}
.book-pages .book-cover h2{font-family:Georgia,serif!important;font-size:28pt!important;font-weight:700!important;line-height:1.2!important;text-align:center!important}
.book-pages .book-cover .book-subtitle{font-family:Georgia,serif!important;font-size:16pt!important;font-style:italic!important;text-transform:none!important;letter-spacing:normal!important;text-align:center!important}
.book-pages .book-photo figcaption{font-family:Georgia,serif!important;font-size:9pt!important;font-style:italic!important;text-align:center!important}
.book-pages .book-photo-fairy{display:none!important}
@media print{.book-pages .book-page-border{display:block!important;print-color-adjust:exact;-webkit-print-color-adjust:exact}}

/* APPROVED FAMILY ARTWORK: safe inner content area, away from calligraphy. */
.book-pages .book-cover,.book-pages .book-opening,.book-pages .book-entry,.book-pages .book-ending{padding:1.6in 1.12in 1.12in!important}
.book-pages .book-entry.photo-continuation{padding-top:1.55in!important}
.book-pages .book-entry .book-chapter-head{margin-bottom:.12in!important}
.book-pages .book-entry h3{margin-top:0!important;margin-bottom:.2in!important}
.book-pages .book-entry .book-photo-grid.single{width:100%;max-width:4.25in;margin:.2in auto 0!important;grid-template-columns:minmax(0,1fr)!important}
.book-pages .book-entry .book-photo-grid.single .book-photo{width:100%;max-width:4.25in;margin:0 auto!important}
.book-pages .book-entry .book-photo-grid.single .book-photo img{max-height:4.4in!important;width:100%;object-fit:contain}
.book-pages .book-page-border{object-fit:fill!important}
@media print{
.book-pages .book-cover,.book-pages .book-opening,.book-pages .book-entry,.book-pages .book-ending{padding:1.6in 1.12in 1.12in!important}
.book-pages .book-entry.photo-continuation{padding-top:1.55in!important}
.book-pages .book-entry .book-photo-grid.single .book-photo img{max-height:4.4in!important}
}

/* APPROVED PHOTO BIBLE: borderless photographs on digital and print pages. */
.book-pages .book-photo,
.book-pages .book-photo-grid .book-photo,
.book-pages .book-photo-grid figure,
.book-pages figure.book-photo{
  border:0!important;outline:0!important;box-shadow:none!important;
  background:transparent!important;border-radius:0!important;
  padding:0!important;
}
.book-pages .book-photo img:not(.book-photo-fairy),
.book-pages .book-photo-grid .book-photo img:not(.book-photo-fairy){
  border:0!important;outline:0!important;box-shadow:none!important;
  border-radius:0!important;background:transparent!important;
}
.book-pages .book-photo::before,.book-pages .book-photo::after{
  content:none!important;display:none!important;
}
@media print{
  .book-pages .book-photo,.book-pages .book-photo-grid .book-photo,
  .book-pages .book-photo-grid figure{border:0!important;box-shadow:none!important;background:transparent!important;padding:0!important}
}

/* TEST: preserve the top calligraphy and reserve the lower artwork zone. */
.book-pages .book-cover,.book-pages .book-opening,.book-pages .book-entry,.book-pages .book-ending{
  box-sizing:border-box!important;
  padding-top:1.68in!important;
  padding-bottom:1.35in!important;
}
.book-pages .book-page-border{
  top:.075in!important;bottom:.075in!important;left:0!important;right:0!important;
  height:calc(100% - .15in)!important;
}
.book-pages .book-entry .book-photo-grid.single{
  margin-top:.14in!important;margin-bottom:0!important;
}
.book-pages .book-entry .book-photo-grid.single .book-photo img,
.book-pages .book-entry .book-photo-grid .book-photo img{
  max-height:3.55in!important;object-fit:contain!important;
}
@media print{
  .book-pages .book-cover,.book-pages .book-opening,.book-pages .book-entry,.book-pages .book-ending{
    padding-top:1.68in!important;padding-bottom:1.35in!important;
  }
  .book-pages .book-page-border{top:.075in!important;height:calc(100% - .15in)!important}
  .book-pages .book-entry .book-photo-grid .book-photo img{max-height:3.55in!important}
}

/* Fine adjustment: lower the approved Family artwork slightly to prevent the F flourish being clipped. */
.book-pages .book-page-border{top:.14in!important;bottom:auto!important;height:calc(100% - .22in)!important}
@media print{.book-pages .book-page-border{top:.14in!important;bottom:auto!important;height:calc(100% - .22in)!important}}

/* Locked book-heading standard: one size for every story title, short or long. */
.book-pages .book-entry h3,
.book-pages .book-entry h3.book-long-heading{
  font-family:Georgia,"Times New Roman",serif!important;
  font-size:14pt!important;
  line-height:1.3!important;
  font-weight:700!important;
  text-align:center!important;
  white-space:pre-line!important;
  max-width:100%!important;
  margin:0 auto .22in!important;
  letter-spacing:normal!important;
}
@media print{
 .book-pages .book-entry h3,
 .book-pages .book-entry h3.book-long-heading{font-size:14pt!important;line-height:1.3!important;text-align:center!important}
}
