.legal-hero{background:var(--surface);border-bottom:1px solid var(--line)}.legal-hero .wrap{padding-block:clamp(40px,6vw,72px) clamp(36px,5vw,56px)}.legal-hero .eyebrow{display:inline-block;margin-bottom:var(--s-5)}.legal-hero h1{font-size:clamp(2rem,1.4rem + 2.2vw,3rem);font-weight:700;letter-spacing:-.022em;line-height:1.05;margin-bottom:var(--s-5)}.legal-hero .intro{font-size:var(--t-lede);line-height:1.55;color:var(--ink-3);max-width:62ch}.legal-hero .intro a{color:var(--orange-700);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.legal-body{background:var(--surface)}.legal-grid{display:grid;grid-template-columns:248px 1fr;gap:clamp(40px,6vw,88px);align-items:start;padding-block:clamp(48px,7vw,96px)}.legal-grid:not(:has(.legal-toc)){grid-template-columns:1fr}@media(max-width:860px){.legal-grid{grid-template-columns:1fr;gap:var(--s-7);padding-block:clamp(40px,6vw,64px)}}.legal-toc{position:sticky;top:96px}.legal-toc .toc-label{font-family:IBM Plex Mono,monospace;font-size:var(--t-label);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-4);margin-bottom:var(--s-5)}.legal-toc ol{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px;counter-reset:toc}.legal-toc li{counter-increment:toc}.legal-toc a{display:flex;gap:12px;align-items:baseline;font-size:var(--t-small);line-height:1.4;color:var(--ink-3);border-left:2px solid transparent;padding:8px 0 8px 14px;margin-left:-16px;transition:color .2s var(--ease),border-color .2s var(--ease)}.legal-toc a:before{content:counter(toc,decimal-leading-zero);font-family:IBM Plex Mono,monospace;font-size:var(--t-label);color:var(--ink-4);flex:none}.legal-toc a:hover{color:var(--ink)}.legal-toc a.active{color:var(--orange-700);border-left-color:var(--orange)}.legal-toc a.active:before{color:var(--orange-700)}@media(max-width:860px){.legal-toc{position:static;border:1px solid var(--line);border-radius:var(--radius);padding:var(--s-5) var(--s-6);background:var(--paper)}}.legal-content{max-width:70ch}.legal-content h2{font-size:clamp(1.3rem,1.05rem + .9vw,1.75rem);font-weight:600;letter-spacing:-.015em;line-height:1.2;margin:clamp(40px,5vw,64px) 0 var(--s-5);display:flex;align-items:baseline;gap:14px}.legal-content h1+h2,.legal-content>h2:first-child{margin-top:0}.legal-content h2 .n{font-family:IBM Plex Mono,monospace;font-size:.7em;color:var(--orange-700);font-weight:500;flex:none}.legal-content h1{display:none}.legal-content p{color:var(--ink-2);font-size:1.0625rem;line-height:1.75;margin-bottom:var(--s-5)}.legal-content p:last-child{margin-bottom:0}.legal-content a{color:var(--orange-700);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;word-break:break-word}.legal-content a:hover{color:var(--orange)}.legal-content strong{color:var(--ink);font-weight:600}.legal-content ul{margin:0 0 var(--s-5);padding:0;list-style:none;display:flex;flex-direction:column;gap:var(--s-3)}.legal-content ul li{position:relative;padding-left:24px;color:var(--ink-2);font-size:1.0625rem;line-height:1.65}.legal-content ul li:before{content:"";position:absolute;left:4px;top:.7em;width:6px;height:6px;border-radius:1.5px;background:var(--orange)}.legal-content ol.num{margin:0 0 var(--s-5);padding-left:1.4em;color:var(--ink-2);font-size:1.0625rem;line-height:1.7}.legal-content ol.num li{margin-bottom:var(--s-3);padding-left:6px}.legal-content .callout{background:var(--surface-2);border-left:3px solid var(--orange);border-radius:0 var(--radius) var(--radius) 0;padding:var(--s-5) var(--s-6);margin-bottom:var(--s-5)}.legal-content .callout p{margin-bottom:0;font-size:var(--t-small)}.legal-content .callout p+p{margin-top:var(--s-4)}.legal-meta{margin-top:clamp(48px,6vw,72px);padding-top:var(--s-6);border-top:1px solid var(--line);font-family:IBM Plex Mono,monospace;font-size:var(--t-mono);color:var(--ink-4)}dialog.legal-modal{padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);width:min(720px,calc(100% - 2rem));max-height:88vh;overflow:hidden;box-shadow:0 40px 80px -24px #1a1a1a80}dialog.legal-modal[open]{display:flex;flex-direction:column}dialog.legal-modal::backdrop{background:#1a1a1a8c;backdrop-filter:blur(3px)}.modal-head{position:relative;padding:clamp(24px,4vw,36px) clamp(24px,4vw,40px) var(--s-5);border-bottom:1px solid var(--line);background:var(--surface);flex:none}.modal-head .eyebrow{display:block;margin-bottom:var(--s-4)}.modal-head h2{font-size:clamp(1.5rem,1.2rem + 1vw,2rem);font-weight:700;letter-spacing:-.02em;line-height:1.1}.modal-close{position:absolute;top:clamp(20px,3vw,28px);right:clamp(20px,3vw,28px);width:38px;height:38px;border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--ink-2);line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s var(--ease),color .2s var(--ease)}.modal-close:hover{border-color:var(--orange);color:var(--orange-700)}.modal-close:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.modal-body{padding:clamp(24px,4vw,40px);overflow-y:auto;flex:1;min-height:0}.modal-foot{padding:var(--s-5) clamp(24px,4vw,40px);border-top:1px solid var(--line);background:var(--surface);font-family:IBM Plex Mono,monospace;font-size:var(--t-mono);color:var(--ink-4);display:flex;align-items:center;gap:10px;flex:none}.modal-foot .badge{color:var(--orange-700)}body.modal-locked{overflow:hidden}
