/* Chinese typography overrides.
   Chinese glyphs have greater visual density than Latin letterforms, so
   display headings use a quieter scale and more generous line-height. */

html[lang="zh"] .huge{
  font-size:clamp(48px,6.5vw,88px);
  line-height:1.08;
  letter-spacing:-.015em;
}

html[lang="zh"] .h-xl{
  font-size:clamp(36px,4.2vw,56px);
  line-height:1.12;
  letter-spacing:-.01em;
}

html[lang="zh"] .h-lg{
  font-size:clamp(28px,2.6vw,36px);
  line-height:1.16;
  letter-spacing:-.008em;
}

html[lang="zh"] .arthead h1{
  font-size:clamp(34px,3.8vw,52px);
  line-height:1.16;
  letter-spacing:-.01em;
}

html[lang="zh"] .pm-hero h1{
  font-size:clamp(48px,6.2vw,84px);
  line-height:1.1;
  letter-spacing:-.015em;
}

body[data-page="zh"] .hero h1{
  font-size:clamp(48px,6.5vw,88px);
  line-height:1.08;
  letter-spacing:-.015em;
  max-width:10em;
}

html[lang="zh"] body[data-page="zh"] .hero-row{
  grid-template-columns:1.347fr 1fr;
}

body[data-page="zh"] #services .sec-head h2{
  font-size:clamp(34px,4.2vw,56px);
  line-height:1.12;
  letter-spacing:-.01em;
}

body[data-page="zh"] .hero-side .hs-title{
  font-size:clamp(20px,1.7vw,26px)!important;
  line-height:1.24!important;
  letter-spacing:-.01em!important;
}

body[data-page="zh"] .hero-side .hs-lab,
body[data-page="zh"] .tag{
  font-size:12px;
  line-height:1.55;
}

body[data-page="zh"] .cell h3{
  line-height:1.25;
}

body[data-page="zh"] .cell p,
body[data-page="zh"] .proc p{
  font-size:15px;
  line-height:1.7;
}

body[data-page="zh"] .proc h3{
  font-size:22px;
  line-height:1.3;
}

body[data-page="zh"] .cta-row{
  margin-top:44px;
}

body[data-page="zh"] .cta .btn{
  font-size:13px;
}

@media(max-width:980px){
  html[lang="zh"] body[data-page="zh"] .hero-row{
    grid-template-columns:1fr;
  }

  html[lang="zh"] .huge{
    font-size:clamp(44px,8vw,68px);
  }

  html[lang="zh"] .h-xl{
    font-size:clamp(34px,5.8vw,48px);
  }

  html[lang="zh"] .h-lg{
    font-size:clamp(27px,4vw,34px);
  }

  html[lang="zh"] .arthead h1{
    font-size:clamp(34px,5.5vw,46px);
  }

  html[lang="zh"] .pm-hero h1{
    font-size:clamp(44px,8vw,66px);
  }

  body[data-page="zh"] .hero h1{
    font-size:clamp(46px,8.5vw,72px);
    max-width:11em;
  }

  body[data-page="zh"] #services .sec-head h2{
    font-size:clamp(34px,6vw,50px);
  }

}

@media(max-width:620px){
  html[lang="zh"] .huge{
    font-size:clamp(38px,11vw,48px);
    line-height:1.12;
  }

  html[lang="zh"] .h-xl{
    font-size:clamp(30px,8.8vw,38px);
    line-height:1.16;
  }

  html[lang="zh"] .h-lg{
    font-size:clamp(26px,7vw,31px);
    line-height:1.2;
  }

  html[lang="zh"] .arthead h1{
    font-size:clamp(30px,8.5vw,38px);
    line-height:1.2;
  }

  html[lang="zh"] .pm-hero h1{
    font-size:clamp(38px,11vw,48px);
    line-height:1.14;
  }

  body[data-page="zh"] .hero h1{
    font-size:clamp(40px,12vw,52px);
    line-height:1.12;
  }

  body[data-page="zh"] #services .sec-head h2{
    font-size:clamp(32px,9.5vw,40px);
    line-height:1.16;
  }

  body[data-page="zh"] .hero-side .hs-title{
    font-size:20px!important;
    line-height:1.3!important;
  }

  body[data-page="zh"] .hero-top .tag,
  body[data-page="zh"] .logo-head .tag{
    font-size:11px;
    line-height:1.55;
  }

  body[data-page="zh"] .hero h1{
    max-width:8.5em;
  }

  body[data-page="zh"] .hero-sub{
    font-size:17px;
    line-height:1.7;
    max-width:22em;
  }

  body[data-page="zh"] .strip-row .si{
    font-size:12px;
    letter-spacing:.04em;
  }

  body[data-page="zh"] .cats button{
    font-size:12px;
    letter-spacing:.04em;
  }

  body[data-page="zh"] .cell p,
  body[data-page="zh"] .proc p{
    font-size:14.5px;
    line-height:1.72;
  }

  body[data-page="zh"] .proc h3{
    font-size:21px;
  }

  body[data-page="zh"] .cta-row{
    margin-top:34px;
  }
}
