@font-face{font-family:Display;src:url('assets/display.woff2') format('woff2');font-display:swap}@font-face{font-family:Book;src:url('assets/body.woff2') format('woff2');font-display:swap}
:root{--paper:#f7f3eb;--ink:#302620;--wine:#671c2b;--wine-dark:#48121e;--muted:#756a60;--gold:#aa8860;--line:#d9d0c3;--white:#fffcf7;font-family:Book,Georgia,serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #98752f;outline-offset:5px}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}a{color:inherit}p{line-height:1.65}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Display,Georgia,serif;font-weight:600;line-height:1.03}h1{font-size:clamp(40px,4.8vw,70px);letter-spacing:-.025em;margin-bottom:0}h1 em{font-weight:400;color:var(--wine)}h2{font-size:38px}h3{font-size:42px}.eyebrow{font:11px/1.5 Arial,sans-serif;letter-spacing:.16em;text-transform:uppercase;color:var(--wine);margin-bottom:15px}.masthead{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:18px 44px;border-bottom:1px solid var(--line);gap:18px}.brand{display:flex;align-items:center;gap:13px;text-decoration:none;font-family:Display,Georgia,serif;font-size:25px;line-height:1}.brand img{object-fit:contain}.brand small{display:block;font:9px Arial,sans-serif;letter-spacing:.25em;margin-top:8px}.prototype-label{font:9px Arial,sans-serif;letter-spacing:.16em;color:var(--muted)}main{max-width:1440px;margin:auto;padding:0 44px}.introduction{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding:43px 0 34px}.introduction>p{max-width:340px;font-size:15px;color:var(--muted);margin:0 6px 5px 0}.explorer{display:grid;grid-template-columns:minmax(0,1fr) 320px;border:1px solid var(--line);background:var(--white)}.stage-area{--stage-height:440px;min-width:0;position:relative;align-self:start;background:radial-gradient(ellipse at 48% 40%,#fff 50%,#f5f5f2);height:var(--stage-height);overflow:hidden}.stage-top,.stage-bottom{position:absolute;left:22px;right:22px;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;font:10px/1.5 Arial,sans-serif;letter-spacing:.08em;color:#66594b}.stage-top{top:16px}.stage-bottom{bottom:52px;letter-spacing:.02em;justify-content:center;text-align:center;pointer-events:none}.stage-top .text-button{font-size:11px;color:#544333}#scene{position:absolute;inset:32px 0 74px;width:100%;height:calc(100% - 106px);touch-action:pan-y}#scene canvas{display:block;width:100%;height:100%;touch-action:pan-y}#cover-caption{position:absolute;left:28px;bottom:102px;z-index:2;max-width:220px}#cover-caption p{font-family:Display,Georgia,serif;font-size:27px;line-height:1.15;margin-bottom:14px}.primary,.secondary{display:inline-flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--wine);padding:14px 18px;min-height:46px;font:12px/1.4 Arial,sans-serif;background:var(--wine);color:var(--white);text-decoration:none;border-radius:2px;transition:background .18s}.primary:hover{background:var(--wine-dark)}.secondary{background:transparent;color:var(--wine)}.secondary:hover{background:#efe5df}.primary span,.secondary span{font-size:17px}.text-button{border:0;background:none;padding:6px 0;font:12px/1.5 Arial,sans-serif;color:var(--wine);text-underline-offset:5px}.text-button:hover{text-decoration:underline}.discovery{padding:24px 28px 20px;border-left:1px solid var(--line);display:flex;align-items:stretch;flex-direction:column}.steps{display:flex;justify-content:space-between;font:9px/1.5 Arial,sans-serif;color:#8e867c;margin-bottom:45px;gap:8px}.steps .active{color:var(--wine);border-bottom:1px solid var(--wine);padding-bottom:5px}.discovery h2{font-size:35px;margin:0 0 18px}.discovery>p:not(.eyebrow){font-size:13px;line-height:1.75}.discovery .evidence-note{font-size:11px!important;line-height:1.65;color:var(--muted);border-left:2px solid var(--line);padding-left:12px;margin:0 0 20px}.discovery .primary,.discovery .secondary{font-size:11px;margin-bottom:10px;gap:8px;padding:12px}.progress-line{margin-top:auto;padding-top:23px;display:flex;align-items:center;gap:10px;font:10px Arial;color:var(--muted)}.tiny-rule{height:1px;flex:1;background:var(--line)}.record-shelf{padding:24px 0 26px}.shelf-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.shelf-heading h2{font-size:28px;margin:0}.shelf-heading p{font-size:12px;margin:0;color:var(--muted)}.record-buttons{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:10px}.record-button{position:relative;border:1px solid var(--line);text-align:left;background:transparent;padding:8px 8px 10px;color:var(--ink);min-width:0;transition:transform .2s,border-color .2s}.record-button img{width:100%;height:65px;object-fit:cover;object-position:top;background:#e1d3ba;filter:sepia(.2);display:block;margin-bottom:9px}.record-button .name{font:11px/1.4 Arial,sans-serif;display:block}.record-button .year{font:9px/1.5 Arial,sans-serif;color:var(--muted);display:block;margin-top:3px}.record-button[aria-pressed=true]{border-color:var(--wine);background:#efe4dd}.record-button:hover{transform:translateY(-3px);border-color:var(--gold)}.record-button .seen{position:absolute;top:5px;right:5px;background:var(--wine);color:white;border-radius:50%;width:16px;height:16px;text-align:center;font:10px/16px Arial}.finished{padding:34px 0 25px;border-top:1px solid var(--line);scroll-margin-top:24px}.finished .eyebrow{margin-bottom:8px}.paper-spread{display:grid;grid-template-columns:1fr 1fr;background:#fffcf1;box-shadow:0 12px 40px #3d261919,0 0 0 8px #702234;margin:28px 8px}.paper-page{position:relative;padding:40px 45px 62px;min-height:600px}.image-page{box-shadow:inset -25px 0 28px -25px #5b422f65}.text-page{box-shadow:inset 25px 0 28px -25px #5b422f65}.running-head{font:9px Arial;letter-spacing:.18em;text-align:center;padding-bottom:20px;border-bottom:1px solid var(--line);margin-bottom:36px;color:var(--muted)}.image-page img{width:100%;height:365px;object-fit:contain;display:block;filter:drop-shadow(0 5px 9px #543a2920)}.caption{font-size:11px;line-height:1.7;color:var(--muted);max-width:90%;margin:20px auto 0}.text-page>.eyebrow{margin-top:12px}.text-page>p:not(.running-head):not(.eyebrow){font-size:15px;line-height:1.9}.ornament{color:var(--gold);font-size:25px;margin:12px 0}.source-note{font-size:10px;line-height:1.65;border-top:1px solid var(--line);padding-top:16px;margin-top:26px;color:var(--muted)}.source-note strong{font:10px Arial;text-transform:uppercase;letter-spacing:.08em}.source-note p{margin:8px 0}.folio{position:absolute;bottom:23px;left:0;right:0;text-align:center;font-size:11px;color:var(--muted)}.demo-caption{font:11px/1.65 Arial,sans-serif;color:var(--muted);max-width:780px;margin:22px auto 0;text-align:center}.invitation{padding:54px 20px 64px;text-align:center;border-top:1px solid var(--line)}.invitation h2{font-size:55px;margin-bottom:20px}.invitation>p:not(.eyebrow){font-size:14px;color:var(--muted)}.invitation .primary{margin-top:10px}footer{border-top:1px solid var(--line);padding:20px 0;display:flex;justify-content:space-between;gap:20px;font:10px/1.6 Arial;color:var(--muted)}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);width:min(800px,calc(100vw - 32px));max-height:90dvh;padding:28px;box-shadow:0 25px 120px #22151160}dialog::backdrop{background:#21120bc0;backdrop-filter:blur(4px)}.dialog-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.dialog-top h2{font-size:36px;margin:0 0 20px}.dialog-top .eyebrow{margin-bottom:6px}.close{border:1px solid var(--line);background:none;width:36px;height:36px;font-size:24px;color:var(--wine);flex:none}#record-full-image{width:100%;max-height:65dvh;object-fit:contain;display:block;background:#e8decd}#record-dialog-caption{font-size:13px;margin:18px 0 10px}#record-dialog .primary{margin-top:22px}#record-dialog .demo-caption{text-align:left;margin-top:0}#next-dialog{max-width:490px;padding:32px}#next-dialog h2{font-size:43px;margin:26px 0}#next-dialog p:not(.eyebrow){font-size:14px}#scene-fallback{position:absolute;inset:38px 24px 78px;text-align:center}#scene-fallback img{height:calc(100% - 34px);width:100%;object-fit:contain;filter:drop-shadow(5px 10px 8px #30262026)}#scene-fallback p{font-size:11px;line-height:1.4;color:var(--muted);margin:8px 0 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1050px){main{padding:0 26px}.masthead{padding:16px 26px}.explorer{grid-template-columns:minmax(0,1fr) 290px}.discovery{padding:22px}.introduction>p{max-width:270px;font-size:13px}.record-buttons{gap:6px}.record-button{padding:6px}.record-button .name{font-size:10px}.record-button img{height:53px}.paper-page{padding:32px 30px 60px}.steps{margin-bottom:28px}}
@media(max-width:760px){.masthead{padding:12px 18px}.brand{font-size:19px;gap:6px}.brand img{width:36px;height:40px}.brand small{font-size:7px}.prototype-label{display:none}main{padding:0 18px}.introduction{padding:30px 0 25px;display:block}.introduction>p{max-width:440px;margin-top:18px;font-size:13px}h1{font-size:43px}.explorer{grid-template-columns:1fr}.stage-area{--stage-height:380px}.discovery{border-left:0;border-top:1px solid var(--line);padding:18px 20px}.steps{margin-bottom:14px;justify-content:flex-start;gap:25px}.discovery h2{font-size:32px;margin-bottom:12px}.discovery .primary,.discovery .secondary{font-size:12px}.record-buttons{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.record-button{padding:9px}.record-button .name{font-size:12px}.record-button img{height:76px}.shelf-heading{align-items:flex-start;flex-direction:column;gap:8px}.shelf-heading h2{font-size:27px}.stage-top{left:15px;right:15px;font-size:8px}.stage-bottom{left:15px;right:15px;font-size:9px}#cover-caption{bottom:102px;left:20px;max-width:170px}#cover-caption p{font-size:23px}#cover-caption .primary{font-size:11px;padding:12px}.paper-spread{grid-template-columns:1fr;margin:22px 6px;box-shadow:0 0 0 6px #702234}.paper-page{min-height:0;padding:30px 26px 55px;box-shadow:none}.image-page{border-bottom:1px solid var(--line)}.image-page img{height:330px}.text-page h3{font-size:39px}.text-page>.eyebrow{margin-top:0}.running-head{margin-bottom:26px}.invitation{padding:40px 5px}.invitation h2{font-size:46px}footer{flex-direction:column;gap:5px}.record-shelf{padding:25px 0}.demo-caption{font-size:10px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Keep the book compact so its changing story remains close by. */
.reading-book{--stage-height:400px}
.steps{margin-bottom:30px}.discovery>p:not(.eyebrow){line-height:1.65}

/* Genuine photographs and original finished pages. */
.showing-photo{--stage-height:540px}
#book-photo{position:absolute;inset:0 0 44px;background:#261c17}#book-photo-image{width:100%;height:100%;object-fit:cover;display:block}
#photo-label{position:absolute;top:58px;left:22px;padding:6px 9px;background:#241811bf;color:#fff9ef;font:10px Arial;letter-spacing:.06em}
.showing-photo .stage-top{color:#fff;text-shadow:0 1px 3px #000}.showing-photo .stage-top .text-button{color:#fff;background:#2b201ac9;padding:5px 8px}
.showing-photo #cover-caption{color:#fff;padding:14px;background:#211812d9;bottom:102px;border-radius:3px;max-width:245px}
.showing-photo .stage-bottom{color:#fff;background:#211812d9;padding:5px 8px;left:14px;right:14px}
.record-button img{filter:none;object-fit:contain;background:#e7dfd2}.record-buttons{grid-template-columns:repeat(auto-fit,minmax(108px,1fr))}
.actual-spread{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:#69313b;padding:7px;box-shadow:0 14px 35px #3d26191c;margin-top:24px}
.actual-spread figure{margin:0;background:#fff}.page-preview{display:block;width:100%;border:0;padding:0;background:#fff;cursor:zoom-in}.page-preview img{display:block;width:100%;height:auto}
.actual-spread figcaption{font:11px/1.5 Arial;color:#756a60;text-align:center;padding:10px 7px;background:#fcf9f2}
.page-connection{max-width:850px;font-size:14px;color:#66564c}.about-example{border-top:1px solid var(--line);padding:22px 0;color:var(--muted);font:12px/1.7 Arial}.about-example summary{cursor:pointer;color:var(--wine)}.about-example p{max-width:820px;margin:15px 0}
.book-photographs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:900px;margin-top:22px}.book-photographs figure{margin:0;min-width:0}.book-photographs img{display:block;width:100%;height:320px;object-fit:contain;background:#fff;border:1px solid var(--line)}.book-photographs figcaption{padding:9px 0;font:11px/1.5 Arial,sans-serif;color:var(--muted)}
@media(max-width:600px){.book-photographs{grid-template-columns:1fr;gap:16px}.book-photographs img{height:280px}}
#page-dialog{width:min(1100px,calc(100vw - 24px));height:94dvh;max-height:94dvh;padding:0;overflow:hidden}
#page-dialog[open]{display:flex;flex-direction:column}
.page-reader-toolbar{flex:none;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px 20px;padding:16px 20px 12px;background:var(--paper);border-bottom:1px solid var(--line)}
.page-reader-heading{text-align:center}.page-reader-heading .eyebrow{font-size:9px;margin-bottom:4px}#page-dialog-title{font-size:25px;margin:0}
#page-return,#page-zoom{padding:10px 12px;min-height:44px;margin:0;white-space:nowrap}#page-return{gap:8px}#page-return span{font-size:18px}
#page-reader-help{grid-column:1/-1;margin:0;text-align:center;font:11px/1.5 Arial,sans-serif;color:var(--muted)}
.page-reader-content{min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 16px 18px;background:#eeeae3}
#page-viewport{overflow:auto;background:#fff;padding:0;overscroll-behavior-x:contain;outline-offset:-3px}#full-page-image{display:block;width:auto;max-width:100%;max-height:calc(94dvh - 195px);margin:auto}#page-viewport.zoomed #full-page-image{width:1000px;max-width:none;max-height:none}
#page-dialog-caption{margin-top:12px}
@media(max-width:760px){.showing-photo{--stage-height:455px}.reading-book{--stage-height:clamp(288px,40svh,320px)}#photo-label{top:56px;left:14px;font-size:9px}.showing-photo #cover-caption{bottom:102px;padding:10px;max-width:195px}.showing-photo #cover-caption p{font-size:21px}.stage-bottom{bottom:52px;font-size:10px;line-height:1.5}.steps{margin-bottom:14px}.discovery .eyebrow{margin-bottom:10px}.discovery>p:not(.eyebrow){margin-bottom:14px}.discovery .evidence-note{margin-bottom:14px}.progress-line{padding-top:12px}.record-buttons{grid-template-columns:repeat(3,minmax(0,1fr))}.actual-spread{grid-template-columns:1fr;gap:15px}#book-photo-image{object-fit:cover;object-position:48% 50%}#page-dialog{width:calc(100vw - 12px);height:96dvh;max-height:96dvh}.page-reader-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px 12px 10px}.page-reader-heading{grid-column:1/-1;grid-row:2;text-align:left;display:flex;align-items:baseline;gap:10px}.page-reader-heading .eyebrow{margin:0;font-size:8px}#page-dialog-title{font-size:22px}#page-return,#page-zoom{font-size:11px;padding:9px 10px}#page-return{justify-self:start}#page-reader-help{text-align:left;font-size:10px}.page-reader-content{padding:0 8px 14px}#full-page-image{max-height:calc(96dvh - 220px)}#page-viewport.zoomed #full-page-image{width:700px}}

#record-zoom{padding:8px 12px;margin:0 0 14px;min-height:40px}#record-viewport{overflow:auto;max-height:60dvh;background:#e8decd}#record-viewport.zoomed #record-full-image{width:1800px;max-width:none;max-height:none;object-fit:initial}

#page-text-details{margin:0;padding:0 4px;font-size:13px}#page-text-details summary{cursor:pointer;color:var(--wine);padding:13px 2px;min-height:44px}#page-text-details[open]{margin-bottom:14px;border-bottom:1px solid var(--line)}#page-plain-text{white-space:pre-wrap;font:16px/1.7 Georgia,serif;padding:0 5px 15px;max-width:760px}.text-note{font:11px/1.6 Arial;color:var(--muted);margin:0 5px 12px}

/* Native links retain the existing button treatment. */
a.text-button{text-decoration:none}
a.text-button:hover{text-decoration:underline}

/* Compact view choices keep the book and its instructions together. */
.presentation-controls{position:absolute;inset:auto 0 0;z-index:3;height:44px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);background:#fffcf7}
.presentation-controls button{min-width:0;min-height:44px;padding:5px 6px;border:0;border-right:1px solid var(--line);background:transparent;color:var(--wine);font:11px/1.3 Arial,sans-serif}
.presentation-controls button:last-child{border-right:0}
.presentation-controls button:hover{background:#efe5df}
.presentation-controls button[aria-pressed=true]{background:var(--wine);color:#fff}
.presentation-controls button:focus-visible{outline-offset:-4px}
#cover-caption .secondary{display:flex;margin-top:8px;width:100%;background:#f7f3eb;color:var(--wine)}
.inspecting-book #scene,.inspecting-book #scene canvas{touch-action:none;cursor:grab}
.inspecting-book #scene canvas:active{cursor:grabbing}
.inspecting-book .stage-bottom{max-width:440px;margin-inline:auto}
@media(max-width:760px){.stage-top{gap:8px}.stage-top .text-button{flex:none}#scene-fallback{inset:38px 18px 78px}}

/* Wider desktop stories keep the book and its explanation together. */
@media(min-width:1051px){.explorer{grid-template-columns:minmax(0,1fr) minmax(400px,38%)}.stage-area{height:auto;min-height:var(--stage-height);align-self:stretch}.discovery .steps{margin-bottom:22px}}

/* The live book preview shares the current website identity without changing its sample. */
.familybound-interactive-brand img{display:block;width:280px;height:auto;aspect-ratio:1373.76/260}
@media(max-width:760px){.familybound-interactive-brand img{width:230px;height:auto}}

.brand-transition{padding:9px 20px;background:#69232a;color:#fbf8f0;text-align:center;font:13px/1.5 Arial,sans-serif}
.brand-transition a{color:inherit;text-decoration:underline;text-underline-offset:3px;font-weight:600}
