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

.privacy-hero__copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:var(--space-2);
  max-width:var(--container-narrow)
}

.privacy-hero__copy h1,
.privacy-hero__copy p{
  margin:0
}

.privacy-hero__eyebrow{
  width:fit-content;
  align-self:flex-start;
  color:var(--color-primary);
  font-size:var(--text-xs);
  font-weight:700;
  letter-spacing:.08em
}

.privacy-hero__lead{
  max-width:var(--container-narrow);
  color:var(--color-ink-soft);
  font-size:var(--text-lg)
}

.privacy-hero__summary{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-4);
  margin:var(--space-6) 0 0;
  padding:var(--space-5);
  border-radius:var(--radius-card);
  color:var(--color-ink);
  background:var(--color-white)
}

.privacy-hero__summary div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--space-2)
}

.privacy-hero__summary dt,
.privacy-hero__summary dd{
  margin:0
}

.privacy-hero__summary dt{
  color:var(--color-muted);
  font-size:var(--text-xs);
  font-weight:700
}

.privacy-hero__summary dd{
  color:var(--color-ink);
  font-size:var(--text-sm);
  font-weight:650
}

.privacy-layout{
  display:grid;
  grid-template-columns:minmax(0,.32fr) minmax(0,1fr);
  gap:var(--space-8);
  align-items:start
}

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

.privacy-index{
  align-self:start
}

.privacy-index__panel{
  position:sticky;
  top:calc(var(--header-height) + var(--space-5));
  padding:var(--space-5);
  border-radius:var(--radius-card);
  color:var(--color-ink);
  background:var(--color-surface)
}

.privacy-index__label{
  margin:0 0 var(--space-3);
  color:var(--color-primary);
  font-size:var(--text-xs);
  font-weight:700;
  letter-spacing:.08em
}

.privacy-index ol{
  list-style:none;
  margin:0;
  padding:0
}

.privacy-index li + li{
  margin-top:var(--space-1)
}

.privacy-index a{
  display:block;
  padding:var(--space-2);
  border-radius:var(--radius-control);
  color:var(--color-ink-soft);
  font-size:var(--text-sm);
  font-weight:600;
  transition:color .18s ease,background .18s ease
}

.privacy-index a:hover{
  color:var(--color-primary);
  background:var(--color-white)
}

.privacy-index__note{
  margin:var(--space-4) 0 0;
  padding-top:var(--space-4);
  border-top:1px solid var(--color-line-strong);
  color:var(--color-muted);
  font-size:var(--text-xs)
}

.privacy-content{
  min-width:0
}

.privacy-section{
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  scroll-margin-top:calc(var(--header-height) + var(--space-5))
}

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

.privacy-section > p{
  margin:0;
  max-width:var(--container-narrow);
  color:var(--color-ink-soft)
}

.privacy-section > p a:not(.c-btn){
  color:var(--color-primary);
  font-weight:650;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
  overflow-wrap:anywhere
}

.privacy-section__heading{
  display:flex;
  align-items:flex-start;
  gap:var(--space-3);
  margin-bottom:var(--space-3)
}

.privacy-section__number{
  flex:0 0 auto;
  padding-top:var(--space-1);
  color:var(--color-primary);
  font:700 var(--text-xs)/1 var(--font-mono);
  letter-spacing:.08em
}

.privacy-section__heading div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--space-2)
}

.privacy-section__heading h2,
.privacy-section__heading p{
  margin:0
}

.privacy-section__kicker{
  width:fit-content;
  align-self:flex-start;
  color:var(--color-muted);
  font-size:var(--text-xs);
  font-weight:700;
  letter-spacing:.06em
}

.privacy-scope-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-4);
  margin-top:var(--space-5);
  align-items:start
}

.privacy-scope-item{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  padding:var(--space-5);
  border-radius:var(--radius-card);
  color:var(--color-ink);
  background:var(--color-warm)
}

.privacy-scope-item h3,
.privacy-scope-item p{
  margin:0
}

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

.privacy-callout{
  margin-top:var(--space-5);
  color:var(--color-ink);
  background:var(--color-surface)
}

.privacy-callout strong{
  display:block;
  margin-bottom:var(--space-2);
  color:var(--color-ink)
}

.privacy-callout p{
  margin:0;
  color:var(--color-ink-soft)
}

.privacy-data-map{
  margin:var(--space-5) 0 0
}

.privacy-data-map > div{
  display:grid;
  grid-template-columns:minmax(0,.34fr) minmax(0,1fr);
  gap:var(--space-4);
  padding:var(--space-5) 0;
  border-bottom:1px solid var(--color-line)
}

.privacy-data-map > div:first-child{
  border-top:1px solid var(--color-line)
}

.privacy-data-map dt,
.privacy-data-map dd{
  margin:0
}

.privacy-data-map dt{
  color:var(--color-ink);
  font-weight:700
}

.privacy-data-map dd{
  color:var(--color-ink-soft)
}

.privacy-purpose-list{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-4);
  margin-top:var(--space-5);
  align-items:start
}

