/* Page styles for privacy.php — shared tokens live in ../site.css */
.pv-hero { background:var(--bg-base); padding:150px 0 56px; border-bottom:1px solid var(--line); position:relative; overflow:hidden; }
.pv-hero::before { content:''; position:absolute; inset:0; pointer-events:none;
    background-image:linear-gradient(rgba(var(--accent-rgb),.025) 1px,transparent 1px),linear-gradient(90deg,rgba(var(--accent-rgb),.025) 1px,transparent 1px);
    background-size:56px 56px; }
.pv-hero .container { position:relative; }
.pv-crumb { display:flex; gap:10px; align-items:center; font-size:12px; color:var(--text-dim); margin-bottom:22px; }
.pv-crumb a { color:var(--text-muted); } .pv-crumb a:hover { color:var(--accent); } .pv-crumb i { font-size:9px; }
.pv-hero h1 { font-family:var(--font-display); font-weight:900; font-size:clamp(44px,7vw,84px); line-height:.95; color:var(--text-strong); margin-bottom:18px; text-transform:none; }
.pv-hero h1 span { color:var(--accent); }
.pv-hero p { max-width:640px; color:var(--text); font-size:17px; line-height:1.75; margin:0; }
.pv-hero .pv-updated { margin-top:14px; font-size:13px; color:var(--text-dim); }
.pv-body { background:var(--surface); padding:64px 0 110px; }
.pv-layout { display:grid; grid-template-columns:220px minmax(0,760px); gap:56px; }
.pv-toc { position:sticky; top:110px; align-self:start; display:flex; flex-direction:column; gap:10px; }
.pv-toc p { font-size:11px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--text-dim); margin:0 0 4px; }
.pv-toc a { color:var(--text-muted); font-size:14px; } .pv-toc a:hover { color:var(--accent); }
.pv-content h2 { font-family:var(--font-display); font-weight:800; font-size:30px; color:var(--text-strong); text-transform:none; margin:44px 0 14px; scroll-margin-top:110px; }
.pv-content h2:first-child { margin-top:0; }
.pv-content p, .pv-content li { color:var(--text); font-size:16px; line-height:1.8; }
.pv-content ul { padding-left:20px; margin-bottom:16px; } .pv-content li { margin-bottom:6px; }
.pv-content a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.pv-content code { font-family:var(--font-mono); font-size:14px; color:var(--accent); background:var(--accent-dim); padding:2px 6px; border-radius:4px; }
.pv-content strong { color:var(--text-strong); }
@media (max-width:991px) { .pv-layout { grid-template-columns:1fr; gap:28px; } .pv-toc { position:static; flex-direction:row; flex-wrap:wrap; gap:8px 16px; } .pv-toc p { width:100%; } }
@media (max-width:575px) { .pv-hero { padding:120px 0 40px; } }
