.privacy-hero-copy{
  display:grid;
  gap:var(--space-1);
  max-width:var(--container-narrow);
}

.privacy-hero-lead{
  max-width:43rem;
  color:var(--muted);
  font-size:var(--text-lg);
}

.privacy-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:var(--space-1);
}

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

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

.privacy-principles{
  align-items:start;
}

.privacy-principle{
  display:grid;
  gap:var(--space-1);
  min-width:0;
  padding:var(--space-3);
  border-radius:var(--radius-lg);
}

.privacy-principle svg{
  width:1.75rem;
  height:1.75rem;
  margin-block-end:var(--space-1);
}

.privacy-principle p{
  color:inherit;
  opacity:.78;
}

.privacy-principle--green{
  background:var(--green-pale);
  color:var(--green-deep);
}

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

.privacy-principle--dark{
  background:var(--ink);
  color:var(--paper);
}

.privacy-body-section{
  background:var(--paper);
  color:var(--ink);
}

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

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

.privacy-toc{
  position:sticky;
  inset-block-start:var(--header-offset);
}

.privacy-toc__inner{
  display:grid;
  gap:var(--space-1);
  padding:var(--space-3);
  border-radius:var(--radius-lg);
  background:var(--surface-deep);
  color:var(--ink);
}

.privacy-toc__label{
  color:var(--green-deep);
  font-size:var(--text-xs);
  font-weight:800;
  letter-spacing:.08em;
}

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

.privacy-toc li{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--space-1);
  min-width:0;
  counter-increment:privacy-toc;
}

.privacy-toc li::before{
  color:var(--soft);
  content:counter(privacy-toc,decimal-leading-zero);
  font-family:var(--font-mono);
  font-size:var(--text-xs);
}

.privacy-toc a{
  color:var(--muted);
  font-size:var(--text-sm);
}

.privacy-toc a:hover{
  color:var(--green-deep);
}

.privacy-document{
  min-width:0;
  overflow:hidden;
  border-radius:var(--radius-xl);
  background:var(--white);
  color:var(--ink);
  box-shadow:var(--shadow-soft);
}

.privacy-clause{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:var(--space-3);
  padding:clamp(1.5rem,4vw,2.5rem);
  background:var(--white);
  color:var(--ink);
}

.privacy-clause+.privacy-clause{
  border-block-start:1px solid var(--line);
}

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

.privacy-clause--dark{
  background:var(--ink);
  color:var(--paper);
}

.privacy-clause--green{
  background:var(--green-pale);
  color:var(--green-deep);
}

.privacy-clause__number{
  min-width:2.25rem;
  color:var(--green);
  font-family:var(--font-mono);
  font-size:var(--text-sm);
  font-variant-numeric:tabular-nums;
  font-weight:800;
}

.privacy-clause--dark .privacy-clause__number{
  color:var(--green-bright);
}

.privacy-clause__content{
  display:grid;
  gap:var(--space-3);
  min-width:0;
}

.privacy-clause__heading{
  display:grid;
  gap:var(--space-1);
}

.privacy-clause__eyebrow{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  color:var(--green);
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-weight:800;
}

.privacy-clause--dark .privacy-clause__eyebrow{
  color:var(--green-bright);
}

.privacy-clause__content>p{
  max-width:47rem;
  color:var(--muted);
}

.privacy-clause--dark .privacy-clause__content>p{
  color:var(--soft);
}

.privacy-clause--green .privacy-clause__content>p{
  color:var(--green-deep);
}

.privacy-clause__content a:not(.c-btn){
  color:var(--green-deep);
  font-weight:750;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:.18em;
  overflow-wrap:anywhere;
}

.privacy-clause--dark .privacy-clause__content a:not(.c-btn){
  color:var(--green-bright);
}

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

.privacy-data-item{
  display:grid;
  gap:var(--space-1);
  min-width:0;
  padding:var(--space-2);
  border-radius:var(--radius-md);
  background:var(--surface-deep);
  color:var(--ink);
}

.privacy-data-item p{
  color:var(--muted);
  font-size:var(--text-sm);
}

.privacy-purpose-table,
.privacy-retention-table{
  background:var(--paper);
  color:var(--ink);
}

