/* FRONT-10B: compact reading layout, scoped to the two legal documents. */
.sp-legal { max-width: 52rem; margin-inline: auto; padding: 2rem 1rem; font-family: Inter, ui-sans-serif, system-ui, sans-serif; color: #cbd5e1; font-size: 1rem; line-height: 1.7; overflow-wrap: anywhere; }
.sp-legal__header { margin-bottom: 1.25rem; }
.sp-legal h1 { margin: 0 0 .75rem; color: #f8fafc; font-size: clamp(2rem, 5vw, 2.5rem); font-weight: 750; line-height: 1.2; letter-spacing: -.025em; }
.sp-legal__date, .sp-legal__notice { color: #a4b1c4; font-size: .8125rem; line-height: 1.6; }
.sp-legal__notice { margin-top: .375rem; }
.sp-legal__index { padding-block: 1rem; border-block: 1px solid rgb(255 255 255 / .12); }
.sp-legal__index p { margin: 0 0 .375rem; color: #f1f5f9; font-size: .875rem; font-weight: 600; }
.sp-legal__index ol, .sp-legal__related ul { margin: 0; padding: 0; list-style: none; }
.sp-legal__index ol { display: grid; grid-template-columns: minmax(0, 1fr); }
.sp-legal__index a, .sp-legal__related a { display: inline-flex; align-items: center; min-height: 44px; padding-block: .375rem; font-size: .9375rem; line-height: 1.45; }
.sp-legal a { color: #93c5fd; text-decoration: underline; text-decoration-color: rgb(147 197 253 / .45); text-underline-offset: .2em; }
.sp-legal a:hover { color: #dbeafe; }
.sp-legal :focus-visible { outline: 2px solid #93c5fd; outline-offset: 4px; border-radius: .2rem; }
.sp-legal section { padding-top: 1.75rem; }
.sp-legal h2 { margin: 0 0 .75rem; scroll-margin-top: 7rem; color: #f1f5f9; font-size: clamp(1.25rem, 3vw, 1.375rem); font-weight: 650; line-height: 1.4; letter-spacing: -.015em; }
.sp-legal__anchor, .sp-legal__related { scroll-margin-top: 7rem; }
.sp-legal__anchor { display: block; }
.sp-legal section p { margin: 0 0 .75rem; }
.sp-legal__email { display: inline-block; padding-block: .5rem; min-height: 44px; }
.sp-legal__related { margin-top: 1.5rem; padding-top: 1rem; border-top: 1px solid rgb(255 255 255 / .12); }
.sp-legal__related ul { display: flex; flex-wrap: wrap; gap: .25rem 1.5rem; }
@media (min-width: 700px) {
  .sp-legal__index ol { grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 1.5rem; }
}
