/* 四段连续舞台沿用现有蓝色系统，区块允许原生驻留；仅舞台内部裁切背景，避免祖先溢出规则破坏驻留定位。 */
.ep-section.ep-type-stage.ets-flow-version{overflow:visible;background:#000618}
.ets-flow-track{position:relative;background:#000618}
.ets-flow-screen{isolation:isolate}
.ets-flow-screen::after{z-index:2}
.ets-flow-version[data-flow-mode="pinned"] .ets-flow-track{height:calc(var(--flow-height) + var(--flow-run))}
.ets-flow-version[data-flow-mode="pinned"] .ets-flow-screen{position:sticky;top:var(--flow-header);height:var(--flow-height);min-height:0}
.ets-flow-screen .ets-word{top:2%;height:83%;left:1%;width:98%;transform:none}
.ets-flow-screen .ets-ground{height:46%;bottom:0}
.ets-flow-heading{position:absolute;left:24px;right:24px;top:34px;text-align:center;z-index:4;transform-origin:center top;pointer-events:none}
.ets-flow-heading>span{display:block;font-size:11px;color:#a3c4f2;margin-bottom:14px}
.ep-section .ets-flow-heading h2{font-size:clamp(36px,3.8cqw,52px);line-height:1.12;letter-spacing:-.055em;font-weight:500;margin:0;max-width:none;color:#f3f7fc}
.ets-flow-products{position:absolute;left:50%;width:min(60%,780px,calc(var(--flow-height) * .94));aspect-ratio:850 / 307;bottom:34%;transform:translateX(-50%);z-index:3;pointer-events:none}
.ets-flow-product-motion{position:absolute;inset:0;transform-origin:center bottom}
.ets-flow-product-depth{position:absolute;inset:0;transform-origin:center bottom}
.ets-flow-intro{position:absolute;left:50%;bottom:133px;width:min(750px,70%);transform:translateX(-50%);z-index:4;text-align:center}
.ep-section .ets-flow-intro p{font-size:15px;line-height:1.65;color:#bed0ed;max-width:none;margin:0}
.ets-flow-captions{position:absolute;left:50%;bottom:29px;width:min(560px,40%);min-height:85px;margin-left:calc(-1 * min(280px,20%));z-index:5;text-align:center}
.ets-flow-caption{position:absolute;inset:0;visibility:hidden}
.ets-flow-caption:first-child{visibility:visible}
.ep-section .ets-flow-caption h3{font-size:22px;line-height:1.2;font-weight:500;letter-spacing:-.035em;margin:0 0 11px}
.ep-section .ets-flow-caption p{font-size:14px;line-height:1.7;color:#b9cee9;max-width:none;margin:0}
/* 技术图在同一个右侧窗口交替出现，始终完整显示原图，不裁掉坐标轴或色标。 */
.ets-flow-evidence{position:absolute;left:53%;right:7%;top:12%;bottom:12%;z-index:6}
.ets-flow-panel{position:absolute;inset:0;margin:0;visibility:hidden}
.ets-flow-panel .ets-evidence-images{height:calc(100% - 34px);border-radius:12px;box-shadow:0 20px 65px #00091f77}
/* 双层揭幕沿滚动方向展开，内层反向抵消位移，使技术图的位置和比例保持准确，停稳后不遮挡原图。 */
.ets-flow-reveal{height:calc(100% - 34px);overflow:hidden;border-radius:12px}
.ets-flow-reveal-content{height:100%;width:100%}
.ets-flow-panel .ets-flow-reveal-content .ets-evidence-images{height:100%;box-shadow:none}
.ets-flow-panel figcaption{font-size:11px;color:#9fbfe9;text-align:right;margin-top:12px}
/* 四个编号确实对应阅读段落，竖线连接它们，当前项同时有形状、颜色和语义状态。 */
.ets-flow-rail{position:absolute;right:12px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:16px;z-index:8}
.ets-flow-rail::before{content:"";position:absolute;left:50%;top:20px;bottom:20px;width:1px;background:#5c85c777;z-index:-1}
.ets-flow-rail-track{position:absolute;left:50%;top:22px;bottom:22px;width:2px;transform:translateX(-50%);pointer-events:none;z-index:-1}
.ets-flow-rail-progress{display:block;height:100%;background:#adcfff;transform:scaleY(0);transform-origin:center top}
.ets-flow-rail button{position:relative;display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #6489bf77;border-radius:50%;background:#071a38;color:#8fb3e4;font:11px/1 "Sora",sans-serif}
.ets-flow-rail button[aria-current="step"]{background:#a9cafd;color:#071a38;border-color:#d1e2fc;box-shadow:0 0 0 5px #789fd324}
.ets-flow-node-name{position:absolute;right:55px;padding:8px 12px;border-radius:6px;background:#142b4a;color:#e5effe;white-space:nowrap;font-size:11px;opacity:0;pointer-events:none}
.ets-flow-rail button:focus-visible .ets-flow-node-name{opacity:1}
.ets-flow-version[data-flow-mode="pinned"] .ets-flow-reading{display:none}
.ets-flow-after{padding-top:28px}
.ets-flow-after .ets-requirements{margin-top:0}
/* 常见矮电脑窗口收紧标题和产品尺寸，仍给正文与审核条留下空间，更矮窗口才改为完整纵向阅读。 */
.ets-flow-version[data-flow-mode="pinned"][data-flow-density="compact"] .ets-flow-heading{top:24px}
.ep-section[data-flow-mode="pinned"][data-flow-density="compact"] .ets-flow-heading h2{font-size:42px}
.ets-flow-version[data-flow-mode="pinned"][data-flow-density="compact"] .ets-flow-heading>span{margin-bottom:8px}
.ets-flow-version[data-flow-mode="pinned"][data-flow-density="compact"] .ets-flow-intro{bottom:117px}
.ep-section[data-flow-mode="pinned"][data-flow-density="compact"] .ets-flow-intro p{font-size:14px}
.ep-section[data-flow-mode="pinned"][data-flow-density="compact"] .ets-flow-caption h3{font-size:20px}
/* 完整阅读模式用于手机、矮窗口和减少动态偏好；大字舞台后连续列出四项资料，不通过隐藏内容制造空滚动距离。 */
.ets-flow-version[data-flow-mode="reading"] .ets-flow-track{height:auto}
.ets-flow-version[data-flow-mode="reading"] .ets-flow-screen{position:relative;top:auto;height:560px}
.ets-flow-version[data-flow-mode="reading"] .ets-flow-products{bottom:95px;width:min(86%,780px)}
.ets-flow-version[data-flow-mode="reading"] .ets-flow-heading{top:70px}
.ets-flow-version[data-flow-mode="reading"] .ets-flow-intro,
.ets-flow-version[data-flow-mode="reading"] .ets-flow-captions,
.ets-flow-version[data-flow-mode="reading"] .ets-flow-evidence,
.ets-flow-version[data-flow-mode="reading"] .ets-flow-rail{display:none}
.ets-flow-reading{max-width:1000px;margin:0 auto;padding:22px 48px 0}
.ets-flow-reading>span{font-size:12px;color:#a2c0ea}
.ep-section .ets-flow-reading-intro{font-size:17px;line-height:1.8;max-width:780px;margin:14px 0 34px;color:#c0d1ea}
.ets-flow-reading article{position:relative;padding:30px 0;border-top:1px solid #41629866;scroll-margin-top:100px}
.ets-flow-reading-number{font-size:11px;color:#91b9f0}
.ep-section .ets-flow-reading h3{font-size:25px;letter-spacing:-.035em;margin:10px 0 14px}
.ep-section .ets-flow-reading article>p{font-size:15px;line-height:1.75;max-width:720px;margin:0 0 23px;color:#b8cde8}
.ets-flow-reading .ets-evidence-images{height:auto;aspect-ratio:1.25;max-width:760px}
.ets-flow-reading .ets-image-button{position:absolute;inset:0;padding:15px}
@container (max-width:850px){
 .ets-flow-version[data-flow-mode="reading"] .ets-flow-screen{height:510px}.ets-flow-screen .ets-word{top:115px;height:300px;left:0;width:100%}.ets-flow-version[data-flow-mode="reading"] .ets-flow-heading{top:80px;left:25px;right:25px}.ep-section .ets-flow-heading h2{font-size:34px}.ets-flow-version[data-flow-mode="reading"] .ets-flow-products{width:98%;bottom:95px}.ets-flow-reading{padding:16px 25px 0}.ep-section .ets-flow-reading-intro{font-size:16px;line-height:1.8}.ep-section .ets-flow-reading h3{font-size:23px}.ep-section .ets-flow-reading article>p{font-size:14px}.ets-flow-reading .ets-image-button{padding:8px}.ets-flow-after{padding-top:10px}
}
@media print{.ets-flow-version .ets-flow-track{height:auto!important}.ets-flow-version .ets-flow-screen{position:relative!important;height:560px!important}.ets-flow-version .ets-flow-reading{display:block!important}.ets-flow-evidence,.ets-flow-rail,.ets-flow-captions,.ets-flow-intro{display:none!important}}

/* 连续衔接探索版把资料放进共用玻璃窗口，原始白底图在内层完整保留，深蓝材质负责与舞台衔接。 */
.ets-flow-fluid .ets-flow-evidence{left:52%;right:8%;top:11%;bottom:12%;border:1px solid #b6d3ff40;border-radius:22px;background:linear-gradient(145deg,#234c864d,#071732c4);box-shadow:inset 0 1px #e3eeff33,0 24px 75px #00061888;backdrop-filter:none}
.ets-flow-window-heading{position:absolute;top:0;left:22px;right:22px;height:50px;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.08em;color:#b5ceef}
.ets-flow-window-count{font-variant-numeric:tabular-nums;letter-spacing:.12em}
.ets-flow-panel-window{position:absolute;inset:50px 12px 12px;overflow:hidden;border-radius:12px;background:#fff}
.ets-flow-fluid .ets-flow-panel{visibility:visible}
.ets-flow-fluid .ets-flow-reveal{height:calc(100% - 34px);border-radius:0;overflow:visible}
.ets-flow-fluid .ets-flow-panel .ets-evidence-images{border-radius:0;background:#fff}
.ets-flow-fluid .ets-flow-panel figcaption{height:34px;margin:0;padding:0 16px;display:flex;align-items:center;justify-content:flex-end;background:#fff;color:#526882}
.ets-flow-fluid .ets-flow-products{aspect-ratio:1774 / 836;width:min(62%,780px,calc(var(--flow-height) * 1.05));bottom:28%}
.ets-flow-fluid .ets-flow-intro{bottom:157px}
/* 正文在同一阅读窗口上下接续，避免两段标题叠在一起；大字与资料窗口共同建立主次。 */
/* 加高阅读窗口容纳两行大字和说明，底部定位仍让总览正文的中心落在距舞台底部八十三像素处；技术段由时间轴整体移到中线。 */
.ets-flow-fluid .ets-flow-captions{height:320px;min-height:0;overflow:hidden;bottom:-77px;width:min(760px,44%);margin-left:calc(-1 * min(380px,22%));container-type:inline-size}
.ets-flow-fluid .ets-flow-caption{padding:8px 2px;display:flex;flex-direction:column;justify-content:center;align-items:center}
.ep-section.ets-flow-fluid .ets-flow-caption h3{font-size:27px;line-height:1.15;font-weight:500;letter-spacing:-.045em;margin-bottom:14px}
.ep-section.ets-flow-fluid .ets-flow-caption p{font-size:14px;line-height:1.75;max-width:520px;margin:0 auto}
/* 能力标题成为技术段主视觉，字号随左侧真实宽度缩放；长复合词不拆断，保留有意安排的两行结构。 */
.ep-section.ets-flow-fluid[data-flow-mode="pinned"] .ets-flow-caption-technical h3{font-size:clamp(44px,10cqw,72px);line-height:1.05;letter-spacing:-.045em;font-weight:500;color:#f3f7fc;margin:0 0 28px;max-width:100%}
.ets-flow-title-line{display:block;white-space:nowrap}
.ep-section.ets-flow-fluid .ets-flow-caption-technical p{font-size:clamp(17px,2.7cqw,19px);line-height:1.65;letter-spacing:-.012em;max-width:440px;color:#bed0ed;text-wrap:pretty}
.ets-flow-fluid .ets-flow-rail button{transition:transform 160ms cubic-bezier(.23,1,.32,1)}
.ets-flow-fluid .ets-flow-rail button:active{transform:scale(.97)}
.ets-flow-fluid[data-flow-mode="pinned"][data-flow-density="compact"] .ets-flow-products{width:min(55%,600px,calc(var(--flow-height) * .92));bottom:29%}
/* 矮窗口只收紧总览的小标题，技术段的大字仍按左侧宽度缩放，避免被旧的紧凑字号覆盖。 */
.ep-section.ets-flow-fluid[data-flow-mode="pinned"][data-flow-density="compact"] .ets-flow-caption-overview h3{font-size:23px}
.ets-flow-fluid[data-flow-mode="pinned"][data-flow-density="compact"] .ets-flow-captions{height:300px;bottom:-67px}
/* 阅读模式保留此前尺寸，不让电脑舞台的比例规则挤压手机内容。 */
.ets-flow-fluid[data-flow-mode="reading"] .ets-flow-products{width:min(86%,780px);bottom:95px}
@media (prefers-reduced-transparency:reduce){.ets-flow-fluid .ets-flow-evidence{background:#0c2348;backdrop-filter:none}}
@media (prefers-contrast:more){.ets-flow-fluid .ets-flow-evidence{border-color:#b8d5ff;background:#0c2348;backdrop-filter:none}}
@container (max-width:850px){.ets-flow-fluid[data-flow-mode="reading"] .ets-flow-products{width:98%}}

/* 示意图探索版沿用深蓝品牌色，以冰蓝边缘和银白文字建立同一个受光空间，只在专用入口启用。 */
.ets-flow-spatial{--spatial-rim:#b7dcff;--spatial-accent:#9ec7ff;--spatial-fill:#102b508c}
.ets-spatial-atmosphere{position:absolute;inset:0;z-index:2;opacity:0;visibility:hidden;pointer-events:none}
.ets-spatial-arc{position:absolute;inset:0;width:100%;height:100%;display:block}
.ets-spatial-arc-glow{filter:blur(10px)}
.ets-spatial-floor{position:absolute;left:0;right:0;bottom:0;height:24%;background:radial-gradient(ellipse at 73% 58%,#b0d4ff70 0, #4d8be846 18%,transparent 56%),linear-gradient(173deg,transparent 30%,#2b529020 54%,#030b1c55 100%);mask-image:linear-gradient(transparent,#000 25%);-webkit-mask-image:linear-gradient(transparent,#000 25%)}
/* 技术段标题、说明共用起始线；总览仍居中，第二行冰蓝色呼应玻璃边缘而不改动任何原文。 */
.ets-flow-spatial .ets-flow-caption-technical{align-items:flex-start;text-align:left}
.ep-section.ets-flow-spatial .ets-flow-caption-technical p{margin:0;max-width:460px;color:#c5d5ec}
.ets-flow-spatial .ets-flow-title-line:last-child{color:var(--spatial-accent)}
/* 资料框以前后两层表现厚度，主边缘使用遮罩渐变，亮点集中在角部和地面接触处，不覆盖资料正文。 */
.ets-flow-spatial .ets-flow-evidence{top:8%;bottom:10%;right:8%;border:1px solid #b2d3fa5c;border-radius:24px;isolation:isolate;background:linear-gradient(145deg,#7299d42e,#18396770 38%,#06152cab);box-shadow:inset 0 1px 1px #e9f3ff66,inset 1px 0 #a3cfff38,0 28px 50px #000719aa,0 0 36px #5c9cf51a;backdrop-filter:none;-webkit-backdrop-filter:none}
.ets-spatial-depth{position:absolute;inset:0;border-radius:inherit;transform:translate(-12px,9px);z-index:-1;pointer-events:none;border:1px solid #7faaf25e;background:linear-gradient(110deg,#3b619644,#0a1c3566);box-shadow:inset 3px 0 7px #b6d8ff24, -4px 6px 15px #00071977}
.ets-flow-spatial .ets-flow-evidence::before{content:"";position:absolute;inset:-1px;border-radius:inherit;padding:1.5px;z-index:4;pointer-events:none;background:linear-gradient(135deg,#e7f4ffb3,#76aef866 23%,#49688f22 43%,#75b5ff77 73%,#d1eaffc9);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude}
.ets-flow-spatial .ets-flow-evidence::after{content:"";position:absolute;inset:-2px;z-index:4;border-radius:inherit;pointer-events:none;background:radial-gradient(ellipse 55px 5px at 7% 0,#d5edffb3,transparent 85%),radial-gradient(ellipse 5px 52px at 0 58%,#abd4ff94,transparent 85%),radial-gradient(ellipse 55px 5px at 92% 100%,#c5e6ffd6,transparent 85%)}
.ets-flow-spatial .ets-flow-window-heading{left:24px;right:24px;height:52px;z-index:2;font-size:11px;color:#d4e5fc;letter-spacing:.015em}
.ets-flow-spatial .ets-flow-panel-window{inset:52px 14px 14px;border-radius:14px;z-index:2;box-shadow:0 1px #daf0ff66,0 0 0 1px #a2c4f22b}
.ets-flow-spatial .ets-flow-panel figcaption{border-top:1px solid #ebf1f9}
/* 接触阴影固定在玻璃框底边，短倒影只映出玻璃边缘，不复制技术图或新增可交互内容。 */
.ets-spatial-contact{position:absolute;left:-10%;right:-10%;top:calc(100% - 2px);height:42px;border-radius:50%;z-index:-2;pointer-events:none;background:radial-gradient(ellipse,#000516b3,transparent 66%);filter:blur(6px)}
.ets-spatial-contact::after{content:"";position:absolute;left:12%;right:9%;top:3px;height:5px;border-radius:50%;background:#bddfff9c;box-shadow:0 5px 22px 10px #7dbbff66}
/* 倒影压向地面并轻微柔化，避免它像第二个独立卡片；只在边缘附近保留短暂反射。 */
.ets-spatial-reflection{position:absolute;left:0;right:0;top:calc(100% + 9px);height:55px;border:1px solid #9bc7ff57;border-radius:17px 17px 7px 7px;z-index:-1;pointer-events:none;transform:perspective(180px) rotateX(42deg);transform-origin:center top;filter:blur(1.8px);background:linear-gradient(180deg,#67a4ff29,transparent);box-shadow:inset 0 1px #d2eaff66;mask-image:linear-gradient(#0009,transparent 88%);-webkit-mask-image:linear-gradient(#0009,transparent 88%)}
.ets-flow-spatial .ets-flow-rail button[aria-current="step"]{box-shadow:0 0 0 5px #8dbbff24,0 0 20px #6aa4fb38}
/* 手机和减少动态阅读不驻留资料框，因此关闭这些仅用于舞台空间关系的装饰。 */
.ets-flow-spatial[data-flow-mode="reading"] .ets-spatial-atmosphere{display:none}
@supports not (backdrop-filter:blur(1px)){.ets-flow-spatial .ets-flow-evidence{background:#102847}}
@media (prefers-reduced-transparency:reduce){.ets-flow-spatial .ets-flow-evidence{background:#102847;backdrop-filter:none;-webkit-backdrop-filter:none}}
@media (prefers-contrast:more){.ets-flow-spatial .ets-flow-evidence{background:#0c2348;border-color:#c8e1ff;backdrop-filter:none;-webkit-backdrop-filter:none}}

/* 首页前三屏使用导航下方的完整高度；底部审核栏已取消，内容不再为内部工具保留空白。 */
#site-viewport[data-home-scroll="steps"] .composition-hero{height:var(--home-screen-height);min-height:0;max-height:none;display:block}
/* 可翻屏的窄电脑画布仍用图文同屏，避免原来的平板上下布局把图片挤到下一屏；手机未启用此规则。 */
#site-viewport[data-home-scroll="steps"] .composition-hero .full-picture{position:absolute;inset:0;width:100%;height:100%;min-height:0}
#site-viewport[data-home-scroll="steps"] .composition-hero .full-picture::after{background:linear-gradient(90deg,rgba(0,6,24,.5) 0,rgba(2,14,36,.18) 24%,transparent 42%)}
#site-viewport[data-home-scroll="steps"] .hero-copy{position:absolute;left:0;top:0;bottom:auto;width:38%;height:var(--home-screen-height);min-height:0;padding:36px var(--space) 64px;align-items:flex-start;text-align:left}
#site-viewport[data-home-scroll="steps"] .hero-copy .buttons{justify-content:flex-start}
#site-viewport[data-home-scroll="steps"] .composition-hero .scroll-cue{display:block;bottom:27px}
#site-viewport[data-home-scroll="steps"] .glass-families{height:var(--home-screen-height);min-height:0;padding:38px 0 16px;display:flex;flex-direction:column;scroll-margin-top:var(--home-header)}
#site-viewport[data-home-scroll="steps"] .glass-section-heading{flex-shrink:0;margin-bottom:18px}
#site-viewport[data-home-scroll="steps"] .glass-section-heading h2{font-size:clamp(42px,4.3cqw,64px);line-height:1.06}
/* 卡片轨道占剩余高度，说明和目录入口完整留在轨道之外；不通过裁掉正文来凑出整屏尺寸。 */
html[data-carousel="coverflow"] #site-viewport[data-home-scroll="steps"] .glass-stage{height:auto;flex:1;min-height:250px}
html[data-carousel="coverflow"] #site-viewport[data-home-scroll="steps"] .glass-family-card{height:min(540px,calc(100% - 44px))}
html[data-carousel="coverflow"] #site-viewport[data-home-scroll="steps"] .cover-family-detail{min-height:0;flex-shrink:0;gap:10px;padding:2px 24px 8px}
/* 较矮电脑画布收紧空白和卡片内部尺寸，仍保留同一大图、系列卡片及全部原文。 */
#site-viewport[data-home-scroll="steps"][data-home-density="compact"] .hero-copy{padding-top:24px;padding-bottom:56px}
#site-viewport[data-home-scroll="steps"][data-home-density="compact"] .hero-title-main{font-size:clamp(46px,4.6cqw,64px)}
#site-viewport[data-home-scroll="steps"][data-home-density="compact"] .hero-copy .slot-label{margin-bottom:18px}
#site-viewport[data-home-scroll="steps"][data-home-density="compact"] .hero-copy p{font-size:16px;line-height:1.6;margin-top:20px}
#site-viewport[data-home-scroll="steps"][data-home-density="compact"] .hero-copy .buttons{margin-top:20px}
#site-viewport[data-home-scroll="steps"][data-home-density="compact"] .glass-families{padding:24px 0 12px}
#site-viewport[data-home-scroll="steps"][data-home-density="compact"] .glass-section-heading{margin-bottom:16px}
html[data-carousel="coverflow"] #site-viewport[data-home-scroll="steps"][data-home-density="compact"] .glass-family-card{padding:16px}
html[data-carousel="coverflow"] #site-viewport[data-home-scroll="steps"][data-home-density="compact"] .glass-card-copy{min-height:62px}
html[data-carousel="coverflow"] #site-viewport[data-home-scroll="steps"][data-home-density="compact"] .glass-card-copy h3{font-size:30px}
html[data-carousel="coverflow"] #site-viewport[data-home-scroll="steps"][data-home-density="compact"] .glass-card-media{margin:12px 0 14px}
html[data-carousel="coverflow"] #site-viewport[data-home-scroll="steps"][data-home-density="compact"] .cover-family-detail{gap:8px}
html[data-carousel="coverflow"] #site-viewport[data-home-scroll="steps"][data-home-density="compact"] .cover-family-detail p{font-size:14px;line-height:1.65}

/* 屏间动效只控制外层，卡片内部角度、图片基线和工程资料进度仍使用原来的坐标；静止时不增加位移。 */
.home-family-content{position:relative;z-index:1;display:flex;flex-direction:column;flex:1;min-height:0}
/* 限定三维轮播在整屏转场时的绘制范围；预留九十六像素承接原有柔光，外层既有裁切与卡片透视保持原样。 */
#site-viewport[data-home-scroll="steps"][data-home-motion="layered"] .home-family-content{contain:paint;overflow:clip;overflow-clip-margin:96px}
.home-family-background{position:absolute;inset:0;z-index:-1;pointer-events:none}
.home-engine-background{position:absolute;inset:0;z-index:0;pointer-events:none}
.home-engine-content{position:absolute;inset:0;z-index:3}

/* 首屏待入场时先显示稳定的深蓝环境，主视觉仍是一张原有合成图；透明度由短时脚本设置，静态页面不默认隐藏内容。 */
#site-viewport[data-hero-entrance="waiting"] .composition-hero .full-picture,
#site-viewport[data-hero-entrance="running"] .composition-hero .full-picture{background:radial-gradient(ellipse at 72% 46%,#103367 0,#061936 46%,#000618 82%)}

/* 产品层共用原图的覆盖坐标，比例由脚本根据容器与图片位置计算；不改变原有电脑构图与手机裁切。 */
.hero-layer-scene{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1}
.hero-layer-plane{position:absolute;transform-origin:center center}
.hero-layer-plate,.hero-product-batch{position:absolute;inset:0;width:100%;height:100%;display:block}
.hero-layer-plate{object-fit:fill}
/* 背景的内部层级限制在自身场景内，避免图片遮光层越过左侧文案，把完成态文字压暗。 */
.full-picture.hero-layered{isolation:isolate;z-index:0}
.full-picture.hero-layered>.dark-hero-image{z-index:2}
.full-picture.hero-layered::after{z-index:3}
/* 每行标题拥有自己的裁切窗口，文字由下方揭幕；窗口尺寸固定，动画不会改变标题排版或正文位置。 */
.hero-title-main .hero-mask-line{display:block;overflow:hidden;line-height:1.08;padding-bottom:.05em;margin-bottom:-.05em}
.hero-title-main .hero-mask-text{display:block;transform-origin:left bottom}
@media(prefers-reduced-motion:reduce){.hero-layer-scene{display:none}}
