/* Readability pass: generous body copy, restrained supporting labels. */
.page-lead{font-size:17px;line-height:1.75}
.page-heading p,.detail-row p,.service-card p,.sourcing-map p,.logo-onboarding p,.article-card p,.contact-panel p,.context-grid article p{font-size:15px;line-height:1.72}
.operation-copy>p{font-size:16px;line-height:1.78}
.flow-grid p,.product-showcase-copy p{font-size:13px;line-height:1.68}
.page-kicker b,.context-grid article b,.service-card .detail-no,.brand-category>span,.article-card small,.product-showcase-copy small,.proof-cell span,.operation-stats span{font-size:12px}
.page-kicker span{font-size:14px;line-height:1.45}
.tag-list span,.product-showcase-tags span{font-size:12px;line-height:1.25}
.product-showcase-tags span{padding:8px 10px}
.operation-image figcaption{font-size:12px;line-height:1.45}
.article-card a{font-size:13px}
.brand-disclaimer{font-size:14px;line-height:1.7}
.contact-page-form label{font-size:12px}
#rfq-form{scroll-margin-top:112px}
.language-switcher a{font-size:12px}

@media(max-width:800px){
  .page-lead{font-size:16px}
  .page-heading p,.detail-row p,.service-card p,.sourcing-map p,.logo-onboarding p,.article-card p,.contact-panel p,.context-grid article p{font-size:14px}
  .operation-copy>p{font-size:15px}
  .flow-grid p,.product-showcase-copy p{font-size:13px}
  .language-switcher a{font-size:12px}
}

/* Site-wide legibility pass. Font size only; colors and layout stay unchanged. */
.brand-name{font-size:12px}
.brand-name small{font-size:12px}
.site-header .brand-name--chinese b{font-size:15px}
.language-switcher a{font-size:12px}
.button{font-size:13px}
.section-index{font-size:12px}
.page-kicker b,
.context-grid article b,
.service-card .detail-no,
.detail-row .detail-no,
.brand-category>span,
.article-card small,
.product-showcase-copy small,
.proof-cell span,
.operation-stats span{font-size:12px}
.tag-list span,
.product-showcase-tags span{font-size:12px}
.module-link,
.article-card a{font-size:14px}
.brand-disclaimer b{font-size:12px}
.brand-segment-head p{font-size:14px}
.brand-logo-name{font-size:13px}
.contact-page-form label{font-size:14px}
.contact-page-form .button{font-size:13px}
.contact-panel a{font-size:14px}
.contact-page-form .form-note,
.contact-form .form-note{font-size:12px}
body .site-footer p{font-size:13px}
body .site-footer>a:last-child{font-size:12px}
.site-footer .footer-brand .brand-name{font-size:12px}
.site-footer .footer-brand .brand-name small{font-size:12px}
.site-footer .footer-brand .brand-name--chinese b{font-size:14px}

/* Homepage supporting copy. */
.hero-photo-caption{font-size:12px}
.hero-photo-caption small{font-size:12px}
.scroll-prompt,
.ticker-label{font-size:12px}
.profile-row>span{font-size:12px}
.profile-row p{font-size:14px}
.industry-list span{font-size:12px}
.industry-list small{font-size:14px}
.sourcing-photo-copy span{font-size:12px}
.supply-steps span{font-size:12px}
.supply-steps p{font-size:12px}
.trust-core small{font-size:12px}
html[lang="en"] .trust-core small{font-size:12px}
.trust-tag{font-size:12px}
.trust-copy li{font-size:14px}
.brands-head>p{font-size:15px}
.brand-groups span{font-size:12px}
.insight-image>span{font-size:12px}
.article-meta{font-size:12px}
.insight-grid a{font-size:13px}
.contact-links a{font-size:14px}
.contact-form label{font-size:13px}
.contact-form .button{font-size:13px}

/* Internal-page indexes, descriptors and compact cards. */
.industries-page .portfolio-row>b{font-size:12px}
.industries-page .portfolio-details>p{font-size:15px}
.industries-page .portfolio-tags span{font-size:12px}
.flow-grid b{font-size:12px}
.flow-grid p{font-size:14px}
.operation-image figcaption{font-size:12px}
.about-matrix span{font-size:12px}
.governance-grid b{font-size:12px}
.governance-grid p{font-size:14px}

@media(max-width:800px){
  .site-header .brand-name{font-size:12px}
  .site-header .brand-name small{font-size:12px}
  .site-header .brand-name--chinese b{font-size:13px}
  .language-switcher a{font-size:12px}
  .hero-foot>span:not(.red-dot){font-size:12px}
  .ticker-label{font-size:12px}
  .industries-page .portfolio-details>p{font-size:14px}
  .industries-page .portfolio-tags span{font-size:12px}
}

