@charset "UTF-8";

/* =========================================================
   小梦科技 · 官网首页样式
   设计稿基准：Figma「首页-1」Canvas 3200 × 6520（图层 0）
   定位换算：left/top/width/height = 设计像素 / 对应边长 × 100%
   字号换算：画布 font-size 使 1em ≈ 设计稿 100px
   ========================================================= */

/* ---------- 全局重置与设计变量 ---------- */
*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

:root {
  /* 品牌主色，对应设计稿 #196DF4 */
  --color-primary: #196df4;
  /* 次级正文灰，对应 #6E6D6D */
  --color-muted: #6e6d6d;
  /* 页脚主底，对应矩形 5 #242F46 */
  --color-footer: #242f46;
  /* 页脚版权条，对应矩形 7 #212D44 */
  --color-footer-bar: #212d44;
  /* 设计稿宽高，供注释与 JS 对照 */
  --design-w: 3200;
  --design-h: 6520;
}

html {
  scroll-behavior: smooth;
  background: #f9fbfe;
}

body {
  font-family: "SimHei", "Heiti SC", "STHeiti", "Microsoft YaHei", sans-serif;
  color: #000;
  /* 图层 0 为浅底，这里用等价色保证未加载时不闪黑 */
  background: #f9fbfe;
  line-height: 1.4;
  overflow-x: hidden;
}

