.page-privacy{
  --pp-gap:clamp(1.6rem,4vw,3rem);
  background:var(--paper);
  color:var(--graphite);
  overflow-x:clip;
}

.page-privacy .pp-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  background:var(--silver);
  border-bottom:1px solid var(--edge-strong);
}

.page-privacy .pp-hero-img{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center right;
  z-index:-2;
  opacity:.55;
}

.page-privacy .pp-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:linear-gradient(102deg,
    rgba(244,239,231,.96) 0%,
    rgba(244,239,231,.9) 44%,
    rgba(244,239,231,.42) 78%,
    rgba(199,205,212,.3) 100%);
}

.page-privacy .pp-hero::after{
  content:"";
  position:absolute;
  right:-8%;
  top:-22%;
  width:44%;
  height:168%;
  z-index:-1;
  background:repeating-linear-gradient(90deg, var(--track-red) 0 1px, transparent 1px 28px);
  opacity:.13;
  transform:rotate(16deg);
  pointer-events:none;
}

.page-privacy .pp-hero-inner{
  position:relative;
  padding-top:clamp(1.2rem,3.5vw,2rem);
  padding-bottom:clamp(2rem,5vw,3.4rem);
}

.page-privacy .pp-kicker{
  display:flex;
  align-items:center;
  gap:.6rem;
  margin:clamp(1.3rem,4vw,2.4rem) 0 .7rem;
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--track-red);
}

.page-privacy .pp-kicker::before{
  content:"";
  display:inline-block;
  width:28px;
  height:2px;
  background:var(--track-red);
}

.page-privacy h1{
  margin:0 0 1rem;
  max-width:16ch;
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(2.4rem,8.5vw,4.9rem);
  line-height:.98;
  letter-spacing:-.015em;
  color:var(--graphite);
}

.page-privacy .pp-lede{
  max-width:58ch;
  margin:0 0 1.5rem;
  font-size:clamp(.94rem,1.6vw,1.04rem);
  line-height:1.9;
  color:var(--rock);
}

.page-privacy .pp-jump{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:.5rem;
}

.page-privacy .pp-jump a{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  padding:.42rem .8rem;
  border:1px solid var(--edge-strong);
  background:rgba(244,239,231,.74);
  color:var(--graphite);
  font-size:.82rem;
  text-decoration:none;
  transition:background-color .2s ease, border-color .2s ease, color .2s ease;
}

.page-privacy .pp-jump a span{
  font-family:var(--font-mono);
  font-size:.7rem;
  color:var(--track-red);
  letter-spacing:.06em;
  transition:color .2s ease;
}

.page-privacy .pp-jump a:hover,
.page-privacy .pp-jump a:focus-visible{
  background:var(--graphite);
  border-color:var(--graphite);
  color:var(--paper);
}

.page-privacy .pp-jump a:hover span,
.page-privacy .pp-jump a:focus-visible span{
  color:var(--volt);
}

.page-privacy .pp-layout{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:var(--pp-gap);
  padding-top:clamp(1.8rem,4vw,3rem);
  padding-bottom:clamp(2.4rem,6vw,4rem);
}

.page-privacy .pp-index-card{
  background:var(--paper);
  border:1px solid var(--edge-strong);
  padding:1rem 1rem 1.1rem;
  box-shadow:5px 5px 0 rgba(22,24,29,.06), 10px 10px 0 rgba(107,122,90,.12);
}

.page-privacy .pp-index-title{
  margin:0 0 .7rem;
  padding-bottom:.6rem;
  border-bottom:1px solid var(--edge);
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--rock);
}

.page-privacy .pp-index-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:.1rem;
}

.page-privacy .pp-index-list a{
  display:flex;
  align-items:baseline;
  gap:.55rem;
  padding:.5rem .35rem .5rem .45rem;
  border-left:2px solid transparent;
  color:var(--graphite);
  font-size:.9rem;
  line-height:1.45;
  text-decoration:none;
  transition:border-color .18s ease, background-color .18s ease;
}

.page-privacy .pp-index-list a:hover,
.page-privacy .pp-index-list a:focus-visible{
  border-left-color:var(--track-red);
  background:rgba(94,100,107,.09);
}

.page-privacy .pp-idx{
  flex:none;
  font-family:var(--font-mono);
  font-size:.72rem;
  letter-spacing:.06em;
  color:var(--track-red);
}

.page-privacy .pp-index-foot{
  margin-top:.9rem;
  padding-top:.9rem;
  border-top:1px solid var(--edge);
}

.page-privacy .pp-index-foot .btn{
  display:flex;
  width:100%;
  justify-content:center;
  padding:.62rem .8rem;
  font-size:.85rem;
}

.page-privacy .pp-body{
  min-width:0;
}

.page-privacy .pp-clause{
  padding:clamp(1.4rem,3.5vw,2.4rem) 0;
  border-top:1px solid var(--edge);
  scroll-margin-top:6rem;
}

.page-privacy .pp-clause:first-child{
  border-top:0;
  padding-top:0;
}

.page-privacy .pp-clause > h2{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:.7rem;
  margin:0 0 .9rem;
  font-family:var(--font-display);
  font-weight:700;
  font-size:clamp(1.35rem,3.4vw,1.95rem);
  line-height:1.18;
  letter-spacing:-.005em;
  color:var(--graphite);
}

.page-privacy .pp-cnum{
  flex:none;
  padding-top:.24rem;
  border-top:2px solid var(--track-red);
  font-family:var(--font-mono);
  font-size:.76rem;
  letter-spacing:.12em;
  color:var(--track-red);
}

.page-privacy .pp-clause p{
  max-width:68ch;
  margin:0 0 .9rem;
  font-size:.96rem;
  line-height:1.9;
  color:var(--graphite);
}

