/* Legal pages (privacy policy): dark header, sticky index, summary tiles, numbered sections, tables. */
.legal-hero{background:#0e1a2e;color:#fff}
.legal-hero .wrap{padding-top:72px;padding-bottom:72px}
.legal-hero .ver{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#a9b8ff;margin:0 0 18px}
.legal-hero .ver svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.legal-hero h1{font:800 clamp(38px,6vw,60px)/1.08 Manrope,sans-serif;letter-spacing:-2px;margin:0;color:#fff}
.legal-hero .intro{max-width:760px;margin:20px 0 0;font-size:18px;line-height:1.7;color:rgba(255,255,255,.68)}
.legal-hero .updated{margin:22px 0 0;font-size:14px;font-weight:600;color:rgba(255,255,255,.55)}

.legal{display:grid;grid-template-columns:270px minmax(0,1fr);gap:32px;align-items:start;margin-top:40px;margin-bottom:80px}
.legal-index{position:sticky;top:96px;border:1px solid #e2e8f0;background:#fff;border-radius:14px;padding:20px}
.legal-index h2{font:700 13px/1.4 'DM Sans',sans-serif;color:#64748b;margin:0 0 10px;letter-spacing:0}
.legal-index ol{list-style:none;margin:0;padding:0;display:grid;gap:2px;max-height:calc(100vh - 220px);overflow:auto}
.legal-index a{display:flex;gap:10px;align-items:baseline;padding:7px 8px;border-radius:8px;font-size:14px;line-height:1.4;color:#334155;text-decoration:none}
.legal-index a span{flex:none;width:22px;font-size:12px;font-weight:700;color:#4564ed;font-variant-numeric:tabular-nums}
.legal-index a:hover{background:#f1f4fb;color:#0f172a}
.legal-index a[aria-current=true]{background:#eef2ff;color:#1d2b5f;font-weight:600}
.legal-index .back{margin-top:14px;padding-top:14px;border-top:1px solid #e2e8f0;font-size:13px}

.legal-body{min-width:0}
.summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:28px}
.summary article{border:1px solid #e2e8f0;background:#fff;border-radius:14px;padding:20px}
.summary .ic{width:34px;height:34px;border-radius:10px;background:#eef2ff;color:#4564ed;display:grid;place-items:center;margin-bottom:14px}
.summary .ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.summary h3{font:700 15px/1.3 Manrope,sans-serif;margin:0 0 8px;color:#0f172a}
.summary p{margin:0;font-size:14px;line-height:1.6;color:#475569}

.legal-doc{border:1px solid #e2e8f0;background:#fff;border-radius:16px;padding:48px clamp(20px,5vw,56px)}
.legal-doc section{scroll-margin-top:96px;padding-bottom:36px;margin-bottom:36px;border-bottom:1px solid #edf1f6}
.legal-doc section:last-of-type{border-bottom:0;margin-bottom:0;padding-bottom:0}
.legal-doc h2{font:800 clamp(24px,3vw,30px)/1.25 Manrope,sans-serif;letter-spacing:-.6px;margin:0 0 18px;color:#0f172a}
.legal-doc h3{font:700 16px/1.4 Manrope,sans-serif;margin:24px 0 8px;color:#0f172a}
.legal-doc p,.legal-doc li{font-size:16px;line-height:1.75;color:#475569;max-width:72ch}
.legal-doc p{margin:0 0 14px}
.legal-doc ul{padding-left:20px;margin:0 0 14px}
.legal-doc li{margin:4px 0}
.legal-doc strong{color:#1e293b}
.legal-doc a{color:#3550d4;text-decoration:underline;text-underline-offset:3px}
.legal-doc dl{display:grid;grid-template-columns:minmax(160px,240px) 1fr;margin:8px 0 18px;border-top:1px solid #edf1f6}
.legal-doc dt,.legal-doc dd{margin:0;padding:14px 0;border-bottom:1px solid #edf1f6;font-size:15px;line-height:1.65}
.legal-doc dt{font-weight:700;color:#0f172a;padding-right:20px}
.legal-doc dd{color:#475569}
.table-wrap{overflow-x:auto;margin:8px 0 18px;border:1px solid #e2e8f0;border-radius:12px}
.legal-doc table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.6;color:#475569;min-width:620px}
.legal-doc th{text-align:left;font-weight:700;color:#0f172a;background:#f8fafc;padding:12px 14px;border-bottom:1px solid #e2e8f0}
.legal-doc td{padding:12px 14px;border-bottom:1px solid #edf1f6;vertical-align:top}
.legal-doc tr:last-child td{border-bottom:0}
.note{border-left:3px solid #4564ed;background:#f5f7ff;padding:14px 16px;border-radius:0 10px 10px 0;margin:8px 0 18px}
.note p{margin:0}
.contact-card{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.contact-card>div{border:1px solid #e2e8f0;border-radius:12px;padding:20px}
.contact-card h3{margin-top:0}
.contact-card p{font-size:15px;margin:0 0 6px}
.providers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:8px 0 18px}
.providers div{border:1px solid #e2e8f0;border-radius:12px;padding:16px}
.providers strong{display:block;font-size:15px;margin-bottom:4px}
.providers span{display:block;font-size:14px;line-height:1.6;color:#475569}
.legal-cta{margin-top:28px;border-radius:16px;background:#0e1a2e;color:#fff;padding:28px 32px;display:flex;flex-wrap:wrap;gap:12px 24px;align-items:center;justify-content:space-between}
.legal-cta p{margin:0;font:700 20px/1.3 Manrope,sans-serif}
.legal-cta a{color:#fff;font-weight:600}

@media(max-width:1100px){.summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
  .legal{grid-template-columns:1fr;gap:20px;margin-top:24px}
  .legal-index{position:static}
  .legal-index ol{max-height:none;grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
  .legal-hero .wrap{padding-top:48px;padding-bottom:48px}
  .legal-hero .intro{font-size:16px}
  .summary,.contact-card,.providers{grid-template-columns:1fr}
  .legal-index ol{grid-template-columns:1fr}
  .legal-doc{padding:28px 18px}
  .legal-doc dl{grid-template-columns:1fr}
  .legal-doc dt{padding-bottom:0;border-bottom:0}
  .legal-cta{padding:22px}
}
