.privacy-hero{
  color:var(--dm-ink);
  background:var(--dm-surface)
}

.privacy-hero{
  padding-block:clamp(4.5rem,8vw,7rem)
}
.privacy-hero__inner{
  display:grid;
  gap:var(--dm-space-5)
}
.privacy-hero__lead{margin-bottom:var(--dm-space-2)}

.privacy-hero__copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--dm-space-3);
  max-width:44rem;
  min-width:0
}

.privacy-hero__copy .c-badge{
  width:fit-content;
  max-width:100%;
  align-self:flex-start
}

.privacy-hero__lead{
  max-width:44rem;
  color:var(--dm-muted);
  font-size:var(--dm-fs-3)
}

.privacy-meta{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--dm-space-2);
  padding:var(--dm-space-3);
  border-radius:var(--dm-radius-md);
  color:var(--dm-ink);
  background:var(--dm-paper)
}

.privacy-meta>div{
  min-width:0;
  display:grid;
  gap:var(--dm-space-1)
}

.privacy-meta dt{
  color:var(--dm-muted);
  font-size:var(--dm-fs-0);
  font-weight:750;
  letter-spacing:.06em
}

.privacy-meta dd{
  color:var(--dm-ink);
  font-size:var(--dm-fs-1);
  font-weight:700;
  overflow-wrap:anywhere
}

.privacy-meta a{
  color:var(--dm-primary);
  overflow-wrap:anywhere
}

.privacy-policy{
  color:var(--dm-ink);
  background:var(--dm-paper)
}

.privacy-layout{
  display:grid;
  grid-template-columns:minmax(12rem,15rem) minmax(0,1fr);
  gap:var(--dm-space-5);
  align-items:start
}

.privacy-layout>*{
  min-width:0
}

.privacy-rail{
  position:sticky;
  top:7rem;
  min-width:0
}

.privacy-toc{
  padding:var(--dm-space-3);
  border-radius:var(--dm-radius-md);
  color:var(--dm-ink);
  background:var(--dm-surface)
}

.privacy-toc__title{
  color:var(--dm-primary-ink);
  font-size:var(--dm-fs-1);
  font-weight:800
}

.privacy-toc ol{
  display:grid;
  gap:var(--dm-space-1);
  margin-top:var(--dm-space-2);
  padding:0;
  list-style:none;
  counter-reset:privacy-toc
}

.privacy-toc li{
  min-width:0;
  counter-increment:privacy-toc
}

.privacy-toc a{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--dm-space-1);
  align-items:baseline;
  color:var(--dm-muted);
  font-size:var(--dm-fs-1)
}

.privacy-toc a::before{
  content:counter(privacy-toc,decimal-leading-zero);
  color:var(--dm-primary);
  font-family:var(--dm-font-mono);
  font-size:var(--dm-fs-0);
  font-variant-numeric:tabular-nums
}

.privacy-toc a:hover{
  color:var(--dm-primary)
}

.privacy-content{
  max-width:48rem;
  min-width:0
}

.privacy-content a:not(.c-btn){
  color:var(--dm-primary);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.18em
}

.privacy-section{
  display:flex;
  flex-direction:column;
  gap:var(--dm-space-1);
  scroll-margin-top:7rem
}

.privacy-section+.privacy-section{
  margin-top:var(--dm-space-5);
  padding-top:var(--dm-space-5);
  border-top:1px solid var(--dm-line)
}

.privacy-section__head{
  display:flex;
  align-items:baseline;
  gap:var(--dm-space-1);
  margin-bottom:var(--dm-space-2)
}

.privacy-section__head h2{
  font-size:clamp(1.75rem,3vw,2.5rem)
}

.privacy-section__index{
  flex:0 0 auto;
  color:var(--dm-primary);
  font-family:var(--dm-font-mono);
  font-size:var(--dm-fs-0);
  font-weight:800;
  font-variant-numeric:tabular-nums
}

.privacy-section>p{
  color:var(--dm-muted)
}

.privacy-section>h3{
  margin-top:var(--dm-space-3);
  color:var(--dm-ink);
  font-size:var(--dm-fs-3)
}

.privacy-callout{
  display:grid;
  gap:var(--dm-space-1);
  margin-top:var(--dm-space-3);
  padding:var(--dm-space-3);
  border-radius:var(--dm-radius-sm);
  color:var(--dm-primary-ink);
  background:var(--dm-accent-faint)
}

.privacy-callout strong{
  color:var(--dm-primary-ink)
}

.privacy-callout p{
  color:#5f5065
}

.privacy-callout--payment{
  color:var(--dm-ink);
  background:var(--dm-success-soft)
}

.privacy-callout--payment strong{
  color:var(--dm-ink)
}

.privacy-callout--payment p{
  color:var(--dm-muted)
}

.privacy-data-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--dm-space-2);
  margin-block:var(--dm-space-3);
  align-items:start
}

.privacy-data-item{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--dm-space-1);
  padding:var(--dm-space-3);
  border-radius:var(--dm-radius-md);
  color:var(--dm-ink);
  background:var(--dm-surface)
}

.privacy-data-item h3{
  color:var(--dm-ink);
  font-size:var(--dm-fs-3)
}

.privacy-data-item p{
  color:var(--dm-muted)
}