.page-privacy .pp-clause p:last-child{
  margin-bottom:0;
}

.page-privacy .pp-list{
  list-style:none;
  max-width:70ch;
  margin:0 0 1.1rem;
  padding:0;
  display:grid;
  gap:.5rem;
}

.page-privacy .pp-list li{
  position:relative;
  padding-left:1.1rem;
  font-size:.93rem;
  line-height:1.8;
  color:var(--rock);
}

.page-privacy .pp-list li::before{
  content:"";
  position:absolute;
  left:0;
  top:.78em;
  width:.46rem;
  height:2px;
  background:var(--track-red);
}

.page-privacy .pp-list strong{
  color:var(--graphite);
  font-weight:700;
}

.page-privacy .pp-defs{
  display:grid;
  gap:1px;
  max-width:78ch;
  margin:0 0 1.2rem;
  background:var(--edge);
  border:1px solid var(--edge-strong);
}

.page-privacy .pp-def{
  background:var(--paper);
  padding:.85rem 1rem;
}

.page-privacy .pp-def dt{
  display:flex;
  align-items:baseline;
  gap:.5rem;
  margin:0 0 .3rem;
  font-family:var(--font-display);
  font-weight:700;
  font-size:1rem;
  color:var(--graphite);
}

.page-privacy .pp-def dt::before{
  content:"";
  flex:none;
  width:6px;
  height:6px;
  background:var(--moss);
}

.page-privacy .pp-def dd{
  margin:0;
  font-size:.88rem;
  line-height:1.8;
  color:var(--rock);
}

.page-privacy .pp-clause .pp-note{
  max-width:78ch;
  margin:0 0 1.1rem;
  border:1px solid var(--edge-strong);
  background:rgba(94,100,107,.055);
}

.page-privacy .pp-note summary{
  display:flex;
  align-items:center;
  gap:.55rem;
  padding:.7rem .9rem;
  cursor:pointer;
  list-style:none;
  font-family:var(--font-display);
  font-weight:700;
  font-size:.95rem;
  color:var(--graphite);
  transition:background-color .18s ease;
}

.page-privacy .pp-note summary::-webkit-details-marker{
  display:none;
}

.page-privacy .pp-note summary:hover{
  background:rgba(94,100,107,.09);
}

.page-privacy .pp-note summary::before{
  content:"+";
  flex:none;
  width:.9rem;
  font-family:var(--font-mono);
  font-size:1rem;
  line-height:1;
  color:var(--track-red);
}

.page-privacy .pp-note[open] summary::before{
  content:"\2212";
}

.page-privacy .pp-note[open] summary{
  border-bottom:1px solid var(--edge);
}

.page-privacy .pp-clause .pp-note p{
  max-width:none;
  margin:0;
  padding:.8rem .9rem .95rem;
  font-size:.9rem;
  line-height:1.85;
  color:var(--rock);
}

.page-privacy .pp-clause .pp-contact{
  max-width:78ch;
  margin:1.2rem 0 0;
  padding:1.1rem 1.15rem 1.2rem;
  background:var(--night);
  border-left:4px solid var(--track-red);
  color:var(--paper);
}

.page-privacy .pp-clause .pp-contact-title{
  max-width:none;
  margin:0 0 .8rem;
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.24em;
  text-transform:uppercase;
  color:var(--neon);
}

.page-privacy .pp-contact-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  gap:.55rem;
}

.page-privacy .pp-contact-list li{
  display:grid;
  grid-template-columns:4.6rem minmax(0,1fr);
  gap:.5rem;
  align-items:baseline;
  font-size:.9rem;
  line-height:1.7;
  color:rgba(244,239,231,.92);
}

.page-privacy .pp-contact-key{
  font-family:var(--font-mono);
  font-size:.7rem;
  letter-spacing:.08em;
  color:rgba(244,239,231,.55);
}

.page-privacy .pp-foot{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:space-between;
  gap:.9rem 1.6rem;
  margin-top:clamp(1.8rem,5vw,3rem);
  padding-top:1.2rem;
  border-top:1px solid var(--edge);
}

.page-privacy .pp-foot-links{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-wrap:wrap;
  gap:.5rem 1.4rem;
}

.page-privacy .pp-foot-links a{
  color:var(--graphite);
  font-size:.85rem;
  text-decoration:none;
  border-bottom:1px solid var(--edge-strong);
  padding-bottom:2px;
  transition:color .18s ease, border-color .18s ease;
}

.page-privacy .pp-foot-links a:hover,
.page-privacy .pp-foot-links a:focus-visible{
  color:var(--track-red);
  border-color:var(--track-red);
}

.page-privacy .pp-foot-meta{
  margin:0;
  font-family:var(--font-mono);
  font-size:.74rem;
  letter-spacing:.06em;
  color:var(--rock);
}

@media (min-width:760px){
  .page-privacy .pp-defs{
    grid-template-columns:1fr 1fr;
  }
}

@media (min-width:920px){
  .page-privacy .pp-layout{
    grid-template-columns:minmax(200px,250px) minmax(0,1fr);
    align-items:start;
    gap:clamp(2rem,4vw,3.5rem);
  }
  .page-privacy .pp-index{
    position:sticky;
    top:6rem;
  }
}

@media (max-width:479px){
  .page-privacy .pp-contact-list li{
    grid-template-columns:minmax(0,1fr);
    gap:.15rem;
  }
  .page-privacy .pp-jump a{
    font-size:.78rem;
    padding:.38rem .65rem;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-privacy *{
    transition-duration:.01ms !important;
    animation-duration:.01ms !important;
  }
}
<<<END>>>
