.page-privacy{
  --pp-text:#16241f;
  --pp-rule:rgba(7,17,15,.12);
  --pp-rule-soft:rgba(7,17,15,.07);
  --pp-measure:38em;
  background:var(--paper-050);
  color:var(--pp-text);
}

.page-privacy .privacy-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:var(--ink-950);
  color:var(--white);
  padding-block:clamp(24px,4vw,44px) clamp(32px,5vw,60px);
}
.page-privacy .privacy-hero__media{
  position:absolute;
  inset:0;
  z-index:-2;
}
.page-privacy .privacy-hero__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:.4;
}
.page-privacy .privacy-hero::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(108deg,rgba(7,17,15,.96) 0%,rgba(7,17,15,.85) 46%,rgba(11,27,43,.6) 100%);
}
.page-privacy .privacy-hero__inner{
  position:relative;
}
.page-privacy .privacy-hero__inner::after{
  content:"";
  position:absolute;
  right:-30px;
  bottom:-14px;
  width:min(420px,55%);
  height:1px;
  background:linear-gradient(90deg,rgba(43,227,196,0),var(--cyan-400));
  transform:rotate(-9deg);
  transform-origin:right center;
  opacity:.55;
  pointer-events:none;
}
.page-privacy .privacy-crumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  font-size:12px;
  letter-spacing:.08em;
  color:var(--slate-400);
  margin-bottom:clamp(18px,3vw,30px);
}
.page-privacy .privacy-crumbs a{
  color:var(--cyan-200);
  text-decoration:none;
  border-bottom:1px solid rgba(157,246,230,.3);
}
.page-privacy .privacy-crumbs a:hover{
  color:var(--white);
  border-bottom-color:var(--white);
}
.page-privacy .privacy-hero__title{
  max-width:16em;
  margin:14px 0 0;
  line-height:1.08;
  letter-spacing:-.02em;
}
.page-privacy .privacy-hero__lead{
  max-width:var(--pp-measure);
  margin-top:18px;
  color:rgba(255,255,255,.82);
  line-height:1.7;
}
.page-privacy .privacy-hero__meta{
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  gap:clamp(20px,4vw,48px);
  margin:clamp(26px,4vw,40px) 0 0;
  padding:0;
  border-top:1px solid var(--line);
  padding-top:20px;
}
.page-privacy .privacy-hero__meta li{
  display:flex;
  flex-direction:column;
  gap:4px;
}
.page-privacy .privacy-hero__meta .num{
  font-family:var(--font-num);
  font-variant-numeric:tabular-nums;
  font-size:clamp(20px,3vw,28px);
  color:var(--cyan-400);
  line-height:1;
}
.page-privacy .privacy-hero__meta-txt{
  font-size:12px;
  letter-spacing:.06em;
  color:var(--slate-400);
}

.page-privacy .privacy-layout{
  display:grid;
  grid-template-columns:1fr;
  gap:clamp(24px,4vw,40px);
  padding-block:clamp(26px,5vw,64px) clamp(40px,7vw,88px);
}

.page-privacy .privacy-toc{
  background:var(--night-900);
  color:var(--white);
  border:1px solid var(--line);
  padding:20px 20px 22px;
}
.page-privacy .privacy-toc__title{
  margin:0 0 14px;
  font-family:var(--font-display);
  font-size:12px;
  letter-spacing:.18em;
  color:var(--slate-400);
}
.page-privacy .privacy-toc__list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:2px;
}
.page-privacy .privacy-toc__list a{
  display:flex;
  gap:12px;
  align-items:baseline;
  padding:9px 8px 9px 6px;
  color:rgba(255,255,255,.8);
  text-decoration:none;
  font-size:14px;
  line-height:1.45;
  border-left:2px solid transparent;
  transition:color .18s var(--ease),border-color .18s var(--ease),background .18s var(--ease);
}
.page-privacy .privacy-toc__list a .num{
  font-family:var(--font-num);
  font-variant-numeric:tabular-nums;
  font-size:12px;
  color:var(--amber-500);
  flex:none;
}
.page-privacy .privacy-toc__list a:hover,
.page-privacy .privacy-toc__list a:focus-visible{
  color:var(--white);
  border-left-color:var(--cyan-400);
  background:rgba(43,227,196,.07);
}
.page-privacy .privacy-toc__foot{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid var(--line);
}
.page-privacy .privacy-toc__hint{
  margin:0 0 14px;
  font-size:12px;
  line-height:1.7;
  color:var(--slate-400);
}

.page-privacy .privacy-doc{
  min-width:0;
}
.page-privacy .privacy-doc__version{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin:0 0 clamp(20px,3vw,28px);
  padding-bottom:14px;
  border-bottom:1px solid var(--pp-rule);
  font-size:12px;
  letter-spacing:.04em;
  color:var(--slate-600);
}

