/* =============================================================================
   怜吻 · 严肃婚恋服务平台（www.szhedian.cn / vest 92 / 深圳市河点科技有限公司）
   源文件: figma.com/design/w1yEwtRyWACCPhy3QIh0mh  node 205005:6360
   画板: 1683 x 3641，底色 #f4eeee

   🔴 与 `app-website/lianwen/`（lw.szhedian.cn）是**两个不同的站**：
      那个是社交向落地页（画板 2476x5334、另一个 Figma 文件 GGjTPpeKWWw1NS88s5HCRp），
      这个是婚恋合规展示页。两站页脚共用同一套主体信息，其余没有任何共享。

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

   注意：不引 Google Fonts —— 展示机在国内，fonts.googleapis.com 会被墙掉
   导致首屏阻塞。正文一律走系统 CJK 字体栈。
   原稿字体是 Abhaya Libre Regular（西文字体，中文由 Figma 回落到系统 CJK 黑体），
   这里直接用系统 CJK 栈 + font-weight:400，视觉一致。

   🔴 文本 top 值不是 Figma 节点的 y，而是「节点 y − 行盒上留白」——
      原稿 line-height 是 auto，CSS 复现时行盒比字面高，直接照抄 y 会整体下坠约 8px。
      本文件的 top 已按 1:1 原稿渲染图逐段量过墨迹边界校准（见各行注释里的原稿 y）。
   ========================================================================== */

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

/* html 也要 overflow-x:hidden —— 只给 body 设，缩放档位有零头时
   documentElement 仍会横向溢出（实测 1024 视口下 scrollWidth 1077 > clientWidth 1009） */
html { -webkit-text-size-adjust: 100%; overflow-x: hidden; }

body { margin: 0; background: #f4eeee; 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:      #f4eeee;   /* 画板底色 */
  --c-ink:     #000;
  --c-nav-ink: #141315;   /* 导航「首页」（当前项）比其余项略浅 */
  --c-cta-bg:  #10100e;   /* 「下载」胶囊按钮 */
}

.canvas { background: var(--c-bg); }

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

.page {
  position: relative;
  width: 1683px;
  height: 3641px;
}

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

/* .pair 只在窄屏才是真容器，宽屏让两张图各自按原稿坐标定位 */
.pair { display: contents; }

/* ============================== 顶部导航 ============================== */
/* 原稿里导航是独立 frame（205005:6363，1654x179，贴画板左上角），底色与画板同为
   #f4eeee —— 不是白条，所以这里不设 background，直接叠在 .page 空出来的顶部。 */
.nav {
  position: absolute;
  left: 0; top: 0;
  width: 1654px; height: 179px;
}

.nav-mark {
  position: absolute;
  left: 25px; top: 9px;
  width: 166px; height: 161px;
  object-fit: cover;
}

/* 原稿字号 64 / 行距 32 —— 行距小于字号是 Figma 里的实际值，
   视觉中心 = top + 16px，写死才能和原稿对齐，别「顺手」改成 1.2 倍行距 */
.nav-word {
  position: absolute;
  left: 275px; top: 89px;
  width: 147px;
  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: 888px; top: 73px;
  height: 33px;
  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-ink);
  white-space: nowrap;
  transition: opacity .2s;
}

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

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

.nav-cta {
  position: absolute;
  left: 1458px; top: 65px;
  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; }

/* ============================== 标题 ============================== */
.tt {
  position: absolute;
  color: var(--c-ink);
  font-family: var(--f-han);
  font-size: 64px; font-weight: 400; line-height: 1;
  letter-spacing: 1.92px;
  white-space: nowrap;
}

/* 原稿 y=532；文案前有一个半角空格（宽 ~14px），故 left = 245 + 14 */
.tt-1 { left: 259px; top:  531px; }   /* 严肃婚恋服务平台 */
.tt-2 { left: 799px; top: 1536px; }   /* 个人婚恋档案 */
.tt-3 { left: 313px; top: 2486px; }   /* 智能匹配推荐 */

/* ============================== 正文 ============================== */
.txt {
  position: absolute;
  color: var(--c-ink);
  font-family: var(--f-han);
  font-size: 40px; font-weight: 400; line-height: 1;
  letter-spacing: 1.2px;
  white-space: nowrap;
}

