.legal-shell {
  width: min(100%, 860px);
  margin: 0 auto;
  padding: 34px 0 72px;
}
.legal-header {
  padding-bottom: 28px;
  border-bottom: 1px solid rgba(96, 75, 53, 0.18);
}

.legal-header span {
  color: #2f6f5c;
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
}

.legal-header h1 {
  margin: 8px 0 10px;
  color: #22342d;
  font-size: clamp(36px, 6vw, 58px);
  line-height: 1.05;
}

.legal-header p {
  margin: 0;
  color: #5d6d65;
  font-size: 15px;
}

.legal-document {
  padding-top: 20px;
  color: #34473f;
  font-size: 16px;
  line-height: 1.72;
}

.legal-document h2 {
  margin: 34px 0 8px;
  color: #22342d;
  font-size: 21px;
  line-height: 1.3;
}

.legal-document h3 {
  margin: 22px 0 6px;
  color: #2b3f37;
  font-size: 16px;
}

.legal-document p,
.legal-document ul {
  margin: 8px 0 14px;
}

.legal-document ul {
  padding-left: 22px;
}

.legal-document li + li {
  margin-top: 7px;
}

.legal-document a {
  color: #2f6f5c;
  font-weight: 600;
}

.legal-callout {
  margin: 20px 0;
  padding: 16px 18px;
  border-left: 3px solid #cf593e;
  background: rgba(255, 248, 231, 0.72);
  color: #34473f;
}

.legal-caps {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0;
}

@media (max-width: 640px) {
  .legal-shell {
    padding-top: 18px;
  }

  .legal-document {
    font-size: 15px;
  }
}
