/* Legal pages — same system as the homepage, in its daylight palette. */
.legal-page { background: var(--day); color: var(--navy); }
.legal-page .site-header { color: var(--navy); }
.legal-page .site-header::before { background: rgba(245, 250, 255, .84); backdrop-filter: blur(18px) saturate(140%); -webkit-backdrop-filter: blur(18px) saturate(140%); border-bottom: 1px solid rgba(7, 27, 53, .08); }
.legal-page .brand__plus { color: var(--brand); }
.legal-page .site-header .btn--small { border-color: rgba(7, 27, 53, .16); --bg: #fff; }
.legal { padding: calc(var(--header-h) + 72px) 0 40px; }
.legal__wrap { width: min(780px, 100% - 48px); margin: 0 auto; }
.legal__back { display: flex; width: max-content; gap: 8px; align-items: center; font-size: 14.5px; text-decoration: none; opacity: .66; margin-bottom: 44px; }
.legal__back:hover { opacity: 1; color: var(--brand); }
.legal .eyebrow { color: var(--brand); opacity: 1; }
.legal__title { font-family: var(--serif); font-weight: 400; font-size: clamp(54px, 8.4vw, 110px); line-height: .94; letter-spacing: -.025em; margin: 0 0 18px; }
.legal__updated { font-family: var(--mono); font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; opacity: .56; margin: 0 0 48px; }
.legal__toc { list-style: none; margin: 0 0 20px; padding: 26px 0; border-top: 1px solid rgba(7, 27, 53, .12); border-bottom: 1px solid rgba(7, 27, 53, .12); columns: 2; column-gap: 40px; font-size: 15px; }
.legal__toc li { break-inside: avoid; padding: 5px 0; }
.legal__toc a { text-decoration: none; opacity: .74; }
.legal__toc a:hover { opacity: 1; color: var(--brand); }
.legal__body section { padding: 44px 0 10px; scroll-margin-top: calc(var(--header-h) + 24px); }
.legal__body section + section { border-top: 1px solid rgba(7, 27, 53, .08); }
.legal__body h2 { font-family: var(--serif); font-weight: 400; font-size: clamp(32px, 3.6vw, 46px); line-height: 1.08; letter-spacing: -.01em; margin: 0 0 20px; }
.legal__body h3 { font-family: var(--sans); font-weight: 600; font-size: 18px; letter-spacing: -.005em; margin: 30px 0 8px; }
.legal__body p, .legal__body li { font-size: 17px; line-height: 1.72; color: rgba(7, 27, 53, .8); margin: 0 0 16px; }
.legal__body ul { padding-left: 1.2em; margin: 0 0 18px; }
.legal__body li { margin: 0 0 10px; }
.legal__body li::marker { color: var(--brand); }
.legal__body strong { color: var(--navy); font-weight: 600; }
.legal__body a { color: var(--brand); text-underline-offset: 3px; text-decoration-thickness: 1px; }
.legal-page .footer { padding-top: 60px; }
.legal-page .footer__word { font-size: clamp(70px, 14vw, 200px); }
@media (max-width: 640px) { .legal__toc { columns: 1; } .legal { padding-top: calc(var(--header-h) + 40px); } }