img {
  display: block;
  border: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

ul,
ol {
  list-style: none;
}

button {
  font: inherit;
  cursor: pointer;
  border: none;
  background: none;
}

/* ---------- 页面画布：宽度始终等于视口，拖拽窗口即整体缩放 ---------- */
.page {
  width: 100%;
  margin: 0 auto;
  background: #f9fbfe;
}

/* 画布高度 = 当前宽度 × 6520/3200 = 203.75%，随窗口变宽变窄同步变化 */
.canvas {
  position: relative;
  width: 100%;
  padding-bottom: 203.75%;
  /*
    基准字号跟随视口：设计稿 100px / 3200 × 当前窗口宽。
    不封顶 1920，窗口拉大字号与模块一起变大，拉小则一起变小。
    1em ≈ 设计稿 100px × (100vw / 3200)。
  */
  font-size: calc(100vw * 100 / 3200);
  overflow: hidden;
  /* 对应图层：图层 0（整页浅色底） */
  background-color: #f9fbfe;
  background-image: url("../images/图层 0.png?v=20260930");
  background-size: 100% 100%;
}

/* 画布内装饰图默认铺满其所在舞台 */
.canvas img[aria-hidden="true"] {
  object-fit: fill;
}

/* 标题字重与稿面一致；字号由各模块自己写，避免这里 1em 盖过设计值 */
.canvas h1,
.canvas h2,
.canvas h3 {
  font-weight: 700;
}

/* 滚动入场：放大滑入（无虚化），JS 加上 is-visible 后复位 */
.reveal,
.item-reveal {
  opacity: 0;
  transform: translateY(20px) scale(0.94);
  transition:
    opacity 0.6s cubic-bezier(0.22, 1, 0.36, 1),
    transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.reveal.is-visible,
.item-reveal.is-in {
  opacity: 1;
  transform: none;
}

/* 横排列表错开 */
.advantage__card.reveal:nth-child(1) { transition-delay: 0.04s; }
.advantage__card.reveal:nth-child(2) { transition-delay: 0.14s; }
.advantage__card.reveal:nth-child(3) { transition-delay: 0.24s; }
.advantage__card.reveal:nth-child(4) { transition-delay: 0.34s; }
.advantage__card.reveal:nth-child(5) { transition-delay: 0.44s; }
.advantage__card.reveal:nth-child(6) { transition-delay: 0.54s; }

.product--1.reveal { transition-delay: 0.06s; }
.product--2.reveal { transition-delay: 0.2s; }
.product--3.reveal { transition-delay: 0.34s; }

.solution--1.reveal { transition-delay: 0.06s; }
.solution--2.reveal { transition-delay: 0.18s; }
.solution--3.reveal { transition-delay: 0.3s; }
.solution--4.reveal { transition-delay: 0.42s; }

.stats__item.item-reveal:nth-child(1) { transition-delay: 0.04s; }
.stats__item.item-reveal:nth-child(2) { transition-delay: 0.14s; }
.stats__item.item-reveal:nth-child(3) { transition-delay: 0.24s; }
.stats__item.item-reveal:nth-child(4) { transition-delay: 0.34s; }
.stats__item.item-reveal:nth-child(5) { transition-delay: 0.44s; }
.stats__item.item-reveal:nth-child(6) { transition-delay: 0.54s; }

.case--1.reveal { transition-delay: 0.04s; }
.case--2.reveal { transition-delay: 0.16s; }
.case--3.reveal { transition-delay: 0.28s; }
.case--4.reveal { transition-delay: 0.4s; }
.case--5.reveal { transition-delay: 0.52s; }

/* Banner：文案、标签、双按钮升起，对齐小推车页 */
.banner.reveal {
  opacity: 1;
  transform: none;
}

.banner-rise {
  opacity: 0;
}

.banner.is-visible .banner-rise {
  animation: bannerRise 0.95s cubic-bezier(0.16, 1, 0.3, 1) both;
  animation-delay: var(--d, 0s);
}

@keyframes bannerRise {
  from {
    opacity: 0;
    transform: translateY(1.5em);
  }
  to {
    opacity: 1;
    transform: none;
  }
}


/* =========================================================
   顶部导航 Header（图层组 TOP）
   设计：x≈0, y=0, h=196/6520≈3.0061%
   子元素百分比相对本栏（宽=画布宽，高=196）
   ========================================================= */
.header {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 3.006135%;
  z-index: 100;
  background: #fff;
  overflow: visible;
}

/* 矩形 1：3318×196 浅色渐变条，略超出画布后裁切 */
.header__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 103.6875%; /* 3318/3200 */
  height: 100%;
  object-fit: fill;
  pointer-events: none;
}

/* 品牌区：立体 x=254/3200，y=36/196 */
.header__brand {
  position: absolute;
  left: 7.9375%;
  top: 18.3673%;
  display: flex;
  align-items: center;
  z-index: 2;
}

/* 立体 Logo：设计 120px → 1.2em（1em = 设计稿 100px） */
.header__logo {
  width: 1.2em;
  height: auto;
}

.header__brand-text {
  display: flex;
  flex-direction: column;
  margin-left: 0.25em;
}

/* MICRO DREAM：设计 38.89px → 0.3889em */
.header__brand-en {
  font-size: 0.3889em;
  line-height: 1.44;
  color: #000;
  letter-spacing: 0.02em;
  user-select: text;
}

/* 小梦科技 拷贝：168×43 → 1.68em */
.header__brand-cn {
  width: 1.68em;
  height: auto;
  margin-top: 0.04em;
}

/* 导航项按设计稿 x 绝对定位，避免 flex 间距与稿面不一致 */
.header__nav {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}

.header__nav-list {
  position: absolute;
  inset: 0;
}

.header__nav-item {
  position: absolute;
  top: 34.097%; /* 66.83/196 */
  pointer-events: auto;
}

/* 首页 / 核心产品 / 解决方案 / 关于我们 的画布 x / 3200 */
.header__nav-item:nth-child(1) { left: 28.366%; }
.header__nav-item:nth-child(2) { left: 34.564%; }
.header__nav-item:nth-child(3) { left: 42.949%; }
.header__nav-item:nth-child(4) { left: 51.491%; }

.header__nav-link {
  display: block;
  font-size: 0.3889em;
  line-height: 1.44;
  color: #000;
  padding: 0.2em 0;
  user-select: text;
}

.header__nav-item.is-active .header__nav-link {
  color: var(--color-primary);
}

.header__nav-item--dropdown .header__subnav {
  position: absolute;
  left: 50%;
  top: calc(100% + 0.08em);
  width: 1.48em;
  padding: 0.08em;
  background: #fff;
  border-radius: 0.12em;
  box-shadow: 0 0.14em 0.36em rgba(25, 109, 244, 0.14), 0 0.02em 0.08em rgba(15, 40, 90, 0.06);
  border: 1px solid rgba(25, 109, 244, 0.12);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translate(-50%, 0.08em);
  transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s ease;
  z-index: 20;
}

.header__nav-item--dropdown .header__subnav::before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -0.14em;
  height: 0.14em;
}

.header__nav-item--dropdown .header__subnav::after {
  content: "";
  position: absolute;
  left: 50%;
  top: -0.06em;
  width: 0.12em;
  height: 0.12em;
  background: #fff;
  border-left: 1px solid rgba(25, 109, 244, 0.12);
  border-top: 1px solid rgba(25, 109, 244, 0.12);
  transform: translateX(-50%) rotate(45deg);
}

.header__nav-item--dropdown:hover .header__subnav,
.header__nav-item--dropdown:focus-within .header__subnav,
.header__nav-item--dropdown.is-open .header__subnav {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translate(-50%, 0);
}

.header__subnav-link {
  display: block;
  padding: 0.1em 0.08em;
  font-size: 0.16em;
  color: #3a4454;
  text-align: center;
  white-space: nowrap;
  border-radius: 0.08em;
  transition: color 0.2s ease, background-color 0.2s ease;
}

