/* Halaman legal: Kebijakan Privasi & Syarat dan Ketentuan */
.pp-hero { padding: 54px 0 46px; border-bottom: 1px solid var(--sipil-line); background: linear-gradient(180deg, #fbf8f3 0%, #f7f1e8 100%); }
.pp-crumb { display: flex; gap: 8px; margin: 0 0 20px; padding: 0; color: var(--sipil-muted); font-size: 11px; list-style: none; }
.pp-crumb li + li::before { margin-right: 8px; content: "›"; }
.pp-crumb a { color: inherit; text-decoration: none; }
.pp-crumb a:hover { color: var(--sipil-gold-dark); }
.pp-hero h1 { margin: 0; color: var(--sipil-ink); font-size: clamp(30px, 3.4vw, 44px); font-weight: 600; letter-spacing: -.04em; }
.pp-hero p:not(.sipil-eyebrow) { max-width: 620px; margin: 14px 0 0; color: var(--sipil-muted); font-size: 13px; line-height: 1.75; }
.pp-updated { display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; padding: 7px 12px; border: 1px solid var(--sipil-line); border-radius: 999px; background: #fff; color: var(--sipil-ink); font-size: 11px; font-weight: 600; }
.pp-updated i { color: var(--sipil-gold); }

.pp-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); align-items: start; gap: 48px; }

.pp-toc { position: sticky; top: 96px; padding: 18px; border: 1px solid var(--sipil-line); border-radius: 14px; background: #fff; }
.pp-toc strong { display: block; margin-bottom: 10px; color: var(--sipil-ink); font-size: 12px; font-weight: 700; }
.pp-toc ol { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; counter-reset: toc; }
.pp-toc li { counter-increment: toc; }
.pp-toc a { display: flex; gap: 8px; padding: 7px 8px; border-radius: 8px; color: var(--sipil-muted); font-size: 11px; text-decoration: none; }
.pp-toc a::before { min-width: 16px; color: var(--sipil-gold); content: counter(toc) "."; font-weight: 700; }
.pp-toc a:hover,
.pp-toc a.is-active { background: var(--sipil-beige); color: var(--sipil-gold-dark); }

.pp-content { max-width: 760px; color: #5c574f; font-size: 13px; line-height: 1.85; }
.pp-content section { padding-bottom: 30px; scroll-margin-top: 96px; }
.pp-content section + section { padding-top: 30px; border-top: 1px solid var(--sipil-line); }
.pp-content h2 { display: flex; align-items: baseline; gap: 10px; margin: 0 0 14px; color: var(--sipil-ink); font-size: 19px; font-weight: 600; letter-spacing: -.02em; }
.pp-content h2 span { color: var(--sipil-gold); font-size: 14px; font-weight: 700; }
.pp-content h3 { margin: 18px 0 8px; color: var(--sipil-ink); font-size: 14px; font-weight: 700; }
.pp-content p { margin: 0 0 12px; }
.pp-content ul { margin: 0 0 12px; padding-left: 20px; }
.pp-content li { margin-bottom: 6px; }
.pp-content strong { color: var(--sipil-ink); }
.pp-content a { color: var(--sipil-gold-dark); font-weight: 600; }

.pp-contact { display: grid; gap: 12px; margin-top: 6px; padding: 20px; border: 1px solid var(--sipil-line); border-radius: 14px; background: #fbf8f3; }
.pp-contact div { display: grid; grid-template-columns: 20px 1fr; gap: 10px; }
.pp-contact i { margin-top: 5px; color: var(--sipil-gold); text-align: center; }

@media (max-width: 900px) {
    .pp-layout { grid-template-columns: 1fr; gap: 24px; }
    .pp-toc { position: static; }
    .pp-toc ol { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 600px) {
    .pp-hero { padding: 36px 0 32px; }
    .pp-toc ol { grid-template-columns: 1fr; }
    .pp-content { font-size: 12.5px; }
}