.privacy-purpose{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  padding:var(--space-5);
  border-radius:var(--radius-card);
  color:var(--color-ink);
  background:var(--color-surface)
}

.privacy-purpose h3,
.privacy-purpose p{
  margin:0
}

.privacy-purpose p{
  color:var(--color-ink-soft)
}

.privacy-provider-flow{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-4);
  margin-top:var(--space-5);
  align-items:start
}

.privacy-provider-flow > div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  padding:var(--space-5);
  border-radius:var(--radius-card);
  color:var(--color-ink);
  background:var(--color-warm)
}

.privacy-provider-flow span{
  width:fit-content;
  align-self:flex-start;
  color:var(--color-primary);
  font-size:var(--text-sm);
  font-weight:700
}

.privacy-provider-flow p{
  margin:0;
  color:var(--color-ink-soft)
}

.privacy-retention-table{
  margin-top:var(--space-5)
}

.privacy-retention-table caption{
  padding:var(--space-3) var(--space-4);
  color:var(--color-muted);
  background:var(--color-white);
  font-size:var(--text-xs);
  text-align:left
}

.privacy-rights-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:var(--space-4);
  margin-top:var(--space-5);
  align-items:start
}

.privacy-rights-grid > div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  padding:var(--space-5);
  border-radius:var(--radius-card);
  color:var(--color-ink);
  background:var(--color-warm)
}

.privacy-rights-grid h3,
.privacy-rights-grid p{
  margin:0
}

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

.privacy-request-steps{
  margin-top:var(--space-5);
  padding:var(--space-6);
  border-radius:var(--radius-card);
  color:var(--color-ink);
  background:var(--color-surface)
}

.privacy-request-steps h3{
  margin:0 0 var(--space-5)
}

.privacy-request-steps ol{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:var(--space-4);
  list-style:none;
  margin:0;
  padding:0;
  counter-reset:privacy-step
}

.privacy-request-steps li{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  padding:var(--space-4);
  border-radius:var(--radius-control);
  color:var(--color-ink);
  background:var(--color-white);
  counter-increment:privacy-step
}

.privacy-request-steps span{
  color:var(--color-ink);
  font-weight:700
}

.privacy-request-steps span::before{
  content:counter(privacy-step,decimal-leading-zero) " · ";
  color:var(--color-primary);
  font-family:var(--font-mono)
}

.privacy-request-steps p{
  margin:0;
  color:var(--color-muted)
}

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

.privacy-security-list > div{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:var(--space-2);
  padding:var(--space-5);
  border-radius:var(--radius-card);
  color:var(--color-ink);
  background:var(--color-surface)
}

.privacy-security-list svg{
  color:var(--color-primary)
}

.privacy-security-list h3,
.privacy-security-list p{
  margin:0
}

.privacy-security-list p{
  color:var(--color-ink-soft)
}

.privacy-final__copy{
  min-width:0;
  max-width:var(--container-narrow);
  display:flex;
  flex-direction:column;
  gap:var(--space-2)
}

.privacy-final__copy h2,
.privacy-final__copy p{
  margin:0
}

.privacy-final__copy h2{
  color:var(--color-white);
  font-size:var(--text-xl)
}

.privacy-final__copy p{
  color:var(--color-faint)
}

.privacy-final__kicker{
  width:fit-content;
  align-self:flex-start;
  color:var(--color-accent);
  font-size:var(--text-xs);
  font-weight:700;
  letter-spacing:.08em
}

.privacy-final__actions{
  flex:0 0 auto;
  display:grid;
  grid-template-columns:minmax(0,1fr);
  align-items:stretch;
  justify-content:stretch;
  gap:var(--space-2)
}

.privacy-final__actions .c-btn{
  width:100%;
  max-width:100%;
  overflow-wrap:anywhere
}

.privacy-final__secondary{
  color:var(--color-white);
  background:transparent;
  border-color:var(--color-muted)
}

.privacy-final__secondary:hover{
  color:var(--color-white);
  background:var(--color-ink-soft);
  border-color:var(--color-faint)
}

@media(max-width:900px){
  .privacy-layout{
    grid-template-columns:minmax(0,1fr)
  }

  .privacy-index__panel{
    position:static
  }

  .privacy-index ol{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:var(--space-1)
  }

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

@media(max-width:640px){
  .privacy-hero__summary,
  .privacy-scope-grid,
  .privacy-purpose-list,
  .privacy-provider-flow,
  .privacy-rights-grid,
  .privacy-request-steps ol,
  .privacy-security-list,
  .privacy-index ol{
    grid-template-columns:minmax(0,1fr)
  }

  .privacy-data-map > div{
    grid-template-columns:minmax(0,1fr);
    gap:var(--space-2)
  }

  .privacy-section__heading{
    flex-direction:column;
    gap:var(--space-2)
  }

  .privacy-request-steps{
    padding:var(--space-5)
  }

  .privacy-final__actions{
    width:100%
  }
}
