/* ==========================================================================
   Maktabi — Legal pages styles (Privacy Policy & Terms of Use)
   ========================================================================== */

.legal-hero {
  padding-block: var(--sec) var(--sec-sm);
  text-align: center;
}

.legal-hero__in {
  max-width: 820px;
  margin-inline: auto;
}

.legal-hero .h1 {
  margin-top: 14px;
  margin-bottom: 20px;
}

.legal-hero .lead {
  max-width: 720px;
  margin-inline: auto;
  margin-bottom: 24px;
}

.legal-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--muted);
  background: var(--surface);
  border: 1px solid var(--border);
  padding: 6px 14px;
  border-radius: var(--r-pill);
}

.legal-content {
  max-width: 820px;
  margin-inline: auto;
  padding-bottom: var(--sec);
}

.legal-cards-4 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-top: 40px;
  text-align: start;
}

.legal-card {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r-md);
  padding: 24px;
}

.legal-card svg {
  color: var(--accent);
  margin-bottom: 12px;
}

.legal-card__title {
  font: 700 16px/1.3 var(--ff-head);
  margin-bottom: 6px;
}

.legal-card__desc {
  font-size: 13px;
  line-height: 1.55;
  color: var(--text-2);
}

/* Legal text section */
.legal-sec {
  margin-top: 56px;
}

.legal-sec .h2 {
  font-size: 26px;
  line-height: 1.25;
  margin-bottom: 18px;
  letter-spacing: -.01em;
}

.legal-sec .h3 {
  font-size: 18px;
  line-height: 1.35;
  margin-top: 24px;
  margin-bottom: 12px;
}

.legal-sec p {
  font-size: 15px;
  line-height: 1.75;
  color: var(--text-2);
  margin-bottom: 16px;
}

.legal-box {
  background: var(--surface);
  border: 1px solid var(--border);
  border-radius: var(--r-md);
  padding: 24px 28px;
  margin-block: 20px;
}

.legal-box--warn {
  border-color: rgba(234, 179, 8, .3);
  background: rgba(234, 179, 8, .04);
}

[data-theme="dark"] .legal-box--warn {
  border-color: rgba(234, 179, 8, .2);
  background: rgba(234, 179, 8, .06);
}

.legal-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.legal-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--text-2);
}

.legal-item svg {
  color: var(--accent);
  margin-top: 3px;
  flex: none;
}

.legal-item svg.check {
  color: var(--ok);
}

.legal-item svg.warn {
  color: #eab308;
}

@media (max-width: 768px) {
  .legal-cards-4 { grid-template-columns: 1fr; }
  .legal-box { padding: 20px; }
}
