@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@1,700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+TC:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&family=Playfair+Display:wght@500;600;700&display=swap');:root{--ink:#24362e;--forest:#183d30;--gold:#b89a65;--cream:#f7f5ee;--paper:#fffefa;--muted:#65736b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.75 'DM Sans','Noto Sans TC',sans-serif}a{color:inherit}a:hover{color:#9a7740}.container{max-width:1150px;margin:auto;padding:0 26px}.top{background:var(--paper);border-bottom:1px solid #e7e6dc;position:sticky;top:0;z-index:5}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{font-family:'Playfair Display',serif;font-weight:700;letter-spacing:.01em;text-decoration:none;font-size:23px;line-height:1.05;color:var(--forest)}.brand small{display:block;font:500 9px 'DM Sans',sans-serif;letter-spacing:.23em;margin-top:9px;color:#7e8c80;text-transform:uppercase}.links{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.links a{text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.045em}.languages{display:flex;gap:8px;align-items:center}.languages a{font-size:11px;text-decoration:none;padding:4px 6px;border:1px solid #deded5;border-radius:3px}.hero{background:linear-gradient(90deg,rgba(15,43,31,.96),rgba(15,43,31,.72)),url('../images/v13/photo-0234.jpg') center/cover;min-height:520px;color:white;display:flex;align-items:center}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.25em;text-transform:uppercase;color:var(--gold)}h1,h2,h3{font-family:'Playfair Display','Noto Sans TC',serif;line-height:1.24}h1{font-size:clamp(38px,5.6vw,72px);max-width:830px;margin:19px 0}h2{font-size:clamp(27px,3vw,41px)}h3{font-size:23px}.lead{font-size:19px;max-width:740px;line-height:1.75;color:#e5ebe3}.button{display:inline-block;background:var(--gold);color:#142d22;padding:12px 21px;text-decoration:none;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;margin:18px 10px 0 0}.button.secondary{background:transparent;color:inherit;border:1px solid currentColor}.section{padding:75px 0}.section.alt{background:#eeefe7}.section-head{max-width:760px;margin-bottom:34px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{background:var(--paper);border:1px solid #e3e6dc;overflow:hidden}.card img{width:100%;height:210px;object-fit:cover}.card .inner{padding:24px}.card h3{margin:8px 0}.card p{font-size:14px;color:#667269}.tag{display:inline-block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#876b3f}.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.split img{width:100%;max-height:480px;object-fit:cover}.pagehead{padding:75px 0;background:#193e30;color:#fff}.pagehead h1{font-size:clamp(36px,5vw,58px)}.pagehead p{max-width:770px;color:#d6e1d8}.prose{max-width:830px;margin:0 auto;font-size:17px}.prose p{margin:0 0 22px}.prose h2{margin-top:40px}.quote{border-left:3px solid var(--gold);padding:14px 28px;margin:32px 0;background:#efefe5;font-family:'Playfair Display',serif;font-size:23px}.archive-tools{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}input,textarea,select{padding:12px;border:1px solid #d2d8ce;background:white;color:#253b2e;font:inherit;width:100%}input:focus,textarea:focus{outline:2px solid #b89a65}button{cursor:pointer;border:0}.archive-tools input{flex:2;min-width:220px}.archive-tools select{flex:1;min-width:130px}.entry{padding:23px 0;border-bottom:1px solid #dce0d5}.entry a{font-family:'Playfair Display','Noto Sans TC',serif;font-size:21px;text-decoration:none;font-weight:600}.meta{font-size:12px;color:#6a766d}.article-body{white-space:pre-wrap;overflow-wrap:anywhere;font-size:16px;line-height:2;max-width:850px}.notice{background:#f1eee3;border-left:3px solid var(--gold);padding:18px 22px;font-size:13px}.photo-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.photo-grid figure{margin:0}.photo-grid img{width:100%;height:240px;object-fit:cover}.photo-grid figcaption{font-size:12px;color:#65736b}.guest{background:white;padding:32px;border:1px solid #e1e5db}.guest label{display:block;margin:18px 0 6px;font-size:13px;font-weight:700}.footer{background:#142e23;color:#d6e0d6;padding:44px 0;font-size:12px}.footer a{color:#e3d1ad}.footergrid{display:flex;justify-content:space-between;gap:25px;flex-wrap:wrap}.footer p{max-width:630px}.muted{color:var(--muted)}@media(max-width:900px){.nav{align-items:flex-start;padding:17px 0;flex-direction:column}.links{gap:12px}.grid,.photo-grid{grid-template-columns:repeat(2,1fr)}.split{grid-template-columns:1fr;gap:25px}}@media(max-width:600px){.grid,.photo-grid{grid-template-columns:1fr}.hero{min-height:490px}.section{padding:48px 0}.container{padding:0 19px}.links a{font-size:11px}.photo-grid img{height:240px}}
/* Version 1.2 */
.gallery-category{grid-column:1/-1;border-bottom:1px solid #d9ddd4;padding:28px 0 9px;margin:15px 0 0;font-size:22px}
.photo-grid figure img{aspect-ratio:4/3;object-fit:cover;width:100%}
.dedication-section{background:#e9eee7;border-top:1px solid #d7ded4;border-bottom:1px solid #d7ded4}
.dedication-section .container{max-width:920px}.dedication-section h2{font-family:'Playfair Display',serif;font-size:clamp(26px,4vw,42px)}
.dedication-quote{border-left:4px solid #b89a65;padding:20px 28px;margin:28px 0;background:#fffefa;font-family:Georgia,serif;font-size:clamp(17px,2.2vw,23px);line-height:1.65;color:#274638}
.featured-publication{background:#e9eee7;padding:22px 26px;border-left:4px solid #b89a65;margin:0 0 26px}.featured-publication h2{margin:0 0 8px}.featured-publication a{font-weight:700}
.article-layout{max-width:850px}.article-layout .btn{display:inline-block;background:#183d30;color:white;padding:12px 20px;text-decoration:none;border-radius:4px}

/* V1.3 enhancements */
.founder-portrait{float:right;width:min(33%,260px);margin:0 0 1.5rem 2rem}.founder-portrait img{width:100%;height:auto;border-radius:1rem}.founder-portrait figcaption{font-size:.8rem;opacity:.7}.gallery-controls{display:flex;align-items:center;gap:1rem;margin:1rem 0 2rem;flex-wrap:wrap}.gallery-controls select{max-width:100%;padding:.7rem;border-radius:.5rem}.v13-gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:1rem}.v13-gallery-grid figure{margin:0}.v13-gallery-grid img{width:100%;height:150px;object-fit:cover;border-radius:.65rem}.v13-gallery-grid figcaption{font-size:.8rem;line-height:1.3;margin-top:.35rem;overflow-wrap:anywhere}.v13-gallery-grid figure[hidden]{display:none}.lightbox:not([hidden]){position:fixed;inset:0;z-index:999;background:rgba(5,12,10,.94);display:flex;align-items:center;justify-content:center;gap:1rem}.lightbox img{max-width:75vw;max-height:80vh;object-fit:contain}.lightbox button{background:#fff;color:#111;border:0;padding:.7rem 1rem;font-size:1.8rem;cursor:pointer}.lightbox #lightbox-close{position:absolute;right:1rem;top:1rem}.lightbox p{position:absolute;bottom:1rem;color:#fff}.guestbook-layout{display:flex;flex-direction:column;gap:2rem}.daughter-note{max-width:780px;font-family:Georgia,serif;font-size:.95rem}.daughter-note .quote{padding:1.2rem 1.5rem}.guest{max-width:780px}.guest button[disabled]{opacity:.6;cursor:not-allowed}@media(max-width:650px){.founder-portrait{float:none;width:80%;margin:0 auto 1.5rem}.v13-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.lightbox img{max-width:68vw}.lightbox button{padding:.4rem;font-size:1.3rem}}

.legacy-theme{padding:1.4rem 1.6rem;background:#fffefa;border:1px solid #e2e6db;border-radius:10px;margin-bottom:1rem}.legacy-theme h3{margin:0 0 .5rem}.legacy-theme p{margin:.25rem 0 .8rem}.archive-entry{padding:1rem 0;border-bottom:1px solid #dce0d5}.archive-entry a{font-size:1.15rem;font-weight:650;text-decoration:none}.archive-entry a:hover{text-decoration:underline}.article-navigation{display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin:2rem 0}.article-navigation a{max-width:45%}.guestbook-review-note{color:#5c695f;font-size:.9rem}.article-body p{white-space:pre-wrap;overflow-wrap:anywhere} @media(max-width:600px){.article-navigation a{max-width:100%}.v13-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V1.4 private review */
.brand{display:flex!important;align-items:center;gap:12px;line-height:1.12}.brand .brand-wordmark{display:block}.brand .brand-logo{display:block;width:54px;height:54px;object-fit:contain;flex-shrink:0;border-radius:3px}.brand small{display:block;margin-top:5px}.nav{gap:12px;flex-wrap:wrap}.links{flex-wrap:wrap;row-gap:8px}.languages{white-space:nowrap}.section{padding-top:42px;padding-bottom:42px}.dedication-section{margin-top:0!important;padding-top:30px!important}.vision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.gallery-toolbar{margin-bottom:20px}.guestbook-green{background:#e9f0e8;padding:22px;border-radius:12px;margin-bottom:18px}.guestbook-yellow{background:#faf2d9;padding:22px;border-radius:12px}.guestbook-yellow form{background:transparent}.writing-controls{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:15px 0}.writing-controls select{max-width:240px}.writing-summary{font-size:.92rem;opacity:.84;margin-top:6px}.work-label{font-size:.8rem;font-weight:700;letter-spacing:.04em}.history-addendum{margin-top:25px}.history-addendum li{margin-bottom:12px}.history-artifact{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:24px 0}.history-artifact img{width:160px;height:auto;object-fit:contain}.mobile-menu-toggle{display:none}.photo-note{font-size:.85rem;opacity:.8}
@media(max-width:800px){.nav{justify-content:space-between}.mobile-menu-toggle{display:inline-flex;align-items:center;border:1px solid #b6b6b6;background:transparent;color:inherit;padding:8px 11px;border-radius:8px;cursor:pointer}.nav .links{display:none;flex-basis:100%;width:100%;flex-direction:column;align-items:stretch;gap:0;order:4}.nav.menu-open .links{display:flex}.nav .links a{padding:10px 4px;border-bottom:1px solid #ddd}.brand .brand-logo{width:42px;height:42px}.vision-grid{grid-template-columns:1fr}.guestbook-green,.guestbook-yellow{padding:16px}}

/* V1.4 refinement: comfortable but efficient rhythm */
.brand .brand-logo{width:72px;height:72px;object-fit:contain}.nav{min-height:92px}.section{padding-top:34px;padding-bottom:34px}.section-head{margin-bottom:22px}.pagehead{padding:39px 0}.pagehead h1{margin:9px 0}.hero{min-height:450px}.split{gap:34px}.quote{margin:18px 0}.guestbook-yellow{background:transparent;padding:16px 0}.guestbook-green{background:transparent;padding:0;margin:0}.guestbook-green .daughter-note{color:#f4f3e7}.guestbook-green .quote{font-family:Georgia,'Noto Sans TC',serif;font-size:19px;font-style:italic;line-height:1.75;border:0;background:transparent;color:#f3f1e6;padding:0;margin:6px 0 0}.guestbook-green .eyebrow{font-family:Georgia,'Noto Sans TC',serif;text-transform:none;letter-spacing:0;font-size:19px;font-style:italic;font-weight:400;color:#f3f1e6}.guestbook-title-dedication{margin-top:12px;max-width:870px}.guestbook-title-dedication .quote{max-width:850px}.guestbook-yellow .guest{background:transparent;border:0;padding:10px 0}.guestbook-yellow h2{margin-top:8px}.guestbook-yellow{background:transparent}.guestbook-content{background:#faf2d9;padding:24px 0}.guestbook-content .container>p{margin-top:12px}@media(max-width:800px){.brand .brand-logo{width:60px;height:60px}.section{padding-top:30px;padding-bottom:30px}.pagehead{padding:30px 0}}

/* V1.4 review refinement: logo aligned with two-line wordmark */
.brand-logo{width:96px!important;height:96px!important;object-fit:contain!important}
.brand{display:flex;align-items:center;gap:12px}
.brand-wordmark{display:flex;flex-direction:column;justify-content:center}
.founder-portrait{float:left!important;margin:0 2rem 1.3rem 0!important}
@media(max-width:650px){.brand-logo{width:76px!important;height:76px!important}.founder-portrait{float:none!important;margin:0 auto 1.3rem!important}}

.historical-mentions{margin-top:1.1rem}.historical-mentions li{margin:.5rem 0}.more-writings{margin-top:1.5rem;font-size:1.05rem}

/* Final V1.4 fine-tuning */
.brand .brand-logo,.brand-logo{width:104px!important;height:104px!important}
.eyebrow,.tag{font-size:12px!important;letter-spacing:.12em}
.language-availability{font-size:12px;color:#716246;margin:5px 0 8px;font-style:italic}
@media(max-width:800px){.brand .brand-logo,.brand-logo{width:83px!important;height:83px!important}}

/* Next private review: language consistency, content alignment, and historical record */
.brand .brand-logo,.brand-logo{width:108px!important;height:108px!important}
@media(max-width:800px){.brand .brand-logo,.brand-logo{width:86px!important;height:86px!important}}
.aligned-chinese-intro{max-width:none;width:100%}.aligned-chinese-intro p{max-width:100%;line-break:strict;overflow-wrap:normal;word-break:normal}
.historical-mentions .source-mentions{list-style:none;padding-left:0}.historical-mentions .source-mentions li{margin:1.15rem 0;padding-bottom:1rem;border-bottom:1px solid #dce0d5}
.historical-quote{font-size:.95rem;margin:.35rem 0;padding:.35rem .85rem;border-left:3px solid #b89a65;line-height:1.6;background:#f3f1e9}
.historical-translation{font-size:.9rem;opacity:.88;margin:.3rem 0}
.family-gallery-intro{max-width:800px;margin:.25rem 0 1.5rem;font-size:1rem;line-height:1.7}
.guestbook-invitation{max-width:780px;margin-left:0;margin-right:auto}

/* V1.6: consistent editorial alignment and calmer homepage hero */
.hero {background-image:none !important;background-color:#173e31 !important;}
.section-head {max-width:100% !important;}
.section-head > p {max-width:100% !important;}
.family-gallery-note {max-width:64rem;margin:1rem auto 1.75rem;line-height:1.65;}
@media(max-width:700px){.section-head > p{max-width:100% !important;}}

.gallery-overview-note{max-width:850px;margin:0 0 1.4rem;line-height:1.7;color:var(--muted,#48534b)}.flooring-gallery-intro{max-width:850px;margin:.8rem 0 1.2rem;line-height:1.65}.flooring-gallery-intro[hidden]{display:none}

/* V1.8: coherent Chinese UI heading weights and CJK font fallback. Original documents unaffected. */
html[lang="zh-hant"] h1,html[lang="zh-hant"] h2,html[lang="zh-hant"] h3,html[lang="zh-hant"] h4,html[lang="zh-hant"] .pagehead,html[lang="zh-hant"] .brand-wordmark,html[lang="zh-hant"] .links,html[lang="zh-hans"] h1,html[lang="zh-hans"] h2,html[lang="zh-hans"] h3,html[lang="zh-hans"] h4,html[lang="zh-hans"] .pagehead,html[lang="zh-hans"] .brand-wordmark,html[lang="zh-hans"] .links{font-family:"Noto Sans TC","Noto Sans SC","Microsoft JhengHei","Microsoft YaHei","PingFang TC","PingFang SC",sans-serif;font-synthesis:none;}
html[lang="zh-hant"] h1,html[lang="zh-hant"] h2,html[lang="zh-hant"] h3,html[lang="zh-hans"] h1,html[lang="zh-hans"] h2,html[lang="zh-hans"] h3{font-weight:600;}

/* V1.9: consistent responsive header/body alignment across all language pages */
:root{--archive-content-width:1150px;--archive-gutter:clamp(19px,3vw,32px)}
.container{width:100%;max-width:var(--archive-content-width);padding-inline:var(--archive-gutter);margin-inline:auto}
.pagehead .container,.section .container,.top .container{max-width:var(--archive-content-width)}
.pagehead p{max-width:min(100%,960px)}
.gallery-overview-note{max-width:100%;line-height:1.7}
.flooring-gallery-intro,.family-gallery-intro{max-width:100%;line-height:1.7}
.guestbook-content .guestbook-layout,.guestbook-content .guest,.guestbook-content .guestbook-invitation{width:100%;max-width:100%}
.guestbook-content .guest textarea{width:100%;min-height:150px}
.guestbook-green .daughter-note,.guestbook-title-dedication,.guestbook-title-dedication .quote{max-width:100%}
@media(max-width:650px){.container{padding-inline:19px}.guestbook-content .guest{padding-inline:0}.v13-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:380px){.v13-gallery-grid{grid-template-columns:1fr}}

/* V1.9.1: actual shared text boundaries, not just shared outer containers.
   The former h1 (830px), .lead (740px), and .pagehead p (960px)
   restrictions made green headings/introductions artificially narrower. */
.hero .container > h1,
.hero .container > .lead,
.pagehead .container > h1,
.pagehead .container > p {
  max-width: 100%;
  width: 100%;
}


/* V1.9.2: unified content grid for green headers and following page sections.
   Applies equally to all three languages and writing detail pages. */
:root{--archive-content-width:1150px;--archive-gutter:clamp(19px,3vw,32px)}
html,body{max-width:100%}
.container{width:100%;max-width:var(--archive-content-width);margin-inline:auto;padding-inline:var(--archive-gutter)}
.hero .container,.pagehead .container,.section .container,.guestbook-content .container{width:100%;max-width:var(--archive-content-width)}
.hero .container>h1,.hero .container>.lead,.pagehead .container>h1,.pagehead .container>p{width:100%;max-width:none;margin-inline:0}
/* Let gallery introductions occupy the same usable width as the photo grid. */
.gallery-overview-note,.flooring-gallery-intro,.family-gallery-intro,.family-gallery-note{width:100%;max-width:none;margin-inline:0}
/* Guestbook: outer columns align to the common grid, with readable paragraph flow. */
.guestbook-content .guestbook-layout,.guestbook-content .guest,.guestbook-content .guestbook-invitation{width:100%;max-width:none}
.guestbook-green .daughter-note,.guestbook-title-dedication,.guestbook-title-dedication .quote{width:100%;max-width:none}
/* Avoid flex/grid children forcing horizontal scrolling on narrow devices. */
.split>*,.grid>*,.vision-grid>*,.guestbook-layout>*,.v13-gallery-grid>*{min-width:0}
img,video,iframe{max-width:100%}
@media(max-width:800px){.nav{min-width:0}.brand{min-width:0}.brand-wordmark{overflow-wrap:anywhere}.languages{flex-wrap:wrap;white-space:normal}}
@media(max-width:600px){.container{padding-inline:19px}.hero .container>h1,.pagehead .container>h1{overflow-wrap:break-word}.guestbook-content .guest{padding-inline:0}}
@media(max-width:380px){.v13-gallery-grid{grid-template-columns:1fr}}

/* V1.9.3 typography consistency: role-based, responsive, all languages */
:root{--type-body:1rem;--type-lead:1.125rem;--type-caption:.875rem;--type-section:clamp(1.55rem,2.4vw,2.1rem);--type-page:clamp(2.15rem,4vw,3.4rem);--type-hero:clamp(2.4rem,4.8vw,4.1rem)}
.hero h1{font-size:var(--type-hero);line-height:1.16}
.pagehead h1{font-size:var(--type-page);line-height:1.2}
.section-head h2,.section h2,.guestbook-content h2{font-size:var(--type-section);line-height:1.28}
.hero .lead,.pagehead p{font-size:var(--type-lead);line-height:1.7}
.section p,.gallery-overview-note,.flooring-gallery-intro,.family-gallery-intro,.guestbook-invitation{line-height:1.7}
.v13-gallery-grid figcaption,.photo-note{font-size:var(--type-caption);line-height:1.5}
@media(max-width:600px){:root{--type-lead:1.05rem;--type-caption:.84rem}.hero h1,.pagehead h1{hyphens:auto}}

/* V1.9.4: deliberately centered homepage hero title only; supporting text stays left aligned. */
.hero .container > h1 { text-align:center; font-weight:750; letter-spacing:-.018em; text-wrap:balance; margin-inline:auto; }
.hero .container > .lead { text-align:left; }
/* Founder page: matching comfortable reading measure for the green introduction and cream text. */
body.founder-layout .pagehead .container > p,
body.founder-layout .section:not(.dedication-section) .container > p { max-width:78ch; }
@media(max-width:600px){.hero .container > h1{font-weight:700;letter-spacing:-.01em}}


/* V1.9.5 — cohesive, centered Home hero only. Other pages retain left alignment. */
.hero.home-hero .container{text-align:center;}
.hero.home-hero .container>.eyebrow{display:block;text-align:center;margin-inline:auto;}
.hero.home-hero .container>h1{font-family:'Libre Baskerville',Georgia,serif;font-style:italic;font-weight:700;text-align:center;letter-spacing:-.012em;max-width:100%;margin:1.05rem auto 1.25rem;line-height:1.3;font-size:clamp(2.05rem,4.25vw,3.65rem);}
.hero.home-hero .container>.lead{width:100%;max-width:100%;text-align:center;margin:0 auto 1.75rem;text-wrap:pretty;}
.hero.home-hero .button{margin:.25rem .35rem;vertical-align:middle;}
html[lang='zh-hant'] .hero.home-hero h1{font-family:'Noto Serif TC','Songti TC','PMingLiU',serif;font-style:normal;font-weight:700;}
html[lang='zh-hans'] .hero.home-hero h1{font-family:'Noto Serif SC','Songti SC','SimSun',serif;font-style:normal;font-weight:700;}
/* Dedications: same design on Home and Founder; no rewriting original quotation. */
.dedication-section .dedication-content>.dedication-eyebrow{display:block;margin:0 0 .25rem;font-size:.86rem!important;letter-spacing:.055em;}
.dedication-section .dedication-content>h2{margin:.12rem 0 .8rem;}
.dedication-byline{font-size:.94rem;color:#6b604d;font-weight:600;margin:.5rem 0 1.25rem;}
.dedication-language-label{display:block;font-size:.77rem;font-weight:700;letter-spacing:.035em;color:#78653f;margin:.75rem 0 .35rem;}
.dedication-original,.dedication-translation{max-width:100%;}
.dedication-original blockquote,.dedication-translation blockquote{margin:.25rem 0 1.15rem;padding:.7rem 1.15rem;border-left:3px solid #b49b6b;line-height:1.75;}
.dedication-original blockquote{font-style:italic;}
.dedication-translation blockquote{font-style:normal;}
.founder-name-eyebrow{display:block;font-size:clamp(.93rem,1.25vw,1.1rem)!important;letter-spacing:.035em!important;margin-bottom:.2rem;}
.founder-name-eyebrow+h2{margin-top:.2rem;}
/* History clipping: less gap, restrained display size, click to enlarge. */
.section.newspaper-history{padding-top:8px!important;margin-top:-14px;}
.newspaper-history h3{margin-top:.2rem;}
.newspaper-clipping{width:100%;max-width:440px;height:auto;display:block;margin:1rem auto;object-fit:contain;}
@media(max-width:600px){.hero.home-hero .container>h1{font-size:clamp(1.85rem,7.1vw,2.55rem);line-height:1.3}.hero.home-hero .button{display:inline-block;max-width:100%;margin:.3rem}.section.newspaper-history{margin-top:0}.newspaper-clipping{max-width:min(100%,440px)}}

/* V1.9.7: final manuscript and photographic archive */
.book-feature{margin:0 0 2rem;padding:1.5rem;border-left:4px solid #ad8c48;background:#f7f6f0}.book-dedications{margin:2.5rem 0}.book-dedication{border:1px solid #d9dfd6;border-radius:9px;padding:1.5rem;margin:1rem 0;background:#fbfbf7}.book-dedication blockquote{font-family:serif;font-size:1.1rem;line-height:1.9;border-left:3px solid #ad8c48;margin:1rem 0;padding:.5rem 1.1rem;white-space:pre-wrap}.book-family-note{padding:1.3rem 1.5rem;margin:2rem 0;background:#f5f4ec;border-radius:8px}.manuscript-notice{font-style:italic;color:#596c60}.manuscript-text{border-top:1px solid #d7ddd2;padding-top:2rem;max-width:860px}.manuscript-text p{white-space:pre-wrap;line-height:1.85;margin-bottom:1.15rem}.archive-entry[hidden]{display:none!important}

/* V1.9.9: keep the daughter’s note close to the manuscript context. */
.book-dedications{margin:1.5rem 0 0.7rem}
.book-family-note{margin:0.85rem 0 1rem;padding:1rem 1.35rem}
.book-family-note h2{margin-top:0;margin-bottom:.45rem}
.book-family-note p{margin-bottom:0}
.book-family-note + h2{margin-top:1.2rem}

/* Featured manuscript: concise original-language dedication previews */
.book-dedications-preview{margin:1.15rem 0 2rem;padding:0 0 .4rem}.book-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem}.book-preview-item{padding:1.3rem 1.4rem;background:#f8f6ef;border:1px solid #e5dfd0;border-radius:8px}.book-preview-item h3{margin:0 0 .65rem;font-size:1.12rem;color:#294c3d}.book-preview-item blockquote{margin:.6rem 0;padding:.15rem 0 .15rem .9rem;border-left:3px solid #ad9051;font-size:.98rem;line-height:1.8}.book-preview-item p{margin:.7rem 0 0;line-height:1.7}.book-preview-link{margin:1rem 0 0;text-align:right}.book-preview-link a{font-weight:600}@media(max-width:680px){.book-preview-grid{grid-template-columns:1fr}}

/* V2.2: compact publications layout and consistent responsive margins */
.early-publications{max-width:100%;margin:1.5rem 0 2rem;}
.early-publications h2{margin:0 0 .65rem;}
.early-publications h3{margin:1.45rem 0 .55rem;}
.early-publications p{margin:.45rem 0 .8rem;line-height:1.65;}
.early-publications .archive-entry{margin:.55rem 0!important;padding:.8rem 1rem!important;overflow-wrap:anywhere;}
.early-publications .archive-entry p{margin:.35rem 0 .45rem;}
.early-publications .us-research{margin:.85rem 0 1.2rem;padding:0;}
.early-publications .research-citations{margin:.55rem 0 1rem;padding-left:1.45rem;}
.early-publications .research-citations li{margin:.35rem 0;line-height:1.6;}
.early-publications a{overflow-wrap:anywhere;}
@media(max-width:640px){.early-publications{margin:1rem 0 1.5rem}.early-publications .archive-entry{padding:.7rem .8rem!important}.early-publications .research-citations{padding-left:1.2rem}}

/* V2.3: restrained typographic and alignment refinements */





.hero.home-hero .container>.lead{max-width:920px!important;margin-inline:auto;text-wrap:balance;line-height:1.68}
body.founder-layout .section .container>.prose{width:100%;max-width:100%;}
body.founder-layout .section .container>.prose>h2,body.founder-layout .section .container>.prose>p{max-width:none;}
body.founder-layout .founder-portrait{width:min(33%,275px);margin:0 0 1.3rem 2rem!important;float:right!important}
body.founder-layout .section .container>.prose>h3{clear:both;padding-top:1rem}
.guestbook-title-dedication .daughter-note,.guestbook-title-dedication .daughter-note .quote,.guestbook-title-dedication .daughter-note p{color:#f6f4e9!important;font-family:inherit!important;font-size:1.04rem!important;font-weight:400!important;line-height:1.78!important;letter-spacing:normal!important}
.guestbook-title-dedication .daughter-note p{margin-top:1rem;margin-bottom:0}
.guestbook-title-dedication .daughter-note .daughter-note-signoff{margin-top:1.35rem!important}
.archive-language-note{display:block;font-size:.81rem;color:#637069;margin:.35rem 0 .6rem;line-height:1.5}
.early-publications .archive-entry{margin:.65rem 0!important;padding:.8rem 1rem!important}
.early-publications{margin-top:1.1rem;margin-bottom:1.4rem}


@media(max-width:650px){body.founder-layout .founder-portrait{float:none!important;margin:0 auto 1.2rem!important;width:min(75%,275px)}.hero.home-hero .container>.lead{text-wrap:pretty}}

/* V2.4: discreet memorial counter, visible only after live backend responds. */
.memorial-visit-wrap{display:block;margin-top:5px;text-align:center}.memorial-visit-count{font-size:11px;line-height:1.4;font-weight:400;letter-spacing:.045em;color:#aeb7aa;font-variant-numeric:tabular-nums}.memorial-visit-count[hidden]{display:none!important}
@media(max-width:600px){.memorial-visit-count{font-size:11px}}

/* V2.5.0: Founder portrait on the left, consistently across all languages. */
body.founder-layout .section .container>.prose>.founder-portrait {float:left!important; width:min(33%,275px);margin:0 2rem 1.3rem 0!important;}
body.founder-layout .section .container>.prose>h2 {margin-top:.15rem;}
@media(max-width:650px){body.founder-layout .section .container>.prose>.founder-portrait{float:none!important;width:min(75%,275px);margin:0 auto 1.2rem!important;}}
/* A personal letter: a salutation, separate paragraphs and two-line closing. */
.guestbook-title-dedication .daughter-note .daughter-note-salutation {margin-top:0!important;margin-bottom:1.1rem!important;}
.guestbook-title-dedication .daughter-note .daughter-note-signoff{margin-top:1.6rem!important;line-height:1.9!important;}

/* V2.6.0: concise, undated contributions on Founder, with the dated record on History. */
body.founder-layout .founder-contributions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.2rem 1.6rem;margin:1.2rem 0 2rem;clear:both;}
body.founder-layout .founder-contribution{padding:1.1rem 1.2rem;border:1px solid rgba(90,105,80,.20);border-radius:10px;background:rgba(250,248,239,.65);}
body.founder-layout .founder-contribution h4{margin:0 0 .5rem;font-size:1.05rem;line-height:1.35;}
body.founder-layout .founder-contribution p{margin:0;line-height:1.65;font-size:.96rem;}
@media(max-width:650px){body.founder-layout .founder-contributions{grid-template-columns:1fr;gap:.8rem;}}

/* V2.7.0: permanent, human-readable Gallery review IDs */
.v13-gallery-grid figure figcaption .gallery-photo-id{display:block;margin-top:.35rem;font-size:.76rem;font-weight:600;letter-spacing:.025em;color:#6d756a;white-space:nowrap}
.continuing-influence{margin:3rem 0 1rem;padding-top:1.6rem;border-top:1px solid #dcd9cb}
.continuing-influence h2{margin:0 0 .65rem}
.continuing-influence-list{list-style:none;padding:0;margin:1.25rem 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.1rem}
.continuing-influence-list li{padding:1rem 1.15rem;border:1px solid #dcd9cb;border-radius:9px;background:#fbfaf5}
.continuing-influence-list li p{margin:.45rem 0 .6rem}
@media(max-width:700px){.continuing-influence-list{grid-template-columns:1fr}}

/* Family review: compact consecutive gallery identifiers after existing captions */
.gallery-photo-id.gallery-sequence-number{display:inline!important;margin-left:0!important;font-size:inherit!important;opacity:.72;white-space:nowrap;}

/* V3.0: Three balanced Continuing Research Influence cards. */
@media(min-width:901px){.continuing-influence-list{grid-template-columns:repeat(3,minmax(0,1fr))!important;align-items:stretch;gap:.85rem}.continuing-influence-list li{padding:.85rem .9rem;font-size:.94rem;min-width:0;display:flex;flex-direction:column}.continuing-influence-list li a{margin-top:auto;overflow-wrap:anywhere}.continuing-influence-list li strong{line-height:1.4}}
@media(min-width:701px) and (max-width:900px){.continuing-influence-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.continuing-influence-list{grid-template-columns:1fr}}
/* No memorial footer slogan; display real counter only when configured. */
.memorial-visit-line{display:none!important}

/* v3.0.4: consistent language-specific CJK typography across all pages. */
html[lang="zh-hant"] body,html[lang="zh-hant"] button,html[lang="zh-hant"] select,html[lang="zh-hant"] input,html[lang="zh-hant"] textarea{font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;}
html[lang="zh-hans"] body,html[lang="zh-hans"] button,html[lang="zh-hans"] select,html[lang="zh-hans"] input,html[lang="zh-hans"] textarea{font-family:"Noto Sans SC","Microsoft YaHei",sans-serif;}
html[lang="zh-hant"] :is(h1,h2,h3,h4,h5,h6,.pagehead,.brand-wordmark,.links,.mobile-menu-toggle,.section-head,.card-title){font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;font-synthesis:none;}
html[lang="zh-hans"] :is(h1,h2,h3,h4,h5,h6,.pagehead,.brand-wordmark,.links,.mobile-menu-toggle,.section-head,.card-title){font-family:"Noto Sans SC","Microsoft YaHei",sans-serif;font-synthesis:none;}
html[lang="zh-hant"] :is(h1,h2,h3,h4,h5,h6),html[lang="zh-hans"] :is(h1,h2,h3,h4,h5,h6){font-weight:700;}
html[lang="zh-hant"] .hero.home-hero h1{font-family:"Noto Sans TC","Microsoft JhengHei",sans-serif;font-style:normal;}
html[lang="zh-hans"] .hero.home-hero h1{font-family:"Noto Sans SC","Microsoft YaHei",sans-serif;font-style:normal;}