.privacy-purpose-list{
  display:grid;
  gap:var(--dm-space-1);
  margin-block:var(--dm-space-3);
  list-style:none
}

.privacy-purpose-list li{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(8rem,max-content) minmax(0,1fr);
  gap:var(--dm-space-2);
  align-items:start;
  padding:var(--dm-space-2);
  border-radius:var(--dm-radius-sm);
  color:var(--dm-ink);
  background:var(--dm-surface)
}

.privacy-purpose-list strong{
  color:var(--dm-primary-ink)
}

.privacy-purpose-list span{
  color:var(--dm-muted)
}

.privacy-control-list{
  display:grid;
  gap:var(--dm-space-2);
  margin-block:var(--dm-space-3)
}

.privacy-control-list>div{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(8rem,max-content) minmax(0,1fr);
  gap:var(--dm-space-2);
  align-items:start;
  padding:var(--dm-space-3);
  border-radius:var(--dm-radius-md);
  color:var(--dm-paper);
  background:var(--dm-charcoal)
}

.privacy-control-list__label{
  color:var(--dm-accent);
  font-size:var(--dm-fs-1);
  font-weight:800
}

.privacy-control-list p{
  color:var(--dm-muted-light)
}

.privacy-retention{
  display:grid;
  gap:var(--dm-space-1);
  margin-block:var(--dm-space-3)
}

.privacy-retention>div{
  min-width:0;
  display:grid;
  grid-template-columns:minmax(9rem,max-content) minmax(0,1fr);
  gap:var(--dm-space-2);
  align-items:start;
  padding:var(--dm-space-2);
  border-radius:var(--dm-radius-sm);
  color:var(--dm-ink);
  background:var(--dm-surface)
}

.privacy-retention dt{
  color:var(--dm-primary-ink);
  font-weight:800
}

.privacy-retention dd{
  color:var(--dm-muted)
}

.privacy-security-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--dm-space-2);
  margin-block:var(--dm-space-3);
  align-items:start
}

.privacy-security-grid>div{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--dm-space-1);
  padding:var(--dm-space-3);
  border-radius:var(--dm-radius-md);
  color:var(--dm-ink);
  background:var(--dm-surface)
}

.privacy-security-grid svg{
  width:2.5rem;
  height:2.5rem;
  color:var(--dm-primary)
}

.privacy-security-grid h3{
  color:var(--dm-ink);
  font-size:var(--dm-fs-3)
}

.privacy-security-grid p{
  color:var(--dm-muted)
}

.privacy-contact-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--dm-space-3);
  margin-block:var(--dm-space-3);
  align-items:start
}

.privacy-contact-card{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--dm-space-1);
  padding:var(--dm-space-3);
  border-radius:var(--dm-radius-md);
  color:var(--dm-ink);
  background:var(--dm-surface)
}

.privacy-contact-card h3{
  color:var(--dm-ink)
}

.privacy-contact-card p{
  color:var(--dm-muted)
}

.privacy-contact-card .c-badge{
  width:fit-content;
  max-width:100%;
  align-self:flex-start
}

.privacy-contact-card .c-btn{
  width:100%;
  margin-top:var(--dm-space-2);
  overflow-wrap:anywhere
}

.privacy-contact-card--dark{
  color:var(--dm-paper);
  background:var(--dm-charcoal)
}

.privacy-contact-card--dark h3{
  color:var(--dm-paper)
}

.privacy-contact-card--dark p{
  color:var(--dm-muted-light)
}

.privacy-contact-card--dark .c-badge{
  color:var(--dm-primary-ink);
  background:var(--dm-accent)
}

.privacy-contact-card--dark .c-btn-primary{
  color:var(--dm-primary);
  background:var(--dm-white);
  border-color:var(--dm-white)
}

.privacy-contact-card--dark .c-btn-primary:hover{
  color:var(--dm-primary-deep);
  background:var(--dm-accent-soft);
  border-color:var(--dm-accent-soft)
}

.privacy-endcap{
  padding-block:var(--dm-space-5);
  color:var(--dm-paper);
  background:var(--dm-charcoal)
}

@media (max-width:960px){
  .privacy-layout{
    grid-template-columns:1fr;
    gap:var(--dm-space-4)
  }

  .privacy-rail{
    position:static
  }

  .privacy-toc ol{
    grid-template-columns:repeat(2,minmax(0,1fr))
  }

  .privacy-content{
    max-width:none
  }

  .privacy-security-grid{
    grid-template-columns:1fr
  }
}

@media (max-width:768px){
  .privacy-meta{
    grid-template-columns:1fr
  }

  .privacy-data-grid,
  .privacy-contact-grid{
    grid-template-columns:1fr
  }

  .privacy-purpose-list li,
  .privacy-control-list>div,
  .privacy-retention>div{
    grid-template-columns:1fr;
    gap:var(--dm-space-1)
  }
}

@media (max-width:390px){
  .privacy-toc ol{
    grid-template-columns:1fr
  }

  .privacy-meta,
  .privacy-toc,
  .privacy-data-item,
  .privacy-callout,
  .privacy-control-list>div,
  .privacy-security-grid>div,
  .privacy-contact-card{
    padding:var(--dm-space-2)
  }

  .privacy-section__head{
    align-items:flex-start;
    flex-direction:column
  }
}
