.page-privacy{
  --pp-measure:36em;
  --pp-rail:236px;
  --pp-ink:rgba(242,247,244,.86);
  position:relative;
  color:var(--white);
  background:var(--bg-deep);
  overflow-x:hidden;
}
.page-privacy .pp-hero{
  position:relative;
  padding:clamp(22px,5vw,44px) 0 clamp(18px,3vw,28px);
}
.page-privacy .pp-hero::before{
  content:"";
  position:absolute;
  inset:-10% -20% auto auto;
  width:min(680px,86vw);
  height:min(680px,86vw);
  background:radial-gradient(circle at 60% 40%,rgba(198,255,61,.16),rgba(198,255,61,0) 62%),
             radial-gradient(circle at 30% 70%,rgba(255,122,24,.12),rgba(255,122,24,0) 60%);
  pointer-events:none;
  z-index:0;
}
.page-privacy .pp-hero-inner{
  position:relative;
  z-index:1;
  display:grid;
  gap:clamp(20px,4vw,36px);
}
.page-privacy .pp-title{
  margin:14px 0 0;
  color:var(--white);
  line-height:1.02;
  letter-spacing:-.02em;
}
.page-privacy .pp-lead{
  margin-top:18px;
  max-width:34em;
  color:var(--pp-ink);
  font-size:clamp(15px,2.2vw,17px);
  line-height:1.85;
}
.page-privacy .pp-hero-facts{
  display:grid;
  gap:1px;
  margin:0;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--line);
  overflow:hidden;
}
.page-privacy .pp-fact{
  padding:14px 16px;
  background:linear-gradient(120deg,var(--bg-pitch),var(--bg-carbon));
}
.page-privacy .pp-fact dt{
  font-size:12px;
  letter-spacing:.12em;
  color:var(--mist);
}
.page-privacy .pp-fact dd{
  margin:6px 0 0;
  font-size:15px;
  color:var(--white);
  letter-spacing:.04em;
}
.page-privacy .pp-fact:first-child dd{color:var(--lime);}

.page-privacy .pp-visual{
  margin:0 auto;
  padding-bottom:clamp(16px,3vw,26px);
}
.page-privacy .pp-visual .media-frame{
  border:1px solid var(--line);
  background:var(--bg-carbon);
}
.page-privacy .pp-visual img{
  width:100%;
  height:100%;
  max-width:100%;
  object-fit:cover;
  display:block;
}
.page-privacy .pp-caption{
  margin-top:10px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:var(--mist);
}

.page-privacy .pp-layout{
  display:grid;
  gap:clamp(18px,3vw,32px);
  padding-bottom:clamp(48px,8vw,96px);
}
.page-privacy .pp-rail{display:none;}
.page-privacy .pp-rail-title{
  margin:0 0 12px;
  font-size:11px;
  letter-spacing:.18em;
  color:var(--mist);
}
.page-privacy .pp-rail-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:2px;
  border-left:1px solid var(--line);
}
.page-privacy .pp-rail-list a{
  display:block;
  padding:9px 12px;
  font-size:13px;
  line-height:1.5;
  color:var(--mist);
  text-decoration:none;
  border-left:2px solid transparent;
  transition:color .18s ease,border-color .18s ease,background-color .18s ease;
}
.page-privacy .pp-rail-list a:hover,
.page-privacy .pp-rail-list a:focus-visible{
  color:var(--white);
  background:rgba(198,255,61,.12);
}
.page-privacy .pp-rail-list li.is-active a,
.page-privacy .pp-rail-list a[aria-current="true"]{
  color:var(--lime);
  border-left-color:var(--lime);
  background:rgba(198,255,61,.12);
}

.page-privacy .pp-article{
  min-width:0;
  max-width:44em;
}
.page-privacy .pp-sec{
  padding:clamp(24px,4vw,40px) 0;
  border-top:1px solid var(--line);
}
.page-privacy .pp-sec-head{
  display:flex;
  align-items:baseline;
  gap:12px;
  margin-bottom:16px;
}
.page-privacy .pp-num{
  flex:none;
  position:relative;
  padding-left:20px;
  font-size:12px;
  letter-spacing:.1em;
  color:var(--lime);
}
.page-privacy .pp-num::before{
  content:"";
  position:absolute;
  left:0;
  top:.62em;
  width:14px;
  height:2px;
  background:var(--lime);
}
.page-privacy .pp-sec h2{
  margin:0;
  font-family:var(--font-display);
  font-size:clamp(19px,3.2vw,26px);
  font-weight:800;
  line-height:1.32;
  letter-spacing:-.01em;
  color:var(--white);
}
.page-privacy .pp-body p{
  margin:0 0 14px;
  max-width:var(--pp-measure);
  font-size:15.5px;
  line-height:1.85;
  color:var(--pp-ink);
}
.page-privacy .pp-body a{
  color:var(--lime);
  text-decoration:none;
  border-bottom:1px solid rgba(198,255,61,.45);
}
.page-privacy .pp-body a:hover{color:var(--white);border-bottom-color:var(--white);}

.page-privacy .pp-fields{
  margin:6px 0 0;
  display:grid;
  gap:10px;
}
.page-privacy .pp-field{
  padding:16px 18px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:linear-gradient(140deg,var(--bg-pitch),var(--bg-carbon));
}
.page-privacy .pp-field dt{
  display:inline-block;
  margin-bottom:8px;
  padding:3px 9px;
  font-size:12px;
  letter-spacing:.1em;
  color:var(--bg-deep);
  background:var(--lime);
  border-radius:2px;
}
.page-privacy .pp-field dd{
  margin:0;
  max-width:var(--pp-measure);
  font-size:15px;
  line-height:1.8;
  color:var(--pp-ink);
}

