.rm-policies { max-width:900px; padding-block:48px 72px; color:var(--rm-ink); }
.rm-policies h1 { margin:8px 0 16px; font-size:clamp(30px, 5vw, 46px); line-height:1.25; letter-spacing:-.04em; }
.rm-policies > p { color:var(--rm-ink-soft); line-height:1.8; }
.rm-policy-nav { display:flex; flex-wrap:wrap; gap:8px; margin:24px 0 36px; }
.rm-policy-nav a { padding:9px 14px; border:1px solid var(--rm-line); border-radius:999px; background:var(--rm-paper); color:var(--rm-ink); font-weight:750; text-decoration:none; }
.rm-policies section { padding:26px 0; border-top:1px solid var(--rm-line); scroll-margin-top:110px; }
.rm-policies h2 { margin:0 0 18px; font-size:25px; }
.rm-policies h3 { margin:24px 0 8px; font-size:18px; }
.rm-policies p,.rm-policies li,.rm-policies dd { line-height:1.85; overflow-wrap:anywhere; }
.rm-policies a { color:var(--rm-purple); text-underline-offset:3px; }
.rm-policies a:focus-visible { outline:3px solid var(--rm-purple); outline-offset:3px; }
.rm-policies ul { padding-left:22px; }
.rm-policies li + li { margin-top:7px; }
.rm-policy-contact { display:grid; grid-template-columns:max-content minmax(0, 1fr); gap:8px 18px; padding:20px; border:1px solid var(--rm-line); border-radius:14px; background:var(--rm-paper); }
.rm-policy-contact dt { font-weight:800; }
.rm-policy-contact dd { margin:0; }
.rm-policy-note { padding:16px 18px; border-left:3px solid var(--rm-purple); background:var(--rm-purple-soft); border-radius:0 10px 10px 0; }
@media (max-width:560px) { .rm-policies { padding-block:30px 48px; } .rm-policy-contact { grid-template-columns:1fr; gap:4px; padding:16px; } .rm-policy-contact dd + dt { margin-top:10px; } }
