.policy-page { margin: 0; background: #0c0d12; color: #e7e8ed; font: 17px/1.7 system-ui, sans-serif; }
.policy-page * { box-sizing: border-box; }
.policy-page header, .policy-page main, .policy-page footer { max-width: 900px; margin: auto; padding: 24px; }
.policy-page header { border-bottom: 1px solid #343644; }
.policy-page nav { display: flex; gap: 18px; flex-wrap: wrap; }
.policy-page a, .legal-site-footer a { color: #c9fa79; text-decoration: underline; text-underline-offset: 4px; }
.policy-page a:focus-visible, .legal-site-footer a:focus-visible { outline: 2px solid #c9fa79; outline-offset: 5px; }
.policy-page h1 { font-size: clamp(2rem, 6vw, 3rem); line-height: 1.2; }
.policy-page h2 { margin-top: 2.2rem; font-size: 1.35rem; }
.policy-page .policy-meta { color: #b4b7c5; }
.policy-page .policy-summary { border-left: 3px solid #c9fa79; padding: 12px 20px; background: #171922; }
.policy-page table { width: 100%; border-collapse: collapse; }
.policy-page th, .policy-page td { padding: 12px; border: 1px solid #343644; text-align: left; vertical-align: top; }
.policy-page th { width: 30%; }
.policy-page footer { border-top: 1px solid #343644; }
.legal-site-footer { display: flex; flex-wrap: wrap; justify-content: center; gap: 20px; padding: 20px; margin: 0; background: #0c0d12; color: #b4b7c5; font: 14px/1.5 system-ui, sans-serif; }
@media (max-width: 560px) { .policy-page header, .policy-page main, .policy-page footer { padding: 18px; } .policy-page th, .policy-page td { padding: 8px; overflow-wrap: anywhere; } }
