.policy-header, .policy, .policy-footer { width: min(100% - 40px, 860px); margin-inline: auto; }
.policy-header { padding: 24px 0; border-bottom: 1px solid var(--line); }
.policy-header nav { display: flex; flex-wrap: wrap; gap: 24px; font-size: 14px; }
.policy { padding: 52px 0; overflow-wrap: anywhere; }
.policy h1 { font-size: clamp(26px, 4vw, 36px); }
.updated { color: var(--muted); margin-top: 16px; font-size: 13px; }
.notice { padding: 20px; margin-top: 28px; background: var(--panel-solid); border: 1px solid var(--line); border-radius: 12px; }
.policy section { padding: 28px 0; border-bottom: 1px solid var(--line); }
.policy h2 { font-size: 21px; margin-bottom: 16px; }
.policy p + p, .policy ul, .policy ol { margin-top: 12px; }
.policy ul, .policy ol { padding-left: 22px; list-style: revert; }
.policy li { margin: 10px 0; }
.policy a, .policy-footer a { color: var(--lavender); text-decoration: underline; text-underline-offset: 4px; }
.formula { padding: 16px; background: var(--panel-solid); }
.policy-footer { padding: 0 0 36px; color: var(--muted); font-size: 13px; overflow-wrap: anywhere; }
