/* ---------- Legal page ---------- */
.page-head{position:relative;overflow:hidden;padding:92px max(5vw,calc((100vw - var(--max))/2)) 74px;border-bottom:1px solid var(--line);background:linear-gradient(118deg,#02090f 0%,#05192a 54%,#010609 100%)}
.page-head::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 84% 14%,rgba(6,157,245,.22),transparent 46%),repeating-linear-gradient(112deg,transparent 0 23px,rgba(66,199,255,.045) 23px 24px)}
.page-head>*{position:relative;z-index:1}
.page-head h1{font-size:clamp(46px,7vw,86px);max-width:760px}
.page-head .lede{max-width:640px;color:#cddce6;font-size:16px;line-height:1.8;margin:26px 0 0}
.stamp{display:flex;align-items:center;gap:14px;margin:30px 0 0;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase;color:var(--ice)}
.stamp::before{content:"";width:38px;height:1px;background:var(--ice);flex:none}
.legal{width:min(var(--max),90%);margin:auto;padding:68px 0 96px;display:grid;grid-template-columns:248px 1fr;gap:72px;align-items:start}
.toc{position:sticky;top:104px;border-left:1px solid var(--line);padding-left:22px}
.toc-title{margin:0 0 18px;font-size:10px;font-weight:700;letter-spacing:.26em;color:var(--ice)}
.toc ol{margin:0;padding:0;list-style:none;display:grid;gap:12px;counter-reset:toc}
.toc li{counter-increment:toc;display:flex;gap:10px;font-size:12.5px;line-height:1.5}
.toc li::before{content:counter(toc,decimal-leading-zero);color:#3d6580;font-weight:700;font-variant-numeric:tabular-nums}
.toc a{color:#8fa3b2;letter-spacing:.03em;transition:color .18s ease,transform .18s ease}
.toc a:hover{color:var(--white);transform:translateX(3px)}
.legal-body{display:grid;gap:52px;max-width:768px;min-width:0}
.clause{scroll-margin-top:112px}
.clause h2{display:flex;align-items:baseline;gap:15px;font-size:clamp(25px,3vw,33px);letter-spacing:.02em;line-height:1.05}
.clause h2 i{flex:none;font-style:normal;font-family:Inter,Arial,sans-serif;font-size:12px;font-weight:700;letter-spacing:.12em;color:var(--ice);font-variant-numeric:tabular-nums}
.clause p{color:var(--muted);font-size:15px;line-height:1.85;margin:16px 0 0}
.clause h2+p{margin-top:20px}
.clause ul{margin:18px 0 0;padding-left:22px;display:grid;gap:12px}
.clause li{color:var(--muted);font-size:15px;line-height:1.8}
.clause li::marker{color:var(--blue)}
.clause strong{color:#e2ecf2;font-weight:600}
.inline-link{color:var(--ice);box-shadow:inset 0 -1px 0 rgba(66,199,255,.45)}
.inline-link:hover{color:var(--white);box-shadow:inset 0 -1px 0 var(--white)}
.callout{margin:22px 0 0;padding:24px 26px;border:1px solid var(--line);border-left:3px solid var(--ice);border-radius:4px;background:linear-gradient(118deg,rgba(11,29,45,.92),rgba(3,10,16,.92))}
.callout.tight{padding:21px 24px;margin-bottom:4px}
.callout-title{margin:0 0 12px;font-size:10px;font-weight:700;letter-spacing:.24em;color:var(--ice)}
.callout p:not(.callout-title){margin:0;color:#c6d5df;font-size:14.5px;line-height:1.8}
.legal-contact{margin-top:14px;padding:52px 0 0;border-top:1px solid var(--line)}
.legal-contact h2{font-size:clamp(38px,5vw,54px);margin:0 0 20px}
.legal-contact p:not(.eyebrow){color:var(--muted);line-height:1.8;max-width:520px;margin:0 0 30px}
@media(max-width:900px){
  .legal{grid-template-columns:1fr;gap:44px;padding-top:50px}
  .toc{position:static;border-left:0;border-top:1px solid var(--line);padding:26px 0 0}
  .toc ol{grid-template-columns:1fr 1fr;gap:14px 26px}
  .legal-body{max-width:none}
}
@media(max-width:480px){
  .page-head{padding-top:64px;padding-bottom:58px}
  .toc ol{grid-template-columns:1fr}
  .clause h2{display:block}.clause h2 i{display:block;margin-bottom:9px}
}



.legal-page .page-head{background:linear-gradient(112deg,#101922,#111b25,#080b0f)}
.legal-page .page-head h1{font-size:clamp(45px,6.8vw,87px);line-height:.96;letter-spacing:-.066em}
.legal-page .page-head h1 em{font-style:normal;color:#aebac5}
.legal-page .page-head .eyebrow{color:#90bde3}
.legal-page .legal{max-width:1330px}
.legal-page .clause h2{font-size:clamp(25px,3vw,34px);letter-spacing:-.04em;line-height:1.15}
.legal-page .callout{background:linear-gradient(125deg,#17222d,#0e141b);border-left-color:#a9c3db}
.legal-page .clause p,.legal-page .clause li{color:#a4b2be}
.legal-page .inline-link,.legal-page .toc a:hover{color:#b8d4eb}
.legal-page .stamp{color:#a4c8e2}
.legal-page .stamp::before{background:#8aafcf}
.legal-page .legal-contact .display-heading{font-size:48px}
.legal-page .legal-contact h2 em{color:#90abc1;font-style:normal}
.legal-page .legal-contact .primary-btn{display:inline-flex;gap:27px;padding:18px 20px;background:#c2ced9;color:#0b1117;border:1px solid #d9e1e8;font-size:11px;font-weight:800;letter-spacing:.15em}
.legal-page .legal-contact .primary-btn:hover{background:#a2c9e9}
@media(max-width:720px){.legal-page .page-head{padding:78px 20px 55px}.legal-page .legal{width:calc(100% - 36px)}}
/* Restore contained legal-page alignment in the new design system. */
:root{--max:1330px}
.legal-page .page-head{padding:92px max(52px,calc((100vw - var(--max))/2)) 74px}
.legal-page .legal{width:min(var(--max),calc(100% - 104px))}
.legal-page .page-head::after{background:radial-gradient(circle at 85% 15%,rgba(88,145,190,.16),transparent 48%),repeating-linear-gradient(112deg,transparent 0 26px,rgba(170,193,214,.025) 26px 27px)}
@media(max-width:720px){.legal-page .page-head{padding:76px 18px 55px}.legal-page .legal{width:calc(100% - 36px)}}
