/* Extend the existing policy-page palette without changing policy layouts. */
.policy-public-footer { flex-wrap: wrap; gap: 12px 24px; align-items: baseline; }
.policy-public-footer > a:last-child { flex-basis: 100%; }
.public-info { --muted: #5f5a69; }
.public-info .brand img { border-radius: 9px; }
.public-info .site-header { position: static; backdrop-filter: none; }
.public-info .policy { border-radius: 16px; box-shadow: none; }
.public-info .hero { background: var(--surface); }
.public-info h1 { font-size: clamp(30px, 5vw, 46px); letter-spacing: -0.025em; line-height: 1.35; }
.public-info p { max-width: 70ch; overflow-wrap: anywhere; }
.public-info .support-action {
  display: inline-block;
  margin-top: 24px;
  padding: 12px 18px;
  border-radius: 12px;
  background: var(--accent-dark);
  color: white;
  font-weight: 650;
  text-decoration: none;
}
.public-info .support-action:hover { filter: brightness(0.92); }
.public-info details { padding-block: 18px; border-bottom: 1px solid var(--border); }
.public-info details:last-child { border-bottom: 0; }
.public-info summary { cursor: pointer; font-weight: 650; line-height: 1.6; }
.public-info details p { margin-bottom: 0; }
.public-info a:focus-visible, .public-info button:focus-visible, .public-info summary:focus-visible {
  outline: 3px solid var(--accent-dark);
  outline-offset: 4px;
}
.public-info ::selection { background: var(--accent-soft); color: var(--text); }
@media (prefers-color-scheme: dark) {
  .public-info { --muted: #bdb6c9; }
  .public-info .support-action { color: #17121f; }
}