.page-privacy .pp-break{
  margin:0;
  padding:14px 0 14px 16px;
  border-left:3px solid var(--orange);
  font-size:14.5px;
  line-height:1.75;
  color:var(--mist);
  max-width:var(--pp-measure);
}

.page-privacy .pp-reasons{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
}
.page-privacy .pp-reasons li{
  padding:16px 18px;
  background:var(--bg-deep);
}
.page-privacy .pp-reasons h3{
  margin:0 0 6px;
  font-family:var(--font-display);
  font-size:16px;
  font-weight:800;
  letter-spacing:.02em;
  color:var(--lime);
}
.page-privacy .pp-reasons p{
  margin:0;
  max-width:var(--pp-measure);
  font-size:15px;
  line-height:1.8;
  color:var(--pp-ink);
}

.page-privacy .pp-keep{
  list-style:none;
  margin:6px 0 18px;
  padding:0;
  display:grid;
  gap:10px;
}
.page-privacy .pp-keep li{
  display:grid;
  gap:4px;
  padding:14px 16px;
  border-left:3px solid var(--lime);
  background:rgba(198,255,61,.07);
  border-radius:0 var(--radius) var(--radius) 0;
}
.page-privacy .pp-keep-key{
  font-size:12px;
  letter-spacing:.1em;
  color:var(--mist);
}
.page-privacy .pp-keep-val{
  font-family:var(--font-mono);
  font-size:16px;
  letter-spacing:.05em;
  color:var(--white);
}
.page-privacy .pp-keep-note{
  font-size:13.5px;
  line-height:1.7;
  color:var(--mist);
}

.page-privacy .pp-details{
  margin-top:6px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--bg-pitch);
}
.page-privacy .pp-details summary{
  padding:13px 16px;
  cursor:pointer;
  font-size:14.5px;
  color:var(--white);
  list-style:none;
}
.page-privacy .pp-details summary::-webkit-details-marker{display:none;}
.page-privacy .pp-details summary::before{
  content:"＋";
  display:inline-block;
  margin-right:10px;
  font-family:var(--font-mono);
  color:var(--lime);
}
.page-privacy .pp-details[open] summary::before{content:"－";}
.page-privacy .pp-details p{
  margin:0;
  padding:0 16px 16px 40px;
  max-width:var(--pp-measure);
  font-size:14.5px;
  line-height:1.8;
  color:var(--pp-ink);
}

.page-privacy .pp-quote{
  margin:18px 0;
  padding:16px 18px;
  border-left:3px solid var(--orange);
  background:linear-gradient(100deg,rgba(255,122,24,.14),rgba(255,122,24,0) 78%);
}
.page-privacy .pp-quote p{
  margin:0;
  max-width:34em;
  font-size:15.5px;
  line-height:1.8;
  color:var(--white);
}

.page-privacy .pp-rights{
  list-style:none;
  margin:0 0 18px;
  padding:0;
  display:grid;
  gap:12px;
}
.page-privacy .pp-rights li{
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:var(--radius);
  background:var(--bg-carbon);
}
.page-privacy .pp-rights h3{
  margin:0 0 5px;
  font-family:var(--font-mono);
  font-size:13px;
  letter-spacing:.14em;
  color:var(--lime);
}
.page-privacy .pp-rights p{
  margin:0;
  max-width:var(--pp-measure);
  font-size:15px;
  line-height:1.8;
  color:var(--pp-ink);
}

.page-privacy .pp-contact{
  margin:0 0 20px;
  display:grid;
  gap:1px;
  background:var(--line);
  border:1px solid var(--line);
  border-radius:var(--radius);
  overflow:hidden;
}
.page-privacy .pp-contact-line{
  display:grid;
  gap:4px;
  padding:13px 16px;
  background:var(--bg-deep);
}
.page-privacy .pp-contact-line dt{
  font-size:11.5px;
  letter-spacing:.14em;
  color:var(--mist);
}
.page-privacy .pp-contact-line dd{
  margin:0;
  font-size:15px;
  line-height:1.7;
  color:var(--white);
  word-break:break-word;
}
.page-privacy .pp-links{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

@media (min-width:720px){
  .page-privacy .pp-hero-facts{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .page-privacy .pp-keep li{
    grid-template-columns:minmax(0,1fr) auto;
    align-items:baseline;
    gap:6px 16px;
  }
  .page-privacy .pp-keep-note{grid-column:1 / -1;}
  .page-privacy .pp-rights{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .page-privacy .pp-contact-line{
    grid-template-columns:110px minmax(0,1fr);
    align-items:baseline;
    gap:14px;
  }
}

@media (min-width:1000px){
  .page-privacy .pp-hero-inner{
    grid-template-columns:minmax(0,1.55fr) minmax(0,.9fr);
    align-items:end;
  }
  .page-privacy .pp-hero-facts{
    grid-template-columns:minmax(0,1fr);
  }
  .page-privacy .pp-layout{
    grid-template-columns:var(--pp-rail) minmax(0,1fr);
    gap:clamp(32px,5vw,72px);
    align-items:start;
  }
  .page-privacy .pp-rail{
    display:block;
    position:sticky;
    top:96px;
    align-self:start;
  }
  .page-privacy .pp-reasons{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (prefers-reduced-motion:reduce){
  .page-privacy .pp-rail-list a{transition:none;}
}
<<<END>>>
