/* Scoped legal-page additions. The existing shared stylesheet is unchanged. */
#legal .legal-wrapper { padding: 3rem 0; }
#legal .legal-shell { width: min(100% - 2rem, 62rem); margin-inline: auto; }
#legal .legal-page-heading { text-align: center; }
#legal .legal-page-heading h1 { overflow-wrap: anywhere; }
#legal .legal-eyebrow { color: #595959; margin-bottom: .5rem; }
#legal .legal-revision { color: #595959; }
#legal .legal-document-nav {
  display: flex; flex-wrap: wrap; justify-content: center; gap: .65rem;
  margin: 1.5rem 0 2rem; padding: 0 !important;
}
#legal .legal-doc-link {
  display: inline-block; padding: .65rem .9rem; border: 1px solid #247291;
  border-radius: .375rem; color: #247291; background: #fff;
  font-weight: 600; line-height: 1.5; text-decoration: none;
}
#legal .legal-doc-link:hover,
#legal .legal-doc-link[aria-current="page"] { background: #247291; color: #fff; }
#legal .legal-content { height: auto; overflow-wrap: anywhere; }
#legal .legal-content h2 { margin: 2rem 0 .85rem; line-height: 1.35 !important; }
#legal .legal-content h3 { margin: 1.5rem 0 .75rem; line-height: 1.4 !important; }
#legal .legal-content > :first-child { margin-top: 0; }
#legal .legal-content ul { list-style: disc; padding-left: 1.35rem !important; }
#legal .legal-content li { padding-left: .2rem; }
#legal .legal-content a { text-underline-offset: .2em; }
#legal .legal-content [id], #legal #main-content { scroll-margin-top: 7rem; }
#legal .legal-callout {
  background: #f5f9ee; border-left: 4px solid #247291;
  border-radius: .3rem; padding: 1.25rem; margin: 1.5rem 0;
}
#legal .legal-callout h2 { margin-top: 0; }
#legal .legal-callout p:last-child { margin-bottom: 0; }
#legal .legal-card-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
#legal .legal-card { border: 1px solid #d7e4e9; border-radius: .5rem; padding: 1.25rem; }
#legal .legal-card h2 { margin-top: 0; font-size: 1.5rem; }
#legal .legal-card p:last-child { margin-bottom: 0; }
#legal .legal-back { text-align: center; margin: 1.5rem 0 0; }
#legal .legal-noscript { padding: 1.5rem; text-align: center; background: #fff; }
#legal .legal-skip-link {
  position: absolute; left: .5rem; top: .5rem; z-index: 1100;
  padding: .75rem; background: #fff; color: #247291;
  transform: translateY(-200%);
}
#legal .legal-skip-link:focus { transform: translateY(0); }
#legal a:focus-visible { outline: 3px solid #247291; outline-offset: 3px; }
@media (max-width: 600px) {
  #legal .legal-wrapper { padding: 2rem 0; }
  #legal .legal-card-grid { grid-template-columns: 1fr; }
  #legal .legal-document-nav { justify-content: stretch; }
  #legal .legal-doc-link { flex: 1 1 10rem; text-align: center; }
  #legal .legal-content h2 { font-size: 1.45rem; }
  #legal .legal-content h3 { font-size: 1.2rem; }
}
@media print {
  #legal navigation-bar, #legal footer-bar, #legal .legal-document-nav,
  #legal .legal-back, #legal .legal-skip-link { display: none; }
  #legal .legal-wrapper { padding: 0; background: #fff; }
  #legal .legal-shell { width: 100%; }
  #legal .legal-content { box-shadow: none; padding: 0; }
}