.header__subnav-link:hover {
  color: var(--color-primary);
  background: rgba(25, 109, 244, 0.08);
}

/* 矩形 2：80×6.67，圆角 3.33，贴在导航项底部 */
.header__nav-underline {
  display: none;
  position: absolute;
  left: 0;
  top: 0.95em;
  width: 0.8em; /* 矩形 2 宽 80px */
  height: 0.067em;
  background: var(--color-primary);
  border-radius: 0.033em;
}

.header__nav-item.is-active .header__nav-underline {
  display: block;
}

.header__actions {
  position: absolute;
  right: 6.5%;
  top: 0;
  height: 100%;
  display: flex;
  align-items: center;
  gap: 0.35em;
  z-index: 2;
}

.header__phone {
  display: flex;
  align-items: center;
  gap: 0.12em;
  font-size: 0.3333em;
  color: #000;
  user-select: text;
}

.header__phone-icon {
  width: 0.5em; /* 50/100 */
  height: auto;
}

.header__demo-btn {
  /* 矩形 3：235×86.67，圆角 16.67，字号 33.33 */
  padding: 0.22em 0.42em;
  background: var(--color-primary);
  color: #fff;
  font-size: 0.3333em;
  border-radius: 0.1667em;
  white-space: nowrap;
}

.header__menu-btn {
  display: none;
  position: absolute;
  right: 4%;
  top: 50%;
  transform: translateY(-50%);
  width: 2.2em;
  height: 1.8em;
  z-index: 3;
}

.header__menu-btn span {
  display: block;
  height: 2px;
  margin: 0.28em 0;
  background: #111;
}


/* =========================================================
   Banner 首屏
   主图 TU：3436×2865，宽 107.375%，高 43.9417%
   文案按画布绝对定位
   ========================================================= */
.banner {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 43.9417%;
  z-index: 1;
}

.banner__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 107.375%; /* 3436/3200 */
  height: 100%;
  object-fit: fill;
  pointer-events: none;
}

