:root{
  --brand:#9f1239;
  --accent:#e11d48;
  --bg:#fafafa;
  --ink:#3f0a1a;
  --line:#e5d5da;
  --muted:#8a6b74;
  --serif:"Noto Serif SC","Songti SC","Source Han Serif SC",serif;
  --sans:"Inter","Noto Sans SC","PingFang SC","Microsoft YaHei",sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--bg);
  color:var(--ink);
  font-family:var(--sans);
  font-size:16px;
  line-height:1.75;
  -webkit-font-smoothing:antialiased;
}
h1,h2,h3,h4,.serif{font-family:var(--serif);font-weight:700;letter-spacing:.01em;}
a{color:var(--brand);text-decoration:none;}
a:hover{color:var(--accent);}
img{max-width:100%;display:block;}
.container-narrow{max-width:1120px;margin:0 auto;padding:0 22px;}

/* progress */
#readProgress{
  position:fixed;top:0;left:0;height:3px;width:0;
  background:var(--accent);z-index:2000;transition:width .08s linear;
}

/* nav */
.site-nav{
  position:sticky;top:0;z-index:1500;
  background:rgba(250,250,250,.94);
  backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.nav-inner{
  max-width:1120px;margin:0 auto;padding:0 22px;
  display:flex;align-items:center;justify-content:space-between;height:66px;
}
.brand{
  font-family:var(--serif);font-size:1.32rem;font-weight:700;color:var(--ink);
  display:inline-flex;align-items:center;gap:9px;letter-spacing:.02em;
}
.brand i{color:var(--accent);font-size:1.05rem;}
.brand:hover{color:var(--brand);}
.nav-links{display:flex;gap:28px;align-items:center;list-style:none;margin:0;padding:0;}
.nav-links a{
  color:var(--ink);font-size:.93rem;font-weight:500;position:relative;padding:4px 0;
}
.nav-links a::after{
  content:"";position:absolute;left:0;bottom:-2px;width:0;height:1.5px;background:var(--accent);
  transition:width .3s ease;
}
.nav-links a:hover::after{width:100%;}
.nav-toggle{
  display:none;background:none;border:1px solid var(--line);border-radius:4px;
  padding:6px 11px;color:var(--ink);font-size:1.05rem;
}
@media(max-width:860px){
  .nav-links{
    position:absolute;top:66px;left:0;right:0;background:var(--bg);
    border-bottom:1px solid var(--line);flex-direction:column;gap:0;
    padding:0;max-height:0;overflow:hidden;transition:max-height .35s ease;
  }
  .nav-links.open{max-height:340px;}
  .nav-links li{width:100%;border-top:1px solid var(--line);}
  .nav-links a{display:block;padding:13px 22px;}
  .nav-links a::after{display:none;}
  .nav-toggle{display:block;}
}

/* hero */
.hero{
  position:relative;overflow:hidden;
  padding:96px 0 130px;
  border-bottom:1px solid var(--line);
}
.hero-parallax{
  position:absolute;inset:-14% 0 -14% 0;z-index:0;pointer-events:none;
  background:
    radial-gradient(circle at 12% 28%, rgba(159,18,57,.10), transparent 46%),
    radial-gradient(circle at 84% 66%, rgba(225,29,72,.09), transparent 48%);
  will-change:transform;
}
.hero-inner{position:relative;z-index:2;max-width:860px;}
.hero-kicker{
  display:inline-block;font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;
  color:var(--brand);border:1px solid var(--brand);border-radius:2px;
  padding:5px 13px;margin-bottom:30px;font-weight:600;
}
.hero h1{
  font-size:clamp(2.15rem,5.4vw,4rem);line-height:1.18;margin:0 0 26px;
  letter-spacing:-.015em;
}
.hero h1 em{font-style:normal;color:var(--brand);}
.hero-sub{
  font-size:clamp(1rem,1.7vw,1.16rem);color:var(--muted);max-width:620px;margin:0 0 40px;
}
.btn-row{display:flex;flex-wrap:wrap;gap:14px;}
.btn-main,.btn-ghost{
  display:inline-flex;align-items:center;gap:9px;
  padding:14px 30px;font-size:.95rem;font-weight:600;border-radius:2px;
  transition:all .25s ease;border:1px solid var(--brand);
}
.btn-main{background:var(--brand);color:#fff;}
.btn-main:hover{background:var(--accent);border-color:var(--accent);color:#fff;transform:translateY(-2px);}
.btn-ghost{background:transparent;color:var(--brand);}
.btn-ghost:hover{background:var(--brand);color:#fff;transform:translateY(-2px);}
.hero-wave{
  position:absolute;left:0;right:0;bottom:-1px;height:64px;z-index:1;
}
.hero-wave svg{width:100%;height:100%;display:block;}

/* section base */
section{padding:88px 0;position:relative;}
.sec-tag{
  font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--accent);font-weight:700;margin-bottom:14px;display:block;
}
.sec-title{
  font-size:clamp(1.6rem,3.2vw,2.5rem);line-height:1.25;margin:0 0 16px;
}
.sec-desc{color:var(--muted);max-width:640px;margin:0 0 46px;font-size:1rem;}

/* stats */
.stats-row{
  display:grid;grid-template-columns:repeat(4,1fr);gap:0;
  border:1px solid var(--line);margin-bottom:56px;
}
.stat-cell{
  padding:30px 22px;text-align:center;border-right:1px solid var(--line);
}
.stat-cell:last-child{border-right:none;}
.stat-num{
  font-family:var(--serif);font-size:clamp(1.7rem,3.6vw,2.7rem);
  font-weight:700;color:var(--brand);line-height:1.1;display:block;
}
.stat-num span{font-size:.55em;margin-left:2px;}
.stat-label{font-size:.82rem;color:var(--muted);margin-top:8px;letter-spacing:.04em;}
@media(max-width:720px){
  .stats-row{grid-template-columns:repeat(2,1fr);}
  .stat-cell:nth-child(2){border-right:none;}
  .stat-cell:nth-child(1),.stat-cell:nth-child(2){border-bottom:1px solid var(--line);}
}

/* comparison table */
.compare-wrap{overflow-x:auto;border:1px solid var(--line);background:#fff;}
table.compare{
  width:100%;border-collapse:collapse;min-width:640px;font-size:.94rem;
}
table.compare thead th{
  background:var(--ink);color:#fff;font-family:var(--serif);
  font-weight:600;padding:18px 22px;text-align:left;font-size:.98rem;
  border-right:1px solid rgba(255,255,255,.14);
}
table.compare thead th:last-child{border-right:none;}
table.compare tbody td{
  padding:17px 22px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);
  vertical-align:top;color:var(--ink);
}
table.compare tbody td:last-child{border-right:none;}
table.compare tbody tr:last-child td{border-bottom:none;}
table.compare tbody tr:hover td{background:#fdf3f5;}
td.cell-yes{color:var(--brand);font-weight:600;}
td.cell-dim{color:var(--muted);}
.tag-pill{
  display:inline-block;font-size:.72rem;padding:2px 9px;border:1px solid var(--brand);
  color:var(--brand);border-radius:999px;margin-left:8px;vertical-align:middle;font-weight:600;
}

/* faq */
.faq-list{border-top:1px solid var(--line);}
.faq-item{border-bottom:1px solid var(--line);}
.faq-q{
  width:100%;background:none;border:none;text-align:left;
  padding:26px 44px 26px 0;position:relative;cursor:pointer;
  font-family:var(--serif);font-size:1.08rem;font-weight:700;color:var(--ink);
  line-height:1.55;transition:color .2s;
}
.faq-q:hover{color:var(--brand);}
.faq-q .faq-icon{
  position:absolute;right:6px;top:50%;transform:translateY(-50%);
  color:var(--accent);font-size:.9rem;transition:transform .3s ease;
}
.faq-item.open .faq-q .faq-icon{transform:translateY(-50%) rotate(45deg);}
.faq-a{
  max-height:0;overflow:hidden;transition:max-height .38s ease;
}
.faq-a p{
  margin:0;padding:0 44px 28px 0;color:var(--muted);font-size:.96rem;line-height:1.85;
}

/* intro / numbered list */
.intro-block{
  display:grid;grid-template-columns:0.9fr 1.1fr;gap:64px;align-items:start;
}
.intro-lead{
  font-family:var(--serif);font-size:1.28rem;line-height:1.7;color:var(--ink);margin:0 0 22px;
}
.intro-side p{color:var(--muted);font-size:.96rem;margin:0 0 16px;}
.num-list{list-style:none;margin:0;padding:0;counter-reset:step;}
.num-list li{
  counter-increment:step;position:relative;padding:22px 0 22px 62px;
  border-bottom:1px solid var(--line);
}
.num-list li:first-child{border-top:1px solid var(--line);}
.num-list li::before{
  content:counter(step,decimal-leading-zero);
  position:absolute;left:0;top:22px;
  font-family:var(--serif);font-size:1.42rem;font-weight:700;color:var(--accent);
  line-height:1.2;letter-spacing:.02em;
}
.num-list h4{margin:0 0 7px;font-size:1.04rem;}
.num-list p{margin:0;color:var(--muted);font-size:.93rem;line-height:1.8;}
@media(max-width:860px){
  .intro-block{grid-template-columns:1fr;gap:40px;}
}

/* community cards with hover */
.card-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:52px;
}
@media(max-width:900px){.card-grid{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.card-grid{grid-template-columns:1fr;}}
.mini-card{
  border:1px solid var(--line);background:#fff;overflow:hidden;
}
.mini-card .thumb{
  position:relative;aspect-ratio:16/10;overflow:hidden;background:#f3e6ea;
}
.mini-card .thumb img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .55s cubic-bezier(.2,.7,.3,1);
}
.mini-card:hover .thumb img{transform:scale(1.07);}
.thumb-overlay{
  position:absolute;inset:0;display:flex;align-items:flex-end;
  background:linear-gradient(to top, rgba(63,10,26,.82), rgba(63,10,26,.12) 55%, transparent);
  opacity:0;transition:opacity .4s ease;padding:20px;
}
.mini-card:hover .thumb-overlay{opacity:1;}
.thumb-overlay span{color:#fff;font-size:.88rem;line-height:1.6;}
.mini-card .body{padding:22px 22px 24px;}
.mini-card h4{margin:0 0 8px;font-size:1.06rem;}
.mini-card p{margin:0;font-size:.9rem;color:var(--muted);line-height:1.75;}
.mini-card .kicker{
  font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;
  color:var(--accent);font-weight:700;display:block;margin-bottom:8px;
}

/* CTA */
.cta-band{
  position:relative;overflow:hidden;
  background:var(--ink);color:#fff;padding:96px 0;
}
.cta-band::before{
  content:"";position:absolute;top:-46px;left:0;right:0;height:46px;
  background:var(--bg);
  clip-path:polygon(0 100%,100% 0,100% 100%,0 100%);
}
.cta-inner{max-width:760px;position:relative;z-index:2;}
.cta-band h2{
  font-size:clamp(1.75rem,3.6vw,2.7rem);line-height:1.28;margin:0 0 20px;color:#fff;
}
.cta-band p{color:rgba(255,255,255,.72);font-size:1.02rem;margin:0 0 36px;max-width:560px;}
.btn-light{
  display:inline-flex;align-items:center;gap:9px;
  background:#fff;color:var(--ink);border:1px solid #fff;
  padding:14px 30px;font-weight:600;font-size:.95rem;border-radius:2px;
  transition:all .25s ease;
}
.btn-light:hover{background:transparent;color:#fff;}
.btn-light-ghost{
  display:inline-flex;align-items:center;gap:9px;
  border:1px solid rgba(255,255,255,.5);color:#fff;
  padding:14px 30px;font-weight:600;font-size:.95rem;border-radius:2px;
  transition:all .25s ease;
}
.btn-light-ghost:hover{border-color:#fff;background:rgba(255,255,255,.08);color:#fff;}

/* footer */
footer{
  background:var(--bg);border-top:1px solid var(--line);padding:64px 0 38px;
}
.foot-grid{
  display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:44px;margin-bottom:46px;
}
@media(max-width:760px){.foot-grid{grid-template-columns:1fr;gap:32px;}}
.foot-brand{font-family:var(--serif);font-size:1.24rem;font-weight:700;color:var(--ink);display:inline-flex;align-items:center;gap:9px;margin-bottom:14px;}
.foot-brand i{color:var(--accent);}
.foot-grid p{color:var(--muted);font-size:.9rem;margin:0;line-height:1.85;}
.foot-col h5{font-size:.82rem;letter-spacing:.16em;text-transform:uppercase;color:var(--brand);margin:0 0 16px;font-weight:700;}
.foot-col ul{list-style:none;margin:0;padding:0;}
.foot-col li{margin-bottom:10px;}
.foot-col a{font-size:.92rem;color:var(--ink);}
.foot-col a:hover{color:var(--accent);}
.friend-links{
  border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  padding:26px 0;margin-bottom:26px;
}
.friend-links h5{
  font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;
  color:var(--brand);margin:0 0 12px;font-weight:700;
}
.friend-links .links-line{font-size:.9rem;color:var(--muted);line-height:1.9;word-break:break-all;}
.copyright{
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;
  font-size:.83rem;color:var(--muted);
}
.copyright a{color:var(--muted);}
.copyright a:hover{color:var(--accent);}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;}
.reveal.visible{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  .reveal{opacity:1;transform:none;transition:none;}
  html{scroll-behavior:auto;}
}

/* --- 子页面追加 --- */
.guide-body {background:var(--bg);color:var(--ink);font-family:var(--sans);}
.guide-wrap {max-width:860px;margin:0 auto;padding:56px 20px 72px;}
.guide-intro {font-size:17px;line-height:1.9;color:var(--ink);opacity:.85;margin:0 0 8px;}
.step-list {list-style:none;padding:0;margin:0;counter-reset:gstep;}
.step-item {position:relative;background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 26px 22px 74px;margin-bottom:18px;box-shadow:0 2px 10px rgba(159,18,57,.04);}
.step-item::before {counter-increment:gstep;content:counter(gstep);position:absolute;left:22px;top:22px;width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--brand),var(--accent));color:#fff;font-weight:800;font-size:16px;display:flex;align-items:center;justify-content:center;}
.step-item h3 {font-family:var(--serif);font-size:19px;margin:0 0 10px;color:var(--brand);font-weight:700;}
.step-item p {margin:0 0 10px;line-height:1.85;font-size:15px;color:var(--ink);opacity:.86;}
.step-item p:last-child {margin-bottom:0;}
.step-item ul {margin:8px 0 0;padding-left:18px;line-height:1.9;font-size:15px;color:var(--ink);opacity:.86;}
.tip-box {background:rgba(225,29,72,.06);border-left:4px solid var(--accent);border-radius:10px;padding:18px 22px;margin:26px 0;font-size:15px;line-height:1.85;color:var(--ink);}
.tip-box strong {color:var(--brand);}
.mini-table {width:100%;border-collapse:collapse;margin:18px 0 8px;font-size:15px;background:#fff;border-radius:12px;overflow:hidden;border:1px solid var(--line);}
.mini-table th {background:rgba(159,18,57,.07);color:var(--brand);text-align:left;padding:13px 16px;font-weight:700;border-bottom:1px solid var(--line);white-space:nowrap;}
.mini-table td {padding:13px 16px;border-bottom:1px solid var(--line);color:var(--ink);opacity:.88;line-height:1.7;vertical-align:top;}
.mini-table tr:last-child td {border-bottom:none;}
.faq-list .faq-item {background:#fff;border:1px solid var(--line);border-radius:12px;padding:20px 24px;margin-bottom:14px;}
.faq-item h3 {font-family:var(--serif);font-size:17px;color:var(--brand);margin:0 0 8px;font-weight:700;}
.faq-item p {margin:0;font-size:15px;line-height:1.85;color:var(--ink);opacity:.85;}
.guide-sec {padding:44px 0 4px;}
.guide-sec .sec-title {font-family:var(--serif);color:var(--brand);font-size:27px;margin:0 0 12px;font-weight:800;}
.guide-sec .sec-desc {color:var(--muted);font-size:15px;line-height:1.8;margin:0 0 24px;}
.next-links {display:flex;flex-wrap:wrap;gap:12px;margin-top:26px;}
.next-links a {display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--brand);font-weight:600;font-size:14px;text-decoration:none;transition:.2s;}
.next-links a:hover {background:var(--brand);color:#fff;border-color:var(--brand);}
.guide-wrap {padding:36px 16px 56px;}
.step-item {padding:20px 18px 18px 18px;}
.step-item::before {position:static;margin-bottom:12px;}
.guide-sec .sec-title {font-size:22px;}
.mini-table {font-size:14px;}
.mini-table th,.mini-table td {padding:10px 12px;}

/* --- 子页面追加 --- */
.rules-hero { padding: 96px 0 56px; background: linear-gradient(180deg,#fff 0%, var(--bg) 100%); border-bottom: 1px solid var(--line); }
.rules-hero h1 { font-family: var(--serif); color: var(--ink); font-size: clamp(1.9rem, 4vw, 2.9rem); line-height: 1.28; margin: 14px 0 18px; }
.rules-hero p { color: var(--muted); max-width: 760px; font-size: 1.02rem; line-height: 1.85; }
.rules-body { padding: 64px 0 80px; }
.rule-card { background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 30px 32px; margin-bottom: 22px; box-shadow: 0 2px 10px rgba(63,10,26,.03); }
.rule-card h2 { font-family: var(--serif); font-size: 1.35rem; color: var(--ink); margin: 0 0 14px; display: flex; align-items: center; gap: 10px; }
.rule-card h2 i { color: var(--accent); font-size: 1.05rem; }
.rule-card h3 { font-size: 1.02rem; color: var(--brand); margin: 20px 0 8px; font-weight: 700; }
.rule-card p, .rule-card li { color: #4a2430; line-height: 1.9; font-size: .96rem; }
.rule-card ul, .rule-card ol { padding-left: 1.25rem; margin-bottom: 0; }
.rule-card li { margin-bottom: 8px; }
.rule-card li::marker { color: var(--accent); }
.rule-tip { background: #fdf2f4; border-left: 3px solid var(--accent); border-radius: 0 10px 10px 0; padding: 14px 18px; margin: 16px 0 4px; font-size: .92rem; color: #6d2b3c; line-height: 1.8; }
.rule-tip b { color: var(--brand); }
.badge-ok, .badge-no { display: inline-block; font-size: .74rem; font-weight: 700; padding: 3px 9px; border-radius: 999px; margin-right: 6px; vertical-align: 1px; }
.badge-ok { background: #e7f6ec; color: #1a7a3c; }
.badge-no { background: #fde8ec; color: var(--brand); }
.rules-toc { position: sticky; top: 92px; background: #fff; border: 1px solid var(--line); border-radius: 16px; padding: 22px 24px; }
.rules-toc h4 { font-size: .82rem; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); margin: 0 0 14px; font-weight: 700; }
.rules-toc a { display: block; color: var(--ink); text-decoration: none; font-size: .92rem; padding: 7px 0; border-bottom: 1px dashed var(--line); transition: color .2s; }
.rules-toc a:last-child { border-bottom: 0; }
.rules-toc a:hover { color: var(--accent); }
.step-row { display: flex; gap: 16px; margin-bottom: 16px; }
.step-num { flex: 0 0 34px; height: 34px; border-radius: 50%; background: var(--brand); color: #fff; display: flex; align-items: center; justify-content: center; font-weight: 800; font-size: .9rem; }
.step-txt { flex: 1; }
.step-txt strong { display: block; color: var(--ink); margin-bottom: 4px; font-size: .98rem; }
.step-txt span { color: #5c2b3a; font-size: .92rem; line-height: 1.8; }
.faq-item:last-child { border-bottom: 0; }
.faq-item strong { display: block; color: var(--ink); margin-bottom: 6px; font-size: .97rem; }
.rules-toc { position: static; margin-bottom: 24px; }
.rules-hero { padding: 72px 0 40px; }
.rule-card { padding: 22px 20px; }

/* --- 子页面追加 --- */
.privacy-hero {padding:74px 0 34px;background:linear-gradient(180deg,#fff 0%,var(--bg) 100%);border-bottom:1px solid var(--line);}
.privacy-hero h1 {font-family:var(--serif);font-weight:700;font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.25;color:var(--ink);margin:0 0 16px;}
.privacy-hero h1 em {font-style:normal;color:var(--brand);}
.privacy-hero .lead {color:var(--muted);font-size:1.02rem;line-height:1.85;max-width:720px;}
.meta-strip {margin-top:26px;display:flex;flex-wrap:wrap;gap:10px 26px;font-size:.86rem;color:var(--muted);}
.meta-strip span i {color:var(--accent);margin-right:6px;}
.toc-card {background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 22px 16px;position:sticky;top:20px;}
.toc-card h3 {font-family:var(--serif);font-size:1.02rem;color:var(--brand);margin:0 0 14px;letter-spacing:.02em;}
.toc-card ol {margin:0;padding-left:1.1rem;font-size:.9rem;line-height:2;}
.toc-card a {color:var(--ink);text-decoration:none;border-bottom:1px dashed transparent;transition:.2s;}
.toc-card a:hover {color:var(--accent);border-bottom-color:var(--accent);}
.policy-sec {padding:30px 0 4px;}
.policy-sec h2 {font-family:var(--serif);font-size:1.3rem;font-weight:700;color:var(--ink);margin:0 0 6px;display:flex;align-items:flex-start;gap:10px;line-height:1.45;}
.policy-sec h2 .num {flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;background:rgba(159,18,57,.09);color:var(--brand);font-family:var(--sans);font-size:.92rem;font-weight:700;margin-top:2px;}
.policy-sec h2 .txt {flex:1 1 auto;}
.policy-sec p {color:#4a2230;line-height:1.95;font-size:.96rem;margin:14px 0;}
.policy-sec ul, .policy-sec ol {color:#4a2230;line-height:1.95;font-size:.96rem;padding-left:1.25rem;}
.policy-sec li {margin:7px 0;}
.policy-sec strong {color:var(--brand);}
.note-box {background:#fff;border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:0 12px 12px 0;padding:16px 20px;margin:18px 0;font-size:.92rem;line-height:1.9;color:#5b2b3a;}
.note-box i {color:var(--accent);margin-right:8px;}
.data-grid {display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin:20px 0 8px;}
.data-cell {background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;}
.data-cell .dt {display:flex;align-items:center;gap:9px;font-weight:600;color:var(--brand);font-size:.97rem;margin-bottom:8px;}
.data-cell .dt i {color:var(--accent);}
.data-cell p {margin:0;font-size:.9rem;line-height:1.8;color:#5b2b3a;}
.rights-list {display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px;margin:20px 0 6px;}
.right-item {background:#fff;border:1px solid var(--line);border-radius:12px;padding:16px 18px;}
.right-item h4 {font-size:.95rem;font-weight:600;color:var(--ink);margin:0 0 6px;display:flex;align-items:center;gap:8px;}
.right-item h4 i {color:var(--brand);font-size:.9rem;}
.right-item p {margin:0;font-size:.88rem;line-height:1.8;color:var(--muted);}
.contact-line {margin-top:14px;padding:20px 22px;background:linear-gradient(135deg,rgba(159,18,57,.06),rgba(225,29,72,.05));border:1px solid var(--line);border-radius:14px;}
.contact-line p {margin:0;font-size:.94rem;line-height:1.95;}
.back-row {padding:40px 0 70px;}
.back-row .btn-main {background:var(--brand);color:#fff;border:none;border-radius:10px;padding:12px 26px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:9px;transition:.22s;}
.back-row .btn-main:hover {background:var(--accent);}
.back-row .btn-ghost {background:transparent;color:var(--brand);border:1px solid var(--line);border-radius:10px;padding:12px 26px;font-weight:600;text-decoration:none;display:inline-flex;align-items:center;gap:9px;margin-left:12px;transition:.22s;}
.back-row .btn-ghost:hover {border-color:var(--brand);color:var(--accent);}
.privacy-hero {padding:52px 0 26px;}
.toc-card {position:static;margin-bottom:10px;}
.policy-sec h2 {font-size:1.14rem;}
.back-row .btn-ghost {margin-left:0;margin-top:12px;}

/* --- 子页面追加 --- */
/* 导航兜底样式（若站点CSS已含则覆盖一致） */
  .site-nav {background:rgba(250,250,250,.92);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(8px);}
.nav-links a:hover {color:var(--accent);border-bottom-color:var(--accent);}
.nav-links a.active {color:var(--accent);border-bottom-color:var(--accent);}
/* 本页专属少量样式 */
  .page-hero {background:linear-gradient(180deg,#fff 0%,#fdf4f6 100%);border-bottom:1px solid var(--line);padding:64px 0 48px;}
.page-hero h1 {font-family:var(--serif);font-size:clamp(1.7rem,4vw,2.6rem);line-height:1.35;color:var(--brand);margin:14px 0 16px;font-weight:700;}
.page-hero p {color:var(--muted);max-width:720px;line-height:1.9;font-size:1.02rem;margin:0;}
.about-sec {padding:56px 0;}
.about-sec + .about-sec {border-top:1px solid var(--line);}
.about-h2 {font-family:var(--serif);font-size:clamp(1.32rem,2.6vw,1.72rem);color:var(--brand);font-weight:700;margin-bottom:14px;line-height:1.45;}
.about-h3 {font-family:var(--serif);font-size:1.1rem;color:var(--brand);font-weight:700;margin:0 0 8px;}
.about-p {color:#5c2b38;line-height:1.95;font-size:.98rem;margin-bottom:14px;}
.about-p strong {color:var(--brand);}
.info-card {background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 22px;height:100%;transition:.2s;}
.info-card:hover {border-color:var(--accent);box-shadow:0 8px 24px rgba(159,18,57,.08);}
.info-card p {color:var(--muted);line-height:1.85;font-size:.92rem;margin:0;}
.info-card .ic {width:40px;height:40px;border-radius:10px;background:#fdf0f3;color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:1.05rem;margin-bottom:14px;}
.principle-row {display:flex;gap:16px;padding:18px 0;border-bottom:1px dashed var(--line);}
.principle-row:last-child {border-bottom:none;}
.principle-no {font-family:var(--serif);font-size:1.5rem;color:var(--accent);font-weight:700;line-height:1;min-width:44px;}
.principle-row p {margin:0;color:#5c2b38;line-height:1.85;font-size:.95rem;}
.principle-row p b {color:var(--brand);}
.quote-box {background:#fff;border-left:4px solid var(--accent);border-radius:0 12px 12px 0;padding:20px 24px;color:#5c2b38;line-height:1.9;font-size:.98rem;margin:22px 0 0;}
.quote-box em {color:var(--brand);font-style:normal;font-weight:600;}
.timeline {list-style:none;padding:0;margin:0;}
.timeline li {position:relative;padding:0 0 26px 30px;border-left:2px solid var(--line);}
.timeline li:last-child {border-left-color:transparent;padding-bottom:0;}
.timeline li::before {content:"";position:absolute;left:-7px;top:5px;width:12px;height:12px;border-radius:50%;background:var(--accent);border:2px solid #fff;box-shadow:0 0 0 2px var(--line);}
.timeline .tl-t {font-family:var(--serif);font-weight:700;color:var(--brand);font-size:1.02rem;margin-bottom:4px;}
.timeline p {margin:0;color:var(--muted);font-size:.92rem;line-height:1.8;}
.cta-box {background:linear-gradient(135deg,#9f1239,#e11d48);border-radius:18px;padding:40px 32px;color:#fff;text-align:center;}
.cta-box h2 {font-family:var(--serif);font-size:clamp(1.3rem,2.8vw,1.7rem);font-weight:700;margin-bottom:12px;color:#fff;}
.cta-box p {color:rgba(255,255,255,.86);line-height:1.85;margin-bottom:22px;font-size:.96rem;}
.cta-btns {display:flex;gap:14px;justify-content:center;flex-wrap:wrap;}
.cta-btns a {display:inline-block;padding:12px 26px;border-radius:999px;text-decoration:none;font-weight:600;font-size:.94rem;transition:.2s;}
.cta-btns .solid {background:#fff;color:var(--brand);}
.cta-btns .solid:hover {background:#fdf0f3;transform:translateY(-2px);}
.cta-btns .ghost {border:1.5px solid rgba(255,255,255,.7);color:#fff;}
.cta-btns .ghost:hover {background:rgba(255,255,255,.14);transform:translateY(-2px);}
.site-footer {background:#fff;border-top:1px solid var(--line);padding:40px 0 28px;margin-top:60px;}
.footer-inner {max-width:1100px;margin:0 auto;padding:0 20px;}
.footer-top {display:flex;flex-wrap:wrap;gap:26px;justify-content:space-between;align-items:flex-start;}
.footer-brand {font-family:var(--serif);font-weight:700;color:var(--brand);font-size:1.1rem;display:flex;align-items:center;gap:8px;}
.footer-desc {color:var(--muted);font-size:.88rem;line-height:1.8;max-width:340px;margin-top:10px;}
.footer-links {display:flex;flex-wrap:wrap;gap:10px 22px;}
.footer-links a {color:var(--ink);text-decoration:none;font-size:.9rem;transition:.2s;}
.footer-links a:hover {color:var(--accent);}
.footer-bottom {margin-top:26px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted);font-size:.83rem;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;}
.footer-bottom a {color:var(--muted);text-decoration:none;}
.footer-bottom a:hover {color:var(--accent);}
.nav-links li:last-child {border-bottom:none;}
.about-sec {padding:40px 0;}
.page-hero {padding:44px 0 34px;}