/* ZX visual system — presentation only; all content and interactions stay in place.
   Paper #f8faf7, canvas #ffffff, ink #183c30, text #344d41,
   secondary #5e7065, rule #dce5dc, accent #dcebc4.
   One system-font family, left alignment, restrained surfaces and readable type. */
:root {
  --bg:#f8faf7;
  --ink:#183c30;
  --muted:#5e7065;
  --line:#dce5dc;
  --lime:#dcebc4;
  --page-width:1240px;
  --page-gutter:clamp(24px,4.8vw,64px);
  --type-body:16px;
  --type-small:13px;
  --type-label:12px;
  --type-h1:clamp(36px,4.2vw,56px);
  --type-h2:clamp(27px,2.6vw,34px);
}
body {
  font-family:-apple-system,BlinkMacSystemFont,"PingFang SC","Hiragino Sans GB","Microsoft YaHei",sans-serif;
  font-size:var(--type-body);
  line-height:1.75;
  color:var(--ink);
  background:var(--bg);
  text-rendering:optimizeLegibility;
}
header,main,footer {max-width:var(--page-width)}
header {
  height:88px;
  padding-inline:var(--page-gutter);
  gap:24px;
  background:var(--bg);
}
.brand {font-size:24px;letter-spacing:-.5px;font-weight:700}
.brand small {font-size:10px;letter-spacing:1.6px;margin-top:0;line-height:1.4}
.brand-icon {width:42px;height:42px;border-radius:11px;font-size:35px}
nav {gap:24px}
nav a {font-size:15px;line-height:1.5;padding:15px 0;color:var(--muted)}
nav a.active:after {width:16px;height:2px;border-radius:2px;left:calc(50% - 8px);bottom:5px}
#language {font-size:13px;min-height:40px;padding:8px 15px;background:white;border-color:var(--line)}
#menu {min-width:40px;min-height:40px}
.eyebrow {font-size:12px;font-weight:600;letter-spacing:1.2px;line-height:1.6;color:#61745f}
h1,h2,h3,h4 {text-wrap:pretty}
h1 {font-weight:700;letter-spacing:-1.8px;line-height:1.3}
h2 {font-size:var(--type-h2);font-weight:650;line-height:1.45;letter-spacing:-.8px}
h3 {font-size:21px;font-weight:600;line-height:1.5;letter-spacing:-.2px}
p {text-wrap:pretty}
.button {font-size:15px;line-height:1.4;min-height:48px;padding:14px 22px;border-radius:7px;gap:24px;font-weight:600}
.button:hover {transform:none;background:#2c5341}
.button.light:hover {background:#cfe2b3}
.button.home-secondary:hover {background:#edf3e7}
.text-link {font-size:14px;line-height:1.7;gap:18px}
:where(a,button,summary):focus-visible {outline:3px solid #6b8c48;outline-offset:5px;border-radius:4px}
.home-gradient {color:#496b3c;background:none;-webkit-text-fill-color:currentColor}
.emphasis:after {height:9px;bottom:5px;transform:none;border-radius:2px;background:#dcebc4}
/* The home page keeps its concise three-section structure. */
.home-hero {padding:80px var(--page-gutter) 38px;background-image:none;min-height:0}
.home-hero:after {display:none}
.home-hero .hero-copy {max-width:980px}
.home-badge {padding:0;border:0;background:none;border-radius:0;font-size:12px;letter-spacing:1px}
.home-hero h1,html[lang=en] .home-hero h1 {
  font-size:var(--type-h1);line-height:1.4;letter-spacing:-1.7px;margin:24px 0;
}
.home-hero .hero-description {font-size:17px;line-height:1.95;max-width:760px;color:var(--muted)}
.home-hero .hero-actions {gap:12px;margin-top:28px}
.home-hero-foot {margin-top:40px;font-size:11px;letter-spacing:1.5px;color:#788572}
.home-hero-foot a {width:36px;height:36px;font-size:21px;background:white}
#panel-home .directions {padding:52px var(--page-gutter) 64px}
#panel-home .section-heading {gap:32px;align-items:end;margin-bottom:28px}
#panel-home .section-heading h2 {font-size:30px;margin-top:12px}
#panel-home .section-heading p {font-size:15px;line-height:1.9;max-width:320px}
#panel-home .direction-grid {gap:16px}
#panel-home .direction-card {padding:27px 23px;border:1px solid var(--line);border-radius:10px;background:white;transition:border-color .18s,background .18s}
#panel-home .direction-card:hover {transform:none;border-color:#a2b795;background:#f7faf2}
#panel-home .direction-card h3 {font-size:21px;margin:22px 0 12px}
#panel-home .direction-card p {font-size:15px;line-height:1.9;min-height:0}
#panel-home .direction-card .card-bottom {font-size:12px;margin-top:26px;letter-spacing:0}
.card-num {font-size:11px;color:#6f8065}
.home-story {padding:60px var(--page-gutter) 64px;background:#edf3e9}
.home-story .story-inner {grid-template-columns:.9fr 1.1fr;column-gap:8%;align-items:start}
.home-story .story-inner>h2 {font-size:32px;line-height:1.55;margin:18px 0}
.home-story .story-inner p {font-size:16px;line-height:2;max-width:38em;color:var(--muted);margin-bottom:20px}
.home-story .story-inner .story-ending {font-size:16px;font-weight:500;color:#496b3c}
.home-story .story-inner>.text-link {margin-top:12px}
/* Consistent page widths and hero scale. */
.edu-page,.enterprise-page,.incubation-page {padding-inline:var(--page-gutter)}
.edu-hero,.inc-hero {padding-block:64px;gap:48px}
.enterprise-hero {padding-block:64px;max-width:990px}
.edu-hero h1,.inc-hero h1,.enterprise-hero h1,
html[lang=en] .inc-hero h1,html[lang=en] .enterprise-hero h1 {
  font-size:var(--type-h1);font-weight:700;line-height:1.4;letter-spacing:-1.5px;margin:22px 0;
}
.edu-hero>div>p,.enterprise-hero>p,.inc-hero p {font-size:17px;line-height:1.95;max-width:40em}
.edu-audience {font-size:14px;margin:24px 0;color:#556b4a}
.edu-status {font-size:12px;line-height:1.9;margin-top:18px;color:var(--muted)}
.section-heading p,.enterprise-sub,.edu-lead {font-size:16px;line-height:1.9}
.section-heading {gap:28px}
.edu-section,.enterprise-block {padding-block:52px}
.section-note {font-size:13px;line-height:1.8;margin-top:24px}
/* Maker and learning diagrams remain purposeful, with less decorative weight. */
.maker-workbench {padding:30px;border-radius:12px;background-color:#edf3e6;background-size:22px 22px;border-color:#d2dfc6}
.maker-workbench h2 {font-size:26px;margin-top:26px}
.maker-workbench>p {font-size:15px;line-height:1.8}
.workbench-top {font-size:11px;letter-spacing:1px;line-height:1.5}
.workbench-steps span {font-size:14px}
.workbench-steps small,.lab-caption {font-size:11px}
.logic-chip {box-shadow:3px 4px 0 #d0dcc4;transform:none}
.learning-notebook {padding:28px 30px 30px 38px;border-radius:10px;background:#f0f0e4;box-shadow:none;border-color:#dde0d0}
.notebook-label {font-size:13px;margin-top:28px}
.notebook-quote {font-size:clamp(23px,2.4vw,30px);line-height:1.7;letter-spacing:0}
.notebook-row {gap:16px;padding-top:16px;margin-top:16px}
.notebook-row>span {font-size:11px}
.notebook-row b {font-size:14px;font-weight:600}
.notebook-row p {font-size:14px;line-height:1.8}
.edu-track-grid,.edu-card-grid,.enterprise-products {gap:24px}
.edu-track-grid article,.edu-module,.enterprise-products article {padding:28px;border-radius:10px;background:white;border-color:var(--line)}
.edu-track-grid h3,.enterprise-products h3 {font-size:22px;margin:22px 0 12px}
.edu-track-grid article>small,.enterprise-products article>span {font-size:12px;letter-spacing:.6px;color:#6c8059}
.edu-track-grid p,.edu-card-grid p,.edu-module>p,.enterprise-products p,.enterprise-fit p {font-size:16px;line-height:1.95}
.edu-track-grid article>div {font-size:14px;line-height:1.85;margin-top:24px;padding-top:18px}
.edu-card-grid h3,.enterprise-fit h3 {font-size:20px;line-height:1.6;margin-bottom:12px}
.edu-card-grid article {padding-right:24px}
.edu-cycle,.edu-support,.edu-evidence,.enterprise-areas,.enterprise-knowledge {border-radius:10px;padding:36px}
.edu-cycle h2,.edu-support h2,.edu-evidence h2,.enterprise-infra h2 {font-size:30px}
.edu-cycle-grid h3 {font-size:20px}
.edu-cycle-grid p {font-size:15px;line-height:1.95;color:#d0dbca}
.edu-cycle-grid article>span,.stage-index {font-size:24px;line-height:1.4;font-weight:500}
.edu-evidence p,.edu-evidence li {font-size:15px;line-height:1.9}
.module-heading small,.module-heading>span {font-size:12px;line-height:1.6;letter-spacing:.3px}
.edu-module h3 {font-size:27px;margin:24px 0 12px}
.edu-module>strong {font-size:16px;line-height:1.8;font-weight:500}
.tag-list {gap:8px}
.tag-list span {font-size:12px;padding:5px 10px;line-height:1.5;border-radius:4px}
.edu-module summary {font-size:15px;line-height:1.6;padding-block:18px;min-height:48px}
.edu-module details li,.edu-module details p,.module-outcome p {font-size:15px;line-height:1.9}
.module-outcome small {font-size:12px;color:#6c8059}
.edu-support-steps>span {font-size:14px;padding:15px}
.edu-support-steps small {font-size:11px;color:#6c8059}
.edu-ending h2 {font-size:30px}
.edu-ending p {font-size:16px;line-height:1.9}
/* Enterprise: scannable diagnostics and readable delivery details. */
.enterprise-contrast article {padding:28px;border-radius:10px;background:#eff2eb}
.enterprise-contrast .approach {background:#e9f1e0}
.enterprise-contrast h3 {font-size:21px}
.enterprise-contrast ul {font-size:16px;line-height:2.1}
.enterprise-stages {gap:14px}
.enterprise-stages article {padding:26px 28px;border-radius:9px;background:white;gap:28px}
.enterprise-stages h3 {font-size:22px;line-height:1.5}
.enterprise-stages p {font-size:16px;line-height:1.9;margin-block:10px}
.enterprise-stages small {font-size:13px;line-height:1.8;color:#637753}
.enterprise-areas h2 {font-size:27px}
.enterprise-areas span {font-size:14px;padding:9px 14px;line-height:1.7}
.enterprise-handover {padding:26px;margin-top:28px}
.enterprise-handover h3 {font-size:21px;line-height:1.6}
.enterprise-handover p,.enterprise-knowledge p {font-size:16px;line-height:1.95}
.enterprise-infra {padding:36px;border-radius:10px;gap:40px}
.enterprise-infra p {font-size:16px;line-height:1.9;color:#cfddc6}
.infra-grid>div {font-size:15px;line-height:1.8;padding:18px}
.infra-grid span {font-size:11px}
/* Product collection: retain shared tracks for exact alignment. */
.inc-hero p {margin-bottom:28px}
.inc-emblem {background:#edf3e5;border-radius:12px;height:340px}
.emblem-label,.emblem-bottom {font-size:11px;letter-spacing:1px}
.emblem-chip {font-size:11px;letter-spacing:.5px;background:#fdfef9}
.inc-products,.inc-community {padding-block:52px}
.product-grid {column-gap:24px;row-gap:28px;grid-template-columns:repeat(3,minmax(0,1fr))}
.collaboration-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
.product-card {border:1px solid var(--line);background:white;border-radius:12px}
.paw-product {border-color:#b9cca8}
.product-grid .product-cover {height:196px}
.product-card-body {padding:25px}
.product-cover>span,.product-cover>small {font-size:11px;letter-spacing:.8px}
.product-status {font-size:12px;line-height:1.5;padding:4px 8px;letter-spacing:0;border-color:#d9e3cf;color:#627650;background:#f5f8ef}
.product-grid .product-card h3 {font-size:22px;line-height:1.5;margin:20px 0 14px;font-weight:600}
.product-subtitle {font-size:13px;line-height:1.7;letter-spacing:.2px;margin-top:5px}
.product-card p {font-size:15px;line-height:1.95;color:var(--muted)}
.paw-tags {gap:7px;margin-block:20px}
.paw-tags>span {font-size:12px;line-height:1.5;padding:5px 9px;background:#eef4e7;color:#5d734e}
.experience-action {margin-top:12px}
.experience-link {font-size:14px;line-height:1.5;min-height:44px;padding:11px 18px;border-radius:6px;font-weight:500}
.product-grid .paw-details {margin-top:4px}
.paw-details summary {font-size:15px;line-height:1.6;min-height:48px;padding-top:18px}
.paw-features h4 {font-size:16px;line-height:1.7;margin-top:22px}
.paw-features p {font-size:15px;line-height:1.95}
.paw-features .paw-note {font-size:13px;line-height:1.9;color:var(--muted)}
.collaboration-partners {padding-top:30px;margin-top:40px}
.collaboration-partners>h3 {font-size:23px}
.partner-row {gap:18px;padding-block:18px}
.partner-row>span {font-size:12px}
.partner-row h4 {font-size:19px;line-height:1.6}
.partner-row p {font-size:15px;line-height:1.9}
.inc-invitation {padding:36px;border-radius:10px;gap:32px}
.inc-invitation h2,.enterprise-page .inc-invitation h2 {font-size:30px;line-height:1.5}
.inc-invitation p {font-size:16px;line-height:1.9;color:#cbd9c5}
/* About and footer stay calm and legible. */
.about {padding:64px var(--page-gutter);grid-template-columns:.7fr 1.3fr;gap:64px}
.about>div>h2 {font-size:var(--type-h1);line-height:1.4;letter-spacing:-1.2px}
.about-copy>p {font-size:17px;line-height:2;max-width:42em}
.about-values {font-size:14px;line-height:1.8;gap:20px;flex-wrap:wrap}
.about-values span {font-size:14px}
.contact-box {margin-top:32px;padding-top:30px}
.contact-box h3 {font-size:23px;line-height:1.5}
.contact-box>p {font-size:16px;line-height:1.9}
.contact-options {gap:30px}
.contact-wechat>strong {font-size:15px}
.contact-wechat>small,.contact-direct small {font-size:12px}
.contact-direct>div>span {font-size:13px}
.contact-direct strong {font-size:23px;letter-spacing:.5px}
.contact-direct a {font-size:16px;line-height:1.8}
footer {padding:32px var(--page-gutter);gap:24px;border-top:1px solid var(--line);font-size:12px}
footer>span,.icp-record {font-size:12px;line-height:1.8}
.footer-brand {font-size:20px}
.back-top {font-size:13px}
/* Responsive scale follows the content, without shrinking body copy to fit. */
@media(max-width:1100px) {
  header {gap:18px}
  nav {gap:17px}
  nav a {font-size:14px}
  .edu-hero,.inc-hero {gap:32px;grid-template-columns:1.1fr 1fr}
  .edu-hero h1,.inc-hero h1 {font-size:42px}
  .product-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
  .about {grid-template-columns:1fr;gap:30px}
  .contact-options {max-width:680px}
  #panel-home .direction-grid {grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:800px) {
  :root {--page-gutter:28px;--type-h1:40px;--type-h2:29px}
  header {height:76px}
  nav.open {padding:18px var(--page-gutter);gap:10px;background:var(--bg);border-bottom:1px solid var(--line)}
  nav.open a {font-size:16px;padding:12px 4px}
  .home-hero {padding-block:52px 32px}
  .home-hero h1,html[lang=en] .home-hero h1 {font-size:42px;letter-spacing:-1px}
  #panel-home .directions {padding-block:40px 44px}
  #panel-home .section-heading h2 {font-size:29px}
  .home-story {padding-block:44px}
  .home-story .story-inner {display:block;max-width:650px}
  .home-story .story-inner>h2 {font-size:29px}
  .home-story .story-inner>div[data-i18n="storyBody"] {margin-top:24px}
  .edu-hero,.inc-hero {grid-template-columns:1fr;padding-block:44px;gap:32px}
  .enterprise-hero {padding-block:44px}
  .edu-hero h1,.inc-hero h1,.enterprise-hero h1,html[lang=en] .inc-hero h1,html[lang=en] .enterprise-hero h1 {font-size:40px}
  .edu-hero>div>p,.enterprise-hero>p,.inc-hero p {font-size:16px}
  .maker-workbench,.learning-notebook {max-width:580px}
  .inc-emblem {height:285px}
  .edu-section,.enterprise-block,.inc-products,.inc-community {padding-block:40px}
  .edu-modules {grid-template-columns:1fr}
  .edu-card-grid.four-columns,.enterprise-fit {grid-template-columns:repeat(2,minmax(0,1fr))}
  .enterprise-products {grid-template-columns:repeat(2,minmax(0,1fr))}
  .enterprise-infra {grid-template-columns:1fr}
  .inc-invitation {display:block;padding:30px}
  .inc-invitation .button {margin-top:20px}
  .about {padding-block:44px}
}
@media(max-width:600px) {
  :root {--page-gutter:22px;--type-h1:34px;--type-h2:27px}
  body {font-size:15px}
  header {height:72px;gap:12px}
  .brand {font-size:22px}
  .brand-icon {width:37px;height:37px;font-size:32px}
  .header-actions {gap:8px}
  .eyebrow {font-size:11px;letter-spacing:.8px}
  .home-hero {padding-top:42px}
  .home-hero h1,html[lang=en] .home-hero h1 {font-size:34px;line-height:1.5;letter-spacing:-1px}
  .home-hero .hero-description {font-size:16px;line-height:1.9}
  .home-hero .hero-description br {display:none}
  .home-hero .hero-actions {flex-wrap:wrap;gap:10px}
  .home-hero-foot {margin-top:30px;font-size:10px}
  .button {font-size:14px;padding:13px 18px;gap:18px;min-height:46px}
  #panel-home .section-heading h2 {font-size:27px}
  #panel-home .direction-grid {grid-template-columns:1fr;gap:14px}
  #panel-home .direction-card {padding:25px}
  #panel-home .direction-card h3 {margin-top:18px;font-size:22px}
  #panel-home .direction-card .card-bottom {margin-top:18px}
  .home-story .story-inner>h2 {font-size:28px}
  .home-story .story-inner p {font-size:15px}
  .edu-hero h1,.inc-hero h1,.enterprise-hero h1,html[lang=en] .inc-hero h1,html[lang=en] .enterprise-hero h1 {font-size:34px;letter-spacing:-1px}
  .enterprise-contrast,.enterprise-products,.enterprise-fit,.edu-track-grid,.edu-card-grid,.edu-card-grid.four-columns,.edu-card-grid.two-columns,.edu-evidence {grid-template-columns:1fr}
  .edu-track-grid article,.edu-module,.enterprise-products article,.enterprise-contrast article {padding:25px}
  .edu-cycle,.edu-support,.edu-evidence,.enterprise-areas,.enterprise-knowledge,.enterprise-infra {padding:26px 23px}
  .edu-cycle h2,.edu-support h2,.edu-evidence h2,.enterprise-infra h2 {font-size:26px}
  .edu-cycle-grid {gap:22px}
  .edu-cycle-grid h3 {font-size:18px}
  .edu-cycle-grid p {font-size:14px}
  .edu-evidence {gap:16px}
  .enterprise-stages article {padding:24px 20px;gap:16px}
  .enterprise-stages h3 {font-size:21px}
  .enterprise-stages p {font-size:15px}
  .enterprise-stages small {font-size:12px}
  .product-grid,.collaboration-grid {grid-template-columns:1fr;row-gap:22px}
  .product-card-body {padding:25px}
  .product-grid .product-card h3 {font-size:23px}
  .product-card p {font-size:16px}
  .product-grid .product-cover {height:195px}
  .product-grid .paw-details {margin-top:22px}
  .collaboration-partners #partner-list {grid-template-columns:1fr;gap:0}
  .inc-invitation h2,.enterprise-page .inc-invitation h2,.edu-ending h2 {font-size:26px}
  .about>div>h2 {font-size:34px}
  .about-copy>p {font-size:16px}
  .contact-options {grid-template-columns:1fr;gap:16px}
  .contact-wechat {max-width:225px}
  footer {gap:20px;padding-block:28px}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto}
  *,*::before,*::after {animation-duration:.01ms!important;transition-duration:.01ms!important}
}
@media(max-width:800px) {
  nav {top:76px}
  nav.open a.active:after {left:4px;bottom:5px}
  html[lang=en] nav.open a {font-size:15px}
}
@media(max-width:600px) {
  nav {top:72px}
  html[lang=en] .brand {font-size:22px}
  .infra-grid {gap:10px}
}
