:root{
  --pv-bg:#0b1220;
  --pv-surface:#0f172a;
  --pv-surface-2:#111c33;

  --pv-fg:#e5e7eb;
  --pv-muted:rgba(229,231,235,.68);

  --pv-border:rgba(255,255,255,.10);
  --pv-border-2:rgba(255,255,255,.16);

  --pv-accent:#3b82f6;

  --pv-radius:18px;
  --pv-radius-sm:14px;

  --pv-shadow-sm:0 10px 24px rgba(0,0,0,.22);
  --pv-shadow:0 18px 55px rgba(0,0,0,.35);

  --pv-container:min(1100px, 92vw);
}

*{ box-sizing:border-box; }
html{ scroll-behavior:smooth; }


.page{ padding-top: 0 !important; background: var(--pv-bg); }

.privacy{
  background: var(--pv-bg);
  color: var(--pv-fg);
}

.privacy-container{
  width: var(--pv-container);
  margin: 0 auto;
  padding: 0 1rem;
}


.privacy-hero{
  background: var(--pv-surface);
  border-bottom: 1px solid var(--pv-border);
  padding: clamp(2.2rem, 5vw, 3.6rem) 0;
}

.privacy-hero__inner{
  text-align:center;
  max-width: 900px;
}

.privacy-kicker{
  display:inline-flex;
  padding:.35rem .75rem;
  border-radius:999px;
  font-weight:950;
  font-size:.85rem;
  color:rgba(229,231,235,.82);
  background:rgba(255,255,255,.04);
  border:1px solid var(--pv-border);
}

.privacy-title{
  margin:.9rem 0 .35rem;
  font-weight:950;
  letter-spacing:-.02em;
  font-size: clamp(1.8rem, 3.4vw, 3rem);
}

.privacy-subtitle{
  margin:0 auto;
  max-width: 70ch;
  color: rgba(229,231,235,.70);
  font-size: clamp(1rem, 1.4vw, 1.2rem);
}

.privacy-hero__meta{
  margin-top: 1.1rem;
  display:flex;
  flex-wrap:wrap;
  justify-content:center;
  gap:.6rem;
}

.privacy-pill{
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.55rem .75rem;
  border-radius:999px;
  font-weight:900;
  background: rgba(255,255,255,.04);
  border: 1px solid var(--pv-border);
  color: rgba(229,231,235,.88);
}


.privacy-toc-mobile{
  margin: 1rem auto 0;
  max-width: 720px;
  text-align:left;
  border: 1px solid var(--pv-border);
  border-radius: var(--pv-radius);
  background: rgba(255,255,255,.02);
  overflow: hidden;
}

.privacy-toc-mobile__summary{
  cursor:pointer;
  padding: 12px 14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-weight:950;
  list-style:none;
}
.privacy-toc-mobile__summary::-webkit-details-marker{ display:none; }

.privacy-caret{ opacity:.75; transition: transform .18s ease; }
.privacy-toc-mobile[open] .privacy-caret{ transform: rotate(180deg); }


.privacy-section{
  padding: clamp(1.25rem, 3vw, 2rem) 0 3rem;
}

.privacy-layout{
  display:grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  align-items:start;
}

@media (min-width: 992px){
  .privacy-layout{
    grid-template-columns: 340px 1fr;
    gap: 1.25rem;
  }
}


.privacy-aside{ display:none; }
@media (min-width: 992px){
  .privacy-aside{ display:block; }
  .privacy-toc-mobile{ display:none; }
}


.privacy-card,
.privacy-section-card{
  background: var(--pv-surface);
  border: 1px solid var(--pv-border);
  border-radius: var(--pv-radius);
  padding: clamp(1rem, 2vw, 1.4rem);
  box-shadow: var(--pv-shadow-sm);
}

.privacy-card--sticky{
  position: sticky;
  top: 96px; 
}

.privacy-content{ display:grid; gap: 1rem; }

