/* =============================================================
   PEOPLECAP — legal.css
   Shared styles for Privacy Policy, Terms of Use, Cookie Policy
   ============================================================= */


/* =====================
   PAGE HEADER
   ===================== */

.legal-header {
  background-color: var(--color-stone);
  padding: 40px 0 36px;
}

@media (min-width: 769px) {
  .legal-header { padding: 64px 0 56px; }
}

.legal-h1 {
  font-size: 28px;
  font-weight: 500;
  color: var(--color-text);
  line-height: 1.25;
  margin-bottom: var(--space-sm);
}

@media (min-width: 769px) {
  .legal-h1 { font-size: 36px; }
}

.legal-updated {
  font-size: 13px;
  color: var(--color-text-muted);
}


/* =====================
   DOCUMENT BODY
   ===================== */

.legal-body {
  padding: 48px 0 64px;
}

@media (min-width: 769px) {
  .legal-body { padding: 64px 0 80px; }
}

.legal-content {
  max-width: 760px;
}

.legal-content > p {
  font-size: 15px;
  color: var(--color-text-muted);
  line-height: 1.75;
  margin-bottom: var(--space-md);
}

.legal-content > p:last-child { margin-bottom: 0; }

.legal-content h2 {
  font-size: 16px;
  font-weight: 500;
  color: var(--color-text);
  margin-top: var(--space-2xl);
  margin-bottom: var(--space-md);
  padding-top: var(--space-xl);
  border-top: 1px solid var(--color-border);
}

.legal-content h3 {
  font-size: 14px;
  font-weight: 500;
  color: var(--color-text);
  margin-top: var(--space-lg);
  margin-bottom: var(--space-sm);
}

.legal-section p {
  font-size: 15px;
  color: var(--color-text-muted);
  line-height: 1.75;
  margin-bottom: var(--space-md);
}

.legal-section p:last-child { margin-bottom: 0; }

.legal-section ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  gap: var(--space-xs);
  margin-bottom: var(--space-md);
}

.legal-section ul li {
  font-size: 15px;
  color: var(--color-text-muted);
  line-height: 1.65;
  padding-left: 20px;
  position: relative;
}

.legal-section ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 9px;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: var(--color-text-muted);
  opacity: 0.6;
}

.legal-address {
  font-style: normal;
  font-size: 15px;
  color: var(--color-text-muted);
  line-height: 1.75;
  margin-bottom: var(--space-md);
}

.legal-content a,
.legal-section a {
  color: var(--color-primary);
  text-decoration: none;
}

.legal-content a:hover,
.legal-section a:hover { text-decoration: underline; }