.banner__labels {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.banner__labels a,
.banner__labels h1,
.banner__labels p,
.banner__labels span {
  pointer-events: auto;
  user-select: text;
}

/* 主标题「软硬一体」：x=244.38, y=527.85，字号 116.67、行高 169、字重 Bold */
.banner__title {
  position: absolute;
  left: 7.637%;
  top: 18.424%; /* 527.85/2865，相对 banner 舞台高 */
  margin: 0;
  width: max-content;
  /* 直接按视口换算稿面 116.67px，不嵌套 em，避免被 h1 默认字号缩小 */
  font-size: calc(100vw * 116.67 / 3200);
  font-weight: 700;
  line-height: 1.4486; /* 169 / 116.67 */
  color: #000;
}

.canvas h1.banner__title,
.banner__title-line {
  font-weight: 700;
}

.banner__title-line {
  display: block;
  font-size: 1em;
  line-height: 1.4486;
  letter-spacing: 0;
  white-space: nowrap;
}

/* 「工业数字化解决方案」：稿面 y=691.18，相对首行顶 163.33，行盒 169 → 微收 5.67 */
.banner__title-line--sub {
  margin-top: calc(100vw * -5.67 / 3200);
}

/* 副标题：x=254.38, y=894.16，字号 55.56、行高 81；16 字宽 889 */
.banner__subtitle {
  position: absolute;
  left: 7.949%;
  top: 31.21%;
  font-size: calc(100vw * 55.56 / 3200);
  font-weight: 700;
  line-height: 1.458; /* 81 / 55.56 */
  letter-spacing: 0;
  color: #000;
  white-space: nowrap;
}

/* 标签行：图标 x=242/563/877/1190（组距约 314），文案字号 38.89、行高 56 */
.banner__tags {
  position: absolute;
  left: 7.5625%;
  top: 37.103%; /* 1063/2865 */
  display: flex;
  align-items: center;
  /* 组与组空隙用 em，避免 % 相对收缩宽度把四项挤在一起；稿面约 90px */
  gap: 0.9em;
  pointer-events: auto;
}

.banner__tag {
  display: flex;
  align-items: center;
  gap: 0.09em; /* 图标到四字：稿面约 8.7px */
  margin-right: 0;
}

.banner__tag img {
  width: 0.62em; /* 图层 1–4 设计 62×70 */
  height: 0.7em;
  flex-shrink: 0;
}

.banner__tag span {
  font-size: calc(100vw * 38.89 / 3200);
  font-weight: 400;
  line-height: 1.44; /* 56 / 38.89 */
  letter-spacing: 0; /* 四字宽 156，与稿面 4×38.89 一致 */
  color: var(--color-muted);
  white-space: nowrap;
}

/* 双按钮：了解产品 x=255，观看演示 x=763.33，y=1241.67 */
.banner__actions {
  position: absolute;
  left: 7.96875%;
  top: 43.339%; /* 1241.67/2865 */
  display: flex;
  align-items: center;
  gap: 0.6666em; /* 两钮间距 66.66，用画布 em 避免 % 被收缩宽度吃掉 */
  pointer-events: auto;
}

/* 两个框样式对齐小推车页（尺寸/字号/边框/圆角）；本组 left/top 不改 */
.banner__btn {
  box-sizing: border-box;
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  width: calc(100vw * 441.67 / 3243);
  height: calc(100vw * 126.66 / 3243);
  min-width: 0;
  min-height: 0;
  padding: 0 calc(100vw * 72 / 3243) 0 calc(100vw * 98 / 3243);
  border: 0;
  border-radius: calc(100vw * 63.33 / 3243);
  font-size: calc(100vw * 50 / 3243);
  font-weight: 400;
  line-height: 1.44;
  cursor: pointer;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.banner__btn span {
  font-size: inherit;
  font-weight: 400;
  line-height: 1.44;
  white-space: nowrap;
}

.banner__btn--primary {
  background: var(--color-primary);
  color: #fff;
}

.banner__btn--ghost {
  padding-left: calc(100vw * 96 / 3243);
  padding-right: calc(100vw * 64 / 3243);
  background: #f0f6fe;
  color: var(--color-primary);
  box-shadow: inset 0 0 0 calc(100vw * 5 / 3243) #99bfff;
}

.banner__btn:hover {
  transform: translateY(-3%);
}

.banner__btn img {
  width: calc(100vw * 48 / 3243);
  height: calc(100vw * 43 / 3243);
  margin-left: auto;
  flex-shrink: 0;
}

.banner__btn--ghost img {
  width: calc(100vw * 63 / 3243);
  height: calc(100vw * 52 / 3243);
}


/* =========================================================
   核心优势
   设计：x=223, y=1688, w=2754, h=598
   六卡宽度 490/489，起点间隔约 452
   ========================================================= */
.advantage {
  position: absolute;
  left: 6.96875%;
  top: 25.88957%;
  width: 86.0625%;
  height: 9.17178%;
  z-index: 3;
}

.advantage__card {
  position: absolute;
  top: 0;
  width: 17.7923%; /* 490/2754 */
  height: 100%;
}

.advantage__card img {
  width: 100%;
  height: 100%;
  object-fit: fill;
}

/* 图内已有标题，叠一层透明文字供选中与读屏 */
.advantage__text {
  position: absolute;
  left: 8%;
  right: 8%;
  top: 58%;
  text-align: center;
  color: transparent;
  pointer-events: auto;
  user-select: text;
}

.advantage__text h2 {
  font-size: 0.36em;
  font-weight: 400;
  line-height: 1.4;
}

.advantage__text p {
  margin-top: 0.12em;
  font-size: 0.26em;
  line-height: 1.45;
}

/* 六卡 left = 组内 x / 2754 */
.advantage__card--1 { left: 0; }
.advantage__card--2 { left: 16.4125%; } /* 452/2754 */
.advantage__card--3 { left: 32.825%; }  /* 888/2754 */
.advantage__card--4 { left: 49.274%; }  /* 1357/2754 */
.advantage__card--5 { left: 65.722%; }  /* 1810/2754 */
.advantage__card--6 { left: 82.244%; }  /* 2265/2754 */


/* =========================================================
   核心产品
   设计：x=226, y=2363.29, w=2751, h=968.71
   ========================================================= */
.products {
  position: absolute;
  left: 7.0625%;
  top: 36.24678%;
  width: 85.96875%;
  height: 14.85752%;
  z-index: 2;
}

.products__head,
.solutions__head,
.cases__head {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  text-align: center;
  pointer-events: none;
}

.products__head h2,
.products__head p,
.solutions__head h2,
.solutions__head p,
.cases__head h2,
.cases__head p {
  pointer-events: auto;
  user-select: text;
}

/* 区标题 72.22px → 0.7222em；比正文加粗 */
.canvas h2.products__title,
.canvas h2.solutions__title,
.canvas h2.cases__title,
.products__title,
.solutions__title,
.cases__title {
  font-size: 0.7222em;
  font-weight: 700;
  line-height: 1.45;
  color: #000;
}

.products__subtitle,
.solutions__subtitle,
.cases__subtitle {
  margin-top: 0.12em;
  font-size: 0.3889em;
  line-height: 1.44;
  color: var(--color-muted);
}

/* 三张产品卡相对产品区定位 */
.product {
  position: absolute;
}

/* 01：x=0, y=211.71, w=994, h=741 */
.product--1 {
  left: 0;
  top: 21.855%; /* 211.71/968.71 */
  width: 36.132%; /* 994/2751 */
  height: 76.493%; /* 741/968.71 */
}

/* 02：x=918, y=198.71, w=983, h=770 */
.product--2 {
  left: 33.37%; /* 918/2751 */
  top: 20.513%;
  width: 35.732%;
  height: 79.487%;
}

/* 03：x=1835, y=211.71, w=916, h=742 */
.product--3 {
  left: 66.703%; /* 1835/2751 */
  top: 21.855%;
  width: 33.297%;
  height: 76.597%;
}

.product__panel {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  object-fit: fill;
  pointer-events: none;
}

.product--1 .product__panel,
.product--2 .product__panel {
  width: 92.153%; /* 916/994、约 916/983 */
}

.product--2 .product__panel {
  top: 1.688%; /* 13/770 */
  height: 96.234%; /* 741/770 */
  width: 93.184%;
}

.product--3 .product__panel {
  width: 100%;
}

/* 产品主视觉 */
.product--1 .product__visual {
  position: absolute;
  left: 2.918%; /* 29/994 */
  top: 2.969%; /* 22/741 */
  width: 97.082%; /* 965/994，允许略溢出由父级裁切 */
  height: 96.896%;
  object-fit: fill;
  pointer-events: none;
}

.product--2 .product__visual {
  position: absolute;
  left: 2.848%;
  top: 0;
  width: 97.152%;
  height: 100%;
  object-fit: fill;
  pointer-events: none;
}

.product--3 .product__visual {
  position: absolute;
  left: 1.856%; /* 17/916 */
  top: 1.213%; /* 9/742 */
  width: 94.0%; /* 861/916 */
  height: 93.127%;
  object-fit: fill;
  pointer-events: none;
}

.product {
  overflow: hidden;
}

/* 序号圆底 */
.product--1 .product__badge {
  position: absolute;
  left: 7.646%; /* 76/994 */
  top: 6.208%;
  width: 11.771%;
  height: auto;
}

.product--2 .product__badge {
  position: absolute;
  left: 7.019%;
  top: 7.662%;
  width: 13.428%;
  height: auto;
}

.product--3 .product__badge {
  position: absolute;
  left: 7.314%;
  top: 6.199%;
  width: 14.41%;
  height: auto;
}

.product--1 .product__num {
  position: absolute;
  left: 9.658%;
  top: 9.717%;
  width: 8.249%;
  height: auto;
}

.product--2 .product__num {
  position: absolute;
  left: 9.257%;
  top: 11.039%;
  width: 9.257%;
  height: auto;
}

.product--3 .product__num {
  position: absolute;
  left: 9.716%;
  top: 9.704%;
  width: 9.934%;
  height: auto;
}

.product__name,
.product__desc,
.product__btn {
  position: absolute;
  z-index: 2;
  pointer-events: auto;
  user-select: text;
}

/* 产品卡标题：设计稿 55.56px、行高 81（移动小推车 / 设备联网 / 智能仓库） */
.product--1 .product__name { left: 9.059%; top: 26.428%; }
.product--2 .product__name { left: 8.686%; top: 27.121%; }
.product--3 .product__name { left: 9.105%; top: 26.416%; }

.canvas h3.product__name,
.product__name {
  font-size: 0.5556em; /* 55.56 / 100，相对画布 */
  line-height: 1.458; /* 81 / 55.56 */
  font-weight: 700;
  color: #000;
}

.product--1 .product__desc { left: 9.059%; top: 42.352%; }
.product--2 .product__desc { left: 8.686%; top: 42.445%; }
.product--3 .product__desc { left: 9.105%; top: 42.328%; }

.product__desc {
  font-size: 0.3333em;
  line-height: 1.384;
  color: var(--color-muted);
}

.product__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--color-primary);
  color: #fff;
  border-radius: 0.3667em;
  font-size: 0.3324em;
}