.privacy-section-card{
  scroll-margin-top: 110px;
}

.privacy-card__head{ margin-bottom: .75rem; }

.privacy-h2{
  margin:0 0 .25rem;
  font-weight:950;
  letter-spacing:-.01em;
  font-size: 1.2rem;
  display:flex;
  align-items:center;
  gap:.55rem;
}

.privacy-h3{
  margin:0 0 .35rem;
  font-weight:950;
  font-size: 1.05rem;
}

.privacy-emoji{
  width: 36px;
  height: 36px;
  border-radius: 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background: rgba(59,130,246,.14);
}

.privacy-muted{
  margin:0;
  color: var(--pv-muted);
}

.privacy-text{
  margin:0;
  color: rgba(229,231,235,.82);
}


.privacy-toc{
  display:grid;
  gap:.45rem;
  margin-top:.6rem;
}

.privacy-toc__link{
  display:block;
  padding:.7rem .75rem;
  border-radius: 12px;
  text-decoration:none;
  font-weight:900;
  color: rgba(229,231,235,.90);
  border: 1px solid var(--pv-border);
  background: rgba(255,255,255,.02);
  transition: transform .12s ease, border-color .14s ease, background .14s ease;
}

.privacy-toc__link:hover{
  transform: translateY(-1px);
  border-color: rgba(59,130,246,.35);
  background: rgba(59,130,246,.10);
}


.privacy-toc__link.is-active{
  border-color: rgba(59,130,246,.55);
  background: rgba(59,130,246,.14);
}


.privacy-grid{
  display:grid;
  gap: 1rem;
  margin-top: 1rem;
}
@media (min-width: 900px){
  .privacy-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.privacy-subcard{
  border: 1px solid var(--pv-border);
  border-radius: var(--pv-radius-sm);
  padding: 1rem;
  background: var(--pv-surface-2);
}

.privacy-list{
  margin:.55rem 0 0;
  padding-left: 1.05rem;
  color: rgba(229,231,235,.70);
  display:grid;
  gap:.35rem;
}

@media (min-width: 900px){
  .privacy-list--two-col{
    columns: 2;
    column-gap: 2rem;
  }
  .privacy-list--two-col li{ break-inside: avoid; padding-bottom:.35rem; }
}


.privacy-callout{
  margin-top:.75rem;
  border-radius: var(--pv-radius-sm);
  border: 1px solid rgba(59,130,246,.28);
  background: rgba(59,130,246,.10);
  padding: 1rem;
}

.privacy-callout__title{
  margin:0 0 .15rem;
  font-weight:950;
}
.privacy-callout__text{
  margin:0;
  color: rgba(229,231,235,.74);
}


.privacy-note{
  margin-top: 1rem;
  padding: 1rem;
  border-radius: var(--pv-radius-sm);
  border: 1px solid var(--pv-border);
  background: rgba(255,255,255,.02);
}
.privacy-note__title{ margin:0 0 .15rem; font-weight:950; }
.privacy-note__text{ margin:0; color: rgba(229,231,235,.70); }

.privacy-link{
  color: #93c5fd;
  font-weight: 900;
  text-decoration: none;
}
.privacy-link:hover{ text-decoration: underline; }


.privacy-back-to-top{
  position: fixed;
  right: 1rem;
  bottom: 1rem;
  width: 46px;
  height: 46px;
  border-radius: 999px;
  border: 1px solid rgba(59,130,246,.35);
  background: var(--pv-accent);
  color: #fff;
  display: none;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow: 0 14px 28px rgba(59,130,246,.16);
  transition: transform .14s ease, background .14s ease;
}
.privacy-back-to-top:hover{
  background:#60a5fa;
  transform: translateY(-2px);
}

:focus-visible{
  outline: 3px solid rgba(59,130,246,.55);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce){
  *{ transition:none !important; scroll-behavior:auto !important; }
}
