/* Reading units are editorial preferences, not forced desktop line breaks.
   Nested wrappers explicitly inherit the authored type style and colour so
   existing h2 > span / summary > span rules cannot recolour or resize copy. */
.typo-copy.typo-copy,.typo-unit.typo-unit,.typo-word.typo-word{font:inherit!important;color:inherit!important;letter-spacing:inherit!important;text-transform:inherit!important;text-decoration:inherit;position:static!important;inset:auto!important;margin:0!important;padding:0!important;border:0!important;background:none!important;opacity:1;width:auto!important;height:auto!important;inline-size:auto!important;block-size:auto!important;min-inline-size:0;max-inline-size:100%;float:none!important;transform:none!important;vertical-align:baseline;white-space:normal!important}
.typo-copy.typo-copy{display:inline!important}
.typo-unit.typo-unit,.typo-word.typo-word{display:inline-block!important;word-break:keep-all;overflow-wrap:anywhere;hyphens:none}
h1,h2,h3,h4,summary{text-wrap:balance}
p,li,td,dd,figcaption{text-wrap:pretty}
/* A complete technical term may wrap internally only when the actual column
   is narrower than that term, including the 320 px layout. */
html[lang="zh-CN"] .typo-unit.typo-unit{line-break:strict;word-break:keep-all}
:is(td,th,dd,dt,summary,button,a,label)>.typo-copy{min-width:0}
:is(.network-tabs,[role="tablist"]) button{white-space:normal}
input,select,textarea{max-inline-size:100%}
:is(.footer-bottom,.privacy-dialog) a[href^="mailto:"]{overflow-wrap:anywhere}
/* Existing deliberate heading lines stay intact. Subordinate body copy gains
   a little leading on narrow layouts without changing the overall hierarchy. */
@media(max-width:767px){
 .faq-section summary,.faq-item summary{line-height:1.55}
 .faq-section p,.faq-item p{line-height:1.85}
 .specs-section :is(td,th),.editorial-body :is(td,th,dd){line-height:1.7}
 .footer-cta h2{line-height:1.35}
}

/* Icons and fixed-size summary markers belong to authored elements only. */
.typo-copy.typo-copy::before,.typo-copy.typo-copy::after,.typo-unit.typo-unit::before,.typo-unit.typo-unit::after{content:none!important}
summary>.typo-copy.typo-copy{flex:1 1 auto!important}

@media(max-width:479px){.visual-contact-subjects>a>div{padding-right:0}}
/* Let the portfolio name use the full card width above its independent arrow.
   This keeps PROFUSION and long English labels intact on small phones. */
@media(max-width:479px){
 .application-card>div{right:24px;bottom:88px}
 .application-card h3{font-size:28px;line-height:1.24}
}
/* At 320 px, two-column English technical / workflow labels need a smaller
   subheading step; body copy and the 390 px design keep their existing scale. */
@media(max-width:359px){
 html[lang="en"] .visual-feature-grid h3,
 html[lang="en"] .visual-photo-process h3{font-size:17px!important;line-height:1.5}
}
/* Narrow English card paragraphs follow normal word flow inside their editorial
   phrases, so a short connector can share the preceding line. Titles keep the
   preferred phrase boxes; Chinese keeps its dictionary boundaries. */
@media(max-width:479px){
 html[lang="en"] :is(.visual-feature-grid,.visual-photo-process,.visual-contact-subjects) p .typo-unit.typo-unit{display:inline!important}
}

/* Preserve the main statement scale while allowing locale-native spacing. */
html[lang="zh-CN"] #material-stage .material-stage-copy :is(p,h2){letter-spacing:0;word-break:normal;line-break:strict}
html[lang="ja"] #material-stage .material-stage-copy p{letter-spacing:0;line-height:1.9}
html[lang="ja"] #material-stage .material-stage-copy h2{letter-spacing:-.025em;line-height:1.45}
html[lang="th"] #material-stage .material-stage-copy :is(p,h2){letter-spacing:0;word-break:normal}
html[lang="th"] #material-stage .material-stage-copy p{line-height:1.8}
html[lang="th"] #material-stage .material-stage-copy h2{line-height:1.4}

/* Author metadata includes translated names, so it follows the locale font. */
html[lang="zh-CN"] .evidence-meta,
html[lang="ja"] .evidence-meta{font-family:inherit}

/* Product prose follows normal English word flow on small screens. */
@media(max-width:767px){
 html[lang="en"] .product-page p .typo-unit.typo-unit{display:inline!important}
}
