/* ==========================================================================
   Morrow - Static legal document pages
   ========================================================================== */

body.legal-page {
  min-height: 100vh;
  background:
    radial-gradient(circle at top left, rgba(255, 205, 116, 0.8), transparent 34rem),
    linear-gradient(180deg, var(--top-yellow) 0%, var(--middle-yellow) 42%, var(--bottom-yellow) 100%);
  color: var(--gray-900);
}

.legal-shell {
  width: min(100%, 940px);
  margin: 0 auto;
  padding: var(--spacing-8) var(--spacing-6) var(--spacing-16);
}

.legal-brand {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-3);
  margin-bottom: var(--spacing-8);
  color: var(--gray-900);
  font-weight: var(--font-weight-bold);
  letter-spacing: -0.02em;
}

.legal-brand img {
  width: 44px;
  height: 44px;
  /* border-radius: 14px; */
  /* box-shadow: var(--shadow-md); */
}

.legal-card {
  background: rgba(255, 255, 255, 0.86);
  border: 1px solid rgba(154, 52, 18, 0.12);
  border-radius: var(--radius-3xl);
  box-shadow: var(--shadow-2xl);
  padding: clamp(1.25rem, 3vw, 3rem);
  backdrop-filter: blur(14px);
}

.markdown-body {
  font-size: var(--font-size-base);
  line-height: 1.75;
  color: var(--gray-800);
}

.markdown-body h1,
.markdown-body h2,
.markdown-body h3 {
  color: var(--gray-900);
  letter-spacing: -0.03em;
}

.markdown-body h1 {
  margin-bottom: var(--spacing-4);
  font-size: clamp(2.15rem, 6vw, 4rem);
  line-height: 1.02;
}

.markdown-body h2 {
  margin-top: var(--spacing-12);
  margin-bottom: var(--spacing-4);
  padding-top: var(--spacing-8);
  border-top: 1px solid rgba(154, 52, 18, 0.14);
  font-size: clamp(1.35rem, 3vw, 2rem);
}

.markdown-body h3 {
  margin-top: var(--spacing-8);
  margin-bottom: var(--spacing-3);
  font-size: var(--font-size-xl);
}

.markdown-body p,
.markdown-body ul,
.markdown-body ol {
  margin-bottom: var(--spacing-5);
}

.markdown-body ul,
.markdown-body ol {
  padding-left: 1.4rem;
}

.markdown-body ul {
  list-style: disc;
}

.markdown-body ol {
  list-style: decimal;
}

.markdown-body li {
  margin-bottom: var(--spacing-2);
  padding-left: var(--spacing-1);
}

.markdown-body strong {
  color: var(--gray-900);
  font-weight: var(--font-weight-semibold);
}

.markdown-body a {
  color: var(--orange-700);
  text-decoration: underline;
  text-decoration-thickness: 0.09em;
  text-underline-offset: 0.17em;
}

.legal-meta {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-2);
  margin-bottom: var(--spacing-8);
  padding: var(--spacing-2) var(--spacing-4);
  border: 1px solid rgba(234, 88, 12, 0.22);
  border-radius: var(--radius-full);
  background: var(--orange-50);
  color: var(--orange-800);
  font-size: var(--font-size-sm);
  font-weight: var(--font-weight-medium);
}

.legal-note {
  margin-top: var(--spacing-10);
  padding: var(--spacing-5);
  border-left: 4px solid var(--orange-500);
  border-radius: var(--radius-lg);
  background: rgba(255, 237, 213, 0.72);
  color: var(--gray-800);
}

.legal-footer {
  margin-top: var(--spacing-8);
  color: rgba(24, 24, 27, 0.72);
  font-size: var(--font-size-sm);
  text-align: center;
}

@media (max-width: 640px) {
  .legal-shell {
    padding: var(--spacing-5) var(--spacing-4) var(--spacing-10);
  }

  .legal-card {
    border-radius: var(--radius-2xl);
  }

  .markdown-body {
    font-size: 0.97rem;
  }
}