/* Page-scoped vertical rhythm. These rules only reduce excess space between
   complete sections; card, image, copy, and navigation layouts stay intact. */
@media (min-width:801px){
  .industries-page .subpage-section{padding-top:88px;padding-bottom:88px}

  .sourcing-page .sourcing-operation{padding-top:96px;padding-bottom:96px}
  .sourcing-page .subpage-section{padding-top:86px;padding-bottom:86px}

  .brands-page .subpage-section{padding-top:82px;padding-bottom:82px}
  .insights-page .subpage-section{padding-top:82px;padding-bottom:82px}
  .contact-page .subpage-section{padding-top:80px;padding-bottom:80px}
}

@media (max-width:800px){
  .industries-page .subpage-section{padding-top:62px;padding-bottom:62px}

  .sourcing-page .sourcing-operation{padding-top:64px;padding-bottom:64px}
  .sourcing-page .subpage-section{padding-top:62px;padding-bottom:62px}

  .brands-page .subpage-section{padding-top:60px;padding-bottom:60px}
  .insights-page .subpage-section{padding-top:60px;padding-bottom:60px}
  .contact-page .subpage-section{padding-top:58px;padding-bottom:58px}
}

/* Local phrase guards prevent orphaned CJK characters without changing normal
   paragraph wrapping site-wide. Applied only to the marked short phrases. */
html[lang="zh-Hant"] .cjk-keep{display:inline-block;white-space:nowrap}

/* At tablet width, reuse the existing compact menu before the full navigation
   begins to compress or split its labels. */
@media (min-width:701px) and (max-width:800px){
  .site-header{height:68px;gap:16px;padding:0 20px}
  .site-header .brand img{width:32px;height:32px}
  .site-header .brand-name{font-size:12px}
  .site-header .brand-name b{font-size:16px}
  .site-header .header-cta{display:none}
  .site-header .menu-toggle{display:grid;place-content:center;gap:6px;width:38px;height:38px;margin-left:auto;border:1px solid var(--ink);background:none}
  .site-header .menu-toggle span{display:block;width:16px;height:1px;background:var(--ink)}
  .site-header .site-nav{position:absolute;top:68px;right:0;left:0;display:none;align-items:stretch;flex-direction:column;gap:0;padding:14px 20px;border-bottom:1px solid var(--line);background:#fff}
  .site-header .site-nav.open{display:flex}
  .site-header .site-nav a{padding:11px 0;border-bottom:1px solid var(--line);font-size:13px}
  .site-header .language-switcher{flex:0 0 auto;margin-right:8px}
  .site-header .language-switcher a{font-size:12px;white-space:nowrap}
}

/* Homepage: the revised second-line claim must remain a complete phrase. */
.home-page #hero-title .hero-title-phrase{display:inline-block;font-size:.86em;letter-spacing:-.05em;white-space:nowrap}
html[lang="zh-Hant"] .home-page .trust-core small{width:auto}

/* Keep the approved Chinese homepage claims to their intended two-line rhythm. */
@media (min-width:961px){
  html[lang="zh-Hant"] .home-page #hero-title{font-size:clamp(52px,4.45vw,70px)}
  html[lang="zh-Hant"] .home-page #hero-title .hero-title-line{display:inline-block;white-space:nowrap}
  html[lang="zh-Hant"] .home-page #contact-title{font-size:clamp(37px,4vw,60px)}
  html[lang="zh-Hant"] .home-page #contact-title .contact-title-line{display:inline-block;white-space:nowrap}
}

@media (min-width:801px) and (max-width:960px){
  html[lang="zh-Hant"] .home-page #contact-title{font-size:37px}
  html[lang="zh-Hant"] .home-page #contact-title .contact-title-line{display:inline-block;white-space:nowrap}
}

@media (max-width:800px){
  html[lang="zh-Hant"] .home-page #contact-title{font-size:36px}
  html[lang="zh-Hant"] .home-page #contact-title .contact-title-line{display:inline-block;white-space:nowrap}
}

/* Page-scoped heading and compact-label repairs. */
.contact-page .contact-title-line{display:inline-block;white-space:nowrap}

@media (max-width:800px){
  .brands-page .page-hero h1 .brand-hero-phrase{display:inline-block;font-size:.78em;letter-spacing:-.05em;white-space:nowrap}
}

@media (max-width:480px){
  .home-page #hero-title .hero-title-phrase{display:inline;white-space:normal}
  html[lang="zh-Hant"] .about-page .page-heading h2 .cjk-keep{display:inline;white-space:normal}
  .home-page #distribution-title{font-size:44px}
  .contact-page .contact-panel{padding-right:28px;padding-left:28px}
  .contact-page .contact-panel h2{font-size:clamp(31px,9.8vw,38px)}
}
