:root{color-scheme:light;--ink:#0b100d;--paper:#f2f1e9;--acid:#d9ff43;--muted:#596159;--line:rgba(11,16,13,.16);--panel:rgba(255,255,255,.34)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}
body{margin:0}
a{color:inherit}
.legal-header{position:sticky;top:0;z-index:2;border-bottom:1px solid var(--line);background:rgba(242,241,233,.94);backdrop-filter:blur(14px)}
.legal-header__inner,.legal-main{width:min(100%,1180px);margin-inline:auto;padding-inline:clamp(20px,4vw,48px)}
.legal-header__inner{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.legal-brand{min-height:44px;display:flex;align-items:center;gap:10px;text-decoration:none;font-size:13px;font-weight:800;letter-spacing:.12em}
.legal-brand img{width:38px;height:38px}
.legal-back{min-height:44px;padding-inline:14px;display:inline-flex;align-items:center;border:1px solid var(--line);border-radius:999px;font-size:13px;font-weight:700;text-underline-offset:4px;text-decoration-thickness:1px}
.legal-back:hover{background:var(--acid)}
.legal-main{padding-block:clamp(48px,6vw,80px)}
h1{max-width:920px;margin:0;font-size:clamp(36px,5vw,58px);line-height:1.02;letter-spacing:-.045em;text-wrap:balance;overflow-wrap:anywhere}
.legal-layout{margin-top:clamp(42px,5vw,58px);display:grid;grid-template-columns:minmax(180px,220px) minmax(0,820px);justify-content:space-between;align-items:start;gap:clamp(32px,5vw,72px)}
.legal-sidebar{position:sticky;top:96px;max-height:calc(100vh - 116px);overflow:auto;scrollbar-width:thin}
.legal-toc{padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--panel)}
.legal-toc__title{margin:0 0 16px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.legal-toc__list{margin:0;padding:0;display:grid;gap:8px;list-style:none}
.legal-toc__list a{display:block;padding:5px 0 5px 10px;border-left:2px solid transparent;color:var(--muted);font-size:13px;line-height:1.35;text-decoration:none}
.legal-toc__list a:hover,.legal-toc__list a:focus-visible{border-left-color:var(--acid);color:var(--ink)}
.legal-toc-mobile{display:none}
.legal-content{min-width:0}
.legal-sections{display:grid;gap:34px}
.legal-section,.legal-document{padding-top:28px;border-top:1px solid var(--line);scroll-margin-top:96px}
.legal-section--empty{display:none}
.legal-section h2,.legal-document h2{max-width:820px;margin:0;font-size:clamp(24px,3vw,31px);line-height:1.12;letter-spacing:-.03em;text-wrap:balance}
.legal-document{padding-top:44px;border-top:2px solid var(--ink)}
.legal-document h2{font-size:clamp(30px,4vw,42px);line-height:1.06}
.legal-paragraph{max-width:72ch;margin:14px 0 0;color:#424a43;font-size:17px;line-height:1.72;overflow-wrap:anywhere;text-wrap:pretty}
.legal-paragraph--empty{display:none}
.legal-inline-link{text-decoration-thickness:1px;text-underline-offset:3px}
.legal-inline-link:hover{background:var(--acid)}
.legal-footer{padding:30px clamp(20px,4vw,48px);color:#aeb6af;background:var(--ink);font-size:12px;line-height:1.6;text-align:center}
.legal-footer a{text-underline-offset:3px}
:focus-visible{outline:3px solid #6b7f13;outline-offset:3px}
@media(max-width:880px){
  .legal-main{width:min(100%,760px)}
  .legal-layout{margin-top:26px;display:block}
  .legal-sidebar{display:none}
  .legal-toc-mobile{margin-top:32px;display:block;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
  .legal-toc-mobile summary{min-height:50px;padding:0 18px;display:flex;align-items:center;gap:12px;cursor:pointer;font-size:14px;font-weight:800;list-style:none}
  .legal-toc-mobile summary::-webkit-details-marker{display:none}
  .legal-toc-mobile summary::after{content:'+';margin-left:auto;font-size:22px;font-weight:500;line-height:1}
  .legal-toc-mobile[open] summary::after{content:'−'}
  .legal-toc-mobile[open] summary{border-bottom:1px solid var(--line)}
  .legal-toc-mobile .legal-toc__list{padding:16px 18px 20px;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}
  .legal-sections{gap:28px}
}
@media(max-width:520px){
  .legal-header__inner{min-height:64px}
  .legal-brand span{display:none}
  .legal-back{min-height:40px;padding-inline:11px;font-size:12px}
  .legal-main{padding-top:36px;padding-bottom:58px}
  h1{font-size:clamp(30px,9vw,38px);line-height:1.03}
  .legal-toc-mobile{margin-top:26px}
  .legal-toc-mobile .legal-toc__list{grid-template-columns:1fr}
  .legal-section,.legal-document{padding-top:24px}
  .legal-document{padding-top:34px}
  .legal-section h2,.legal-document h2{font-size:24px}
  .legal-paragraph{font-size:16px;line-height:1.68}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