.privacy-purpose-table caption,
.privacy-retention-table caption{
  padding:var(--space-2);
  background:var(--surface-deep);
  color:var(--ink);
  font-size:var(--text-sm);
  font-weight:750;
  text-align:left;
}

.privacy-checklist{
  display:grid;
  gap:var(--space-2);
  margin:0;
  padding:0;
  list-style:none;
}

.privacy-checklist li{
  display:grid;
  gap:var(--space-1);
  min-width:0;
  padding:var(--space-2);
  border-radius:var(--radius-md);
  background:var(--dark-card);
  color:var(--paper);
}

.privacy-checklist strong{
  color:var(--green-bright);
}

.privacy-checklist span{
  color:var(--soft);
}

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

.privacy-payment-flow>div{
  display:grid;
  gap:var(--space-1);
  min-width:0;
  padding:var(--space-2);
  border-radius:var(--radius-md);
  background:var(--surface);
  color:var(--ink);
}

.privacy-payment-flow p{
  color:var(--muted);
  font-size:var(--text-sm);
}

.privacy-flow-index{
  width:fit-content;
  align-self:flex-start;
  color:var(--green);
  font-family:var(--font-mono);
  font-size:var(--text-xs);
  font-weight:800;
}

.privacy-definition-list{
  display:grid;
  gap:var(--space-2);
  margin:0;
}

.privacy-definition-list>div{
  display:grid;
  gap:var(--space-1);
  min-width:0;
  padding:var(--space-2);
  border-radius:var(--radius-md);
  background:var(--paper);
  color:var(--ink);
}

.privacy-definition-list dt{
  font-weight:800;
}

.privacy-definition-list dd{
  color:var(--muted);
}

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

.privacy-rights-grid>div{
  display:grid;
  gap:var(--space-1);
  min-width:0;
  padding:var(--space-2);
  border-radius:var(--radius-md);
  background:var(--white);
  color:var(--ink);
}

.privacy-rights-grid p{
  color:var(--muted);
  font-size:var(--text-sm);
}

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

.privacy-security-grid>div{
  display:grid;
  gap:var(--space-1);
  min-width:0;
  padding:var(--space-2);
  border-radius:var(--radius-md);
  background:var(--surface);
  color:var(--ink);
}

.privacy-security-grid svg{
  width:1.5rem;
  height:1.5rem;
  margin-block-end:var(--space-1);
  color:var(--green);
}

.privacy-security-grid p{
  color:var(--muted);
  font-size:var(--text-sm);
}

.legal-close{
  padding-block:var(--space-5);
  background:var(--ink);
  color:var(--paper);
}

.legal-close__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:var(--space-4);
}

.legal-close__copy{
  display:grid;
  gap:var(--space-1);
  max-width:43rem;
  min-width:0;
}

.legal-close__copy .p-kicker{
  width:fit-content;
  max-width:100%;
  align-self:flex-start;
  color:var(--green-bright);
}

.legal-close__copy p{
  color:var(--soft);
}

.legal-close__actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  gap:var(--space-1);
  min-width:min(100%,15rem);
}

.legal-close__secondary{
  border-color:var(--line-inverse);
  background:transparent;
  color:var(--paper);
}

.legal-close__secondary:hover{
  border-color:var(--green-bright);
  background:var(--dark-card);
  color:var(--paper);
}

@media (max-width:64rem){
  .privacy-layout{
    grid-template-columns:1fr;
  }

  .privacy-toc{
    position:static;
  }

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

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

@media (max-width:47.99rem){
  .privacy-data-grid,
  .privacy-payment-flow,
  .privacy-rights-grid,
  .privacy-security-grid,
  .privacy-toc ol{
    grid-template-columns:1fr;
  }

  .privacy-clause{
    grid-template-columns:1fr;
  }

  .privacy-clause__number{
    min-width:0;
  }

  .legal-close__inner{
    align-items:flex-start;
    flex-direction:column;
  }

  .legal-close__actions{
    width:100%;
    min-width:0;
  }

  .legal-close__actions .c-btn{
    width:100%;
    white-space:normal;
  }
}

@media (max-width:24rem){
  .privacy-clause{
    padding:var(--space-2);
  }

  .privacy-toc__inner{
    padding:var(--space-2);
  }
}
