/* HZTH typography and responsive layout repair — 20261012 */
:root{--headline-size:clamp(28px,3.2vw,46px)}
.page-hero h1{font-size:var(--headline-size)!important;line-height:1.25!important;letter-spacing:-.02em;max-width:100%;text-wrap:balance;word-break:normal;overflow-wrap:break-word;line-break:strict}
.headline-line{display:block;white-space:nowrap}
.page-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(28px,4vw,54px)}
.page-hero-grid>*,.split>*,.advantage-grid>*,.section-head>*,.cta>*,.foot-grid>*{min-width:0}
.split{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr)}
.advantage-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr)}
h2{font-size:clamp(26px,2.8vw,40px);line-height:1.3;text-wrap:balance;line-break:strict;word-break:normal}
h3{line-height:1.45;text-wrap:balance;line-break:strict;word-break:normal}
.cards{grid-template-columns:repeat(4,minmax(0,1fr))}
.service-grid,.contact-grid,.advantage-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
.process-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.news-grid{grid-template-columns:minmax(0,1.25fr) repeat(2,minmax(0,.75fr))}
.insight-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.card,.service-block,.mini-card,.news,.insight-card,.contact-card,.step{min-width:0}
.feature:has(>strong){display:block}
.feature>strong{display:block;margin-bottom:6px}
.card h3,.service-block h3,.news h3,.insight-card h3{font-size:clamp(18px,1.5vw,21px);overflow-wrap:break-word}
.contact-card strong,.contact-card a,.article-body{overflow-wrap:anywhere}
.article-body h2,.article-body h3{max-width:100%;text-wrap:balance}
.article-body img{max-width:100%;height:auto}
.article-body table{display:block;max-width:100%;overflow-x:auto}
.page-hero .visual-card img{width:100%;height:auto;object-fit:cover}
.nav .brand{min-width:0;flex-shrink:1}
.brand-text{min-width:0}
footer .footer-brand{min-width:0}
footer .footer-brand>div{min-width:0}
footer .footer-brand strong{text-wrap:balance;line-height:1.5}
footer .footer-logo{flex-shrink:0}
@media(min-width:1001px) and (max-width:1150px){
  .brand-cn{font-size:13px}.brand-en{font-size:8px;letter-spacing:.07em}
  nav ul{gap:14px;font-size:13px}.nav{gap:12px}.nav>.btn{padding:0 18px}
}
@media(max-width:1000px){
  .page-hero-grid,.split,.advantage-grid{grid-template-columns:minmax(0,1fr)}
  .page-hero h1{max-width:22em}
  .cards,.process-grid,.service-grid,.contact-grid,.advantage-cards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .news-grid{grid-template-columns:minmax(0,1fr)}
  .insight-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:650px){
  :root{--headline-size:clamp(26px,6vw,34px)}
  .page-hero h1{margin-bottom:20px}
  .page-hero-grid{gap:30px}
  .cards,.process-grid,.service-grid,.contact-grid,.advantage-cards,.insight-grid{grid-template-columns:minmax(0,1fr)}
  .section-head{gap:18px}.cta{gap:22px}
  .brand-cn{white-space:normal;line-height:1.4;font-size:12px;text-wrap:balance}
  .brand-logo{flex:0 0 40px;width:40px;height:40px}
  .brand{gap:8px;flex:1}.menu-btn{flex:0 0 36px;padding:4px}
  .nav{gap:8px}.brand-en{display:none}
  .contact-card strong{font-size:20px}
  footer .footer-brand strong{font-size:15px!important}
}
@media(max-width:359px){
  :root{--headline-size:25px}
  h2{font-size:24px}.brand-cn{font-size:11px}
}
