/* One reading axis, wider demonstrations, and a consistent Chinese type scale. */
:root{--reading-copy:15px;--module-size:21px;--reading-title-size:clamp(28px,2.5vw,34px);--chapter-size:clamp(28px,2.5vw,34px)}
.section.wrap,.section-reading.wrap,.section-reading>.wrap,.applications.wrap{width:min(960px,calc(100% - 96px));margin-inline:auto}
.section,.section-reading{padding-top:112px;padding-bottom:0}
.section-heading,.section-reading .section-heading,.heading-stacked>.section-heading{display:block;min-height:0;max-width:720px;padding:0;margin-bottom:44px}
.section-heading h2,.section-reading .section-heading h2,.section-reading .models-copy h2,.chapter-title{font-size:var(--chapter-size);line-height:1.3;letter-spacing:-.035em;font-weight:500;max-width:720px}
.section-heading>p,.section-reading .section-heading>p,.heading-stacked>.section-heading>p{font-size:15px;line-height:1.85;max-width:620px;min-width:0;margin-top:24px}
.section-heading>p br{display:none}
.hero{height:auto;min-height:660px;padding-top:220px;padding-bottom:65px;align-items:end}
.hero h1{font-size:clamp(54px,5.4vw,78px);letter-spacing:-.045em;line-height:1.16}
.hero-aside{max-width:330px}
.hero-aside>p{font-size:15px;line-height:1.85}
.hero-note{font-size:12px}
.hero-signal{top:85px}
.hero-signal i{height:54px}
.hero .scroll-cue{bottom:18px}
.demo-section{padding-top:100px}
.case-story{max-width:820px}
.case-step{position:relative;margin-bottom:40px;padding-bottom:40px;border-bottom:1px solid var(--line)}
.case-step h3,.case-response-title{display:flex;align-items:baseline;gap:18px;font-size:20px;line-height:1.5;font-weight:500;letter-spacing:-.025em;margin:0 0 24px}
.case-index{flex:none;color:var(--accent);font-family:ui-monospace,monospace;font-size:12px;letter-spacing:0;font-weight:400}
.case-excerpt{background:#eeeae3;border-radius:8px 28px 28px 28px;padding:30px 36px;max-width:760px}
.case-excerpt p{font-size:20px;line-height:1.85;letter-spacing:-.015em;margin:0;max-width:650px}
.case-excerpt p+p{margin-top:14px}
.case-persona>p{max-width:640px;font-size:15px;line-height:1.9;color:var(--muted);margin:0}
.case-traits{display:flex;flex-wrap:wrap;gap:12px 26px;margin-top:22px;color:#8a6d50;font-size:14px}
.case-traits span::before{content:'·';margin-right:10px;color:var(--accent)}
.case-response-title{margin-bottom:28px}
.section-reading .demo-layout{max-width:820px}
.section-reading .demo-tabs{gap:32px;margin-bottom:26px}
.section-reading .demo-tabs button{font-size:15px}
.section-reading .chat-window{min-height:0;padding:32px;margin:20px;width:calc(100% - 40px);outline-width:20px}
.section-reading .chat-messages{min-height:190px}
.section-reading .chat-bubble{font-size:15px;line-height:1.85;max-width:90%}
.chat-header>div>span,.chat-bottom>span{font-size:12px}
.section-reading .demo-context{margin:44px 0 0;padding-top:26px;max-width:720px}
.section-reading .demo-context p{font-size:15px;line-height:1.85;max-width:620px}
.demo-facts{font-size:14px}
.applications.heading-stacked{padding-top:112px}
.applications.heading-stacked>.section-heading{margin-bottom:24px}
.film-gallery .application-copy{font-size:15px;line-height:1.8}
.film-gallery .application-title{font-size:20px}
.film-gallery .application-front .application-copy{max-width:80%}
.film-gallery .application-card,.film-gallery .application-card:last-child{width:min(62%,600px);height:340px}
.film-detail p,.application-evidence p{font-size:15px;line-height:1.85}
.showcase{margin-top:70px}
.overview-metrics{margin-top:40px}
.overview-metrics .overview-stat>span{font-size:14px}
.comparison-intro h3{font-size:20px}
.comparison-intro p{font-size:15px;line-height:1.85}
.comparison-caption,.comparison-caption p{font-size:15px;line-height:1.8}
.section-reading .source-excerpt-line{font-size:15px;line-height:1.9}
.section-reading .source-caption,.section-reading .section-under p,.section-reading .fine-print{font-size:14px;line-height:1.85}
.section-reading .worldline-list{font-size:15px}
.section-reading .persona-menu{max-width:780px;gap:20px}
.section-reading .persona-menu>button{font-size:15px;gap:10px}
.section-reading .persona-detail{min-height:0}
.section-reading .persona-detail>p{max-width:640px;font-size:15px;line-height:1.85}
.section-reading .persona-example p{font-size:15px;line-height:1.85}
.section-reading .persona-detail .panel-note,.panel-kicker{font-size:13px}
.relationship-reading{max-width:700px;margin-top:36px}
.relationship-reading>p{max-width:640px;font-size:15px;line-height:1.85}
.relationship-figure figcaption{font-size:13px}
.relationship-proof>div>span{font-size:15px}
.workflow-section{padding-bottom:65px}
.workflow-section>.section-heading{max-width:720px}
.workflow-step,.workflow-step span{font-size:15px}
.flow-detail{display:flex;flex-direction:column;gap:30px;padding:35px 0;min-height:0}
.flow-detail>div:first-child{max-width:640px}
.flow-detail>div>p{font-size:15px;line-height:1.85}
.flow-code{max-width:640px;width:100%;padding:22px 26px;border-left:0;border-top:1px solid var(--line);font-size:14px;line-height:2}
.flow-code>span{font-size:12px}
.tech-line{font-size:13px}
.continuity-grid{display:flex;flex-direction:column;gap:52px;max-width:820px}
.continuity-grid article{width:100%;padding:0;max-width:760px}
.continuity-grid article>p{font-size:15px;line-height:1.85;max-width:640px}
.continuity-grid details{font-size:15px;line-height:1.85}
.delivery-panel{display:flex;flex-direction:column;align-items:stretch;gap:28px;max-width:820px;margin-top:54px}
.delivery-panel>div:first-child{max-width:640px}
.delivery-panel p{font-size:15px;line-height:1.85}
.delivery-demo{width:100%;max-width:680px}
.section-reading .models-copy{max-width:640px}
.section-reading .models-copy>p{font-size:15px;line-height:1.85}
.section-reading .provider-row{font-size:15px}
.cost-efficiency{max-width:820px;margin-top:62px}
.cost-methods{max-width:740px}
.cost-methods li{grid-template-columns:26px 1fr;gap:10px 16px;padding:25px 0}
.cost-methods h4{font-size:20px;line-height:1.5}
.cost-methods p{grid-column:2;font-size:15px;line-height:1.85;max-width:620px}
.cost-model-demo>p{font-size:14px}
.cost-stat b{font-size:20px}
.validation-stat .stat-description,.validation-stat .stat-result{font-size:14px}
.questions{max-width:820px;margin-inline:0}
.questions summary{font-size:15px;line-height:1.7}
.questions p{font-size:15px;line-height:1.85;max-width:680px}
.decision-list,.contribution-list{max-width:820px}
.decision-list article{padding:30px 0;border-top:1px solid var(--line)}
.decision-list h3,.contribution-list h3{font-size:20px;line-height:1.5;font-weight:500;letter-spacing:-.025em;margin:0 0 18px}
.decision-list p,.contribution-list p{max-width:640px;font-size:15px;line-height:1.9;color:var(--muted);margin:0}
.decision-list .decision-outcome{margin-top:18px;padding-left:18px;border-left:2px solid var(--accent);font-size:15px;color:var(--ink)}
.contribution-list{list-style:none;counter-reset:work;padding:0;margin:0}
.contribution-list li{counter-increment:work;position:relative;padding:30px 0 32px 44px;border-top:1px solid var(--line)}
.contribution-list li::before{content:counter(work,decimal-leading-zero);position:absolute;left:0;top:38px;font-size:12px;color:var(--accent);font-family:ui-monospace,monospace}
.closing{padding-top:120px;padding-bottom:80px}
.closing>p{font-size:15px;line-height:1.85}
@media(max-width:800px){
 .section.wrap,.section-reading.wrap,.section-reading>.wrap,.applications.wrap{width:calc(100% - 64px)}
 .hero{min-height:600px;padding-top:190px;gap:30px}
 .hero-aside>p{font-size:15px}
 .film-gallery .application-card,.film-gallery .application-card:last-child{width:74%}
}
@media(max-width:620px){
 :root{--reading-copy:16px;--module-size:20px;--chapter-size:28px;--reading-title-size:28px}
 .section.wrap,.section-reading.wrap,.section-reading>.wrap,.applications.wrap{width:calc(100% - 40px)}
 .section,.section-reading,.applications.heading-stacked{padding-top:80px}
 .section-heading,.section-reading .section-heading,.heading-stacked>.section-heading{margin-bottom:32px}
 .section-heading h2,.section-reading .section-heading h2,.section-reading .models-copy h2{font-size:28px;line-height:1.35}
 .section-heading>p,.section-reading .section-heading>p,.heading-stacked>.section-heading>p{font-size:15px;line-height:1.85;margin-top:20px}
 .hero{height:auto;min-height:0;padding-top:138px;padding-bottom:65px;display:block}
 .hero h1{font-size:clamp(38px,9.7vw,54px);letter-spacing:-.035em}
 .hero-aside{width:100%;max-width:100%;margin:28px 0 0;padding:0;justify-self:start}
 .site-header nav a:first-child{display:inline-flex}
 .site-header nav a:nth-child(2){display:none}
 .hero-aside>p{font-size:15px;max-width:340px;line-height:1.8;margin-bottom:18px}
 .hero-aside>p:nth-child(2){display:none}
 .hero-note{font-size:12px}
 .hero-signal{top:42px}
 .hero-signal i{height:28px}
 .case-step h3,.case-response-title{font-size:20px;gap:12px;margin-bottom:20px}
 .case-step{margin-bottom:28px;padding-bottom:28px}
 .case-excerpt{padding:24px;border-radius:8px 22px 22px 22px}
 .case-excerpt p{font-size:15px;line-height:1.85}
 .case-persona>p{font-size:15px}
 .case-traits{gap:10px 18px;font-size:13px}
 .section-reading .demo-tabs{gap:24px}
 .section-reading .demo-tabs button{font-size:15px}
 .section-reading .chat-window{margin:12px;width:calc(100% - 24px);outline-width:12px;padding:22px 18px}
 .section-reading .chat-bubble{font-size:15px;max-width:96%}
 .section-reading .chat-messages{min-height:175px}
 .section-reading .demo-context{margin-top:30px}
 .section-reading .demo-context p{font-size:15px}
 .demo-facts{font-size:13px}
 .film-gallery .application-copy{font-size:15px}
 .film-gallery .application-card,.film-gallery .application-card:last-child{width:88%;height:350px}
 .film-gallery .application-front .application-copy{max-width:100%}
 .film-gallery .application-title{font-size:20px}
 .overview-metrics .overview-stat>span{font-size:12px}
 .comparison-intro h3{font-size:20px}
 .comparison-intro p{font-size:15px}
 .section-reading .source-excerpt-line{font-size:15px}
 .section-reading .source-caption,.section-reading .fine-print,.section-reading .section-under p{font-size:13px}
 .section-reading .persona-menu{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 22px;margin-bottom:26px}
 .section-reading .persona-menu>button{font-size:15px;white-space:normal}
 .section-reading .persona-detail>p,.section-reading .persona-example p{font-size:15px}
 .section-reading .persona-detail .panel-note{font-size:13px}
 .relationship-reading>p,.flow-detail>div>p,.continuity-grid article>p,.delivery-panel p,.section-reading .models-copy>p{font-size:15px}
 .workflow-section{padding-bottom:40px}
 .flow-code{font-size:13px;padding:18px 10px}
 .continuity-grid{gap:40px}
 .cost-methods li{gap:8px 12px}
 .cost-methods h4{font-size:20px}
 .cost-methods p{font-size:15px}
 .cost-stat b{font-size:15px}
 .validation-stat .stat-description,.validation-stat .stat-result{font-size:13px}
 .questions summary{font-size:15px}
 .questions p{font-size:15px}
 .decision-list h3,.contribution-list h3{font-size:20px}
 .decision-list p,.contribution-list p,.decision-list .decision-outcome{font-size:15px}
 .contribution-list li{padding-left:32px}
 .closing{padding-top:85px;padding-bottom:60px}
}
@media(prefers-reduced-motion:reduce){.case-story{scroll-behavior:auto}}

/* The reading position stays stable after each entrance. */
.chapter-title,.section-reading .section-heading h2,.section-reading .models-copy h2{translate:none!important}
.hero-signal::before,.hero-signal::after,.hero-signal span,.orange-dot,.scroll-cue{animation:none!important}
.relationship-canvas,.relationship-canvas:active{cursor:default}
.relationship-scene-legend>div{opacity:.4;transition:opacity .45s,color .45s}
.relationship-scene-legend>div.is-revealed{opacity:1}
.relationship-scene-legend>div.is-current strong{color:var(--accent)}
.relationship-scene-legend span{font-size:12px}
.relationship-scene-legend strong{font-size:14px}
.comparison-outcome p,.comparison-conclusion{font-size:12px;line-height:1.8}
.comparison-controls button[hidden]{display:none}
.comparison-window[data-motion-state="complete"] .persona-card-inner{will-change:auto}
.flow-code{font-family:inherit}
.cost-model>p,.cost-efficiency>p{font-size:15px}
.cost-model-demo blockquote{font-size:20px}
.cost-stat strong{font-size:92px}
.overview-stat strong,.validation-stat strong{font-size:40px}
.film-detail h2{font-size:26px}
.section,.section-reading{padding-top:96px}
@media(max-width:620px){
 .section,.section-reading,.applications.heading-stacked{padding-top:70px}
 .relationship-scene-legend{gap:12px 8px}
 .relationship-scene-legend strong{font-size:12px;white-space:normal}
 .relationship-scene-legend span{font-size:11px}
 .comparison-outcome p{font-size:12px}
 .cost-stat strong{font-size:76px}
 .overview-stat strong,.validation-stat strong{font-size:32px}
}
@media(prefers-reduced-motion:reduce){.relationship-scene-legend>div{transition:none;opacity:1}}
