/* ============================= LEGAL PAGE ============================= */

.legal-hero{
  background:var(--navy-900); color:#fff;
  padding-top:calc(var(--section-pad-y) + 4rem);
  padding-bottom:var(--space-7);
}
.legal-hero h1{ font-size:var(--fs-display-lg); max-width:20ch; }
.legal-hero p{ margin-top:1.25rem; color:rgba(255,255,255,.6); font-size:var(--fs-body-lg); max-width:52ch; }

.legal-banner{
  display:flex; gap:.9rem; align-items:flex-start;
  margin-top:2rem;
  padding:1.1rem 1.4rem;
  border:1px solid var(--line-on-dark);
  border-radius:var(--radius-md);
  background:rgba(255,255,255,.04);
  max-width:64ch;
}
.legal-banner .mark{ font-family:var(--font-mono); font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; color:var(--sky-400); flex:0 0 auto; margin-top:.2rem; }
.legal-banner p{ margin:0; font-size:.88rem; color:rgba(255,255,255,.72); max-width:none; }

/* ---- Anchor sub-nav ---- */
.legal-subnav{
  background:var(--white);
  border-bottom:1px solid var(--line-on-light);
}
.legal-subnav .wrap{ display:flex; gap:var(--space-6); }
.legal-subnav a{
  font-family:var(--font-mono); font-size:.76rem; letter-spacing:.08em; text-transform:uppercase;
  padding:1.1rem 0;
  color:var(--charcoal-500);
  border-bottom:2px solid transparent;
  transition:color .2s, border-color .2s;
}
.legal-subnav a:hover{ color:var(--ink); }
.legal-subnav a.is-active{ color:var(--sky-700); border-bottom-color:var(--sky-500); }

/* ---- Long-form sections ---- */
/* Restrained utility page, but "restrained" isn't "bare" — a slightly more
   generous rhythm than a dense legal document, still calm and readable. */
.legal-part{ padding-block:var(--space-9); scroll-margin-top:6.5rem; }
.legal-part + .legal-part{ border-top:1px solid var(--line-on-light); }
.legal-part-head{ margin-bottom:var(--space-8); }
.legal-part-head .eyebrow{ margin-bottom:1rem; }
.legal-part-head h2{ font-family:var(--font-display); font-size:var(--fs-display-lg); }
.legal-part-head p{ margin-top:1.1rem; color:var(--ink-soft); font-size:var(--fs-body-lg); }

.legal-clause{ margin-bottom:var(--space-8); }
.legal-clause:last-child{ margin-bottom:0; }
.legal-clause h3{
  font-family:var(--font-display); font-size:1.4rem; margin-bottom:1rem;
  display:flex; align-items:baseline; gap:.75rem;
}
.legal-clause h3 .num{ font-family:var(--font-mono); font-size:.75rem; color:var(--sky-600); }
.legal-clause p{ color:var(--ink-soft); margin-bottom:.9rem; line-height:var(--lh-loose); }
.legal-clause p:last-child{ margin-bottom:0; }
.legal-clause ul{ margin:0 0 .9rem; padding-left:1.25rem; list-style:disc; color:var(--ink-soft); }
.legal-clause ul li{ margin-bottom:.6rem; line-height:var(--lh-loose); }
.legal-clause ul li:last-child{ margin-bottom:0; }
.legal-clause a{ color:var(--sky-600); }
