/* Policy pages continue Roo's warm gallery typography: Newsreader headings,
   DM Sans body, readable prose rather than cards, with quiet footer navigation. */
.policy-page { max-width:760px; margin:48px auto 64px; padding:0 24px; }
.policy-page h1 { font:400 clamp(36px,5vw,52px)/1.12 var(--serif,Georgia,serif); margin:0 0 28px; }
.policy-page h2 { font:400 28px/1.2 var(--serif,Georgia,serif); margin:32px 0 14px; }
.policy-page h3 { font:500 17px/1.35 var(--sans,'DM Sans',sans-serif); margin:24px 0 10px; }
.policy-page p,.policy-page li { font:400 14px/1.75 var(--sans,'DM Sans',sans-serif); color:var(--ink); }
.policy-page p { margin:0 0 16px; }
.policy-page ul { padding-left:22px; margin:12px 0 20px; }
.policy-page li { margin:6px 0; }
.policy-page a { color:var(--accent); text-decoration:underline; text-underline-offset:3px; }
.policy-page code { overflow-wrap:anywhere; }
.policy-games-button { min-height:44px; display:inline-flex; align-items:center; justify-content:center; padding:8px 16px; border:1px solid var(--line); border-radius:8px; font-size:13px; }
.policy-controls { padding-top:16px; border-top:1px solid var(--line); }
.policy-page~.site-footer nav { display:flex; gap:12px 20px; flex-wrap:wrap; }
@media(max-width:480px){.policy-page{padding:0 20px;margin:32px auto 40px}.policy-page h2{font-size:25px}.site-footer{gap:20px;flex-wrap:wrap}}
