/* Legal documents: privacy policy and terms of service, in the alpine subpage frame. */
.legal-main{padding-top:24px}
.legal-intro{max-width:780px;padding-bottom:44px;border-bottom:1px solid var(--line)}
.legal-intro h1{font-size:clamp(42px,5.2vw,68px);line-height:1.03;text-wrap:balance}
.legal-intro p{font-size:17px;color:var(--muted);margin-top:22px;max-width:640px}
.legal-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px;font-size:13px;color:#47616b}
.legal-meta span{display:inline-flex;align-items:center;gap:7px;padding:7px 12px;border-radius:99px;background:#f1f6f8}
.legal-meta .icon{width:15px;height:15px}
.legal-glance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:44px}
.legal-glance article{padding:24px;border-radius:20px;background:#f4f8fa}
.legal-glance article:first-child{background:#eef9e8}
.legal-glance .icon{width:24px;height:24px;color:#137da7;margin-bottom:16px}
.legal-glance article:first-child .icon{color:#2f7a1f}
.legal-glance h2{font-size:21px;line-height:1.2}
.legal-glance p{font-size:14px;color:var(--muted);margin-top:8px}
.legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:72px;margin-top:56px;align-items:start}
.legal-toc{position:sticky;top:28px;max-height:calc(100vh - 56px);overflow:auto;font-size:13px}
.legal-toc strong{display:block;font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:#627278;margin-bottom:14px}
.legal-toc ol{list-style:none;margin:0;padding:0;counter-reset:toc}
.legal-toc li{counter-increment:toc}
.legal-toc a{display:flex;gap:10px;padding:7px 0;color:#47616b;line-height:1.35}
.legal-toc a:before{content:counter(toc,decimal-leading-zero);color:#9aa8ad;font-variant-numeric:tabular-nums}
.legal-toc a:hover{color:#0078ad}
.legal-document{max-width:740px;font-size:16px;line-height:1.7;color:#2b3f47}
.legal-document section{padding-bottom:36px;scroll-margin-top:28px}
.legal-document section+section{padding-top:36px;border-top:1px solid var(--line)}
.legal-document h2{font-size:28px;line-height:1.15;color:var(--ink);margin-bottom:16px}
.legal-document h3{font-size:18px;letter-spacing:-.02em;color:var(--ink);margin:26px 0 8px}
.legal-document p{line-height:1.7}
.legal-document p+p,.legal-document ul+p,.legal-document table+p,.legal-document p+ul{margin-top:14px}
.legal-document ul{margin:12px 0 0;padding-left:20px}
.legal-document li{margin-top:7px;padding-left:4px}
.legal-document li::marker{color:#8aa3ad}
.legal-document a{color:#0078ad;text-decoration:underline;text-underline-offset:3px}
.legal-document strong{color:var(--ink);font-weight:600}
.legal-document code{font-size:.9em;padding:1px 6px;border-radius:6px;background:#f1f6f8}
.legal-table{width:100%;border-collapse:collapse;margin-top:16px;font-size:14px;line-height:1.5}
.legal-table th,.legal-table td{text-align:left;vertical-align:top;padding:12px 14px 12px 0;border-bottom:1px solid var(--line)}
.legal-table th{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#627278;font-weight:600}
.legal-table td:first-child{font-weight:600;color:var(--ink);white-space:nowrap}
.legal-note{margin-top:18px;padding:18px 20px;border-radius:16px;background:#f4f8fa;font-size:15px}
.legal-identity{display:grid;grid-template-columns:max-content 1fr;gap:6px 22px;margin-top:14px;padding:20px 22px;border-radius:16px;background:#f4f8fa;font-size:15px}
.legal-identity dt{color:#627278}
.legal-identity dd{margin:0;color:var(--ink)}
.legal-placeholder{padding:1px 6px;border-radius:6px;background:#fff1c2;color:#6b4e00}
@media(max-width:960px){
 .legal-layout{grid-template-columns:1fr;gap:36px}
 .legal-toc{position:static;max-height:none;padding:22px;border-radius:18px;background:#f4f8fa}
 .legal-glance{grid-template-columns:1fr}
}
@media(max-width:760px){
 .legal-main{padding-top:8px}
 .legal-intro{padding-bottom:32px}
 .legal-intro p{font-size:16px}
 .legal-document h2{font-size:24px}
 .legal-table,.legal-table tbody,.legal-table tr,.legal-table td{display:block}
 .legal-table thead{display:none}
 .legal-table tr{padding:12px 0;border-bottom:1px solid var(--line)}
 .legal-table td{padding:2px 0;border:0}
 .legal-table td:first-child{white-space:normal}
 .legal-identity{grid-template-columns:1fr;gap:2px}
 .legal-identity dd{margin-bottom:10px}
}
