.page-privacy{
  --pp-paper:#FCFAF4;
  --pp-rule:rgba(40,49,63,.14);
  --pp-soft:rgba(40,49,63,.045);
  --pp-text:var(--graphite);
  --pp-heading:var(--ink-navy);
  background:var(--fog);
  color:var(--pp-text);
  font-family:var(--font-body);
  line-height:1.8;
  overflow-x:hidden;
}

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

/* ---------- 首屏 ---------- */
.page-privacy__hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:var(--ink-navy);
  color:var(--fog);
  padding:clamp(22px,4.5vw,40px) 0 clamp(34px,6vw,64px);
}
.page-privacy__hero-media{
  position:absolute;
  inset:0;
  z-index:0;
}
.page-privacy__hero-media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.3;
}
.page-privacy__hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(112deg,rgba(10,17,31,.95) 0%,rgba(17,30,53,.88) 52%,rgba(92,31,44,.72) 100%);
}
.page-privacy__hero::after{
  content:"";
  position:absolute;
  right:-16%;
  bottom:-60%;
  width:52%;
  height:150%;
  z-index:1;
  background:var(--phoenix);
  opacity:.14;
  transform:skewX(-14deg);
  pointer-events:none;
}
.page-privacy__hero .fw-container{
  position:relative;
  z-index:2;
}

.page-privacy__crumb{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.08em;
  color:var(--fog-50);
}
.page-privacy__crumb-link{
  color:var(--fog-70);
  text-decoration:none;
  border-bottom:1px solid transparent;
  transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease);
}
.page-privacy__crumb-link:hover,
.page-privacy__crumb-link:focus-visible{
  color:var(--gold);
  border-bottom-color:var(--gold);
}
.page-privacy__crumb-sep{
  color:var(--phoenix);
}
.page-privacy__crumb-now{
  color:var(--fog-90);
}

.page-privacy__kicker{
  display:inline-flex;
  align-items:center;
  margin:clamp(18px,3vw,26px) 0 0;
  padding:6px 14px;
  border:1px solid var(--line);
  border-radius:var(--radius-pill);
  background:var(--fog-08);
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.16em;
  color:var(--gold);
}

.page-privacy__title{
  margin:16px 0 0;
  font-family:var(--font-display);
  font-weight:800;
  font-size:clamp(29px,6.2vw,56px);
  line-height:1.12;
  letter-spacing:-.01em;
  color:var(--fog);
}
.page-privacy__title::after{
  content:"";
  display:block;
  width:64px;
  height:4px;
  margin-top:18px;
  border-radius:2px;
  background:var(--phoenix);
}

.page-privacy__lead{
  max-width:62ch;
  margin:18px 0 0;
  font-size:clamp(15px,2vw,17.5px);
  line-height:1.85;
  color:var(--fog-90);
}

.page-privacy__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 22px;
  margin-top:22px;
}
.page-privacy__meta-item{
  position:relative;
  padding-left:14px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.05em;
  color:var(--fog-70);
}
.page-privacy__meta-item::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:6px;
  height:6px;
  border-radius:2px;
  background:var(--neon);
}

/* ---------- 双栏布局 ---------- */
.page-privacy__layout{
  display:grid;
  gap:clamp(18px,4vw,30px);
  padding:clamp(26px,5vw,52px) 0 clamp(44px,8vw,84px);
}

