/* One page scroller: overflow-x:hidden would turn body into a nested scroller. */
html.legal-document-root,
.legal-document-root body.legal-document-body {
  overflow-x: clip;
  overflow-y: visible;
}
.legal-document-root body.legal-document-body {
  /* Override the shared mobile body's fixed !important padding as well. */
  padding-top: var(--flexlast-header-height, 108px) !important;
}
.legal-document-body main {
  min-width: 0;
  overflow-wrap: anywhere;
}
.legal-document-body main h1,
body.legal-document-body.legal-page--minimal .legal-page-title {
  max-width: 100%;
  white-space: normal;
  overflow-wrap: anywhere;
  hyphens: auto;
  line-height: 1.12;
}
.legal-return-bar {
  position: sticky;
  top: var(--flexlast-header-height, 108px);
  z-index: 800;
  padding: 4px max(16px, calc((100% - 1160px) / 2));
  background: #fff;
  border-bottom: 1px solid #edf1f6;
}
.legal-return-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  max-width: 100%;
  padding: 0 8px;
  margin-left: -8px;
  border-radius: 8px;
  background: transparent;
  color: #475569;
  font: 600 14px/1.4 "Manrope", Arial, sans-serif;
  text-decoration: none;
  touch-action: manipulation;
}
.legal-return-link svg { width: 18px; height: 18px; flex-shrink: 0; color: #15803d; }
.legal-return-link:hover { background: #f4faf6; color: #166534; }
.legal-return-link:focus-visible { outline: 3px solid #15803d; outline-offset: 3px; }
.legal-document-root { scroll-padding-top: calc(var(--flexlast-header-height, 108px) + 64px); }
@media(max-width:720px) {
  body.legal-document-body.legal-page--minimal .legal-page-title { font-size: 30px; }
}
@media print { .legal-return-bar { display: none; } }
