@font-face {
  font-family:"FZLanTingHeiS-EL-GB";
  src:url("../fonts/fz-lanting-light.woff2") format("woff2");
  font-weight:200 400;
  font-style:normal;
  font-display:swap
}

:root {
  --ink:#171615;
  --muted:#5c5955;
  --paper:#f4f3ef;
  --white:#fff;
  --line:rgba(23,22,21,.12);
  --font:"FZLanTingHeiS-EL-GB","Microsoft YaHei",Arial,Tahoma,"宋体",sans-serif
}

* {
  box-sizing:border-box
}

html {
  scroll-behavior:smooth
}

body {
  min-width:300px;
  margin:0;
  background:var(--white);
  color:var(--ink);
  font-family:var(--font);
  font-size:16px;
  font-weight:400;
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility
}

a {
  color:inherit
}

.legal-header {
  position:sticky;
  top:0;
  z-index:10;
  height:72px;
  padding:0 5vw;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  background:rgba(255,255,255,.96);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(16px)
}

.legal-brand {
  display:flex;
  align-items:center
}

.legal-brand img {
  display:block;
  width:92px;
  height:auto
}

.back-home {
  color:var(--muted);
  font-size:13px;
  text-decoration:none;
  transition:color .2s ease
}

.back-home:hover,
.back-home:focus-visible {
  color:var(--ink)
}

.back-home:focus-visible,
.legal-footer a:focus-visible {
  outline:2px solid var(--ink);
  outline-offset:5px
}

.legal-main {
  width:100%;
  margin:0;
  padding:0;
  background:var(--white);
  border:0
}

.legal-content {
  width:auto;
  margin:20px auto 0;
  padding:40px 50px 50px;
  color:#222;
  font-size:16px;
  overflow-wrap:anywhere
}

.legal-content h1,
.legal-content h2,
.legal-content h3,
.legal-content p {
  margin:0
}

.legal-content h1,
.legal-content h2,
.legal-content h3,
.legal-content h1 *,
.legal-content h2 *,
.legal-content h3 * {
  color:var(--ink) !important
}

.legal-content h1 {
  padding-top:0;
  border-bottom:0;
  font-size:36px;
  line-height:124px;
  font-weight:400;
  text-align:center
}

.legal-content h2,
.legal-content h3,
.legal-content p {
  padding-bottom:10px;
  line-height:30px
}

.legal-content h2 {
  font-size:28px;
  font-weight:600
}

.legal-content h3 {
  font-size:24px;
  font-weight:600
}

.legal-content p {
  color:#636669
}

.legal-content strong {
  color:#363636;
  font-weight:700
}

.legal-content em {
  font-style:normal
}

.legal-content a {
  color:var(--ink);
  text-decoration:underline;
  text-underline-offset:3px
}

@media(max-width:1215px) {
  .legal-content {
    width:auto;
    padding-right:30px;
    padding-left:30px
  }
}

@media(max-width:1024px) {
  .legal-content {
    width:auto;
    margin:20px 64px 0;
    padding-right:20px;
    padding-left:20px
  }

  .legal-content h1 {
    font-size:28px;
    line-height:60px
  }

  .legal-content h2 {
    font-size:24px
  }

  .legal-content h3 {
    font-size:22px
  }
}

.legal-footer {
  min-height:92px;
  padding:24px 5vw;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:0;
  background:#141413;
  color:rgba(255,255,255,.62);
  font-size:12px
}

.legal-footer a {
  color:inherit;
  text-decoration:none;
  transition:color .2s ease
}

.legal-footer a:hover,
.legal-footer a[aria-current="page"] {
  color:#fff
}

.legal-footer a + a,
.legal-footer span {
  position:relative;
  margin-left:18px;
  padding-left:19px
}

.legal-footer a + a::before,
.legal-footer span::before {
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:1px;
  height:11px;
  background:rgba(255,255,255,.18);
  transform:translateY(-50%)
}

@media(max-width:700px) {
  .legal-header {
    height:64px;
    padding:0 20px
  }

  .legal-brand img {
    width:78px
  }

  .legal-main {
    width:100%;
    margin:0;
    padding:0;
    border:0
  }

  .legal-content {
    width:auto;
    margin:15px 30px 0;
    padding:28px 0;
    font-size:14px
  }

  .legal-content h1 {
    padding-top:20px;
    font-size:20px;
    line-height:76px
  }

  .legal-content h2 {
    font-size:18px
  }

  .legal-content h3 {
    font-size:16px
  }

  .legal-content p {
    line-height:26px
  }

  .legal-footer {
    min-height:0;
    padding:25px 20px;
    font-size:11px
  }

  .legal-footer span {
    flex-basis:100%;
    margin:14px 0 0;
    padding:14px 0 0;
    text-align:center
  }

  .legal-footer span::before {
    top:0;
    left:50%;
    width:32px;
    height:1px;
    transform:translateX(-50%)
  }
}

@media(prefers-reduced-motion:reduce) {
  html {
    scroll-behavior:auto
  }

  .back-home,
  .legal-footer a {
    transition:none
  }
}
