/* Shared visual rhythm and centered presentation across every page. */
@font-face{font-family:'VSTA Lora';src:url('/assets/fonts/lora-regular.ttf') format('truetype');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:'VSTA Lora';src:url('/assets/fonts/lora-italic.ttf') format('truetype');font-style:italic;font-weight:100 900;font-display:swap}
:root{--display-font:'VSTA Lora',Georgia,serif}
body{font-family:Arial,Helvetica,sans-serif}
main,.hero-copy-block,.hero-inner,.resource-hero,.site-footer,.privacy-choice{text-align:center}
main h1,main h2,main h3,.hero h1,.hero-inner h1,.resource-hero h1{font-family:var(--display-font);font-weight:500;line-height:1.3;text-wrap:balance}
main p,.hero p,.hero-inner p,.resource-hero p{ text-wrap:pretty }
main h1,main h2,main h3,main p{margin-inline:auto}
main p{max-width:70ch}
main a,main summary,.site-footer a{overflow-wrap:break-word}
.hero .nav-actions,.nav-items,.nav-links,.catalog-nav nav{justify-content:center;align-items:center}
.hero-actions,.launch-actions,.catalog-actions,.learning-actions,.connect-actions,.book-actions{justify-content:center}
.principles div,.book-content,.quote-card,.milestone-card,.launch-card,.resource-card,.pathway,.pathway-card,.term-card,.support-card,.details-card,.connect-card,.author-copy,.creator-moments-intro,.diagnosis-shell,.explore-grid>a{text-align:center}
.book-content,.launch-card,.connect-card{align-items:center}
.book-content h3,.book-content p,.author-copy h2,.author-copy p,.section-heading>p:last-child,.recognition-intro>p:last-child,.diagnosis-context,.intro{margin-inline:auto}
.book-actions .detail-link,.detail-link,.companion-link,.launch-card>a{justify-content:center;text-align:center}
.family-profile{grid-template-columns:minmax(0,1fr);justify-items:center;gap:1.5rem}
.family-profile-photo{width:min(100%,220px);margin-inline:auto}
.family-profile>div{width:100%;max-width:44rem;margin-inline:auto;text-align:center}
.creator-moments-intro{text-align:center}
.author-note .author-photo,.hospital-story-photo,.book-figure{margin-inline:auto}
.author-photo figcaption,.hospital-story-photo figcaption,figcaption{text-align:center}
.quote-card .quote-attribution{text-align:center}
.connect-card .connect-actions{flex-direction:column;align-items:center;gap:.8rem;margin-inline:auto}
.connect-card>p.connect-note{margin-inline:auto}
.site-footer .site-footer-inner{grid-template-columns:minmax(0,1fr);justify-items:center;gap:1.5rem}
.site-footer .footer-identity{text-align:center;width:100%}
.site-footer .footer-home,.site-footer nav{justify-content:center}
.site-footer .creator-signoff,body[class*='theme-'] .site-footer .creator-signoff{border-left:0;border-top:1px solid #ffffff25;padding:1.5rem 0 0;justify-content:center;text-align:center}
.site-footer .creator-details{text-align:center}
.gear-qr-panel{margin-inline:auto}
.catalog-intro{margin-inline:auto}
.catalog-next>div{min-width:0}
.catalog-next p{margin-inline:auto}
.catalog-nav{justify-content:center;flex-wrap:wrap}
.catalog-nav nav{justify-content:center}
.catalog-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:1rem}
.hero-inner{grid-template-columns:minmax(0,1fr)}
.hero-inner>div{max-width:52rem;margin-inline:auto}
.hero-note{display:none}
.resource-hero>div{margin-inline:auto}
.resource-hero h1{margin-inline:auto}
.launch-prose,.guide-body,.content,.source-policy{margin-inline:auto}
main ul,main ol{width:fit-content;max-width:100%;margin-inline:auto;padding-inline:1.5rem;list-style-position:inside;text-align:center}
main li{line-height:1.8}
main li+li{margin-top:.5rem}
.source-policy.section>h2,.source-policy.section>p{margin-inline:auto}
.support-entry{justify-content:center;flex-wrap:wrap;text-align:center}
.support-entry>div{margin-inline:auto}
.printable-jump-nav>div,.card-meta{justify-content:center}
.section-top>div,.section-top>p{margin-inline:auto}
.glossary-callout{justify-content:center;text-align:center}
.glossary-callout>div{margin-inline:auto}
.launch-breadcrumb{justify-content:center;text-align:center}
.eyebrow,.kicker,.book-eyebrow{line-height:1.7;text-wrap:balance}
@media(max-width:900px){.resource-hero{grid-template-columns:minmax(0,1fr)}.support-entry{align-items:center}.hero .nav-actions{width:100%}}
@media(max-width:760px){.hero .nav-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.hero .nav-actions .nav-contact{grid-column:auto}.hero .nav-actions a{min-width:0;min-height:44px;line-height:1.5}.author-note,.hospital-story{justify-items:center}.author-note .author-photo{margin-inline:auto}.connect-card .connect-actions{align-items:center}.catalog-nav{align-items:center}.catalog-nav nav{width:100%;gap:.5rem 1rem}.site-footer .creator-signoff{flex-direction:column}.book-content h3{max-width:24ch;margin-inline:auto}.principles div{text-align:center}.section-top{display:block}.section-top>p{margin-top:1rem}.catalog-tip{text-align:center}.family-profile-photo{width:min(100%,200px)}}
@media(max-width:380px){.signature-heading{font-size:clamp(2.1rem,10.5vw,3rem)}.nav-actions a{font-size:.8rem}.launch-policy-links{gap:.35rem 1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}
@font-face{font-family:'Schoolbell';src:url('/assets/fonts/schoolbell-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
#meet-layla-heading,.creator-moments-intro h2{font-family:'Schoolbell',cursive;font-size:clamp(2.7rem,4.5vw,3.6rem);font-weight:400;letter-spacing:.015em;line-height:1.2;text-align:center;margin-inline:auto}
main .explore-note{text-align:center;margin-inline:auto}
.hero-inner>div{width:100%}
/* Paired credits: the child's original artwork and the creator's portrait. */
.site-footer .footer-credits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(1rem,4vw,3rem);width:min(100%,44rem);margin-inline:auto;border-top:1px solid #ffffff25;padding-top:1.5rem}
.site-footer .footer-credits .creator-signoff,.site-footer .rocco-signoff,body[class*='theme-'] .site-footer .footer-credits .creator-signoff{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;border:0;padding:0;margin:0;gap:.8rem;min-width:0;text-align:center}
.site-footer .footer-credits .creator-signoff img,.site-footer .rocco-credit-image{display:block;width:72px;height:72px;flex:0 0 72px;border-radius:50%;border:1px solid #ffffff45;box-sizing:border-box}
.site-footer .rocco-credit-image{padding:10px;background:#f8f5ed}
.site-footer .rocco-credit-image img{display:block;width:100%;height:100%;object-fit:contain;filter:none;mask-image:none;border:0}
.site-footer .footer-credits .creator-name{display:block;font:500 clamp(1rem,1.8vw,1.2rem)/1.5 var(--display-font);color:#fff8ea;text-decoration:none;overflow-wrap:normal}
.site-footer .footer-credits p{font:400 .8125rem/1.7 Arial,Helvetica,sans-serif;color:#d2e1e3;margin:.35rem 0 0}
@media(max-width:480px){.site-footer .footer-credits{gap:1rem}.site-footer .footer-credits .creator-signoff img,.site-footer .rocco-credit-image{width:64px;height:64px;flex-basis:64px}.site-footer .footer-credits .creator-name{font-size:1rem}.site-footer .footer-credits p{font-size:.75rem}}
.site-footer .footer-credits .launch-picture{display:block;width:72px;height:72px;flex:0 0 72px}
.site-footer .footer-credits .creator-name{min-height:3em}
@media(max-width:480px){.site-footer .footer-credits .launch-picture{width:64px;height:64px;flex-basis:64px}}
main h4,main th,main td,main dt,main dd{text-align:center}
main h4{font-family:var(--display-font);text-wrap:balance}
.catalog-nav a,.launch-breadcrumb a{display:inline-flex;align-items:center;justify-content:center;min-height:44px}
.book-number{left:50%;right:auto;transform:translateX(-50%)}
main .child-art-heading{font-family:'Schoolbell',cursive;font-size:clamp(2.4rem,4vw,3.2rem);font-weight:400;letter-spacing:.015em;line-height:1.2}
/* Grid children with auto margins need an explicit width to avoid intrinsic collapse. */
.resource-hero>div{width:100%;min-width:0}
/* Center the composition itself at desktop sizes, as well as the text. */
.hero .nav,.resource-nav,.hub-nav{flex-direction:column;justify-content:center;align-items:center;gap:1rem;padding-block:1rem}
.hero .nav-actions,.resource-header .nav-links,.hub-nav .nav-items{justify-content:center;flex-wrap:wrap}
.hero .hero-content{grid-template-columns:minmax(0,1fr);justify-items:center;gap:2.5rem;padding-block:3rem}
.hero .hero-copy-block{width:100%;max-width:48rem;margin-inline:auto}
.hero .hero-collection{width:min(100%,34rem);min-height:0;margin-inline:auto}
.hero .cover-stage{height:25rem}
.hero .setting-strip a{justify-content:center;text-align:center}
.section-heading h2,.recognition-intro h2,.diagnosis-copy h2,.hospital-story h2,.source-policy.section>h2{margin-inline:auto;text-align:center}
.section-heading,.recognition-intro,.diagnosis-copy,.hospital-story-copy{text-align:center}
.author-note,.hospital-story,.resource-hero,.content-shell,.split{grid-template-columns:minmax(0,1fr);justify-items:center}
.author-note .author-copy,.hospital-story-copy{width:100%;max-width:48rem;margin-inline:auto}
.content-shell>div{width:100%;max-width:60rem;margin-inline:auto}
.content-shell>.details-card{width:min(100%,48rem);margin-inline:auto}
.resource-hero>div{width:100%;max-width:52rem;margin-inline:auto}
.resource-hero .book-figure{width:min(100%,18rem);margin-inline:auto}
.author-note .author-photo{width:min(100%,18rem);margin-inline:auto}
.hospital-story-photo{width:min(100%,15rem);margin-inline:auto}
.section-heading>p,.recognition-intro>p,.diagnosis-copy>p,.hospital-story-copy>p{margin-inline:auto}
@media(max-width:760px){.hero .cover-stage{height:21.5rem}.hero .hero-content{padding-block:2.6rem 2rem;gap:2.2rem}}
.content h2,.content h3,.details-card h2,.details-card h3{margin-inline:auto}
.explore-title{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.explore-title h2{margin-inline:auto}
/* Family introductions share a calm, handwritten hierarchy above the photographs. */
.family-profile{gap:1.6rem}
.family-profile>.family-intro{width:100%;max-width:44rem;margin-inline:auto;text-align:center}
.family-intro .kicker,.creator-moments-intro .kicker{font-family:'Schoolbell',cursive;font-size:clamp(1.3rem,2.2vw,1.65rem);font-weight:400;line-height:1.4;letter-spacing:0;text-transform:none;margin:0 auto .6rem;max-width:30ch;text-align:center}
.family-intro h3,.creator-moments-intro h2{margin:.3rem auto 0}
.creator-moments-intro{padding:1.5rem 1.25rem 1.8rem}
.creator-moments-story{max-width:44rem;width:100%;margin:1.5rem auto .5rem;padding-inline:1.25rem;color:#eff3f2;text-align:center;line-height:1.8}
.creator-moments-story p{margin:0 auto}
.learning-links .kicker{display:block;width:100%;text-align:center;margin-inline:auto}
.diagnosis-shell{grid-template-columns:minmax(0,1fr);justify-items:center;gap:2rem}
.diagnosis-copy{width:100%;max-width:52rem;margin-inline:auto}
.diagnosis-copy .clinical-anchor{margin-inline:auto;text-align:center}
.diagnosis-copy .diagnosis-micdrop{align-items:center;justify-content:center;width:100%;max-width:44rem;margin:1.75rem auto 0;padding:clamp(1.25rem,3vw,2rem);gap:.8rem;text-align:center}
.diagnosis-same-line{display:flex;flex-wrap:wrap;justify-content:center;gap:.25rem .6rem;font-size:clamp(.65rem,1.1vw,.85rem);letter-spacing:.055em;line-height:1.8}
.diagnosis-same-line>span{white-space:nowrap}
.diagnosis-micdrop strong{display:block;text-align:center;width:100%;margin:0}
.diagnosis-micdrop strong em{display:block;font-family:var(--display-font);font-weight:500;font-size:clamp(2.5rem,5vw,4.2rem);line-height:1.2;letter-spacing:-.02em}
.diagnosis-micdrop strong>span{display:block;font-family:var(--display-font);font-size:clamp(1.4rem,2.7vw,2rem);line-height:1.4;margin-top:.25rem}
.family-intro .kicker>span{display:block}

/* Final alignment: disclosure controls reserve equal space on both sides. */
main summary{position:relative;text-align:center;padding-inline:2.3em}
main .guide summary,main .support-card summary{padding-inline:2.3em}
main summary>.toggle,main .support-card summary>span{right:.35em}
main .family-records summary,main .author-story summary{padding-inline:1.5rem}
main .connect-card .kicker{width:100%;margin-inline:auto}
main .connect-card h2{width:100%;margin-inline:auto}
main .connect-card>p:not(.kicker){width:100%;max-width:52ch;margin-inline:auto}
main .connect-card .connect-actions{width:100%;margin-block:.25rem 1.5rem}
main .connect-card .closing-button{min-height:3rem}
main .creator-moments-story{padding-bottom:.5rem}
main .family-story{max-width:44rem;line-height:1.8}
main .family-source{max-width:62ch;margin-inline:auto}
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #ac8744;outline-offset:4px}

/* Readable editorial copy within centered, equally inset columns. */
.author-copy>p:not(.kicker):not(.author-credentials),.family-story>p:not(.family-source),.creator-moments-story p,.diagnosis-context,.guide-body p,.guide-body li,.guide-body ul,.guide-body ol,.content-shell>div>p:not(.eyebrow):not(.intro),.content li,.content ul,.content ol,.launch-prose p,.launch-prose li,.launch-prose ul,.launch-prose ol,.source-policy p,.source-policy li,.source-policy ul,.source-policy ol,.family-records>div p,.family-records>div li,.family-records>div ul,.author-story>div p{text-align:left}
.guide-body ul,.guide-body ol,.content ul,.content ol,.launch-prose ul,.launch-prose ol,.source-policy ul,.source-policy ol,.family-records>div ul{width:100%;list-style-position:outside;padding-left:1.5rem}
.author-copy>.primary-button{display:flex;width:fit-content;max-width:100%;margin:1.5rem auto 0;justify-content:center}
.author-copy .author-credentials,.family-story .family-source{ text-align:center }
@media(max-width:600px){.author-copy>p:not(.kicker):not(.author-credentials),.family-story>p:not(.family-source),.creator-moments-story p,.diagnosis-context{line-height:1.8}}

.author-note .author-bio p{text-align:left;max-width:65ch;margin-inline:auto;line-height:1.8}

.author-note .author-bio{width:100%;max-width:65ch;margin-inline:auto}

/* Section labels and compact presentation copy always share the center axis. */
body p.eyebrow,body p.kicker,body p.book-eyebrow,body p.family-source,body p.author-credentials,body p.launch-byline,body p.sources,body p.centered-note{width:100%;text-align:center;margin-inline:auto}
body .content .support-card p,body .content .sample-panel p,body .content p.intro,body .resource-card p,body .pathway p,body .pathway-card p,body .launch-card p,body .term-card p,body .sample-panel p{ text-align:center;margin-inline:auto }
body .gear-qr-panel p,body .site-footer p,body .book-figure figcaption,body figcaption{text-align:center;margin-inline:auto}
body .content .sample-link,body .launch-samples>p,body .support-return,body .visual-cards-crosslink{text-align:center;margin-inline:auto}
body p.centered-note a{display:inline;}

/* Personal family moments use the same genuine handwritten voice. */
body .hospital-story .eyebrow{font-family:'Schoolbell',cursive;font-size:clamp(1.3rem,2.2vw,1.65rem);font-weight:400;letter-spacing:0;text-transform:none;line-height:1.4;max-width:30ch;margin:.25rem auto .75rem;text-align:center}
body .hospital-story #hospital-story-heading{font-family:'Schoolbell',cursive;font-size:clamp(2.3rem,4vw,3.2rem);font-weight:400;letter-spacing:0;line-height:1.25;max-width:25ch;margin-inline:auto;text-align:center;text-shadow:none}
body .hospital-story #hospital-story-heading em{font-style:normal}
body .hospital-story-photo figcaption,body .creator-moments-gallery figcaption,body .signature-transition figcaption{font-family:'Schoolbell',cursive;font-size:clamp(1rem,1.6vw,1.2rem);letter-spacing:0;text-transform:none;line-height:1.5}
body .site-footer .rocco-signoff .creator-name{font-family:'Schoolbell',cursive;font-size:clamp(1.15rem,2vw,1.35rem)}
body .author-note .author-photo figcaption{left:0;right:0;width:100%;padding-inline:.5rem;box-sizing:border-box;transform:none;text-align:center}
body .resource-page figcaption{width:100%;margin-inline:auto;text-align:center}

body .site-footer .footer-credits .creator-name{min-height:3.75rem;display:flex;align-items:center;justify-content:center}

body .diagnosis-shell .resource-page{width:min(100%,45rem);margin-inline:auto;transform:none}

/* Center constrained reading columns as well as their surrounding presentation. */
main p{margin-inline:auto!important}
body .hospital-story .hospital-story-copy>p{text-align:center;max-width:65ch;margin-inline:auto}
body .hospital-story .hospital-story-copy>p.eyebrow{max-width:30ch}

body .section-top{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:1rem}
body .section-top>div{width:100%;text-align:center;margin-inline:auto}
body .section-top>p{width:100%;max-width:65ch;text-align:center;margin:0 auto}
body .filter-fields label,body .glossary-filters label{text-align:center}