/* ---------- 目录 ---------- */
.page-privacy__toc{
  background:var(--ink-navy);
  border:1px solid var(--line);
  border-radius:var(--radius-m);
  padding:20px 16px;
  box-shadow:var(--shadow-deep);
}
.page-privacy__toc-title{
  margin:0 0 14px;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.2em;
  color:var(--gold);
}
.page-privacy__toc-list{
  display:grid;
  gap:2px;
  margin:0;
  padding:0;
  list-style:none;
}
.page-privacy__toc-link{
  display:flex;
  gap:10px;
  align-items:baseline;
  padding:9px 10px;
  border-radius:10px;
  color:var(--fog-70);
  font-size:14px;
  line-height:1.45;
  text-decoration:none;
  transition:background var(--dur) var(--ease),color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.page-privacy__toc-link:hover,
.page-privacy__toc-link:focus-visible{
  background:var(--fog-08);
  color:var(--fog);
  box-shadow:inset 2px 0 0 var(--phoenix);
}
.pp-idx{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.06em;
  color:var(--gold);
}

/* ---------- 条款正文 ---------- */
.page-privacy__doc{
  display:grid;
  gap:clamp(16px,3.5vw,26px);
  min-width:0;
}
.doc-section{
  background:var(--pp-paper);
  border:1px solid var(--pp-rule);
  border-radius:var(--radius-m);
  padding:clamp(20px,4vw,36px);
  scroll-margin-top:104px;
  transition:box-shadow var(--dur-slow) var(--ease),border-color var(--dur-slow) var(--ease);
}
.doc-section:target{
  border-color:rgba(255,90,31,.55);
  box-shadow:inset 4px 0 0 var(--phoenix);
}
.doc-section__head{
  padding-bottom:14px;
  margin-bottom:16px;
  border-bottom:1px solid var(--pp-rule);
}
.doc-section__head::after{
  content:"";
  display:block;
  width:36px;
  height:3px;
  margin-top:12px;
  border-radius:2px;
  background:var(--phoenix);
}
.doc-section__idx{
  display:block;
  margin-bottom:6px;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.16em;
  color:var(--ember);
}
.doc-section__title{
  margin:0;
  font-family:var(--font-display);
  font-weight:800;
  font-size:clamp(20px,3.4vw,29px);
  line-height:1.32;
  letter-spacing:-.005em;
  color:var(--pp-heading);
}
.doc-text{
  max-width:70ch;
  margin:0 0 13px;
  font-size:15px;
  line-height:1.85;
  color:var(--pp-text);
}
.doc-text:last-child{
  margin-bottom:0;
}
.doc-list{
  display:grid;
  gap:9px;
  max-width:70ch;
  margin:0 0 14px;
  padding:0;
  list-style:none;
}
.doc-list li{
  position:relative;
  padding-left:24px;
  font-size:15px;
  line-height:1.8;
  color:var(--pp-text);
}
.doc-list li::before{
  content:"";
  position:absolute;
  left:2px;
  top:.72em;
  width:12px;
  height:2px;
  border-radius:1px;
  background:var(--phoenix);
}
.doc-list strong{
  color:var(--pp-heading);
}

/* 定义与提示块 */
.doc-note{
  margin:0 0 14px;
  padding:14px 16px;
  border-left:3px solid var(--gold);
  border-radius:0 12px 12px 0;
  background:rgba(255,200,87,.17);
  font-size:14.5px;
  line-height:1.8;
  color:var(--pp-text);
}
.doc-note strong{
  color:var(--pp-heading);
}

/* 表格 */
.doc-table-wrap{
  margin:4px 0 16px;
  overflow-x:auto;
  border:1px solid var(--pp-rule);
  border-radius:12px;
  -webkit-overflow-scrolling:touch;
}
.doc-table{
  width:100%;
  min-width:520px;
  border-collapse:collapse;
  font-size:14px;
}
.doc-table__caption{
  padding:11px 14px;
  text-align:left;
  font-family:var(--font-mono);
  font-size:11.5px;
  letter-spacing:.1em;
  color:var(--ember);
  background:var(--pp-soft);
}
.doc-table th{
  padding:10px 14px;
  background:var(--ink-navy);
  color:var(--fog);
  text-align:left;
  font-family:var(--font-display);
  font-weight:700;
  font-size:13px;
  letter-spacing:.03em;
  white-space:nowrap;
}
.doc-table td{
  padding:11px 14px;
  border-top:1px solid var(--pp-rule);
  vertical-align:top;
  line-height:1.72;
  color:var(--pp-text);
}
.doc-table tbody tr:nth-child(even) td{
  background:var(--pp-soft);
}
.doc-table td:first-child{
  font-weight:600;
  color:var(--pp-heading);
  white-space:nowrap;
}

/* 权利卡片 */
.doc-rights{
  display:grid;
  gap:10px;
  margin:0 0 16px;
}
.doc-right{
  padding:14px 16px;
  border:1px solid var(--pp-rule);
  border-radius:12px;
  background:rgba(255,255,255,.62);
  transition:border-color var(--dur) var(--ease),box-shadow var(--dur) var(--ease);
}
.doc-right:hover{
  border-color:rgba(255,90,31,.45);
  box-shadow:var(--shadow-hot);
}
.doc-right__label{
  display:block;
  margin-bottom:5px;
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.16em;
  color:var(--ember);
}
.doc-right p{
  margin:0;
  font-size:14px;
  line-height:1.75;
  color:var(--pp-text);
}

/* 联系块 */
.doc-contact{
  margin:4px 0 16px;
  padding:clamp(18px,4vw,26px);
  border-radius:var(--radius-m);
  background:var(--deck);
  color:var(--fog);
}
.doc-contact__rows{
  display:grid;
  gap:12px;
}
.doc-contact__row{
  display:grid;
  gap:3px;
  padding-top:11px;
  border-top:1px solid var(--line);
}
.doc-contact__row:first-child{
  padding-top:0;
  border-top:0;
}
.doc-contact__label{
  font-family:var(--font-mono);
  font-size:11px;
  letter-spacing:.18em;
  color:var(--gold);
}
.doc-contact__value{
  font-size:15px;
  line-height:1.72;
  color:var(--fog-90);
  overflow-wrap:break-word;
  word-break:break-word;
}

/* 行内与页尾链接 */
.doc-inline-link{
  color:var(--ember);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  transition:color var(--dur) var(--ease);
}
.doc-inline-link:hover,
.doc-inline-link:focus-visible{
  color:var(--phoenix);
}
.page-privacy__tail{
  margin-top:16px;
}
.doc-top-link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-top:6px;
  padding-bottom:2px;
  border-bottom:1px dashed currentColor;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.1em;
  color:var(--ember);
  text-decoration:none;
  transition:color var(--dur) var(--ease);
}
.doc-top-link:hover,
.doc-top-link:focus-visible{
  color:var(--phoenix);
}
.doc-top-link::before{
  content:"↑";
  font-size:13px;
}

/* ---------- 断点 ---------- */
@media (min-width:620px){
  .doc-rights{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (min-width:900px){
  .page-privacy__layout{
    grid-template-columns:284px minmax(0,1fr);
    align-items:start;
  }
  .page-privacy__toc{
    position:sticky;
    top:96px;
    padding:22px 18px;
  }
  .doc-contact__rows{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px 24px;
  }
  .doc-contact__row--wide{
    grid-column:1 / -1;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-privacy .doc-section,
  .page-privacy .doc-right,
  .page-privacy__toc-link,
  .page-privacy__crumb-link,
  .doc-inline-link,
  .doc-top-link{
    transition:none;
  }
}
<<<END>>>
