/* Readable editorial typography, inspired by tzuchiculture.org.
   Loaded after the public component styles; the private editor keeps its UI. */
:root{--reading-size:1.375rem;--reading-leading:1.95;--display-size:clamp(2.25rem,3.5vw,3.25rem);--title-size:clamp(1.625rem,2.5vw,2.25rem)}
html{scrollbar-color:var(--jade) var(--mist)}
body{font-size:var(--reading-size);line-height:var(--reading-leading)}
html[lang=zh-Hans] body{font-family:var(--serif);font-weight:500}
html[lang=zh-Hans] :is(button,input,select,textarea,.header,.collection-nav,.collection-tools,.reader-toc,.entry-meta){font-family:var(--sans),var(--serif);font-weight:400}
h2,.about h2,.section-chapters main>.section h2{font-size:var(--display-size);font-weight:600;line-height:1.5;letter-spacing:0}
html[lang=zh-Hans] .about h2{font-size:var(--display-size)}
:is(.journey h3,.name-meanings h3,.aspiration-grid h3,.journal-home-row h3,.vows-home-list h3,.autobiography-feature h3,.milestone-heading h3,.latest-journal>h3,.latest-entry h4,.collection-entry h2){font-family:var(--serif);font-size:var(--title-size);font-weight:600;line-height:1.55;letter-spacing:0}
:is(.about-copy,.journey>p,.detail-copy,.name-heading p,.name-meanings p,.aspiration-grid p,.journal-home-row p,.autobiography-feature p,.latest-entry .latest-description,.collection-entry>p:not(.entry-meta),.collection-entry>.article-fold,.collection-heading p,.motto-meaning-intro,.certification-milestone figcaption p:first-child){font-size:var(--reading-size);line-height:var(--reading-leading)}
.about-copy .lead{font-size:clamp(1.525rem,2.2vw,1.75rem);line-height:1.7;font-weight:500}
.about-copy p+p,.name-meanings p,.aspiration-grid p{margin-top:1.25rem}
.about-copy,.origin-copy,.journal-article,.autobiography{min-width:0}
.about{grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:clamp(40px,6vw,90px)}
.section-heading p{max-width:38ch;font-size:1.25rem;line-height:1.8}
.journey>p{min-height:0}.journey{min-width:0}
.text-link,.button,summary,.article-fold-toggle{font-size:1.1875rem;line-height:1.6}
.text-link{min-height:44px;gap:18px}
.text-link svg,.button svg{flex-shrink:0;transition:transform .22s ease-out}
.text-link:hover svg{transform:translateX(4px)}
.button{padding:14px 26px;transition:background .2s ease-out}
.button:hover svg{transform:translateY(3px)}
.header nav{font-size:1.125rem;gap:20px;margin-right:20px}
.languages{font-size:1.0625rem}
.hero{min-height:780px;min-height:max(780px,calc(100svh - 96px))}
.hero-content{padding-top:80px;padding-bottom:145px}
.hero h1{font-size:clamp(4.5rem,7vw,6rem)}
.hero-name{font-size:1.25rem}
.motto>p{font-size:clamp(1.625rem,2.8vw,2.25rem);font-weight:600;line-height:1.6;letter-spacing:.1em}
.motto>div{font-family:var(--sans);font-size:1.25rem;line-height:1.85;margin-top:24px}
.aspiration-english{font-family:var(--sans);font-size:1.25rem}
.closing,.journey-blessing p:first-child{font-size:1.625rem}
.journey-blessing p+p{font-family:var(--sans);font-size:1.125rem}
.origin-copy,.autobiography,.article-translation,.journal-article,html[lang=en] .origin-copy{font-size:var(--reading-size);line-height:var(--reading-leading)}
.origin-copy,.autobiography,.journal-article{max-width:36em}
.article-translation,html[lang=en] .origin-copy{max-width:65ch}
.autobiography h2,.vows-reader h2,.article-translation h2{font-size:var(--title-size);font-weight:600;line-height:1.6}
.autobiography p+p,.origin-copy p+p,.journal-article p+p{margin-top:1.5em}
.reader-heading h1,html[lang=en] .reader-heading h1,.collection-heading h1,#entry-reader h1{font-size:clamp(2.375rem,4vw,3.625rem);font-weight:600;letter-spacing:0}
.reader-original-title,html[lang=en] .reader-original-title,.article-summary,#entry-reader>.article-fold{font-size:var(--reading-size);line-height:1.8}
.reader-byline,.reader-note,.reader-home,.reader-toc nav,.reader-toc summary,.collection-nav,.collection-tools label,.collection-tools input,.collection-tools select{font-size:1.125rem}
.entry-meta,.origin-heading time,.milestone-heading time,.certification-milestone figcaption p+p,.motto-source,.original-notice,.resource-host,.album-photos figcaption{font-size:1.0625rem!important;line-height:1.8}
.reader-layout{grid-template-columns:200px minmax(0,760px);gap:60px}
.name-meanings article{gap:28px}.name-character{font-size:4.5rem}
.name-section{grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr);gap:65px}
.latest-entry .latest-description{-webkit-line-clamp:4}
.collection-tools input,.collection-tools select{min-height:48px}
footer{font-size:1.0625rem;line-height:1.75;flex-wrap:wrap}
.section-chapters main>.section{padding-block:112px}
@media(min-width:1051px) and (max-width:1200px){.header{padding-inline:4%;gap:16px}.header nav{gap:14px;margin-right:0;font-size:1.0625rem}}
@media(max-width:1000px){.reader-layout{grid-template-columns:170px minmax(0,1fr);gap:36px}.name-section{gap:36px}}
@media(max-width:700px){
 :root{--reading-size:1.25rem;--reading-leading:1.9;--title-size:1.625rem}
 .section-chapters main>.section{padding-block:72px}
 .about,.name-section{grid-template-columns:1fr;gap:32px}
 html[lang=zh-Hans] .about h2{font-size:2.125rem;line-height:1.65}
 .hero{min-height:720px;min-height:max(720px,calc(100svh - 78px))}
 .hero-content{width:100%;padding:64px 7% 130px}
 .hero h1{font-size:4.5rem}.hero-name{font-size:1.125rem;letter-spacing:.25em}
 .motto>p{font-size:1.625rem;letter-spacing:.04em}
 .motto>div{font-size:1.125rem;line-height:1.9}
 .section-heading p{font-size:1.1875rem}
 .journey>p{margin-top:20px}.journey-grid{gap:36px}
 .reader-layout{display:block}.reader-heading h1,html[lang=en] .reader-heading h1{font-size:2.375rem}
 .reader-toc nav{font-size:1.125rem}.collection-nav{gap:16px}
 .journey-blessing p:first-child,.closing{font-size:1.5rem}
 .aspiration h2{letter-spacing:0}.aspiration-english{font-size:1.125rem}
 .milestone-heading time{white-space:normal}.name-character{font-size:3.625rem}
 footer>span{font-size:1rem}
}
/* A single entrance: the landscape clears like morning mist as the name appears.
   All copy stays visible; this runs once and never changes scroll position. */
