/* Long-form policy layout, using the existing site palette and type. */
.policy-updated { margin:0; color:var(--muted); font-size:13px; line-height:1.8; }
.policy-summary { max-width:760px; padding:44px 0 48px; }
.policy-summary p,.policy-copy p { font-size:16px; line-height:1.85; color:var(--muted); margin:0 0 20px; }
.policy-summary p:last-child,.policy-copy p:last-child { margin-bottom:0; }
.policy-summary { border-bottom:0; }
.policy-section { padding:52px 0; }
.policy-section:first-of-type { border-top:1px solid var(--line); }
.policy-summary + .policy-section { border-top:1px solid var(--line); }
.policy-section .section-label h2 { max-width:215px; }
.policy-copy { max-width:760px; }
.policy-copy strong { color:var(--fg); font-weight:550; }
@media(max-width:700px) {
  .policy-section { grid-template-columns:1fr; gap:24px; padding:36px 0; }
  .policy-section .section-label h2 { max-width:none; font-size:14px; }
  .policy-summary { padding:32px 0 36px; }
}
@media print {
  .site-header,.site-footer,.skip-link,.eyebrow { display:none; }
  :root { --bg:#fff; --fg:#171717; --muted:#444; --line:#ddd; }
  .page-shell { max-width:none; padding:0; }
  .page-intro { padding:0 0 24px; }
  .page-intro h1 { font-size:40px; letter-spacing:-1px; }
  .page-intro h1 br { display:none; }
  .page-intro h1 em::before { content:' '; }
  .policy-summary { max-width:none; padding:24px 0; }
  .policy-section { display:block; padding:24px 0; }
  .policy-section .section-label { margin-bottom:16px; break-after:avoid; }
  .policy-section .section-label h2 { max-width:none; }
  .policy-copy { max-width:none; }
  p { orphans:3; widows:3; }
}
