:root{
  --bg:#F6F7FA;
  --bg-2:#ECEEF3;
  --surface:#FFFFFF;
  --surface-2:#EFF1F6;
  --border:#DFE2EA;
  --border-2:#C4C9D4;
  --text:#0B0E1A;
  --muted:#4A4F5E;
  --dim:#8890A0;
  --emerald:#3B4BE8;
  --emerald-dim:#2939C7;
  --emerald-soft:#E4E7FF;
  --font-display:"Space Grotesk", system-ui, sans-serif;
  --font-body:"Inter", system-ui, sans-serif;
  --font-mono:"JetBrains Mono", ui-monospace, monospace;
}

*{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
  background:var(--bg);
  color:var(--text);
  font-family:var(--font-body);
  font-weight:400;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  position:relative;
}

/* Soft ambient wash — lighter on legal pages */
body::after{
  content:"";
  position:fixed;
  left:0; right:0; top:0; height:100vh;
  background:
    radial-gradient(900px 500px at 85% -10%, rgba(59,75,232,0.06), transparent 60%),
    radial-gradient(700px 400px at 5% 110%, rgba(59,75,232,0.04), transparent 60%);
  pointer-events:none;
  z-index:0;
}

h1,h2,h3,h4{
  font-family:var(--font-display);
  font-weight:700;
  letter-spacing:-0.015em;
  color:var(--text);
  margin:0;
  text-wrap:balance;
}

.wrap{
  max-width:820px;
  margin:0 auto;
  padding:0 56px;
  position:relative;
  z-index:1;
}

/* Top nav — simplified */
.topnav{
  position:sticky;
  top:0;
  z-index:10;
  background:rgba(246,247,250,0.85);
  backdrop-filter:blur(12px);
  -webkit-backdrop-filter:blur(12px);
  border-bottom:1px solid var(--border);
}
.nav-inner{
  max-width:1200px;
  margin:0 auto;
  padding:14px 56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}
.nav-logo{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--text);
  text-decoration:none;
  font-family:var(--font-display);
  font-weight:700;
  font-size:16px;
  letter-spacing:-0.01em;
}
.pulse-dot{
  display:inline-block;
  width:8px; height:8px;
  border-radius:50%;
  background:var(--emerald);
  box-shadow:0 0 10px rgba(59,75,232,0.5);
  animation:dot-pulse 2.4s ease-in-out infinite;
}
@keyframes dot-pulse{
  0%,100%{ opacity:0.55; transform:scale(1); }
  50%{ opacity:1; transform:scale(1.2); }
}
.nav-back{
  font-size:14px;
  color:var(--muted);
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  gap:6px;
  transition:color .2s ease;
}
.nav-back:hover{ color:var(--emerald); }
.nav-back svg{ transition:transform .2s ease; }
.nav-back:hover svg{ transform:translateX(-2px); }

/* Legal article */
.legal-hero{
  padding:80px 0 48px;
  border-bottom:1px solid var(--border);
}
.legal-eyebrow{
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:0.18em;
  color:var(--emerald-dim);
  font-weight:600;
  margin-bottom:18px;
}
.legal-hero h1{
  font-size:clamp(38px, 5vw, 56px);
  line-height:1.05;
}
.legal-meta{
  margin-top:20px;
  font-size:13px;
  color:var(--dim);
  font-family:var(--font-mono);
}

.legal-body{
  padding:56px 0 96px;
  max-width:720px;
  margin:0 auto;
}
.legal-body > .section{
  margin-bottom:44px;
}
.legal-body h2{
  font-size:22px;
  line-height:1.3;
  margin:0 0 14px;
  display:flex;
  align-items:baseline;
  gap:14px;
}
.legal-body h2 .num{
  font-family:var(--font-mono);
  font-size:13px;
  color:var(--emerald-dim);
  font-weight:500;
  letter-spacing:0.02em;
  flex-shrink:0;
}
.legal-body h3{
  font-size:16px;
  font-weight:600;
  margin:22px 0 8px;
  color:var(--text);
}
.legal-body p{
  font-size:15px;
  color:var(--muted);
  line-height:1.7;
  margin:0 0 14px;
}
.legal-body p strong{
  color:var(--text);
  font-weight:600;
}
.legal-body a{
  color:var(--emerald-dim);
  text-decoration:none;
  border-bottom:1px solid rgba(59,75,232,0.3);
  transition:border-color .2s ease, color .2s ease;
}
.legal-body a:hover{
  color:var(--emerald);
  border-color:var(--emerald);
}
.legal-body ul{
  margin:0 0 14px;
  padding-left:0;
  list-style:none;
}
.legal-body ul li{
  position:relative;
  padding-left:22px;
  font-size:15px;
  color:var(--muted);
  line-height:1.7;
  margin-bottom:10px;
}
.legal-body ul li::before{
  content:"";
  position:absolute;
  left:2px;
  top:11px;
  width:6px; height:6px;
  border-radius:50%;
  background:var(--emerald);
  opacity:0.6;
}
.legal-body .callout{
  margin:20px 0;
  padding:18px 20px;
  background:var(--surface);
  border:1px solid var(--border);
  border-left:3px solid var(--emerald);
  border-radius:6px;
  font-size:14px;
  color:var(--muted);
  line-height:1.6;
}

/* Footer — minimal */
.legal-foot{
  border-top:1px solid var(--border);
  padding:32px 0;
  background:linear-gradient(180deg, transparent, rgba(59,75,232,0.02));
}
.legal-foot-inner{
  max-width:1200px;
  margin:0 auto;
  padding:0 56px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:13px;
  color:var(--dim);
  flex-wrap:wrap;
  gap:16px;
}
.legal-foot-links{
  display:flex;
  gap:24px;
}
.legal-foot-links a{
  color:var(--muted);
  text-decoration:none;
  transition:color .2s ease;
}
.legal-foot-links a:hover{ color:var(--emerald); }

@media (max-width:960px){
  .wrap{ padding:0 64px; }
  .nav-inner{ padding:14px 64px; }
  .legal-foot-inner{ padding:0 64px; }
}

@media (max-width:560px){
  .legal-hero{ padding:56px 0 36px; }
  .legal-body{ padding:40px 0 72px; }
  .legal-body h2{ flex-direction:column; gap:4px; }
  .wrap{ padding:0 32px; }
  .nav-inner{ padding:14px 32px; }
  .legal-foot-inner{ padding:0 32px; }
}
