.page-privacy{
  --pp-green:#2D8F5E;
  --pp-green-deep:#1C6C45;
  --pp-green-light:#E0F2E9;
  --pp-yellow:#F2C94C;
  --pp-yellow-light:#FFF8E1;
  --pp-night:#0D1B2A;
  --pp-cream:#F8F6F3;
  --pp-white:#FFFFFF;
  --pp-ink:#2B2B2B;
  --pp-mid:#5A5A5A;
  --pp-line:rgba(13,27,42,.08);
  --pp-serif:"Noto Serif SC","Source Han Serif SC",Georgia,serif;
  --pp-sans:"Noto Sans SC","Source Han Sans SC",-apple-system,"PingFang SC","Microsoft YaHei",sans-serif;
  background:var(--pp-cream);
  color:var(--pp-ink);
  font-family:var(--pp-sans);
  line-height:1.7;
  overflow-x:hidden;
}
.page-privacy #scope,
.page-privacy #usage,
.page-privacy #storage,
.page-privacy #rights{
  scroll-margin-top:calc(var(--header-height) + 16px);
}

.page-privacy .privacy-hero{
  background:linear-gradient(135deg,var(--pp-green-light) 0%,var(--pp-cream) 58%,var(--pp-yellow-light) 100%);
  padding:28px 0 48px;
  position:relative;
  overflow:hidden;
}
.page-privacy .privacy-hero::after{
  content:"";
  position:absolute;
  left:-5%;
  right:-5%;
  bottom:-14px;
  height:26px;
  background:var(--pp-green);
  opacity:.16;
  transform:rotate(-1.2deg);
  border-radius:4px;
  pointer-events:none;
}
.page-privacy .privacy-hero__grid{
  display:grid;
  gap:32px;
  align-items:center;
}
.page-privacy .privacy-hero__content{
  min-width:0;
}
.page-privacy .privacy-hero__kicker{
  display:inline-block;
  padding:5px 14px;
  background:var(--pp-green);
  color:#fff;
  font-size:12px;
  font-weight:600;
  letter-spacing:.1em;
  border-radius:3px 10px 3px 10px;
  transform:rotate(-1.5deg);
  margin-bottom:18px;
}
.page-privacy .privacy-hero h1{
  font-family:var(--pp-serif);
  font-size:30px;
  line-height:1.22;
  margin:0 0 16px;
  letter-spacing:.02em;
}
.page-privacy .privacy-hero__lead{
  font-size:15px;
  line-height:1.75;
  color:var(--pp-mid);
  margin:0 0 22px;
  max-width:54ch;
}
.page-privacy .privacy-hero__meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
  font-size:13px;
  color:var(--pp-green-deep);
  font-weight:500;
}
.page-privacy .privacy-hero__meta span{
  background:rgba(255,255,255,.6);
  border:1px solid rgba(45,143,94,.2);
  padding:4px 12px;
  border-radius:999px;
}
.page-privacy .privacy-hero__visual{
  min-width:0;
}
.page-privacy .privacy-hero__img{
  width:100%;
  max-width:340px;
  height:auto;
  margin:0 auto;
  display:block;
  border-radius:24px;
  box-shadow:0 12px 28px rgba(13,27,42,.1);
}

.page-privacy .privacy-toc{
  background:var(--pp-cream);
  padding:44px 0 52px;
  border-bottom:1px solid var(--pp-line);
}
.page-privacy .privacy-toc__head{
  margin-bottom:26px;
}
.page-privacy .privacy-toc__badge{
  display:inline-block;
  font-size:12px;
  font-weight:700;
  letter-spacing:.18em;
  color:var(--pp-green);
  border:2px solid var(--pp-green);
  padding:2px 10px;
  border-radius:4px 12px 4px 12px;
  transform:rotate(-1.2deg);
  margin-bottom:14px;
}
.page-privacy .privacy-toc__title{
  font-family:var(--pp-serif);
  font-size:24px;
  margin:0 0 6px;
}
.page-privacy .privacy-toc__desc{
  color:var(--pp-mid);
  font-size:14px;
  margin:0;
}
.page-privacy .privacy-toc__list{
  list-style:none;
  margin:24px 0 0;
  padding:0;
}
.page-privacy .privacy-toc__item a{
  display:flex;
  align-items:center;
  gap:14px;
  padding:12px 4px;
  border-bottom:1px solid var(--pp-line);
  text-decoration:none;
  color:var(--pp-ink);
  font-weight:500;
  font-size:15px;
  transition:color .2s,padding-left .2s,border-color .2s;
}
.page-privacy .privacy-toc__item a:hover{
  color:var(--pp-green);
  padding-left:8px;
  border-bottom-color:var(--pp-green);
}
.page-privacy .privacy-toc__num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:8px 2px 8px 2px;
  background:var(--pp-yellow);
  color:var(--pp-night);
  font-family:var(--pp-serif);
  font-weight:700;
  font-size:13px;
  flex-shrink:0;
  transform:rotate(-2deg);
}

