/* CSGO Matchmaking — legal pages (terms, privacy) */
/* ---------- terms page ---------- */
.legal-hero{border-bottom:1px solid var(--line);background:linear-gradient(180deg,#06101F 0%,#000 100%)}
.legal-hero .wrap{padding-top:56px;padding-bottom:40px}
.crumbs{font-size:13px;color:var(--muted)}
.crumbs a:hover{color:var(--text)}
.legal-hero h1{font:900 clamp(52px,7vw,92px)/.9 var(--display);text-transform:uppercase;margin-top:14px}
.updated{margin-top:14px;color:var(--muted);font-size:14px}
.updated time{color:var(--ice);font-weight:600}
.legal-hero .lede{margin-top:20px;max-width:62ch;color:#B7C3DA}

.doc{display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;padding-top:40px;padding-bottom:72px}
.toc{position:sticky;top:88px;align-self:start;max-height:calc(100vh - 110px);overflow:auto;scrollbar-width:thin}
.toc summary{display:none}
.toc h2{font:700 15px/1 var(--display);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:12px}
.toc ol{list-style:none;border-left:1px solid var(--line)}
.toc a{display:flex;gap:10px;padding:6px 0 6px 16px;margin-left:-1px;border-left:2px solid transparent;font-size:14px;color:var(--muted);line-height:1.35}
.toc a:hover{color:var(--text)}
.toc a.on{color:var(--text);border-left-color:var(--blue)}
.toc .n{color:var(--dim);min-width:18px;font-variant-numeric:tabular-nums}
.toc a.on .n{color:var(--blue)}

.article{max-width:720px}
.notices{display:grid;gap:12px;margin-bottom:48px}
.notice{display:grid;grid-template-columns:36px 1fr;gap:14px;padding:18px 20px;border:1px solid var(--line-hi);border-radius:var(--r-md);background:var(--hull)}
.notice .ic{width:36px;height:36px;border-radius:var(--r-sm);background:rgba(47,123,255,.12);color:var(--ice);display:grid;place-items:center}
.notice .ic svg{width:18px;height:18px}
.notice strong{display:block;font-weight:600;margin-bottom:4px}
.notice p{color:#B7C3DA;font-size:14.5px;line-height:1.6}

.clause{padding-top:40px;margin-top:40px;border-top:1px solid var(--line);scroll-margin-top:80px}
.clause:first-of-type{border-top:0;margin-top:0;padding-top:0}
.clause h2{display:flex;align-items:baseline;gap:10px;font:800 34px/1 var(--display);text-transform:uppercase;letter-spacing:.005em;margin-bottom:18px}
.clause h2 .n{font-size:22px;color:var(--blue);min-width:26px}
.clause h3{font:600 17px/1.3 var(--body);color:var(--text);margin:28px 0 10px}
.clause h2+h3{margin-top:0}
.clause p,.clause li{color:#C3CDE0;font-size:15.5px;line-height:1.7}
.clause p+p{margin-top:12px}
.clause strong{color:var(--text);font-weight:600}
.clause ul{list-style:none;margin:12px 0 4px;display:grid;gap:8px}
.clause li{position:relative;padding-left:22px}
.clause li::before{content:"";position:absolute;left:4px;top:.72em;width:6px;height:6px;border-radius:1px;background:var(--blue);transform:rotate(45deg)}
.clause ul+p{margin-top:14px}
.callout{border-left:3px solid var(--blue);background:rgba(47,123,255,.07);border-radius:0 var(--r-md) var(--r-md) 0;padding:16px 20px;margin:4px 0 20px}
.callout-lead{font-weight:700;color:var(--text)!important;letter-spacing:.01em;font-size:14.5px!important}
.callout-head{font:800 21px/1.1 var(--display)!important;text-transform:uppercase;color:var(--text)!important;margin-bottom:8px}
.callout ul{margin-bottom:0}
.textlink,.clause a{color:var(--ice);text-decoration:underline;text-decoration-color:rgba(169,200,255,.4);text-underline-offset:3px}
.textlink:hover,.clause a:hover{text-decoration-color:var(--ice)}
#limitation-of-liability .clause-caps,#limitation-of-liability p{font-size:14px;letter-spacing:.01em}
.agree{margin-top:48px;padding:20px 22px;border:1px solid var(--line-hi);border-radius:var(--r-md);background:var(--hull);color:var(--text);font-weight:500}
.contact-row{margin-top:14px}
.doc-ad{margin-top:48px}

@media (max-width:980px){
  .doc{grid-template-columns:1fr;gap:28px;padding-top:24px}
  .toc{position:static;max-height:none;border:1px solid var(--line);border-radius:var(--r-md);background:var(--hull);padding:0}
  .toc summary{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;cursor:pointer;font-weight:600;list-style:none}
  .toc summary::-webkit-details-marker{display:none}
  .toc summary::after{content:"+";color:var(--muted);font-size:20px;line-height:1}
  .toc[open] summary::after{content:"–"}
  .toc h2{display:none}
  .toc ol{border:0;padding:0 18px 14px}
  .toc a{padding-left:0;border-left:0}
}
@media (max-width:720px){
  .legal-hero .wrap{padding-top:36px;padding-bottom:28px}
  .clause h2{font-size:28px}
  .notice{grid-template-columns:1fr}
}
