/* User-approved reference: https://maydetea.com/blogs/journal, 2026-10-15.
   Proza Libre + Chinese sans-serif fallback; preserve component layout and colors. */
@font-face { font-family:"Proza Libre"; src:url("/assets/fonts/proza-libre/regular.woff2") format("woff2"); font-style:normal; font-weight:400; font-display:swap; }
@font-face { font-family:"Proza Libre"; src:url("/assets/fonts/proza-libre/bold.woff2") format("woff2"); font-style:normal; font-weight:700; font-display:swap; }
@font-face { font-family:"Proza Libre"; src:url("/assets/fonts/proza-libre/italic.woff2") format("woff2"); font-style:italic; font-weight:400; font-display:swap; }
:root {
 --site-font:"Proza Libre", "PingFang SC", "Noto Sans CJK SC", "Microsoft YaHei", sans-serif;
 --site-h1:calc(clamp(1.375rem, 1.1463414634rem + .9756097561vw, 2rem) * 1.2);
 --site-h2:calc(clamp(1.25rem, 1.0670731707rem + .7804878049vw, 1.75rem) * 1.2);
 --site-h3:calc(clamp(1.125rem, 1.0335365854rem + .3902439024vw, 1.375rem) * 1.2);
 --site-h4:calc(clamp(1rem, .9542682927rem + .1951219512vw, 1.125rem) * 1.2);
 --heading-font-family:var(--site-font); --text-font-family:var(--site-font);
 --heading-font-weight:400; --text-font-weight:400;
 --heading-letter-spacing:.03em; --text-letter-spacing:0em;
}
html { font-size:16px; }
/* No rubber-band scroll past the page ends: on a Mac it showed a cream strip under the dark footer.
   Root only: pages whose body is its own scroll box (overflow-x:hidden) would otherwise stop the wheel. */
html { overscroll-behavior-y:none; }
html body { font-family:var(--site-font)!important; font-size:14px!important; font-weight:400!important; line-height:1.65!important; letter-spacing:0!important; }
/* Central typography intentionally wins over the different legacy page families. */
html body :where(*):not(svg):not(svg *) {
 font-family:var(--site-font)!important; font-weight:400!important;
 font-style:normal!important; letter-spacing:0!important; text-transform:none!important;
}
html body :is(div,span,a,section,article,aside,header,footer,nav,form,fieldset) { font-size:inherit!important; line-height:inherit!important; }
html body :is(p,li,dt,dd,blockquote,td,th) { font-size:14px!important; line-height:1.65!important; }
html body :is(h1,h2,h3,h4,h5,h6,[role="heading"],.h1,.h2,.h3,.h4,.h5,.h6) { letter-spacing:.03em!important; font-weight:400!important; overflow-wrap:break-word; }
html body :is(h1,.h1) { font-size:var(--site-h1)!important; line-height:1.5!important; }
html body :is(h2,.h2) { font-size:var(--site-h2)!important; line-height:1.5!important; }
html body :is(h3,.h3) { font-size:var(--site-h3)!important; line-height:1.6!important; }
html body :is(h4,.h4,.guide-title,.gm-market-card-title) { font-size:var(--site-h4)!important; line-height:1.6!important; letter-spacing:.03em!important; }
html body :is(h5,.h5) { font-size:16.8px!important; line-height:1.7!important; }
html body :is(h6,.h6) { font-size:14.4px!important; line-height:1.7!important; }
html body :is(button,input,select,textarea,label,legend,.bd-option legend,.bd-field>span) { font-size:13px!important; line-height:1.65!important; }
html body :is(button,.button,.bd-button,input[type="submit"]) { letter-spacing:.07em!important; }
html body :is(small,figcaption,.bd-reference-note,.bd-breadcrumb,.section-kicker,[class*="eyebrow"],[class*="kicker"]) { font-size:12px!important; line-height:1.65!important; }
html body :is(strong,b) { font-weight:700!important; }
html body :is(em,i) { font-style:italic!important; }
html body .topbar.v3-site-header :is(.nav-link,.language-control,.language-current,.language-option,.nav-submenu-link) { font-size:14px!important; line-height:1.65!important; }
html body .topbar.v3-site-header .brand-copy strong { font-size:18px!important; font-weight:400!important; letter-spacing:.03em!important; }
html body .topbar.v3-site-header .brand-copy small { font-size:10px!important; }
html body .bd-forest-cert { font-size:16px!important; line-height:1.65!important; letter-spacing:.03em!important; }
html body .bd-forest-cert svg { width:30px; height:28px; }
@media(min-width:1150px) {
 html body :is(h1,.h1) { line-height:1.3!important; }
 html body :is(h2,.h2) { line-height:1.4!important; }
 html body :is(h3,.h3) { line-height:1.5!important; }
}
@media(max-width:760px) {
 html body .bd-forest-cert { font-size:14px!important; }
 html body .bd-forest-cert svg { width:26px; height:24px; }
}
@media print {
 html body :is(.bd-document,.inquiry-document,.inquiry-document *) { font-size:inherit!important; }
}

/* Compact shared footer hierarchy; keep page headings and header navigation intact. */
html body .v3-site-footer nav h3 {
  font-size: 16px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
}
html body .v3-site-footer nav a {
  font-size: 13px !important;
  line-height: 1.8 !important;
}
/* Arrow text links ("开始配置 →", "了解更多 →"): no underline at rest; the line appears on hover or keyboard focus. */
html body :is(.hs-link,.cap-link,.cap-row-link,.cap-service-link,.cp-text-link,.ped-text-link,.pil-text-link,.pc-view-link,.is-text-link,.qc-text-link,.co-text-link,.oem-text-link,.task-link,.about-overview-text-link,.br-text-link,.bd-section-head>a){border-bottom-color:transparent!important;text-decoration-line:underline!important;text-decoration-color:transparent!important;text-underline-offset:6px;transition:border-color .25s ease,text-decoration-color .25s ease,color .25s ease}
html body :is(.hs-link,.cap-link,.cap-row-link,.cap-service-link,.cp-text-link,.ped-text-link,.pil-text-link,.pc-view-link,.is-text-link,.qc-text-link,.co-text-link,.oem-text-link,.task-link,.about-overview-text-link,.br-text-link,.bd-section-head>a):is(:hover,:focus-visible){border-bottom-color:currentColor!important;text-decoration-color:transparent!important}
html body :is(.about-overview-text-link,.br-text-link,.bd-section-head>a):is(:hover,:focus-visible){text-decoration-color:currentColor!important}
