/* ============================================
   SHADOW FLEET — legal pages (privacy, terms, responsible disclosure)
   Depends on /styles.css for the design tokens (--ink, --bone, --mute,
   --line, fonts). This file only adds the document-page layout that the
   marketing one-pager does not need.
   ============================================ */

.legal-page{
  background:var(--bone);
  color:var(--ink);
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

/* ---- header ---- */
.legal-head{
  border-bottom:1px solid var(--line);
  background:var(--bone);
}
.legal-head-inner{
  max-width:980px;margin:0 auto;padding:22px 32px;
  display:flex;align-items:center;justify-content:space-between;gap:24px;
}
.legal-head .brand{color:var(--ink);font-size:18px}
.legal-head .brand-mark{width:24px;height:24px}
.legal-back{
  font-family:var(--font-mono);font-size:11px;font-weight:500;
  letter-spacing:.16em;text-transform:uppercase;color:var(--mute);
  display:inline-flex;align-items:center;gap:8px;
  transition:color .18s ease;
}
.legal-back:hover{color:var(--ink)}
.legal-back svg{width:13px;height:13px}

/* ---- document body ---- */
.legal-main{flex:1 0 auto;max-width:760px;margin:0 auto;padding:72px 32px 96px;width:100%}
.legal-eyebrow{
  font-family:var(--font-mono);font-size:11px;font-weight:500;
  letter-spacing:.2em;text-transform:uppercase;color:var(--mute);
  display:block;margin-bottom:18px;
}
.legal-main h1{
  font-family:var(--font-display);font-weight:700;
  font-size:clamp(30px,5vw,44px);letter-spacing:-.02em;line-height:1.04;
  color:var(--ink);margin-bottom:14px;text-wrap:balance;
}
.legal-meta{
  font-size:14px;color:var(--mute);margin-bottom:8px;
}
.legal-lede{
  font-size:17px;line-height:1.6;color:var(--ink);
  margin:28px 0 8px;padding-bottom:36px;border-bottom:1px solid var(--line);
}
.legal-main h2{
  font-family:var(--font-display);font-weight:600;
  font-size:21px;letter-spacing:-.01em;line-height:1.25;
  color:var(--ink);margin:48px 0 14px;
}
.legal-main h3{
  font-family:var(--font-ui);font-weight:600;
  font-size:16px;color:var(--ink);margin:26px 0 8px;
}
.legal-main p,
.legal-main li{
  font-size:16px;line-height:1.65;color:#21303d; /* one step darker than --mute for AA on bone */
}
.legal-main p{margin:0 0 14px}
.legal-main ul{margin:0 0 16px;padding-left:22px}
.legal-main li{margin-bottom:8px}
.legal-main a{color:var(--sea);text-decoration:underline;text-underline-offset:2px}
.legal-main a:hover{color:var(--ink)}
.legal-main strong{color:var(--ink);font-weight:600}
.legal-num{counter-reset:sec}
.legal-num > h2{counter-increment:sec}
.legal-num > h2::before{
  content:counter(sec) ". ";color:var(--mute);font-weight:500;
}

/* ---- footer ---- */
.legal-foot{
  border-top:1px solid var(--line);background:var(--surface);
  flex-shrink:0;
}
.legal-foot-inner{
  max-width:980px;margin:0 auto;padding:28px 32px;
  display:flex;align-items:center;justify-content:space-between;
  gap:18px;flex-wrap:wrap;
  font-size:13px;color:var(--mute);
}
.legal-foot-links{display:flex;gap:22px;flex-wrap:wrap}
.legal-foot-links a{color:var(--mute);transition:color .18s ease}
.legal-foot-links a:hover{color:var(--ink)}
.legal-foot-links a[aria-current="page"]{color:var(--ink);font-weight:500}

@media (max-width:560px){
  .legal-main{padding:48px 22px 72px}
  .legal-head-inner{padding:18px 22px}
  .legal-foot-inner{padding:22px}
}