.product--1 .product__btn {
  left: 9.625%;
  top: 72.874%;
  width: 25.654%;
  height: 9.896%;
}

.product--2 .product__btn {
  left: 9.257%;
  top: 71.818%;
  width: 25.941%;
  height: 9.523%;
}

.product--3 .product__btn {
  left: 9.719%;
  top: 72.83%;
  width: 27.853%;
  height: 9.891%;
}

.product__btn img {
  width: 0.78em;
  margin-left: 0.46em;
}


/* =========================================================
   解决方案
   设计：x=216, y=3379.96, w=2767, h=1010.04
   ========================================================= */
.solutions {
  position: absolute;
  left: 6.75%;
  top: 51.84049%;
  width: 86.46875%;
  height: 15.49141%;
  z-index: 2;
}

.solution {
  position: absolute;
  top: 21.389%; /* 216.04/1010.04 */
  height: 52.77%; /* 533/1010.04 */
}

.solution--1 {
  left: 0;
  width: 25.587%; /* 708/2767 */
}

.solution--2 {
  left: 24.901%; /* 689/2767 */
  width: 25.37%;
}

.solution--3 {
  left: 49.657%; /* 1374/2767 */
  top: 21.092%;
  width: 25.334%;
  height: 53.067%;
}

.solution--4 {
  left: 74.304%; /* 2056/2767 */
  top: 21.29%;
  width: 25.37%;
  height: 52.869%;
}

