/* Reference-informed editorial system. See evidence/design-upgrade-20261021. */
:root{--ink:#13233d;--muted:#5e6a7b;--blue:#174be6;--line:#dce5ef;--gutter:clamp(24px,4.6vw,88px);--radius:20px;--type-body:17px;--type-small:14px;--type-control:15px;--space-section:clamp(88px,9vw,156px)}
body{font-size:var(--type-body);line-height:1.75;letter-spacing:-.022em}
h1,h2,h3,h4{text-wrap:balance;overflow-wrap:break-word}
p,li,td,summary{text-wrap:pretty;overflow-wrap:break-word}
html[lang=en] body{letter-spacing:-.02em;word-break:normal;hyphens:none}
html[lang=zh-CN] body{word-break:normal;line-break:strict;letter-spacing:.01em}
h1{font-size:clamp(44px,5vw,76px);line-height:1.16}
h2,.section-head h2,.market-intro h2,.specs-layout h2,.timeline-section>h2{font-size:clamp(34px,3.65vw,56px);line-height:1.25;letter-spacing:-.04em}
h3{font-size:clamp(22px,2vw,30px);line-height:1.35;letter-spacing:-.025em}
.section{padding-top:var(--space-section)}
.section-intro,.inner-title>p,.market-intro>p:not(.section-label),.single-product p{font-size:clamp(16px,1.28vw,19px);line-height:1.8;color:var(--muted)}
.section-label{font-size:14px;line-height:1.4;letter-spacing:0;margin-bottom:22px}
.inner-title h1{font-size:clamp(42px,4.6vw,72px);line-height:1.2;max-width:18ch}
.inner-title{padding-top:clamp(64px,7vw,112px);padding-bottom:clamp(40px,5vw,76px)}
.hero-copy h1,html[lang=en] .home-hero .hero-copy h1{font-size:clamp(48px,5.2vw,80px);line-height:1.18}
.hero-copy>p{font-size:clamp(17px,1.45vw,21px);line-height:1.75;max-width:36em}
.text-link{font-size:15px;line-height:1.45;font-weight:600;gap:20px;padding:10px 0;min-height:44px;letter-spacing:-.01em}
.text-link svg{width:21px;height:21px;transition:transform .35s var(--ease)}
.text-link:hover{gap:20px}.text-link:hover svg{transform:translate(3px,-3px)}
.button,.development-panel>.text-link{font-size:15px;line-height:1.4}
.button{min-height:48px;padding:14px 24px;gap:32px}
.button-small{font-size:14px;min-height:42px;padding:10px 16px;gap:13px}
.desktop-nav{font-size:15px;gap:clamp(24px,2.4vw,42px)}
.dropdown-link{font-size:15px}.languages{font-size:11px}
.faq-item summary{font-size:clamp(17px,1.35vw,20px);font-weight:500;line-height:1.55}
.faq-item p,.feature-list p,.process-rail p,.vertical-steps p,.story-body{font-size:17px;line-height:1.8}
.feature-list h3,.process-rail h3,.vertical-steps h3{font-size:clamp(22px,1.9vw,28px);line-height:1.4}
.related-section>div>a{font-size:clamp(20px,1.7vw,26px);line-height:1.4}
.footer-link{font-size:14px}.footer-bottom{font-size:12px}
.why-section{position:relative;isolation:isolate;overflow:hidden;margin-top:var(--space-section);padding:clamp(72px,7vw,112px) var(--gutter);background:radial-gradient(ellipse at 100% 0%,#e8f3ff 0%,#f7fbff 37%,#fff 72%);color:#13233d}
.why-section:before{content:"";position:absolute;z-index:-1;pointer-events:none;left:34%;top:-92%;width:140%;height:150%;border:120px solid #eaf4ff55;border-radius:50%;transform:rotate(-15deg)}
.why-inner{max-width:1440px;margin:auto}
.why-heading{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:clamp(40px,5vw,80px)}
.why-heading h2{max-width:11.5em;line-height:1.23;font-size:clamp(38px,4.1vw,64px);letter-spacing:-.05em}
.why-heading h2 span{color:inherit}
.why-heading .section-label{margin-bottom:24px;color:#174be6;font-size:16px}
.why-intro{font-size:clamp(17px,1.45vw,20px);line-height:1.75;color:#5e6a7b;max-width:31em;margin:28px 0 22px}
.why-image{aspect-ratio:1.7;overflow:hidden;border-radius:20px;background:#eaf0f6}
.why-image img{width:100%;height:100%;object-fit:cover}
.why-rows{margin-top:64px}
.why-row{display:grid;grid-template-columns:64px minmax(0,.88fr) minmax(0,1.24fr);gap:28px;align-items:start;padding:29px 0;border-bottom:1px solid #d5e1ef}
.why-row:last-child{border-bottom:0}
.why-row .step-number{font-size:32px;font-weight:600;line-height:1.4;color:#174be6}
.why-row h3{font-size:clamp(22px,2vw,30px);line-height:1.45;border-left:1px solid #d5e1ef;padding-left:28px}
.why-row>p{font-size:clamp(16px,1.35vw,20px);line-height:1.75;color:#5e6a7b;padding-top:3px;max-width:41em}
@media(min-width:1600px){.section{max-width:1600px}.section-intro{max-width:560px}.wrap{max-width:1600px}}
@media(max-width:1023px){
 :root{--gutter:32px;--space-section:100px}
 .header-tools>.button{font-size:14px}
 .why-heading{grid-template-columns:1fr 1.1fr;gap:32px;align-items:start}
 .why-heading h2{font-size:38px}.why-intro{font-size:17px;margin-top:22px}.why-image{aspect-ratio:.95}
 .why-row{grid-template-columns:45px minmax(0,.9fr) minmax(0,1.2fr);gap:18px}.why-row h3{padding-left:20px;font-size:23px}.why-row>p{font-size:16px}
}
@media(max-width:600px){
 :root{--gutter:22px;--space-section:80px;--type-body:16px;--type-control:14px;--radius:16px}
 body{font-size:16px;line-height:1.75;letter-spacing:-.02em}
 h1,.inner-title h1,html[lang=en] .inner-title h1{font-size:clamp(30px,8.4vw,38px);line-height:1.25;letter-spacing:-.045em;max-width:none}
 h2,.section-head h2,.market-intro h2,.specs-layout h2,.timeline-section>h2,html[lang=en] .section-head h2{font-size:clamp(28px,7.6vw,33px);line-height:1.3}
 h3,.feature-list h3,.process-rail h3,.vertical-steps h3{font-size:22px;line-height:1.4}
 .hero-copy h1,html[lang=en] .home-hero .hero-copy h1,html[lang=zh-CN] .hero-copy h1{font-size:clamp(31px,8.5vw,40px);line-height:1.22;letter-spacing:-.04em}
 .hero-copy>p{font-size:16px;line-height:1.7;margin-top:22px;max-width:29ch}
 .inner-title{padding-top:46px;padding-bottom:32px;gap:22px}.inner-title>p,.section-intro{font-size:16px;line-height:1.75}
 .text-link,.material-display-tools>.text-link,.development-panel>.text-link{font-size:14px;gap:16px;min-height:44px}
 .text-link svg{width:20px;height:20px}.button{font-size:14px;min-height:48px;padding:14px 22px}
 .section-label{font-size:12px;line-height:1.4;margin-bottom:18px}
 .feature-list p,.process-rail p,.vertical-steps p,.story-body,.faq-item p{font-size:16px;line-height:1.75}
 .faq-item summary{font-size:17px;line-height:1.55;padding:23px 0}
 .drawer-link{font-size:20px;line-height:1.4;padding:16px 0}
 .footer-link{font-size:13px}.footer-cta h2{font-size:31px;line-height:1.35}.footer-bottom{font-size:11px}
 .why-section{padding:64px var(--gutter);margin-top:80px}
 .why-heading{grid-template-columns:1fr;gap:34px}.why-heading h2{font-size:34px;max-width:11em;line-height:1.25}
 .why-heading .section-label{font-size:13px;margin-bottom:20px}.why-intro{font-size:16px;margin:22px 0 15px;max-width:34em}
 .why-image{aspect-ratio:1.36;border-radius:16px}.why-rows{margin-top:30px}
 .why-row{grid-template-columns:36px minmax(0,1fr);column-gap:17px;row-gap:8px;padding:24px 0}
 .why-row .step-number{font-size:24px;line-height:1.4}.why-row h3{border:0;padding-left:0;font-size:22px;line-height:1.45}
 .why-row>p{grid-column:2;font-size:15px;line-height:1.75;padding-top:0}
 html[lang=en] .why-heading h2{font-size:32px;max-width:14ch}
}
@media(max-width:359px){:root{--gutter:18px}.why-heading h2{font-size:31px}.why-row h3{font-size:20px}.hero-copy{left:20px!important;right:20px!important}}

/* Keep the resource-to-platform chapter on stable white paper. */
.foundry-chapter{position:relative;margin-top:var(--space-section);padding:1px 0 clamp(72px,7vw,112px);background:#fff;color:var(--ink)}
.foundry-chapter .foundry-story{padding-top:clamp(72px,7vw,112px)}
.foundry-chapter .section-head h2,.foundry-chapter .section-head h2 span,.foundry-chapter .scroll-statement{color:var(--ink)}
.foundry-chapter .section-intro,.foundry-chapter .process-rail p,.foundry-chapter .development-item p{color:var(--muted)}
.foundry-chapter .section-label,.foundry-chapter .step-number,.foundry-chapter .text-link{color:var(--blue)}
.foundry-chapter .development-panel{background:#f4f7fb;color:var(--ink)}
.foundry-chapter .development-item{background:transparent;border-color:var(--line)}
.foundry-chapter .journey-banner{overflow:hidden;border-radius:20px;margin-bottom:0}
.foundry-chapter .journey-banner img{border-radius:0}
.foundry-chapter .scroll-statement{max-width:1160px;padding-bottom:56px}
.foundry-chapter .scroll-statement p{font-size:clamp(28px,3.1vw,48px);line-height:1.6;letter-spacing:-.035em}
.foundry-chapter .process-rail{gap:40px;margin-top:44px}
.foundry-chapter .platform-section{padding-top:var(--space-section)}
.why-section{margin-top:0}
@media(max-width:600px){.foundry-chapter{margin-top:80px;padding-bottom:64px}.foundry-chapter .foundry-story{padding-top:64px}.foundry-chapter .scroll-statement p{font-size:25px;line-height:1.65}.foundry-chapter .scroll-statement{padding-bottom:32px}.foundry-chapter .journey-banner{border-radius:16px}.foundry-chapter .process-rail{gap:28px}.foundry-chapter .platform-section{padding-top:72px}.why-section{margin-top:0}}
@media(prefers-reduced-motion:reduce){.motion-media img{transform:none!important}.why-row{opacity:1!important;transform:none!important}}

.material-stage-link>.text-link{font-size:15px}
@media(max-width:600px){.material-stage-link>.text-link{font-size:14px}}

/* Keep the new documentary-format scenes readable at narrow widths. */
.application-card[data-destination="profusion"]>img[src*="profusion-product-editorial"]{object-fit:cover;object-position:63% 50%}
.application-card[data-destination="profusion"]>img[src*="profusion-fermented-texture"]{width:100%;height:100%;object-fit:cover;object-position:center}
@media(max-width:1023px){body[data-page="company"] .editorial-company-image{height:auto;aspect-ratio:1.6}body[data-page="company"] .editorial-company-image>img{width:100%;height:100%;object-fit:cover}}

body[data-page="profusion"] .editorial-material-identity>figure>img[src*="profusion-product-editorial"]{object-position:61% 50%}

/* The landing media expands into the available viewport once, without pinning. */
.home-hero{margin:0;border-radius:0;height:calc(100svh - var(--header));min-height:620px;max-height:none;clip-path:inset(14px min(64px,4.5vw) round 24px)}
.home-hero .hero-image,.home-hero .hero-video{border-radius:0}
.home-hero .hero-copy{translate:var(--hero-copy-inset,0px) var(--hero-copy-lift,0px);scale:var(--hero-copy-scale,1);transform-origin:left center}
@media(min-width:1024px){.home-hero .hero-copy{left:8.5%;right:7%;max-width:1020px}}
@media(max-width:600px){.home-hero{height:calc(100svh - var(--header));min-height:0;max-height:none;clip-path:inset(14px 12px round 18px)}}
@media(prefers-reduced-motion:reduce){.home-hero{clip-path:none!important}.home-hero .hero-copy{translate:none;scale:1}}

/* A restrained, native-resolution material film on the white stage. */
.material-stage>.material-stage-film{border-radius:0;background:#fff}
.material-stage>.material-stage-film>img,.material-stage>.material-stage-film>video{width:100%;height:100%;object-fit:contain}