.page-privacy .clause{
  padding-block:clamp(22px,3.4vw,34px);
  border-top:1px solid var(--pp-rule-soft);
}
.page-privacy .clause:first-of-type{
  border-top:0;
  padding-top:4px;
}
.page-privacy .clause__head{
  display:flex;
  align-items:baseline;
  gap:14px;
  margin-bottom:14px;
}
.page-privacy .clause__num{
  font-family:var(--font-num);
  font-variant-numeric:tabular-nums;
  font-size:clamp(18px,2.6vw,24px);
  line-height:1;
  color:var(--slate-400);
  flex:none;
}
.page-privacy .clause__title{
  margin:0;
  color:var(--ink-950);
  letter-spacing:-.01em;
}
.page-privacy .clause__body{
  max-width:var(--pp-measure);
}
.page-privacy .clause__body p{
  margin:0 0 14px;
  font-size:15px;
  line-height:1.78;
}
.page-privacy .clause__body p:last-child{
  margin-bottom:0;
}
.page-privacy .clause__body strong{
  color:var(--ink-950);
  font-weight:700;
}
.page-privacy .clause__note{
  font-size:13px;
  color:var(--slate-600);
}
.page-privacy .clause__body a{
  color:#0d6d5d;
  text-decoration:none;
  border-bottom:1px solid rgba(13,109,93,.35);
}
.page-privacy .clause__body a:hover{
  color:var(--ink-950);
  border-bottom-color:var(--ink-950);
}
.page-privacy .privacy-mail{
  font-family:var(--font-num);
  font-size:13px;
  background:var(--amber-200);
  color:var(--ink-950);
  padding:2px 7px;
  word-break:break-all;
  border-bottom:1px solid rgba(7,17,15,.25);
}

.page-privacy .split-list{
  display:grid;
  gap:16px;
  margin:18px 0 20px;
}
.page-privacy .split-list__item{
  padding:4px 0 4px 16px;
  border-left:2px solid var(--slate-600);
}
.page-privacy .split-list__item--cyan{
  border-left-color:var(--cyan-400);
}
.page-privacy .split-list__item--amber{
  border-left-color:var(--amber-500);
}
.page-privacy .split-list__title{
  margin:0 0 8px;
  font-family:var(--font-display);
  font-size:14px;
  letter-spacing:.02em;
  color:var(--ink-950);
}
.page-privacy .split-list__item p{
  font-size:14px;
  line-height:1.72;
  margin:0 0 8px;
  color:var(--pp-text);
}
.page-privacy .split-list__item p:last-child{
  margin-bottom:0;
}

.page-privacy .use-list{
  list-style:none;
  margin:16px 0 20px;
  padding:0;
  display:grid;
  gap:10px;
  counter-reset:ppuse;
}
.page-privacy .use-list li{
  position:relative;
  padding-left:22px;
  font-size:15px;
  line-height:1.72;
}
.page-privacy .use-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:10px;
  height:2px;
  background:var(--cyan-400);
}

@media (min-width:640px){
  .page-privacy .split-list{
    grid-template-columns:1fr 1fr;
    gap:24px;
  }
  .page-privacy .clause__body p{
    font-size:16px;
  }
  .page-privacy .use-list li{
    font-size:16px;
  }
}

@media (min-width:900px){
  .page-privacy .privacy-layout{
    grid-template-columns:248px minmax(0,1fr);
    gap:clamp(36px,5vw,72px);
    align-items:start;
  }
  .page-privacy .privacy-toc{
    position:sticky;
    top:24px;
    padding:24px 22px 26px;
  }
  .page-privacy .privacy-doc{
    padding-right:clamp(0px,3vw,32px);
  }
  .page-privacy .clause__num{
    min-width:2.4em;
  }
}

@media (min-width:1200px){
  .page-privacy .privacy-hero__title{
    max-width:15em;
  }
}

@media (max-width:639px){
  .page-privacy .privacy-hero__meta{
    gap:18px 26px;
  }
  .page-privacy .privacy-toc{
    padding:16px;
  }
  .page-privacy .clause__head{
    gap:10px;
  }
}

@media print{
  .page-privacy{
    background:#fff;
    color:#000;
  }
  .page-privacy .privacy-hero{
    background:#fff;
    color:#000;
    padding-block:0 18px;
    border-bottom:1px solid #999;
  }
  .page-privacy .privacy-hero__media,
  .page-privacy .privacy-hero::after,
  .page-privacy .privacy-hero__inner::after,
  .page-privacy .privacy-toc{
    display:none;
  }
  .page-privacy .privacy-hero__title,
  .page-privacy .clause__title{
    color:#000;
  }
  .page-privacy .privacy-hero__lead,
  .page-privacy .privacy-hero__meta-txt,
  .page-privacy .privacy-crumbs{
    color:#333;
  }
  .page-privacy .privacy-layout{
    display:block;
    padding-block:12px 0;
  }
  .page-privacy .privacy-doc,
  .page-privacy .clause__body{
    max-width:none;
  }
  .page-privacy .clause{
    break-inside:avoid;
    border-top:1px solid #ccc;
  }
  .page-privacy .privacy-mail{
    background:none;
    padding:0;
  }
}
</main>