.txt-1 { left: 122px; top:  782px; }   /* 原稿 y=783 */
.txt-2 { left: 615px; top: 1733px; }   /* 原稿 y=1734 */
.txt-3 { left: 132px; top: 2669px; }   /* 原稿 y=2670 */

/* 免责声明：字号更小、行盒补偿也更小 */
.note {
  position: absolute;
  left: 121px; top: 3567px;            /* 原稿 y=3568 */
  color: var(--c-ink);
  font-family: var(--f-han);
  font-size: 32px; font-weight: 400; line-height: 1;
  letter-spacing: 0.96px;
  white-space: nowrap;
}

/* ============================ App 截图 ============================ */
/* 原图均为 1438x2560（同一比例 0.5617），这里按原稿显示尺寸缩放 */
.ph {
  position: absolute;
  object-fit: cover;
}

.ph-home    { left: 1219px; top:  586px; width: 314px; height: 559px; }
.ph-profile { left:  176px; top: 1471px; width: 363px; height: 647px; }
.ph-mine    { left:  472px; top: 2811px; width: 286px; height: 509px; }
.ph-match   { left:  913px; top: 2811px; width: 295px; height: 525px; }

/* ======================= 中屏：整体等比缩放 ======================= */
/* zoom 而非 transform:scale —— zoom 会带动布局高度，页面不会留白 */
/* 每档的 zoom 按该区间**最窄**的视口算：(下界 − 20px 滚动条余量) ÷ 1683，
   否则档内最窄那几像素会横向溢出（旧值 .64 在 1024 视口下就溢出了 68px） */
@media (max-width: 1682px) { .stage { zoom: .93; } }
@media (max-width: 1600px) { .stage { zoom: .87; } }
@media (max-width: 1500px) { .stage { zoom: .81; } }
@media (max-width: 1400px) { .stage { zoom: .76; } }
@media (max-width: 1300px) { .stage { zoom: .70; } }
@media (max-width: 1200px) { .stage { zoom: .64; } }
@media (max-width: 1100px) { .stage { zoom: .58; } }
@media (max-width: 1000px) { .stage { zoom: .52; } }
@media (max-width:  900px) { .stage { zoom: .47; } }
@media (max-width:  820px) { .stage { zoom: .44; } }

/* ========================= 窄屏：单栏流式 ========================= */
/* 原稿是 1683 宽的桌面画板，手机上按 DOM 顺序重排，不再还原绝对坐标 */
@media (max-width: 767px) {
  .stage { zoom: 1; width: 100%; }

  .page {
    width: 100%;
    height: auto;
    padding: 96px 20px 48px;   /* 顶部留给绝对定位的 .nav（72px）+ 24px 呼吸 */
  }

  /* 导航压成固定高度的普通栏；窄屏放不下三个导航项，收起，只留下载按钮
     （联系方式在页脚，「关于我们」的内容本身就在下面） */
  .nav { width: 100%; height: 72px; }

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

  .nav-word {
    left: 80px; 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;
  }

  .page section {
    display: block;
    margin-bottom: 44px;
  }

  .tt, .txt, .note, .ph {
    position: static;
    white-space: normal;
  }

  .tt {
    font-size: 24px; line-height: 1.5; letter-spacing: .6px;
    margin-bottom: 10px;
  }

  .txt {
    font-size: 15px; line-height: 1.7; letter-spacing: .4px;
  }

  .ph {
    width: 100%; max-width: 240px; height: auto;
    margin: 20px auto 0;
    border-radius: 8px;
  }

  /* 「我的」「匹配推荐」两张并排 */
  .pair {
    display: flex;
    gap: 12px;
    justify-content: center;
    margin-top: 20px;
  }

  .pair .ph { margin: 0; max-width: 46%; }

  .note {
    font-size: 12px; line-height: 1.7; letter-spacing: .2px;
    color: rgba(0, 0, 0, .6);
    margin-top: 8px;
  }
}

/* ================================ 页脚 ================================ */
/* 与 lianwen / ruanying / yunian 三站逐字节相同 */
.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 .site-footer__sep`：
        单写 `.site-footer__sep`（0,1,0）打不过上一行的 `.site-footer__contact span`（0,1,1），
        竖线会变成 block 单占一行。lianwen / ruanying / yunian 三站现网就是这个写法、
        窄屏页脚中间多一行「|」—— 那三站未随本站一起改，改的时候记得连这条一起。 */
  .site-footer__contact span { display: block; }
  .site-footer__contact .site-footer__sep { display: none; }
}
