.policy { padding: var(--space-4) 0 var(--content-space); }
.policy-content { max-width: var(--reading-width); margin: 0 auto; }
.policy-content h1 { max-width: none; font-size: clamp(2.75rem, 7vw, 5rem); }
.policy-intro { margin: var(--space-5) 0 0; color: var(--quiet-ink); font-size: var(--body-size); }
.policy-meta { display: grid; gap: var(--space-3); margin: var(--space-6) 0; padding: var(--space-4) 0; border-block: 1px solid var(--line); color: var(--quiet-ink); font-size: var(--meta-size); }
.policy-copy { font-size: 1.0625rem; }
.policy-copy h2 { margin: var(--space-6) 0 var(--space-3); font-size: clamp(1.5rem, 3vw, 2rem); letter-spacing: -.035em; }
.policy-copy h3 { margin: var(--space-5) 0 var(--space-3); font-size: 1.125rem; }
.policy-copy p, .policy-copy ul { margin: 0 0 var(--space-4); }
.policy-copy ul { padding-left: var(--space-4); }
.policy-copy li + li { margin-top: var(--space-3); }
.policy-copy .plan-table-wrap { overflow-x: auto; margin: 0 0 var(--space-4); }
.policy-copy .plan-table { width: 100%; min-width: 38rem; border-collapse: collapse; font-size: var(--meta-size); }
.policy-copy .plan-table th, .policy-copy .plan-table td { padding: var(--space-3); border-bottom: 1px solid var(--line); text-align: left; vertical-align: top; }
.policy-copy .plan-table thead th { color: var(--quiet-ink); font-weight: 500; }
.policy-copy .plan-table tbody th { font-weight: 500; }
