.legal-site {
  --legal-ink: #12392f;
  --legal-body: #425c56;
}
.legal-site .header-inner { min-height: 92px; }
.legal-home-link { color: var(--legal-ink); font-family: Manrope, sans-serif; font-weight: 700; font-size: 13px; text-decoration: none; }
.legal-home-link span { margin-left: 12px; }
.legal-intro { background: #f2f7f3; border-bottom: 1px solid #e3ece5; padding: 70px 0 60px; }
.legal-eyebrow { color: #637b64; font: 700 11px/1.5 Manrope, sans-serif; letter-spacing: .16em; margin-bottom: 20px; }
.legal-intro h1 { font-size: clamp(2.5rem, 5vw, 4rem); line-height: 1.1; letter-spacing: -.05em; color: var(--legal-ink); margin: 0 0 18px; }
.legal-effective { color: var(--legal-body); font-size: 13px; margin-bottom: 20px; }
.legal-summary { color: var(--legal-body); max-width: 760px; font-size: 18px; line-height: 1.75; margin: 0; }
.legal-layout { display: grid; grid-template-columns: 240px minmax(0, 1fr); gap: 76px; align-items: start; padding-top: 64px; padding-bottom: 90px; }
.legal-contents { position: sticky; top: 125px; }
.legal-contents nav > p { color: var(--legal-ink); font: 800 13px/1.5 Manrope, sans-serif; }
.legal-contents ol { margin: 0 0 24px; padding-left: 18px; color: #708179; font-size: 13px; }
.legal-contents li { padding: 0 0 10px 5px; }
.legal-contents a { color: var(--legal-body); text-decoration: none; }
.legal-contents a:hover { color: var(--legal-ink); text-decoration: underline; }
.legal-contact { display: inline-block; border-top: 1px solid #dce7df; padding-top: 20px; font-size: 12px; font-weight: 700; }
.legal-article { max-width: 820px; min-width: 0; }
.legal-site .legal-article section { scroll-margin-top: 122px; margin: 0 0 36px; }
html:has(.legal-site) { scroll-padding-top: 0; }
.legal-article h2 { color: var(--legal-ink); font-size: 22px; line-height: 1.4; letter-spacing: -.025em; margin: 0 0 16px; }
.legal-article h3 { color: var(--legal-ink); font-size: 17px; margin: 0 0 12px; }
.legal-article p { color: var(--legal-body); font-size: 16px; line-height: 1.85; margin: 0 0 18px; }
.legal-article strong { font-weight: 800; }
.legal-article a { color: var(--legal-ink); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.legal-article code { padding: 2px 5px; background: #f2f7f3; border-radius: 3px; font-size: 12px; overflow-wrap: anywhere; }
.privacy-choice { border-left: 3px solid #edb958; padding: 24px; margin: 24px 0; background: #f7f9f6; }
.privacy-choice p { font-size: 14px; }
.privacy-choice button { font-size: 13px; cursor: pointer; }
.privacy-choice button[hidden] { display: none; }
.legal-related { border-top: 1px solid #dce7df; padding-top: 26px; display: flex; justify-content: space-between; gap: 20px; flex-wrap: wrap; font-size: 14px; }
.legal-site .footer { border-top: 1px solid #e3ece5; }
@media (max-width: 900px) {
  .legal-layout { grid-template-columns: 195px minmax(0, 1fr); gap: 35px; }
  .legal-site .brand-wordmark { font-size: 30px; }
}
@media (max-width: 700px) {
  .legal-site .header-inner { min-height: 78px; }
  .legal-site .brand-wordmark { font-size: 26px; }
  .legal-site .brand { gap: 9px; }
  .legal-home-link { font-size: 11px; max-width: 84px; }
  .legal-home-link span { display: none; }
  .legal-intro { padding: 42px 0 36px; }
  .legal-summary { font-size: 16px; }
  .legal-layout { display: block; padding-top: 32px; padding-bottom: 55px; }
  .legal-contents { position: static; margin-bottom: 38px; border-bottom: 1px solid #dce7df; padding-bottom: 24px; }
  .legal-article h2 { font-size: 21px; }
  .legal-article p { font-size: 15px; }
  .legal-site .legal-article section { scroll-margin-top: 100px; }
  .privacy-choice { padding: 20px; }
}
@media (max-width: 360px) {
  .legal-site .header-inner { gap: 12px; }
  .legal-site .brand-wordmark { font-size: 22px; }
}
