/* The privacy policy page: plain, readable, printable. */
body { margin: 0; background: var(--paper-2); color: var(--ink); font-family: var(--font-body); font-size: 17px; line-height: 1.6; }
.policy { max-width: 760px; margin: 0 auto; padding: 24px 16px 64px; }
.policy-card { background: var(--paper); border-radius: var(--r-lg); padding: 28px 22px; box-shadow: var(--shadow-soft); }
.policy h1 { margin: 0 0 4px; font-family: var(--font-display); font-size: 2rem; line-height: 1.15; color: var(--berry-dark); }
.policy h2 { margin: 32px 0 8px; font-family: var(--font-display); font-size: 1.3rem; line-height: 1.25; }
.policy h3 { margin: 20px 0 6px; font-family: var(--font-display); font-size: 1.05rem; }
.policy p, .policy li { margin: 0 0 10px; }
.policy ul { padding-left: 22px; }
.policy a { color: var(--berry-dark); }
.policy .updated { color: var(--ink-soft); margin-bottom: 18px; }
.policy .summary { padding: 14px 18px; border-radius: var(--r-md); background: var(--gold-soft); border: 2px solid #f4dc9c; }
.policy .summary li { margin-bottom: 6px; }
.policy .back { display: inline-block; margin-bottom: 14px; font-weight: 800; }
.policy table { width: 100%; border-collapse: collapse; margin: 8px 0 16px; font-size: .92rem; }
.policy th, .policy td { text-align: left; vertical-align: top; padding: 8px 10px; border-bottom: 1px solid var(--paper-3); }
.policy th { font-family: var(--font-display); font-weight: 600; background: var(--paper-2); }
.policy .table-wrap { overflow-x: auto; }
.policy mark { background: #ffe58a; padding: 0 3px; border-radius: 3px; }
.policy nav ol { columns: 2; column-gap: 24px; padding-left: 20px; font-size: .95rem; }
@media (max-width: 560px) { .policy nav ol { columns: 1; } .policy-card { padding: 22px 16px; } }
@media print { body { background: #fff; } .policy-card { box-shadow: none; padding: 0; } .policy .back { display: none; } }
