/* Reading pages share the landing's typography, palette and theme preference. */
.legal-page { line-height:1.8; }
.legal-page .site-atmosphere i { animation:none; }
.legal-page .site-atmosphere { opacity:.5; }
.legal-header { position:relative;inset:auto;transform:none;margin:22px auto 0; }
.legal-header .header-actions { gap:22px; }
.legal-header .header-open { display:inline-flex; }
.legal-header .theme-toggle[hidden] { display:none; }
.legal-header .header-open .icon { transform:rotate(180deg); }
.legal-header .header-open:hover .icon { transform:rotate(180deg) translateX(3px); }
.legal-main { padding-top:66px; }
.legal-hero { max-width:960px;margin-bottom:56px; }
.legal-hero h1 { max-width:920px;font-size:clamp(36px,5.1vw,66px);line-height:1.12;letter-spacing:-.055em;font-weight:550;margin:0 0 23px;overflow-wrap:break-word; }
.legal-hero .upd { display:flex;align-items:center;gap:10px;font-size:13px;color:var(--soft);margin:0 0 27px; }
.legal-hero .upd::before { content:'';width:6px;height:6px;border-radius:50%;background:var(--accent-strong);flex:none; }
.legal-hero>p:last-child { max-width:790px;font-size:17px;line-height:1.9;color:var(--soft);margin:0; }
.legal-layout { display:grid;grid-template-columns:230px minmax(0,1fr);gap:64px;align-items:start; }
.legal-toc { position:sticky;top:30px;padding-top:5px;max-height:calc(100dvh - 60px);overflow:auto;scrollbar-width:thin; }
.legal-toc h2 { font-size:12px;line-height:1.6;font-weight:650;letter-spacing:.09em;text-transform:uppercase;color:var(--soft);margin:0 0 14px;padding-left:12px; }
.legal-toc ol { list-style:none;padding:0;margin:0; }
.legal-toc li { margin:2px 0; }
.legal-toc a { display:block;font-size:13px;line-height:1.55;padding:10px 12px;border-radius:10px;color:var(--soft);transition:background .2s,color .2s; }
.legal-toc a:hover,.legal-toc a[aria-current='location'] { background:var(--surface);color:var(--accent); }
.legal-toc a:focus-visible { outline-offset:-2px; }
.legal-toc .legal-toc-top { margin-top:20px;font-size:12px; }
.legal-toc-toggle { display:flex;align-items:center;justify-content:space-between;width:100%;background:transparent;padding:0;text-align:left;min-height:44px;font-size:13px;font-weight:600; }
.legal-toc-toggle[hidden],.legal-toc nav[hidden] { display:none; }
.legal-toc-toggle span { font-size:20px;color:var(--accent);transition:transform .2s; }
.legal-toc-toggle[aria-expanded='true'] span { transform:rotate(180deg); }
.legal-article { min-width:0;max-width:790px;font-size:15px;line-height:1.95; }
.legal-article .box { background:linear-gradient(120deg,color-mix(in srgb,var(--glass) 85%,transparent),color-mix(in srgb,var(--surface) 78%,transparent));border:1px solid color-mix(in srgb,var(--line) 65%,transparent);border-radius:24px;padding:27px 30px;margin:0 0 46px;box-shadow:0 14px 48px -35px #60452035; }
.legal-article .box>strong:first-child { display:block;font-weight:700;color:var(--accent);font-size:13px;letter-spacing:.01em;margin-bottom:7px; }
.legal-section { scroll-margin-top:32px;padding-bottom:8px; }
.legal-section+.legal-section { margin-top:32px; }
.legal-article h2 { font-size:clamp(23px,2.4vw,29px);font-weight:600;line-height:1.3;letter-spacing:-.035em;margin:0 0 20px; }
.legal-article p { margin:0 0 19px; }
.legal-article ul { margin:0 0 23px;padding-left:22px; }
.legal-article li { margin:0 0 15px;padding-left:6px; }
.legal-article li::marker { color:var(--accent);font-size:.8em; }
.legal-article strong { font-weight:700; }
.legal-article a { color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;overflow-wrap:anywhere; }
.legal-article a:hover { text-decoration-thickness:2px; }
.legal-article .upd { color:var(--soft);font-size:13px; }
.legal-section[lang='en'] { margin-top:44px;padding-top:36px;border-top:1px solid var(--line); }
.legal-footer { display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:70px;padding:28px 0 36px;border-top:1px solid var(--line);font-size:13px;line-height:1.7;color:var(--soft); }
.legal-footer>a { display:inline-flex;align-items:center;min-height:44px; }
.legal-footer>a:hover { color:var(--accent); }
.legal-footer .legal-footer-top { margin-left:auto;gap:8px; }
.legal-footer .icon { width:17px;height:17px;transform:rotate(-90deg); }
.support-hero>p:first-of-type { max-width:660px;font-size:17px;line-height:1.9;color:var(--soft);margin-bottom:25px; }
.support-hero .contact { margin:0 0 16px;min-height:52px;padding-inline:25px;font-size:15px; }
.support-hero>p.support-reply-time:last-child { font-size:13px;line-height:1.7; }
.support-layout { display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:64px;align-items:start; }
.support-checklist { position:sticky;top:30px;padding:30px;border:1px solid color-mix(in srgb,var(--line) 65%,transparent);border-radius:24px;background:var(--glass); }
.support-checklist h2 { font-size:24px; }
.support-checklist ul { margin-bottom:0; }
.support-checklist li:last-child { margin-bottom:0; }
.support-faq>h2 { margin-bottom:26px; }
.support-faq>p { margin:0;padding:23px 0;border-bottom:1px solid var(--line); }
.support-faq>p:first-of-type { padding-top:0; }
.support-faq>p>strong:first-child { display:inline-block;margin-bottom:7px;font-size:16px;font-weight:650;line-height:1.6; }
.support-faq .box { margin:30px 0 0;padding:23px 25px;font-size:14px; }
@media(max-width:1050px) {
  .legal-layout { grid-template-columns:200px minmax(0,1fr);gap:36px; }
  .legal-main { padding-top:50px; }
  .support-layout { gap:34px; }
  .support-checklist { padding:24px; }
}
@media(max-width:767px) {
  .legal-header { margin-top:15px; }
  .legal-header .header-actions { gap:8px; }
  .legal-header .header-open { font-size:12px;gap:5px; }
  .legal-main { padding-top:40px; }
  .legal-hero { margin-bottom:31px; }
  .legal-hero h1 { font-size:clamp(32px,6.8vw,46px);letter-spacing:-.045em;margin-bottom:19px; }
  .legal-hero .upd { font-size:12px;margin-bottom:22px; }
  .legal-hero>p:last-child { font-size:15px;line-height:1.85; }
  .legal-layout { grid-template-columns:minmax(0,1fr);gap:28px; }
  .legal-toc { position:static;max-height:none;padding:0 0 24px;border-bottom:1px solid var(--line);overflow:visible; }
  .legal-toc h2 { padding-left:0;margin-bottom:9px; }
  .legal-toc[data-enhanced] { padding-bottom:12px; }
  .legal-toc[data-enhanced] h2 { display:none; }
  .legal-toc ol { display:grid;grid-template-columns:1fr 1fr;column-gap:12px; }
  .legal-toc a { padding:7px 0;font-size:12px;min-height:44px;display:flex;align-items:center;border-radius:0; }
  .legal-toc a:hover,.legal-toc a[aria-current='location'] { background:transparent; }
  .legal-toc .legal-toc-top { display:none; }
  .legal-article { font-size:15px;line-height:1.9; }
  .legal-article .box { padding:23px 22px;border-radius:20px;margin-bottom:34px; }
  .legal-article li { padding-left:3px; }
  .legal-section+.legal-section { margin-top:26px; }
  .legal-footer { gap:8px 22px;margin-top:42px;padding-block:20px 26px; }
  .legal-footer .legal-footer-top { margin-left:0; }
  .support-hero>p:first-of-type { font-size:15px; }
  .support-layout { grid-template-columns:minmax(0,1fr);gap:34px; }
  .support-checklist { position:static; }
  .support-faq>p>strong:first-child { font-size:15px; }
}
@media(max-width:380px) {
  .legal-header .brand { font-size:20px;gap:8px; }
  .legal-header .brand img { width:25px;height:34px; }
  .legal-header .header-open { font-size:0;gap:0; }
  .legal-header .header-open .icon { width:20px;height:20px; }
  .legal-hero h1 { font-size:clamp(25px,7.4vw,28px); }
  .legal-toc ol { grid-template-columns:1fr; }
}
@media print {
  .legal-page { background:#fff;color:#111; }
  .legal-page .header-actions,.legal-toc,.legal-footer-top,.skip { display:none; }
  .legal-header { margin-top:0; }
  .legal-main { padding-top:24px; }
  .legal-main,.legal-header,.legal-footer { width:100%; }
  .legal-hero { margin-bottom:24px; }
  .legal-hero h1 { font-size:30px; }
  .legal-layout { display:block; }
  .support-layout { display:block; }
  .support-checklist { position:static;margin-bottom:28px;background:none; }
  .support-hero .contact { background:none;border-color:#bbb;box-shadow:none;color:#222; }
  .legal-article { max-width:none;font-size:11pt; }
  .legal-article .box { background:none;border:1px solid #bbb;box-shadow:none; }
  .legal-article h2 { break-after:avoid; }
  .legal-page p,.legal-page li { orphans:3;widows:3; }
  .legal-page a,.legal-page .upd,.legal-hero>p:last-child,.legal-article .box>strong:first-child { color:#222; }
}