.solution__visual {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: fill;
  pointer-events: none;
}

.solution__name,
.solution__desc,
.solution__link {
  position: absolute;
  z-index: 2;
  pointer-events: auto;
  user-select: text;
}

/* 标题相对各卡：约 x=105, y=111.76（327.8-216.04） */
.solution__name {
  left: 14.7%;
  top: 20.97%;
  font-size: 0.4444em;
  font-weight: 400;
  color: #000;
}

.solution__desc {
  left: 14.9%;
  top: 39.93%;
  font-size: 0.3333em;
  line-height: 1.384;
  color: var(--color-muted);
}

.solution__link {
  left: 14.65%;
  top: 75.79%;
  display: flex;
  align-items: center;
  font-size: 0.3324em;
  color: var(--color-primary);
}

.solution__link img {
  width: 0.75em;
  margin-left: 0.58em;
}

.solution__link--disabled {
  cursor: default;
}


/* =========================================================
   数据条 组 1
   画布：x=216, y=4106, w=2767, h=284
   ========================================================= */
.stats {
  position: absolute;
  left: 6.75%;
  top: 62.97546%;
  width: 86.46875%;
  height: 4.35583%;
  z-index: 2;
}

.stats__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: fill;
  pointer-events: none;
}

.stats__list {
  position: absolute;
  inset: 0;
}

.stats__item {
  position: absolute;
  top: 0;
  height: 100%;
}

/* 六项起点：84 / 539 / 994 / 1447 / 1902 / 2357，宽约 420 */
.stats__item--1 { left: 3.036%; width: 16.4%; }
.stats__item--2 { left: 19.479%; width: 16.4%; }
.stats__item--3 { left: 35.923%; width: 16.4%; }
.stats__item--4 { left: 52.295%; width: 16.4%; }
.stats__item--5 { left: 68.738%; width: 16.4%; }
.stats__item--6 { left: 85.182%; width: 14.8%; }

.stats__item img {
  position: absolute;
  left: 0;
  top: 26.761%; /* 76/284 */
  width: 28.57%; /* 120 / 约 420，随舞台宽度缩放，不写死 120px */
  height: auto;
}

.stats__item strong {
  position: absolute;
  left: 35.2%;
  top: 22.905%; /* 65.05/284 */
  font-size: 0.6111em;
  font-weight: 400;
  color: var(--color-primary);
  user-select: text;
}

.stats__item span {
  position: absolute;
  left: 35.6%;
  top: 54.915%; /* 155.96/284 */
  font-size: 0.2778em;
  color: #000;
  white-space: nowrap;
  user-select: text;
}


/* =========================================================
   客户案例
   标题画布 y=4454.96；卡片 y=4697, h=653
   舞台取 x=116, y=4454.96, w=2955, h=895.08
   ========================================================= */
.cases {
  position: absolute;
  left: 3.625%;
  top: 68.32761%;
  width: 92.34375%;
  height: 13.72822%; /* 895.08/6520 */
  z-index: 2;
}

.cases__arrow {
  position: absolute;
  top: 57.54%; /* (4970-4454.96)/895.08 */
  width: 3.655%; /* 108/2955 */
  height: auto;
  z-index: 3;
  padding: 0;
}

.cases__arrow img {
  width: 100%;
  height: auto;
}

.cases__arrow--prev { left: 0; }
.cases__arrow--next { right: 0; }

.cases__viewport {
  position: absolute;
  left: 3.824%; /* 113/2955 */
  top: 27.041%; /* (4697-4454.96)/895.08 */
  width: 92.453%;
  height: 72.955%;
  overflow: hidden;
}

.cases__track {
  display: flex;
  height: 100%;
  width: 100%;
  will-change: transform;
}

.case {
  position: relative;
  flex: 0 0 25%;
  width: 25%;
  height: 100%;
  box-sizing: border-box;
  padding-right: 1.15%;
}

.case__bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: fill;
  pointer-events: none;
}

