/* ── LEGAL PAGES ─────────────────────────────── */

.legal-wrapper {
  min-height: 100svh;
  padding-bottom: 80px;
  background: #fff;
}

.legal-header {
  background: var(--charcoal, #2d2929);
  padding: 120px 0 48px;
  margin-bottom: 56px;
}

.legal-breadcrumb {
  font-size: .72rem;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #888;
  margin-bottom: 20px;
}

.legal-breadcrumb a {
  color: #888;
  transition: color .2s;
}

.legal-breadcrumb a:hover { color: #fff; }

.legal-title {
  font-size: clamp(1.8rem, 4vw, 3rem);
  font-weight: 900;
  font-style: italic;
  line-height: 1.1;
  margin-bottom: 12px;
}

.legal-subtitle {
  color: #bbb;
  font-size: .95rem;
  line-height: 1.7;
  max-width: 600px;
  margin-bottom: 16px;
}

.legal-updated {
  font-size: .72rem;
  color: #666;
  letter-spacing: .5px;
}

/* Sections */
.legal-section {
  margin-bottom: 48px;
  padding-bottom: 48px;
  border-bottom: 1px solid rgba(255,255,255,.07);
}

.legal-section:last-child {
  border-bottom: none;
}

.legal-section-title {
  font-size: 1.1rem;
  font-weight: 800;
  letter-spacing: .5px;
  text-transform: uppercase;
  color: var(--red, #a72526);
  margin-bottom: 20px;
}

.legal-section-body {
  color: #000;
  font-size: 1.2rem;
  line-height: 1.9;
}

/* Rich text resets inside body */
.legal-section-body p   { margin-bottom: 14px; }
.legal-section-body ul,
.legal-section-body ol  { padding-left: 20px; margin-bottom: 14px; }
.legal-section-body li  { margin-bottom: 6px; }
.legal-section-body h3  { font-size: 1rem; font-weight: 700; margin: 24px 0 10px; color: #fff; }
.legal-section-body a   { color: var(--red, #a72526); text-decoration: underline; }
.legal-section-body strong { color: #fff; font-weight: 700; }

.legal-empty {
  color: #aaa;
  font-style: italic;
}
