/* 视觉豁免:官网自有纸色、衬线、墨阶体系(2026-10-22 定) */
@font-face{font-family:SHP Sans;src:url('/assets/NotoSansSC.woff2') format('woff2');font-display:swap;font-weight:400}
@font-face{font-family:SHP Sans;src:url('/assets/NotoSansSC-Bold.woff2') format('woff2');font-display:swap;font-weight:600 900}
@font-face{font-family:SHP Serif;src:url('/assets/NotoSerifSC.woff2') format('woff2');font-display:swap;font-weight:400 800}
@font-face{font-family:Inter;src:url('/assets/Inter.woff2') format('woff2');font-display:swap;font-weight:400 600}
:root{--ink:#000;--paper:#faf9f6;--line:#d6d6ce;--muted:#62645e;--accent:#243d34;--tint:#e9ece3;--serif:"SHP Serif","Songti SC",serif;--sans:"SHP Sans",Inter,"PingFang SC",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.8 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:5px}img{max-width:100%;height:auto}button{cursor:pointer}button:disabled{cursor:default}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:var(--serif);font-weight:600;line-height:1.35}h3{font-weight:600;line-height:1.5}p{overflow-wrap:break-word}h1{font-size:clamp(40px,4.3vw,66px);letter-spacing:-.045em}h2{font-size:clamp(29px,3vw,42px);letter-spacing:-.025em}h3{font-size:23px}ul,ol{padding-left:1.4em}li+li{margin-top:8px}table{border-collapse:collapse}th,td{text-align:left;vertical-align:top}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:14px/1.8 ui-monospace,monospace}a,button{touch-action:manipulation}[hidden]{display:none!important}.wrap{max-width:1376px;padding-left:64px;padding-right:64px;margin:0 auto}.section{padding-top:96px;padding-bottom:96px}.section+.section.wrap{border-top:1px solid var(--line)}.tinted{background:#efefea}.section-label{font-size:14px;color:var(--muted);margin-bottom:20px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:32px}.section-intro{max-width:720px;color:var(--muted);margin-top:-8px;margin-bottom:40px}.actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:30px}.button{border:1px solid #000;background:#000;color:#fff;display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:11px 22px;font-size:15px;line-height:1.5;transition:background .15s,color .15s;border-radius:4px;font-weight:500}.button:hover{background:#333;border-color:#333}.button.secondary{background:transparent;color:#000;border-color:#a6a69f}.button.secondary:hover{background:#e8e8e1;border-color:#000}.text-link{font-size:15px;border:0;border-bottom:1px solid currentColor;line-height:1.8;padding:0 0 4px;background:none;display:inline-block}.text-link:hover{color:var(--accent)}.text-link span{margin-left:0}.skip-link{position:fixed;top:-70px;left:20px;z-index:100;background:#000;color:#fff;padding:12px}.skip-link:focus{top:12px}.site-header{border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30;background:rgba(250,249,246,.97)}.nav-inner{max-width:1536px;margin:auto;min-height:88px;padding:0 40px;display:flex;align-items:center;gap:34px}.brand{display:flex;align-items:center;gap:14px;flex-shrink:0}.brand img{width:auto;height:30px;object-fit:contain}.brand span{font-size:17px;font-weight:600;letter-spacing:.03em}.desktop-nav{margin-left:auto;display:flex;gap:30px;align-items:center}.desktop-nav a{font-size:14px;white-space:nowrap;padding:12px 0}.desktop-nav a:hover,.desktop-nav a[aria-current]{box-shadow:0 1px #000}.nav-actions{display:flex;align-items:center;gap:23px;font-size:14px}.model-entry{background:var(--ink);color:white;border-radius:4px;padding:9px 15px;white-space:nowrap}.model-entry span{padding-left:14px}.model-entry:hover,.model-entry.current{background:var(--accent)}.nav-contact{white-space:nowrap}.menu-toggle{display:none;width:40px;height:40px;border:0;background:none;padding:9px}.menu-toggle span{display:block;height:1px;background:#000;margin:7px 0}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}#mobile-nav{padding:12px 24px 24px;border-top:1px solid var(--line)}#mobile-nav a{display:block;padding:11px 0}.home-hero{min-height:704px;display:grid;grid-template-columns:1.13fr 1fr;align-items:center;gap:70px;padding-top:76px;padding-bottom:85px}.home-copy h1{font-size:clamp(46px,4.5vw,66px);line-height:1.42}.hero-description{max-width:545px;font-size:19px;line-height:1.9;margin-top:32px}.hero-caption{font-size:13px;color:var(--muted);margin-top:26px}.document-stage{position:relative;padding:20px 10px 25px 20px;max-width:470px;width:100%;justify-self:end}.document-back{position:absolute;inset:12px 6px 42px 20px;border:1px solid #b5bbad;background:#dce3d3;border-radius:2px}.back-one{transform:rotate(5deg)}.back-two{transform:rotate(-3deg);background:#eff1e9}.document-sheet{display:block;position:relative;border:1px solid #aeb5a5;background:#fffefb;padding:28px 32px 22px;box-shadow:0 8px 22px #2934290a}.document-sheet:hover{border-color:var(--accent)}.sheet-heading{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);padding-bottom:28px}.document-sheet h2{font-size:34px;line-height:1.5;letter-spacing:-.025em}.sheet-intro{font-size:12px;color:var(--muted);margin:14px 0 28px}.sheet-file{display:flex;gap:12px;align-items:center;padding:17px 0;border-top:1px solid #deded7}.file-symbol{font-size:13px;width:29px;height:36px;border:1px solid #b8bcb1;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:#40563e}.sheet-file strong{font-size:14px;font-weight:500;display:block}.sheet-file div span{font-size:11px;color:var(--muted);display:block}.sheet-file>span:last-child{margin-left:auto;font-size:10px;color:var(--muted)}.sheet-note{font-size:10px;color:#777b71;margin-top:15px}.stage-caption{display:block;text-align:center;font-size:11px;color:var(--muted);position:relative;margin-top:24px}.teaser-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.product-teaser{display:flex;flex-direction:column;border:1px solid var(--line);padding:28px 26px;background:transparent;min-width:0}.product-teaser:hover{border-color:#5e6f5a;background:#f1f2eb}.product-category{font-size:12px;color:var(--muted);margin-bottom:25px}.product-teaser h3{font-size:23px;font-family:var(--serif);font-weight:600;line-height:1.55}.product-teaser p{font-size:14px;color:var(--muted);margin-top:16px;margin-bottom:30px;line-height:1.9}.teaser-foot{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:12px;border-top:1px solid var(--line);padding-top:17px;margin-top:auto}.teaser-foot>span:first-child{max-width:88%}.teaser-foot>span:last-child{font-size:22px}.model-band{background:var(--accent);color:#fff;padding:86px 0}.band-layout{display:grid;grid-template-columns:1fr .9fr;gap:100px;align-items:center}.model-band .section-label{color:#cbd6c8}.model-band p:not(.section-label){max-width:550px;color:#dce4d8;margin-top:26px}.model-band .button{background:#f6f5ed;border-color:#f6f5ed;color:#000;margin-top:28px}.model-band .button:hover{background:white}.band-index{border-top:1px solid #687e6c}.band-index a{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px 0;border-bottom:1px solid #687e6c;font-size:20px}.band-index a:hover{color:#d5e7b7}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px}.prose{font-size:17px;line-height:2}.prose p+p{margin-top:24px}.prose .text-link{margin-top:30px}.article-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px}.article-card{display:block;border-top:1px solid #999e91;padding:24px 0 0}.article-card>span:first-child{font-size:12px;color:var(--muted)}.article-card h3{font-family:var(--serif);font-size:29px;line-height:1.5;margin:30px 0 20px;max-width:470px}.article-card p{font-size:15px;color:var(--muted);max-width:470px}.article-more{display:block;font-size:14px;margin-top:40px}.article-card:hover h3{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}.cooperation-strip{display:grid;grid-template-columns:1.1fr 1fr;gap:80px;align-items:center}.cooperation-strip p{color:var(--muted);max-width:510px}.site-footer{border-top:1px solid var(--line);padding-top:58px;background:#eeeee7}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.1fr;gap:36px;padding-bottom:50px}.footer-brand p{font-size:13px;color:var(--muted);margin-top:23px}.footer-grid h2{font:500 13px var(--sans);margin:4px 0 22px}.footer-grid>div>a{font-size:13px;display:block;margin:10px 0;overflow-wrap:anywhere}.footer-grid>div>a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding-top:20px;padding-bottom:22px;font-size:12px;color:var(--muted)}.page-hero{padding-top:76px;padding-bottom:72px}.page-hero>p,.page-hero>div>p:not(.section-label){max-width:720px;font-size:18px;color:var(--muted);margin-top:26px}.page-hero .section-label{margin-bottom:22px}.page-hero+.section{border-top:1px solid var(--line)}.model-hero{display:grid;grid-template-columns:1.3fr .7fr;gap:100px;align-items:end;padding-bottom:80px}.model-hero h1{font-size:clamp(40px,4vw,58px)}.model-quick{border-top:1px solid #000;margin-bottom:3px}.model-quick h2{font:500 16px var(--sans);padding:25px 0 20px}.model-quick a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:18px 0;font-size:14px}.model-quick a:hover{color:var(--accent)}.model-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:35px 0 42px;border-bottom:1px solid var(--line)}.model-tabs button{border:0;background:transparent;color:var(--muted);font-size:16px;padding:14px 19px 16px;border-bottom:2px solid transparent;margin-bottom:-1px}.model-tabs button[aria-selected=true]{color:#000;border-color:#000;font-weight:600}.model-tabs button:hover{background:#eeeee7}.panel-intro{display:flex;gap:50px;align-items:start;margin-bottom:35px}.panel-intro h3{max-width:430px;flex:1;font-size:26px;font-family:var(--serif)}.panel-intro p{flex:1;color:var(--muted);font-size:15px}.model-product-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.model-product-grid .product-teaser{padding:27px 30px}.model-product-grid .product-category{margin-bottom:14px}.model-product-grid .product-teaser p{margin-bottom:24px}.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,1fr);counter-reset:steps;gap:35px;margin:45px 0}.steps li{counter-increment:steps;border-top:1px solid #9a9e91;padding-top:20px;margin:0}.steps li:before{content:counter(steps,decimal-leading-zero);font-size:13px;color:var(--muted)}.steps h3{font-size:21px;margin:20px 0 14px}.steps p{font-size:14px;color:var(--muted)}.procurement-note{margin-top:50px;max-width:900px;border-left:3px solid #bbc3af;padding:8px 0 8px 30px}.procurement-note h3{font-size:20px}.procurement-note p{font-size:15px;color:var(--muted);margin:14px 0 20px}.end-cta{text-align:center;max-width:1050px}.end-cta p{margin:24px auto;color:var(--muted)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.feature{border-top:1px solid var(--line);padding-top:25px}.feature h3{margin-bottom:17px}.feature p{font-size:15px;color:var(--muted)}.feature .text-link{margin-top:24px}.link-list{list-style:none;padding:0;margin:28px 0}.link-list a{display:block;padding:20px 0;border-bottom:1px solid var(--line)}.link-list h3{font-size:22px;margin-bottom:8px}.link-list p{color:var(--muted);font-size:15px}.note{font-size:14px;line-height:1.9;color:var(--muted);padding:22px 26px;background:#eeeee8;margin-top:28px}.callout{background:var(--tint);padding:38px;margin-top:40px}.callout h2,.callout h3{margin-bottom:20px}.callout p{margin-bottom:20px}.prose h2{margin-top:45px;margin-bottom:25px;font-size:31px}.prose h3{margin-top:32px;margin-bottom:14px;font-size:23px}.prose table{width:100%;font-size:14px;margin:25px 0}.prose td,.prose th{border-bottom:1px solid var(--line);padding:14px}.prose a:not(.button):not(.text-link){text-decoration:underline;text-underline-offset:4px}.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:110px;padding-bottom:110px}.contact-layout h2{font:500 24px var(--sans);margin-bottom:25px}.contact-email{font-size:19px;border-bottom:1px solid}.contact-layout aside>p{color:var(--muted);font-size:14px;max-width:340px;margin-top:25px}.contact-secondary{margin-top:45px}.contact-secondary h3{font-size:14px;font-weight:500;margin-top:27px;margin-bottom:8px}.contact-secondary a{font-size:14px}.contact-qr{margin-top:34px}.contact-qr img{border:1px solid var(--line)}.contact-qr figcaption{font-size:12px;color:var(--muted);margin-top:6px}.contact-layout label{display:block;font-size:14px;margin-bottom:23px}.contact-layout input,.contact-layout select,.contact-layout textarea{display:block;width:100%;background:transparent;border:1px solid #b6b9ae;border-radius:3px;padding:12px;color:#000;margin-top:9px;min-height:46px;line-height:1.5}.contact-layout textarea{resize:vertical}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:20px}.form-note{font-size:12px;color:var(--muted);margin-top:17px;max-width:460px}.request-output{border-top:1px solid #000;padding-top:35px;margin-top:42px;scroll-margin-top:110px}.request-output pre{margin:25px 0;background:#eeeee7;padding:22px;font-family:var(--sans);font-size:14px}.request-output p{font-size:14px;color:var(--muted)}#copy-status{margin-top:20px}
.editorial-reading{max-width:960px;padding-bottom:40px}.editorial-reading .prose{max-width:790px}.editorial-reading h2{margin-top:42px}
@media(min-width:1440px){.home-hero{min-height:750px}.home-copy h1{font-size:70px}}
@media(max-width:1100px){.wrap{padding-left:40px;padding-right:40px}.nav-inner{padding:0 28px;gap:22px}.brand span{display:none}.desktop-nav{gap:23px}.nav-actions{gap:18px}.home-hero{gap:35px;min-height:650px}.home-copy h1{font-size:49px}.hero-description{font-size:17px}.document-stage{padding-left:10px}.document-sheet{padding:23px}.document-sheet h2{font-size:29px}.sheet-file{gap:9px}.sheet-file strong{font-size:13px}.sheet-file div span{font-size:10px}.sheet-file>span:last-child{display:none}.sheet-note{font-size:10px}.band-layout,.intro-grid,.cooperation-strip{gap:55px}.contact-layout{gap:60px}.model-hero{gap:60px}.footer-grid{grid-template-columns:1fr 1fr;gap:36px}.section{padding-top:76px;padding-bottom:76px}.teaser-grid{gap:16px}.product-teaser{padding:23px 19px}.product-teaser h3{font-size:21px}}
@media(max-width:800px){.desktop-nav{display:none}.nav-inner{min-height:74px;padding:0 24px}.brand span{display:block;font-size:15px}.brand img{width:83px}.nav-actions{margin-left:auto;gap:14px}.nav-contact{display:none}.menu-toggle{display:block}.model-entry{font-size:12px;padding:8px 12px}.model-entry span{padding-left:8px}.wrap{padding-left:28px;padding-right:28px}.home-hero{padding-top:53px;padding-bottom:50px;grid-template-columns:1fr;gap:46px;min-height:0}.home-copy h1{font-size:52px;line-height:1.45;letter-spacing:-.04em}.hero-description{max-width:540px;margin-top:26px}.hero-caption{font-size:12px}.document-stage{justify-self:center;max-width:450px;margin-top:5px}.document-sheet{padding:30px}.document-sheet h2{font-size:33px}.sheet-file>span:last-child{display:block}.sheet-file strong{font-size:14px}.sheet-file div span{font-size:11px}.section{padding-top:64px;padding-bottom:64px}.section-heading{align-items:flex-start;flex-direction:column;gap:22px}.section-intro{font-size:15px}.teaser-grid{grid-template-columns:1fr}.product-teaser{padding:25px}.product-category{margin-bottom:14px}.product-teaser h3{font-size:25px}.product-teaser p{margin-bottom:20px}.band-layout,.intro-grid,.cooperation-strip{grid-template-columns:1fr;gap:40px}.model-band{padding:60px 0}.band-index a{padding:20px 0;font-size:18px}.article-grid{grid-template-columns:1fr;gap:40px}.article-card h3{margin:24px 0 16px;font-size:27px}.article-more{margin-top:25px}.model-hero{grid-template-columns:1fr;gap:45px;padding-top:55px;padding-bottom:55px}.model-hero h1{font-size:43px}.model-quick{max-width:100%}.model-quick h2{padding-top:20px;padding-bottom:10px}.model-quick a{padding:13px 0}.page-hero{padding-top:55px;padding-bottom:50px}.page-hero>p,.page-hero>div>p:not(.section-label){font-size:16px}.panel-intro{flex-direction:column;gap:18px}.model-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;margin-top:0}.model-tabs button{padding:15px 8px;font-size:14px}.model-product-grid{grid-template-columns:1fr}.model-product-grid .product-teaser{padding:25px}.steps{grid-template-columns:1fr 1fr;gap:32px 25px}.steps h3{margin-top:16px}.feature-grid{grid-template-columns:1fr;gap:35px}.contact-layout{grid-template-columns:1fr;gap:50px;padding-bottom:70px}.contact-layout aside{border-bottom:1px solid var(--line);padding-bottom:35px}.contact-qr{display:none}.contact-secondary{display:flex;gap:32px;flex-wrap:wrap;flex-direction:column;margin-top:28px}.contact-secondary h3{margin:0 0 -25px}.contact-secondary a{margin:0}.footer-grid{gap:35px 20px}.footer-grid>div>a{font-size:12px}.footer-brand p{font-size:12px}.prose{font-size:16px}.prose table{display:block;overflow-x:auto}.callout{padding:28px}}
@media(max-width:420px){.wrap{padding-left:22px;padding-right:22px}.nav-inner{padding:0 18px;gap:14px}.brand{gap:6px}.brand span{font-size:13px}.brand img{width:74px}.nav-actions{gap:4px}.model-entry{padding:8px 9px}.model-entry span{display:none}.home-copy h1{font-size:43px}.home-hero{gap:34px}.document-stage{padding-left:8px;padding-right:8px}.document-sheet{padding:24px 22px}.document-sheet h2{font-size:29px}.sheet-heading{padding-bottom:23px}.sheet-file{gap:9px}.sheet-file strong{font-size:13px}.sheet-file div span{font-size:10px}.sheet-file>span:last-child{font-size:9px}.sheet-note{font-size:10px}.hero-description{font-size:16px}.hero-caption{font-size:11px}.button{padding:11px 17px;font-size:14px}.actions{gap:10px}h2{font-size:30px}.page-hero h1{font-size:38px}.model-hero h1{font-size:37px}.panel-intro h3{font-size:25px}.steps{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer-grid>div:last-child{grid-column:1/-1}.form-pair{grid-template-columns:1fr;gap:0}.contact-email{font-size:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}

.model-hero{padding-bottom:40px}.model-matrix h2{font-size:30px;font-weight:400}.model-matrix-scroll{overflow:auto;max-width:100%;outline-offset:4px}.model-matrix table{width:100%;border-collapse:collapse;min-width:780px;font-size:13px;line-height:1.85}.model-matrix th,.model-matrix td{padding:16px;border:1px solid var(--line);text-align:left;vertical-align:top}.model-matrix th{background:#efefe8;font-weight:500}.model-matrix td:first-child{width:20%;font-weight:500}.model-matrix td:nth-child(2){width:19%}.model-matrix td:last-child{width:21%}.model-matrix>p{font-size:12px;color:var(--muted);line-height:1.9}.model-quick a:first-of-type{font-weight:500}
/* Beta: structured file availability and adjacent provenance/status. */
.product-provenance{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:10px 0;font-size:12px;line-height:1.6}.source-badge,.status-badge{border:1px solid var(--line,#d9ded7);padding:3px 8px;border-radius:4px}.status-badge{margin-left:auto;background:#e7eee8;color:#234d3a;white-space:nowrap}.file-badges{list-style:none;padding:0;margin:10px 0}.file-badges li{padding:9px 0;border-bottom:1px solid #d9ded7}.file-badges a{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:13px}.file-type{border:1px solid #8ba293;border-radius:3px;padding:2px 5px;font-size:10px;letter-spacing:.04em;flex:none}.file-name{flex:1;min-width:120px;overflow-wrap:anywhere}.file-size,.file-source{font-size:11px;color:#526359}.file-source{display:block;margin-top:4px}.sample-summary{display:flex;gap:8px;margin:10px 0}.sample-count{font-size:12px;padding:4px 8px;background:#eef0eb;border-radius:3px}.sample-kinds{display:flex;flex-wrap:wrap;gap:5px;font-size:11px;color:#59665c}.sample-kinds span{padding:2px 5px;border:1px solid #e1e4de;border-radius:3px;overflow-wrap:anywhere}.available-files{min-width:0}.available-files>p{font-size:13px}.document-stage .document-sheet{position:relative;height:auto;min-height:0;padding:24px;transform:none}.document-stage{height:auto;min-height:440px}.document-stage .sample-kinds{display:none}.model-matrix td{vertical-align:top}.model-matrix .file-badges a{min-width:230px}.cat-team-tags{display:flex;gap:6px;flex-wrap:wrap;font-size:11px;color:#59665c}.cat-team-tags span{padding:2px 5px;background:#f0f1ec}
@media(max-width:600px){.document-stage .document-sheet{padding:18px}.file-name{min-width:100px}.document-stage{min-height:0}.file-badges a{font-size:12px}}
/* Four exhibits: left narrative, right independent artifact column. */
.generation-hero{padding-top:56px;padding-bottom:60px}.generation-hero>h1{font-size:clamp(28px,3vw,43px);margin-bottom:36px}.generation-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-bottom:1px solid var(--line);gap:12px}.generation-tabs button{background:none;border:0;border-bottom:3px solid transparent;padding:15px 4px;text-align:left;line-height:1.6;font:inherit;font-size:15px;cursor:pointer;color:var(--muted)}.generation-tabs button[aria-selected=true]{color:#203f36;border-color:#203f36}.generation-panel{display:grid;grid-template-columns:minmax(0,58fr) minmax(0,42fr);gap:36px;align-items:start;padding-top:36px}.generation-panel[hidden]{display:none}.generation-copy{min-width:0}.generation-copy h2{font-size:clamp(26px,2.5vw,37px);line-height:1.6;margin:20px 0}.generation-copy>p{font-size:17px;line-height:1.9;max-width:39em}.generation-copy .status-badge{margin-left:0}.exhibit-links{display:grid;gap:10px;margin-top:24px;font-size:14px}.exhibit-links a{text-decoration:underline;text-underline-offset:4px}.generation-figure{min-width:0;margin:0;overflow:hidden}.generation-figure img{display:block;width:100%;height:auto;opacity:.9}.generation-figure figcaption{font-size:12px;margin-top:10px;color:var(--muted)}.hero-downloads{margin-top:24px;font-size:14px}.hero-downloads summary{cursor:pointer}.acquisition-details>div{padding:12px 0;border-bottom:1px solid var(--line)}.acquisition-details dt{font-weight:600}.acquisition-details dd{margin:5px 0;font-size:14px}
@media(min-width:769px) and (prefers-reduced-motion:no-preference){.generation-figure img{animation:exhibit-breathe 75s ease-in-out infinite}}@keyframes exhibit-breathe{0%,100%{transform:translateY(0);opacity:.9}50%{transform:translateY(3px);opacity:.75}}
@media(max-width:768px){.generation-panel{grid-template-columns:minmax(0,1fr);gap:24px}.generation-tabs{gap:5px;overflow-x:auto}.generation-tabs button{font-size:12px}.generation-figure{width:100%}.generation-copy>p{font-size:16px}.generation-hero{padding-top:34px}}
@media(max-width:390px){.generation-figure img{animation:none!important;transform:none!important}}
@media(prefers-reduced-motion:reduce){.generation-figure img{animation:none!important;transform:none!important}}
/* Stage 4: preserve diagram text at a readable scale on narrow screens. */
.architecture-scroll{overflow-x:auto;border:1px solid var(--line,#ddd);background:#fff;border-radius:8px;-webkit-overflow-scrolling:touch}
.architecture-scroll img{display:block;width:100%;height:auto;min-width:1000px;max-width:none}
.architecture-section h2{margin-bottom:24px}.diagram-hint{font-size:13px;color:#60665f}
.partner-section{padding-top:36px;padding-bottom:36px;border-top:1px solid #d8dcd5}.partner-section h2{font-size:22px}.partner-section>p{font-size:13px;color:#60665f;max-width:65ch}
.partner-scroll{overflow-x:auto}.partner-track{display:flex;gap:16px;align-items:stretch;width:max-content;padding:16px 0}.partner-logo{margin:0;flex:0 0 180px;width:180px;background:#fff;border:1px solid #ddd;padding:12px;border-radius:8px;text-align:center}.partner-logo img{width:154px;height:64px;object-fit:contain}.partner-logo figcaption{font-size:12px;line-height:1.6;margin-top:8px}
.all-partners .partner-scroll{scroll-behavior:smooth}.all-partners .partner-track{animation:partner-travel 85s linear infinite alternate}.all-partners:focus-within .partner-track,.all-partners:hover .partner-track{animation-play-state:paused}
@keyframes partner-travel{from{transform:translateX(0)}to{transform:translateX(min(0px,calc(100vw - 4500px)))}}
@media(max-width:768px){.architecture-scroll img{width:1000px;min-width:1000px}.all-partners .partner-track{animation:none}}
@media(prefers-reduced-motion:reduce){.all-partners .partner-track{animation:none}.all-partners .partner-scroll{scroll-behavior:auto}}
.history-list{list-style:none;padding:0}.history-list li{display:grid;grid-template-columns:110px 1fr;gap:24px;padding:20px 0;border-top:1px solid #ddd}.history-list time{font-variant-numeric:tabular-nums;color:#60665f;font-size:14px}.history-list a{line-height:1.8}.history-list p{margin:5px 0;font-size:13px}.archive-note{padding:18px;border-left:3px solid #315448;background:#f0f2ed;font-size:14px;margin:28px 0}.historical-record table{display:block;max-width:100%;overflow-x:auto}.historical-record img{max-width:100%}.historical-record pre{overflow-x:auto}.historical-record{overflow-wrap:anywhere}
@media(max-width:768px){.history-list li{grid-template-columns:1fr;gap:8px}}
.text-exhibit{min-width:0;align-self:stretch}.exhibit-paper{padding:24px;background:#fff;border:1px solid #d5dbd5;border-radius:10px;box-shadow:0 5px 18px #132d1510}.exhibit-file{font-size:14px;font-weight:600;border-bottom:1px solid #d5dbd5;padding-bottom:14px}.source-excerpt{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.8;margin:0;max-height:440px;overflow-y:auto}.source-excerpt code{font:inherit}.text-exhibit figcaption{display:grid;gap:8px;padding-top:12px;font-size:12px}.text-exhibit figcaption a{text-decoration:underline}.shared-reading-rules{padding-left:24px;max-width:70ch}.shared-reading-rules li{padding:12px}.shared-reading-rules h2{font-size:22px}
@media(max-width:768px){.exhibit-paper{padding:18px}.source-excerpt{font-size:14px;max-height:none}}
/* Stage 5: source materials, with explicit provenance and readable scroll areas. */
.text-exhibit .exhibit-file{margin-bottom:18px}.text-exhibit figcaption{display:block;line-height:1.8}.text-exhibit .source-excerpt{max-height:none}.exhibit-subtitle{font-size:12px;color:var(--muted);margin-bottom:18px}.report-scroll,.case-scroll{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}.report-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.report-pair a{display:block;border:1px solid var(--line);background:white}.report-pair strong,.report-pair span{display:block;padding:8px 12px;font-size:12px}.report-pair img{animation:none!important;transform:none!important;opacity:1}.report-transcript{margin-top:14px;font-size:12px}.report-transcript summary{cursor:pointer}.report-transcript pre{margin-top:12px;font-size:12px;max-height:320px;overflow:auto}.clinical-timeline{list-style:none;padding:0 0 0 18px;margin:0;border-left:1px solid #9daf9f;overflow:visible;font-family:var(--sans)}.clinical-timeline li{position:relative;padding:0 0 20px 10px;margin:0}.clinical-timeline li:last-child{padding-bottom:0}.clinical-timeline li:before{content:"";position:absolute;left:-23px;top:8px;width:9px;height:9px;border-radius:50%;background:var(--accent)}.clinical-timeline strong{font-size:13px;color:var(--accent)}.clinical-timeline p{font-size:13px;line-height:1.85;margin-top:4px;white-space:pre-line}.case-comparison{width:100%;min-width:440px;table-layout:fixed;font:13px/1.85 var(--sans)}.case-comparison th,.case-comparison td{padding:12px 10px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.case-comparison th{font-size:12px;color:var(--muted)}.case-comparison th:nth-child(1){width:44%}.case-comparison th:nth-child(2){width:16%}.case-comparison th:nth-child(3){width:40%}.case-comparison td:nth-child(2){font-weight:600;color:var(--accent)}.trace-sections{max-height:520px;overflow:auto}.trace-part+.trace-part{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}.trace-part h3{font:600 13px/1.6 var(--sans);margin-bottom:10px}.trace-part pre{font-size:12px;line-height:1.7}.trace-part-1 h3{color:#934331}.trace-part-2 h3{color:#275d42}
@media(max-width:768px){.trace-sections{max-height:none}.case-comparison{min-width:440px}.report-pair{gap:8px}}

h1,h2,h3,.article-card h3{text-wrap:balance}
.prose{max-width:42em}.prose table{max-width:none}
p{text-wrap:pretty}
.pull-quote{margin:0 0 28px;padding:0 0 0 22px;border-left:2px solid var(--ink);font:400 clamp(22px,2.2vw,28px)/1.5 var(--serif);color:var(--ink)}
@media (max-width:767px){h1{text-wrap:wrap}.cat-product-head h1,.cat-page-head h1,.page-hero h1{font-size:clamp(26px,7.6vw,34px);line-height:1.3}}
@media (max-width:767px){h1{text-wrap:pretty}}
@property --arch-fade{syntax:'<length>';inherits:false;initial-value:56px}
@keyframes arch-fade{to{--arch-fade:0px}}
@media (max-width:1099px){@supports (animation-timeline:scroll()){.architecture-scroll{-webkit-mask-image:linear-gradient(to right,#000 calc(100% - var(--arch-fade)),transparent);mask-image:linear-gradient(to right,#000 calc(100% - var(--arch-fade)),transparent);animation:arch-fade linear both;animation-timeline:scroll(self inline)}}}
/* footer: brand, four columns, closing verse */
.site-footer{border-top:1px solid var(--line);background:#eeeee7;padding-top:64px}
.footer-brand .company-name{margin-top:20px;font-size:15px;font-weight:600}
.footer-brand .company-en{margin-top:4px;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.12em;color:var(--muted)}
.footer-grid{display:grid;grid-template-columns:minmax(0,1.7fr) repeat(3,minmax(0,1fr));gap:32px;padding:0}
.footer-grid>section{min-width:0}
.footer-grid h2{font:500 13px/1.5 var(--sans);margin:4px 0 16px}
.footer-grid>section>a{display:block;font-size:13px;line-height:1.6;margin:8px 0;color:var(--muted);overflow-wrap:anywhere;transition:color .15s}
.footer-grid>section>a:hover,.footer-grid>section>a:focus-visible{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.footer-grid>section>a[aria-current=page]{color:var(--ink);font-weight:600}
.footer-bottom{display:flex;justify-content:flex-start;align-items:center;gap:0;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:20px;padding-bottom:24px;font-size:12px;color:var(--muted)}
@media (max-width:767px){.site-footer{padding-top:44px}.footer-grid{gap:24px 16px}}
/* partner wall: supplied logos, ink at rest, colour on hover */
.partner-section{padding-top:48px;padding-bottom:48px;border-top:1px solid var(--line)}
.partner-section h2{font:400 22px/1.3 var(--serif);margin:0 0 22px}
.partner-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.partner-logo{margin:0;flex:0 0 calc((100% - 40px)/5);display:flex;align-items:center;justify-content:center;height:88px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:14px 18px}
.partner-logo img{display:block;max-height:50px;max-width:100%;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.72;transition:filter .2s,opacity .2s}
.partner-logo:hover img{filter:none;opacity:1}
@media (max-width:1023px){.partner-logo{flex-basis:calc((100% - 30px)/4)}}
@media (prefers-reduced-motion:reduce){.partner-logo img{transition:none}}
/* secondary page hero with a visual column; models page generations */
.page-hero.has-visual{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:56px;align-items:center}
.page-hero.has-visual>div:first-child p:not(.section-label){max-width:34em}
.page-hero-visual:empty{display:none}
.page-hero.has-visual:has(.page-hero-visual:empty){display:block}
.model-hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}
.gen-steps-models .gen-picks{display:grid;margin-top:14px;border-top:1px solid var(--line)}
.gen-steps-models .gen-picks a{display:block;padding:8px 0;border-bottom:1px solid var(--line);font-size:14px;color:var(--ink);text-decoration:none}
.gen-steps-models .gen-picks a:hover{text-decoration:underline;text-underline-offset:4px}
.gen-steps-models .gen-all{display:inline-block;margin-top:14px;font-size:13px;color:var(--muted);text-decoration:none}
.gen-steps-models .gen-all:hover{color:var(--ink)}
@media (max-width:1023px){.page-hero.has-visual{grid-template-columns:1fr;gap:32px}}
.page-hero-copy{min-width:0}
.about-epigraph{padding-top:8px;padding-bottom:48px}
.file-badges .file-row{display:grid;grid-template-columns:52px 1fr auto;gap:14px;align-items:baseline;padding:12px 0;font-size:15px}
@media (max-width:767px){.partner-section{padding-top:36px;padding-bottom:36px}.partner-grid{gap:8px}.partner-logo{flex-basis:calc((100% - 16px)/3);height:64px;padding:10px 12px}.partner-logo img{max-height:36px}}
/* rhythm: more air between sections on wide screens */
@media (min-width:1024px){.section{padding-top:120px;padding-bottom:120px}.section-heading{margin-bottom:44px}.page-hero{padding-top:96px;padding-bottom:96px}}
.section-heading h2,.section h2.section-title,.intro-grid h2,.cooperation-strip h2{font-size:clamp(30px,3.1vw,46px);line-height:1.2;letter-spacing:-.025em}
/* footer verse sits under the mark, with its English line beneath each sentence */
/* pills: nav items and buttons */
.desktop-nav{gap:8px}
.desktop-nav a{padding:8px 14px;border-radius:999px;background:#efeee8;font-size:13.5px;line-height:1.4;transition:background .15s,color .15s}
.desktop-nav a:hover,.desktop-nav a[aria-current]{box-shadow:none;background:#e3e2da}
.nav-contact{padding:8px 14px;border-radius:999px;background:#efeee8;font-size:13.5px}
.nav-contact:hover{background:#e3e2da}
.model-entry{border-radius:999px;padding:9px 16px}
.button{border-radius:999px;padding:11px 22px}
.cat-filters input,.cat-filters select{border-radius:10px}
/* models page: the dark reading panel */
.model-panel:not([role=tabpanel]){background:#141413;color:#f2f0e9;padding:clamp(48px,6vw,80px) 0}
.model-panel-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,6vw,96px);align-items:start}
.model-panel-cards{display:grid;gap:40px;max-width:520px}
.mp-card{display:block;color:inherit;text-decoration:none}
.mp-kicker{display:block;font:12px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.06em;color:#8f8d84;margin-bottom:12px}
.mp-img{display:block;aspect-ratio:16/10;overflow:hidden;border-radius:6px;background:#1f1f1d}
.mp-img img{width:100%;height:100%;object-fit:cover;object-position:0 0;filter:grayscale(1) contrast(1.05);transition:transform .6s cubic-bezier(.2,0,0,1)}
.mp-card:hover .mp-img img{transform:scale(1.03)}
.mp-card h3{margin:16px 0 0;font:600 17px/1.55 var(--sans);color:#f2f0e9;max-width:28em}
.model-panel-nav .section-label{color:#8f8d84;margin-bottom:16px}
.model-panel-nav h1{margin:0 0 32px;font:400 clamp(30px,3vw,44px)/1.2 var(--serif);color:#f2f0e9;letter-spacing:-.02em}
.model-panel-nav>a{display:block;padding:6px 0;font:600 clamp(22px,2.6vw,34px)/1.3 var(--sans);color:#d8d6cd;text-decoration:none;letter-spacing:-.02em;transition:color .15s}
.model-panel-nav>a:hover{color:#fff}
.mp-links{margin-top:40px;border-top:1px solid #3a3936}
.mp-links a{display:flex;justify-content:space-between;align-items:center;padding:16px 0;border-bottom:1px solid #3a3936;font-size:15px;color:#d8d6cd;text-decoration:none}
.mp-links a:hover{color:#fff}
.mp-links span{font-size:18px;color:#8f8d84}
.page-field{margin-top:-36px;padding-bottom:24px}
@media (max-width:767px){.page-field{margin-top:0}}
@media (max-width:1023px){.model-panel-grid{grid-template-columns:1fr}.model-panel-cards{max-width:none;grid-template-columns:1fr 1fr;gap:24px}}
@media (max-width:767px){.model-panel-cards{grid-template-columns:1fr}}
.footer-brand>a img{width:auto;height:40px}
/* footer poem */

/* footer verse band: title column + two columns of couplets, one even height under the brand/nav row */

/* headings: balanced line lengths; phones drop the hand-set breaks and let the balance decide */
h1,h2,.section-title{text-wrap:balance}
.stage-check{word-break:keep-all;overflow-wrap:normal}
.partner-logo.is-seal img{max-height:64px}
.model-panel-nav>a span{display:inline-block;margin-left:.35em;font-size:.7em;color:#6f6d66;transform:translateY(-.1em);transition:transform .2s,color .2s}
.model-panel-nav>a:hover span{color:#fff;transform:translateY(.05em)}
@media (max-width:767px){h1 br,h2 br{display:none}.partner-logo.is-seal img{max-height:46px}}
h1 .ph,h2 .ph{display:inline-block}
.mp-note{margin:40px 0 0;max-width:30em;font-size:15px;line-height:1.8;color:#a8a69d}
@media (max-width:1023px){.model-panel-nav{order:-1}.mp-note{margin-top:28px}}
@media (max-width:767px){h2{font-size:28px}}
.vh{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.arch-hint{display:none;margin-top:10px}
@media (max-width:1099px){.arch-hint{display:block}}
div.motion-path ol{margin:16px 0 0 6px}
.nb{white-space:nowrap}
.pull-quote .ph{display:inline-block}
.feature-grid:has(>:nth-child(4):last-child){grid-template-columns:repeat(2,1fr)}
h1,h2,h3{word-break:keep-all;overflow-wrap:anywhere}
h3 .ph{display:inline-block}
.page-toc-mobile summary{list-style:none}.page-toc-mobile summary::-webkit-details-marker{display:none}
@media (max-width:767px){.cat-table-scroll{overflow-x:auto}.cat-table-scroll::after{content:"表比屏幕宽，左右滑动查看。";display:block;padding:8px 0 0;font-size:12px;color:var(--muted)}}

/* footer: mark above the heads; verse under the mark, level with the columns; bottom row */
.footer-top{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,2.1fr);grid-template-rows:auto auto;column-gap:56px;row-gap:36px;padding-bottom:56px}
.footer-brand{grid-column:1;grid-row:1}
.footer-grid{grid-column:2;grid-row:2;align-self:stretch}
.footer-bottom a{color:var(--muted)}.footer-bottom a:hover{color:var(--ink);text-decoration:underline;text-underline-offset:4px}.footer-bottom>span,.footer-bottom>a{margin-right:22px}
@media (max-width:1023px){.footer-top{grid-template-columns:1fr;grid-template-rows:auto auto auto;row-gap:32px}.footer-brand{grid-row:1}.footer-grid{grid-column:1;grid-row:2}.footer-verse{grid-column:1;grid-row:3;padding-top:28px;border-top:1px solid var(--line)}}

/* verse: eight couplets set as a poem, each Chinese line with its English directly beneath; one size per language, no rules.
   On wide screens the block stretches to the nav's height and the couplets spread evenly, so top and bottom stay level with the columns. */
.footer-verse{grid-column:1;grid-row:2;display:flex;flex-direction:column;justify-content:space-between;color:var(--ink)}
.footer-verse p{display:block;margin:0;padding:0;border:0}
.footer-verse .zh,.footer-verse .en{display:block}
.footer-verse .zh{font:400 13.5px/1.4 var(--serif);color:var(--ink);letter-spacing:.02em}
.footer-verse .en{font:400 11.5px/1.4 var(--sans);color:var(--muted);letter-spacing:.01em}
.footer-verse .title .zh{font-weight:600}
@media (min-width:1024px){.footer-top{grid-template-columns:minmax(0,1.35fr) minmax(0,2fr)}}
@media (max-width:1023px){.footer-verse{grid-row:3}.footer-verse p+p{margin-top:8px}.footer-grid{grid-column:1;grid-row:2;grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid>section>a{overflow-wrap:normal;word-break:keep-all}}
@media (max-width:767px){.footer-grid{gap:24px 16px}.footer-grid h2{white-space:nowrap}}
.footer-bottom>span,.footer-bottom>a{white-space:nowrap}
/* standards roster: role, count, list */
.std-roster{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 56px}
.std-group{min-width:0;border-top:1px solid var(--ink);padding-top:18px}
.std-group h3{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:0 0 14px;font:600 18px/1.4 var(--sans)}
.std-count{font:400 13px/1.6 ui-monospace,SFMono-Regular,Menlo,monospace;color:var(--muted);white-space:nowrap}
.std-group ul{list-style:none;margin:0;padding:0}
.std-group li{margin:0;padding:9px 0;border-top:1px solid var(--line);font-size:15px;line-height:1.7}
.std-group li:first-child{border-top:0}
@media (max-width:767px){.std-roster{grid-template-columns:1fr;gap:32px}}