/* XX行业标签：相对卡片 x=89.33, y=66.33, w=195, h=61.67 */
.case__tag {
  position: absolute;
  left: 12.853%;
  top: 10.158%;
  min-width: 28.058%;
  padding: 0.12em 0.35em;
  background: var(--color-primary);
  color: #fff;
  font-size: 0.3324em;
  text-align: center;
  border-radius: 0.808em;
  user-select: text;
}

.case__value {
  position: absolute;
  top: 66.216%;
  user-select: text;
}

.case__value--a { left: 12.76%; }
.case__value--b { left: 61.5%; }

.case__value strong {
  display: block;
  font-size: 0.6111em;
  font-weight: 400;
  color: var(--color-primary);
  line-height: 1.45;
}

.case__value span {
  display: block;
  margin-top: 0.04em;
  font-size: 0.2778em;
  color: #000;
}


/* =========================================================
   CTA 外框：x=219, y=5366, w=2760, h=467
   内部视觉见 shared/site-cta.css（与关于我们一致）
   ========================================================= */
.cta {
  position: absolute;
  left: 6.84375%;
  top: 82.30184%;
  width: 86.25%;
  height: 7.16258%;
  z-index: 2;
}


/* =========================================================
   页脚 底部
   设计框 x=-166.67, y=5852.7, h=668.33
   内容换算到画布后相对 footer 定位
   ========================================================= */
.footer {
  position: absolute;
  left: 0;
  top: 89.76534%;
  width: 100%;
  height: 10.25077%;
  z-index: 2;
  color: #fff;
}

.footer__bg {
  position: absolute;
  inset: 0;
  background: var(--color-footer);
}

/* 矩形 7：底部版权条 */
.footer__bar {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 20.449%; /* 136.67/668.33 */
  background: var(--color-footer-bar);
}

.footer__brand {
  position: absolute;
  left: 10.3125%;
  top: 16.504%; /* 110.3/668.33 */
  display: flex;
  align-items: flex-start;
}

.footer__logo {
  width: 1.44em; /* 立体 拷贝 144px */
  height: auto;
  flex-shrink: 0;
}

.footer__brand-text {
  margin-left: 0.22em;
}

.footer__brand-en {
  font-size: 0.4438em;
  line-height: 1.44;
  user-select: text;
}

.footer__brand-cn {
  width: 2.01em; /* 201px */
  margin-top: 0.08em;
}

.footer__about {
  position: absolute;
  left: 10.02%;
  top: 45.713%; /* (6158.22-5852.7)/668.33 */
  width: 20.813%;
  font-size: 0.3329em;
  line-height: 1.44;
  user-select: text;
}

.footer__divider {
  position: absolute;
  top: 15.959%;
  width: 0.104%;
  height: 52.619%;
  background: #d3d3d3;
}

.footer__divider--1 { left: 39.01%; }
.footer__divider--2 { left: 70.833%; }

.footer__contact {
  position: absolute;
  left: 45.645%;
  top: 20.071%;
}

.footer__follow {
  position: absolute;
  left: 78.613%;
  top: 20.071%;
}

.footer__heading {
  font-size: 0.3884em;
  font-weight: 400;
  user-select: text;
}

.footer__line {
  display: flex;
  align-items: flex-start;
  margin-top: 0.55em;
  font-size: 0.3884em;
  user-select: text;
}

.footer__line img {
  width: 1.2em;
  height: auto;
  margin-right: 0.28em;
  margin-top: 0.1em;
  flex-shrink: 0;
}

.footer__qrcode {
  width: 1.98em; /* 二维码 拷贝 198px */
  height: auto;
  margin-top: 0.35em;
}

.footer__copy {
  position: absolute;
  left: 10.02%;
  bottom: 6.2%;
  z-index: 2;
  font-size: 0.3329em;
  user-select: text;
}


/* =========================================================
   预约弹层
   ========================================================= */
.modal[hidden] {
  display: none;
}

.modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
}

.modal__mask {
  position: absolute;
  inset: 0;
  background: rgba(15, 23, 42, 0.45);
}

.modal__panel {
  position: absolute;
  left: 50%;
  top: 50%;
  width: min(92vw, 28em);
  transform: translate(-50%, -50%);
  padding: 1.6em 1.4em 1.3em;
  background: #fff;
  border-radius: 0.2em;
  box-shadow: 0 0.2em 1.2em rgba(25, 109, 244, 0.18);
}

.modal__panel h2 {
  font-size: 1.25em;
  margin-bottom: 0.5em;
}

.modal__panel p {
  font-size: 0.95em;
  color: #333;
}

.modal__panel a {
  color: var(--color-primary);
}

.modal__close {
  position: absolute;
  right: 0.6em;
  top: 0.3em;
  font-size: 1.4em;
  line-height: 1;
  color: #666;
}

.modal__links {
  display: flex;
  flex-direction: column;
  gap: 0.55em;
  margin-top: 1em;
}

