/* =============================================================================
   软迎（vest 70 / 深圳市河点科技有限公司）- Figma 1:1 复刻
   源文件: figma.com/design/GGjTPpeKWWw1NS88s5HCRp  node 204874:6369
   画板: 2257 x 7268

   >=2257px   完全按 Figma 绝对坐标渲染，像素级还原
   820-2256px 整体等比缩放（zoom），版式不变
   <768px     单栏流式布局（移动端适配，非原稿版式）

   注意：不引 Google Fonts —— 展示机在国内，fonts.googleapis.com 会被墙掉
   导致首屏阻塞。正文一律走系统 CJK 字体栈。

   截图文件名沿用 Figma 图层名（ry1..ry6），与页面章节顺序不是一一对应：
   章节 1=ry2、2=ry1、3=ry3、4=ry4、5=ry6、6=ry5。改图时按文件名对，不要按序号猜。
   ========================================================================== */

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; }

body { margin: 0; background: #fff9ec; overflow-x: hidden; }

h1, h2, p { margin: 0; font-weight: inherit; }

img { display: block; }

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

:root {
  --f-han: "PingFang SC", "Source Han Sans SC", "Noto Sans SC", "Hiragino Sans GB",
           "Microsoft YaHei", sans-serif;

  --c-bg:      #fff9ec;  /* 画板底色（原稿是纯色，不是渐变） */
  --c-nav-bg:  #fbf4e4;  /* 导航条底色 */
  --c-ink:     #000;
  --c-nav-ink: #282626;
  --c-nav-dim: #d9d9d9;  /* 「首页」在原稿里就是浅灰（当前页态） */
  --c-cta-bg:  #10100e;
}

/* 底色铺满整个视口宽度，.stage 两侧留白不会露边 */
.canvas { background: var(--c-bg); }

.stage { width: 2257px; margin: 0 auto; }

.page {
  position: relative;
  width: 2257px;
  height: 7268px;
}

/* section 不参与定位，子元素直接相对 .page 绝对定位 */
.page section { position: static; }

/* ============================== 顶部导航 ============================== */
/* 原稿导航 frame 宽 2774（超出画板 517px），这里裁到画板宽，子元素沿用画板绝对坐标 */
.nav {
  position: absolute;
  left: 0; top: 0;
  width: 2257px; height: 175px;
  background: var(--c-nav-bg);
}

.nav-mark {
  position: absolute;
  left: 50px; top: 19px;
  width: 147px; height: 151px;
  object-fit: cover;
}

/* 原稿字号 64 / 行距 32 —— 行距小于字号是 Figma 里的实际值，
   视觉中心 = top + 16px，写死才能和原稿对齐，别"顺手"改成 1.2 倍行距 */
.nav-word {
  position: absolute;
  left: 230px; top: 87px;
  width: 128px;
  font-family: var(--f-han);
  font-size: 64px; font-weight: 400; line-height: 32px;
  color: var(--c-ink);
  white-space: nowrap;
}

.nav-links {
  position: absolute;
  left: 622px; top: 49px;
  height: 86px;
  display: flex;
  align-items: center;
  gap: 60px;
}

.nav-links a {
  font-family: var(--f-han);
  font-size: 22px; font-weight: 700; line-height: 33px;
  letter-spacing: 0.66px;
  color: var(--c-nav-ink);
  white-space: nowrap;
  transition: opacity .2s;
}

.nav-links a.is-current { color: var(--c-nav-dim); }

.nav-links a:hover { opacity: .6; }

.nav-cta {
  position: absolute;
  left: 1707px; top: 79px;
  width: 120px; height: 56px;
  border-radius: 40px;
  background: var(--c-cta-bg);
  color: #fff;
  font-family: var(--f-han);
  font-size: 20px; font-weight: 700; line-height: 56px;
  text-align: center;
  transition: opacity .2s;
}

.nav-cta:hover { opacity: .85; }

/* ============================== 章节标题 ============================== */
/* 原稿字号 64 / 行距 normal(≈1.21) / 字距 1.92 */
.tt {
  position: absolute;
  font-family: var(--f-han);
  font-size: 64px; font-weight: 400; line-height: 77px;
  letter-spacing: 1.92px;
  color: var(--c-ink);
  white-space: nowrap;
}

.tt-1 { left:  302px; top:  559px; }
.tt-2 { left: 1091px; top: 1829px; }
.tt-3 { left:  294px; top: 2990px; }
.tt-4 { left: 1033px; top: 4107px; }
.tt-5 { left:  267px; top: 5104px; }
.tt-6 { left:  981px; top: 6252px; }

/* ============================== 正文文案 ============================== */
/* 原稿字号 40 / 行距 normal(≈1.21) / 字距 1.2 —— 行距与字距写死，
   保证换行点与 Figma 一致（实测每行 17 字、首段 5 行） */
.txt {
  position: absolute;
  font-family: var(--f-han);
  font-size: 40px; font-weight: 400; line-height: 48px;
  letter-spacing: 1.2px;
  color: var(--c-ink);
}

.txt-1 { left:  371px; top:  790px; width: 720px; }
.txt-2 { left: 1091px; top: 2098px; width: 770px; }
.txt-3 { left:  310px; top: 3169px; width: 908px; }
.txt-4 { left: 1033px; top: 4334px; width: 811px; }
.txt-5 { left:  275px; top: 5279px; width: 953px; }
.txt-6 { left: 1011px; top: 6429px; width: 776px; }

/* ============================== 截图组件 ============================== */
.ry {
  position: absolute;
  object-fit: cover;
  max-width: none;
}

.ry-2 { left: 1482px; top:  336px; width: 498.0px; height: 1081.0px; }
.ry-1 { left:  274px; top: 1680px; width: 516.5px; height: 1105.5px; }
.ry-3 { left: 1550px; top: 2833px; width: 516.0px; height: 1105.5px; }
.ry-4 { left:  275px; top: 3821px; width: 515.5px; height: 1104.5px; }
.ry-6 { left: 1331px; top: 4762px; width: 512.5px; height: 1112.5px; }
.ry-5 { left:  267px; top: 6008px; width: 514.0px; height: 1111.5px; }

/* ======================= 820-2256px 等比缩放 ======================= */
@media (max-width: 2256px) { .stage { zoom: .99; } }
@media (max-width: 2100px) { .stage { zoom: .93; } }
@media (max-width: 1900px) { .stage { zoom: .84; } }
@media (max-width: 1700px) { .stage { zoom: .75; } }
@media (max-width: 1500px) { .stage { zoom: .66; } }
@media (max-width: 1400px) { .stage { zoom: .62; } }
@media (max-width: 1300px) { .stage { zoom: .57; } }
@media (max-width: 1200px) { .stage { zoom: .53; } }
@media (max-width: 1100px) { .stage { zoom: .48; } }
@media (max-width: 1000px) { .stage { zoom: .44; } }
@media (max-width:  900px) { .stage { zoom: .39; } }
@media (max-width:  820px) { .stage { zoom: .36; } }

/* ================= <768px 单栏流式布局（移动端适配，非原稿版式） ================= */
@media (max-width: 767px) {

  .stage { zoom: 1; width: 100%; }

  .page {
    width: 100%;
    height: auto;
    padding: 96px 24px 72px;
  }

  .page section {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    margin-bottom: 56px;
  }

  .s6 { margin-bottom: 0; }

  /* 导航压成固定高度的普通栏 */
  .nav {
    position: absolute;
    left: 0; top: 0;
    width: 100%; height: 72px;
  }

  .nav-mark { left: 14px; top: 10px; width: 51px; height: 52px; }

  .nav-word {
    left: 76px; top: 10px;
    width: auto; height: 52px;
    font-size: 28px; line-height: 52px;
  }

  /* 窄屏放不下导航项，收起，只留下载按钮；页脚里有联系方式 */
  .nav-links { display: none; }

  .nav-cta {
    left: auto; right: 14px; top: 18px;
    width: 88px; height: 38px;
    font-size: 15px; line-height: 38px;
  }

  .tt,
  .txt,
  .ry {
    position: static;
    left: auto; top: auto;
  }

  .tt {
    width: 100%;
    font-size: 22px; line-height: 34px; letter-spacing: .6px;
    white-space: normal;
    font-weight: 700;
  }

  .txt {
    width: 100%;
    font-size: 17px; line-height: 32px; letter-spacing: .5px;
  }

  .ry {
    width: 100%;
    max-width: 320px;
    height: auto;
  }
}

/* ================================ 页脚 ================================ */
.site-footer {
  background: #000;
  color: rgba(255, 255, 255, .72);
  font-family: var(--f-han);
  padding: 40px 24px;
}

.site-footer__inner {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center;
  line-height: 1.9;
}

.site-footer__corp {
  color: #fff;
  font-size: 16px;
  font-weight: 700;
}

.site-footer__addr,
.site-footer__contact {
  font-size: 13px;
}

.site-footer__sep {
  margin: 0 10px;
  color: rgba(255, 255, 255, .35);
}

.site-footer__icp {
  margin-top: 8px;
  font-size: 13px;
}

.site-footer__icp a {
  color: rgba(255, 255, 255, .72);
  transition: color .2s;
}

.site-footer__icp a:hover { color: #fff; }

@media (max-width: 767px) {
  .site-footer { padding: 28px 16px; }
  .site-footer__corp { font-size: 15px; }
  .site-footer__addr,
  .site-footer__contact,
  .site-footer__icp { font-size: 12px; }
  /* 窄屏把「手机号 | 邮箱」拆成两行，竖线隐藏 */
  .site-footer__contact span { display: block; }
  .site-footer__sep { display: none; }
}
