
/* Privacy Policy — scoped styles */
:root{
  --bg:#0b0f1a; --fg:#e6eef8; --muted:#9aa3b2; --surface:rgba(255,255,255,.04);
  --line:rgba(255,255,255,.10); --brand:#7dd3fc; --glow:rgba(125,211,252,.25);
}
#privacy{ color:var(--fg); }
#privacy .container{ max-width:980px; margin:0 auto; }
#privacy .policy-header{ padding:36px 0 12px; margin-bottom:14px; border-bottom:1px solid var(--line); }
#privacy .policy-header h1{ margin:0 0 6px 0; font-size:clamp(28px,3vw,42px); line-height:1.15; }
#privacy .policy-meta{ color:var(--muted); font-size:14px; }

#privacy .policy-grid{ display:grid; grid-template-columns:240px 1fr; gap:24px; }
#privacy .policy-toc{ position:sticky; top:80px; align-self:start; border:1px solid var(--line); background:var(--surface); border-radius:14px; padding:12px; }
#privacy .policy-toc h3{ margin:0 0 8px 0; font-size:13px; color:var(--muted); letter-spacing:.02em; text-transform:uppercase; }
#privacy .policy-toc nav a{ display:block; padding:6px 8px; border-radius:8px; color:var(--fg); text-decoration:none; border:1px solid transparent; transition:.2s ease; }
#privacy .policy-toc nav a:hover{ background:rgba(255,255,255,.05); border-color:var(--line); }

#privacy .pp-section.card{ position:relative; border:1px solid var(--line); background:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.03)); border-radius:14px; padding:16px; margin:14px 0; box-shadow:0 10px 28px rgba(0,0,0,.24); }
#privacy .pp-section.card::after{ content:''; position:absolute; inset:0; pointer-events:none; border-radius:14px; box-shadow:0 0 0 1px rgba(255,255,255,.02), 0 0 80px var(--glow) inset; opacity:.25; }
#privacy h2{ margin:0 0 6px 0; font-size:clamp(20px,2.1vw,26px); }
#privacy h3{ margin:8px 0 4px 0; font-size:18px; }
#privacy p{ margin:8px 0 10px 0; }
#privacy ul, #privacy ol{ margin:8px 0 10px 22px; }
#privacy li{ margin:6px 0; }
#privacy a{ color:var(--brand); text-decoration:none; border-bottom:1px dashed rgba(125,211,252,.4); }
#privacy a:hover{ border-bottom-color:rgba(191,233,255,.7); color:#bfe9ff; }

/* Reveal animations */
#privacy .reveal{opacity:1;transform:none;}
#privacy .reveal.in-view{ opacity:1; transform:none; }

/* Anchor offset if a sticky header exists site-wide */
#privacy [id]{ scroll-margin-top: 90px; }

/* Tables */
#privacy table{ width:100%; border-collapse:collapse; border:1px solid var(--line); border-radius:12px; overflow:hidden; background:var(--surface); }
#privacy th, #privacy td{ padding:10px; border-bottom:1px solid var(--line); text-align:left; }
#privacy thead th{ color:var(--muted); font-weight:600; }

/* Mobile */
@media (max-width: 980px){
  #privacy .policy-grid{ grid-template-columns:1fr; }
  #privacy .policy-toc{ position:static; }
}
@media (prefers-reduced-motion: reduce){
  #privacy .reveal{opacity:1;transform:none;}
}

@media (prefers-reduced-motion: no-preference){
  #privacy .pp-section.card{ animation: fadeUp .6s ease both; }
  @keyframes fadeUp{ from{ opacity:0; transform: translateY(14px);} to{ opacity:1; transform:none;} }
}
