.legal-main{padding:126px 0 86px;min-height:80vh;background:radial-gradient(circle at 82% 8%,rgba(169,0,255,.16),transparent 28%),radial-gradient(circle at 12% 42%,rgba(32,217,255,.08),transparent 28%)}
.legal-hero{max-width:850px;margin-bottom:42px}
.legal-hero .eyebrow{margin-bottom:14px}
.legal-hero h1{font:700 clamp(39px,6vw,68px)/1.02 "Space Grotesk",sans-serif;letter-spacing:-.045em;margin:0}
.legal-hero>p:not(.eyebrow){max-width:760px;color:var(--muted);font-size:17px;margin:22px 0 0}
.legal-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.legal-meta span{padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.035);color:#d8cfdf;font-size:11px;font-weight:700}
.legal-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:30px;align-items:start}
.legal-index{position:sticky;top:100px;padding:22px;border:1px solid var(--line);border-radius:20px;background:rgba(17,11,25,.78);backdrop-filter:blur(16px)}
.legal-index strong{display:block;margin-bottom:12px;font:700 13px "Space Grotesk",sans-serif;text-transform:uppercase;letter-spacing:.13em}
.legal-index a{display:block;padding:7px 0;color:var(--muted);font-size:12px}
.legal-index a:hover{color:#fff}
.legal-document{padding:clamp(24px,5vw,56px);border:1px solid var(--line);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.018));box-shadow:0 28px 80px rgba(0,0,0,.25)}
.legal-document section+section{margin-top:42px;padding-top:36px;border-top:1px solid var(--line)}
.legal-document h2{margin:0 0 15px;font:700 clamp(23px,3vw,31px)/1.15 "Space Grotesk",sans-serif;letter-spacing:-.025em}
.legal-document h3{margin:24px 0 10px;font:700 18px/1.25 "Space Grotesk",sans-serif}
.legal-document p,.legal-document li{color:#c8becf;font-size:15px}
.legal-document p{margin:0 0 14px}
.legal-document ul,.legal-document ol{margin:13px 0 0;padding-left:22px}
.legal-document li+li{margin-top:8px}
.legal-document a{color:var(--cyan);text-decoration:underline;text-decoration-color:rgba(32,217,255,.35);text-underline-offset:3px}
.legal-document strong{color:#fff}
.legal-callout{margin:22px 0;padding:18px 20px;border:1px solid rgba(32,217,255,.24);border-radius:16px;background:rgba(32,217,255,.06)}
.legal-callout.warning{border-color:rgba(255,221,74,.28);background:rgba(255,221,74,.055)}
.legal-steps{counter-reset:legal-step;display:grid;gap:14px;padding:0!important;list-style:none}
.legal-steps li{position:relative;padding:17px 18px 17px 58px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.025)}
.legal-steps li::before{counter-increment:legal-step;content:counter(legal-step);position:absolute;left:17px;top:15px;display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:linear-gradient(135deg,var(--pink),var(--purple));color:#fff;font-weight:800;font-size:12px}
.legal-contact{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:18px}
.legal-contact a,.legal-contact div{padding:16px;border:1px solid var(--line);border-radius:15px;background:rgba(255,255,255,.025);overflow-wrap:anywhere}
.legal-contact small{display:block;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.11em}
.legal-contact strong{display:block;margin-top:4px;font-size:13px}
.legal-links{display:flex;gap:16px;flex-wrap:wrap}
.legal-links a:hover{color:#fff}
.ticket-legal{max-width:1152px;margin:4px auto 28px;padding:0 20px;display:flex;justify-content:center;flex-wrap:wrap;gap:14px;color:#94a3b8;font-size:11px;font-weight:700}
.ticket-legal a{color:#c4b5fd;text-decoration:underline;text-underline-offset:3px}
@media(max-width:800px){.legal-layout{grid-template-columns:1fr}.legal-index{position:static}.legal-index a{display:inline-block;margin-right:15px}.legal-contact{grid-template-columns:1fr}}
@media(max-width:640px){.legal-main{padding:104px 0 64px}.legal-document{padding:24px 19px;border-radius:21px}.legal-document p,.legal-document li{font-size:14px}.legal-contact{grid-template-columns:1fr}.legal-meta{align-items:flex-start;flex-direction:column}}