@media(prefers-reduced-motion:no-preference){
 .hero-landscape{animation:landscape-clears 1.2s cubic-bezier(.16,1,.3,1) both}
 .hero-content{animation:name-arrives .8s cubic-bezier(.16,1,.3,1) both}
 @keyframes landscape-clears{from{opacity:.4;filter:blur(3px);transform:scale(1.035)}to{opacity:.72;filter:blur(0);transform:scale(1)}}
 @keyframes name-arrives{from{opacity:.65;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}
}
@media(prefers-reduced-motion:reduce){.hero-landscape,.hero-content{animation:none}.text-link:hover svg,.button:hover svg{transform:none}}
@media print{body,.origin-copy,.autobiography,.article-translation,.journal-article{font-size:11pt;line-height:1.8}.hero-landscape,.hero-content{animation:none}.section-chapters main>.section{padding-block:24px}}

.heading-phrase{display:inline-block}

/* Warm gold distinguishes editorial subheadings from the body text.
   Contrast is 4.97:1 on paper and 4.52:1 on the mist surface. */
:root{--subtitle:#8a682e}
main :is(h2,h3,h4),.reader-original-title{color:var(--subtitle)}
@media print{main :is(h2,h3,h4),.reader-original-title{color:inherit}}

/* The owner’s reflection connects Dharma learning, service and transmission. */
.vows-reflection{margin:40px 0 8px;max-width:42em;font-family:var(--serif);font-size:1.5rem;font-weight:500;line-height:1.95;text-wrap:pretty}
@media(max-width:700px){.vows-reflection{margin-top:32px;font-size:1.25rem}}

/* Supporting labels follow the larger public reading scale. */
.section-label,.chinese-caption,.journey-chinese,.latest-journal-status,.album-zoom-help{font-size:1.0625rem}
.aspiration .text-link{font-size:1.1875rem}
.header nav{gap:16px;margin-right:16px}
@media(max-width:700px){
 .section-label,.chinese-caption,.journey-chinese,.latest-journal-status,.album-zoom-help{font-size:1rem}
 .milestone-heading{flex-wrap:wrap}
}

/* ---- Preview: identity line, About H1, featured story, mobile listings ---- */
.hero-identity{max-width:40ch;margin:18px auto 0;font-size:16px;line-height:1.7;color:var(--secondary);text-wrap:balance}
@media(max-width:700px){.hero-identity{font-size:15px;margin-top:14px;max-width:32ch;color:var(--ink)}}
.about-page-title{font-family:var(--serif);font-weight:600;font-size:clamp(2rem,4vw,2.75rem);color:var(--ink);margin:0;padding:34px var(--chapter-inset,7%) 0;max-width:none}
.section-chapters main>.section h2.section-label{font-family:var(--sans);font-size:14px;font-weight:600;line-height:1.5;margin-top:0}
@media(max-width:700px){.section-chapters main>.section h2.section-label{font-size:13px}.about-page-title{font-size:1.75rem;padding:26px 7% 0}}
.autobiography h3,.vows-reader h3{font-size:var(--title-size);font-weight:600;line-height:1.6}
.journal-article h2{font-family:var(--serif);font-size:1.2em;font-weight:600;line-height:1.5;margin:1.6em 0 .5em}
.journal-article ul{margin:.4em 0 1em;padding-left:1.3em}.journal-article li{margin:.3em 0}
.featured-story{margin-top:56px}
.featured-story>a{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:40px;align-items:center;color:inherit;text-decoration:none}
.featured-story img{width:100%;aspect-ratio:3/2;object-fit:cover;border-radius:14px;display:block}
.featured-story .section-label{margin-bottom:14px}
.featured-story h3{font-family:var(--serif);font-size:28px;font-weight:600;line-height:1.5;margin:0 0 14px}
.featured-story .latest-description{color:var(--secondary);margin:0 0 18px}
@media(max-width:700px){.featured-story{margin-top:40px}.featured-story>a{grid-template-columns:1fr;gap:20px}.featured-story h3{font-size:23px}}
@media(max-width:700px){
 .collection-entry .dharma-body-excerpt,.collection-entry>p[data-fold-key],.collection-entry .article-fold-preview{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
 .collection-tools{grid-template-columns:1.5fr 1fr;gap:8px;margin-bottom:22px}
 .collection-tools label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
 .collection-tools input{grid-column:1;grid-row:1;min-height:44px}
 .collection-tools select{grid-column:2;grid-row:1;min-height:44px}
 .collection-tools.no-category input{grid-column:1/3}
 body[data-collection=green] .collection-heading .green-mark{display:none}
 body[data-collection=green] .collection-heading .collection-tagline{margin-top:10px}
}

/* Centre the main nav on every page (desktop): brand | nav | actions on a 1fr auto 1fr grid */
@media(min-width:1051px){
.header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.header .brand{grid-column:1;grid-row:1;justify-self:start}
.header nav{grid-column:2;grid-row:1;justify-self:center;margin:0!important}
.header .header-actions{grid-column:3;grid-row:1;justify-self:end;margin-left:0}
}
.journal-home-row.has-thumb{display:grid;grid-template-columns:240px minmax(0,1fr) auto;align-items:center;gap:30px}
.row-thumb{width:240px;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:12px;display:block}
.row-thumb.portrait{width:190px;aspect-ratio:4/5;justify-self:start}
.journal-home-row.has-thumb.has-portrait{grid-template-columns:240px minmax(0,1fr) auto}
@media(max-width:700px){.journal-home-row.has-thumb{display:grid;grid-template-columns:1fr;gap:16px;align-items:stretch}.row-thumb{width:100%;height:auto;grid-row:auto;aspect-ratio:16/9}.row-thumb.portrait{width:100%;aspect-ratio:16/9}.journal-home-row.has-thumb>div{display:block}.journal-home-row.has-thumb h3{grid-column:auto;grid-row:auto}.journal-home-row.has-thumb p{grid-column:auto;margin-top:10px}.journal-home-row.has-thumb .text-link{grid-column:auto;margin-top:6px}}
.entry-photo{margin:30px 0 0;max-width:36em}.entry-photo img{display:block;width:100%;height:auto;border-radius:6px}
.collection-entry .entry-thumb{display:block;width:100%;max-width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:12px;margin:0 0 16px}
