    :root {
      --legal-blue: #009cfb;
      --legal-blue-dark: #009cfb;
      --legal-blue-soft: #eefaff;
      --legal-footer: #EDF8FF;
      --legal-yellow: #ffc62f;
      --legal-ink: #17262d;
      --legal-muted: #63747d;
      --legal-line: #e2e9ec;
      --legal-page: 1240px;
    }
    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; scroll-padding-top: 112px; }
    body { margin: 0; color: var(--legal-ink); background: #fff; font-family: "Google Sans Flex", sans-serif; font-size: 16px; line-height: 1.65; -webkit-font-smoothing: antialiased; text-rendering: geometricPrecision; font-optical-sizing: auto; }
    body.menu-open { overflow: hidden; }
    button, input { font: inherit; }
    a { color: inherit; }
    img { display: block; max-width: 100%; }
    .legal-wrap { width: min(var(--legal-page), calc(100% - 64px)); margin-inline: auto; }
    .legal-hero { position: relative; overflow: hidden; padding: 38px 0 76px; background: var(--legal-blue-soft); }
    .legal-hero::before { content: ""; position: absolute; top: -190px; right: -145px; width: 470px; height: 470px; border: 78px solid rgba(255,255,255,.58); border-radius: 50%; }
    .legal-breadcrumbs { position: relative; z-index: 1; display: flex; align-items: center; gap: 9px; margin: 0 0 43px; color: #687d87; font-size: 16px; }
    .legal-breadcrumbs a { text-decoration: none; }
    .legal-breadcrumbs a:hover { color: var(--legal-blue-dark); }
    .legal-breadcrumbs svg { width: 14px; height: 14px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
    .legal-hero-grid { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr; gap: 0; align-items: end; }
    .legal-hero h1 { max-width: 790px; margin: 0; font-size: clamp(48px, 6vw, 78px); font-weight: 690; letter-spacing: -4px; line-height: .97; }
    .legal-shell { padding: 74px 0 108px; }
    .legal-layout { display: grid; grid-template-columns: 292px minmax(0, 810px); gap: 82px; align-items: start; justify-content: space-between; }
    .legal-sidebar { position: sticky; top: 112px; max-height: calc(100vh - 128px); padding: 0 8px 16px 0; overflow-y: auto; overscroll-behavior: contain; scrollbar-width: thin; scrollbar-color: #91D5FF transparent; }
    .legal-sidebar::-webkit-scrollbar { width: 6px; }
    .legal-sidebar::-webkit-scrollbar-thumb { border-radius: 999px; background: #91D5FF; }
    .legal-sidebar::-webkit-scrollbar-track { background: transparent; }
    .legal-switcher { display: grid; padding: 5px; grid-template-columns: 1fr 1fr; gap: 4px; border: 1px solid var(--legal-line); border-radius: 14px; background: #f6f9fa; }
    .legal-switcher a { display: flex; min-height: 42px; padding: 8px 9px; align-items: center; justify-content: center; border-radius: 10px; color: #667983; font-size: 16px; font-weight: 690; line-height: 1.2; text-align: center; text-decoration: none; }
    .legal-switcher a.active { color: #fff; background: var(--legal-blue); box-shadow: 0 7px 18px rgba(0,156,251,.18); }
    .legal-toc { margin-top: 19px; padding: 22px 19px 20px; border: 1px solid var(--legal-line); border-radius: 20px; background: #fff; }
    .legal-toc summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; list-style: none; color: #273d47; font-size: 16px; font-weight: 760; cursor: pointer; }
    .legal-toc summary::-webkit-details-marker { display: none; }
    .legal-toc summary::after { content: "+"; display: grid; width: 24px; height: 24px; place-items: center; border-radius: 50%; color: var(--legal-blue-dark); background: var(--legal-blue-soft); font-size: 16px; }
    .legal-toc[open] summary::after { content: "−"; }
    .legal-toc-list { display: grid; max-height: none; margin-top: 17px; padding-right: 0; gap: 1px; overflow: visible; }
    .legal-toc-list a { display: grid; min-height: 34px; padding: 7px 9px; grid-template-columns: 24px 1fr; gap: 5px; align-items: start; border-radius: 8px; color: #71818a; font-size: 16px; line-height: 1.36; text-decoration: none; }
    .legal-toc-list a span:first-child { color: #9aabb2; font-variant-numeric: tabular-nums; }
    .legal-toc-list a:hover,
    .legal-toc-list a.active { color: #009cfb; background: #eefaff; }
    .legal-toc-list a.active span:first-child { color: var(--legal-blue); }
    .legal-help { margin-top: 18px; padding: 18px 19px; border-radius: 18px; background: #fff8dc; }
    .legal-help strong { display: block; margin-bottom: 4px; font-size: 16px; }
    .legal-help p { margin: 0 0 12px; color: #766a46; font-size: 16px; line-height: 1.48; }
    .legal-help a { color: #5d522f; font-size: 16px; font-weight: 720; text-decoration: none; }
    .legal-content { min-width: 0; }
    .legal-intro-card { display: flex; margin: 0 0 32px; padding: 23px 25px; align-items: flex-start; gap: 15px; border-radius: 18px; background: #f7fafb; }
    .legal-intro-icon { display: grid; width: 38px; height: 38px; flex: 0 0 auto; place-items: center; border-radius: 12px; color: #17262d; background: var(--legal-yellow); font-size: 17px; font-weight: 780; }
    .legal-intro-card p { margin: 0; color: #596c75; font-size: 16px; line-height: 1.58; }
    .legal-intro-card strong { color: #243a44; }
    .legal-section { padding: 35px 0 39px; border-bottom: 1px solid var(--legal-line); scroll-margin-top: 112px; }
    .legal-section:first-of-type { padding-top: 0; }
    .legal-section:last-child { border-bottom: 0; }
    .legal-section.is-subsection { margin-left: 46px; padding: 28px 0 31px; }
    .legal-heading { display: grid; grid-template-columns: 47px minmax(0, 1fr); gap: 16px; align-items: start; }
    .legal-section.is-subsection .legal-heading { grid-template-columns: 54px minmax(0, 1fr); }
    .legal-number { display: grid; width: 42px; height: 42px; place-items: center; border-radius: 12px; color: #009cfb; background: #eaf8fe; font-size: 16px; font-weight: 780; }
    .legal-section.is-subsection .legal-number { width: auto; height: 30px; padding: 0 9px; border-radius: 9px; }
    .legal-section h2,
    .legal-section h3 { margin: 3px 0 0; color: #182b34; font-weight: 690; letter-spacing: -.7px; line-height: 1.2; }
    .legal-section h2 { font-size: 27px; }
    .legal-section h3 { font-size: 21px; }
    .legal-section-body { margin: 20px 0 0 63px; }
    .legal-section.is-subsection .legal-section-body { margin-left: 70px; }
    .legal-section-body p { margin: 0 0 15px; color: #53656e; font-size: 16px; line-height: 1.76; }
    .legal-section-body p:last-child { margin-bottom: 0; }
    .legal-section-body a { color: #009cfb; font-weight: 630; text-decoration: underline; text-decoration-color: rgba(0,156,251,.27); text-underline-offset: 3px; }
    .legal-list { display: grid; margin: 17px 0 21px; padding: 0; gap: 9px; list-style: none; }
    .legal-list li { position: relative; padding: 0 0 0 24px; color: #53656e; font-size: 16px; line-height: 1.7; }
    .legal-list li::before { content: ""; position: absolute; top: .7em; left: 2px; width: 7px; height: 7px; border-radius: 50%; background: var(--legal-blue); box-shadow: 0 0 0 4px #eaf8fe; }
    .legal-contact-card { display: grid; margin-top: 8px; padding: 23px 25px; gap: 10px; border: 1px solid #91D5FF; border-radius: 18px; background: #EDF8FF; }
    .legal-contact-line { color: #48616d; font-size: 16px; }
    .legal-contact-line a { text-decoration: none; }
    .legal-next { display: flex; margin-top: 48px; padding: 26px 28px; align-items: center; justify-content: space-between; gap: 24px; border-radius: 22px; color: #fff; background: #009cfb; }
    .legal-next p { margin: 0 0 4px; color: rgba(255,255,255,.76); font-size: 16px; font-weight: 670; letter-spacing: .07em; text-transform: uppercase; }
    .legal-next strong { display: block; font-size: 21px; font-weight: 680; letter-spacing: -.4px; }
    .legal-next a { display: inline-flex; min-height: 44px; padding: 0 17px; align-items: center; gap: 8px; border-radius: 999px; color: #17313c; background: #fff; font-size: 16px; font-weight: 750; text-decoration: none; white-space: nowrap; }
    .legal-next svg { width: 17px; height: 17px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
    @media (max-width: 980px) {
      .legal-hero-grid { grid-template-columns: 1fr; gap: 34px; }
      .legal-layout { grid-template-columns: 240px minmax(0, 1fr); gap: 44px; }
      .legal-section.is-subsection { margin-left: 18px; }
    }
    @media (max-width: 760px) {
      html { scroll-padding-top: 92px; }
      .legal-wrap { width: min(calc(100% - 36px), var(--legal-page)); }
      .legal-hero { padding: 28px 0 52px; }
      .legal-breadcrumbs { margin-bottom: 32px; }
      .legal-hero h1 { font-size: clamp(41px, 12vw, 58px); letter-spacing: -2.7px; }
      .legal-shell { padding: 35px 0 76px; }
      .legal-layout { grid-template-columns: 1fr; gap: 34px; }
      .legal-sidebar { position: static; max-height: none; padding-right: 0; overflow: visible; }
      .legal-toc-list { max-height: 300px; overflow-y: auto; padding-right: 8px; }
      .legal-help { display: none; }
      .legal-section { scroll-margin-top: 92px; }
      .legal-section.is-subsection { margin-left: 0; }
    }
    @media (max-width: 620px) {
      .legal-wrap { width: min(calc(100% - 40px), var(--legal-page)); }
    }
    @media (max-width: 520px) {
      .legal-heading,
      .legal-section.is-subsection .legal-heading { grid-template-columns: 40px minmax(0, 1fr); gap: 12px; }
      .legal-number { width: 38px; height: 38px; }
      .legal-section.is-subsection .legal-number { width: 38px; height: 30px; padding: 0; font-size: 16px; }
      .legal-section h2 { font-size: 23px; }
      .legal-section h3 { font-size: 20px; }
      .legal-section-body,
      .legal-section.is-subsection .legal-section-body { margin-left: 0; }
      .legal-section-body p,
      .legal-list li { font-size: 16px; }
      .legal-next { align-items: flex-start; flex-direction: column; }
    }
  
