/* One hierarchy for both business lines and all pages. */
:root {
  --type-page: clamp(36px, 3.6vw, 52px);
  --type-section: clamp(28px, 2.5vw, 36px);
  --type-card: 22px;
  --type-body: 15px;
  --type-secondary: 13px;
}
body {font-family:"Segoe UI","Microsoft YaHei UI","Microsoft YaHei","PingFang SC",sans-serif;font-size:var(--type-body);font-weight:400;line-height:1.75}
h1,h2,h3 {letter-spacing:0;text-wrap:pretty}
h1 {font-size:var(--type-page);font-weight:600;line-height:1.3;margin-bottom:24px}
h2 {font-size:var(--type-section);font-weight:500;line-height:1.4;margin-bottom:20px}
h3 {font-size:var(--type-card);font-weight:500;line-height:1.5;margin-bottom:14px}
p {font-size:var(--type-body);line-height:1.85;margin-bottom:20px}
.eyebrow {font-size:11px;font-weight:500;line-height:1.5;letter-spacing:1.8px;margin-bottom:16px;color:#788697}
.section,.home-products {padding-top:96px;padding-bottom:96px}
.section-head,.section-intro {max-width:800px;margin-bottom:44px}
.section-head>p:last-child,.section-intro>p:last-child {font-size:15px;line-height:1.85;max-width:700px}
.section-intro h2,.software-feature h2,.home-manufacturing h2,.home-cta h2 {font-size:var(--type-section);font-weight:500;line-height:1.4}
.section-intro h2 {margin-bottom:18px}
.nav {font-weight:500;font-size:14px}
.brand strong {font-size:18px;font-weight:600}
.brand small {font-size:10px;font-weight:400}
.company-hero .hero-caption h1,.company-hero .hero-caption h2 {font-size:clamp(40px,4vw,58px);font-weight:600;line-height:1.28;letter-spacing:0;margin-bottom:24px}
.company-hero .hero-caption .eyebrow {font-size:11px;font-weight:400;letter-spacing:2px;margin-bottom:22px}
.company-hero .hero-description {font-size:16px;line-height:1.85;max-width:570px;margin-bottom:30px;color:#d2dbe6}
.company-hero .hero-caption a {font-size:14px;font-weight:400;min-height:46px;padding:11px 24px}
.hero-capabilities {font-size:12px;font-weight:400;letter-spacing:0}
.business-card {padding:38px}
.business-card-heading span {font-size:11px;font-weight:400;letter-spacing:1.5px}
.business-card-heading h3 {font-size:28px;font-weight:500;line-height:1.4;margin:16px 0}
.business-card>p,.business-card ul {font-size:14px;line-height:1.85}
.business-card ul {padding-top:12px;padding-bottom:28px;gap:12px 24px}
.business-link {font-size:14px;font-weight:500;padding:8px 0}
.software-feature p {font-size:15px;line-height:1.85;max-width:600px}
.software-services strong {font-size:22px;font-weight:500}
.software-services span {font-size:13px;line-height:1.65}
.software-feature figcaption {font-size:12px;line-height:1.7}
.home-section-heading {align-items:flex-end;margin-bottom:36px}
.home-section-heading h2 {font-size:var(--type-section);font-weight:500;line-height:1.4}
.home-section-heading .eyebrow {margin-bottom:14px}
.wearable-card small {font-size:10px;font-weight:400;letter-spacing:1px;line-height:1.5}
.wearable-card h3 {font-size:19px;font-weight:500;line-height:1.5;margin:12px 0 10px}
.wearable-card p {font-size:13px;line-height:1.8;margin-bottom:18px}
.wearable-card>span,.text-link {font-size:13px;font-weight:400}
.connection-flow h3 {font-size:21px;font-weight:500;line-height:1.4;margin:22px 0 14px}
.connection-flow p {font-size:14px;line-height:1.8}
.connection-flow>li>span {font-size:12px;font-weight:400}
.home-manufacturing p,.home-cta p {font-size:15px;line-height:1.85}
.factory-numbers strong {font-size:30px;font-weight:500;line-height:1.3}
.factory-numbers span {font-size:12px;line-height:1.7}
.software-page-banner h1 {font-size:var(--type-page);font-weight:600;line-height:1.35}
.software-page-banner p {font-size:16px;line-height:1.85}
.product-detail-main h1 {font-size:36px;font-weight:600;line-height:1.4}
.product-card h3 {font-size:20px;font-weight:500;line-height:1.5}
.product-card p {font-size:14px}
.catalog-header h2 {font-size:28px;font-weight:500}
.steps strong,.case-grid article>strong,.photo-gallery figcaption {font-size:19px;font-weight:500;line-height:1.5}
.footer-top strong {font-size:20px;font-weight:500}
.footer-top p {font-size:13px;line-height:1.8}
.footer-columns strong {font-size:14px;font-weight:500}
.footer-columns a {font-size:13px;line-height:1.8}
.footer-bottom {font-size:12px}
.contact h1 {font-size:40px;line-height:1.4;max-width:600px}
.company-hero .hero-slide.has-video .hero-caption h1,.company-hero .hero-slide.has-video .hero-caption h2 {font-weight:600}
@media(max-width:1200px) {
  .brand strong {font-size:16px}
  .company-hero .hero-caption h1,.company-hero .hero-caption h2 {font-size:44px}
  .company-hero .hero-description {font-size:15px}
}
@media(max-width:980px) {
  .section,.home-products {padding-top:72px;padding-bottom:72px}
  .company-hero .hero-slide.has-video .hero-caption h1,.company-hero .hero-slide.has-video .hero-caption h2 {font-size:38px;line-height:1.3;max-width:650px}
  .company-hero .hero-slide.has-video .hero-description {font-size:15px;max-width:610px}
  .business-card {padding:30px}
  .business-card-heading h3 {font-size:26px}
  .business-card ul {grid-template-columns:1fr;font-size:14px}
  .wearable-card h3 {font-size:20px}
  .wearable-card p {font-size:14px}
  .home-manufacturing>div {padding:40px 8%}
}
@media(max-width:640px) {
  :root {--type-page:32px;--type-section:27px;--type-card:20px;--type-body:14px}
  .section,.home-products {padding:56px 22px}
  .section-head,.section-intro {margin-bottom:30px}
  .section-head>p:last-child,.section-intro>p:last-child {font-size:14px;line-height:1.8}
  .eyebrow {font-size:10px;letter-spacing:1.3px;margin-bottom:14px}
  .brand strong {font-size:14px}
  .company-hero {min-height:800px;max-height:1000px}
  .company-hero .hero-caption h1,.company-hero .hero-caption h2,.company-hero .hero-slide.has-video .hero-caption h1,.company-hero .hero-slide.has-video .hero-caption h2 {font-size:31px;font-weight:600;line-height:1.35;margin-bottom:19px}
  .company-hero .hero-caption .eyebrow {font-size:10px;letter-spacing:1px;line-height:1.6;margin-bottom:18px}
  .company-hero .hero-description,.company-hero .hero-slide.has-video .hero-description {font-size:14px;line-height:1.8;margin-bottom:24px}
  .company-hero .hero-caption a {font-size:13px;min-width:135px;min-height:44px;padding:10px 15px}
  .company-hero .hero-slide.has-video .hero-caption {top:32px}
  .company-hero .hero-slide.has-video .hero-video {height:38%;bottom:65px}
  .company-hero .hero-slide.has-video {display:flex;flex-direction:column}
  .company-hero .hero-slide.has-video .hero-caption {position:relative;inset:auto;transform:none;margin:32px 24px 0;width:auto;order:1}
  .company-hero .hero-slide.has-video .hero-video {position:relative;inset:auto;margin:30px 0 0;order:2;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;flex-shrink:0}
  .company-hero [data-tone=wearable].has-video .hero-video {width:calc(100% - 48px);height:auto;aspect-ratio:1;margin:26px 24px 0}
  .company-hero .hero-slide.has-video:after {background:none}
  .business-card {padding:28px 24px}
  .business-card-heading h3 {font-size:25px;margin:14px 0 16px}
  .business-card>p {font-size:14px;line-height:1.8}
  .business-card ul {font-size:13px;gap:10px;grid-template-columns:1fr;padding-bottom:22px}
  .business-link {font-size:13px}
  .software-feature p {font-size:14px}
  .software-services {margin:28px 0;gap:24px 18px}
  .software-services strong {font-size:21px}
  .software-services span {font-size:12px}
  .home-section-heading {gap:16px;margin-bottom:28px;align-items:center}
  .home-section-heading h2 {font-size:26px}
  .home-section-heading .eyebrow {font-size:9px;letter-spacing:.8px}
  .home-section-heading .text-link {font-size:12px}
  .wearable-card small {font-size:9px;letter-spacing:.3px}
  .wearable-card h3 {font-size:17px;line-height:1.5;margin:10px 0}
  .wearable-card p {font-size:12px;line-height:1.75}
  .wearable-card>span {font-size:12px}
  .connection-flow h3 {font-size:19px}
  .connection-flow p {font-size:13px;line-height:1.8}
  .home-manufacturing p,.home-cta p {font-size:14px}
  .home-cta {padding:58px 24px}
  .factory-numbers strong {font-size:28px}
  .factory-numbers span {font-size:11px}
  .software-page-banner h1 {font-size:32px;line-height:1.4}
  .software-page-banner p {font-size:14px}
  .product-detail-main h1 {font-size:28px;line-height:1.4}
  .catalog-header {align-items:flex-start}
  .catalog-header h2 {font-size:24px}
  .contact h1 {font-size:30px;line-height:1.45}
  .footer-top strong {font-size:18px}
  .footer-columns a {font-size:12px}
}
@media(max-width:360px) {
  .company-hero .hero-caption h1,.company-hero .hero-caption h2,.company-hero .hero-slide.has-video .hero-caption h1,.company-hero .hero-slide.has-video .hero-caption h2 {font-size:28px}
  .company-hero .hero-caption a {min-width:125px;font-size:12px}
}
