.policy { overflow-wrap: anywhere; }
.policy article { min-width: 0; }
.policy h1 { font-size: clamp(2rem, 5.4vw, 3.6rem); line-height: 1.15; }
.policy h2 { line-height: 1.35; }
.policy-languages { margin-block-end: 2.5rem; border: 1px solid var(--line); border-radius: 16px; padding: 1rem; }
.policy-languages summary { cursor: pointer; color: var(--ink); font-weight: 700; }
.policy-languages ul { display: grid; grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); gap: .4rem 1rem; list-style: none; padding: 0; max-height: 55vh; overflow-y: auto; }
.policy-languages a { display: block; padding: .5rem; border-radius: 8px; }
.policy-languages [aria-current="page"] { outline: 2px solid var(--cyan); }
.policy-sources { font-size: .88rem; }
[dir="rtl"] .policy h1, [dir="rtl"] .policy h2, [dir="rtl"] .policy h3 { letter-spacing: normal; }
@media (max-width: 430px) { .policy { padding-block: 40px 64px; } }
