/* Shared legal-page styles for PepLedger marketing site. */
:root{
  --bg:#0B0D12;
  --surface:#131826;
  --elev:#1B2034;
  --hairline:rgba(245,247,250,0.08);
  --hairline-strong:#2A304A;
  --t-primary:#F2F4F8;
  --t-secondary:#C5CCDB;
  --t-muted:#9098AE;
  --accent:#9594FF;
  --accent-soft:rgba(149,148,255,0.20);
  --accent-deep:#6361E8;
}
*,*::before,*::after{ box-sizing:border-box; }
html,body{ margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
  background:var(--bg);
  color:var(--t-primary);
  font-family:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  font-size:16px;
  line-height:26px;
  -webkit-font-smoothing:antialiased;
}
a{ color:var(--accent); text-decoration:none; border-bottom:1px solid var(--accent-soft); }
a:hover{ color:#fff; border-bottom-color:var(--accent); }
.serif{ font-family:"Instrument Serif", "Times New Roman", serif; font-weight:400; letter-spacing:-0.01em; }
.mono{ font-family:"JetBrains Mono", ui-monospace, monospace; font-size:12px; line-height:16px; letter-spacing:0.06em; text-transform:uppercase; color:var(--accent); }

.container{ max-width:760px; margin:0 auto; padding:0 24px; }

/* Header */
.legal-nav{
  position:sticky; top:0; z-index:10;
  backdrop-filter:blur(18px) saturate(1.1);
  -webkit-backdrop-filter:blur(18px) saturate(1.1);
  background:rgba(11,13,18,0.66);
  border-bottom:1px solid var(--hairline);
}
.legal-nav-inner{
  max-width:760px; margin:0 auto;
  display:flex; align-items:center; justify-content:space-between;
  height:64px; padding:0 24px;
}
.wordmark{
  display:flex; align-items:center; gap:10px;
  font-family:"Instrument Serif", serif;
  font-size:22px; color:var(--t-primary);
  border-bottom:none;
}
.wordmark .glyph{
  width:28px; height:28px;
  display:block;
  object-fit:contain;
}
.back-link{
  color:var(--t-secondary); font-size:14px;
  border-bottom:none;
}
.back-link:hover{ color:var(--accent); }

/* Document body */
main{
  padding:64px 0 96px;
}
.doc-eyebrow{ color:var(--accent); margin-bottom:14px; }
h1.doc-title{
  font-family:"Instrument Serif", serif;
  font-size:56px; line-height:1.05; letter-spacing:-0.02em;
  color:var(--t-primary);
  margin:0;
  font-weight:400;
}
.updated{
  margin-top:14px;
  color:var(--t-muted); font-size:13px;
  font-family:"JetBrains Mono", monospace; letter-spacing:0.04em;
}
.intro{
  margin-top:28px;
  color:var(--t-secondary);
  font-size:17px; line-height:28px;
  max-width:660px;
  padding:24px 0 28px;
  border-bottom:1px solid var(--hairline);
}
section.legal-section{
  padding:28px 0;
  border-bottom:1px solid var(--hairline);
}
section.legal-section:last-of-type{ border-bottom:none; }
section.legal-section h2{
  font-family:"Instrument Serif", serif;
  font-size:28px; line-height:1.2; letter-spacing:-0.01em;
  color:var(--t-primary);
  margin:0 0 14px;
  font-weight:400;
}
section.legal-section p{
  margin:0 0 14px;
  color:var(--t-secondary);
  font-size:16px; line-height:26px;
}
section.legal-section p:last-child{ margin-bottom:0; }

/* Cross-doc nav */
.doc-other{
  margin-top:48px;
  padding-top:32px;
  border-top:1px solid var(--hairline);
  display:flex; flex-direction:column; gap:14px;
}
.doc-other h3{
  font-family:"JetBrains Mono", monospace;
  font-size:12px; letter-spacing:0.06em; text-transform:uppercase;
  color:var(--t-muted);
  margin:0;
  font-weight:400;
}
.doc-other ul{
  list-style:none; padding:0; margin:0;
  display:flex; gap:18px; flex-wrap:wrap;
}
.doc-other a{ font-size:14px; }

/* Footer */
.legal-footer{
  border-top:1px solid var(--hairline);
  padding:32px 0;
  background:var(--bg);
}
.legal-footer .inner{
  max-width:760px; margin:0 auto;
  padding:0 24px;
  display:flex; align-items:center; justify-content:space-between;
  flex-wrap:wrap; gap:12px;
  color:var(--t-muted);
  font-family:"JetBrains Mono", monospace;
  font-size:12px; letter-spacing:0.04em;
}
.legal-footer a{ border-bottom:none; }
.legal-footer a:hover{ color:var(--accent); }

@media (max-width:768px){
  h1.doc-title{ font-size:38px; }
  section.legal-section h2{ font-size:22px; }
  main{ padding:40px 0 64px; }
}
