/* ── LEGAL PAGES ── */
.legal-page { padding-top: var(--nav-h); min-height: 100vh; }

.legal-hero {
  background: var(--navy);
  padding: 4rem 0 3rem;
  text-align: center;
}
.lh-tag {
  display: inline-block;
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: var(--gold-lt);
  background: rgba(200,168,75,.1);
  border: 1px solid rgba(200,168,75,.2);
  padding: .3rem .85rem;
  border-radius: 100px;
  margin-bottom: 1rem;
}
.legal-hero h1 {
  font-size: clamp(1.75rem, 4vw, 2.75rem);
  color: var(--white);
  margin-bottom: .5rem;
}
.legal-hero p { color: rgba(255,255,255,.45); font-size: .9rem; }

.legal-body {
  max-width: 760px;
  padding-top: 3rem;
  padding-bottom: 5rem;
}

.ls {
  margin-bottom: 2.75rem;
  padding-bottom: 2.75rem;
  border-bottom: 1px solid var(--gray-2);
}
.ls:last-child { border-bottom: none; }

.ls h2 {
  font-family: var(--serif);
  font-size: 1.35rem;
  color: var(--navy);
  margin-bottom: 1rem;
}
.ls h3 {
  font-family: var(--sans);
  font-size: .9rem;
  font-weight: 600;
  color: var(--navy);
  margin: 1.5rem 0 .75rem;
}
.ls p {
  font-size: .92rem;
  color: var(--text-lt);
  line-height: 1.8;
  margin-bottom: .75rem;
}
.ls ul {
  padding-left: 1.25rem;
  display: flex;
  flex-direction: column;
  gap: .5rem;
}
.ls ul li {
  font-size: .92rem;
  color: var(--text-lt);
  line-height: 1.65;
}
.ls a { color: var(--navy); text-decoration: underline; text-decoration-color: rgba(30,58,95,.3); }
.ls a:hover { color: var(--gold-dk); }

.ls-box {
  background: var(--gray-1);
  border: 1px solid var(--gray-2);
  border-radius: 10px;
  padding: 1.25rem 1.5rem;
  margin-top: .75rem;
}
.ls-box p { margin-bottom: .4rem; font-size: .88rem; }
.ls-box--gold {
  background: var(--gold-bg);
  border-color: rgba(200,168,75,.25);
}
.ls-box--gold p { color: var(--text); }

.ls-table {
  border: 1px solid var(--gray-2);
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 1.25rem;
}
.lst-row {
  display: grid;
  grid-template-columns: 1.5fr 2fr 1fr;
  gap: 1rem;
  padding: .65rem 1rem;
  font-size: .82rem;
  color: var(--text-lt);
  border-bottom: 1px solid var(--gray-2);
}
.lst-row:last-child { border-bottom: none; }
.lst-row--header {
  background: var(--gray-1);
  font-weight: 600;
  color: var(--navy);
  font-size: .75rem;
  text-transform: uppercase;
  letter-spacing: .06em;
}
code {
  font-family: monospace;
  font-size: .8rem;
  background: var(--gray-2);
  padding: .1rem .4rem;
  border-radius: 4px;
  color: var(--navy);
}

@media (max-width: 560px) {
  .lst-row { grid-template-columns: 1fr 1fr; }
  .lst-row > span:last-child { grid-column: 1 / -1; color: var(--gray-3); font-size: .75rem; }
}