.page-privacy .privacy-section{
  background:var(--pp-cream);
  padding:48px 0;
}
.page-privacy .privacy-section--alt{
  background:var(--pp-green-light);
}
.page-privacy .privacy-section__head{
  display:flex;
  align-items:flex-start;
  gap:16px;
  margin-bottom:28px;
  padding-bottom:18px;
  border-bottom:2px solid rgba(45,143,94,.16);
}
.page-privacy .privacy-section__num{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:54px;
  height:54px;
  padding:0 10px;
  background:var(--pp-green);
  color:#fff;
  border-radius:14px 4px 14px 4px;
  transform:rotate(-4deg);
  font-family:var(--pp-serif);
  font-size:22px;
  font-weight:700;
  line-height:1;
  box-shadow:0 8px 16px rgba(45,143,94,.18);
  flex-shrink:0;
}
.page-privacy .privacy-section__head h2{
  font-family:var(--pp-serif);
  font-size:26px;
  line-height:1.3;
  margin:0 0 4px;
}
.page-privacy .privacy-section__head p{
  margin:0;
  font-size:13px;
  color:var(--pp-mid);
}
.page-privacy .privacy-section__body{
  font-size:14px;
  color:var(--pp-mid);
}
.page-privacy .privacy-body-lead{
  font-size:15px;
  color:var(--pp-ink);
  margin:0 0 22px;
  line-height:1.75;
}
.page-privacy .privacy-clause{
  list-style:none;
  padding:0;
  margin:0 0 24px;
  counter-reset:clause;
}
.page-privacy .privacy-clause__item{
  position:relative;
  padding:0 0 22px 42px;
  margin-bottom:22px;
  border-bottom:1px dashed rgba(45,143,94,.22);
}
.page-privacy .privacy-clause__item:last-child{
  border-bottom:none;
  margin-bottom:0;
  padding-bottom:0;
}
.page-privacy .privacy-clause__item::before{
  counter-increment:clause;
  content:counter(clause,decimal-leading-zero);
  position:absolute;
  left:0;
  top:2px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:8px 2px 8px 2px;
  background:var(--pp-yellow);
  color:var(--pp-night);
  font-size:12px;
  font-weight:700;
  transform:rotate(-3deg);
}
.page-privacy .privacy-clause__item h3{
  font-family:var(--pp-serif);
  font-size:18px;
  margin:0 0 8px;
  color:var(--pp-ink);
}
.page-privacy .privacy-clause__item p{
  font-size:14px;
  line-height:1.75;
  margin:0;
  color:var(--pp-mid);
}
.page-privacy .privacy-sublist{
  margin:8px 0 0;
  padding-left:20px;
  font-size:14px;
  line-height:1.75;
  color:var(--pp-mid);
}
.page-privacy .privacy-sublist li{
  margin-bottom:4px;
}
.page-privacy .privacy-mark{
  background:linear-gradient(transparent 58%,rgba(242,201,76,.55) 58%);
  font-weight:600;
  padding:0 2px;
  color:var(--pp-ink);
  border-radius:2px;
}
.page-privacy .privacy-banner{
  background:var(--pp-yellow-light);
  border-left:4px solid var(--pp-yellow);
  padding:16px 18px;
  border-radius:0 14px 14px 0;
  font-size:14px;
  line-height:1.75;
  color:var(--pp-ink);
}
.page-privacy .privacy-tip{
  margin:28px 0 0;
  padding:20px 22px;
  border:1px solid rgba(45,143,94,.22);
  border-top:4px solid var(--pp-green);
  background:var(--pp-white);
  border-radius:16px;
}
.page-privacy .privacy-tip h3{
  font-size:16px;
  font-family:var(--pp-serif);
  margin:0 0 8px;
  color:var(--pp-green-deep);
}
.page-privacy .privacy-tip p{
  font-size:14px;
  line-height:1.75;
  margin:0;
  color:var(--pp-mid);
}
.page-privacy .privacy-contact{
  margin-top:28px;
  padding:26px 24px;
  border-radius:20px;
  background:var(--pp-night);
  color:rgba(255,255,255,.86);
  position:relative;
  overflow:hidden;
}
.page-privacy .privacy-contact::after{
  content:"";
  position:absolute;
  right:-44px;
  top:-44px;
  width:160px;
  height:160px;
  background:var(--pp-yellow);
  border-radius:50%;
  opacity:.08;
}
.page-privacy .privacy-contact h3{
  font-family:var(--pp-serif);
  font-size:20px;
  color:var(--pp-yellow);
  margin:0 0 10px;
}
.page-privacy .privacy-contact p{
  margin:6px 0;
  font-size:14px;
}
.page-privacy .privacy-foot{
  margin-top:28px;
  font-size:14px;
  color:var(--pp-mid);
}
.page-privacy .privacy-foot a{
  color:var(--pp-green);
  font-weight:600;
  text-decoration:none;
}
.page-privacy .privacy-foot a:hover{
  text-decoration:underline;
}
.page-privacy .privacy-icp{
  border-top:1px solid var(--pp-line);
  background:var(--pp-white);
  padding:18px 0;
  font-size:13px;
  color:var(--pp-mid);
}
.page-privacy .privacy-icp .container{
  display:flex;
  flex-wrap:wrap;
  gap:8px 28px;
  justify-content:space-between;
  align-items:center;
}

@media (min-width:768px){
  .page-privacy .privacy-hero{
    padding:56px 0 72px;
  }
  .page-privacy .privacy-hero__grid{
    grid-template-columns:1fr 360px;
  }
  .page-privacy .privacy-hero h1{
    font-size:42px;
  }
  .page-privacy .privacy-hero__lead{
    font-size:16px;
  }
  .page-privacy .privacy-hero__img{
    max-width:360px;
  }
  .page-privacy .privacy-toc{
    padding:56px 0 64px;
  }
  .page-privacy .privacy-toc__list{
    display:grid;
    grid-template-columns:1fr 1fr;
    column-gap:40px;
  }
  .page-privacy .privacy-section{
    padding:64px 0;
  }
  .page-privacy .privacy-section__head{
    gap:24px;
  }
  .page-privacy .privacy-section__head h2{
    font-size:30px;
  }
  .page-privacy .privacy-clause__item{
    padding-left:52px;
  }
  .page-privacy .privacy-clause__item p{
    font-size:15px;
  }
  .page-privacy .privacy-body-lead{
    font-size:16px;
  }
}
