@font-face { font-family: Source; src: url('/fonts/source-sans-3-latin-wght-normal.woff2') format('woff2'); font-display: swap; }
* { box-sizing: border-box; }
body.cl-legal-page { margin: 0; color: #242424; background: #fbfcfb; font: 16px/1.6 Source, system-ui, sans-serif; }
.cl-legal-page a { color: inherit; text-underline-offset: 3px; }
.cl-legal-page__shell { width: min(100% - 40px, 80ch); margin-inline: auto; }
.cl-legal-page__header { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 20px 0; border-bottom: 1px solid #d8d3c8; }
.cl-legal-page__header a { display: inline-flex; align-items: center; min-height: 44px; font-size: 14px; }
.cl-legal-page__main { padding: 32px 0 48px; }
.cl-legal-page h1 { font: 650 28px/1.3 Source, system-ui, sans-serif; letter-spacing: 0; margin: 0 0 12px; }
.cl-legal-page__date { color: #62605c; font-size: 14px; margin: 0 0 24px; }
.cl-legal-page h2 { font: 650 18px/1.5 Source, system-ui, sans-serif; letter-spacing: 0; margin: 28px 0 12px; }
.cl-legal-page p { margin: 0 0 16px; overflow-wrap: anywhere; }
.cl-legal-page ol { padding-left: 24px; }
.cl-legal-page li { margin: 6px 0; }
.cl-legal-page__index { margin: 24px 0 32px; }
.cl-legal-page__index h2 { margin: 0 0 10px; }
.cl-legal-page__index a { text-decoration: underline; }
.cl-legal-page section { scroll-margin-top: 24px; }
.cl-legal-page__review { font-size: 14px; font-style: italic; }
.cl-legal-page .skip { position: fixed; top: -100px; left: 12px; z-index: 30; padding: 12px; background: #fff; }
.cl-legal-page .skip:focus { top: 12px; }
.cl-legal-page :focus-visible { text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 4px; }
.cl-legal-page .cl-legal-footer { padding-inline: 0; }
@media(max-width: 360px) { .cl-legal-page__shell { width: calc(100% - 32px); } .cl-legal-page h1 { font-size: 25px; } }
@media print { .cl-legal-page__header, .cl-legal-footer, .cr-legal-strip { display: none; } .cl-legal-page__shell { width: 100%; max-width: none; } }

/* Legal prose is justified; headings and the numbered index retain their alignment. */
.cl-legal-page main p { text-align: justify; hyphens: auto; -webkit-hyphens: auto; }