.modal__link {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 2.6em;
  padding: 0.45em 1.2em;
  border-radius: 0.5em;
  background: var(--color-primary);
  color: #fff !important;
  font-size: 1em;
  text-decoration: none;
}

.modal__link:hover {
  filter: brightness(1.06);
}

span.modal__link {
  cursor: default;
  opacity: 0.72;
}

span.modal__link:hover {
  filter: none;
}

.modal__ok {
  margin-top: 1em;
  padding: 0.45em 1.2em;
  background: var(--color-primary);
  color: #fff;
  border-radius: 0.16em;
}

/* 预约演示弹层：未打开时彻底隐藏，避免 CSS 缓存/未刷新时表单露在页顶 */
#demoModal:not(.is-open) {
  display: none !important;
}

/* 预约演示弹层：与产品页同一套表单样式（不跟画布 em 走） */
#demoModal {
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.25s ease, visibility 0.25s;
}

#demoModal.is-open {
  display: flex;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

#demoModal .modal__overlay {
  position: absolute;
  inset: 0;
  background: rgba(8, 20, 45, 0.55);
}

#demoModal .modal__dialog {
  position: relative;
  z-index: 1;
  width: min(92vw, 28rem);
  background: #fff;
  border-radius: 0.8rem;
  padding: 1.8rem 1.6rem 1.5rem;
  box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.2);
  font-size: 16px;
  line-height: 1.5;
}

#demoModal .modal__close {
  position: absolute;
  right: 0.8rem;
  top: 0.5rem;
  font-size: 1.6rem;
  line-height: 1;
  color: #666;
}

#demoModal .modal__title {
  font-size: 1.35rem;
  margin-bottom: 1.2rem;
}

#demoModal .modal__field {
  display: block;
  margin-bottom: 0.9rem;
}

#demoModal .modal__field span {
  display: block;
  font-size: 0.9rem;
  margin-bottom: 0.35rem;
  color: #444;
}

#demoModal .modal__field input {
  width: 100%;
  padding: 0.65rem 0.75rem;
  border: 1px solid #d7dbe5;
  border-radius: 0.4rem;
  font: inherit;
}

#demoModal .modal__submit {
  width: 100%;
  margin-top: 0.4rem;
  padding: 0.75rem;
  background: var(--color-primary);
  color: #fff;
  border-radius: 0.45rem;
  font-size: 1rem;
  cursor: pointer;
}


/* =========================================================
   吸顶头部：仍按视口宽度缩放，不写死 1920 / 16px
   高度 = 设计 196 / 3200 × 视口宽 = 6.125vw
   ========================================================= */
.header.is-sticky {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 6.125vw;
  min-height: 0;
  transform: none;
  box-shadow: 0 0.08em 0.36em rgba(25, 109, 244, 0.08);
}

.header.is-sticky .header__bg {
  height: 100%;
}

/* =========================================================
   窄屏仅增强顶栏可点性，主体仍按百分比随窗口缩放
   不再在 1024px 把整页改成文档流，避免拖拽窗口时布局突变
   ========================================================= */
@media (max-width: 720px) {
  .header__menu-btn {
    display: block;
    right: 3%;
    width: 8vw;
    height: 8vw;
  }

  .header__menu-btn span {
    height: 0.35vw;
    margin: 1.1vw 0;
  }

  .header__nav {
    display: none;
    pointer-events: auto;
    top: 100%;
    height: auto;
    background: #fff;
    box-shadow: 0 0.2em 0.6em rgba(0, 0, 0, 0.08);
  }

  .header.is-open .header__nav {
    display: block;
  }

  .header__nav-list {
    position: static;
    display: flex;
    flex-direction: column;
    padding: 2vw 6%;
    gap: 2vw;
  }

  .header__nav-item {
    position: static;
    top: auto;
    left: auto;
  }

  .header__nav-item--dropdown .header__subnav {
    position: static;
    width: 100%;
    display: none;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    border: 0;
    padding: 1vw 0 1vw 4vw;
  }

  .header__nav-item--dropdown.is-open .header__subnav {
    display: block;
  }

  .header__subnav-link {
    font-size: 3.6vw;
    text-align: left;
    padding: 1.2vw 0;
  }

  .header__nav-link {
    font-size: 4.2vw;
  }

  .header__actions {
    display: none;
  }
}

/* 减弱动效：尊重系统「减少动态效果」 */
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }

  .reveal,
  .item-reveal,
  .banner-rise {
    opacity: 1;
    transform: none;
    transition: none;
    animation: none !important;
  }
}

/* 窄屏改用与关于我们一致的吸顶导航，隐藏画布内顶栏 */
@media (max-width: 991px) {
  .header {
    display: none;
  }
}
