/* Privacy Policy / Terms pages — on top of style.css */
.legal-page main{background:#fff}
.legal-hero{position:relative;overflow:hidden;padding:56px 0 44px;color:#fff;background:#111746}
.legal-hero::before{content:"";position:absolute;inset:0;background:radial-gradient(60% 90% at 8% 20%,rgba(123,44,245,.55),transparent 60%),radial-gradient(45% 70% at 92% 10%,rgba(255,93,25,.28),transparent 65%),linear-gradient(100deg,#0d1140,#1a1366 55%,#26127c)}
.legal-hero .container{position:relative;z-index:1}
.legal-crumbs{display:flex;gap:8px;align-items:center;margin-bottom:16px;font-size:13px;font-weight:600;color:#b8b4e6}
.legal-crumbs a{color:#fff}
.legal-crumbs a:hover{text-decoration:underline}
.legal-eyebrow{display:inline-flex;padding:7px 15px;border-radius:40px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);font-size:11.5px;font-weight:800;letter-spacing:.14em}
.legal-hero h1{margin:16px 0 0;font:800 clamp(32px,4.2vw,52px)/1.1 Outfit,sans-serif;letter-spacing:-.02em;color:#fff}
/* style.css has a very specific p:not(...) colour rule, so these two need !important */
.legal-page .legal-hero p{margin:14px 0 0;max-width:720px;font-size:16.5px;line-height:1.75;color:#d4d1f2!important}
.legal-meta{display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:20px;font-size:13px;font-weight:700;color:#c7c2f3}

.legal-body{padding:48px 0 80px;background:linear-gradient(180deg,#fff,#f7f5ff)}
.legal-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:44px;align-items:start}
.legal-toc{position:sticky;top:104px;display:flex;flex-direction:column;gap:2px;padding:18px;border-radius:18px;background:#fff;border:1px solid #e8e5f1;box-shadow:0 26px 50px -40px rgba(53,31,125,.75)}
.legal-toc b{margin:0 0 8px 10px;font:800 15px Outfit,sans-serif;color:#111746}
.legal-toc a{padding:7px 10px;border-radius:9px;font-size:13.5px;font-weight:600;color:#4f5570}
.legal-toc a:hover{background:#f7f5ff;color:#5c20e7}
.legal-content{max-width:820px;font-size:16px;line-height:1.85;color:#3a3f5c}
.legal-content section{scroll-margin-top:110px;padding-bottom:10px}
.legal-content h2{margin:0 0 12px;font:800 24px/1.3 Outfit,sans-serif;color:#111746}
.legal-content section+section h2,.legal-contact h2{margin-top:26px}
.legal-page .legal-content p{margin:0 0 14px;color:inherit!important}
.legal-content ul{margin:0 0 16px;padding-left:22px}
.legal-content li{margin:0 0 8px}
.legal-content li::marker{color:#5c20e7}
.legal-content a{color:#5c20e7;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.legal-content b{color:#111746}
.legal-contact{margin-top:30px;padding:24px 26px;border-radius:20px;background:#fff;border:1px solid #e8e5f1;box-shadow:0 26px 50px -40px rgba(53,31,125,.75)}
.legal-contact h2{margin-top:0}
.legal-contact ul{list-style:none;padding:0;margin:0}

@media(max-width:900px){
  .legal-grid{grid-template-columns:minmax(0,1fr);gap:24px}
  .legal-toc{position:static;flex-direction:row;flex-wrap:wrap;gap:6px}
  .legal-toc b{width:100%;margin-left:4px}
  .legal-toc a{border:1px solid #e8e5f1;border-radius:30px;padding:6px 12px;font-size:12.5px}
}
@media(max-width:650px){
  .legal-hero{padding:36px 0 30px}
  .legal-body{padding:30px 0 100px}
  .legal-content h2{font-size:21px}
}
