/* =============================================================================
   VPNZM · legal-privacy.css
   Layout and reading rhythm for the privacy policy page. All colours, radii and
   font families come from the tokens declared in base.css.
   ========================================================================== */

.legal-hero{
  padding-top:44px;
  padding-bottom:34px;
  background:var(--bg-panel);
  border-bottom:1px solid var(--border);
}
.legal-hero h1{
  margin-top:10px;
  font-size:clamp(38px,4.4vw,52px);
  line-height:1.08;
  letter-spacing:-.03em;
}
.legal-updated{
  margin-top:14px;
  font-family:var(--font-mono);
  font-size:12px;
  letter-spacing:.06em;
  color:var(--text-muted);
}
.legal-lede{
  margin-top:16px;
  max-width:72ch;
  font-size:15.5px;
  line-height:1.8;
  color:var(--text-muted);
}

.legal-body{
  padding-top:44px;
  padding-bottom:64px;
}
.legal-doc{
  max-width:860px;
  margin:0 auto;
  min-width:0;
}
.legal-doc section{
  padding-top:30px;
  margin-top:30px;
  border-top:1px solid var(--border);
}
.legal-doc section:first-of-type{
  padding-top:0;
  margin-top:0;
  border-top:0;
}
.legal-doc h2{
  font-size:clamp(22px,2.2vw,28px);
  line-height:1.3;
  letter-spacing:-.02em;
}
.legal-no{
  display:inline-block;
  margin-right:12px;
  vertical-align:.08em;
  font-family:var(--font-mono);
  font-size:.62em;
  font-weight:700;
  letter-spacing:.08em;
  color:var(--accent);
}
.legal-doc p{
  margin-top:12px;
  font-size:14.8px;
  line-height:1.85;
  color:var(--text);
}
.legal-doc ul{
  display:grid;
  gap:9px;
  margin-top:12px;
}
.legal-doc li{
  position:relative;
  padding-left:18px;
  font-size:14.5px;
  line-height:1.8;
  color:var(--text-muted);
}
.legal-doc li::before{
  content:"";
  position:absolute;
  left:0;
  top:.78em;
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--accent);
  opacity:.5;
}
.legal-doc strong{
  color:var(--text);
  font-weight:700;
}
.legal-doc a{
  color:var(--accent);
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:3px;
  text-decoration-thickness:1px;
}
.legal-doc .callout{
  margin-top:18px;
}
.legal-doc .callout p{
  margin-top:0;
  font-size:13.5px;
  line-height:1.75;
  color:var(--text);
}

@media (max-width:640px){
  .legal-hero{
    padding-top:30px;
    padding-bottom:26px;
  }
  .legal-hero h1{
    font-size:34px;
  }
  .legal-body{
    padding-top:30px;
    padding-bottom:48px;
  }
  .legal-doc section{
    padding-top:24px;
    margin-top:24px;
  }
  .legal-doc p{
    font-size:14.5px;
  }
  .legal-doc li{
    font-size:14px;
  }
}