body.legal_page {
  min-height: 100vh;
  background: #e9f1c8 url("/assets/img/bg_wide.webp") center top/cover fixed no-repeat;
}

.legal_wrap {
  width: 100%;
  max-width: 820px;
  margin: 0 auto;
  padding: 24px 16px 64px;
}

.legal_back {
  display: inline-block;
  margin-bottom: 14px;
  padding: 6px 16px;
  border: 2px solid rgba(139, 94, 60, 0.4);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  font-weight: 700;
  text-decoration: none;
}

.legal_sheet {
  padding: 36px 40px 44px;
  font-size: 16px;
  line-height: 1.9;
}

.legal_sheet h2 {
  margin: 32px 0 10px;
  padding-bottom: 6px;
  font-size: clamp(18px, 2.4vw, 21px);
  font-weight: 900;
  border-bottom: 3px dotted rgba(95, 143, 58, 0.55);
}

.legal_sheet p,
.legal_sheet ul {
  margin: 0 0 12px;
}

.legal_sheet ul {
  padding-left: 1.3em;
}

.legal_sheet li {
  margin-bottom: 8px;
}

.legal_sheet a {
  color: #c4682a;
}

.legal_brand {
  display: flex;
  align-items: center;
  gap: 10px;
  font-weight: 900;
}

.legal_brand img {
  border-radius: 10px;
}

.legal_title {
  margin: 8px 0 4px;
  font-size: clamp(24px, 3.4vw, 30px);
  font-weight: 900;
  line-height: 1.4;
}

.legal_date {
  font-size: 14px;
  color: #6e5142;
}

.legal_lead {
  margin-top: 16px !important;
}

@media (max-width: 640px) {
  .legal_sheet {
    padding: 24px 18px 32px;
    font-size: 15px;
  }
}
