/* Legal pages polish: centered card, readable spacing, consistent typography */
.legal-main {
  padding-top: 5.5rem;
  padding-bottom: 4rem;
}
.legal-shell{
  max-width: 920px;
  margin: 0 auto;
  padding: 0 1.25rem;
}
.legal-card{
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 1.25rem;
  box-shadow: 0 12px 32px rgba(0,0,0,0.25);
  padding: 2rem 1.75rem;
}
@media (min-width: 768px){
  .legal-card{ padding: 2.5rem 2.5rem; }
}
.legal-title{
  font-size: 2rem;
  line-height: 1.15;
  letter-spacing: -0.02em;
  margin: 0 0 0.25rem 0;
}
.legal-subtitle{
  margin: 0 0 1.75rem 0;
  opacity: 0.85;
}
.legal-prose{
  font-size: 1.05rem;
  line-height: 1.75;
}
.legal-prose h2{
  margin-top: 2rem;
  margin-bottom: 0.75rem;
  font-size: 1.25rem;
  line-height: 1.3;
}
.legal-prose p{ margin: 0.65rem 0; }
.legal-prose ul{ margin: 0.75rem 0 0.75rem 1.25rem; }
.legal-prose li{ margin: 0.35rem 0; }
.legal-meta{
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.6rem;
  margin: 1rem 0 1.25rem 0;
  padding: 1rem 1.1rem;
  background: rgba(0,0,0,0.22);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 0.9rem;
}
@media (min-width: 640px){
  .legal-meta{ grid-template-columns: 1fr 1fr; }
}
.legal-meta div{ opacity: 0.95; }
.legal-meta strong{ display:block; font-weight: 600; opacity: 0.9; margin-bottom: 0.15rem; }
.legal-note{
  margin-top: 1.5rem;
  padding: 0.9rem 1.1rem;
  border-left: 3px solid rgba(255,255,255,0.25);
  background: rgba(255,255,255,0.04);
  border-radius: 0.75rem;
  opacity: 0.95;
}
